搭建一个聊天机器人

截止2021/5/8 :

目前可以看到的是,有一个 OneBot 聊天机器人的标准协议,以及在该协议或者其他三方协议下实现的一些机器人框架,具体情况可以从github搜关键词了解到。

今天捣鼓了一下,给出两种搭建策略,本人均测试通过。个人推荐第二种。建议你要有点 基本知识。


第一种:

我才采用的协议是:mirai 家的,mirai 是一个在全平台下运行,提供 QQ Android 协议支持的高效率机器人库

声明:一切开发旨在学习,请勿用于非法用途

介绍我自己在CentOS下的安装:

  1. 首先去下一个 对应版本的文件。我是amd64 的机器,下载地址
  2. 然后给运行权限 sudo chmod +x 运行文件
  3. 然后 ./运行文件 ,一路安装就行,这里可能遇到 glibc 的版本问题,百度一下就好了,都比较简单。
搭建一个聊天机器人-即刻学术

到绿色信息这就安装完成了。再安装一下官方提供的两个插件:

./mcl --update-package net.mamoe:mirai-api-http --type plugin --channel stable
  • chat-command: 允许在聊天环境通过以 "/" 起始的消息执行指令
  • mirai-api-http:提供 HTTP 支持,允许使用其他编程语言的插件

接下来你就可以使用 ./mcl 命令了,一些命令说明看官方。或者 ./mcl -h ,主要用于外部设置比如装插件啥的

./mcl 的话可以进入机器人的控制台,可以输入 ? 来查看使用,常用命令看 文档

login qq号 密码 

就可以登录了。

一些推荐的插件:

比如:https://github.com/Yiwen-Chan/ZeroBot-Plugin

ZeroBot-Plugin 的编译安装:

(这个插件建议手动编译,不然很容易遇到 glibc 的问题,

ZeroBot-Plugin 编译:

先下载适配 mirai 的http插件:https://github.com/yyuueexxiinngg/onebot-kotlin ,在release 找到 mirai 插件版  下载,按说明放合适的位置。运行一次./mcl ,会生成对应配置文件,修改配置文件之后,在运行 ./mcl

linux build.bat 最后改为 go build -ldflags="-s -w" -o ZeroBot-Plugin-linux

修改main.go 的SuperUsers qq号

在运行 build 脚本

编译好后发现 ws 连不上,因为mirai 接口不标准,作者给出了解决办法:https://github.com/Yiwen-Chan/ZeroBot-Plugin/issues/18#issuecomment-835278461

常见问题:

  1. 当前上网环境异常,请更换网络环境或在常用设备上登录或稍后再试 

我是在 linux 上遇到这个问题的,来说一下解决方案。

首先用一台 windows 的同样安装命令行版本。下载

需要验证码,滑动什么的看这个,地址

在 MiraiConsole 中使用

使用 Mirai Console Loader 安装 Mirai login solver selenium

MCL 支持自动更新插件,支持设置插件更新频道等功能

./mcl --update-package net.mamoe:mirai-login-solver-selenium --channel nightly --type plugin

我是在winddows 上扫码登录,过的新设备登录验证。

那么登录成功之后就能在目录 /bots/登录qq/ 目录下生成 device.json 文件,这个就是模拟安卓协议的登录手机信息。把这个文件替换 linux 对应目录下的就行了。linux也能正常登录了。

2. linux 下如何后台运行

查看:https://www.cnblogs.com/Steven0805/p/7521719.html

比较简单的一种是你正在运行 ./mcl ,这个时候不想退出,又想放到后台。

那么可以i先按 Ctrl +Z 把程序暂停,然后 输入 jobs 查看后台暂停的程序,第一个是编号,比如让编号1 的程序继续运行,可以输入 bg 1,要进去的话 输入 fg 1

搭建一个聊天机器人-即刻学术
第二种:

采用 go-cqhttp ,好家伙一开始不知道这玩意,由于go语言的好处,都是一个文件,干就完事了~

好用多了,首先去github release 下载 windows 版本,先在本地登录成功,然后下载linux 版本放服务器,再把 windows 下的 device.json , 拷贝到 linux 上就能登录不需要验证了。

然后再去下载 https://github.com/Yiwen-Chan/ZeroBot-Plugin ,编译一次成功,简直不要太快乐。编译可以看上面第一种。

给TA买糖
共{{data.count}}人
人已赞赏
技术活科研工具软件工具

windows 10远程连接 ubuntu 18.04 (简单、方便)

2021-4-28 23:14:40

技术活

7b2美化之添加视差背景

2021-5-11 15:05:35

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索