本文以具体的示例展示钉钉开放平台基于阿里云函数计算和事件总线EventBridge打造的强安全、高可用、轻量化的应用间数据互联互通场景,帮助钉钉官方应用、三方应用、企业自有系统实现事件驱动的数据流转。

什么是钉钉连接器

钉钉应用市场中有大量独立软件开发商ISV开发的小程序或H5应用,为了能更好地与其他应用或者企业内部系统数据互通,需要一套事件驱动的标准数据模型,解决客户应用互联、业务自动化问题,因此钉钉连接器应运而生。

dingtalk_connector

客户案例

目前使用钉钉连接器的钉钉ISV如下所示,更多的ISV正在对接中,欢迎试用。

xbongbongcrm

以销帮帮CRM(国内领先的企业移动SaaS服务商)为例,销帮帮CRM的终端用户需要将新录入的客户变更、产品变更、合同变更等数据同步到另一款SaaS应用BOSS管账(智能财务软件),这个场景下,销帮帮CRM即是触发应用,BOSS管账即是执行应用,客户变更、产品变更、合同变更等行为即是触发事件。

示例图如下: 销帮帮

连接器由钉钉ISV触发应用(数据提供方)创建,这里即是销帮帮CRM。销帮帮CRM会将自己的数据发送到连接器,即EventBridge,企业用户可以在这个连接器下创建连接(即EventBridge的Rule),将销帮帮CRM的数据同步出去。具体同步到哪儿?可以在“连接”里配置执行动作(即EventBridge的Target),这里的执行动作即为BOSS管账的事件接收服务。钉钉ISV可以提前在平台上注册自己的执行动作,也可以将执行动作托管在函数计算,以事件触发或者HTTP网络协议形式对接到EventBridge。

以销帮帮CRM向BOSS管账发送数据为例。销帮帮发送的客户和订单数据与BOSS接收的客户和订单数据采用同一套客户数据模型和订单合同数据模型。销帮帮CRM调用连接器事件发送接口,连接器会同步地将客户和订单数据转换成标准的CloudEvents协议数据,这样BOSS在实现数据对接时,仅需完成简单的格式互通即可。

Eventbridge的原理说明如下所示: eventbridge

配置函数计算为执行动作

目前钉钉官方支持销帮帮CRM、BOSS管账、斗栱云、易快报、有成财务、金智CRM、蚂蚁分工等热门模板,触发事件包括客户变更、产品变更、合同变更、EKB-触发等。三方服务商通过接入平台按照主数据标准接入即可实现钉钉上业财类应用打通,接入平台提供数据转换的工具,降低服务商注册接口并使用主数据的成本。

函数计算可以作为自建连接器、三方连接器和网络应用的执行动作后台服务,可以快速帮助钉钉ISV服务商搭建联通热门应用的数据转换链路,甚至不需要维护任何基础资源,仅需对接数据格式和更高阶的自定义业务逻辑即可。

操作步骤如下:

  1. 登录钉钉开放平台
  2. 创建应用
    在开始开发企业内部应用前,首先需要创建一个内部应用并完成基础配置。
  3. 创建自建连接器
    连接器供企业自己使用,可选配置对应的数据模型和执行动作,如销帮帮CRM客户变更等事件。
    操作示例如下所示: custom_connector_fc custom_connector
  4. 创建自定义应用连接
    应用连接由触发应用与执行应用组成。触发应用可以是已创建的自建应用、三方应用;执行应用可以是自建应用、三方应用、企业内部应用或机器人。企业可通过不同的触发应用和执行应用组合,实现不同场景的应用互通。

配置函数计算作为连接器目标地址

函数计算目前已服务于销帮帮CRM、BOSS管账、斗栱云、易快报、有成财务、金智CRM、蚂蚁分工等热门模板,也可作为自定义连接器的事件触发目标地址,托管钉钉ISV服务商的后台代码,从而实现全流程自动化、标准化。

以下以EventBridge搭配函数计算实现自定义连接器作为示例 custom_connector

调试钉钉连接器

ISV服务商实现数据发送转换为EventBridge触发事件,以CloudEvents协议实现数据流转,主动触发目标函数执行。

更多信息,请参见连接器事件发送

API Explorer调试示例如下:
  • 示例代码dingtalk_api_explorer
  • 调试结果dingtalk_api_explorer_result