组织云钉钉API
  1. 钉钉回调相关
组织云钉钉API
  • 服务端API
    • 如何调用服务端API
    • 服务端SDK下载
    • 获取凭证(access_token)
      • 获取企业内部应用的access_token
      • 获取jsapi_ticket
    • 身份验证(免登)
      • 企业内部应用免登
      • 免登常见问题
    • 通讯录管理
      • 通讯录事件
      • 用户管理
        • 创建用户
        • 更新用户信息
        • 删除用户
        • 根据userid获取用户详情
        • 获取部门用户基础信息
        • 获取部门用户userid列表
        • 获取部门用户详情
        • 获取员工人数
        • 获取未登录钉钉的员工列表
        • 根据手机号获取userid
        • 根据unionid获取用户userid
        • 获取管理员列表
        • 获取管理员通讯录权限范围
        • 获取管理员的应用管理权限
      • 部门管理
        • 获取部门详情
        • 获取部门列表
        • 获取子部门ID列表
        • 获取指定部门的所有父部门列表
        • 获取指定用户的所有父部门列表
      • 角色管理
        • 删除角色
        • 创建角色
        • 创建角色组
        • 更新角色
        • 批量增加员工角色
        • 批量删除员工角色
        • 设定角色成员管理范围
        • 获取角色组列表
        • 获取角色列表
        • 获取角色详情
        • 获取指定角色的员工列表
    • 消息通知
      • 消息通知概述
      • 消息类型与数据格式
      • 消息链接说明
      • 工作通知
        • 发送工作通知
        • 更新工作通知状态栏
        • 获取工作通知消息的发送进度
        • 获取工作通知消息的发送结果
        • 撤回工作通知消息
      • 普通消息
        • 发送普通消息
  • 钉钉回调相关
    • 钉钉Stream回调
    • 事件订阅列表
  1. 钉钉回调相关

钉钉Stream回调

配置Stream推送#

更新于 2023-10-18
Stream 模式是钉钉开放平台推荐使用的事件订阅方式,使用 Stream 模式开发者无需提供公网回调地址和注册加解密秘钥,使用 SDK 接入服务端Stream模式,开发者应用程序即可接收到事件内容推送。

使用场景#

在你的业务对数据的实时性要求较高时。例如:在新员工入职或者离职,部门变更,需要应用第一时间变更用户数据,此时就可以订阅通讯录事件
你的应用需要及时响应用户的操作时。例如:某用户加入某群聊时,应用可以订阅群变更事件,在用户进入群聊的时候,向用户发送欢迎等信息。
以上只是几个非常简单的使用场景,开发者可以根据不同的事件,进行不同的处理。

准备工作#

1.
拥有所在钉钉组织的开发者权限。
2.
拥有所在钉钉组织的企业内部应用。
3.
拥有访问公网的运行环境。

订阅流程#

1. 选择Stream模式推送。
image.png
2.服务端接入
2.1 JAVA语言#
添加依赖项到工程的pom.xml文件或下载对应的jar包,最新的 SDK 版本可以在这里查看和下载。
<dependency>
  <groupId>com.dingtalk.open</groupId>
  <artifactId>app-stream-client</artifactId>
  <version>{sdk-version}</version>
</dependency>
代码示例#
2.2 Golang语言#
安装Stream SDK
代码示例#
参数说明:
参数名说明
clientId企业内部应用 AppKey/第三方企业应用 SuiteKey。
clientSecret企业内部应用AppSecret/第三方企业应用 SuiteSecret。

3. 验证连接通道#

后端服务启动验证通道连通性
image.png
点击保存,设置需要监听的事件。
image.png

回调事件说明#

点击查看详细说明

数据说明#

Stream模式推送数据分为两个部分,一个部分为事件的基础信息,另一个部分为事件业务数据信息。以通讯录用户更改事件为例:
说明: Stream模式推送格式是以小驼峰的命名方式对数据进行推送的。
  "eventBornTime": 1684467623381,
  "eventCorpId": "ding9f5*******41",
  "eventId": "e7ee3e9beeb54704bdaf34db6edfc79d",
  "eventType": "user_modify_org",
  "eventUnifiedAppId": "unifiedAppId1"
  "data": { //事件业务信息部分
    "timeStamp": "168****362",
    "diffInfo": [
      {
        "prev": {
          "extFields": "{}",
          "name": "小钉",
          "telephone": "1135",
          "remark": "",
          "workPlace": "",
          "jobNumber": "01053590",
          "email": ""
        },
        "curr": {
          "extFields": "{}",
          "name": "小钉",
          "telephone": "1135",
          "remark": "",
          "workPlace": "",
          "jobNumber": "",
          "email": ""
        },
        "userid": "014728xxx40768602"
      }
    ],
    "optStaffId": "45252xxxx39877041",
    "userId": [
      "014728xxx8602"
    ]
  }
}
修改于 2023-12-26 09:17:38
上一页
发送普通消息
下一页
事件订阅列表
Built with