持续集成之钉钉消息推送:3:推送消息示例

在这里插入图片描述
在前面一篇文章中了解到了目前钉钉群机器人推送消息的几种格式,这篇文章以实际的使用示例来演示使用方法:

示例脚本

只需要将CHAT_WEBHOOK_KEY(key的内容)export之后,然后直接执行脚本即可看到演示结果

liumiaocn:robot liumiao$ cat demo_message_send.sh 
#!/bin/sh

CHAT_WEBHOOK_URL='https://oapi.dingtalk.com/robot/send?access_token'
CHAT_CONTENT_TYPE='Content-Type: application/json'

echo "## demo: text: print hello liumiao"
curl "${CHAT_WEBHOOK_URL}=${CHAT_WEBHOOK_KEY}" \
   -H "${CHAT_CONTENT_TYPE}" \
   -d '
   {
    "msgtype": "text",
    "text": {
        "content": "[LiuMiaoMsg]: hello liumiao"
    }
   }' 2>/dev/null |jq .

echo "## demo: link type message"
curl "${CHAT_WEBHOOK_URL}=${CHAT_WEBHOOK_KEY}" \
   -H "${CHAT_CONTENT_TYPE}" \
   -d '
   {
    "msgtype": "link", 
    "link": {
        "text": "这个即将发布的新版本,创始人称它为“红树林”。
而在此之前,每当面临重大升级,产品经理们都会取一个应景的代号,这一次,为什么是“红树林”? [LiuMiaoMsg]", 
        "title": "时代的火车向前开", 
        "picUrl": "", 
        "messageUrl": "https://liumiaocn.blog.csdn.net/article/details/103750765"
    }
   }' 2>/dev/null |jq .

echo "## demo: markdown type message"
curl "${CHAT_WEBHOOK_URL}=${CHAT_WEBHOOK_KEY}" \
   -H "${CHAT_CONTENT_TYPE}" \
   -d '
   {
     "msgtype": "markdown",
     "markdown": {
         "title":"杭州天气",
         "text": "#### 杭州天气 \n > 9度,西北风1级,空气良89,相对温度73%\n\n >![screenshot](https://gw.alicdn.com/tfs/TB1ut3xxbsrBKNjSZFpXXcXhFXa-846-786.png)\n >###### 10点20分发布 [天气](https://www.seniverse.com/) [LiuMiaoMsg]\n"
     }
   }' 2>/dev/null |jq .

echo "## demo: actionCard singleTitle"
curl "${CHAT_WEBHOOK_URL}=${CHAT_WEBHOOK_KEY}" \
   -H "${CHAT_CONTENT_TYPE}" \
   -d '
   {
    "actionCard": {
        "title": "乔布斯 20 年前想打造一间苹果咖啡厅,而它正是 Apple Store 的前身", 
        "text": "![screenshot](@lADOpwk3K80C0M0FoA) 
 ### 乔布斯 20 年前想打造的苹果咖啡厅 
 Apple Store 的设计正从原来满满的科技感走向生活化,而其生活化的走向其实可以追溯到 20 年前苹果一个建立咖啡馆的计划[LiuMiaoMsg]", 
        "hideAvatar": "0", 
        "btnOrientation": "0", 
        "singleTitle" : "阅读全文",
        "singleURL" : "https://www.dingtalk.com/"
    }, 
    "msgtype": "actionCard"
   }' 2>/dev/null |jq .

echo "## demo: actionCard list"
curl "${CHAT_WEBHOOK_URL}=${CHAT_WEBHOOK_KEY}" \
   -H "${CHAT_CONTENT_TYPE}" \
   -d '
   {
   "actionCard": {
        "title": "乔布斯 20 年前想打造一间苹果咖啡厅,而它正是 Apple Store 的前身", 
        "text": "![screenshot](@lADOpwk3K80C0M0FoA) 
 ### 乔布斯 20 年前想打造的苹果咖啡厅 
 Apple Store 的设计正从原来满满的科技感走向生活化,而其生活化的走向其实可以追溯到 20 年前苹果一个建立咖啡馆的计划[LiuMiaoMsg]", 
        "hideAvatar": "0", 
        "btnOrientation": "0", 
        "btns": [
            {
                "title": "内容不错", 
                "actionURL": "https://www.dingtalk.com/"
            }, 
            {
                "title": "不感兴趣", 
                "actionURL": "https://www.dingtalk.com/"
            }
        ]
    }, 
    "msgtype": "actionCard"
   }' 2>/dev/null |jq .

echo "## demo: freecard type"
curl "${CHAT_WEBHOOK_URL}=${CHAT_WEBHOOK_KEY}" \
   -H "${CHAT_CONTENT_TYPE}" \
   -d '
   {
   "feedCard": {
        "links": [
            {
                "title": "[LiuMiaoMsg]:时代的火车向前开", 
                "messageURL": "https://liumiaocn.blog.csdn.net/article/details/103750765",
                "picURL": "https://www.dingtalk.com/"
            },
            {
                "title": "[LiuMiaoMsg]:时代的火车开不动了", 
                "messageURL": "https://liumiaocn.blog.csdn.net/article/details/103750765",
                "picURL": "https://www.dingtalk.com/"
            }
        ]
    }, 
    "msgtype": "feedCard"
   }' 2>/dev/null |jq .
liumiaocn:robot liumiao$ 

执行示例

liumiaocn:robot liumiao$ sh demo_message_send.sh 
## demo: text: print hello liumiao
{
  "errcode": 0,
  "errmsg": "ok"
}
## demo: link type message
{
  "errcode": 0,
  "errmsg": "ok"
}
## demo: markdown type message
{
  "errcode": 0,
  "errmsg": "ok"
}
## demo: actionCard singleTitle
{
  "errcode": 0,
  "errmsg": "ok"
}
## demo: actionCard list
{
  "errcode": 0,
  "errmsg": "ok"
}
## demo: freecard type
{
  "errcode": 0,
  "errmsg": "ok"
}
liumiaocn:robot liumiao$

结果确认

几种示例均使用钉钉开发文档中使用的内容,图文信息中使用的图片链接只要联网的话也可以直接看到同样的效果,URL中过长的部分指向了上一篇文章的地址。

text类型

在这里插入图片描述

Link类型

在这里插入图片描述

markdown类型

在这里插入图片描述

ActionCard整体跳转类型

在这里插入图片描述

ActionCard独立跳转类型

在这里插入图片描述

FreeCard类型

在这里插入图片描述

淼叔 CSDN认证博客专家 神经网络 TensorFlow NLP
资深架构师,PMP、OCP、CSM、HPE University讲师,EXIN DevOps Professional与DevOps Master认证讲师,曾担任HPE GD China DevOps & Agile Leader,帮助企业级客户提供DevOps咨询培训以及实施指导。熟悉通信和金融领域,有超过十年金融外汇行业的架构设计、开发、维护经验,在十几年的IT从业生涯中拥有了软件开发设计领域接近全生命周期的经验和知识积累,著有企业级DevOps技术与工具实战。
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页