Delivery receipt
Delivery receipt is a feature that allows users to know whether their messages have been successfully delivered to other users in the channel. Once the rest of the users in the channel receive a push notification of the message or see the message in the channel list view, it will be marked as delivered. The delivery receipt appears in each message cell of the SBUChannelViewController
class. If a user’s message has been delivered to all users of the channel, a double-tick icon will appear above the message’s timestamp. Delivery receipt is only visible to the sender of the message.
The delivery status of a message is displayed through the stateImageView
of SBUMessageStateView
, which is either in the SBUUserMessageCell
class or the SBUFileMessageCell
class depending on the type of the message.
Note : In order to use this feature, you must first create a channel and enable the chat service. To learn how to allow users to chat in a channel, refer to Chat in a channel.
Prerequisite
To use delivery receipt, Notification Service Extension
should be implemented in advance to receive the content of your remote notifications before they are displayed on the users' devices, allowing the SDK to update the notification payload.
Requirements
To implement Notification Service Extension
to your iOS client app, create an App Group to combine your app and extension.
- Your app is developed with iOS 10.0 or later.
- A remote notification is implemented and configured to display an alert.
- The payload received from the remote notification includes the
mutable-content
key with the value set to 1.
Note: To enable
mutable-content
, go to the Settings > Application > Notifications > Push notification credentials on your dashboard. To learn more about the implementation ofNotification Service Extension
, see the delivery receipt page in Chat SDK.
Customize the UI for delivery receipt
You can customize the UI for delivery receipt using the SBUMessageCellTheme
in the SBUTheme
and through the iconDoneAll
property of the SBUIconSet
.
SBUMessageCellTheme
The following table shows a customizable theme property of delivery receipt.
Category | Property | Description |
---|---|---|
Message state | deliveryReceiptStateColor | The color of the delivery receipt state element. |
SBUIconSet
The following table shows a customizable delivery receipt icon.
Icon name | Image | Description |
---|---|---|
icon_done_all | An icon used to indicate that a message has been delivered to all members of a channel. |
Note : The same double-tick icon is used for both read receipt and delivery receipt. The only difference is the color of the icon. Default icon colors used for delivery receipt are
onlight_03
forLight
theme, andondark_03
forDark
theme.