钉钉开发指南
说明:本文是对最近一段时间,做过的一些钉钉功能、应用开发的回顾,仅供大家参考。
钉钉功能开发
注意事项:
- 接口调用频率限制:详细说明
基础频率限制
发生消息频率限制
钉钉免登功能开发
- 官方教程:使用钉钉免登进入企业系统
以企业开发一个H5内部应用举例:
-
登录开发者后台,在创建的应用中添加“成员信息读取权限”、配置“应用首页地址”。
-
接入JSAPI获取免登授权码,使用免登授权码调用服务端接口获取用户详情。
-
服务端获取到免登授权码,使用AppKey和AppSecret获取企业内部应用access_token 。
-
使用企业内部应用access_token和免登授权码调用获取用户个人信息接口,获取响应结果里面的userId字段。
-
使用企业内部应用access_token、userId和language调用获取用户详情接口,获取用户详情。
-
获得用户详情(userId、姓名、昵称、手机号等)后,可种cookie/session标记登录,同时保存个人信息。
-
若企业内部已有权限中台系统、或者需要从企业内部花名册中获取更多个人信息,可继续使用手机号或其他字段进行关联提取,并保存个人信息。
开发文档:
-
H5应用接入JSAPI,文档链接:https://open.dingtalk.com/document/orgapp-client/logon-free-process
-
获取企业内部应用access_token,文档链接:https://open.dingtalk.com/document/orgapp-server/obtain-orgapp-token
-
获取用户userId,文档链接:https://open.dingtalk.com/document/orgapp-server/obtain-the-userid-of-a-user-by-using-the-log-free
-
获取用户详情,文档链接:https://open.dingtalk.com/document/orgapp-server/query-user-details
钉钉消息功能开发
- 官方教程:向个人/群发送消息
如何开发
以企业内部应用发送群消息例举:
-
登录开发者后台,在创建的应用中添加“chat相关接口的管理权限”。
-
使用AppKey和AppSecret参数,调用获取企业内部应用access_token接口,获取企业内部应用access_token。
-
调用上传媒体文件接口上传链接消息图片到钉钉开放平台,返回mediaId。
-
使用access_token调用创建群会话接口,获取响应结果里面chatId字段。
-
使用access_token和chatId调用发送群消息接口,发送链接消息并获取messageId。
-
链接消息需要用到第三步上传媒体文件的mediaI。
-
消息链接的打开方式分为: 消息链接在PC端侧边栏打开、消息链接在PC端工作台打开、小程序链接具体参数参考消息链接说明。
-
使用access_token和messageId调用查询已读人员列表接口,获取已读人员列表。
开发流程:
开发文档:
- 获取企业内部应用access_token,文档链接:https://open.dingtalk.com/document/orgapp-server/obtain-orgapp-token
- 消息类型与数据格式,demo使用的是链接消息 文档链接:https://open.dingtalk.com/document/orgapp-server/message-types-and-data-format
- 消息链接说明,文档链接:https://open.dingtalk.com/document/orgapp-server/message-link-description
- 上传媒体文件,文档链接:https://open.dingtalk.com/document/orgapp-server/upload-media-files
- 群会话接口相关权限,文档链接:https://open.dingtalk.com/document/orgapp-server/group-message-apply-for-permissions
- 创建群会话,文档链接:https://open.dingtalk.com/document/orgapp-server/create-group-session
- 发送群消息,文档链接:https://open.dingtalk.com/document/orgapp-server/send-group-messages
- 获取已读人员列表,文档链接:https://open.dingtalk.com/document/orgapp-server/queries-the-list-of-people-who-have-read-a-group
其他应用场景开发
钉钉小程序、H5应用、机器人开发
官方讲得比较详细,开发的时候,注意接口调用频率就好。
评论