所以,WX的机器人也就挂了!
但是,爱折腾的大拿会就此接受现实吗?不会,绝对不会!额...我说的大佬是指Astrbot开发者S佬
😂,大佬给我们又带来了新选择,那就是Wechatpadpro!又可以愉快玩耍啦!
🏷️ 前情提要
关于如何部署Astrbot,笔者就不絮叨了,可以直接去官网学习,或搜搜笔者的历史文章,都有!本文就简单介绍下如何在NAS上部署Wechatpadpro。
Wechatpadpro需要依赖Mysql和Redis,支持源码部署和Docker部署,我肯定是不会选择源码的方式,就不提了。所以还是老样子,Docker跑起呗。
🏷️ 部署Mysql和Redis
官方给的compose是把Wechatpadpro与Mysql、Redis放在一起部署的,这两个货是通用的中间件,也许你别的应用也会用到,真的建议单独部署,没必要跟应用绑定。所以,直接上这俩货的compose.yml。
services:mysql:image: mysql:8.4.4container_name: mysqlrestart: unless-stoppednetwork_mode: bridgeenvironment:# - --character-set-server=utf8mb4# - --collation-server=utf8mb4_unicode_ci MYSQL_ROOT_HOST:'%'MYSQL_DATABASE: wechatpadpro #默认库MYSQL_ROOT_PASSWORD:123456#root账号密码TZ: Asia/Shanghaiports:-'3306:3306'-'33060:33060'volumes:- /share/Container/mysql/data:/var/lib/mysql #冒号左边改成你想改的目录- /share/Container/mysql/config:/etc/mysql/conf.d #冒号左边改成你想改的目录
🔔提示:建议直接把默认库设置为wechatpadpro
,这样你就不用连接到数据库手工创建了,另外上面把数据库的root密码设置为了123456
,你也可以改成你想改的,后面会用到。
services:redis:image: redis:latestcontainer_name: redis restart: unless-stoppedtty:truenetwork_mode: bridge command: redis-server /etc/redis/redis.conf --appendonly yesports:- 6379:6379volumes:- /share/Container/redis/data:/data #冒号左边改成你想改的目录- /share/Container/redis/redis.conf:/etc/redis/redis.conf #冒号左边改成你想改的目录
🔔提示:记得到/share/Container/redis/redis.conf
文件中找到requirepass
,并设置密码为123456
,当然密码随你心意,这里只是给个例子,这个密码后面会用到。
分别启动Mysql和Redis容器,至于怎么启动,我只能说就是下面一行命令,如果你不理解,那么你需要学习下Docker和Docker Compose的基本常识啦,现在AI大模型这么五花八门,查一查也不是太难的事儿。
docker compose up -d
🏷️ 部署Wechatpadpro
下面就开始进入正题了,主角Wechatpadpro终于要登场啦。实际上,并没有Wechatpadpro的Docker镜像,所以我想说,所谓Docker部署方式实际上还是源码的套壳方式,因为在这里,我们还得下载Wechatpadpro的源码,并利用一个Linux基础镜像提供环境来运行源码。
1、准备工作
现在机器上创建好Wechatpadpro工作目录,例如:
/share/Container/wechatpadpro/main
2、下载和部署源码
可以直接到Github上下载源码zip包,也可以使用Git克隆源码,都一样。官方仓库地址如下:
https://github.com/luolin-ai/WeChatPadPro
将下载的源码解压(git clone不需要解压)后的文件夹内的全部文件复制或上传到【1】中创建好的/share/Container/wechatpadpro/main
目录中。重要的事情再说一遍哈,是复制或上传文件夹内的全部文件,而不是文件夹。
还没完,看到那个859_service_linux.zip
文件了吗,继续把它解压,注意也是直接解压zip包中的内容,而不要解压到文件夹。解压出来的就是一个stay
可执行文件。
3、配置文件
重点来了,将下面的json内容复制到一个setting.json
文件内,然后开始做一些修改。
"adminKey": "adminKey"
,冒号后面的愿意改就改,后面会用到 redisConfig下面的 "Host": "192.168.31.91"
,把192.168.31.91改成你自己部署Redis机器的IPredisConfig下面的 "Pass": "123456"
,把123456改成你自己部署的Redis的密码,上文提到过,你如果改了密码就写你改过的密码。"mySqlConnectStr": "root:123456@tcp(192.168.31.91:3306)/wechatpadpro?charset=utf8mb4&parseTime=true&loc=Local"
,其中的123456是Mysql的密码,上文也提到过,如果改了,就写你改过的密码;同样,192.168.31.91也改成你自己部署Mysql机器的IP。
{"debug":false,"host":"0.0.0.0","port":"8849","apiVersion":"","ghWxid":"","adminKey":"adminKey","workerpoolsize":500,"maxworkertasklen":1000,"redisConfig":{"Host":"192.168.31.91","Port":6379,"Db":1,"User":"","Pass":"123456","MaxIdle":10,"MaxActive":20,"IdleTimeout":5000,"MaxConnLifetime":30,"ConnectTimeout":0},"mySqlConnectStr":"root:123456@tcp(192.168.31.91:3306)/wechatpadpro?charset=utf8mb4&parseTime=true&loc=Local","disabledCmdList":["A000"],"newsSynWxId":false,"rocketMq":false,"rocketMqHost":"127.0.0.1:9876","rocketAccessKey":"123","rocketSecretKey":"123!#@13$","rabbitMq":false,"topic":"wx_sync_msg_topic","rabbitMqUrl":"amqp://yunkong:[email protected]:5672/","kafka":false,"kafkaUrl":"192.168.10.40:9093,192.168.10.41:9093,192.168.10.42:9093","kafkaUsername":"yunkongkafka","kafkaPassword":"iSPmfJmtBgcvcTJZ123456","dt":true,"cluster":{"clusterName":"","zkAddr":"","ectdAddr":""}}
然后,把这个setting.json
文件复制或上传到上面提到的/share/Container/wechatpadpro/main
文件夹下面的assets
文件夹下面,覆盖里面的setting.json
文件。
3、启动Wechatpadpro
以上都准备完以后,就可以下面一哆嗦了。复制下面的compose.yml,直接在你的机器启动就行。
services:wechatpadpro:container_name: wechatpadproimage: alpine:latestrestart: unless-stoppednetwork_mode: bridgeports:-"38849:8849"#冒号左边可以改,后面会用到volumes:- /share/Container/wechatpadpro/main:/mainworking_dir: /maincommand:["/bin/sh","-c","chmod +x ./stay && ./stay"]logging:driver:"json-file"options:max-size:"5g"environment:- TZ=Asia/Shanghai- LANG=zh_CN.UTF-8- LC_ALL=zh_CN.UTF-8
至于怎么启动,还是老样子,一行命令:
docker compose up -d
一哆嗦完成,这时候可以看一下Docker容器的日志,看看有没有正常启动。
docker logs -ft wechatpadpro
🏷️ 接入Astrbot
以上就完成Wechatpadpro的部署了,下面就简单了,在AstrBot上添加适配器就行了。
1、在【消息平台】菜单中,点击【新增适配器】,选择【wechatpadpro(微信)】
2、分别填入admin_key、你机器的IP和Wechatpadpro(在Wechatpadpro的compose.yml文件里设置的映射端口,冒号左边的)。记得点一下启用哦!
3、打开AstrBot的日志,找到WX二维码链接,在浏览器中打开,拿起你的手机,使用WX扫描二维码,登录即可。这一步忘截图了,所以没有图😂。
4、然后呢?然后就没有然后了。就跟之前使用Gewechat一样,正常在微信上调戏你的机器人即可。
但是!笔者实测发现,目前私聊机器人一切正常,可以正常回复。但是群聊就不行了,后台也正常调用大模型生成回复,但是消息不会发到群里面,也就是群里@机器人后没反应。各位玩家稍安勿躁,毕竟这个框架刚刚接入,相信S佬很快就会解决!
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...