Sign inSign up

catchzeng/dingtalk

By catchzeng

•Updated over 4 years ago

DingTalk(dingding) 是钉钉机器人的 Docker 镜像。支持加签安全设置,支链式语法创建消息,支持文本、链接、Markdown 消息类型。

Image
1

1.0K

catchzeng/dingtalk repository overview

⁠dingtalk

Go codecov Go Report Card Release GoDoc

English⁠

DingTalk(dingding) 是钉钉机器人的 go 实现。支持 Docker、Jenkinsfile、命令行模式,module 模式,支持加签安全设置,支持链式语法创建消息,支持文本、链接、Markdown、ActionCard、FeedCard 消息类型

⁠文档

钉钉文档⁠

⁠特性

⁠安装

⁠Docker 安装

docker pull catchzeng/dingtalk
⁠二进制安装

到 releases⁠ 下载相应平台的二进制可执行文件,然后加入到 PATH 环境变量即可。

⁠go get 安装
go get github.com/CatchZeng/dingtalk

⁠使用方法

⁠配置文件

可以在 $/HOME/.dingtalk 下创建 config.yaml 填入 access_token 和 secret 默认值。

access_token: "1c53e149ba5de6597cxxxxxx0e901fdxxxxxx80b8ac141e4a75afdc44c85ca4f"
secret: "SECb90923e19e58b466481e9e7b7a5bxxxxxx4531axxxxxxad3967fb29f0eae5c68"
⁠Docker
docker run catchzeng/dingtalk dingtalk text -t 1c53e149ba5de6597cxxxxxx0e901fdxxxxxx80b8ac141e4a75afdc44c85ca4f -s SECb90923e19e58b466481e9e7b7a5bxxxxxx4531axxxxxxad3967fb29f0eae5c68 -c "docker test"
⁠Jenkinsfile
pipeline {
    agent {
        docker {
            image 'catchzeng/dingtalk:latest'
        }
    }
    environment {
        DING_TOKEN = '1c53e149ba5de6597cxxxxxx0e901fdxxxxxx80b8ac141e4a75afdc44c85ca4f'
        DING_SECRET = 'SECb90923e19e58b466481e9e7b7a5bxxxxxx4531axxxxxxad3967fb29f0eae5c68'
    }
    stages {
        stage('notify') {
            steps {
                sh 'dingtalk link -t ${DING_TOKEN} -s ${DING_SECRET} -i "标题" -e "信息" -u "https://catchzeng.com/" -p "https://catchzeng.com/img/avatar-hux.jpg" -a'
            }
        }
    }
}
⁠作为 module
package main

import (
    "log"

    "github.com/CatchZeng/dingtalk"
)

func main() {
	  accessToken := "1c53e149ba5de6597cxxxxxx0e901fdxxxxxx80b8ac141e4a75afdc44c85ca4f"
    secret := "SECb90923e19e58b466481e9e7b7a5bxxxxxx4531axxxxxxad3967fb29f0eae5c68"
    client := dingtalk.NewClient(accessToken, secret)

    msg := dingtalk.NewTextMessage().SetContent("测试文本&at 某个人").SetAt([]string{"177010xxx60"}, false)
    client.Send(msg)
}
⁠命令行工具
⁠Demo
dingtalk text -t 1c53e149ba5de6597cxxxxxx0e901fdxxxxxx80b8ac141e4a75afdc44c85ca4f -s SECb90923e19e58b466481e9e7b7a5bxxxxxx4531axxxxxxad3967fb29f0eae5c68 -c "测试命令行 & at 某个人" -m "177010xxx60","177010xxx61"
⁠Help
$ dingtalk -h
dingtalk is a command line tool for DingTalk

Usage:
  dingtalk [command]

Available Commands:
  actionCard  send actionCard message with DingTalk robot
  feedCard    send feedCard message with DingTalk robot
  help        Help about any command
  link        send link message with DingTalk robot
  markdown    send markdown message with DingTalk robot
  text        send text message with DingTalk robot
  version     dingtalk version

Flags:
  -m, --atMobiles strings   atMobiles
  -h, --help                help for dingtalk
  -a, --isAtAll             isAtAll
  -s, --secret string       secret
  -t, --token string        access_token

Use "dingtalk [command] --help" for more information about a command.

⁠Stargazers

Stargazers over time

Tag summary

Content type

Image

Digest

Size

13.8 MB

Last updated

over 4 years ago

docker pull catchzeng/dingtalk