没有服务器的先自行购买,这里推荐腾讯云2H4G8M首年70–点击购买
二、安装完成后开始安装傻妞
1.拉取机器人库
cd ~ && git clone https:
2.拉去京东组件扩展库
cd sillyGirl/develop && git clone https:
3.宝塔文件root/sillyGirl目录新建文件dev.go写入下面内容(包含QQ,微信,TG,公众号,青龙扩展,京东CK扩展)
package main
import (
_"github.com/cdle/sillyGirl/develop/qinglong"
_ "github.com/cdle/sillyGirl/develop/jd_cookie"
_"github.com/cdle/sillyGirl/im/qq"
_"github.com/cdle/sillyGirl/im/tg"
_"github.com/cdle/sillyGirl/im/wxmp"
_"github.com/cdle/sillyGirl/im/wx"
)
编译
cd && cd sillyGirl && go build
给予权限
chmod 777 sillyGirl
启动
./sillyGirl
等弹出二维码机器人QQ扫码绑定机器人
等到QQ登录完,按住ctrl再按c退出
然后静默挂机
nohup ./sillyGirl 1>/dev/null 2>&1 & #AMD64
用机器人QQ给机器人自己发送一下内容设置你自己QQ为机器人管理员
set qq masters 你的QQ号
禁用机器人自己回复信息
set qq onself false
重启一下,就可以与机器人愉快玩耍了
三、傻妞常规设置
傻妞机器人名
set sillyGirl name 傻妞
傻妞http服务端口
set sillyGirl port 8080
傻妞消息撤回等待时间,单位秒
set sillyGirl duration 5
傻妞自动升级是否通知
set sillyGirl update_notify false
是否开启傻妞自动更新
set sillyGirl auto_update true
傻妞内置赞赏码
set sillyGirl appreciate https://gitee.com/aiancandle/sillyGirl/raw/main/appreciate.jpg
是否启动http服务
set sillyGirl enable_http_server false
设置青龙openapi的client_id参数
set qinglong client_id ?
设置青龙openapi的client_secret参数
set qinglong client_secret ?
青龙是否开启自动隐藏重复任务功能
set qinglong autoCronHideDuplicate true
设置青龙面板地址
set qinglong host http://127.0.0.1:5700
设置qq登录账号
set qq uin 10000
设置qq登录密码
set qq password 123456789
设置qq临时消息默认群号
set qq tempMessageGroupCode ?
指定要监听的qq群
set qq onGroups g1&g2&g3…
设置是否自动同意好友请求
set qq auto_friend false
设置是否对监听自身消息
set qq onself true
设置qq管理员
set qq masters q1&q2&q3…
设置接受通知的qq账号
set qq notifier q1&q2&q3…
设置qq设备信息(自动生成)
set qq device.json ?
设置qq登录令牌(自动生成)
set qq session.token ?
设置telegram机器人token
set tg token ?
设置telegram机器人代理
set tg http_proxy ?
设置telegram机器人管理员
set tg masters t1&t2&t3…
设置接受通知的telegram账号
set tg notifier t1&t2&t3…
设置微信公众平台app_id
set wxmp app_id ?
设置微信公众平台app_secret
set wxmp app_secret ?
设置微信公众平台token
set wxmp token ?
设置微信公众平台encoding_aes_key
set wxmp encoding_aes_key ?
设置微信公众平台管理员
set wxmp masters w1&w2&w3…
傻妞内置微信插件,依赖于可爱猫和http-sdk
傻妞远程处理接口 /wx/receive
设置插件调用地址,确保傻妞可以访问可爱猫端口
#set wx api_url ?
设置图片转发模式,否则可能会出现此图片来自xx未经允许不得使用的提示
#set wx relay_mode true
设置指定转发地址,格式为 https://域名/relay?url=%s,不知道不用填
#set wx relaier ?
设置动态网络地址,适用于傻妞家庭宽带而可爱猫在云服务器的情况下
set wx dynamic_ip true
获取群号 TG QQ 微信 通用
groupCode
获取自己ID TG QQ 微信 通用
myuid
获取上次编译时间
compiled_at
设置内置小爱API
set sillyGirl 小爱同学 http://jiuli.xiaoapi.cn/i/xiaoai_tts.php?msg=%s
小爱API返回词典中获取那个键的值
set sillyGirl 小爱同学gjson text
关键词撤回功能
set sillyGirl recall 关键词1&关键词2…
关键词回复功能
set reply 关键词[支持正则] 回复内容
四丶傻妞重启、更换机器人QQ、手动更新
重启
ps -A|grep sillyGirl ##显示进程号
kill -9 xxxxxx ##杀掉进程
cd && cd sillyGirl && ./sillyGirl ##启动傻妞
```
等待数据库加载完成,按下curl 再按 C 退出
然后执行下面命令 静默挂机
```
nohup ./sillyGirl 1>/dev/null 2>&1 & #AMD64
```
或用这个代码也可以
```
./sillyGirl -d
```
不出错重启就行,出错看执行日志对其配置!
**五丶更换机器人QQ**
首先确保傻妞是新版,用下面命令注销现有QQ
```
delete qq session.token
```
然后重新启动傻妞
```
cd && cd sillyGirl && ./sillyGirl ##启动傻妞
```
等待弹出二维码用QQ扫码
登录成功,然后按curl + C 退出
然后静默挂机。上面有命令教程
**六丶手动更新**
```
cd && cd sillyGirl && git stash && git pull && go build && ./sillyGirl -d
```
QQ发升级出现失败
![在这里插入图片描述](https://img-blog.csdnimg.cn/3de3c649097d4df7902abe09dcd10300.png)
宝塔找到/root/sillyGirl/.git/config文件
在文件最后一行加上两行代码解决
```
[user]
email = xxx@qq.com #自己的邮箱或者随意
name = 爱的味道 #随意昵称
```
保存一下重启。
**七丶傻妞对接青龙** [青龙安装教程](https://blog.csdn.net/qq_39910486/article/details/121112059?spm=1001.2014.3001.5501)
1.创建青龙应用
![在这里插入图片描述](https://img-blog.csdnimg.cn/00be7501cdeb4274a03e7c6c9572a1d4.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5LuA5LmI5LuA5LmIZ2Vu5LuA5LmI,size_20,color_FFFFFF,t_70,g_se,x_16)
然后复制你的应用信息对接傻妞
设置青龙open api id
set qinglong client\_id 青龙应用ID
设置青龙open api 密码
set qinglong client\_secret 青龙应用secret(密钥)
设置青龙登录地址
set qinglong host http://IP:端口号
例如:set qinglong host http://127.0.0.1:5700
**青龙常用交互命令**
拉去脚本
ql raw 脚本地址
查询COOKIE状态
ql cookie status
指定CK运行脚本
ql task 任务文件名 desi JD\_COOKIE 指定的CK编号(如1 1-2 等等)
CK优先级
jd exchange ? ?
CK备注
jd remark ? ?
\[修改QQ、Cookie绑定关系\]
删除Cookie对应QQ号关系\[只需要改pt\_pin为你要改的pin\]
delete pinQQ pt\_pin
绑定Cookie对应QQ关系 \[改pt\_pin为你要改的pin qq号为需要绑定QQ号\]
set pinQQ pt\_pin qq号
解除指定账号关联的一切账号
jd unbind im 账号
青龙关闭自动隐藏任务命令
set qinglong autoCronHideDuplicate false
默认开启。
^ql\\s+crons$
ql crons #获取所有青龙任务
^ql\\s+cron\\s+status\\s+(\\S+)$
ql cron starts 任务名 #查看该任务状态
^ql\\s+cron\\s+run\\s+(\\S+)$
ql cron run 任务名 #运行该任务
^ql\\s+cron\\s+stop\\s+(\\S+)$
ql cron stop 任务名 #停止该任务
^ql\\s+cron\\s+enable\\s+(\\S+)$
ql cron enable 任务名 #启用该任务
^ql\\s+cron\\s+disable\\s+(\\S+)$
ql cron disable 任务名 #禁用该任务
^ql\\s+cron\\s+find\\s+(\\S+)$
ql cron find 任务名 #查找该任务
^ql\\s+cron\\s+logs\\s+(\\S+)$
ql cron logs 任务名 #查看该任务日志
^ql\\s+update$
ql update #升级青龙面板
^ql\\s+update\\s+logs$
ql update logs #查看青龙面板升级日志
^ql\\s+cron\\s+hide\\s+duplicate$
ql cron hide duplicate #删除重复任务
ql\\s+config$
ql config #查看青龙配置文件 QQ字数限制所以用不了
^ql\\s+envs$
ql envs #查看青龙已有变量不含CK
^ql\\s+env\\s+get\\s+(\\S+)$
ql env get 变量名 #获取变量信息包含名称/状态和值
^ql\\s+env\\s+find\\s+(\\S+)$
ql env find 变量名 #用于查询是否已设置此变量
^ql\\s+env\\s+set\\s+(\\S+)\\s+(\\S+)$
ql env set 变量名 变量值 #设置新的变量
^ql\\s+env\\s+remark\\s+(\\S+)\\s+(\\S+)$
ql env remark 变量名 备注 #设置变量备注
^ql\\s+env\\s+disable\\s+(\\S+)$
ql env disable 变量名 #禁用变量
^ql\\s+env\\s+enable\\s+(\\S+)$
ql env enable 变量名 #启用变量
傻妞功能较为广泛,可以进宝塔文件conf/config.yaml中添加API配置,也可以自己写脚本放到develop/replies目录里。
API配置样板文件:
```
replies:
#文本类型的回复
- type: text
rules:
- 在吗
content: 我是花猫,欢迎来撩,可以发送功能查看我能做什么,喵喵喵!
#链接类型回复
- type: url
rules:
- 壁纸
- 二次元
request:
#图片
response_type: image
url: https://acg.toubiec.cn/random.php
- type: url
rules:
- 姐姐
- 妹妹
- 小姐姐
request:
#图片
response_type: image
url: http://api.btstu.cn/sjbz/zsy.php
- type: url
rules:
- 舔狗日记
- 舔狗
request:
#纯文本
response_type: text
url: https://api.oick.cn/dog/api.php
- type: url
- 股票 (.*)
request:
#纯文本
response_type: text
url: https://zyzcfa.com:444/api/stocks?keyword={{1}}
- type: url
rules:
- 蓝奏云 (.*) (.*)
- 蓝奏云 (.*)
- 蓝奏云 (.*)密码:(.*)
request:
#纯文本
response_type: json
url: http://yingy.20wl.co/Api/php/LanZous.php?url={{1}}&pwd={{2}}
get: data.url
- type: url
rules:
- 游戏
- 开始游戏
request:
#纯文本
response_type: text
url: http://hm.suol.cc/API/game_gs.php?msg=开始游戏
- type: url
rules:
- 答 (.*)
- 答(.*)
request:
#纯文本
response_type: text
url: http://hm.suol.cc/API/game_gs.php?msg=答{{1}}
- type: url
rules:
- 提示
request:
#纯文本
response_type: text
url: http://hm.suol.cc/API/game_gs.php?msg=提示
- type: url
rules:
- ^查字\s*(\S*)$
replace:
-
- <br>
- "\n"
request:
response_type: template
url: https://api.tianapi.com/txapi/xhzd/index?key=19eea766886493ecd04e770d0c2b56f9&word={{1}}
template: "汉字:gjson(newslist.[0].hanzi)\n读音:gjson(newslist.[0].pyyb)\n解释:gjson(newslist.[0].content)\n拓展:gjson(newslist.[0].explain)"
# - type: url
# rules:
# - .*
# request:
# #纯文本
# response_type: json
# url: https://api.ixiaowai.cn/tgrj/index.php
# get: data.msg
```
**定时推送js样例**
```
var data = request({
"url": "https://api.tianapi.com/txapi/wxhottopic/index?key=" + get("tianapi_key"),
"dataType": "json"
})
var newslist = ["每日热点:"];
var content = "";
var messages = eval('(' + get("hottopic") + ')');
if (data && data.newslist) {
hots = data.newslist.reverse()
for (var i = 0; i < hots.length; i++) {
newslist.push((i + 1) + ". " + hots[i].word)
}
content = newslist.join("\n")
} else {
content = "每日热点," + data
}
for (var i = 0; i < messages.length; i++) {
message = messages[i]
message["content"] = content
push(message)
}
sendText("操作成功。")
```