sendTextMessage method
void
sendTextMessage(})
Implementation
void sendTextMessage(String text,
{NIMMessage? replyMsg,
List<String>? pushList,
AitContactsModel? aitContactsModel,
String? title}) async {
var aitMap;
if (aitContactsModel?.aitBlocks.isNotEmpty == true) {
aitMap = aitContactsModel?.toMap();
}
var customData =
ChatMessageHelper.getMultiLineMessageMap(title: title, content: text);
var msgBuildResult = (title?.isNotEmpty == true)
? (await MessageBuilder.createCustomMessage(
sessionId: sessionId,
sessionType: sessionType,
attachment: NIMCustomMessageAttachment(data: customData)))
: (await MessageBuilder.createTextMessage(
sessionId: sessionId,
sessionType: sessionType,
text: text,
));
if (msgBuildResult.isSuccess && msgBuildResult.data != null) {
if (sessionType == NIMSessionType.team &&
pushList != null &&
pushList.isNotEmpty) {
msgBuildResult.data!.memberPushOption = NIMMemberPushOption(
forcePushContent: title ?? text, forcePushList: pushList);
}
if (title?.isNotEmpty == true) {
msgBuildResult.data!.pushContent = title;
}
if (aitMap != null) {
msgBuildResult.data!.remoteExtension = {
ChatMessage.keyAitMsg: aitMap,
};
}
sendMessage(msgBuildResult.data!, replyMsg: replyMsg);
}
}