uni-app实现实时消息SDK插件

本文档介绍了uni-app如何集成anyRTC的实时消息SDK,提供点对点消息、频道消息和呼叫邀请等功能。详细阐述了项目集成步骤、方法回调及事件回调,适用于在线教育、娱乐直播等多种场景。并提供了下载地址和示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

之前的两篇文章我们介绍了用uni-app实现了实时音视频通话这个功能。没有印象的小伙伴们可以看这两个链接。

Android uni-app 封装原生插件

Android uni-app实现音视频通话

更多的消息资讯可以关注 anyRTC开发者官网

1、效果图

先给大家看一下效果,然后我们再继续讲解。

GitHub下载地址

uni-app-rtm demo:点击下载

扫码下载

2、功能介绍

uni-app跨平台实时消息SDK插件,包含点对点消息、频道消息、呼叫邀请等功能。在同一频道下,用户可以接收和发送消息。从下方的状态栏里面可以到频道内的状态变化,包括人员的更新和消息的更新。

支持平台

  • Android
  • ios

应用场景

1、在线教育

在线教育场景中,适用于大班课和小班课,同学可以实时发送消息与老师进行沟通。

2、娱乐直播

在直播环境中,观众可以实时发送弹幕与主播进行互动。

3、对讲

在铁路或者运输的场景中,同一公司,同一部门之间各个员工之间可以在相同的频道下进行沟通,大大提高工作效率,减少沟通成本。

4、语音群聊

在语音聊天的环境下同时可以支持消息沟通。

3、项目集成

快速集成
  • 下载示例工程,前往anyRTC官网注册账号
  • 创建应用,获取应用的App ID。

appid

  • 下载插件示例工程,制作自定义基座,主要步骤如图,证书问题,请参照申请证书说明。

自定义基座

  • 运行自定义基座

运行自定义基座

4、方法回调

1、login(登录rtm)

{“code”: 0}

2、logout(登出rtm)

{“code”: 0}

3、queryPeersOnlineStatus(查询指定⽤户的在线状态)

{“peerOnlineStatus”:[{“peerId”:“123”,“state”:1}],“code”:0}

4、subscribePeersOnlineStatus(订阅指定单个或多个⽤户的在线状态)

{“code”: 0}

5、unsubscribePeersOnlineStatus(订阅指定单个或多个用户的在线状态)

{“code”: 0}

6、queryPeersBySubscriptionOption(获取某特定内容被订阅的membersOnSuccess用户列表)

{“peers”:[“123”,“456”],@“code”:0}

peers为订阅用户id数组

7、setLocalUserAttributes(全量设置本地用户的属性)

{“code”: 0}

8、addOrUpdateLocalUserAttributes(添加或更新本地用户的属性)

{“code”: 0}

9、deleteLocalUserAttributesByKeys(删除本地用户的指定属性)

{“code”: 0}

10、clearLocalUserAttributes(清空本地用户的所有属性)

{“code”: 0}

11、getUserAttributes(获取指定用户的全部属性)

{“userAttributesList”:{“age”:23,“name”:“Jerry”},“userId”:“123”, “code”:0}

12、getUserAttributesByKeys(获取指定用户指定属性名的属性)

{“userAttributesList”:{“age”:23,“name”:“Jerry”},“userId”:“123”, “code”:0}

13、setChannelAttributes(全量设置某指定频道的属性)

{“code”: 0}

14、addOrUpdateChannelAttributes(添加或更新某指定频道的属性)

{“code”: 0}

15、deleteChannelAttributesByKeys(删除某指定频道的指定属性)

{“code”: 0}

16、clearChannelAttributes(清空某指定频道的属性)

{“code”: 0}

17、getChannelAttributes(查询某指定频道的全部属性)

{“channelAttributes”:{“age”:23,“name”:“Jerry”}, “code”:0}

18、getChannelAttributesByKeys(查询某指定频道指定属性名的属性)

{“channelAttributes”:{“age”:23,“name”:“Jerry”}, “code”:0}

listDic 例如:{“age":23,“name”:“Jerry”}

19、getChannelMemberCount(查询单个或多个频道的成员人数)

{“memberCounts”:[{“channelId”:“909090”,"count”:2}],“code”:0}

20、join(加入频道)

{“code”: 0}

21、leave(离开频道)

{“code”: 0}

22、sendChannelMessage(发送频道消息)

{“code”: 0}

23、getMembers(获取频道成员列表)

{“members”:[{“channelId”:“909090”,“userId”:“123456”}],“code”:0}

24、sendLocalInvitation、acceptRemoteInvitation、refuseRemoteInvitation、cancelLocalInvitation

5、事件回调

1、RtmClientListener

1、onConnectionStateChanged( SDK 与 anyRTC rtm系统的连接状态发生改变回调 )

{
   "rtmEvent":"onConnectionStateChanged","state":0,
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值