准备工作(约 10 分钟)
需要一个企业微信管理后台(work.weixin.qq.com,免费注册即可,个人可注册)。进入后台后:
- 应用管理 → 微信客服:开启微信客服,创建一个客服账号(名字如「笔记助手」)。
- 在客服账号的「API」处选择「接入:自行开发」,进入回调配置页面。
- 回调 URL 填
https://note.anwang.cn/api/wecom/callback,Token 与 EncodingAESKey 可点「随机生成」。 - 点「保存」时企业微信会向本站发验证请求(服务端已就绪,验签通过即保存成功)。
注意:首次保存前需先把下面四项凭据配置到服务端,否则会返回 NOT_CONFIGURED。 - 完成后在客服账号里拿到「客服链接 / 二维码」,用微信打开即进入对话。
需要配置到服务端的四项凭据
把以下四项发给管理员(或按管理员给你的方式写入服务端密钥表):
| 凭据 | 在哪里拿 |
|---|---|
| CorpID(企业 ID) | 企业微信后台「我的企业 → 企业信息 → 企业 ID」 |
| Secret | 微信客服应用的 Secret(应用管理 → 微信客服 → API) |
| Token | 回调配置页你自己生成的那串 |
| EncodingAESKey | 回调配置页你自己生成的那串(43 位) |
使用方式(配置完成后)
- 微信里打开客服链接(或扫客服二维码),给「笔记助手」发消息;
- 发链接 → 服务端自动抓取正文转 Markdown;发文字 → 存为随手记;发图片/文件/语音/视频 → 下载原件入库并列链接;
- 客服会自动回复「已收到并进入同步队列(#N)」;
- 回到电脑 Obsidian,点左侧同步图标(或等自动同步),笔记即出现在
Inbox/对应目录。
安全说明
- 凭据只存服务端 SQLite 密钥表(640 权限),不出现在任何源码与页面;
- 回调请求按企业微信官方算法验签(SHA1 字典序)+ AES-256-CBC 解密并校验 CorpID,伪造请求直接拒绝;
- 消息按 msgid 去重,重复回调不会产生重复笔记;
- 媒体文件落在 /uploads/ 目录,文件名随机不可枚举,目录禁止列目录。