Javascript - 聊天机器人

标签 javascript chatbot

多年来,我一直在模式匹配聊天机器人中使用以下内容。一个人在输入框中键入内容,聊天机器人在输出框中做出响应。

这只是一系列“if 语句”,而这只是其中的一小部分。

如果有人输入"is",机器人会回复以下消息,但我提出问题的消息 4 除外。一旦提出该问题,它将不再触发,这正是我想要的。

我不想一遍又一遍地问这个问题。这一切直到最近才奏效。我不明白为什么它不再有效。

var yes_q4_asked="false";

if (input.search("yes")!= -1) {  
message[0] = "ok, yes it is."; 
message[1] = "yes, I suppose so."; 
message[2] = "ok, I understand."; 
message[3] = "ok, I guess so."; 
message[4] = "yeah, I reckon so. Say what color are your eyes?"; 
message[5] = "yes, I thought as much."; 
num = [Math.floor(Math.random()*6)]
if ((num==4) && (yes_q4_asked=="false"))
{ 
yes_q4_asked=="true";
document.result.result.value = message[num];
return true;
}
while (num==4)
{
num = [Math.floor(Math.random()*6)]
}
document.result.result.value = message[num]; 
return true;} 

最佳答案

有人发现了我的问题。 上面代码中的这一行:

yes_q4_asked=="true";

应该是:

yes_q4_asked="true";

一个= 不是两个==

关于Javascript - 聊天机器人,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16168238/

相关文章:

javascript - Jquery根据当前页面url中的字符串加载远程页面元素

c# - 从对话框中回调 LUIS

javascript - 如何更改 botman.io 小部件的默认背景颜色

javascript - 使用标签选择图库中的一组图片

javascript - 将值从文本框传递到另一个函数

Javascript Prompt() 替代方案

c# - 使用 Cortana 的 QNA 聊天机器人 "say the feedback"

javascript - jQuery Progress 动画到预定义的宽度 - Multiple Div

json - 为什么在对话流中创建的丰富消息不会出现在 Slack 上测试的机器人中?

artificial-intelligence - 尝试启用 Dialogflow Messenger 时出现错误