Ich habe eine einfache grundlegende Frage und ich bin fest, über welchen Ansatz sollte ich in diesem nehmen.Javascript/jQuery überprüfen, ob String ein Wort oder Vorkommen eines der optionalen Wörter enthält
Ich erstelle einen Chat-Bot. Jedes Mal, wenn ein echter menschlicher Benutzer eine Nachricht eintippt, möchte ich herausfinden, welche Wörter der Benutzer in die Nachricht eingegeben hat, und dann wird der Bot anhand seiner Worte antworten.
// A string containing user message
var UserMsg = data.message;
////Means if ANY ONE of this words are contained in user message then I will tell the bot to respond to the greeting message.
if UserMsg.contains("Hi", "Hello", "Hey", "Morning");
var welcomeArray = ['Hey!!', 'Hi', 'Hello :)'];
//gets a random welcome msg to respond
var welcomeMsg = welcomeArray[Math.floor(Math.random() * welcomeArray.length)];
if(data.message=='Hi') //if user says Hi or hello hey etc
socket.emit('message', 'welcomeMsg'); //Bot will respond by one of the random greetings messages
Z. B Ausgang meines Codes: Instanz 1: Benutzer: Hallo! Bot: Hey !!
Instanz 2: Benutzer: Morgen Fellow Bot: Hallo :)
Ich möchte nur die semantische Bedeutung der Benutzernachricht erkennen und von meinem Arrays Antwort sagte dann basierend auf welchem Benutzer.
Wie, wenn Benutzer sagt: „Bye“ oder „Take Care“ etc einer dieser, sollte mein Bot User verstehen will gehen und dann sollte bot sagen: „Achten Sie darauf :)“
Ich denke dabei an Ich brauche Reg ex, um solche Vorkommen oder String-Funktionen zu finden? Irgendwelche grundlegenden Kodierungsbeispiele würden sehr geschätzt werden.
oder alternativ Statt meine eigenen manuellen Antworten machen kann ich einige AIML wie Eliza Bietet DB in NodeJS verwenden, so dass ich nur kann es in meinem Code enthalten und die Benutzer Nachricht an Eliza Bot senden und dann antworten zurück was auch immer Eliza Bot antwortet.
https://github.com/modInfo/Eliza.js-chatbot-in-NodeJS Wie kann ich Eliza Bot in meinen socket.io Anwendungscode integrieren? Irgendwelche Hilfe? – Faizan