sendTextMessage method

dynamic sendTextMessage()

Implementation

sendTextMessage() {
  String controllerText = textEditingController.text;
  AIAssistBotMessage botMessage = AIAssistBotMessage(
      message: textEditingController.text,
      sentStatus: AIMessageStatus.inProgress,
      id: getUniqueMessageId(),
      isSentByMe: true,
      sentAt: DateTime.now());

  textEditingController.clear();
  update();

  addElement(botMessage);

  CometChat.askBot(
      user != null ? user!.uid : group!.guid,
      user != null ? ReceiverTypeConstants.user : ReceiverTypeConstants.group,
      aiBot.uid,
      controllerText,
      configuration: apiConfiguration, onSuccess: (String val) {
    botMessage.sentStatus = AIMessageStatus.sent;
    updateElement(botMessage);
    AIAssistBotMessage retMessage = AIAssistBotMessage(
        message: val,
        sentStatus: AIMessageStatus.sent,
        id: getUniqueMessageId(),
        isSentByMe: false,
        sentAt: DateTime.now());
    addElement(retMessage);
  }, onError: (_) {
    botMessage.sentStatus = AIMessageStatus.error;
    updateElement(botMessage);
  });
}