manualMessage method
dynamic
manualMessage(
- dynamic data
Implementation
manualMessage(dynamic data) {
try {
if (kDebugMode) {
print('socket:: data $data');
}
var message = Message.fromJson(data['reply']);
if (kDebugMode) {
print('socket:: message $message');
print('socket:: messageId ${message.id}');
}
if (data['ticketId'] == session.id) {
var messageExists =
value.messages?.any((e) => e.id == message.id) ?? false;
var messages = messageExists
? value.messages?.map((e) => e.id == message.id ? message : e)
: [...?value.messages, message];
ChatHistoryController().updateUnreadMessages(session.id ?? '');
// messages.re
if (kDebugMode) {
print('socket:: supervisedMessage $message');
}
// messages.sort
value = value.copyWith(isLoading: false, messages: messages?.toList());
Future.delayed(const Duration(milliseconds: 500), () {
scrollController.jumpTo(scrollController.position.maxScrollExtent);
});
}
} catch (error) {
if (kDebugMode) {
print('socket:: error $error');
print(error);
}
}
}