Dify接入微信公众号自动回复:2024最新完整教程与常见问题详解
要在Dify里接入微信公众号的自动回复,首先得把微信那边的服务器配置搞定,保证Dify后端能正常接收和处理微信发来的消息。微信这边的要求很明确:所有消息都得走HTTPS协议,而且必须在公众平台后台填上一个有效的URL和Token。
准备工作:微信公众号服务器配置
登录微信公众号管理平台,左侧菜单找到【开发】→【基本配置】。需要确认一下公众号已经完成了认证(没认证的话只能用测试号),然后把服务器配置开关打开。
在“服务器地址(URL)”那一栏,填上你部署Dify服务的公网地址,格式大概是这样的:https://your-domain.com/v1/chat-messages/wechat。Token可以自己定义一个,比如wechat2024这种。EncodingAESKey点一下随机生成就行。消息加解密方式记得选“安全模式”。
有个小细节:微信填完配置立即会发起一个GET请求来校验URL是否有效。如果Dify那边的路由没部署好,或者证书不可信,验证就会失败,到时候还得回头排查。
在Dify里开启微信公众号集成
进入Dify控制台,点左上角头像→【设置】→【API Keys & Integrations】→找到“WeChat Official Account”这个模块→点【Enable】。
把刚才记下的Token和EncodingAESKey粘贴进去,选择对应的应用(注意App ID要和公众号原始ID一致),勾选“启用消息自动回复”。
Token必须和微信后台填的完全一样,大小写敏感,千万别多空格。
配置Dify应用的提示词和回复逻辑
回到Dify工作区,打开你要用来做公众号回复的那个应用→点右上角【编辑】→进入【Prompt】页签。
在系统提示词里加上明确的指令,比如:“你正在为微信公众号用户提供服务,所有回复必须简洁、口语化、单段落,禁止使用Markdown、链接、换行符或星号格式。如果用户发了图片、语音、视频这类非文本消息,统一回复‘暂不支持处理多媒体消息,请发送文字咨询。’”
这一步很关键,直接影响用户实际收到的内容质量。微信客户端对超长文本或者带了特殊符号的消息,经常会截断或者显示异常,所以输出长度和格式一定要限制好。
微信侧的服务器验证
第一步:微信会往你的Dify服务URL发一个GET请求,参数包括signature、timestamp、nonce和echostr。
第二步:Dify自动校验signature的有效性,然后把echostr原样返回给微信。
第三步:微信收到正确的echostr后,就会显示“配置成功”。这时候公众号的消息就可以被Dify接收,触发LLM推理了。
第四步:发一条任意文字消息到公众号试试,看看Dify日志里有没有出现 /v1/chat-messages/wechat 的POST请求记录。如果有,说明接入成功。