nodejs基于Wechaty实现一个会自动聊天的机器人
建议使用node 16.x.x往上
- 先安装要用到的包
npm i wechaty -S
npm i wechaty-puppet-padplus -S
npm i wechaty-puppet-wechat -S
npm i qrcode-terminal -S
- 引入
import { WechatyBuilder } from 'wechaty'
import QrcodeTerminal from 'qrcode-terminal'
- 创建实例 生成二维吗登录
const bot = WechatyBuilder.build({
name: 'puppet-wechat',
puppetOptions: {
uos: true // 开启uos协议
},
puppet: 'wechaty-puppet-wechat',
})
// 生成登录的二维码
bot.on('scan', (qrcode: any, status: any) => {
console.log(`Scan QR Code to login: ${status}\n`)
QrcodeTerminal.generate(qrcode, {
small: true
})
})
- 登陆成功
bot.on('login', (user) => {
// 登陆成功事件
}
bot.on('message', (msg) => {
// 接收消息事件
let room = msg.room() // 获取这条消息是不是来自群聊
if(room) let topic = room.topic() // 获取群聊名称
const contact = msg.talker() // 获取这条消息发送人的信息
const contactName = contact.name() // 发送人的昵称
const text = msg.text() // 消息内容
room.say('...') // 回复群组信息
contact.say('...') // 恢复联系个人信息
}
想回复图片的话可以用这个
import { FileBox } from 'file-box'
const fileBox = FileBox.fromUrl('图片的URL')
room.say(fileBox)
or
contact.say(fileBox)
好了 这样就可以玩了
想要会自动聊天的话 可以去接入第三方的API 比如图灵机器人之类的接口
- 欢迎访问俺的博客 www.bulingbuling.xyz