wechaty-mqtt-link

0.6.1 • Public • Published

简介

wechaty-mqtt-link是一个基于wechaty+mqtt的聊天机器人客户端,可以使用mqtt与云端保持连接,向部署在异构环境的业务应用同步聊天消息及接受远程控制。

搭配 easy-chatbot-controller 使用轻松实现无服务架构http请求控制机器人

wechaty版本依赖:

wechaty-puppet-padlocal < v1.0 (参考package.json)

wechaty-puppet-wxwork v0.62.1 (参考package-padlocal.json)

实现架构

在本地或云服务器运行wechaty client -> 使用百度云物联网核心套件中MQTT+规则引擎实现微信消息转发Webhook

image

如何从百度云IoTCore中获得MQTT用户名和密码

示例

import { Wechaty, ScanStatus, log } from 'wechaty'

import qrcodeTerminal from 'qrcode-terminal'

import { ChatDevice } from 'wechaty-mqtt-link'

const bot = new Wechaty()
const chatdev = new ChatDevice(process.env['MQTT_USERNAME'], process.env['MQTT_PASSWORD'], process.env['BOTID'])

async function onMessage(msg) {
    log.info('StarterBot', msg.toString())
    // console.debug(msg)
    chatdev.pub_message(msg)
    if (msg.text() == 'ding') {
        msg.say('dong')
    }
}

bot
    .on('login', (user) => {
        console.log(`User ${user} logined`)
        chatdev.init(bot)
    })
    .on('message', onMessage)
    .start()
    .catch((e) => console.error(e))

功能支持

接收消息

  • 文本
  • 图片
  • 文件
  • 视频
  • 动图
  • 联系人
  • 小程序卡片

发布消息

  • 单发消息
  • 群内@某人
  • 创建群
  • 请求全部联系人列表
  • 请求全部群列表

Readme

Keywords

none

Package Sidebar

Install

npm i wechaty-mqtt-link

Weekly Downloads

1

Version

0.6.1

License

Apache-2.0

Unpacked Size

1.59 MB

Total Files

18

Last publish

Collaborators

  • atorber