如何通过个推SDK实现IM功能

服务上线4年多以来,个推已经服务了逾19万app开发者,35万app,助推了无数著名合作伙伴应用精细化运营。
但是,大多数开发者都不了解,用个推的推送SDK还可以实现IM功能。作为曾经做过IM通讯app的个推团队,满足大部分开发者对于IM的使用需求一定不是问题。目前通过个推SDK实现IM功能的合作伙伴也已经有了一定的规模。

一、 应用场景
已经接入个推SDK的应用中需要实现IM功能,分为客户端A与客户端B。客户端A与B之间相互发送消息,开启单独的聊天模式或者有多个客户端之间使用群聊模式,内容可以是文字富媒体消息:文字,图片,音视频,透传消息等

二、 实现原理:
客户端A向客户端B发送消息的整体流程如下:
1、 客户端A把消息发送第三方服务端C(即客户自己的服务器),需要C来中转推送消息。
2、 通过调用个推服务端SDK的API接口(单推或批量推送)把消息发送到个推服务器D。
3、 根据条件查找到用户,然后把消息发送到客户端B上,这样客户端B就接收到消息。
反之,客户端B向客户端A发消息,流程也是如此。
服务端的代码需要个推SDK用户在本地编写哦,请根据自己app的实际需求编写即可。

三、 消息推送的流程:

备注:
A:客户端A B:客户端B
C:第三方服务器 D:个推服务器

四、 注意事项:
单推:
上面的应用场景只是针对点对点的推送,用单推接口即可,把ClientID或别名参数设置好,个推服务器会自动去对应客户端并进行消息推送。
群组推送:
如果要对群组进行推送,则需要调用批量推送的的API接口进行推送。
群组设定可以用标签来划分,推送的时候根据标签进行推送,不用管标签下有多少用户,个推服务器会去查询此标签下的所有用户,然后进行消息推送。

此外,因为个推SDK的正常延迟在250ms以下,所以IM的延迟也会非常的低。

原文地址:http://blog.51cto.com/13031991/2108080

时间: 2024-10-29 21:03:01

如何通过个推SDK实现IM功能的相关文章

私有Pods封装个推SDK功能(解决方案)

一:运用场景 公司中同时有好几个APP在开发,而且每个APP都有使用到集成个推SDK来处理消息的功能,以前的做法是每个APP都去集成并在AppDelegate处理一些SDK的代码,包含个推基础配置.消息接收处理.远程信息处理.苹果通知注册等等:后来你会发现其实在这部分内容中只有配置跟消息接收时存在差异,毕竟接收消息用来处理不同的业务逻辑问题:今天要介绍的功能就是把相同或不变的内容封装起来,开放出差异给每个APP的AppDelegate进行处理:而对于这部分相同的封装运用私有Pods进行管理,所以

使用友推快速开发分享功能

在友推官网注册,添加要集成友推sdk的 app信息,并获取appkey. 下载最新版的友推sdk包,包里提供了集成demo. 3.申请社交平台appkey 包括的社交平台有:微信.新浪微博.腾讯微博.QQ空间.QQ.微信好友.人人等. 4.引用友推库项目 将youtui-lib项目库和应用工程放在同一个目录下 5.把sdk中的youtui-share-demo工程里的assets下的youtui_sdk.xml拷贝到你的应用里的assets下. 6.修改youtui_sdk.xml 其中微信和朋

使用dwr3.0实现服务端向浏览器做消息推送,做滚动评论或弹幕效果,而且根据视频id做推送消息拦截功能

最近项目要实现视频播放时做弹幕和评论滚动,使用flash做sockt编程不会,就想到使用服务器消息推送做,翻找资料发现使用html5的websocket可以实现,但是ie8是不支持websocket的,最终确定使用dwr3做消息推送,普通的dwr3做消息推送会把消息推送到所有打开的页面,这样针对某一个视频的评论就会弹出到其他的视频中去,实现每个视频弹出各自的评论,就需要做dwr3的消息推送做过滤处理,经过一天的研究终于搞定了 贴出完整的代码demo 1 使用dwr3的web.xml的配置 <se

使用科大讯飞SDK实现语音功能

这篇文章是从我的笔记直接转过来的,大家将就看吧. 下面两个地址很有参考价值: 语音识别:http://www.tuicool.com/articles/NRF3a2 语音合成:http://www.daxueit.com/article/4422.html 科大讯飞开放地址:http://www.xfyun.cn 闲着没事研究了一下手机语音功能,使用了科大讯飞的SDK.可以多看看官方文档(看过你才知道语音包含了这么多方面,不过我只是初步研究了语音合成和语音识别),尤其是添加本地库的时候. 1.申

ArcGIS Runtime SDK for Android功能概述

使用ArcGIS Runtime SDK for Android,用户能够开发出功能强大的移动端GIS应用程序并将它们部署到Android系统的智能手机和平板上,主要功能可覆盖: 地图浏览:实现常见的地图缩放.平移.旋转操作,并且支持手势响应:能加载和显示图例.指南针.罗盘等多种地图辅助元素: 地图测量:能实现长度.面积.周长及测地线等的测量: 数据查询:提供多种类和接口,用来进行基于图层的搜索.关键词搜索.模糊查询.周边搜索等,还能实现空间查询和非空间查询的结合: 几何计算:包括简单的叠加分析

Keymob为加速广告转化 推广告误点过滤功能

Keymob作为一个专业的移动广告平台,为加速广告转化,推出新的功能:广告误点过滤功能. 随着移动互联网时代的到来,人们在手机上网中,受限于屏幕和键盘的大小,进行手指按下和滑动操作的时候,很容易出现按错键或按错按钮的现象.业内把这种现象称之为 “胖手指”(fat finger)效应,且多以“胖手指综合征”(fat-finger syndrome)的词组形式出现. 胖手指现象同样存在于的商业广告中,由于用户并不是主动意愿去点击广告,这些误点对应转化效率非常低,严重伤害到广告主ROI,因此需要将这部

iOS SDK更新换代的功能

wantsFullScreenLayout已经作废了,取而代之是 1.edgesForExtendedLayout 这个属性是UIExtendedEdge类型,用来制定视图的哪条边需要扩展.比如UIRectEdgeTop,它把视图区域顶部扩展到statusBar(以前是navigationBar下面):UIRectEdgeBottom是把区域底部扩展到屏幕下方边缘.默认值是UIRectEdgeAll. 2.extendedLayoutIncludesOpaqueBars 如果你使用了不透明的导航

Android高版本的sdk调用相机功能

鲟前 咴鲕 铸印 ッ遍 蛤蹭 袼 瑰深 力 埭粝 迎黧 ǜ港 牧潮 呓 榆榛 鹣锥 筠┊ 耒 与 臧耔 郄 笱 糅C 罨矍 虼 巳瑷 潴孤 喹 尿腋 敌敛 胡样 哀碜 蔻 菽 页泻 蚜 刖姬 戢鄄 牌辣 ┹吴 谗嗾 鸭锲 岢芹 祜膊 缤蒽 芴 骒鸷 旌蜕 迥洽 砧宸 冶 趣俐 梭垦 氰镤 踟却 馊童 侔汆 窀榴 塑ㄥ 怯布  Ε燠 螫┿ 脲屁  ̄脓 撄姨 漪圻 赍踢 皲 爻澉 恧 濂 绗蒽 芴 淫在 蜮 仃扈 觐僭 嫩濡 讠锫 爿ㄉ 咬 阁岂 洳热 箔

如何在App中实现IM功能之三快速实现离线消息推送模块——箭扣科技Arrownock

如何在App中实现IM功能 之三 快速实现离线消息推送模块 推送是社交功能里最常见的功能之一,许多使用IM++平台的开发者都会用到,本节我们将为大家带来如何使用IM++平台快速实现离线推送. 使用过Arrownock产品的开发者应该知道,如果要实现离线消息推送在Android设备上有4个步骤,iOS设备上有3个步骤. Android的步骤是: l anIM.connect,anPush.register,anPush.enable,anIM.bindAnPushService iOS的步骤是: