Cascata de canais
O objeto channel determina por que canais e por que ordem a mensagem é enviada. Está disponível em Advanced transactional e Advanced promotional, apenas na versão 2.0 da API.
Tabela de canais
Cada chave do objeto channel corresponde a um canal e contém o objeto próprio desse canal.
| CHAVE | OBJETO DO CANAL |
|---|---|
sms |
SMS |
viber |
Viber – transacional / Viber – promocional |
rcs |
RCS |
whatsapp |
Ordem da cascata
A ordem das chaves no pedido é a ordem da cascata. A primeira chave é o canal principal; se a mensagem não puder ser entregue através dele, é utilizado o canal seguinte da lista.
Aqui é tentado primeiro o Viber e depois o SMS. Trocar as duas chaves troca a prioridade - nada mais no pedido se altera.
O SMS não é acrescentado automaticamente ao fim da cascata. Se quiser o SMS como última alternativa, indique explicitamente o objeto sms. Uma cascata apenas com {"viber": {…}} não tem qualquer alternativa.
Se channel for totalmente omitido, a mensagem é enviada como SMS com o remetente predefinido.
Mudança entre canais - expiration
Cada objeto de canal tem o seu próprio expiration - o limite de tempo em segundos após o qual é utilizado o canal seguinte da cascata. Os valores inferiores a 60 são ignorados e substituídos pelo valor predefinido desse canal.
| CANAL | expiration PREDEFINIDO |
|---|---|
viber |
300 |
rcs |
60 |
whatsapp |
180 |
Que texto é utilizado
sms e viber procuram o texto em três sítios; vence o primeiro que não estiver vazio:
| PRIORIDADE | SÍTIO | NOTA |
|---|---|---|
| 1 | number[].text |
texto de um destinatário específico, consulte Valor `number` |
| 2 | channel.sms.text / channel.viber.text |
texto apenas para esse canal |
| 3 | text |
texto de nível superior do pedido |
rcs e whatsapp não leem nenhum deles. O seu conteúdo encontra-se dentro do respetivo objeto de variante (message, template, card, …), pelo que o text de nível superior não tem qualquer efeito sobre eles.
Erros
| TIPO | SIGNIFICADO |
|---|---|
invalid_rcs_variant |
o objeto rcs não contém nenhum ou contém mais do que um de message/file/card/carousel |
invalid_whatsapp_variant |
o objeto whatsapp não contém nenhum ou contém mais do que um de template/otp/message/file/location |
no_recipients |
o pedido não resultou em nenhum destinatário válido |
Todos os tipos de erros da Simple API e da Advanced API podem ser consultados aqui.
Obrigado pelo seu feedback.