• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

关于融云聊天室KV-值的正确使用

android 搞代码 3年前 (2022-03-02) 24次浏览 已收录 0个评论

对于融云聊天室KV 值的正确应用

在应用融星散成即时通讯的过程中,依据产品业务逻辑,咱们应用了融云聊天室场景,因为咱们次要做的是直播聊天室的业务;在应用聊天室的过程中,理解到融云这边是有针对聊天室属性做解决的,这样的话,更加不便产品的某些性能点的实现,比如说 人数的动态变化等等;

现就我这边理解到的聊天室的KV 对大家做一个阐明,增进对KV 应用的理解; 首先,要获取聊天室的属性,咱们当然应该退出聊天室,退出聊天室的形式如下所示:

 RongIM.getInstance().joinChatRoom(roomId, 20, new RongIMClient.OperationCallback() {
        @Override
        public void onSuccess() {
        }

        @Override
        public void onError(RongIMClient.ErrorCode errorCode) {
        }
    });
    

以上办法无需多言,调用即可退出聊天室,具体参数文档能够参考融云文档。

当然,要获取聊天室属性获取之前,必定要晓得如何设置聊天室属性的,以下形式次要展现客户端的设置形式:

 
   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) {
    
}

});

接下来就是获取的形式了,这块是我在集成过程中破费工夫比拟久的,在获取之前,须要先理解融云对于聊天室KV 的整体流程设置:

  • 退出聊天室之后,通过设置的监听 setKVStatusListener 来获取到服务KV 的变动,而后在收到变动之后,在调用 getChatRoomEntry 来获取KV 值即可 。

    留神:前提条件是设置监听获取到KV 变动之后,才去获取,因为这个变动是服务收回的,也就是说这是一个告诉状态;

    监听的设置形式:

       RongIMClient.getInstance().setKVStatusListener(new RongIMClient.KVStatusListener() {
          @Override
          public void onChatRoomKVSync(String roomId) {
              
          }
    
          @Override
          public void onChatRoomKVUpdate(String roomId, Map<String, String> chatRoomKvMap) {
    
          }
    
          @Override
          public void onChatRoomKVRemove(String roomId, Map<String, String> chatRoomKvMap) {
    
          }
      });
      
    

    当服务的KV 发送变动时候,会在 onChatRoomKVUpdate 中回调到的,回调中的Map 就是变动得KV 值,当然能够用户被动调用来进行获取,形式如下:

          RongIMClient.getInstance().getAllChatRoomEntries(roomId, new RongIMClient.ResultCallback<Map<String, String>>() {
          @Override
          public void onSuccess(Map<String, String> stringStringMap) {
             
          }
    
          @Override
          public void onError(RongIMClient.ErrorCode e) {
              
          }
      });
      

通过以上步骤即可实现聊天室属性的设置,以及获取;


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:关于融云聊天室KV-值的正确使用

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址