突破截屏限制怎么解除KSTAR:重磅推荐github突破7.2k star OpenIM消息推送api支持应用取IM融合 满满干货

 

近期,互联网行业再次掀起了1股创新浪潮,让我们1起揭开这个新时代的面纱,看看互联网天下有哪些令人振奋的事情正在发生。

OpenIM消息推送api打通了应用和IM系统之间的通知桥梁,让应用消息可以及时触达到目标用户以办公场景为例,比如员工入职通知,放假通知等营业通知,由oa系统处理具体的营业逻辑,再调用消息推送api,触达到目标用户。

效果示例以协同办公为例,员工收到系统推送的工作通知,有新任务需要处理。

员工点击工作通知,可以查看具体详情,每条通知有没有同的发送者昵称和头像。这种通知类型是1种新的会话类型,全部聚合在同1个会话。

OpenIM简介OpenIM:从服务端到客户端SDK开源即时通讯整体解决方案开发者可以轻松替代第3方IM云服务,打造具备聊天、社交功能的,也可以在自身应用中集成SDK,以提供即时通讯能力开源IM的价值在于“1切皆可控”“我的信息我做主”,无论是技术,还是信息安全。

整体超过7.2K star,OpenIM作为开源IM的领跑者,持续添加新功能,包括消息推送api,群聊已读服务端和sdk都是Apache.0 License授权协议,可以免费使用带有UI的产品需要商业授权,有兴趣的客户可以联系我们深度交流。

5X8小时vip专属服务,包括:(1)11技术咨询,微信 电话等各种方式;(2)sdk使用辅导咨询;(3)服务端架构及部署答疑;(4)IM新需求优先排期;(5)bug优先修复;(6)系统维护和故障响应;

web端体验: https://open-im-online.rentsoft.cn/安卓端体验: https://www.pgyer.com/OpenIMiOS端体验:https://testflight.le.com/join/o956rTGx

单机性能及容量总结服务器资源:8核16G内存, 6个机械磁盘,每个磁盘100G, mongo 分片,10MB带宽容量:用户同时在线10万以上,消息条数10亿性能评估:同时在线用户10万,每秒钟发送消息900条,(从发送者发出消息到接收到消息)消息延时1秒。

可靠性总结每条消息都能被对方精确收到,并成功落地本地db对于失败的3条消息,接收方确实没有收到,确保系统消息1致性系统具备优秀的平行扩展能力,除存储模块外,其他模块都无状态,支持亿级用户,千亿消息量。

github地址: https://github.com/OpenIMSDK/Open-IM-Server开发者中央:https://doc.rentsoft.cn/#/简要描述管理员通过后台接口发送通知类型消息

请求URLhttp://x.x.x.x:10000/manager/send_msg请求方式POST请求示例 { "operationID": "Oa notification operationID111"

, "sendID": "openIM123456", "recvID": "18712345678", "senderPlatformID": 2, "senderFaceURL"

: "http://www.head.com", "senderNickname": "系统通知2", "content": { "notificationName"

: "公文管理", "notificationFaceURL": "http://www.head1.com", "notificationType": 1,

"text": "大家好,今天是...", "externalUrl":"", "mixType": 0, "pictureElem": {

"sourcePath": "", "sourcePicture": { "uuid": "", "type"

: "", "size": 0, "width": 0, "height": 0,

"url": "" }, "bigPicture": { "uuid": "", "type"

: "", "size": 0, "width": 0, "height": 0,

"url": "" }, "snapshotPicture": { "uuid": "",

"type": "", "size": 0, "width": 0, "height": 0,

"url": "" } }, "soundElem": { "uuid": "", "soundPath"

: "", "sourceUrl": "", "dataSize": 0, "duration": 0 },

"videoElem": { "videoPath": "", "videoUUID": "", "videoUrl": ""

, "videoType": "", "videoSize": 0, "duration": 0,

"snapshotPath": "", "snapshotUUID": "", "snapshotSize": 0, "snapshotUrl"

: "", "snapshotWidth": 0, "snapshotHeight": 0 }, "fileElem"

: { "filePath": "", "uuid": "", "sourceUrl": "", "fileName"

: "", "fileSize": 0 }, "ex": "" }, "contentType": 1400, "sessionType"

: 4, "isOnlineOnly": false, "offlinePushInfo": { "title": "admin revoke your message"

, "desc": "", "ex": "", "iOSPushSound": "default", "iOSBadgeCount"

: false } }Copy to clipboardErrorCopied请求参数参数名类型必选说明operationIDstring是操作ID,保持唯1,建议用当前时间微秒+随机数,用于后台链路追踪问题使用

sendIDstring是管理员ID,为后台config文件中配置的管理员ID中1个,默认openIM123456recvIDstring是接收者userIDsenderPlatformIDint否发送者平台号,模拟用户发送时填写, 1->IOS,2->Android,3->Windows,4->OSX,5->Web,5->MiniWeb,7->Linux

senderFaceURLstring否发送者头像,用于客户端通知会话产生senderNicknamestring否发送者昵称,用于客户端通知会话产生contentobject是消息的具体内容,内部是json 对象

notificationNamestring是通知标题notificationFaceURLstring是通知头像notificationTypeint是通知类型,如:1代表入职通知,2代表离职通知text

string是通知正文eexternalUrlstring否通知点击后需要跳转到的地址链接(没有填则无需跳转)mixTypeint是通知混合类型 0:纯文字通知 1:文字+图片通知 2:文字+视频通知 3:文字+文件通知

pictureElemobject否图片元素对象sourcePictureobject否原图bigPictureobject否大图snapshotPictureobject否缩略图soundElemobject

否声音元素对象videoElemobject否视频元素对象fileElemobject否文件元素对象uuidstring否对象唯1ID用于缓存使用type/videoType/string否图片类型/视频类型

size/dataSize/videoSize/snapshotSize/fileSizeint否多媒体文件大小,单位字节width/snapshotWidthint否图片/视频缩略图宽度height/snapshotHeight

int否图片/视频缩略图高度url/sourceUrl/videoUrlstring否图片/文件/视频的URLsourcePath/soundPath/videoPath/filePathstring否

文件路径,可没有填写fileNamestring否文件名字exstring否扩展字段contentTypeint是消息类型固定为1400sessionTypeint是通知会话类型固定为4isOnlineOnly

bool否改字段设置为true时候,发送的消息服务器没有会存储,接收者在线才会收到,没有在线该消息失offlinePushInfoobject否离线推送的具体内容,如果没有填写,使用服务器默认推送标题title。

string否推送的标题descstring否推送的具体描述exstring否扩展字段iOSPushSoundstring否IOS的推送声音iOSBadgeCountbool否IOS推送消息是否计入桌面图标未读数

返回示例{ "errCode": 0, "errMsg": "", "data": { "serverMsgID": "", "clientMsgID": ""

, "sendTime": 1645697804432 } }Copy to clipboardErrorCopied返回参数参数名类型说明errCodeint0成功,非0失败errMsg

string错误信息sendTimeint消息发送的具体时间,具体为毫秒的时间戳serverMsgIDstring服务器生成的消息的唯1IDclientMsgIDstring客户端生成的消息唯1ID,默认情况使用这个为主键

消息类型格式描述简要描述管理员消息发送字段中contentType支持的消息类型说明以及消息content的具体字段说明ContentType消息类型说明ContentType值类型说明101文本消息102

图片消息103音频消息104视频消息105文件消息106群聊中的@类型消息107合并转发类型消息108名片消息109地理位置类型消息110自定义消息111撤回类型消息112已读回执类型消息114引用类型消息

Content具体内容content内部为具体的json对象,没有同的消息类型是没有同的json对象文本消息{ ..., "content": { "text": "nihao" }, .... }

Copy to clipboardErrorCopied参数名必选类型说明text是string文本消息的具体内容自定义消息{ ..., "content": { "data": ""

, "description": "", "extension": "" }, .... }Copy to clipboardErrorCopied参数名类型必选说明

datajson string是用户自定义的消息为json对象转换后的stringdescriptionjson string否扩展的描述信息为json对象转换后的string,可以没有使用extension

json string否扩展字段,暂时没有使用

这是我对生活的1次思考,希望这篇文章能给你带来1丝启发和感悟。喜欢的小伙伴记得关注收藏点赞哦!"

为您推荐

突破截屏限制怎么解除KSTAR:重磅推荐github突破7.2k star OpenIM消息推送api支持应用取IM融合 满满干货

突破截屏限制怎么解除KSTAR:重磅推荐github突破7.2k star OpenIM消息推送api支持应用取IM融合 满满干货

OpenIM消息推送api打通了应用和IM系统之间的通知桥梁,让应用消息可以及时触达到目标用户。以办公场景为例,比...

2023-07-07 栏目:娱乐瓜

当前非电脑浏览器正常宽度,请使用移动设备访问本站!