摘要:目前釘釘機器人支持方式,仍屬于內側階段。方式是指被動接受通知,釘釘群中添加的群機器人默認都是該模式。截止撰寫文章時,釘釘的機器人文檔不可訪問,所以會在下面介紹下。本文同步發表于作者博客從零開始打造專屬釘釘機器人
官方定義如下:
群機器人是釘釘群的高級擴展功能。群機器人可以將第三方服務的信息聚合到群聊中,實現自動化的信息同步。目前,大部分機器人在添加后,還需要進行Webhook配置,才可正常使用(配置說明詳見操作流程中的幫助鏈接)。例如:
通過聚合GitHub,GitLab等源碼管理服務,實現源碼更新同步。
通過聚合Trello,JIRA等項目協調服務,實現項目信息同步。
另外,群機器人支持Webhook協議的自定義接入,支持更多可能性,例如:你可將運維 報警通過自定義機器人聚合到釘釘群實現提醒功能。
實際上,通過機器人我們可以對接各類服務,比如源碼提交通知,服務器告警通知,甚至是可以主動查詢天氣、加班點餐等服務。
目前釘釘機器人支持incoming方式,outgoing仍屬于內側階段。官方文檔可以點此查看。
incoming方式incoming是指被動接受通知,釘釘群中添加的群機器人默認都是該模式。
添加機器人我們添加的時候可以看到已經自帶一些常見的機器人,比較推薦的是GitHub、GitLab、JIRA、Travis、Trello,當然我們這次需要選擇最后的"自定義"機器人。
在機器人信息欄填寫"機器人姓名"即可,需要的話也可以設置一個頭像。圖中"是否開啟Outgoing機制"在沒有開通的情況下是不可見。
點擊完成就會生成hook地址,如下圖:
我們會用到"Hook地址",后面我們發送消息都需要請求到該地址。
如何發送消息只要想Webhook地址發起POST請求,帶上特定格式消息即可。
具體的接口文檔可以看官方,這里不做擴展。
開源工具在一些簡單的通知場景,我們可以使用npm上面的輪子來快速實現。
dingtalk-robot
dingtalk-robot-sender
outgoing方式outgoing機器人的配置和前面基本一樣,只需要額外配置POST 地址以及Token。
需要注意的是Token保存后無法再次修改,POST 地址就是釘釘機器人接受消息后調用的地址。
開通方式釘釘上加入"釘釘機器人交流群",群號:11733391
在 https://open-dev.dingtalk.com 首頁上找到corpId
記得添加"大柚",并把coprId私發給他。
目前每周四提交開通,預計周五會生效。如何收取消息
當群里有人@機器人時,釘釘會通過POST方式回調我們前面設置的地址,該地址實質是接口,可以在Body中獲取到消息內容。
截止撰寫文章時,釘釘的outgoing機器人文檔不可訪問,所以會在下面介紹下。
釘釘請求格式HTTP Header 格式如下:
"Content-Type": "application/json; charset=utf-8" "token": "6a71a455ffcfba92a66"
HTTP Body 文本消息內容:
{ // 會話id "conversationId": "8Yu7H8H8890kkl7h==", "atUsers": [ { "dingtalkId": "$:DFDS51:$R7E8dffdufdfjsdf2/oUCO/" } ], "chatbotUserId": "$:df3234:$sdfsdfsdfsdfd234234/oUCO/", "msgId": "msg4sdf35jh8jc9b51ss6/noYdzw==", "senderNick": "Neo", "isAdmin": false, "sessionWebhookExpiredTime": 1561711409165, // 消息發送的時間 "createAt": 1561710209132, // 群聊消息類型還是單聊 "conversationType": "2", "senderId": "$:ASDD_v1:$df8sdfj&JS*J#FF==", // 當類型是群聊時,這個參數有效 "conversationTitle": "avalon", "isInAtList": true, // sessionWebhook是臨時的發送消息接口 "sessionWebhook": "https://oapi.dingtalk.com/robot/sendBySession?session=qwe", // 消息內容 "text": { "content": "我就是我, 是不一樣的煙火" }, // 消息類型 "msgtype": "text", }
HTTP 響應格式
支持返回文本、圖片和markdown,actionCard,feedCard消息類型。
下面僅列出markdown格式的消息,詳細的文件可以參考網友提供的PDF,提取碼: 4qht 。
{ "msgtype": "markdown", // 消息類型 "markdown": { "title":"杭州天氣", // 消息主題 "text": "#### 杭州天氣 @ptt6gbq @17681800905 " + "> 9度,西北風1級,空氣良89,相對溫度73% " + "> ![screenshot](http://image.jpg) " + "> ###### 10點20分發布 [天氣](http://www.thinkpage.cn/) " // 消息體 }, "at": { // @的人員 "atMobiles": [ "17681800905" ], "atDingtalkIds": [ "ptt6gbq" ], "isAtAll": false } }
如果我們回復的消息需要@某人,就會配置at字段,里面atDingtalkIds需要的dingtaklId可以是我們從請求中拿到的senderId,即$:ASDD_v1:$k8DFJ837349On my way!==的形式也可以傳入正常@。
另外如果出于某些原因,無法響應請求時返回消息,我們還可以通過sessionWebhook來主動發送消息。
本文同步發表于作者博客: 從零開始打造專屬釘釘機器人
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/106879.html
摘要:釘釘釘釘是阿里巴巴集團專為中國企業打造的免費溝通和協同的多端平臺,提供版,版和手機版,支持手機和電腦間文件互傳。 1:@teamhttps://www.atteam.cn/項目協作管理,越復雜越有序,足夠簡單足夠有效,@Team針對企業團隊協作所遇到的困境而研發的新一代基于云服務的企業級協同工作平臺,通過為每個企業或團隊提供專屬的私密網絡空間和全新的協作方式,幫助企業實現高效便捷的跨部...
摘要:自阮大神的文章發布以來,有了一些改動,添加有很多有用的功能,特別是這個功能,對打造命令行工具集合非常有用,所以寫一個新版本的教程還是有必要的。 前言 使用命令行程序對程序員來說很常見,就算是前端工程師或者開發gui的,也需要使用命令行來編譯程序或者打包程序 熟練使用命令行工具能極大的提高開發效率,linux自帶的命令行工具都非常的有用,但是這些工具都是按照通用需求開發出來的,如果有一些...
摘要:摘要在剛剛結束的上海云棲大會飛天技術匯分論壇上,阿里云視頻云產品架構師羅小飛進行了阿里云面向金融政企的最佳實踐主題分享,為上海的嘉賓介紹的解決方案與技術服務體系。隨后,年阿里云宣布全面降價,打破了行業原有的價格不透明一客一價的模式。 摘要:?在剛剛結束的上海云棲大會飛天技術匯分論壇上,阿里云視頻云產品架構師羅小飛進行了《阿里云CDN——面向金融政企的CDN最佳實踐》主題分享,為上海的嘉...
摘要:摘要在剛剛結束的上海云棲大會飛天技術匯分論壇上,阿里云視頻云產品架構師羅小飛進行了阿里云面向金融政企的最佳實踐主題分享,為上海的嘉賓介紹的解決方案與技術服務體系。隨后,年阿里云宣布全面降價,打破了行業原有的價格不透明一客一價的模式。 摘要:?在剛剛結束的上海云棲大會飛天技術匯分論壇上,阿里云視頻云產品架構師羅小飛進行了《阿里云CDN——面向金融政企的CDN最佳實踐》主題分享,為上海的嘉...
摘要:為了滿足在更多復雜場景科研攻堅時,對于超高性能算力高速網絡傳輸海量數據存儲的更高需求,再次發力,于近日推出了為科研量身定制的新一代超算產品,并將正式更名為云極高性能計算以下簡稱。科研是科技創新的基礎,而高性能計算則是科研的基石。隨著數字化走向縱深,科研教育進入信息化時代。在科研項目的推進過程中,往往會面對復雜的數據密集型計算任務,例如仿真、數據建模、渲染等大量運算場景。此時如果使用單一的通用...
閱讀 770·2023-04-25 20:47
閱讀 2534·2019-08-30 15:53
閱讀 947·2019-08-26 14:05
閱讀 893·2019-08-26 11:59
閱讀 1678·2019-08-26 11:43
閱讀 1679·2019-08-26 10:57
閱讀 1355·2019-08-23 18:23
閱讀 2637·2019-08-23 12:57