通過第三方服務(wù)觸發(fā)函數(shù)
事件總線EventBridge支持集成釘釘連接器,您可以根據(jù)業(yè)務(wù)接口入?yún)⒋罱ǜ黝悊T工管理系統(tǒng)。本文以釘釘新增成員觸發(fā)器函數(shù)執(zhí)行為例介紹如何通過第三方服務(wù)觸發(fā)HTTP API業(yè)務(wù)。
流程介紹
本文使用的方案涉及到釘釘、釘釘連接器、事件總線EventBridge、函數(shù)計(jì)算等產(chǎn)品,流程如下圖所示:
前提條件
您已完成以下操作:
注冊(cè)一個(gè)釘釘賬號(hào),并創(chuàng)建一個(gè)釘釘團(tuán)隊(duì)成為管理員。詳細(xì)操作,請(qǐng)參見如何創(chuàng)建組織。
步驟一:創(chuàng)建自定義事件總線
登錄事件總線EventBridge控制臺(tái),在頂部菜單欄,選擇地域。
在左側(cè)導(dǎo)航欄,單擊事件總線,在自定義事件總線區(qū)域,單擊快速創(chuàng)建。
在創(chuàng)建自定義事件總線面板,完成以下操作。
在總線頁簽,設(shè)置自定義事件總線名稱和描述,然后單擊下一步。
在事件源頁簽,設(shè)置事件源名稱和描述,配置以下參數(shù),然后單擊下一步。
參數(shù)
值
事件提供方
HTTP/HTTPS觸發(fā)
請(qǐng)求類型
HTTPS
請(qǐng)求方法
POST
安全配置
無需配置
在規(guī)則頁簽,單擊跳過,然后在直接創(chuàng)建自定義事件總線對(duì)話框單擊確認(rèn),暫不在新創(chuàng)建的自定義事件總線上創(chuàng)建事件規(guī)則和事件目標(biāo)。
創(chuàng)建完成后,您可以在事件源列表找到剛才創(chuàng)建的自定義事件源,然后單擊詳情查看配置信息。其中公網(wǎng)請(qǐng)求 URL可以作為釘釘連接器的接入Webhook地址。
步驟二:創(chuàng)建釘釘連接流
登錄釘釘開放平臺(tái),在頂部菜單欄選擇 。
在左側(cè)導(dǎo)航欄選擇 。
在我的連接流頁面,從新建列表中,選擇業(yè)務(wù)流。
在創(chuàng)建流對(duì)話框,設(shè)置業(yè)務(wù)流的名稱和描述,設(shè)置觸發(fā)器為 。
在連接流頁簽,單擊圖標(biāo),然后單擊網(wǎng)絡(luò)請(qǐng)求。
在網(wǎng)絡(luò)請(qǐng)求區(qū)域右側(cè),單擊圖標(biāo),然后在網(wǎng)絡(luò)請(qǐng)求面板設(shè)置請(qǐng)求參數(shù),單擊保存。
參數(shù)
說明
示例
請(qǐng)求方式
與步驟一:創(chuàng)建自定義事件總線中配置的請(qǐng)求方法一致。
POST
請(qǐng)求地址
配置步驟一:創(chuàng)建自定義事件總線中獲取的URL地址。
https://115964845466****.eventbridge.cn-hangzhou.aliyuncs.com/webhook/putEvents?token=8a5c4e6****
Body
消息體包含的字段。
root
步驟三:使用函數(shù)計(jì)算調(diào)用HTTP API
- 登錄函數(shù)計(jì)算控制臺(tái),在左側(cè)導(dǎo)航欄,單擊服務(wù)及函數(shù)。
- 在頂部菜單欄,選擇地域,然后在服務(wù)列表頁面,單擊創(chuàng)建服務(wù)。
在創(chuàng)建服務(wù)面板,填寫服務(wù)名稱和描述,并按需設(shè)置以下配置項(xiàng),然后單擊確定。
配置項(xiàng)
說明
日志功能
是否啟用阿里云日志服務(wù)。取值說明如下:
啟用:函數(shù)的執(zhí)行日志被持久化保存到日志服務(wù),方便您代碼調(diào)試、故障分析和數(shù)據(jù)分析等。
禁用:函數(shù)的執(zhí)行日志將無法通過日志服務(wù)存儲(chǔ)和查詢。
高級(jí)配置
鏈路追蹤功能
是否啟用阿里云鏈路追蹤功能。取值說明如下:
啟用:您可以使用Jaeger上傳鏈路信息,來跟蹤函數(shù)的執(zhí)行,快速分析和診斷Serverless架構(gòu)下的性能瓶頸。更多信息,請(qǐng)參見鏈路追蹤簡(jiǎn)介。
禁用:不啟用鏈路追蹤功能。
服務(wù)角色
配置服務(wù)中函數(shù)所使用的角色,使函數(shù)可以獲得角色所擁有的權(quán)限。更多信息,請(qǐng)參見授予函數(shù)計(jì)算訪問其他云服務(wù)的權(quán)限。
允許訪問 VPC
是否允許函數(shù)訪問VPC內(nèi)資源。更多信息,請(qǐng)參見配置網(wǎng)絡(luò)。
專有網(wǎng)絡(luò)
允許訪問 VPC選擇是時(shí)必填。創(chuàng)建新的VPC或在下拉列表中選擇要訪問的VPC ID。
交換機(jī)
允許訪問 VPC選擇是時(shí)必填。創(chuàng)建新的交換機(jī)或在下拉列表中選擇交換機(jī)ID。
安全組
允許訪問 VPC選擇是時(shí)必填。創(chuàng)建新的安全組或在下拉列表中選擇安全組。
允許函數(shù)訪問公網(wǎng)
是否允許函數(shù)訪問公網(wǎng)。關(guān)閉后,當(dāng)前服務(wù)中的函數(shù)將無法通過函數(shù)計(jì)算的默認(rèn)網(wǎng)卡訪問公網(wǎng)。
重要使用固定公網(wǎng)IP地址功能時(shí),您必須關(guān)閉允許函數(shù)訪問公網(wǎng),否則配置的固定公網(wǎng)IP地址不生效。更多信息,請(qǐng)參見配置固定公網(wǎng)IP地址。
在服務(wù)列表頁面,單擊目標(biāo)服務(wù)名稱,然后單擊創(chuàng)建函數(shù)。
在創(chuàng)建函數(shù)頁面,按需選擇使用內(nèi)置運(yùn)行時(shí)創(chuàng)建函數(shù)方式,配置以下配置項(xiàng),然后單擊創(chuàng)建。
在基本設(shè)置區(qū)域,設(shè)置函數(shù)名稱,選擇請(qǐng)求處理程序類型為處理事件請(qǐng)求。
在函數(shù)代碼區(qū)域,選擇運(yùn)行環(huán)境為Node.js,選擇代碼上傳方式為使用示例代碼,并單擊API網(wǎng)關(guān)觸發(fā)函數(shù)。
創(chuàng)建完成后,可在函數(shù)詳情頁面查看詳情。
步驟四:創(chuàng)建事件規(guī)則
登錄事件總線EventBridge控制臺(tái),找到步驟一:創(chuàng)建自定義事件總線中創(chuàng)建的自定義事件總線。
單擊自定義事件總線名稱,然后在左側(cè)菜單欄,單擊事件規(guī)則。
在事件規(guī)則頁面,單擊創(chuàng)建規(guī)則,然后在創(chuàng)建規(guī)則配置向?qū)В渲靡韵聟?shù)。
在配置基本信息頁簽,設(shè)置事件規(guī)則的名稱和描述,然后單擊下一步。
在配置事件模式頁簽,設(shè)置事件源類型為自定義事件源,設(shè)置事件源為步驟一:創(chuàng)建自定義事件總線中創(chuàng)建的自定義事件源,然后單擊下一步。
在配置事件目標(biāo)頁簽,設(shè)置以下參數(shù),然后單擊創(chuàng)建。
參數(shù)
說明
示例
服務(wù)類型
選擇目標(biāo)服務(wù)類型。
函數(shù)計(jì)算
服務(wù)
選擇步驟三:使用函數(shù)計(jì)算調(diào)用HTTP API中創(chuàng)建的服務(wù)。
testserver
函數(shù)
配置步驟三:使用函數(shù)計(jì)算調(diào)用HTTP API中創(chuàng)建的函數(shù)。
testfunction
事件
選擇完整事件。
完整事件
執(zhí)行方式
選擇同步。
同步
步驟五:新增員工事件自動(dòng)觸發(fā)HTTP API
邀請(qǐng)成員加入您的釘釘團(tuán)隊(duì)。詳細(xì)操作,請(qǐng)參見如何添加組織成員。
在步驟一:創(chuàng)建自定義事件總線中創(chuàng)建的自定義事件總線詳情頁面,單擊事件追蹤,設(shè)置查詢時(shí)間范圍,單擊查詢。
在查詢到的事件右側(cè)操作列,單擊事件軌跡,查看新增員工事件已經(jīng)成功被投遞。
結(jié)果驗(yàn)證
登錄函數(shù)計(jì)算控制臺(tái),查看步驟三:使用函數(shù)計(jì)算調(diào)用HTTP API創(chuàng)建的函數(shù),在函數(shù)日志頁簽的調(diào)用請(qǐng)求列表,您可以看到函數(shù)執(zhí)行成功一次。