这个模块是本地建立和微信的连接,数据通过GRPC 连接一个协议服务器来进行加解密,最终控制iPad 微信,实现个人号的微信接口。
这个模块是基于Wechaty 的子模块,专门针对ipad 接入的。wechaty 是一个开源的的 个人号 微信机器人接口,是一个使用Typescript 构建的Node.js 应用。支持多种微信接入方案,包括网页,ipad,ios,windows, android 等。同时支持Linux, Windows, Darwin(OSX/Mac) 和 Docker 多个平台。
只需要6行代码,你就可以 通过个人号 搭建一个 微信机器人功能 ,用来自动管理微信消息。
更多功能包括:
- 消息处理:关键词回复
- 群管理:自动入群,拉人,踢人
- 自动处理好友请求
- 智能对话:通过简单配置,即可加入智能对话系统,完成指定任务
- ... 请自行开脑洞
详情请看Wechaty项目
安装
npm install wechaty npm install wechaty-puppet-padpro
示例代码
import { Wechaty } from 'wechaty' import { PuppetPadpro } from 'wechaty-puppet-padpro' const WECHATY_PUPPET_PADPRO_TOKEN = 'your-token-here' const puppet = new PuppetPadpro({ token: WECHATY_PUPPET_PADPRO_TOKEN, }) const bot = new Wechaty({ puppet, }) // 设置完成 // 运行 wechaty bot .on('scan', (qrcode, status) => console.log(`Scan QR Code to login: ${status}\nhttps://api.qrserver.com/v1/create-qr-code/?data=${encodeURIComponent(qrcode)}`)) .on('login', user => console.log(`User ${user} logined`)) .on('message', message => console.log(`Message: ${message}`)) .start()
文档
Token 相关
FAQ
文件相关功能须知
当前文件相关功能需要获取当前运行的主机的IP地址,目前项目使用了public-ip包来实现,但是对于某些运行环境,这个包可能无法获取当前的IP地址,因此项目中增加了对环境变量PADPRO_IP
的处理。用户可以自行传入PADPRO_IP
环境变量来指定自己的IP地址,然后根据这个IP地址获取文件功能相关的CDN服务器地址。务必保证自己传入了一个公网地址,否则传入参数无效,无法正确运行文件的收发功能。
通过wechaty发送的消息并不会在message
事件中接收到
wechaty-puppet-padpro
增加了一个环境变量PADPRO_REPLAY_MESSAGE
,来控制通过wechaty发送出去的消息,是否在message
事件中被触发
如果希望所有的消息都被触发,则可以在运行自己的代码时,在前面设置PADPRO_REPLAY_MESSAGE
为true
即可,如下:
PADPRO_REPLAY_MESSAGE=true node bot.js
LICENSE
Apache-2.0