addAttributes method
设置自定义聊天室属性。
Param roomId
聊天室 ID。
Param attributes
要添加的聊天室属性。属性采用键值格式。
Param deleteWhenLeft
退出聊天室时是否删除该成员设置的聊天室属性。
Param overwrite
是否覆盖其他人设置的相同键的属性。
Return ' failureKeys map '以键值格式返回,其中键是属性键,值是失败的原因。
Throws 如果有异常会在这里抛出,包含错误码和错误描述,详见 EMError。
Implementation
Future<Map<String, int>?> addAttributes(
String roomId, {
required Map<String, String> attributes,
bool deleteWhenLeft = false,
bool overwrite = false,
}) async {
Map req = {
"roomId": roomId,
"attributes": attributes,
"autoDelete": deleteWhenLeft,
"forced": overwrite,
};
Map result = await _channel.invokeMethod(
ChatMethodKeys.setChatRoomAttributes,
req,
);
try {
EMError.hasErrorFromResult(result);
return result[ChatMethodKeys.setChatRoomAttributes]?.cast<String, int>();
} on EMError catch (e) {
throw e;
}
}