Lizenz: GPL
Version="1.0" Kodierung="UTF-8"?>Im obigen Beispiel: Wenn der Benutzer das Schlüsselwort „Happy“ eingibt, wechselt der Bot in den Status „1“ und zeigt zufällig eine der Statusmeldungen „1“ an. Wenn der Benutzer andere Zeichenfolgen eingibt, wird eine der ungültigen Nachrichten angezeigt.< State id="0"> < message >Hallo, wie geht es dir? message > < Schlüsselwörter > < keyword target ="1">glücklich keyword > Schlüsselwörter > Staat > < State id="1"> < message >Wow, du bist glücklich! message > < message > Freut mich , das zu hören! message > Staat > < InvalidMessages > < message >Hm, ich habe es nicht verstanden? message > < message >Was meinst du? message > InvalidMessages > Config >
Das Keyword-Tag enthält mehrere Attribute, um die Anpassung des Bots an die Anforderungen zu ermöglichen.
< State id="16"> < message >Hallo, wie geht es dir heute? message > < message >Wie geht es dir? message > < message >Wie geht es dir? message > < keyword target ="11">glücklich, sehr glücklich keyword > < keyword target ="13">nicht glücklich, nicht gut, nicht gut, traurig, verärgert keyword > < keyword target ="23">gut, gut, danke keyword > < keyword target ="14">Sie selbst keyword > Staat >
Nutzung der Wetterfunktion
Um die Wetterfunktion zu nutzen, sollte das Schlüsselwort-Tag zwei Attribute enthalten, className und arg, className sollte auf Weather und arg auf die Schlüsselwörter „today“, „tomorrow“ oder „dayaftertomorrow“ gesetzt sein. Hier ist ein Beispiel, um das heutige Wetter zu erhalten:
< keyword className ="Weather" arg ="today">Weather keyword >
Ergebnis:
Sie: Wie ist das Wetter? Bot: Ich glaube, heute ist Nebel
< State id="11"> < message >Das ist großartig, warum bist du glücklich? message > < Schlüsselwörter > < keyword target ="21">Lotterie keyword > < keyword target ="22">* keyword > Schlüsselwörter > Staat >
Ergebnis:< State id="0"> < message >Hallo, mein Name ist MajBot, wie heißt du? message > < Schlüsselwörter > < keyword target ="2" variable ="name">([a-zA-Z ]+) keyword > Schlüsselwörter > Staat > < State id="16"> < message >Hallo [Name], schön dich zu sehen! message > Staat > Config >
Bot: Hallo, mein Name ist MajBot, wie heißt du? Sie: Majid Bot: Hallo Majid, schön dich zu sehen!Im obigen Beispiel „([a-zA-Z )+)“ akzeptiert die Regex alle Zeichen zwischen a und z (ohne Berücksichtigung der Groß- und Kleinschreibung), einschließlich Leerzeichen, und speichert das passende Wort in der Namensvariablen und verwendet dann [Name] in der Nachricht des Benutzers Der Name wird durch dieses Tag ersetzt. (Weitere Informationen zur Regex-Syntax finden Sie in der Java Regex-Dokumentation.)
Ergebnis:< State id="0"> < message >Hallo, mein Name ist MajBot, wie heißt du? message > < Schlüsselwörter > < keyword target ="16" variable ="name" point ="2">.*mein Name ist ([a-zA-z]+).* keyword > < keyword target ="16" variable ="name">([a-zA-Z ]+) keyword > Schlüsselwörter > Staat > < State id="16"> < message >Hallo [Name], schön dich zu sehen! message > Staat > Config >
Bot: Hallo, mein Name ist MajBot, wie heißt du? Sie: Mein Name ist Majid Bot: Hallo Majid, schön dich zu sehen!Im obigen Beispiel fügen wir 2 Punkte für das erste Schlüsselwort hinzu. Wenn der Benutzer also „Mein Name ist Majid“ eingibt, erhält er nur den Namen, anstatt „Mein Name ist Majid“ als Namen zurückzugeben.
< State id="1"> < message >Worüber möchten Sie sprechen? message > < keyword variable ="subject" target ="27">([a-zA-z]+) keyword > Staat > < State id="27"> < message >Was ist [Betreff]? message > < keyword target ="43" variable ="result" learn ="subject">(.*) keyword > Staat >Ergebnis:
Bot: Worüber möchten Sie sprechen? Du: Fußball Bot: Was ist Fußball? Sie: Es ist ein gutes Spiel Bot: Ich verstehe... Bot: Worüber möchten Sie sprechen? Du: Fußball Bot: Es ist ein gutes SpielWie im obigen Beispiel gezeigt, erfährt der Bot etwas über das Fußball-Schlüsselwort und sendet die Antwort dann an den Benutzer zurück, wenn der Benutzer dasselbe Schlüsselwort erneut sendet.
java -cp MajBot.jar bot.MainUm MajBot auszuführen, können Sie einfach Folgendes eingeben:
sh run.shWenn Sie Windows verwenden, können Sie stattdessen die Datei run.bat ausführen.
Nach dem Starten des Bots kann der Benutzer eine Nachricht eingeben und mit MajBot chatten.
Genießen!
http://www.majidkhosravi.com/chat-bot/