wx-link
v0.1.1
Published
Stateless TypeScript core SDK for WeChat iLink bot login, polling, and messaging.
Readme
wx-link
wx-link 是一个基于 TypeScript 的 iLink stateless core SDK,聚焦扫码登录、消息轮询、文本/媒体发送,以及入站媒体解析、下载和解密。
它只负责协议调用,不负责保存业务状态。token、baseUrl、cursor、会话和聊天记录都需要由你的应用自己保存。
通过微信的 ClawBot 实现微信自定义机器人的接入能力。
安装
npm i wx-link文档
Quick Start
import { loginWithQR, WxLinkClient } from "wx-link";
const login = await loginWithQR({
onQRCode: (url) => console.log("Scan QR:", url),
});
const client = new WxLinkClient({
baseUrl: login.baseUrl,
token: login.botToken,
});
let cursor = "";
while (true) {
const updates = await client.poll(cursor);
cursor = updates.nextCursor;
for (const msg of updates.msgs ?? []) {
if (!msg.from_user_id) {
continue;
}
await client.sendText({
toUserId: msg.from_user_id,
text: "hello",
contextToken: msg.context_token,
});
}
}重要限制
- 这套能力依赖 iLink 私有 HTTP / CDN 协议,不是微信官方公开 SDK。
toUserId需要业务方自己掌握。contextToken在“回复已有会话”时最稳妥;没有它时是否允许首次主动发消息,要以实际环境验证为准。- 收到的图片或文件通常是 CDN 密文,浏览器不能直接显示,通常需要先走 SDK 下载并解密。
- token、cursor、会话和聊天记录需要由业务方自己管理,生产环境建议放到数据库、KMS 或密钥托管方案里。
