lyfing/laravel-chatbot

laravel 的聊天机器人

v1.0.2 2017-05-16 09:45 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:54:52 UTC


README

0. 安装

composer require 'lyfing\laravel-chatbot'

1. 配置

Lyfing\LaravelChatBot\ChatBotServiceProvider::class, 添加到 config/app.php 的 providers

2. 发布

php artisan vendor:publish

4. 配置 config

你可以直接编辑 config/chatbot.php 文件

5. 配置 aiml

编辑 storage/chatbot/aiml 目录下的文件

  • chatbot.aiml 是入口文件,它里面的 aiml 标签可以包含多个 category 标签,一个 default 标签和多个 include 标签。
  • 你添加的其它 aiml 文件在根aiml标签里必须要包含一个 topic 标签,这个topic标签可以包含多个 category 标签和一个default标签 (这里的其他aiml文件不能写include标签,include标签只能出现在chatbot.aiml文件里)。

6. 测试聊天机器人

你可以打开 http://127.0.0.1:/chatbot 和机器人进行聊天测试。

7. 调用聊天机器人

如果希望在您的应用中调用聊天机器人,我们可以这样调用它的API api?requestType=talk&userInput=hello

8. 关于匹配规则

修改后的匹配规则

* ---> (\S+)
# ---> \S+
_ ---> .*
= ---> \S*

9. 关于AIML标签

本聊天机器人的aiml标签与标准aiml标签有所不同,我根据需求对标签做了一些个性化,更多支持的标签可以在AIML.MD文件中找到。

14. 关于数据库

log 表用于存储日志。

property 表存储userbot的相关属性,相当于我们聊天机器人的大脑,帮助我们记住一些属性。set, get, del, user, bot 等标签用于操作这个表。

data 表用于存储用户的输入和机器人的回复,input, that, topic 等标签会操作Parser::$_data数组。每次程序开始运行时,程序会从这个表加载数据到这个数组中,程序结束时再将数据存储到这个表里。表的唯一标识是userId

享受使用它

查看详情

chatbot