背景

浙政钉上架应用可创建群聊,和用户单聊等。

版权

本文允许转载,转载请写上原文地址,谢谢!作者:曹震

目录

一、准备工作

二、浙政钉系列

三、接口开发

1.特别说明

1.1访问IP不在白名单中,request ip=xxx.119.xxx.169

2.接口说明

1.1创建群会话

1.2代码实例

1.3返回参数

2.1发送消息(单聊)

2.2代码实例

2.3返回结果


一、准备工作

【浙政钉】第一篇:企业内应用免登_郭老师的小迷弟雅思莫了的博客-CSDN博客_浙政钉是专有钉钉吗https://caozhen.blog.csdn.net/article/details/126529774

二、浙政钉系列

1.【浙政钉】第一篇:企业内应用免登

2.【浙政钉】第二篇:获取浙政钉单位组织结构

3.【浙政钉】第三篇:浙政钉应用发送工作通知

三、接口开发

1.特别说明

1.1访问IP不在白名单中,request ip=xxx.119.xxx.169

解决办法:钉钉专有版开放平台开发者后台 (dg-work.cn)

找到自己新建的应用,在应用配置中设置服务器出口ip

2.接口说明

1.1创建群会话

接口文档:专有钉钉开放平台管理后台 (dg-work.cn)

请求参数

名称

类型

是否必填

示例值

描述

accountId

Long

账户id

disableRead

Integer

已读回执设置,0打开,1关闭,默认打开

tenantId

Long

租户id

useridlist

String[]

群成员accountId列表,每次最多支持40人,群人数上限为999。如创建超过40人的群,建完群后再调用更新群会话接口增加人员。

name

String

群名称

managementType

Integer

默认所有人可管理 0关闭:所有人可管理群 1打开:仅管理员及子管理员可管理

返回参数

名称

类型

描述

memberLimit

long

群人数限制

responseMessage

String

错误信息

responseCode

String

错误码

memberCount

Integer

当前群人数

chatId

String

会话id

success

bool

业务处理是否成功

1.2代码实例

mport com.alibaba.fastjson.JSONObject;
import com.alibaba.xxpt.gateway.shared.api.request.OapiChatGroupV2CreateRequest;
import com.alibaba.xxpt.gateway.shared.api.request.OapiChatSendMsgRequest;
import com.alibaba.xxpt.gateway.shared.api.request.OapiMoziOrganizationListOrganizationsByCodesRequest;
import com.alibaba.xxpt.gateway.shared.api.response.OapiChatGroupV2CreateResponse;
import com.alibaba.xxpt.gateway.shared.api.response.OapiChatSendMsgResponse;
import com.alibaba.xxpt.gateway.shared.api.response.OapiMoziOrganizationListOrganizationsByCodesResponse;
import com.alibaba.xxpt.gateway.shared.client.http.ExecutableClient;
import com.alibaba.xxpt.gateway.shared.client.http.IntelligentGetClient;
import com.alibaba.xxpt.gateway.shared.client.http.IntelligentPostClient;
import com.alibaba.xxpt.gateway.shared.client.http.PostClient;
import com.google.gson.JsonObject;
import jdk.nashorn.internal.ir.annotations.Reference;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays;
import java.util.List;@Slf4j
@RestController
@RequestMapping("/hvit/DingTalkApi/")
public class Controller {private static ExecutableClient executableClient;static {executableClient = ExecutableClient.getInstance();//DomainName不同环境对应不同域名,示例为sass域名executableClient.setAccessKey("xxxxxxxxxxxxxxx");executableClient.setSecretKey("xxxxxxxxxxx3D8TSpd255VSZh7sKRPZ0f");executableClient.setDomainName("openplatform.dg-work.cn");executableClient.setProtocal("https");executableClient.init();//executableClient要单例,并且使用前要初始化,只需要初始化一次}/**** 创建群会话(建群)* @return*/@RequestMapping(value = "/createChat", method = RequestMethod.POST)public ResponseEntity<?> createChat() {//executableClient保证单例IntelligentGetClient intelligentGetClient = executableClient.newIntelligentGetClient("/chat/group/V2/create");OapiChatGroupV2CreateRequest oapiChatGroupV2CreateRequest = new OapiChatGroupV2CreateRequest();//账户idoapiChatGroupV2CreateRequest.setAccountId(834843L);//已读回执设置,0打开,1关闭,默认打开oapiChatGroupV2CreateRequest.setDisableRead(1);//租户idoapiChatGroupV2CreateRequest.setTenantId(xx25L);//群成员accountId列表oapiChatGroupV2CreateRequest.setUseridlist(Arrays.asList("407483", "834750", "834751", "834749"));//群名称oapiChatGroupV2CreateRequest.setName("数字门牌代码测试建群");//默认所有人可管理 0关闭:所有人可管理群 1打开:仅管理员及子管理员可管理oapiChatGroupV2CreateRequest.setManagementType(1);//获取结果OapiChatGroupV2CreateResponse apiResult = intelligentGetClient.get(oapiChatGroupV2CreateRequest);if (apiResult != null) {if (apiResult.getContent().getSuccess()) {log.info("创建群聊:{}", apiResult.getContent().getData());return ResponseEntity.ok(apiResult.getContent().getData());}}return ResponseEntity.ok("");}}

1.3返回参数

{"chatId":"109096075xxxxxx141@saas.zwdingding","memberCount":5,"memberLimit":999}

这个是chatId是群的id,这个可以记录下来,后面进行群聊的时候需要用到。

我们来看下客户端返回的结果情况

2.1发送消息(单聊)

接口文档:专有钉钉开放平台管理后台 (dg-work.cn)

请求参数

名称

类型

是否必填

示例值

描述

msg

String

消息体(参考下文示例消息格式)

senderId

String

发送者用户id

receiverId

String

单聊接受者用户id(chatType为1时必填)

chatId

String

群聊会话id(chatType为2时必填)

tenantId

Long

租户id

chatType

Integer

发起的会话类型(1单聊、2群聊)

返回参数

名称

类型

描述

success

Boolean

请求是否成功。true:请求成功;false:请求失败

content

Object

└ data

List

消息列表

└ └ messageId

String

消息id

└ success

Boolean

业务处理是否成功

└ responseMessage

String

错误信息

└ responseCode

String

错误码

2.2代码实例

@RequestMapping(value = "/createChatOnline", method = RequestMethod.POST)public ResponseEntity<?> createChatOnline() {//executableClient保证单例IntelligentGetClient intelligentGetClient = executableClient.newIntelligentGetClient("/chat/sendMsg");OapiChatSendMsgRequest oapiChatSendMsgRequest = new OapiChatSendMsgRequest();JSONObject jsonObject = new JSONObject();jsonObject.put("msgtype", "text");jsonObject.put("text", JSONObject.parse("{\"content\":\"今天是2022年9月26日,测试单聊\"}"));//消息体(参考下文示例消息格式)oapiChatSendMsgRequest.setMsg(jsonObject.toJSONString());//发送者用户idoapiChatSendMsgRequest.setSenderId("834222");//单聊接受者用户id(chatType为1时必填)oapiChatSendMsgRequest.setReceiverId("832222");//群聊会话id(chatType为2时必填)oapiChatSendMsgRequest.setChatId("");//租户idoapiChatSendMsgRequest.setTenantId(62xx5L);//发起的会话类型(1单聊、2群聊)oapiChatSendMsgRequest.setChatType(1);//获取结果OapiChatSendMsgResponse apiResult = intelligentGetClient.get(oapiChatSendMsgRequest);if (apiResult != null) {if (apiResult.getContent().getSuccess()) {log.info("创建单聊:{}", apiResult.getContent().getData());return ResponseEntity.ok(apiResult.getContent().getData());}}return ResponseEntity.ok("");}

2.3返回结果

{"messageId":"1090969593284921405"}

我们来看下客户端返回的结果情况

好了,基本以上就是浙政钉、专有钉钉,消息接入等。

作者:曹震  如果喜欢我的博客,麻烦支持下我,一键三连哈~感谢

【浙政钉】第四篇:浙政钉创建群聊、消息接入、发送相关推荐

  1. Java教程:如何对接自定义钉钉机器人并实现群聊消息发送

    正文: 钉钉对机器人提供了多种使用场景,但目前我们只针对群聊消息的发送,@所有 或 @某某 以实现目的,此场景只需实现自定义机器人介入即可! 这是官方介绍: 点击此处直达 **自定义机器人支持5种消息 ...

  2. python request模块 在钉钉中创建群聊机器人,一键发送消息,定时发送(详细步骤)

    0.安装requests模块 Linux下执行 pip3 install requests 1.request简介 Reqest是Python的HTTP库,内部采用urillib3模块,但是用起来比u ...

  3. SpringBoot第十四篇:在springboot中用redis实现消息队列

    这篇文章主要讲述如何在springboot中用reids实现消息队列. 准备阶段 安装redis,可参考我的另一篇文章,5分钟带你入门Redis. java 1.8 maven 3.0 idea 环境 ...

  4. C# 代码实现钉钉创建群聊

    本文属于个人原创作品.个人总结,谢绝转载.抄袭.如果您有疑问或者希望沟通交流,可以联系QQ:865562060. 一.开始接入 1.开始接入钉钉之前,首先需要了解企业接入钉钉的概述:https://o ...

  5. CCIE理论-第四篇-SDA-1

    CCIE理论-第四篇-SDA-1 SDA-software defied Access SDA-软件定义接入 SDA是被包含在SDN范畴里面的一个架构体系 SDA核心-通过一系列的技术合租,组织到一个 ...

  6. 直播系统聊天技术(四):百度直播的海量用户实时消息系统架构演进实践

    本文原题"百度直播消息服务架构实践",由百度APP消息中台团队原创分享于"百度Geek说"公众号,为了让文章内容更通俗易懂,本次已做排版优化和内容重新划分,原文 ...

  7. 记一次钉钉群聊机器人的开发

    文章目录 一.需求描述 二.开发思路 三.开发步骤 (一)阅读开发文档 (二)创建机器人 (三)了解消息格式 (四)传参并调用 (五)其他 四.总结 一.需求描述 为实现更好的沟通,现需要实现以自定义 ...

  8. 钉钉老版本下载3.31_钉钉旧版pc下载-钉钉旧版pc客户端下载-西西软件下载

    钉钉旧版pc版客户端是为了大家需要准备的,不习惯使用新版本的新版本的小伙伴们,想要使用旧版本的,小编就给大家提供旧版本的软件,让小伙伴们可以放心的进行使用,还等什么,赶紧试试吧. 软件介绍: 钉钉,是 ...

  9. 钉钉老版本下载3.31_钉钉3.3.1老版本官方下载-钉钉3.3.1旧版本PC版官方版-东坡下载...

    钉钉是由阿里巴巴研发的一款办公聊天工具,是新一代的团队沟通模式,该软件内置强大的办公功能,主要功能有传输文件,发送文字.语音.图片等,消息阅读以及外出打卡等功能,在这里为大家提供的是钉钉3.3.1旧版 ...

最新文章

  1. Mac系统Git生成ssh公钥
  2. 遗传和基因突变对神经网络训练的好处
  3. JavaScript强化教程——AJAX
  4. Codeforces 1109F. Sasha and Algorithm of Silence's Sounds
  5. eclipse中检查项目生成.class文件的地址
  6. 利用MS17-010渗透win7(32位)
  7. Windows Mobile下猜数字游戏的TDD实现
  8. CPU vs. GPU
  9. 114.maven+springmvc+spring+mybaties 项目整合
  10. C# 文件读写系列三
  11. 免费易用的Web版OFD阅读器
  12. 美团旅行销售绩效系统研发实践
  13. 2022年物理学诺奖获主,他们证明爱因斯坦错了
  14. LiveQing私有云流媒体-云端录像时间轴视频及列表视图
  15. ModelCoder模块系列:PID模块介绍
  16. PHPwind9.01傻瓜图解安装教程
  17. 暗影精灵5风扇怎么调_惠普HP暗影精灵5 Super游戏主机改装猫头鹰风扇攻略
  18. 高德地图API画圆形、高的地图删除圆形打点
  19. 蓝字冲销是什么意思_在记账凭证中冲销是什么意思
  20. 电脑使用android手机摄像头,电脑怎么使用安卓手机摄像头 电脑使用手机摄像头的方法-电脑教程...

热门文章

  1. 操作系统4小时速成:内存管理,程序执行过程,扩充内存,连续分配,非连续分配,虚拟内存,页面替换算法
  2. 用MFC编程时在源文件里经常看到的AFX或afx是什么意思?
  3. Java基础-Lambda表达式基础练习
  4. 全排列的java算法_全排列算法原理和实现
  5. 7.4. Combining Queries
  6. 信号与系统 chapter7 因果与非因果
  7. grabber的使用_Google Grabber —使用PHP找出您的域名在Google中列出了多少页
  8. jQuery诞生记-原理与机制
  9. 利用矩阵相乘公式Cij = ∑ a ik × b kj,编程计算m×n阶矩阵A和n×m阶矩阵B之积
  10. 台式计算机无线网经常掉线,电脑无线网老是掉线怎么办?教你解决掉线问题