Skip to main content

Group channel read receipt

Users can request read receipts for messages they send. After sending a request, the sender can see how many recipients have read the message.

Send a read receipt response

When a group message is received, respond with a read receipt by calling channel.sendReadReceiptResponse().

Code example

Dart
final channel = GroupChannel('<group-id>');
await channel.sendReadReceiptResponse(
['<message-uid-1>', '<message-uid-2>'],
(error) {
if (error == null) {
print('Read receipt sent');
}
},
);

Listen for read receipt responses

Register a MessageHandler to receive read receipt events:

Dart
NCEngine.addMessageHandler('group-receipt-handler', MessageHandler(
onMessageReceiptResponse: (event) {
print('Read receipts received: ${event.responses}');
},
));

Get read receipt info

Query how many group members have read specific messages:

Dart
final channel = GroupChannel('<group-id>');
await channel.getMessageReadReceiptInfo(
['<message-uid-1>'],
(receiptInfoList, error) {
if (error == null) {
print('Read receipt info: $receiptInfoList');
}
},
);