Skip to content

uucloud/wxwork-robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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内响应,且只支持文字内容。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages