qq搜图机器人搭建

主要的gocqhttp:https://github.com/Mrs4s/go-cqhttp

搜图:https://github.com/Tsuk1ko/cq-picsearcher-bot

云服务器:https://www.chamaoyun.com/

根据文档能搭出来

以后有空再补下面的

坑:

需要更新nodejs

ssh断开后终端会停止工作 所以需要安装screen

有时候在暴毙gqcq的时候没有用

所以换成supervisor

在暴毙的时候回自动重启gocq

先买一个服务器 最好是境外的

下面以Ubuntu 18.04.1 LTS为演示(16版本略微不同 自己去查一下下),windows也基本同理

1.安装nodejs

sudo apt-get install nodejs
sudo apt install libssl1.0-dev nodejs-dev node-gyp npm
sudo npm install n -g //更新node为最新版本的管理工具
sudo n stable //安装最新稳定版的nodejs

判断是否安装成功

node -v
npm -v

image-20210223150013520

2.创建文件夹方便管理

cd home 

sudo mkdir tencentroobt

//给权限

sudo chmod -R 777 tencentroobt  
cd tencentroobt

放gocq的文件夹

mkdir gocq
sudo chmod -R 777 gocq

放cq-search的文件夹

mkdir cqsearch
sudo chmod -R 777 cqsearch

qq搜图机器人搭建_第1张图片

3.下载gocq

先进去文件夹

cd gocq

然后

Releases · Mrs4s/go-cqhttp (github.com)

去此网页挑选属于自己的版本

查看自己的版本(linux)

dpkg --print-architecture
arch

image-20210223142751626

可以右键检查源代码查看

qq搜图机器人搭建_第2张图片

下载命令:

wget https://github.com/Mrs4s/go-cqhttp/releases/download/v0.9.40-fix2/go-cqhttp-v0.9.40-fix2-linux-amd64.tar.gz

下载完成后解压

tar -zxvf go-cqhttp-v0.9.40-fix2-linux-amd64.tar.gz 

qq搜图机器人搭建_第3张图片

然后想节省空间可以删除原来的安装包 懒得删可以跳过

rm go-cqhttp-v0.9.40-fix2-linux-amd64.tar.gz 

image-20210223144429523

然后运行

./go-cqhttp

然后在当前目录下会生成一个cofig.hjson

vim config.hjson

linux是按一下键盘上的i然后就可以开始改东西啦

下面是参考 可以全部复制进去 也可以自己根据相关的改

/*
    go-cqhttp 默认配置文件
*/

{
    // QQ号
    uin: 你的账号
    // QQ密码
    password: "你的密码"
    // 是否启用密码加密
    encrypt_password: false
    // 加密后的密码, 如未启用密码加密将为空, 请勿随意修改.
    password_encrypted: ""
    // 是否启用内置数据库
    // 启用将会增加10-20MB的内存占用和一定的磁盘空间
    // 关闭将无法使用 撤回 回复 get_msg 等上下文相关功能
    enable_db: true
    // 访问密钥, 强烈推荐在公网的服务器设置
    access_token: ""
    // 重连设置
    relogin: {
        // 是否启用自动重连
        // 如不启用掉线后将不会自动重连
        enabled: true
        // 重连延迟, 单位秒
        relogin_delay: 3
        // 最大重连次数, 0为无限制
        max_relogin_times: 0
    }
    // API限速设置
    // 该设置为全局生效
    // 原 cqhttp 虽然启用了 rate_limit 后缀, 但是基本没插件适配
    // 目前该限速设置为令牌桶算法, 请参考: 
    // https://baike.baidu.com/item/%E4%BB%A4%E7%89%8C%E6%A1%B6%E7%AE%97%E6%B3%95/6597000?fr=aladdin
    _rate_limit: {
        // 是否启用限速
        enabled: false
        // 令牌回复频率, 单位秒
        frequency: 1
        // 令牌桶大小
        bucket_size: 1
    }
    // 是否忽略无效的CQ码
    // 如果为假将原样发送
    ignore_invalid_cqcode: false
    // 是否强制分片发送消息
    // 分片发送将会带来更快的速度
    // 但是兼容性会有些问题
    force_fragmented: false
    // 心跳频率, 单位秒
    // -1 为关闭心跳
    heartbeat_interval: 0
    // HTTP设置
    http_config: {
        // 是否启用正向HTTP服务器
        enabled: true
        // 服务端监听地址
        host: 0.0.0.0
        // 服务端监听端口
        port: 5700
        // 反向HTTP超时时间, 单位秒
        // 最小值为5,小于5将会忽略本项设置
        timeout: 0
        // 反向HTTP POST地址列表
        // 格式: 
        // {
        //    地址: secret
        // }
        post_urls: {}
    }
    // 正向WS设置
    ws_config: {
        // 是否启用正向WS服务器
        enabled: true
        // 正向WS服务器监听地址
        host: 0.0.0.0
        // 正向WS服务器监听端口
        port: 6700
    }
    // 反向WS设置
    ws_reverse_servers: [
        // 可以添加多个反向WS推送
        {
            // 是否启用该推送
            enabled: false
            // 反向WS Universal 地址
            // 注意 设置了此项地址后下面两项将会被忽略
            // 留空请使用 ""
            reverse_url: "ws://127.0.0.1:8080/cqhttp/ws"
            // 反向WS API 地址
            reverse_api_url: "ws://you_websocket_api.server"
            // 反向WS Event 地址
            reverse_event_url: "ws://you_websocket_event.server"
            // 重连间隔 单位毫秒
            reverse_reconnect_interval: 3000
        }
    ]
    // 上报数据类型
    // 可选: string array
    post_message_format: string
    // 是否使用服务器下发的新地址进行重连
    // 注意, 此设置可能导致在海外服务器上连接情况更差
    use_sso_address: false
    // 是否启用 DEBUG
    debug: false
    // 日志等级 trace,debug,info,warn,error
    log_level: "info"
    // WebUi 设置
    web_ui: {
        // 是否启用 WebUi
        enabled: false
    }
}

然后按一下esc

然后按一下:wq 冒号也要打

回车

重新执行命令

./go-cqhttp

有可能会遇到滑块问题

image-20210223152939764

选择1

image-20210223153110528

将其复制到你浏览器上

打开浏览器

f12 选择网络

qq搜图机器人搭建_第4张图片

会出现新的文件

qq搜图机器人搭建_第5张图片

完成拼图并且复制ticket的内容将其粘贴到要你输入的里面

qq搜图机器人搭建_第6张图片

成功运行

再次运行一般就不需要这个了

注意如果我们关闭这个SSH那么我们所在的会话窗一切都会结束

所以请安装screen打开 或者安装supervisor 进行进程保护

supervisor将在后面的模块进行讲解

安装screen

sudo apt-get install screen

常用命令

screen -ls              # 查看所有screen
screen -S  # 创建screen,并命名 注意大写
ctr + A, D              # 快捷键,退出当前screen
screen -r  # 进入screen
screen -X quit          # 删除screen,但没有指定会话
screen -X -S [session you want to kill] quit #删除screen,指定会话
screen -wipe            # 清除dead screens

创建

screen -S gocq

创建完会自动进入screen

然后在这里面输入的命令在SSH关闭的时候不会被关闭

然后输入

./go-cqhttp

qq搜图机器人搭建_第7张图片

按ctrl+a+d退出当前窗口但是里面的内容不会给关闭

qq搜图机器人搭建_第8张图片

然后去配置cqsearch吧!

4.下载cq-picsearcher-bot

切到cqsearch文件夹

cd /home/tencentroobt/cqsearch/
git clone https://github.com/Tsuk1ko/cq-picsearcher-bot.git
cd cq-picsearcher-bot/
cp config.default.jsonc config.jsonc
vi config.jsonc

只用进去设置管理者QQ(必填)

qq搜图机器人搭建_第9张图片

其他根据你喜好设置 全是中文注释

然后

esc
:wq 

部署流程:

sudo npm i -g yarn
sudo yarn

qq搜图机器人搭建_第10张图片

由于我们在上面一步已经开启go-cqhttp

所以可以直接npm run test 测试一下是否能连接成功

qq搜图机器人搭建_第11张图片

运行成功

具体命令可以查看wiki

如何食用 · Tsuk1ko/cq-picsearcher-bot Wiki (github.com)

5.supervisor

主要是我们买的服务器都是1核1G的 有时候进程会直接爆掉

sudo apt-get install supervisor

安装完成后会默认启动

cd /etc/supervisor/conf.d/
vi gocq.conf

然后输入

[program:gocq]
directory=/home/tencentroobt/gocq/
command=/home/tencentroobt/gocq/go-cqhttp
autostart=true
autorestart=true
user=root
redirect_stderr=true

esc :wq

目录可以自行更改

重启

supervisorctl reload
supervisorctl start test

然后gocq就会自动运行啦

注意:要先在前面的时候先运行几次确认不需要输入验证码和认证的时候在用supervisor启动

常用命令:

supervisorctl start programxxx,启动某个进程

supervisorctl restart programxxx,重启某个进程

supervisorctl stop groupworker: ,重启所有属于名为groupworker这个分组的进程(start,restart同理)

supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。

supervisorctl reload,载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程。

supervisorctl update,根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。

搜图机器人直接npm start就会自动挂在pm2上遇到奇怪的情况也会自动重启

你可能感兴趣的:(ubuntu,qq)