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

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,让智能生活触手可及!

XYBot:一款功能强大的微信机器人,超多插件等你来玩的更多相关文章

  1. [推荐] kylinPET是一款功能强大的性能测试工具

    [推荐] kylinPET是一款功能强大的性能测试工具 官方网站: http://www.kylinpet.com/

  2. 一款功能强大的iphone购物应用源码

    一款功能强大的iphone购物应用源码,这款应用源码比较完整的,并且还支持信用卡支付服务等功能的,基本实现了我们常用的购物应用功能了,实现商品的基本展示功能,还具有完整的用户管理,以及完整的购物流程等 ...

  3. Fibratus:一款功能强大的Windows内核漏洞利用和跟踪工具

    今天给大家介绍的是一款名叫Fibratus的开源工具,广大研究人员可以使用这款功能强大的工具来进行Windows内核漏洞利用.挖掘与跟踪. Fibratus这款工具能够捕捉到绝大多数的Windows内 ...

  4. Lingoes 一款功能强大、简明易用的多语言词典和文本翻译软件

    Lingoes 软件自述 Lingoes 是一款功能强大.简明易用的多语言词典和文本翻译软件,支持多达80种语言互查互译,这些语言包括 英.法.德.意.俄.中.日.韩.西.葡.阿拉伯语 及更多... ...

  5. 微信小程序一键生成源码 在线制作定制功能强大的微信小程序

    微信小程序发展到现在,短短的一年不到的时间(很快就要迎来微信小程序周年庆),在快迎来周年庆之际,百牛信息技术bainiu.ltd特记录一下这个发展的历程,用于将来见证小程序发展的辉煌时刻,我们还能知道 ...

  6. Enumy:一款功能强大的Linux后渗透提权枚举工具

    Enumy是一款功能强大的Linux后渗透提权枚举工具,该工具是一个速度非常快的可移植可执行文件,广大研究人员可以在针对Linux设备的渗透测试以及CTF的后渗透阶段利用该工具实现权限提升,而Enum ...

  7. 20+功能强大的jQuery/CSS3图片特效插件

    以下是分享的20几个不错的图片特效插件,基于jQuery和CSS3. 1.jQuery图片下滑切换播放效果 这是一款基于jQuery的焦点图插件,这款焦点图的特点是有向下滑动的动画效果,滑到底部时,有 ...

  8. 三款功能强大代码比较工具Beyond compare、DiffMerge、WinMerge

    我们经常会遇到需要比较同一文件的不同版本,特别是代码文件.如果人工去对比查看,势必费时实力还会出现纰漏和错误,因此我们需要借助一些代码比较的工具来自动完成这些工作.这里介绍3款比较流行且功能强大的工具 ...

  9. 推荐一款功能强大的Tomcat 管理监控工具,可替代Tomcat Manager

    我们在本地启动Tomcat服务器后,用localhost:访问: 再点Manager App,即可进入Tomcat自带的Manager这个应用,此处可以单独部署/卸载每一个应用.可以看到在Manage ...

  10. 强烈推荐一款功能强大的Tomcat 管理监控工具

    专注于Java领域优质技术号,欢迎关注 原创: 侯树成 Tomcat那些事儿 启动 Tomcat完毕 ,有些时候总会打开浏览器 http://localhost:8080/ 去验证你的Tomcat是否 ...

随机推荐

  1. C++ builder 10.2 x64程序使用typeid获取vcl类名时异常

    C++ builder 10.2 x64程序使用typeid获取vcl类名时异常 比如: const std::type_info &t= typeid(TForm1); 那么t的name() ...

  2. Shiro简单入门+个人理解

    身为一个刚刚进入开发行业的学生,进入公司就开始了Shiro框架的应用,特此在这里写下收获. Shiro是apache旗下一个开源安全框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权 ...

  3. HLS视频加密,让您的视频内容更安全!

    ** 背景介绍** HLS视频加密是一种基于HTTP Live Streaming(HLS)协议的加密技术.它的核心思想是将视频切片进行加密处理,在客户端播放时需要先获取解密密钥才能正常偶发.通过这种 ...

  4. 【Java】关于Maven仓库地址

    仓库 如果你没有配置阿里云仓库镜像源,可以到这里来找 https://mvnrepository.com/ 如果你配置了阿里云仓库镜像源,可以来这里找 https://developer.aliyun ...

  5. shell 下 exec,source,.,bash和sh以及export得区别

    exec执行命令时,不会启用新的shell进程.  source和 .也不会启用新的shell进程,在当前shell中执行,设定的局部变量在执行完命令后仍然有效.  bash或sh执行时,会另起一个子 ...

  6. Python__FLASK__MySQL基础

    1.数据库的基本操作 创建数据库:使用"CREATE DATABASE 数据库名:"语句创建新的数据库 查看数据库:使用"SHOW DATABASES:"语句查 ...

  7. Qt/C++地图测距/显示不同线段的距离/拿到测距结果/测距结束信号

    一.前言说明 地图测距在地图组件中属于一个比较小众的功能,但是又不得不提供,有时候用户希望直接在地图上选点,测算距离,尤其是在一些军事领域用的比较多,测距功能提炼出来的共性就是,每一段都有距离,最后鼠 ...

  8. Qt编写地图综合应用12-路线查询

    一.前言 路线查询的功能只有在线地图才有,因为这个路线规划需要经常更新的,这个数据同步需要大量的人力物力去统计,所以这玩意必须放在服务器端,就算是类似于手机端一样的放在本地离线,也需要隔一段时间更新的 ...

  9. 记一次 .NET某工业视觉软件 崩溃分析

    一:背景 1. 讲故事 前两天给训练营里的一位学员分析了一个dump,学员因为弄了一整天也没找到祸根,被我一下子弄出来了,极度想看看我是怎么分析的?由于在微信上不能一言两语表尽,干脆写一篇文章出来详细 ...

  10. Pycharm IDE中导入和移除python项目

    1.Pycharm导入python项目 进入PyCharm后,点击File→Open,然后在弹窗中选择需要导入项目的文件夹: 打开了python项目后,需要配置该项目对应的python才可以正常运行: ...