微信公众号
将 通千算智 接入微信公众号
通千算智 支持接入个人订阅号和企业服务号两种公众号类型。
| 类型 | 要求 | 特点 |
|---|---|---|
| 个人订阅号 | 个人可申请 | 收到消息时会回复一条提示,回复生成后需用户主动发消息获取 |
| 企业服务号 | 企业申请,需通过微信认证开通客服接口 | 回复生成后可主动推送给用户 |
公众号仅支持服务器和 Docker 部署,不支持本地运行。需额外安装扩展依赖:pip3 install -r requirements-optional.txt
一、个人订阅号
在 config.json 中添加以下配置:
json
{
"channel_type": "wechatmp",
"single_chat_prefix": [""],
"wechatmp_app_id": "wx73f9******d1e48",
"wechatmp_app_secret": "YOUR_APP_SECRET",
"wechatmp_aes_key": "",
"wechatmp_token": "YOUR_TOKEN",
"wechatmp_port": 80
}配置步骤
这些配置需要和 微信公众号后台 中的保持一致,进入页面后,在左侧菜单选择 设置与开发 → 基本配置 → 服务器配置,按下图进行配置:

- 在公众平台启用开发者密码(对应配置
wechatmp_app_secret),并将服务器 IP 填入白名单 - 按上图填写
config.json中与公众号相关的配置,要与公众号后台的配置一致 - 启动程序,启动后会监听 80 端口(若无权限监听,则在启动命令前加上
sudo;若 80 端口已被占用,则关闭该占用进程) - 在公众号后台 启用服务器配置 并提交,保存成功则表示已成功配置。注意 "服务器地址(URL)" 需要配置为
http://{HOST}/wx的格式,其中{HOST}可以是服务器的 IP 或域名
随后关注公众号并发送消息即可看到以下效果:

由于受订阅号限制,回复内容较短的情况下(15s 内),可以立即完成回复,但耗时较长的回复则会先回复一句 "正在思考中",后续需要用户输入任意文字主动获取答案,而服务号则可以通过客服接口解决这一问题。
提示
语音识别:可利用微信自带的语音识别功能,需要在公众号管理页面的 "设置与开发 → 接口权限" 页面开启 "接收语音识别结果"。
二、企业服务号
企业服务号与上述个人订阅号的接入过程基本相同,差异如下:
- 在公众平台申请企业服务号并完成微信认证,在接口权限中确认已获得 客服接口 的权限
- 在
config.json中设置"channel_type": "wechatmp_service",其他配置与上述订阅号相同 - 交互效果上,即使是较长耗时的回复,也可以主动推送给用户,无需用户手动获取
json
{
"channel_type": "wechatmp_service",
"single_chat_prefix": [""],
"wechatmp_app_id": "YOUR_APP_ID",
"wechatmp_app_secret": "YOUR_APP_SECRET",
"wechatmp_aes_key": "",
"wechatmp_token": "YOUR_TOKEN",
"wechatmp_port": 80
}