米讯 社交SDK 开发指南

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了米讯 社交SDK 开发指南相关的知识,希望对你有一定的参考价值。

参考技术A 米讯SDK,主要提供各种即时通讯服务。帮助游戏和app快速实现 实时聊天,私信留言,音视频通话,群聊等im功能。

目前我们提供了androidios的客户端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 开发指南的主要内容,如果未能解决你的问题,请参考以下文章

15款国内移动应用开发者都必须知道的小而美SDK

APP运营

开发即时通讯难不难?有没有第三方im?sdk可以推荐

基于 Web SDK 实现视频通话场景 | 声网 SDK 教程

Facebook 通过 ios 中的社交框架登录

facebook ios sdk 或苹果社交框架