微信机器人Wechaty学习笔记,如何使用微信机器人Wechaty?

Wechaty,大名鼎鼎的微信机器人库:https://github.com/wechaty/wechatyhttps://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. 获取好友列表
  2. 指定好友发送消息
  3. 指定群发送消息
  4. 入群欢迎
  5. 自动同意加好友
  6. 等等...

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机器人。