Channels & Delivery Architecture¶
Abelo provides a unified messaging layer across conversational and telecom channels, allowing organizations to send messages through channels such as Viber and SMS while managing delivery, fallback, and engagement tracking through a common platform.
1. Supported Messaging Channels¶
graph TD
Outbound["Messaging Channels"]
Outbound --> Viber["Viber Business Messages<br/><small>• Rich Media & Action CTA<br/>• TTL Expiration Window<br/>• Real-time Seen & Clicks</small>"]
Outbound --> SMS["SMS Messaging<br/><small>• Universal Global Reach<br/>• GSM-7 / UCS-2 Encoding<br/>• Carrier Level DLRs</small>"]
Outbound --> WhatsApp["WhatsApp Business Messages<br/><small>Coming soon</small>"]
Viber -.->|If Unreachable / TTL Expired| SMSFallback["Optional SMS Fallback"]
2. Viber Business Messaging¶
Viber Business Messages allow organizations to send rich messages directly to customers through the Viber application, including text, images, and call-to-action (CTA) buttons.
Session & Delivery Lifecycle¶
A Viber message typically follows the lifecycle below:
- Submit: Abelo submits the message payload to the Viber Business Messaging infrastructure. The payload may include text, an image, a CTA button, and a configured Time-to-Live (TTL).
- Delivery: Viber attempts to deliver the message to the recipient's Viber account and registered device.
- Seen: When the recipient opens the conversation and views the message, Abelo records a
message.seenevent when the corresponding event is provided by the channel. - Click: When the recipient interacts with a tracked CTA or link, Abelo records the click event and redirects the recipient to the configured destination URL.
- TTL Expiration: If the message cannot be delivered within the configured TTL, it is marked as
expired. If SMS fallback is enabled, Abelo may subsequently attempt delivery through SMS.
Intelligent SMS Fallback¶
Abelo can use SMS as a fallback channel when a Viber message cannot be delivered.
When SMS fallback is enabled, Abelo may attempt SMS delivery when:
- The recipient does not have an active Viber account; or
- The Viber message expires before it can be delivered.
The fallback message uses the SMS version configured for the campaign or message.
Cost Efficiency¶
When SMS fallback is used, SMS delivery is handled as a separate channel and is subject to the applicable SMS pricing and billing rules.
3. SMS Messaging¶
Abelo supports SMS messaging as a standalone delivery channel and as a fallback option for Viber Business Messages. SMS provides broad reach to mobile users, including recipients who do not have an active Viber account or cannot be reached through Viber.
Universal Character Encoding¶
For SMS messages, Abelo automatically determines the appropriate character encoding based on the message content.
GSM-7¶
GSM-7 is the standard encoding used for supported Latin characters and other characters included in the GSM character set.
A single SMS segment can contain up to 160 GSM-7 characters. Longer messages are split into multiple SMS segments, with the available character capacity per segment reduced when concatenation is required.
UCS-2¶
UCS-2 is used when a message contains characters that cannot be represented using GSM-7, including many Greek, Cyrillic, Arabic, and Asian characters, as well as emojis.
A single UCS-2 SMS segment can contain up to 70 characters. Longer messages are split into multiple segments, with a lower character capacity per segment when concatenation is required.
Encoding Detection¶
Abelo automatically detects when a message requires Unicode encoding and indicates this in the message composer before dispatch.
This allows users to understand when special characters may increase the number of SMS segments—and therefore the cost of delivery.