dreamingfly 发表于 2021-2-4 13:51

【PHP + MySQL】【分享】搭建网站自动回复机器人

后台自动回复满了,想搭建自动回复的网站。找了很久终于找到 Github/kompasim 的 chatbot 项目。
虽然是2017年的项目,但目前测试仍然可用。
测试成功服务器环境:Nginx 1.18.0 + PHP7.3 + MySQL 5.7.31。
该聊天机器人是参考AIML 2.5和Program-P而写成的,这聊天机器人实现的aiml标签和标准的aiml标签由一定的差距,所以你从网上下载的aiml语料库可能没法正常工作。适用于UTF-8编码的,单词后缀根据不同的时态而改变的那些语言。感兴趣的朋友可以自己研究学习一下。本程序用了MySQL数据库,你需要把chatbot.sql文件倒入到你的数据库,然后在chatbot/Config.php文件里修改相关数据库配置变量。
1、效果预览

你可以自己动手优化界面哦~{:17_1056:}
优化用作聊天机器人也是不错的

2、数据存储
数据位于 aiml/chatbot.aiml 文件内,AIML语法类似HTML
AIML:人工智能标记语言(Artificial Intelligence Markup Language)
<category>
    <pattern>hello</pattern>
    <template>
      hello ...
    </template>
</category>
pattern标签内是关键词,template标签内是回复内容

3、注意事项
为避免aiml文件被下载,我们添加防盗链


4、优化项目
原项目回复内容只能是文本,为了让机器人回复的url内容自动添加超链接,我们可以修改index.php内的js函数。
function AddText(user, message) {
      console.log(user);
      console.log(message);

      var div = $('<div>');
      var name = $('<labe>').addClass('name');
      var reg=/(http:\/\/|https:\/\/)((\w|=|\?|\.|\/|&|-)+)/g;
      
      if(message.indexOf('http') != -1){
            var url = message.match(reg);
            console.log(url);
            var text=$('<span>');
            var a = $('<a>').addClass('message').attr('href',url).attr('target','_blank');
            a.text(url);
            text.append(a);
            text.append(message.replace(reg,''));
            name.text(user + ':');
      }
      else{
            var text = $('<span>').addClass('message');
            name.text(user + ':');
            text.text('\t' + message);
      }
      
      div.append(name);
      div.append(text);
      
      $('.chatBox').append(div);
      $('.chatBox').scrollTop($(".chatBox").scrollTop() + 100);
}

5、项目下载
建议到GitHub下载,也给大家转存到网盘了哈
https://www.lanzouj.com/i3VSSlari6h

6、参考资料
1、 Github/chatbot 项目
https://github.com/kompasim/chatbot
2、CSDN-AIML应答机器人(一)aiml简介
https://xvshu.blog.csdn.net/article/details/80973649
3、技术松鼠-网站自动回复机器人
https://www.jishusongshu.com/network-tech/chat-robot/
4、松子分享-url网址文本解析成超链接
https://www.szfx.top/study-record/js-url-to-link.html

dreamingfly 发表于 2021-8-18 20:52

godyu 发表于 2021-8-18 19:10
楼主,请问一下对应的接口和关键词回复~这个库是共享的还是全自定义?

是自定义的。你也可以去下载别人分享的库,自己加进去咯。

dreamingfly 发表于 2021-2-5 10:58

PHP中国专家 发表于 2021-2-4 23:14
楼主,请问一下对应的接口和关键词回复~这个库是共享的还是全自定义?

这个库是自定义的,你可以去网上寻找一些别人分享的库,添加进去。

沉心云 发表于 2021-2-4 15:01

前来学习了,感谢楼主

qingchun95 发表于 2021-2-4 15:23

学习一下

arq2020 发表于 2021-2-4 15:40

谢谢楼主

PHP中国专家 发表于 2021-2-4 23:14

yjtang1234 发表于 2021-3-5 05:32

大神,可以帮我搭建网站吗,向您学习

dreamingfly 发表于 2021-3-5 10:50

有问题可以直接提出,我不知道要帮你什么。

php小学生 发表于 2021-3-15 10:23

最近正在学习这块,太有帮助了

天天-不破不立 发表于 2021-4-28 10:59

输入中文就报错,不知道怎么回事
页: [1] 2
查看完整版本: 【PHP + MySQL】【分享】搭建网站自动回复机器人