使用钉钉接收ROS消息通知整理

如果想使用钉钉来接收ROS的系统消息,那么首先你需要建立一个钉钉群,然后添加钉钉自定义机器人

添加教程

钉钉自定义机器人接入:

官方文档 备用教程

安全设置

新版钉钉目前有3种安全设置方式,请根据需要选择一种。

这里我们选择关键字验证,最多可以设置10个关键词,消息中至少包含其中1个关键词才可以发送成功。

例如添加了一个自定义关键词:监控报警,则这个机器人所发送的消息,必须包含监控报警这个词,才能发送成功。

接口地址

https://oapi.dingtalk.com/robot/send?access_token=xxxxxx

脚本示例

下面是一个发送外网IP到钉钉的脚本示例,脚本无需自建后端服务器,直接请求钉钉官方接口,安全省心

我这里设置的是ROS 和通知两个关键字 。由于RouterOS 不支持UTF-8编码,所以中文需要转换一下才能正常显示。

这里写了一个小工具供大家使用,RouterOS中文转码工具

# 设置外网接口名称
:local WANIF "外网接口名称"  
# 钉钉 TOKEN
:local TOKEN "钉钉接口Token"
# 获取外网IP
:local currentIP [/ip address get [/ip address find interface=$WANIF] address]
:global WANIP [:pick $currentIP 0 [:find $currentIP "/"]]
# 要发送的消息标题
:local TITLE "ROS\E9\80\9A\E7\9F\A5"
# 要发送的消息内容
:local TEXT "#### ROS\E5\A4\96\E7\BD\91IP\E5\8F\98\E5\8A\A8\E6\8F\90\E9\86\92\n> IP: $WANIP"
# 钉钉Webhook地址
:local URL "https://oapi.dingtalk.com/robot/send?access_token=$TOKEN"

# 提交信息
/tool fetch http-method=post mode=https url=$URL \
    http-header-field="Content-Type:application/json" \
    http-data="{\"msgtype\":\"markdown\",\"markdown\":{\"title\":\"$TITLE\",\"text\":\"$TEXT\"}}" \
    keep-result=no

:log warning ("发送外网IP[ " ."$WANIP"." ]到钉钉成功")

效果如下

版权声明:
作者:DANx
链接:https://danx.top/2022/1.html
来源:DANx
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录