# 悠悠自定义是什么?

悠悠是一个机器人程序,跟传统靠插件拓展功能的机器人不同,悠悠并不是一个插件,而是一个独立运行的程序。

悠悠的全部功能都依赖 JavaScript 脚本,所有的功能也都靠 JavaScript 实现,使用 JavaScript 脚本你几乎可以做任何事。

# 悠悠自定义可以做什么?

几乎可以做任何事,如果非要让我举例

  • 关键词回复 / 撤回 / 禁言 / 踢出群

  • 进退群欢迎

  • 修改名片提醒

  • 强制规范改名片

  • 使用数据库操作指令记录群成员发言情况

  • 自动同意好友申请 / 群邀请

  • 使用 HTTP 请求获取网络图片并发送

  • 使用做图指令,群成员发送“签到”时,生成一张含有用户头像的卡片

  • 使用 HTTP 请求调用 ChatGPT 接口与用户对话

  • 使用 HTTP 请求和爬虫指令获取天气情况等

  • 使用定时任务可以做到整点报时,定时发送群消息,晚间禁言等

  • 使用 MySql 模块操作数据库,可以对接游戏服务器

    ...

# 支持什么框架或平台

悠悠是一门独立的程序,他不依赖与任何框架或平台,框架和平台只要能提供 http 接口和事件推送(webhook),悠悠就可以对接。

在对接之前,你可能需要一个适配器,适配器是悠悠与框架或平台进行交互的桥梁。

适配器可以到群文件中获取,也可以直接来群里问问

适配器下载中心

# 入门

# 平台与悠悠的关系

平台与悠悠的关系图

悠悠与平台之间是使用 HTTP 通讯,悠悠对接的平台需要提供 HTTP 接口和事件推送(webhook)

必须要注意的

对接的平台或框架必须启动事件推送和提供 HTTP API,否则悠悠与平台或框架间将无法交互

# 平台启动服务

在下文中,框架和平台都将统称为平台

启动平台的 HTTP 接口功能与事件推送功能

# 事件接收(重点)

将平台的事件推送给悠悠,悠悠才能收到事件并处理事件,使用 HTTP 的方式推送给悠悠

悠悠接收的事件接口规则如下

方式 POST

URI /bot/event

header Content-Type: application/json

编码集 UTF-8

# 目录结构

.
├── config (配置目录)
│   ├── adapter (适配器)
│   │   ├── wechat (可选的, 适配器)
│   │   │   ├── api.js (bot 对象)
│   │   │   ├── router.js (事件路由器, 描述事件该如何路由到不同处理器组件)
│   │   │   └── weber.js (提供web http api的能力)
│   │   └── kook (可选的, 适配器)
│   ├── application.yml (程序配置文件)
│   └── data.db (默认数据库, 存储用户数据)
├── bot-*.*.*.jar (主程序)
└── yoyobot.exe (启动器)

# 配置文件


 
 





 








bot:
  adapter: go-cqhttp                            #适配器名称
  address: localhost:5700                       #非系统使用, 适配器从该属性中, 动态绑定bot地址
event:
#  address: localhost:5700                      #允许事件推送的地址
  local: true                                   #允许来自本地的事件
server:
  port: 9600                                    #端口, 默认9600, 登录时需要 ip:port 才能登录
admin:
  password: a0c2c0dae120df3a746f8ce086716a3f    #web 管理员登录密码, 默认密码: iloveu
print:
  log: true                                     #在终端打印 log (推送到 web 日志的)
  body: true                                    #在终端打印 body (原始 body)
  event: true                                   #在终端打印经 adapter 的 router 解析后的 event 对象
  route: false                                  #在终端打印 route
# #开头为注释哦

# 开始使用

# 选择合适的适配器

选择一个已存在的适配器,将适配器名字设置在配置文件中 bot.adapter

bot.address 说明

一般适配器的需要使用 bot.address 配置的值,具体可以参考适配器的说明

bot.address 非系统使用,具体如何使用,请参考适配器内部实现,一般用作拼接平台 HTTP URL

注意

该适配器必须在 /config/adapter 目录中存在

一定要选择一个适配器,否则将无法正常工作,在配置文件中修改

适配器下载中心

# 设置端口

在配置文件中,server.port 可以选择悠悠所监听(占用)的端口,请记住这个端口

默认是 9600

注意

端口不能被占用,否则会启动失败

# 启动

运行 yoyobot.exe,首次启动会下载程序运行环境,大约150M,输入激活码(私聊群主领取),点击绑定按钮,点击启动按钮

此时,应该弹出一个终端(cmd黑窗口),这就是我们的主程序,请不要关闭他

# 登录管理后台

本地访问,打开浏览器,如输入 http://localhost:9600

注意

端口是和配置文件相同的,9600 是默认端口

管理后台登录页

输入账号,账号是由 IP:PORT 组成,现在已经应该默认填写了账号,密码默认为 iloveu,点击登录

如果您已经对接了目标平台,现在就开始正式使用悠悠吧

# 检查是否对接成功

聊天

在后台的最右侧,有聊天记录,点击按钮弹出,给机器人发送消息后,如果有聊天,说明对接成功

# 实现一个最简单的回复功能

# 私聊回复

回复功能

提示

点击用户消息

新增

提示

点击新增

编辑

提示

* 代表通配符,一个 * 可以匹配任何字符,0 个,1 个,或多个

当满足表达式,就可以执行该操作

输入以上内容,点击提交,私聊机器人,发送“你好“,试一试吧~,如果机器人回复你啦,说明你很棒~(注意是私聊哦)

# 团队管理

提示

在使用群聊回复之前,先设置您的团队管理

团队管理按钮

提示

点击进入团队管理

新增

提示

点击新增

新增

提示

悠悠支持2级模型(如:kook、QQ频道等),如果你是1级模型(如:企业微信),团队 ID 随便写,但不要重复,设置后提交

# 群聊回复

群聊编辑

提示

与私聊回复一样,但是要选择团队

# 进阶使用

不要以为悠悠的功能仅这些哦,这连冰山一角都算不上哦~

快来进阶使用吧

传送门 初级指南