sendCustomMessage method

  1. @override
Future<TUIValueCallBack<TUIRoomCustomMessage>> sendCustomMessage(
  1. TUIRoomCustomMessage message
)
override

10.4 Send Custom Message

Implementation

@override
Future<TUIValueCallBack<TUIRoomCustomMessage>> sendCustomMessage(TUIRoomCustomMessage message) async {
  final jsonParam = jsonEncode([message]);
  final result = await RoomEngineNative.callAPI('sendCustomMessage', jsonParam);
  if (result.code != TUIError.success || result.data == null) {
    return TUIValueCallBack(code: result.code, message: result.message);
  }
  final List<dynamic> dataList = jsonDecode(result.data!);
  if (dataList.isEmpty) {
    return TUIValueCallBack(code: TUIError.errInvalidParameter, message: 'message is empty');
  }
  final TUIRoomCustomMessage resMessage = TUIRoomCustomMessage.fromJson(dataList.first);
  return TUIValueCallBack(code: result.code, message: result.message, data: resMessage);
}