XYBot:一款功能强大的微信机器人 部署教程

发布时间: 2024-04-30

🌟想象一下,拥有一个全能的微信机器人,它能帮你查天气、找新闻,甚至陪你聊天,这一切都不再是梦!XYBot,一款基于docker和pywxdll hook注入技术的微信机器人,让你的微信生活更有趣、更便捷!🎉

项目地址:https://github.com/HenryXiaoYang/XYBot

开发文档:https://henryxiaoyang.github.io/XYBot/#/

🌈XYBot的强大功能一览:

🌤️天气预报:想知道明天出门该穿什么?XYBot随时为你提供最新天气信息。

📰新闻速递:错过重要新闻?XYBot帮你随时掌握全球动态。

🗣️ChatGPT对话:无聊时,和XYBot开启一场人工智能的深度对话。

🎮Hypixel查询:游戏迷?XYBot帮你查询Hypixel玩家信息。

📸随机图片:想要新鲜感?XYBot给你发送随机图片。

🔗实用链接:学习、工作找不到资料?XYBot来帮忙。

🤝群友趣事:随机选个群友,发现更多惊喜。

✅每日签到:保持活跃,XYBot记录你的每一天。

📊积分系统:参与互动,积分累积,乐趣无穷。

🏆积分榜:看看谁是积分达人。

💰积分转账:分享快乐,积分也能传递。

🎁积分抽奖:用积分试试手气,惊喜连连。

🧧积分红包:节日气氛,用积分发红包,暖人心。

🛠️管理者的福音:

💰积分调整:管理员可自由调整积分。

📝白名单设置:保护重要用户,确保安全。

🔄状态重置:一键重置签到,方便快捷。

📚通讯录查看:轻松获取机器人联系人信息。

🤝群员管理:获取群成员列表,管理更轻松。

🔄插件操作:热加载、卸载、重载,插件管理随心所欲。

💡不仅如此,XYBot还支持自我编写插件,释放你的创造力,让机器人变得更个性、更强大!🚀

💻部署XYBot:

1.🚀Docker部署

docker run --name xybotwechat \
    -e HOOK_PROC_NAME=WeChat \
    -e HOOK_DLL=auto.dll \
    -e TARGET_AUTO_RESTART="yes" \
    -e INJ_CONDITION="[ \"\`sudo netstat -tunlp | grep 5555\`\" != '' ] && exit 0 ; sleep 5 ; curl 'http://127.0.0.1:8680/hi' 2>/dev/null | grep -P 'code.:0'" \
    -e TARGET_CMD=wechat-start \
    -p 4000:8080 -p 5555:5555 -p 5900:5900 \
    --add-host=dldir1.qq.com:127.0.0.1 \
    chisbread/wechat-service:latest

linux遇到权限错误前面加个sudo

2.🐧进入XYBot VNC

浏览器中打开http://<服务器IP(本地部署是127.0.0.1)>:4000/vnc.html,然后安装下面步骤操作:

点击连接

扫码登录微信

右键桌面-->Application-->Shells-->点击Bash

3.📁克隆代码

git clone https://github.com/HenryXiaoYang/XYBot.git

#如果上面的太慢的话可以用下面这个:
git clone https://kkgithub.com/HenryXiaoYang/XYBot.git

4.📦安装依赖

# 无镜像,在国内很慢
python3 get-pip.py

# 如果上面的太慢的话可以用下面这个:
python3 get-pip.py -i https://pypi.tuna.tsinghua.edu.cn/simple

装好pip后,就可以安装依赖了:

# 设置默认使用清华源镜像,以后就不用再调了
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

# 切换到XYBot目录中
cd XYBot

# 装XYBot所需要的库
pip3 -r requirements.txt

# 如果以后装的新插件需要其他库,请自行安装

5.🚀启动机器人:

python3 start.py

⚙️设置管理员
先向机器人发一条消息然后按control+c中断运行,可以从图中看到,收到的消息中有键叫'id1'和'wxid'。如果你是私信了机器人,请记住'wxid'的值;如果你是在群中发,请记住'id1'的值。

然后修改配置:

vi main_config.yml

改成下面这样,在admins中加入上面获得的id1的值,就可以设置好管理员了。

#Version 0.0.5
bot_version: "v0.0.5"

#如果不知道自己在干什么请别动这两行
ip: 127.0.0.1
port: 5555

admins: [ "wxid_123456789" ]

max_worker: 25

command_prefix: "/" #如果需要前缀,则必须为一个字符  如果不需要前缀可设置为空,即 ""

excluded_plugins: [ "" ]

timezone: "Asia/Shanghai"

然后再重启机器人:

python3 start.py

🚗修改插件设置

切换到XYBot目录中plugins目录

cd plugins

# 看看有哪些文件
ls
__pycache__                 menu.py
admin_points.py             menu.yml
admin_points.yml            news.py
admin_signin_reset.py       news.yml
admin_signin_reset.yml      points_leaderboard.py
admin_whitelist.py          points_leaderboard.yml
admin_whitelist.yml         points_trade.py
bot_status.py               points_trade.yml
bot_status.yml              query_points.py
get_chatroom_memberlist.py  query_points.yml
get_chatroom_memberlist.yml random_group_member.py
get_contact_list.py         random_group_member.yml
get_contact_list.yml        random_picture.py
gpt.py                      random_picture.yml
gpt.yml                     random_picture_link.py
gpt4.py                     random_picture_link.yml
gpt4.yml                    red_packet.py
hypixel_info.py             red_packet.yml
hypixel_info.yml            sign_in.py
lucky_draw.py               sign_in.yml
lucky_draw.yml              weather.py
manage_plugins.py           weather.yml
manage_plugins.yml

每一个插件都有自己的配置文件,请一个一个按照自己需求配置(只有个别插件需要配置,比如与ChatGPT相关的,需要填入api密钥),这里以gpt演示,你需要修改 openai_api_base 和 openai_api_key。
在openai_api_base的双引号中填入api链接,OpenAI官方的是 https://api.openai.com,在openai_api_key的双引号中填入api密钥:

 
keywords: ["智能聊天"]
plugin_name: "gpt"

#ChatGPT的API网址
openai_api_base: "https://api.openai.com"
#ChatGPT API的Key
openai_api_key: "sk-*************"

gpt_point_price: 3

gpt_version: 'gpt-3.5-turbo'
gpt_max_token: 1000
gpt_temperature: 0.5

最后,说一下如何设置VNC密码,如果你讲服务公布到公网上,请勿必设置密码。

  • 在终端docker ps 找出XYBot的容器的CONTAINER ID
  • 执行docker exec -it (XYBot的容器的CONTAINER ID) /bin/sh
  • 在容器内执行x11vnc --storepasswd
  • 然后跟着提示设置密码
  • 编辑这个文件/etc/supervisord.d/x11vnc.conf
  • 在第二行的command=x11vnc -forever -shared末尾加入-rfbauth /home/app/.vnc/passwd
  • 最后应该是command=x11vnc -forever -shared -rfbauth /home/app/.vnc/passwd
  • exit退出docker然后重启docker
  • 现在用网页连接vnc应该要输入密码

现在,你只需按照以上步骤,就能拥有一个属于你的XYBot,让智能生活触手可及!🎊

 

 

 

 

 

  1. 陈庆
    2024-06-13 23:12:47

    学习学习

请在下方留下您的评论.加入TG吹水群