1 package com.netease.nimlib.sdk.chatroom.model;
3 import android.text.TextUtils;
15 private static final String TAG =
"EnterChatRoomData";
17 private String roomId;
19 private boolean enableLbs;
24 private boolean independentMode;
33 private String appKey;
35 private String account;
46 private String avatar;
48 private Map<String, Object> extension;
50 private Map<String, Object> notifyExtension;
54 private String notifyTargetTags;
60 private Integer loginAuthType;
62 private String loginExt;
91 String abTestConfig = ABTestConfigHelper.getChatRoomLinkConfig();
92 if (TextUtils.isEmpty(abTestConfig)) {
95 NimLog.w(TAG,
"abTestConfig as isEnableLbs: " + abTestConfig);
101 this.enableLbs = enableLbs;
108 public void setEnableLbs(
boolean enableLbs, String account, String token,
boolean isAnonymousMode) {
109 this.enableLbs = enableLbs;
110 if (independentMode) {
130 this.appKey = appKey;
166 this.avatar = avatar;
184 this.extension = extension;
193 return notifyExtension;
202 this.notifyExtension = notifyExtension;
226 return notifyTargetTags;
234 this.notifyTargetTags = notifyTargetTags;
243 return independentMode;
273 return loginAuthType;
281 this.loginAuthType = loginAuthType;
297 this.loginExt = loginExt;
301 return chatRoomSpatialLocation;
305 this.chatRoomSpatialLocation = chatRoomSpatialLocation;
310 return chatRoomAuthProvider;
316 this.chatRoomAuthProvider = chatRoomAuthProvider;
320 return independentModeCallback;
324 return antiSpamConfig;
328 this.antiSpamConfig = antiSpamConfig;
339 this.independentMode =
true;
340 this.independentModeCallback = cb;
345 this.account = account;
359 this.independentMode =
true;
360 this.independentModeCallback = cb;
365 this.roomId = roomId;
369 if (TextUtils.isEmpty(roomId)) {
373 Long.parseLong(roomId);
375 }
catch (NumberFormatException e) {
Created by huangjun on 2015/12/28.
聊天室独立登录模式的回调函数,用于上层 APP 向 SDK 提供数据
void setLoginAuthType(Integer loginAuthType)
设置鉴权方式
Map< String, Object > getExtension()
获取进入聊天室后展示的扩展字段
void setNotifyTargetTags(String notifyTargetTags)
设置 登录登出通知的目标标签
void setAntiSpamConfig(AntiSpamConfig antiSpamConfig)
ChatRoomIndependentCallback getIndependentModeCallback()
String getAvatar()
获取聊天室展示的头像
EnterChatRoomData(String roomId)
String getNick()
获取聊天室展示的昵称
AntiSpamConfig getAntiSpamConfig()
boolean isAnonymousMode()
ChatRoomSpatialLocation getChatRoomSpatialLocation()
String getNotifyTargetTags()
获取 登录登出通知的目标标签
void setIndependentMode(ChatRoomIndependentCallback cb, String account, String token)
设置聊天室独立模式
String getAccount()
获取独立登录模式的用户账号
使用进入聊天室时使用动态token方式时,SDK通过该接口从App获取动态token
void setAvatar(String avatar)
设置聊天室展示的头像
String getAppKey()
获取聊天室appKey
String getLoginExt()
获取登录自定义字段
void setExtension(Map< String, Object > extension)
设置进入聊天室后展示的扩展字段,长度限制4k
void setLoginExt(String loginExt)
设置登录自定义字段
Integer getLoginAuthType()
获取鉴权方式
void setTags(String tags)
设置 登录标签
void setRoomId(String roomId)
设置聊天室id
String getToken()
获取独立登录模式的用户密码
Map< String, Object > getNotifyExtension()
获取聊天室通知开发者扩展字段
void setIndependentModeInternal(String account, String token, boolean isAnonymousMode)
void setNick(String nick)
设置聊天室展示的昵称,可选字段,如果不填则直接使用NimUserInfo的数据
void setAppKey(String appKey)
设置聊天室appKey,独立登录模式下,才启用, 不传则使用IM对应的appKey, 需要保证roomId与appKey的对应关...
String getRoomId()
获取聊天室id
void setChatRoomAuthProvider(ChatRoomAuthProvider chatRoomAuthProvider)
void setIndependentMode(ChatRoomIndependentCallback cb, String account, String token, boolean isAnonymousMode)
设置聊天室独立模式
void setEnableLbs(boolean enableLbs, String account, String token, boolean isAnonymousMode)
兼容旧接口,enableLbs 只控制是否通过 LBS 获取聊天室链路。 account/token/isAnonymousMode 仅在独立模式...
ChatRoomAuthProvider getChatRoomAuthProvider()
boolean isIndependentMode()
是否是独立登录聊天室
void setEnableLbs(boolean enableLbs)
void setChatRoomSpatialLocation(ChatRoomSpatialLocation chatRoomSpatialLocation)
void setNotifyExtension(Map< String, Object > notifyExtension)
设置聊天室通知开发者扩展字段,长度限制1k