微信机器人Wechaty学习笔记,如何使用微信机器人Wechaty?
- Typescript
- 2023-03-31
- 1190热度
- 0评论
Wechaty,大名鼎鼎的微信机器人库:https://github.com/wechaty/wechaty、https://wechaty.js.org/
中文文档:https://wechaty.gitbook.io/wechaty/v/zh/
Wechaty
1.登录协议
- Web
- Windows
- iPad
根据不同的Puppet Provider可以切换不同的协议实现,相关文档:https://github.com/wechaty/wechaty#3-switch-protocolpuppet
当前支持的所有协议相关的库:https://wechaty.js.org/docs/puppet-providers/
通过设置环境变量为不同值,来切换微信机器人登录的协议
2.相关对象
- Wechaty,微信客户端
- Message,消息对象,代表收到的消息
- Contact,微信联系人相关的对象
- Room,微信群组相关的对象
- Room Invitation,邀请入群的事件处理对象
- Friendship,好友申请,添加好像相关的对象
接口文档:https://wechaty.js.org/docs/api
相关功能
- 获取好友列表
- 指定好友发送消息
- 指定群发送消息
- 入群欢迎
- 自动同意加好友
- 等等...
1.入门
import { WechatyBuilder } from 'wechaty'
const wechaty = WechatyBuilder.build() // get a Wechaty instance
wechaty
.on('scan', (qrcode, status) => console.log(`Scan QR Code to login: ${status}nhttps://wechaty.js.org/qrcode/${encodeURIComponent(qrcode)}`))
.on('login', user => console.log(`User ${user} logged in`))
.on('message', message => console.log(`Message: ${message}`))
wechaty.start()
2.群内艾特
const room = await bot.Room.find({topic: 'wechaty'})
await room.say('Hello world!',contact)
问题记录
1.无法监听入群事件
这可能是因为微信账号没有被授权为管理员或群主,无法接收入群事件。可以尝试将微信账号添加为管理员或群主,然后重新登录wechaty机器人。