MajBot
1.0.0
许可证:GPL
版本=“1.0” 编码=“UTF-8”?> <配置> <州id=“0”> < message >你好,你好吗? message > <关键词> < keyword target ="1">快乐 关键词> 状态>在上面的示例中,如果用户输入 happy 关键字,机器人将移动到状态“1”并随机显示状态“1”消息之一,如果用户输入任何其他字符串,则会出现无效消息之一。<州id="1">
哇,你很高兴! 很高兴听到这个消息! 状态> <无效消息> < message >呃,我没听懂? message > <消息>你的意思是什么?消息> 无效消息> 配置>
关键字标签包含多个属性,可以根据需求定制机器人。
<州id="16"> < message >你好,今天过得怎么样? message >你感觉怎么样? 你好吗? < keyword target ="11">快乐,非常快乐 < keywordtarget ="13">不高兴、不好、不好、悲伤、不安 < keyword target ="23">很好,很好,谢谢 < keyword target ="14">你自己 状态>
使用天气功能
要使用天气功能,关键字标签应包含两个属性,className 和 arg,className 应设置为 Weather,arg 应设置为“today”、“tomorrow”或“dayaftertomorrow”关键字。这是获取今天天气的示例:
<关键字className =“天气” arg =“今天”>天气关键字>
结果:
你:天气怎么样 Bot:我想今天是雾
<州id="11"> < message >太好了,你为什么高兴? message > <关键词> < keyword target ="21">抽奖 <关键字目标=“22”>*关键字> 关键词> 状态>
<配置> <状态ID="0"> < message >你好,我叫MajBot,你叫什么名字? message > <关键词> <关键字目标=“2”变量=“名称”>([a-zA-Z]+)关键字> 关键词> 状态> <州id="16"> < message >你好[名字],很高兴见到你! message > 状态> 配置>结果:
Bot:你好,我叫 MajBot,你叫什么名字? 你:马吉德 Bot:你好,majid,很高兴见到你!在上面的示例中,“([a-zA-Z )+)”正则表达式接受 a 到 z 之间的任何字符(不区分大小写),包括空格,并将匹配的单词存储到 name 变量,然后通过在消息中使用 [name],用户的名称将替换为此标签。 (有关 Regex 语法的更多信息,请参阅 Java Regex 文档)。
<配置> <状态ID="0"> < message >你好,我叫MajBot,你叫什么名字? message > <关键词> <关键字目标=“16”变量=“名称”点=“2”>。*我的名字是([a-zA-z]+)。*关键字> <关键字目标=“16”变量=“名称”>([a-zA-Z]+)关键字> 关键词> 状态> <州id="16"> < message >你好[名字],很高兴见到你! message > 状态> 配置>结果:
Bot:你好,我叫 MajBot,你叫什么名字? 你:我叫马吉德 Bot:你好,majid,很高兴见到你!在上面的示例中,我们为第一个关键字添加 2 个点,因此如果用户输入“我的名字是 Majid”,它只会获取名称,而不是返回“我的名字是 Majid”作为名称。
<州id="1">结果:你想聊什么? <关键字变量=“主题”目标=“27”>([a-zA-z] +)关键字> 状态> <州id="27"> [主题]是什么? <关键字目标=“43”变量=“结果”学习=“主题”>(。*)关键字> 状态>
机器人:你想聊什么? 你:足球 机器人:什么是足球? 你:这是个好游戏 机器人:我明白了…… 机器人:你想聊什么? 你:足球 机器人:这是个好游戏如上面的示例所示,机器人学习足球关键字,然后当用户再次发送相同的关键字时将响应发送回用户。
java -cp MajBot.jar bot.Main要运行 MajBot,您只需输入:
sh run.sh如果您使用的是 Windows,则可以运行 run.bat 文件。
启动机器人后,用户可以输入消息并开始与 MajBot 聊天。
享受!
http://www.majidkhosravi.com/chat-bot/