钉钉小程序生态—企业机器人加互动卡片,改善用户体验的开始!
一、前言
大家好!我是sum墨,一個一線的底層碼農,平時喜歡研究和思考一些技術相關的問題并整理成文,限于本人水平,如果文章和代碼有表述不當之處,還請不吝賜教。
首先上一些圖,讓大家知道我這篇文章要講的是啥。
1. 什么是企業機器人?
企業機器人,具備完整的接收消息和發送消息的能力。它與Webhoook 機器人不同,Webhoook 機器人只能出現在群里面,而企業機器人不僅可以在群里出現,還可以以單聊的形式出現,企業機器人很多時候都是以"xx小蜜"或"xx助手"命名。
-
企業機器人屬于功能版塊
-
點進去是機器人推送給你的信息
2. 什么是互動卡片?
釘釘互動卡片是一種新型的消息類型,它具有動態性、可交互性、多端統一等特點。它能夠極大地豐富消息類型,并且促進用戶的溝通互動。互動卡片具有以下特點。
-
卡片內容可動態變更與普通的文本消息或Markdown消息相比,互動卡片能夠在卡片內多端實時進行內容的變更,減少消息打擾,提升效率。
-
互動卡片能夠讓用戶直接在卡片內進行輕量級交互,促進溝通互動,并且無需進入二級頁面,能夠縮短用戶操作路徑,提升效率。
3. 服務端、企業機器人、互動卡片、用戶的關系圖
從這個關系圖上看起來邏輯不復雜,那么接下來我來詳細說一下如何實現這些功能。
二、創建企業機器人
1. 創建一個應用(企業內部應用、第三方企業應用都可以)
進入釘釘開放平臺 —> 應用開發 —> 創建應用
2. 添加機器人能力
添加完
機器人能力之后左側菜單欄確實出現了一個機器人的菜單,但是點進去卻是消息模板???
說真的,我看到這個一臉懵逼,真想問候一下釘釘開放平臺的產品,你系統升級改版很正常,但是你東西都改沒了,請問機器人能力在哪?
后來我實在是找不到了,就提了個工單,終于搞定了這個。
首先,回到添加應用能力,點擊添加“酷應用”
其次,點擊“創建酷應用”,選擇第一個“擴展到群會話”
再次,添加完必填信息,點擊保存
最后,回到機器人菜單,這時就出現了機器人的信息
WTMD!!!
三、搭建互動卡片
1. 進入卡片平臺—> 新建模板
2. 搭建卡片模板
這里我直接從預設模板中選擇了審批模板,保存后點擊發布即可。
3. 獲取卡片的模板ID
回到模板列表,這里可以看到剛才創建出來的卡片,下面有卡片的模板ID
四、企業機器人推送互動卡片
1. 根據應用信息、企業corpID、SuiteTicket獲取accessToken
官方接口文檔
這個我就不多說了,如果不知道SuiteTicket是啥,可以看我這篇文章釘釘小程序三方企業應用事件與回調
2. 服務端調用接口推送互動卡片
官方接口文檔
這里我直接使用釘釘提供的調試平臺進行接口調用,就不自己寫代碼了。這個接口的參數都是比較好懂的,那個cardData參數就是卡片平臺里面的變量
格式如下:{ "title": "測試提交的審批", "type": "團建", "amount": "200000", "reason": "一起玩" }
調用該接口之后,機器人就會給指定的用戶發送一個審批的卡片了
3. 卡片事件回調服務端
這個也很簡單,接口提供了一個參數:callbackUrl,這個參數可控制卡片回調的URL,不填則無需回調,該鏈接必須是公網可以訪問的。
這個參數理解是好理解,但是釘釘文檔寫的也是一塌糊涂,雖然我知道你會回調,但是回調的格式也不告訴我們,我找了半天才找到。
有兩個點大家注意一下:
第一,接口必須是post請求才行;
第二,接口的參數格式如下:{ "corpId": "xxxx", "outTrackId": "xxx", "userId": "xxxx", "value": "xxx" }
4. 服務端調用接口更新互動卡片狀態
從動圖中我們可以看到,當點擊了接受之后,下面的按鈕就變成了已接受,且不可以再點擊。那么這個效果應該怎么做呢?這就需要用到更新機器人發送互動卡片這個接口了。
不過在調用接口之前,我們需要對卡片進行一些調整。
(1)新增已同意、已拒絕按鈕,將其設置為不可用
(2)新增status變量
(3)同意和拒絕按鈕的展示條件為“status等于handling”
(4)已同意按鈕的展示條件為“status等于agree”
(5)已拒絕按鈕的展示條件為“status等于reject”
(6)發布該卡片模板,調用接口
a. 調用發送接口,參數如下
{
"title": "測試提交的審批",
"type": "團建",
"amount": "200000",
"reason": "一起玩",
"status": "handling"
}
可以看到兩個按鈕都展示了。
b. 調用更新接口,狀態為agree,參數如下
{
"title": "測試提交的審批",
"type": "團建",
"amount": "200000",
"reason": "一起玩",
"status": "agree"
}
可以看到按鈕變成了已同意。
c. 調用更新接口,狀態為reject,參數如下
{
"title": "測試提交的審批",
"type": "團建",
"amount": "200000",
"reason": "一起玩",
"status": "reject"
}
可以看到按鈕變成了已拒絕。
五、總結一下
企業機器人加入互動卡片可以讓用戶體驗更好,主要是因為:
- 更美觀:卡片比純文本看起來更吸引人。
- 更清晰:信息布局有條理,用戶容易理解。
- 操作簡單:卡片上的按鈕和鏈接讓用戶知道下一步該做什么。
- 互動有趣:用戶可以通過填表、點擊等方式與機器人互動,更加有趣。
- 個性化服務:根據用戶的需求,推送不同的卡片,滿足個人喜好。
- 更方便:有時候用戶可以直接在卡片上完成一些操作,比如預訂或支付。
總的來說,互動卡片讓用戶與機器人的交流更直觀、更便捷,也更有趣。如果你的產品正在使用釘釘小程序,那么可以嘗試使用這個組合!
總結
以上是生活随笔為你收集整理的钉钉小程序生态—企业机器人加互动卡片,改善用户体验的开始!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OfficeWeb365任意文件读取
- 下一篇: Elasticsearch对接MinIO