setReceipts method
Implementation
@override
setReceipts(MessageReceipt receipt) {
for (int i = 0; i < list.length; i++) {
Conversation conversation = list[i];
if (conversation.conversationType == ReceiverTypeConstants.user &&
receipt.sender.uid == ((conversation.conversationWith as User).uid)) {
BaseMessage? lastMessage = conversation.lastMessage;
//Check if receipt type is delivered
if (lastMessage != null &&
lastMessage.deliveredAt == null &&
receipt.receiptType == ReceiptTypeConstants.delivered &&
receipt.messageId == lastMessage.id) {
lastMessage.deliveredAt = receipt.deliveredAt;
list[i].lastMessage = lastMessage;
update();
break;
} else if (lastMessage != null &&
lastMessage.readAt == null &&
receipt.receiptType == ReceiptTypeConstants.read &&
receipt.messageId == lastMessage.id) {
//if receipt type is read
lastMessage.readAt = receipt.readAt;
list[i].lastMessage = lastMessage;
update();
break;
}
}
}
}