米讯 社交SDK 开发指南
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了米讯 社交SDK 开发指南相关的知识,希望对你有一定的参考价值。
参考技术A 米讯SDK,主要提供各种即时通讯服务。帮助游戏和app快速实现 实时聊天,私信留言,音视频通话,群聊等im功能。目前我们提供了android、ios的客户端SDK,同时提供了各个平台的详细文档和Demo,帮助快速入门。
* 我们强烈建议你阅读完本篇指南之后,再去查看以上的详细文档。
接入方需要通过唯一的appid、appkey、guid来向米讯服务器绑定用户,后续交互通过这个guid来标志一个用户。
米讯服务器不关心guid的业务逻辑,接入方只需要保证guid独立性。
米讯服务器提供open-api,接入方服务器需要随时和米讯服务器同步群组关系。
支持 room(聊天室)和group(群组)两种群聊模式。
room:只提供在线消息收发,用户离线时自动退出。不保存记录。(频道聊天,房间聊天等)
group:稳定的群组关系,提供云端消息存储和离线消息等功能。(工会聊天、邮件等)
支持单聊、聊天室、群聊。并且具备完善的群组管理功能。
支持文字、语音、自定义文件、小视频、图片(开发中)等多种自定义类型消息。
聊天记录保存在云端,允许自由获取。
支持系统向指定用户和群组发送消息。
提供最多16人的 多人实时语音通话功能
支持通话中的各种设定
支持根据带宽情况,只能调整流量消耗
支持最多4人的多人视频功能(开发中)
如果不需要使用实时通话功能:可以删掉lib中的 rtc-sdk-jni.so 和 libHDACEngine.so 文件以减小SDK体积。
离线消息推送
敏感词过滤
资料和关系链托管
其他个性化业务
如有需求请单独联系我们
原生的 Android、iOS、的客户端 SDK
服务器帐号绑定、群组管理、系统消息发送的open api
可以实时监控用户数、消息数的开发者控制台(开发中)
为方便unity游戏接入,我们提供了unity的SDK封装和样例工程。
unityDemo分为展示基础功能的appDemo和演示游戏中实时通话的SpaceShooter。接入方可以按需参考。
接入方从米讯获取 appID和appkey。
所有服务端的接口鉴权,都要通过appID和appkey来实现。请妥善保存。
客户端接口需要的token、publicID、publickey,需要由接入方服务器,用appID和appkey来换取。再转发给客户端保存。
2、账户绑定(guid、token、pubkey)
接入方需要提供唯一的id来标识一个用户端。这个id,在米讯SDK中,称之为guid(最长128个字符)。
接入方服务器需要调用米讯服务器的bind_account(appid,appkey,guid)来进行注册。米讯服务器将返回对应这个guid的 token、publicID、publickey。
接入方app,在初始化米讯SDK提供的服务时,需要提供 (guid,token,publicID,publickey)。
* 米讯服务器不关心guid的业务逻辑,接入方只需要保证guid独立性。
3、群聊(room,group)
米讯SDK提供两种模式的消息群聊服务。分别适合不同的场景。
所有群组的管理,需要接入方服务器和米讯服务器实时交互,保证用户在正确的群里。
接入方app,调用米讯sdk消息操作,负责向群里的用户收发消息。SDK暂时不提供群组管理功能。
聊天室(Room)
只提供在线消息收发,用户离线(超过5min没心跳)自动退出room。再次上线需要重新加入。不保存消息记录。
适合频道聊天、聊天室、随机配对聊天等场景。
一个room,最多同时在线10000人。
rid:接入方定义,要保证不同room的rid唯一性。(128个字符内)
roomtype:接入方定义,方便用户屏蔽某一类room的消息。
群组(Group)
稳定的群组关系,提供云端消息存储和离线消息等功能。需要接入方服务器控制成员进出和群组创建销毁。
适合工会聊天,固定群聊等。
一个group,最多有1000个成员。
gid:接入方定义,要保证不同group的gid唯一性。(128个字符内)
grouptype由业务方定义,方便用户屏蔽某一类group的消息。
4、消息(Message)
Message是SDK用来传输消息的基本对象。需要接入放app构造,然后调用sdk的send接口进行发送。
Message的关键信息如下:
属性类型说明
messageID
String发送方填写的消息ID,用于本地消息去重
fromString发送方ID
targetString接收方ID ,单聊时为对方guid,群聊时为roomID或groopID
bodyMessageBody消息体。不同类型的消息,消息体内容不同,详见下方说明
bodyTypeint消息体枚举类型。暂时包括文本、语音。决定如何解释消息。
messageSeqlong服务端分配的消息序号,用于消息同步,离线消息拉取等
...
MessageBody
我们提供一下几种类型的MessageBody,后续会持续扩展
0、CustomMessageBody:data
1、TextMessageBody:text
2、AudioMessageBody:audioFilePath;audioUrl;duration
请接入方注意,控制每个Message最大不超过 5KB 的数据。
关于语音消息的录制工具,和自定义消息的方法,请参考详细说明文档。
4、语音通话(VOIP)和会议(Conference)
1、使用语音通话时,接入方服务器,需要先和米讯服务器交互,创建conference。并维护Conference里面的成员。
2、接入方客户端,通过joinconf(confid,guid)来加入确定的conference(前提是,这个conference的成员里面有这个人)
3、客户端加入房间成功后,可以使用各种接口控制音频通话 和 实时获取成员状态。
4、离开conference和确定conference不再使用时,需要及时leave和destroy。
如果不需要使用实时通话功能:可以删掉lib中的 rtc-sdk-jni.so 和 libHDACEngine.so 文件以减小SDK体积。
五、调用流程概要
1、发消息
2、实时语音通话
交互示意
调用流程图
六、详细文档和Demo
Android SDK 详情
iOS SDK 详情
服务端的 OpenAPI
七、联系方式
业务对接和常见问题:
韩尚佑;QQ:271843826;e-mail:hanshangyou@xiaomi.com
服务端API:
张友明;QQ:179818827;e-mail:zhangyouming@xiaomi.com
Android-SDK:
连冬阳;QQ:2460572865;e-mail:liandongyang@xiaomi.com
刘飞;QQ:276985107;e-mail:liufei3@xiaomi.com
iOS-SDK:
柯洪峰;QQ:249082954;e-mail:kehongfeng@xiaomi.com
facebook ios sdk 或苹果社交框架
【中文标题】facebook ios sdk 或苹果社交框架【英文标题】:facebook ios sdk or apple social framework 【发布时间】:2012-10-10 04:56:10 【问题描述】:我们现在有一个在 iPhone/iPad 上的地图项目。这次我们想将我们的应用程序与 facebook 集成。
现在我们有两个选择:
-
使用官方facebook ios sdk
使用 Apple 社交框架
我是社交编程的新手,所以我在选择一两个时感到困惑。
谁能给我一个建议?
【问题讨论】:
【参考方案1】:Apple 社交框架要容易得多。它会为您处理会话和帐户设置。
此外,使用 Facebook SDK 很难确定本机共享是否不可用或用户的 Facebook 帐户是否未设置。您可能还希望与 Twitter 分享。使用 Apple Social 框架主要是切换 serviceType 字符串。
另一方面,如果您使用官方 Facebook SDK,则必须使用 Twitter SDK 从头再来……或者使用 Apple Social Framework,您本来可以这样做。
查看此问题了解详情。
Tutorial for SLComposeViewController sharing
【讨论】:
【参考方案2】:我建议你通过 Facebbok iOS sdk 因为它已经解释了它的每一个细节。
我们在这里使用 Facebook Graph,您可以通过它做任何您想做的事情。希望这能解决您的困惑。
【讨论】:
以上是关于米讯 社交SDK 开发指南的主要内容,如果未能解决你的问题,请参考以下文章