sendContactMessage method

dynamic sendContactMessage(
  1. List<String> contactList,
  2. String contactName,
  3. BuildContext context
)

Implementation

sendContactMessage(List<String> contactList, String contactName,
    BuildContext context) async {
  debugPrint("sendingName--> $contactName");
  var busyStatus = !profile.isGroupProfile.checkNull()
      ? await Mirrorfly.isBusyStatusEnabled()
      : false;
  debugPrint("sendContactMessage busyStatus--> $busyStatus");
  if (!busyStatus.checkNull()) {
    debugPrint("busy status not enabled");
    var replyMessageId = Constants.emptyString;

    if (isReplying.value) {
      replyMessageId = replyChatMessage.messageId;
    }
    isReplying(false);
    return Mirrorfly.sendContactMessage(
            contactList, profile.jid!, contactName, replyMessageId)
        .then((value) {
      debugPrint("response--> $value");
      ChatMessageModel chatMessageModel = sendMessageModelFromJson(value);
      chatList.insert(0, chatMessageModel);
      scrollToBottom();
      return chatMessageModel;
    });
  } else {
    //show busy status popup
    messageObject = MessageObject(
        toJid: profile.jid.toString(),
        replyMessageId: (isReplying.value) ? replyChatMessage.messageId : Constants.emptyString,
        messageType: Constants.mContact,
        contactNumbers: contactList,
        contactName: contactName);
    if (context.mounted) showBusyStatusAlert(disableBusyChatAndSend, context);
  }
}