Push Notifications
Abrova Chat automatically sends push notifications to offline participants via Abrova Push — built-in template variables, per-event templates, locale-aware delivery.
AbrovaChat automatically sends push notifications to offline participants via AbrovaPush.
How it works#
- Event occurs — Message, reaction, pin, or other chat event is triggered.
- Check presence — Who is currently online in the room?
- Offline users get push — Push notification sent via AbrovaPush to offline participants.
- User settings — Users who turned these pushes off or muted the room are skipped.
- Localized template — Template rendered in the recipient's locale.
Setup#
Three steps to wire push notifications:
- Create a template in AbrovaPush — In Abrova Console, open AbrovaPush → Templates and create a notification template. Use the built-in variables listed below to personalise the content.
- Configure push in AbrovaChat Settings — In Abrova Console, open Abrova Chat and click Notification Settings, then link your AbrovaPush template. You can set a single default template or per-event templates.
- Set participant locale when creating rooms — When adding participants, include their
localefield (e.g."fa","en"). AbrovaPush uses this to select the correct translation of your template.
Built-in Template Variables#
These variables are automatically populated by AbrovaChat and available in every push template.
| Option | Type | Required | Description |
|---|---|---|---|
| senderName | String | - | Display name of who triggered the event (e.g. "Alice") |
| recipientName | String | - | Display name of the push recipient (e.g. "Bob") |
| roomName | String | - | Room name, or externalId, or room ID (e.g. "Order #456") |
| messagePreview | String | - | First 100 chars of the message |
| messageType | String | - | Message type (uppercase, e.g. "TEXT") |
| roomId | String | - | AbrovaChat internal room ID |
| externalRoomId | String | - | Your app's external room ID |
| emoji | String | - | Emoji (reaction events only) |
| participantName | String | - | Name of participant who joined |
Push Event Types#
Every chat event that produces an offline push notification.
| Option | Type | Required | Description |
|---|---|---|---|
| new_message | - | - | New text message from another user |
| mention | - | - | User was @mentioned in a message |
| reaction | - | - | Someone reacted to your message |
| file_shared | - | - | Image or file message sent |
| message_pinned | - | - | A message was pinned in the room |
| room_created | - | - | Room was created, participants notified |
| participant_joined | - | - | Someone was added to the room |
| participant_removed | - | - | Someone left or was removed from the room |
Users can turn chat pushes off, get them only when mentioned, or mute a room. See Notification Settings.
Variable Merge Priority#
When the same variable key exists at multiple levels, the highest-priority source wins:
participant.metadata.pushVariables → room.metadata.pushVariables → message.metadata.pushVariables → Built-in variables (Highest)
Use this to layer defaults: set per-room defaults, override per-message when needed, and let built-in variables always win for system fields like senderName.