调用REST端口实现钉钉通知

描述

钉钉已经成为很多企业日常工作必备的交流软件,知行软件也在钉钉通知上做出了一些努力,利用知行之桥的REST端口调用钉钉机器人API从而实现钉钉通知的功能,这样当客户在EDI系统上收到数据后,钉钉群组同时会发送通知消息,客户可以及时处理信息,提高效率。

一,创建钉钉机器人

钉钉的群组有一个自定义机器人的功能,可以利用这个功能来创建消息通知的钉钉机器人,实现钉钉通知。

1、打开群组设置,点击添加机器人。

端口

2、选择自定义机器人

端口

3、设置机器人姓名

这里可以进行自定义比如:【消息通知】。选择对应需要接收通知消息的群组,添加安全设置。如下图所示,这里是三选一,一般选择自定义关键字即可,注意这个关键字需要在REST端口传输的json文件中使用到。例如添加了一个自定义关键词:“收到”,则这个机器人所发送的消息,必须包含“收到”这个词,才能发送成功。

端口

4、设置完成后机器人就会开始工作

端口

需要注意的是,机器人的设置界面会有一个带有access_token的url,复制保存,在调用时需要用到这个带有access_token的url。

端口

二 调用API

在知行之桥的REST端口设置带有access_token的url,方法为:POST 头部为Content_Type:application/json 另外需要注意的是:发起POST请求时,必须将字符集编码设置成UTF-8。

端口

配置好这些,下一步就是在实际业务转换结束时生成一份json文件,这份json文件需要包括以下参数。

端口

要实现钉钉通知,需要传输的json文件的格式如下所示。

1

 

2

 

3

 

4

 

5

 

6

 

7

 

 

 

{

    "at": {

        "atMobiles": [

            "180xxxxxx"

        ],

        "atUserIds": [

            "user123"

        ],

        "isAtAll": false

    },

    "text": {

        "content": "收到850收据@180xxxxxx "

    },

    "msgtype": "text

三 实现消息传输

1、钉钉通知-订单通知

端口

如图所示,可以在知行之桥中搭建工作流,我们要完成的功能是:为一个Excel方案添加接收方向的钉钉通知demo。 在正常接收到X12报文,并将X12报文转换为XML后通过上图所示的Demo_Copy端口复制一份转换后的xml文件,得到两份相同的xml文件。一份按照正常的流程继续经Excel端口后再通过邮箱端口发送到客户邮箱,另一份来进行钉钉通知。

但是在进行钉钉通知之前,需要先经过一个Schedule端口进行几分钟的延时,以确保真实的数据完全进入到客户的邮箱后,再进行钉钉通知。完成Schedule端口延时之后经过Script端口,提取报文名称和主键信息,转为钉钉机器人可以读取的json文件,然后经过REST端口发送到钉钉群组,即可实现钉钉通知的功能。以下是几种钉钉通知的界面展示。

艾特到具体人的钉钉通知

端口

艾特所有人的钉钉通知

端口

不做任何艾特的文本消息通知

端口

2、报错预警-AS2端口自动巡检

端口

EDI对外的连接端口有时也会因为各种各样的情况出现问题,比如修改http为https后,出现设置的SSL证书问题,这样就会导致EDI环境挂掉,因此可以利用钉钉通知功能来进行自动巡检,当环境出现问题后,用户就可以及时知道并进行处理。 如上图所示,我们在知行之桥EDI系统上创建一个Script端口和AS2端口,利用Script端口来实现当AS2端口的出现问题时,及时进行钉钉通知,方便运维人员及时进行检查并纠正。 Script端口具体代码如下:

1

 

2

 

3

 

4

 

5

 

 

set attr="check.sslcert" value="*"/><>

set attr="check.url" value="AS2URL"/><>

call op="httpGet" in="check"><>

  catch code="*"><>

    set attr="notify.url" value="【钉钉自定义机器人的url】"/><>

    setm item="notify"><>

      url = 钉【钉自定义机器人的url

      postdata = {"at": {"atMobiles":\["【被@人的手机号】"\],"isAtAll":是【否@所有人,是为true,否为false},"text": {"content":"业务警报:AS2端口无法访问,请马上检查![_message | def]"},"msgtype":"text"}

      contenttype = application/json

   

    call op="httpPost" in="notify" /><>

  catch>

 

set attr="o.FileName" value="[_|now]" /><>

push item="o"/><>

其中,postdata里的内容就是调用钉钉机器人的json文件内容。 报警示例:

端口

这样,通过REST端口调用钉钉通知的功能就可以实现,用户通过知行之桥EDI系统进行数据收发时,可以及时在钉钉群组中收到通知消息,确保信息能够得到及时处理,提高响应效率。

审核编辑:符乾江

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分