Introduction
Getting Started
Send API
Management API
ChatApps Groups
Webhooks Configuration API
Chat Apps - Callbacks Reference
Chat Apps - Additional Information

Wavecell allows you to fall back and orchestrate messages between different channels.
This can be done at the subaccount level for all messages, please contact your account manager to set this up.
Fallbacks can also be defined when sending a message using our Chat Apps API, this will overwrite any setting that is already in place at the subaccount level.

Here is the list of channel and status that we support:

  • channel { Sms, WhatsApp, Facebook, GoogleRCS, Viber, Line, WeChat, Zalo }

  • status { Accepted, Sent, Delivered, Read }


Here is how to set your fallbacks when calling the API:
{
    "channels": [
        { "channel": "WhatsApp", "fallbackAfter": 60, "successStatus": "Read" },
        { "channel": "Viber", "fallbackAfter": 60, "successStatus": "Delivered" },
        { "channel": "SMS" }
    ],
    
    "user": {
        "msisdn": "+65000000"
    },
    "type": "text",
    
    "content": {
        "text": "Hello World!",
        "sms": {
            "encoding": "AUTO",
            "source": "SENDERID"
        }
    }
}

In the example above, you are sending your message on WhatsApp first, with a fallback after 60 seconds, in case this message is not read.
If the fallback is triggered, you are then sending to Viber and defining a new fallback after 60 seconds, in case the message is not delivered.
In this case, the last channel, SMS will be triggered.

Let’s take a more realistic example:

{
    "channels": [
        { "channel": "WhatsApp", "successStatus": "Accepted" },
        { "channel": "SMS" } 
        ],
    
    "user": {
        "msisdn": "+65000000"
    },
    "type": "text",
    
    "content": {
        "text": "Hello World!",
        "sms": {
            "encoding": "AUTO",
            "source": "SENDERID"
        }
    }
}

In this case, you are requesting this message to be sent to WhatsApp first and fallback to SMS, only in case WhatsApp reject the message.
This is a great setting if you are not sure if a phone number is registered on WhatsApp or not.

You can also use this mechanism to define a single channel, for example:

{
    "channels": [ { "channel": "WhatsApp" } ],
    
    "user": {
        "msisdn": "+65000000"
    },
    "type": "text",
    
    "content": {
        "text": "Hello World!",
        "sms": {
            "encoding": "AUTO",
            "source": "SENDERID"
        }
    }
}

Important, please make sure that your fallback settings are inline with the channels you are using.

Here are the channels that support Delivered status: Sms, WhatsApp, Facebook, GoogleRCS, Viber, Line, Zalo
Here are the channels that support Read status: WhatsApp, Facebook, GoogleRCS