PHP自动回复机器人

服务器环境: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、效果预览
PHP自动回复机器人

你可以自己动手优化界面哦~PHP自动回复机器人

优化用作聊天机器人也是不错的


2、数据存储
数据位于 aiml/chatbot.aiml 文件内,AIML语法类似HTML
AIML:人工智能标记语言(Artificial Intelligence Markup Language)

[HTML] 纯文本查看 复制代码
?
1
2
3
4
5
6
<category>
    <pattern>hello</pattern>
    <template>
        hello …
    </template>
</category>

pattern标签内是关键词,template标签内是回复内容

3、注意事项
为避免aiml文件被下载,我们添加防盗链
PHP自动回复机器人

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

[JavaScript] 纯文本查看 复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
functionAddText(user, message) {
        console.log(user);
        console.log(message);
  
        vardiv = $(‘<div>’);
        varname = $(‘<labe>’).addClass(‘name’);
        varreg=/(http:\/\/|https:\/\/)((\w|=|\?|\.|\/|&|-)+)/g;
         
        if(message.indexOf(‘http’) != -1){
            varurl = message.match(reg);
            console.log(url);
            vartext=$(‘<span>’);
            vara = $(‘<a>’).addClass(‘message’).attr(‘href’,url).attr(‘target’,’_blank’);
            a.text(url);
            text.append(a);
            text.append(message.replace(reg,”));
            name.text(user +’:’);
        }
        else{
            vartext = $(‘<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.lanzous.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

分享到:
赞(0)