sendMessage method

Future<ChatMessage> sendMessage(
  1. ChatMessage message
)

发消息

Note 对于语音、图片、视频等附件消息,SDK会自动上传附件。 可以使用 ChatOptions.serverTransfer 设置是否将附件上传到聊天服务器。

添加发送状态监听使用 ChatManager.addMessageEvent.

Param message 需要发送的消息 ChatMessage.

Throws 如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

Implementation

Future<ChatMessage> sendMessage(ChatMessage message) async {
  try {
    message.status = MessageStatus.PROGRESS;
    Map result = await platform_interface.Client.instance.chatManager
        .callNativeMethod(ChatMethodKeys.sendMessage, message.toJson());
    ChatError.hasErrorFromResult(result);
    ChatMessage msg = ChatMessage.fromJson(result[ChatMethodKeys.sendMessage]);
    message.from = msg.from;
    message.to = msg.to;
    message.status = msg.status;
    return message;
  } catch (e) {
    message.status = MessageStatus.FAIL;
    rethrow;
  }
}