wxwork-robot

module
v0.0.0-...-28fc17c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2022 License: Apache-2.0

README

wxwork-robot

企业微信机器人SDK

支持发送消息和接收消息并注册处理方法,支持多机器人管理

使用方式

初始化机器人
robot, err := client.M.AddRobot("your robot name", "95037c0d-f7ec-4cbb-aeec-xxxx", "your receive token", "encoding aes key")
if err != nil {
    panic(err)
}
发送
if err := robot.Send.Text("", "hello world", []string{}); err!=nil{
	panic(err)
}
注册消息处理
//机器人注册接收处理事件
//注册顺序决定了触发优先级
robot.Rec.Register(receiver.NewReply(
    //触发类型
    []receiver.MsgType{receiver.MText, receiver.MMixed, receiver.MImage},

    //触发条件
    func(event *receiver.CallEvent) bool {
        //任意回复都会触发
        return true
    },

    //群聊时的回复内容
    func(event *receiver.CallEvent) error {
        return robot.Send.Text(event.ChatID(), "你好", []string{event.UserID()})
    },

    //单聊时的回复内容
    func(event *receiver.CallEvent) (string, receiver.PassiveReplyType) {
        return event.Texts(), receiver.PRTMarkdown
    },
))

注册事件处理
robot.Rec.SetGroupEvent(receiver.EventDeleteFromChat, func(event *receiver.CallEvent) error {
	    fmt.Println("机器人从群里删除了", event.ChatID())
		return nil
	})

功能

发送
  • 发送文字
  • 发送markdown
  • 发送图片
  • 发送图文链接
  • 发送TextNotice模版卡片
  • 发送NewsNotice模版卡片
  • 发送Button模版卡片
  • 发送Vote模版卡片
接收
  • 回调校验
  • 回调处理,包括单聊和群聊
  • 事件处理
其他
  • 多机器人管理
  • http server
  • 日志及端口配置化

一些说明

  • 企业微信机器人不能主动私聊,只能在5s内响应,且只支持文字内容。

Directories

Path Synopsis
demo
wxprotoc

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL