Message Receipts
August 9, 2023 · View on GitHub
‼️ MUST ENABLE this feature for your Connect instance
Render and send read/delivered message receipts. Enabled by default in ChatInterface + ChatJS
Message receipts use sendEvent API for sending Read/Delivered events

Reference
- Initial release date: 12/29/2022
- Admin Guide Documentation
- Launch Announcement
Implementation Resources
- Official Docs: Enabling Message Receipts Documentation
- ParticipantService API Reference: SendEvent
- ParticipantService API Reference: Receipt
- ParticipantService API Reference: MessageMetadata
Configuration
Disable Message Receipts
Enabling/disable message-receipts (Read/Delivered) for messages in setGlobalConfig():
connect.ChatSession.setGlobalConfig({
loggerConfig: { /* ... */ },
/* ... */
features: {
messageReceipts: {
shouldSendMessageReceipts: true, // DEFAULT: true, set to false to disable Read/Delivered receipts
}
}
});
Custom Throttle Time
To customize wait time before sending read/delivered receipt, set the throttle in global config:
connect.ChatSession.setGlobalConfig({
loggerConfig: { /* ... */ },
/* ... */
features: {
messageReceipts: {
shouldSendMessageReceipts: true, // DEFAULT: true
throttleTime: 5000 //default throttle time - time to wait before sending Read/Delivered receipt.
}
}
});
Related Code Changes
Refer to PR #80 for related code changes. Note-able files are listed below:
index.js: enable/disable or set throttling time for sending message-receiptsChatTranscriptor.js+Utils.js: update the model to parse API response and find read/delivered receiptChatMessage.js: usereact-intersection-observerto send read receipt and handle display logicChatSession.js: add read/delivered eventHandlers for ChatJS handshake and sending receipt for last messageChatJS: use latest version with updated feature configuration