关于音视频:融云聊天室属性-kv

5次阅读

共计 1310 个字符,预计需要花费 4 分钟才能阅读完成。

近期又又又加需要了,领导想要聊天室中的所有人看到的点播视频的进度都是雷同的,由房主来操作进度条,其他人追随房主的进度条进行视频进度条的调整,以前的逻辑是大家看到的视频进度都是依据本人的操作来,最开始的技术上应用自定义音讯, 然而起初后进入聊天室的成员无奈收到自定义音讯,束手无策几分钟后,在官网找个电话:融云官网:https://www.rongcloud.cn/ 电话征询后,举荐应用聊天室属性,概念很生疏,但理解了个大略。

应用过程

房主设置属性值,其余角色获取 kv 值依据 kv 进行进度条的调整。

  1. 房主设置进度条属性

RongIMClient.getInstance().setChatRoomEntry(chatRoomId, key, value, sendNotification, isAutoDel, notificationExtra, new RongIMClient.OperationCallback() {

/**

  • 胜利回调

*/
@Override
public void onSuccess() {

}

/**

  • 失败回调
  • @param errorCode 错误码

*/
@Override
public void onError(RongIMClient.ErrorCode errorCode) {

}
});

2. 其余端监听属性

RongIMClient.getInstance().setKVStatusListener(new RongIMClient.KVStatusListener() {
/**

  • 退出聊天室胜利后,SDK 默认从服务端同步 KV 列表,同步实现后触发

*

  • @param roomId 聊天室 Id

*/
@Override
public void onChatRoomKVSync(String roomId) {

}

/**

  • 更新时全量返回 KV 属性,更新蕴含新增、批改

*

  • @param roomId       聊天室 Id
  • @param chatRoomKvMap 发生变化的 KV

*/
@Override
public void onChatRoomKVUpdate(String roomId, Map<String, String> chatRoomKvMap) {
}

/**

  • KV 被删除时触发

*

  • @param roomId       聊天室 Id
  • @param chatRoomKvMap 被删除的 KV

*/
@Override
public void onChatRoomKVRemove(String roomId, Map<String, String> chatRoomKvMap) {
}
});

相干 api 查看:https://docs.rongcloud.cn/v4/views/im/noui/guide/chatroom/manage/key/set/android.html

应用总结

所有操作都要基于 sdk 并且要在退出聊天室后。1. 能够在服务端设置客户端获取。3. 然而每个聊天室中,最多容许设置 100 个属性信息,以 Key-Value 的形式进行存储。4. 每个聊天室中,每秒钟最多容许操作 Key-Value 100 次。5. 聊天室销毁后,聊天室中的自定义属性同时销毁。6. 能够配合 SharedPreferences 或者 MMKV 等进行本地存取。

正文完
 0