Hallo Ihr
Ich habe so ein Online game mit einem Chat und hatte mir gedacht einen Chatbot zu schreiben.
Der sollte dem user helfen und unterhalten.
Ich schreib seid gestern an susi und find ist auch gut gelungen und funzt ganz gut
Jedoch würd ich euch um verbesserungen fragen und wär auch sehr dankbar
Ich hätte noch vor susi einen riessigen sprachkatalog zu basteln
wer mir also dabei noch helfen möchte ich danke
So mal zum skript:
Susi braucht keinen Browser und wenn sie lange nicht gefragt wurde macht sie mehr pause
susi:
Spoiler anzeigen
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=developer.ico
#AutoIt3Wrapper_outfile=susi.exe
#AutoIt3Wrapper_Res_Fileversion=2.0.2.17
#AutoIt3Wrapper_Res_Fileversion_AutoIncrement=y
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <WinHTTP.au3>
#include<String.au3>
#include <GUIComboBox.au3>
Global $chatusr[7]
Global $posting[5] ;Array deklarieren
Dim $chattext
$pause=7000
$hw_open = _WinHttpOpen("Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12")
$hw_connect = _WinHttpConnect($hw_open, "www.xxx-xxx.de")
#Region ### START Koda GUI section ### Form=
$Form1_1 = GUICreate("susi Chatbot", 358, 121, 522, 401)
$Edit1 = GUICtrlCreateEdit("", 0, 8, 281, 105, $ES_WANTRETURN)
GUICtrlSetData(-1, "")
$Button1 = GUICtrlCreateButton("Start", 296, 88, 59, 25, $WS_GROUP)
$Label1 = GUICtrlCreateLabel("", 288, 8, 60, 44, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("", 288, 56, 68, 28)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$data=""
_login()
While 1
[/autoit] [autoit][/autoit] [autoit]$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
While 1
_such()
Sleep($pause)
WEnd
EndSwitch
WEnd
Func _such()
GUICtrlSetBkColor($Label2, 0x008000)
$pause=$pause + 50
If $pause >=15000 then $pause =12000
GUICtrlSetData($Label1, "Pause"&@CRLF&$pause)
$h_openRequest = _WinHttpOpenRequest($hw_connect,"POST", "/minichat","HTTP/1.1", "http://www.xxx-xxx.de/")
_WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8"& @CRLF, "")
_WinHttpReceiveResponse($h_openRequest)
GUICtrlSetBkColor($Label2, 0xDF1B1B)
Sleep(500)
$data=_WinHttpReadData($h_openRequest)
Global $chattext = StringRegExp($data,'76%">(.*?)<',3)
Global $chatusr = StringRegExp($data,'vip">(.*?)</a>',3)
If @error Then Return
ConsoleWrite($chattext[7]&@CRLF)
GUICtrlSetData($Edit1,$chatusr[3] &": "&$chattext[3]&@CRLF&$chatusr[4] &": "&$chattext[4]&@CRLF&$chatusr[5] &": "&$chattext[5]&@CRLF&$chatusr[6] &": "&$chattext[6]&@CRLF&$chatusr [7]&": "&$chattext[7])
GUICtrlSetBkColor($Label2, 0x008000)
If StringInStr($chattext[7], "moin" , 0) Then _moin()
If StringInStr($chattext[7], "hallo" , 0) Then _moin()
If StringInStr($chattext[7], "zeit", 0) Then _zeit()
If StringInStr($chattext[7], "time" , 0) Then _zeit()
If StringInStr($chattext[7], "spät" , 0) Then _zeit()
If StringInStr($chattext[7], "uhr" , 0) Then _zeit()
If StringInStr($chattext[7], "hrhr", 0) Then _hehe()
If StringInStr($chattext[7], "hehe", 0) Then _hehe()
If StringInStr($chattext[7], "hihi", 0) Then _hehe()
If StringInStr($chattext[7], "hilfe", 0) Then _oue()
If StringInStr($chattext[7], "susi", 0) Then _susi()
If StringInStr($chattext[7], "n8", 0) Then _n8()
If StringInStr($chattext[7], "gute nacht", 0) Then _n8()
If StringInStr($chattext[7], "tage", 0) Then _tage()
If StringInStr($chattext[7], "sex", 0) Then _sex()
If StringInStr($chattext[7], "oü", 0) Then _oue()
If StringInStr($chattext[7], "lol", 0) Then _lol()
If StringInStr($chattext[7], "barbapapa", 0) Then _barbapapa()
If StringInStr($chattext[7], "film", 0) Then _barbapapa()
If StringInStr($chattext[7], "datum", 0) Then _datum()
If StringInStr($chattext[7], "heute", 0) Then _datum()
If StringInStr($chattext[7], "gefängnis", 0) Then _knast()
If StringInStr($chattext[7], "Glück! Du hast", 0) Then _glueck()
If StringInStr($chattext[7], "weihnacht", 0) Then _weihnacht()
If StringInStr($chattext[7], "24.12", 0) Then _weihnacht()
If StringInStr($chattext[7], "christkind", 0) Then _weihnacht()
$chattext = ""
$chatusr = ""
$h_openRequest =""
$data=""
;_WinHttpCloseHandle($h_openRequest)
;_WinHttpCloseHandle($hw_connect)
;_WinHttpCloseHandle($hw_open)
EndFunc
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Func _login()
$post1="username=susi&password=xxxxx&submit=Anmelden"
$h_openRequest = _WinHttpOpenRequest($hw_connect,"POST", "/login","HTTP/1.1", "http://www.xxxxxx.de/")
_WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", $post1)
_WinHttpReceiveResponse($h_openRequest)
EndFunc
Func _loginstrubi()
$post2="username=strubi&password=xxxxx&submit=Anmelden"
$h_openRequest = _WinHttpOpenRequest($hw_connect,"POST", "/login","HTTP/1.1", "http://www.xxxxxx.de/")
_WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", $post2)
_WinHttpReceiveResponse($h_openRequest)
EndFunc
Func _lol()
$posting[0]="Ja lustig"
$posting[1]="was gibts zu witzeln :? "&$chatusr[7]
$posting[2]=":)"
$posting[3]="ist nicht lustig :("
$posting[4]="lach :)"
_sending()
EndFunc
Func _tage()
$posting[0]="Ja hab ich und?!? :$"
$posting[1]="Na und was gehts dich an? "&$chatusr[7]
$posting[2]=$chatusr [7]&" sei froh das du die nicht bekommst!"
$posting[3]="ja klar "&$chatusr[7]&" soll ich dir was aufheben? :$"
$posting[4]="nein vollmond ist (6)"
_sending()
EndFunc
Func _n8()
$posting[0]="schlaf gut :$ "&$chatusr[7]
$posting[1]="ich wünsch dir was "&$chatusr[7]
$posting[2]=$chatusr [7]&" denk an mich :$"
$posting[3]="jetzt schon? "&$chatusr[7]&" :e"
$posting[4]="bis dann (6)"
_sending()
EndFunc
Func _susi()
$posting[0]="ja? (6)"&$chatusr[7]
$posting[1]="Was los? "&$chatusr[7]
$posting[2]=$chatusr[7]&" mein name wurde gerufen? :$"
$posting[3]="ich bin hier "&$chatusr[7]
$posting[4]="Hallo "&$chatusr [7]
_sending()
EndFunc
Func _hehe()
$posting[0]="was lachst du? (6)"&$chatusr[7]
$posting[1]="is wohl witzig hmm? "&$chatusr[7]
$posting[2]=$chatusr[7]&" ja lach ruhig (6)"
$posting[3]="was gibts "&$chatusr[7]&" zu lachen??!"
$posting[4]="hahaha "&$chatusr [7]
_sending()
EndFunc
Func _oue()
$posting[0]="überfall? "&$chatusr[7]&" ich komme"
$posting[1]="paar sekunden "&$chatusr[7]
$posting[2]=$chatusr[7]&" schon wieder?"
$posting[3]="muss das sein? "&$chatusr[7]&" bin gleich da"
$posting[4]="ich schlafe noch "&$chatusr [7]&" aber bitte"
_sending()
sleep(2000)
$h_openRequest4= _WinHttpOpenRequest($hw_connect,"GET", "/group-robbery","HTTP/1.1", "http://www.xxxxx.de/")
_WinHttpSendRequest($h_openRequest4, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8"& @CRLF, "")
_WinHttpReceiveResponse($h_openRequest4)
$h_openRequest5= _WinHttpOpenRequest($hw_connect,"POST", "/group-robbery","HTTP/1.1", "http://www.xxxxxxxxxxxxxx.de/group-robbery")
_WinHttpSendRequest($h_openRequest5, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8"& @CRLF, "")
_WinHttpReceiveResponse($h_openRequest5)
$data2=_WinHttpReadData($h_openRequest5)
ConsoleWrite($data2)
EndFunc
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Func _moin()
$posting[0]="hoi "&$chatusr [7]
$posting[1]="Guten Tag "&$chatusr [7]
$posting[2]="Hallo du "&$chatusr [7]&" Wie gehts dir?"
$posting[3]="was geht?"
$posting[4]="ja hallo "&$chatusr [7]
_sending()
EndFunc
Func _zeit()
$posting[0]="Es ist "&@HOUR&" herum"
$posting[1]="Schau selbst nach "&$chatusr [7]
$posting[2]=@HOUR&":"&@MIN &" "&$chatusr [7]&" bin ja nicht die ansage!"
$posting[3]="Naja ich sags dir "&@HOUR&":"&@MIN
$posting[4]="weiss ich nicht"&$chatusr [7]
_sending()
EndFunc
Func _sending()
$pause=5000
GUICtrlSetData($Label1, "Pause"&@CRLF&$pause)
GUICtrlSetBkColor($Label2, 0xFFE900)
$h_openRequest = _WinHttpOpenRequest($hw_connect,"POST", "/minichat","HTTP/1.1", "http://xxxxxxxxxxxxx.de/")
_WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8"& @CRLF, "text="&$posting[Random(0,4)])
_WinHttpReceiveResponse($h_openRequest)
GUICtrlSetBkColor($Label2, 0xDF1B1B)
Sleep(150)
GUICtrlSetBkColor($Label2, 0x008000)
EndFunc
Func _sex()
$posting[0]="Mit dir niemals!!! "
$posting[1]="Bitte ? "&$chatusr[7]
$posting[2]="wir kennen uns ja kaum "&$chatusr[7]&" :e"
$posting[3]="Nein nein bestimmt nicht mit dir"
$posting[4]="ja klar "&$chatusr[7] &"besuch mich :)"
_sending()
EndFunc
Func _barbapapa()
[/autoit] [autoit][/autoit] [autoit]$posting[0]="[media]H4tHyrNmb7E[/media]"
$posting[1]="[media]P2sxz56z-pY[/media]"
$posting[2]="[media]niW5eO6GBiQ[/media]"
$posting[3]="[media]-455nXg7O5Q[/media]"
$posting[4]="[media]o85lURcxMKg[/media]"
_sending()
ConsoleWrite("youtoube")
EndFunc
Func _datum()
$posting[0]=@MDAY&"."&@MON&"."&@YEAR
$posting[1]="Es ist der "&@MDAY&"."&@MON&"."&@YEAR
$posting[2]=@MDAY&"."&@MON&"."&@YEAR&" "&$chatusr[7]&" :e"
$posting[3]=@MDAY&"."&@MON&"."&@YEAR&" Bitte :)"
$posting[4]=@MDAY&"."&@MON&"."&@YEAR&"sonst noch was?"
_sending()
EndFunc
Func _knast()
$posting[0]="super im Knast (6)"
$posting[1]="Knastbruder"
$posting[2]="knasti"
$posting[3]="was geht? so im Knast"
$posting[4]="bald kommst du raus :)"
_sending()
EndFunc
Func _glueck()
$posting[0]="super"
$posting[1]="Sehr Gut :)"
$posting[2]="zeigs ihm"
$posting[3]="der wird sauer sein :("
$posting[4]="uhhhh verbrenn dir nicht die finger"
_sending()
EndFunc
Func _weihnacht()
$tag=@YDAY
$24=358
$weih=$24-$tag
;358
;324
$posting[0]="Es sind noch "&$weih&" T. bis 24.12"
$posting[1]="Noch "&$weih&" x schlafen bis zum 24."
$posting[2]="Ich hasse den 24.12 noch "&$weih&" x aufstehen "
$posting[3]=$weih&" Days "
$posting[4]="Super nur noch "&$weih&" x schlafen gehen"
_sending()
EndFunc
Bitte wenn also noch einer verbesserungen vorschlagen kann nur zu
ich hab das ganze heute noch vor in eine .ini umzuschreiben so das man ohne das skript zu verändern den fragekatalog extern verwalten kann
mfg sandmaenchen
Edit Oscar: Spoiler gesetzt.