浙政钉DING消息对接文档
专有钉钉平台:https://openplatform-portal.dg-work.cn/backendManage/#/docs?apiType=serverapi&docKey=
1.开发浙政钉应用步骤
开发单位申请专有钉钉账户,前后端工程运行在自建服务器。 登录专有钉钉管理后台,创建一条应用app, 将登录连接配置到改配置列表中。 App Key App Secret

讯享网
1.1 这一点很重要 需先订阅开通ding消息服务的访问权限,不会会报错
OPF-B001-05-16-0002----------------》需先订阅开通服务的访问权限

1.2 将测试的人员加入浙政钉

1.3 查看用户详情有uid就是浙政钉accoundId

2.DING API开放接口V2
接口说明
DING API开放接口V2版本。
接口限制规则:
- 同一个应用相同消息的内容同一个用户一天只能接收一次。
- 同一个应用给同一个用户发送消息,ISV应用开发方式一天不得超过100次。
通知类型为电话语音钉的限制规则:
电话DING使用的阿里云的语音服务,ISV发DING也收到阿里云语音服务的流控管控,阿里云语音服务的流控规则&效果如下:
- 流控规则:针对同一个被叫号码。流控规则:1次/分钟、5次/小时、20次/天(24小时)。
- 流控效果:命中流控规则时,再对该被叫号码发送电话DING(无论通过DING接口还是通过客户端发送),实际不播出电话,只能收到应用内DING。
调试
在API Explorer中调试该接口。
基本信息
中文名:DING API开放接口V2
接口名:/ding/isv/send.json
所在目录:DING

调用方式:POST(HTTPS)
发布版本:V2.7.0
请求参数
| 名称 | 子对象 | 类型 | 是否必填 | 示例值 | 描述 | |
|---|---|---|---|---|---|---|
| tenantId | String | 是 | 租户ID | |||
| creator | Obj | 是 | “creator”:{“accountId”:,dingId"accountOrgId":“”, “accountOrgName”:“”} | 发送者 | ||
| accountId | Long | 是 | 账号ID | |||
| accountName | String | 是 | 账号名称 | |||
| accountOrgId | String | 否 | 组织ID | |||
| accountOrgName | String | 否 | 组织名称 | |||
| receivers | List | 是 | [{ “accountId”:, “accountName”:“冯世明”, “accountOrgId”:“pre.saas.zwdingding”}] | 接收者集合,最多1000个。 | ||
| accountId | Long | 是 | 账号ID | |||
| accountName | String | 是 | 账号名称 | |||
| accountOrgId | String | 否 | 组织ID | |||
| accountOrgName | String | 否 | 组织名称 | |||
| source | Obj | 是 | 无需发送到im会话:“source”:{“extJson”:“{“msgId”:”“}”, “sourceId”:“”,“sourceName”:“周丽英”}需要发送到im会话:“source”:{“extJson”:“{“msgId”:”“}”, “sourceId”:“:”,“sourceName”:“xxx办公室”} | 来源信息。具体见各字段描述。 | ||
| sourceId | 是 | “sourceId”:“"或者"sourceId”:“:” | 创建DING的源。sourceId分情况: 无需发送IM会话时:sourceId与creator的accountId保持一致。需要发送IM会话时:sourceId需要按照发送方接收方两个uid,小:大的顺序填写。 (小uid:大uid,英文冒号拼接,大小由uid数值大小判断,小的在前大的在后)如:“sourceId”:":"注意:发送到IM只支持发送单人,不能群发。 | |||
| sourceName | 是 | xxx办公室 | 源的名称,如会话名 | |||
| extJson | 是 | “extJson”:“{“msgId”:”“}” | 扩展字段,msgId默认为空,无需填写 | |||
| body | String | 是 | “body”:“{“text”:”(当前版本过低,升级版本后可查看DING详情)“}” | 内容json字符串,必须带text这个key | ||
| bodyType | String | 是 | text | 内容类型,目前发钉接口只支持文本类型text:文本 | ||
| textType | String | 是 | plaintext | 内容加密类型plaintext:明文 | ||
| dingBody | String | 是 | “dingBody”:“{“text”:“通知一下,晚上加班”}” | 消息体json字符串 | ||
| dingBodyContentType | String | 是 | attachment | 消息体内容类型,文本默认填写:attachment | ||
| dingBodyTextType | String | 是 | plaintext | 消息体加密类型plaintext:明文;ciphertext:密文(暂不对ISV开放) | ||
| notifyType | String | 是 | app | 通知类型 app:应用内;sms:短信;vms:语音(电话语音钉限制规则见接口说明) | ||
| sendToIm | Boolean | 否 | false | 是否发送到IM会话,默认false为true时scene填写固定值:session注意:发送到IM只支持发送单人,不能群发。 | ||
| scene | String | 否 | session | sendToIm为true,scene填写固定值:session |
返回参数
| 名称 | 类型 | 描述 |
|---|---|---|
| success | Boolean | 请求是否成功。true:请求成功;false:请求失败 |
| content | Object | |
| └ data | String | 发钉ID,可根据此信息,来查询/ding/query/userDetail以获取已未读/发送成功失败的接收者信息 |
| └ success | Boolean | 业务处理是否成功 |
用法DEMO
调用示例
/ *@Description: ding消息 *@Parameter: [creator 发送浙, receivers 接收者, dingBody 发送消息] *@Return: java.lang.String *@Author: jxj *@Date: 2022/7/22 / public String sendNotice(String creator ,String receivers, String dingBody){
ExecutableClient executableClient = ExecutableClient.getInstance(); executableClient.setAccessKey("xxxxxxxxxxxxxxxxxxx"); executableClient.setSecretKey("xxxxxxxxxxxxxxxxxxx"); executableClient.setDomainName("openplatform.dg-work.cn"); executableClient.setProtocal("https"); //executableClient要单例,并且使用前要初始化,只需要初始化一次 executableClient.init(); //浙政钉发送ding消息接口 String api = "/ding/isv/send.json"; PostClient postClient = executableClient.newPostClient(api); postClient.addParameter("bodyType", "text"); postClient.addParameter("creator", creator); postClient.addParameter("dingBodyTextType", "plaintext"); postClient.addParameter("dingBody", dingBody); postClient.addParameter("textType", "plaintext"); postClient.addParameter("source", "{\"extJson\":{\"msgId\":\"\"}, \"sourceId\":\" \",\"sourceName\":\"张硕\"}"); postClient.addParameter("body", "{'text':'当前版本过低,升级版本后可查看DING详情'}"); postClient.addParameter("scene", ""); postClient.addParameter("notifyType", "app"); postClient.addParameter("receivers", receivers); postClient.addParameter("tenantId", "53236"); postClient.addParameter("dingBodyContentType", "text"); postClient.addParameter("sendToIm", ""); postClient.addParameter("accountId", ""); postClient.addParameter("accountName", ""); postClient.addParameter("accountOrgName", ""); postClient.addParameter("accountOrgId", ""); postClient.addParameter("sourceId", ""); postClient.addParameter("extJson", ""); postClient.addParameter("sourceName", ""); postClient.addParameter("accountId", ""); postClient.addParameter("accountName", ""); postClient.addParameter("accountOrgName", ""); postClient.addParameter("accountOrgId", ""); String apiResult = postClient.post(); System.out.println(apiResult); executableClient.destroy(); return "ok"; }
讯享网
请求包结构体
讯享网{
"body":"{\"text\":\"(当前版本过低,升级版本后可查看DING详情)\"}", "bodyType":"text", "creator":{
"accountId":, "accountName":"周丽英", "accountOrgId":"GE_64e388fd7de8d885e895d5e", "accountOrgName":"杭州市公安局-AAA哈哈哈" }, "dingBody":"{\"text\":\"通知一下,晚上加班\"}", "dingBodyContentType":"text", "dingBodyTextType":"plaintext", "notifyType":"app", "receivers":[ {
"accountId":, "accountName":"冯世明", "accountOrgId":"pre.saas.zwdingding" } ], "sendToIm":false, "source":{
"extJson":"{\"msgId\":\"\"}", "sourceId":"", "sourceName":"周丽英" }, "tenantId":"", "textType":"plaintext", "urge":false }
返回结果
成功返回示例
{
"success":true,"content":{
"data":"","success":true}}
失败返回示例
讯享网失败返回案例
补充说明
| 错误码 | 错误描述 | 说明 |
|---|---|---|
| 0 | OK | 成功 |
| GDG-B001-05-15-0001 | ILLEGAL_ARGUMENT | 参数错误 |
| GDG-S001-05-99-0001 | SYSTEM_ERROR | 未知系统异常 |
| GDG-B001-05-16-0003 | MOZI_ACL_CHECK_ERROR | 接收人可见性过滤异常 |
总结:
1.测试账号必须在通讯录里
2.必须给应用加ding消息权限
1-05-15-0001 | ILLEGAL_ARGUMENT | 参数错误 |
| GDG-S001-05-99-0001 | SYSTEM_ERROR | 未知系统异常 |
| GDG-B001-05-16-0003 | MOZI_ACL_CHECK_ERROR | 接收人可见性过滤异常 |
总结:
1.测试账号必须在通讯录里
2.必须给应用加ding消息权限
3.传参务必转jsonString 字符串
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/22268.html