补齐短板夯实基础-开源IM项目OpenIM关于初始化登录好友接口介绍

补齐短板夯实基础-开源IM项目OpenIM关于初始化登录好友接口介绍

OpenIM文档方面的建设一直远远落后于开发, 也经常被开发者诟病,在接下来一周的时间里,我们重点补齐文档,让开发者更轻松接入。由于app sdk底层都是go来实现,所以本文先写一个模板和框架,在接下来的时间里,会有iOS、Android、Flutter、Uniapp、jssdk同事补充具体的细节,并更新到官网

初始化及登录

初始化并登录成功回调,是正常使用OpenIM 服务的前提

SDK

描述

[Login]

登录,如果登录成功,必须退出登录才能再次执行登录操作

[Logout]

退出登录

[GetLoginStatus]

获取登录状态, 101:登录成功, 102:登陆中, 103:登录失败, 201:退出登录

[GetLoginUser]

获取当前登录用户UserID,此时用户登录状态未知

[initSDK]

初始化 SDK,整个生命周期执行一次,登录相关监听介绍如下:

OpenIM和调用方利用监听回调机制,和调用方信息互通,把登录状态通过异步回调方式即时传递给调用方,确保信息及时传达而不阻塞其主线程。

监听说明

登录相关监听

回调描述

[OnConnecting]

连接中,在连接后台时(包括重连)回调

[OnConnectSuccess]

连接成功

[OnConnectFailed]

连接失败,如果因网络连接失败会重连,其他情况不重连

[OnKickedOffline]

被踢下线,可能由于多端登录策略所致,或后台管理员强制其退出登录

[OnUserTokenExpired]

检测token过期回调

调用流程

OpenIM调用流程分为如下几步:

(1)初始化:在整个生命周期执行一次

(2)设置监听:包括群组监听,好友监听,用户监听,消息及会话监听,这些监听会在其他章节中描述

(3)登录:登录回调成功后再执行其他操作,否则可能出现资源加载未完成的错误

(4)收发消息等操作;

好友管理相关接口

OpenIM提供好友关系托管,比如好友申请,同意,以及好友获取等,OpenIM在客户端本地存储好友关系,并结合消息通知机制,按需调用后台接口,确保本地和服务端数据一致。同时利用监听机制,把数据变化通过异步回调传达调用方。OpenIM在收发消息时,默认不检查好友关系,您可以在配置文件中自行修改。OpenIM好友关系是双向关系,A添加B为好友后,则A在B的好友列表中,B也在A的好友列表中,A删除B,仅仅只是删除A的好友列表,而B的好友列表不受影响。同样,黑名单也类似。

SDK

描述

[GetDesignatedFriendsInfo]

获取指定好友的信息

[GetFriendList]

获取所有的好友列表

[SearchFriends]

通过关键词搜索好友

[CheckFriend]

检查是否好友关系

[AddFriend]

发起添加好友请求

[SetFriendRemark]

设置好友备注

[DeleteFriend]

删除好友(单向删除)

[GetRecvFriendApplicationList]

获取我收到的添加好友申请列表

[GetSendFriendApplicationList]

获取我发起的的添加好友申请列表

[AcceptFriendApplication]

同意好友申请

[RefuseFriendApplication]

拒绝好友申请

[SetFriendListener]

设置好友、黑名单相关监听,用于UI层实时感知数据变化并刷新

监听说明

好友监听器的作用:调用方设置好友监听,好友关系的变化会通过OpenIM消息机制实时同步到需要感知的在线用户,包括用户的其他端,调用方根据回调事件做相关的数据处理。

比如用户B在Android端添加用户A为好友,用户A(所有在线的终端)收到B的好友申请,则A调用GetRecvFriendApplicationList获取收到的好友申请列表,刷新界面。同时,用户B在线其他的终端比如PC端也会收到通知,B调用GetSendFriendApplicationList获取发起的好友申请列表,刷新B发出的好友申请列表。

当然也可以利用回调的参数信息,做增量处理,而不用获取全量的好友申请列表。

以用户B申请添加用户A为例

好友及黑名单监听

描述

[OnFriendApplicationAdded]

好友申请列表增加,主动发起者和被动添加者会收到

[OnFriendApplicationDeleted]

好友申请列表删除,主动删除者会收到

[OnFriendApplicationAccepted]

好友申请被同意,主动发起者和被动添加者会收到

[OnFriendApplicationRejected]

好友申请被拒绝,主动发起者和被动添加者会收到

[OnFriendAdded]

好友增加,用户好友增加时会收到

[OnFriendDeleted]

好友删除,用户好友减少时会收到

[OnFriendInfoChanged]

好友信息改变,用户好友信息(比如昵称等)改变时会收到

[OnBlackAdded]

黑名单增加,用户黑名单增加时会收到

[OnBlackDeleted]

黑名单移除,用户黑名单减少时会收到

项目介绍

OpenIM继续领跑开源IM领域,在广大开发者的支持下,目前github star突破9k。在数据泄露、信息外泄、隐私滥用的时代,IM私有化部署需求旺盛。其中,政企协同办公对IM需求猛增,随着信息化技术的迭代升级以及信创产业加速落地和实践,协同办公软件的发展潜力将进一步被释放。“安全可控“逐步成为第一要素。对于社区交友领域,暴露出的隐私安全问题越来越多,私有化部署确保用户数据不泄露。

OpenIM从服务端到客户端SDK开源即时通讯(IM)整体解决方案,可以轻松替代第三方IM云服务,打造具备聊天、社交、办公功能的app。

github地址: https://github.com/OpenIMSDK/Open-IM-Server

开发者中心:https://doc.rentsoft.cn/#/

OpenIM团队

创始团队来自资深IM技术团队,我们致力于用开源技术创造服务价值,打造轻量级、高可用的IM架构,开发者只需简单调用 SDK,即可在应用内构建多种即时通讯及实时音视频互动场景。OpenIM优势:开源,安全,可靠,低成本。对于信息安全重视的电子政务,企业协同办公,OpenIM都是非常好的选择。

从公司成立之初就将“开源”作为核心战略来推进,开源充分体现了自由、平等、分享的互联网精神。

OpenIM邀请全球技术极客参与技术优化,让开发者轻松集成,让每一个应用都具备IM功能,同时考虑企业的接入成本、服务器资源以及最重要的数据安全性和私密性。

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
用户投稿
上一篇 2022年6月27日 06:14
下一篇 2022年6月27日 06:15

相关推荐

  • ios手游模拟器(手游模拟器ios)

    本文主要讲的是ios手游模拟器,以及和手游模拟器ios相关的知识,如果觉得本文对您有所帮助,不要忘了将本文分享给朋友。 哪个iOS模拟器能多开手游账号?可以推荐个好用的模拟器给我吗…

    2022年11月27日
  • 30个无加盟费的项目(茶颜悦色奶茶店加盟费多少)

    茶颜悦色又爆了,8月18日,茶颜悦色南京门店正式开业,开张不到半小时,门店就人满为患,消费者的购买热情十分高涨,而由于人流量过大造成拥堵,茶颜悦色也不得不暂停营业。 当然,这里面排…

    2022年11月27日
  • 短视频策划内容的3个要点(短视频策划内容怎么做)

    短视频在制作时,内容框架非常重要。如果直奔主题,然后结束,聚卓告诉你,这样的短视频已经过时了。现在的短视频需要框架的,但不是任何框架,它需要一种易于理解和消化的框架。而且,现在大多…

    2022年11月27日
  • 推荐48个微商引流推广的方法(微商引流推广的方法有哪些)

    微商引流技能01——同行互推 资源共享,大家才会共赢。加入你是做穴位贴的,你的朋友是做化妆品的,这是两个没有交集的行业,你们可以友情互推,这样每个月的资源就都扩大了一倍,而且这些资…

    2022年11月27日
  • 美团第三季度实现营收626亿元,即时配送订单量增至50亿笔

    新京报讯(记者秦胜南)11月25日,美团发布业绩公告显示,第三季度营收为626亿元,较去年同比增长28.2%,净利润为12.2亿元。第三季度,美团即时配送订单数增长至50亿笔。截至…

    2022年11月27日
  • 乔任梁遗体图片(乔任梁死亡现场照遗体)

    今天小编给各位分享乔任梁遗体图片的知识,其中也会对乔任梁死亡现场照遗体进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! 2016年深夜,乔任梁头戴塑料袋惨死家…

    2022年11月26日
  • 净利润率越高越好吗(净利润率多少合适)

    一、持续增收不增利,平均净利润率首次跌入个位数 2021年,增收不增利依旧是行业主流。具体来看,大部分企业营业收入呈增长态势,E50企业平均同比增速达到17.3%,但是利润增速则明…

    2022年11月26日
  • 计算机网络技术论文(计算机网络技术论文七千字)

    今天小编给各位分享计算机网络技术论文的知识,其中也会对计算机网络技术论文七千字进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! 计算机网络方面的论文3000字…

    2022年11月26日
  • 明日之后怎么加好友(明日之后怎么加好友跨区)

    简要回答 明日之后中玩家可以跟其他玩家进行互动,可以彼此添加好友。如果想要添加好友,此时该怎么进行操作呢明日之后加好友的方式有下面这几种。 01 你可以打开游戏界面,点击聊天框,然…

    2022年11月25日
  • 游戏平台有哪些(游戏平台有哪些)

    简要回答 游戏平台指的是多人通过互联网在线游戏的平台,例如qq游戏,联众世界,浩方电竞平台,VS竞技游戏平台等,只要你下载平台,下载相关游戏,就能实现对战,摆脱了局域网的限制。 详…

    2022年11月25日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息