|
|
|
@ -164,7 +164,7 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
|
|
|
|
|
await hubConnection.start();
|
|
|
|
|
hubConnection.on("OnUpdateUserStatusAsync", changeStatus);
|
|
|
|
|
hubConnection.on("OnDeliveredChatUserAsync", onMsgReceived);
|
|
|
|
|
hubConnection.on("OnSeenChatUserAsync", onChatSeen);
|
|
|
|
|
// hubConnection.on("OnSeenChatUserAsync", onChatSeen);
|
|
|
|
|
|
|
|
|
|
//hubConnection.on("OnUserTypingAsync", onUserTyping);
|
|
|
|
|
// hubConnection.on("OnUserCountAsync", userCountAsync);
|
|
|
|
@ -269,6 +269,7 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<void> onMsgReceived(List<Object?>? parameters) async {
|
|
|
|
|
print("msg Received");
|
|
|
|
|
List<SingleUserChatModel> data = [];
|
|
|
|
|
List<SingleUserChatModel> temp = [];
|
|
|
|
|
for (dynamic msg in parameters!) {
|
|
|
|
@ -279,9 +280,15 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
|
|
|
|
|
data.first.currentUserId = temp.first.targetUserId;
|
|
|
|
|
data.first.currentUserName = temp.first.targetUserName;
|
|
|
|
|
}
|
|
|
|
|
userChatHistory.add(data.first);
|
|
|
|
|
userChatHistory.insert(0, data.first);
|
|
|
|
|
// searchedChats!.forEach((element) {
|
|
|
|
|
// if (element.id == data.first.currentUserId) {
|
|
|
|
|
// var val = element.unreadMessageCount == null ? 0 : element.unreadMessageCount;
|
|
|
|
|
// element.unreadMessageCount = val! + 1;
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
notifyListeners();
|
|
|
|
|
if (isChatScreenActive) scrollToBottom();
|
|
|
|
|
// if (isChatScreenActive) scrollToBottom();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void onUserTyping(List<Object?>? parameters) {
|
|
|
|
|