sendContactMessage method
Implementation
sendContactMessage(List<String> contactList, String contactName) async {
if (!availableFeatures.value.isContactAttachmentAvailable.checkNull()) {
DialogUtils.showFeatureUnavailable();
return;
}
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 = "";
if (isReplying.value) {
replyMessageId = replyChatMessage.messageId;
}
isReplying(false);
return Mirrorfly.sendMessage(
messageParams: MessageParams.contact(
toJid: profile.jid.checkNull(),
replyMessageId: replyMessageId,
topicId: topicId,
contactMessageParams: ContactMessageParams(
name: contactName, numbers: contactList)),
flyCallback: (response) {
if (response.isSuccess) {
LogMessage.d("contact message", response.data.toString());
debugPrint("response--> ${response.data}");
scrollToBottom();
updateLastMessage(response.data);
} else {
LogMessage.d("sendMessage", response.errorMessage);
}
});
} else {
messageObject = MessageObject(
toJid: profile.jid.toString(),
replyMessageId: (isReplying.value) ? replyChatMessage.messageId : "",
messageType: Constants.mContact,
contactNumbers: contactList,
contactName: contactName);
showBusyStatusAlert(disableBusyChatAndSend);
}
}