banner
NEWS LETTER

微信机器人

Scroll down

前提

复现b站大佬“技术爬爬虾”按照GitHub开源项目“chatgpt-on-wechat”的项目。该项目利用的是微信的官方接口接入最时髦的谷歌机器人GEMINI,不存在任何的账号风险。
B站大佬项目地址:https://www.bilibili.com/read/cv29550040/
GitHub项目地址:https://github.com/zhayujie/chatgpt-on-wechat

环境声明

  1. 本次复现实验使用的服务器有:华为云提供的云函数(不用钱)(用于企业微信应用中<网页授权及JS-SDK>验证)以及阿里云提供的轻量应用服务器([亚太-新加坡-包年-学生优惠=免费](轻量应用服务器 (aliyun.com)))(用于部署主体docker转发提供AI服务的服务器和企业微信机器人之间的流量)
  2. Ubuntu22.04
  3. docker version 24.0.7

复现过程困难

  1. 在验证<网页授权及JS-SDK>时候的出现验证失败的问题:
    1.1 在选择云函数实例的时候需要选择北京的服务器,如果选择其他地区的服务器则会出现下一步校验可信域名的时候找不到相关的代码区;
    1.2 需要先点击申请校验域名后下载文件,用文本打开文件后复制到华为云函数中的代码中后才可以进行确定(只有在这个时候才会真正地开始校验);

  2. 最后一设置api接收的时候一直出现api回调地址请求不通过,是由于服务器没有开放9898端口,这是阿里云做的整体防护,不能够直接在服务器系统上进行端口开放,需要在阿里云服务器-轻量应用服务器中的防火墙中手动打开9898端口,具体操作为:轻量应用服务器-小盾牌图标-防火墙-管理规则-添加规则。

    fwq.1

B站大佬原文

这不是普通微信好友,这是我的家族企业微信,我们点进去看看,其实里面就我一个活人,其他都是AI机器人。这些机器人对接了各类AI大模型,甚至还提供电影下载,智能家居等服务。这些机器人使用的是微信的官方接口,不会对微信账号带来任何风险。并且微信天然支持语音图片输入,能承接AI的多模态功能。所以使用企业微信对接AI机器人,是一个非常好的解决方案。 本期我来分享下如何免费注册一个人的企业,白嫖企业微信的全部功能。企业微信设置繁琐,内容十分硬核,建议收藏多看几遍,视频制作不易希望各位观众老爷点赞支持下。

项目主页:https://github.com/zhayujie/chatgpt-on-wechat
项目文档;https://docs.link-ai.tech/cow/quick-start
本教程没讲到的细节请参考文档。

  1. 注册企业微信
    https://work.weixin.qq.com/wework_admin/register_wx?from=loginpage

  2. 创建企业机器人
    应用管理–>应用–>创建应用 ,应用名称跟描述随便填,可见范围选整个公司
    这样就创建好了一个企业机器人。

2

  1. 配置可信域名
    如果未认证的企业可以使用华为云的域名,认证企业则必须

3.1. 登陆华为云
  https://activity.huaweicloud.com/ ,完成实名认证

3.2. 创建云函数
搜索云函数,点击立即使用。右上角创建函数,选择HTTP函数,函数名称随便填。

3

3.3. 创建触发器
切换到设置 触发器-创建触发器

4

安全认证选None ,分组随意创建一个

5

3.4. 获得URL

6

下一步 打开企业微信 –>进入刚才创建的机器人–>设置可信域名

7

可信域名填3.4步骤中的URL,类似以下格式(注意去掉http:// 与 最后的/)

5d1c0cceabb04d8e8413c2b615790846.apig.cn-north-1.huaweicloudapis.com

3.5. 获得乱码
点击申请校验域名->下载文件, 将文件里面的乱码复制下来 大约长这样: 1tg27Cpi9hYTjFFq

8

3.6. 绑定可信域名
回到华为云, 代码->index.js 修改第九行为文件里的乱码(见3.5小节获得的乱码),点击部署

9

部署完成 回到企业微信->点击确定 可信域名即完成绑定

  1. Gemini对接企业微信

我们使用这个项目 chatgpt-on-wechat

https://github.com/zhayujie/chatgpt-on-wechat

4.1. 申请Google Gemini
申请一个API key

https://makersuite.google.com/app/apikey

4.2. ubuntu系统安装docker
找一个国外IP的服务器,先安装docker ,下面脚本已ubuntu为例

1
2
3
4
5
sudo apt update
sudo apt-get install ca-certificates curl gnupg lsb-release software-properties-common
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get install docker-ce docker-ce-cli containerd.io

4.3. 下载docker compose
执行以下命令下载 docker-compose.yml:

1
wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml

修改docker compose文件,主要配置从24行以下开始

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
version: '2.0'
services:
chatgpt-on-wechat:
image: zhayujie/chatgpt-on-wechat
container_name: chatgpt-on-wechat
security_opt:
- seccomp:unconfined
environment:
OPEN_AI_API_KEY: 'YOUR KEY'
PROXY: ''
SINGLE_CHAT_PREFIX: '["bot", "@bot"]'
SINGLE_CHAT_REPLY_PREFIX: '"[bot] "'
GROUP_CHAT_PREFIX: '["@bot"]'
GROUP_NAME_WHITE_LIST: '["测试群", "测试群2"]'
IMAGE_CREATE_PREFIX: '["画", "看", "找"]'
CONVERSATION_MAX_TOKENS: 1000
SPEECH_RECOGNITION: 'False'
CHARACTER_DESC: '你是Gemini, 你旨在回答并解决人们的任何问题'
EXPIRES_IN_SECONDS: 3600
USE_GLOBAL_PLUGIN_CONFIG: 'True'
USE_LINKAI: 'False'
LINKAI_API_KEY: ''
LINKAI_APP_CODE: ''
## 配置从以下开始
MODEL: 'gemini'
# 4.1小节申请的 gemini api key
GEMINI_API_KEY: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
CHANNEL_TYPE: "wechatcom_app"
# 企业微信->我的企业->企业ID
WECHATCOM_CORP_ID: "xxxxxxxxxxxxxxxxxx"
# 企业微信->应用管理->应用->Secret
WECHATCOMAPP_SECRET: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# 企业微信->应用管理->应用->AgentId
WECHATCOMAPP_AGENT_ID: "xxxxxx"
# 企业微信->应用管理->应用->接收消息->设置API接收->Token
WECHATCOMAPP_TOKEN: "xxxxxxxxxxxxxxxxxxxxxxxxxx"
# 企业微信->应用管理->应用->接收消息->设置API接收->EncodingAESKey
WECHATCOMAPP_AES_KEY: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
WECHATCOMAPP_PORT": 9898
ports:
- 9898:9898

4.4. 启动docker
修改完成后将docker启动起来

1
2
3
4
5
6
# 启动docker
sudo docker compose up -d
# 查看日志
sudo docker logs chatgpt-on-wechat
# 停止docker 如果修改配置文件必须先停止再启动
# sudo docker compose down

启动完成后安装Gimini依赖

1
2
3
4
5
6
# 获取所有执行中的容器
sudo docker ps
# 在置顶容器安装 google-generativeai,注意修改xxxxxxxx为容器ID
sudo docker exec xxxxxxxxxx pip3 install google-generativeai
# 重启容器
sudo docker restart xxxxxxxxxx

4.5. 企业微信设置
回到企业微信,填写好URL  ,按如下格式

http://服务器IP:9898/wxcomapp

10注意Token与EncodingAESKey与docker配置一致。

点击企业可信IP,填入服务器的公网IP

11

4.6. 微信加入企业
我的企业->微信插件->邀请关注 ,使用微信扫码即加入企业,然后就可以开始应用机器人

其他文章
cover
火绒剑抓微信包
  • 24/01/17
  • 00:00
  • 技术
cover
burp
  • 24/01/03
  • 00:00
  • 工具使用备份
目录导航 置顶
  1. 1. 前提
  2. 2. 环境声明
  3. 3. 复现过程困难
  4. 4. B站大佬原文
请输入关键词进行搜索