Enviar un mensaje con Failover

Si se rechaza un mensaje enviado con Messages API de Vonage, se pueden definir mensajes de conmutación por error para que se envíen en su lugar. La conmutación por error se puede realizar desde cualquier canal o tipo de mensaje a cualquier otro canal o tipo de mensaje; sin embargo, el siguiente ejemplo muestra la conmutación por error de RCS a SMS.

Ejemplo

A continuación encontrará la descripción de todas las variables utilizadas en cada fragmento de código:

ClaveDescripción
VONAGE_APPLICATION_ID

The Vonage Application ID.

VONAGE_PRIVATE_KEY_PATH

Private key path.

TO_NUMBER

The number you are sending the to in E.164 format. For example 447700900000.

RCS_SENDER_ID

The sender ID for the RCS message.

JWT

Used to authenticate your request. See Authentication for more information, including how to generate a JWT.

SMS_SENDER_ID

The alphanumeric string that represents the name or number of the organization sending the message.

MESSAGES_API_URL

There are two versions of the API, each with their own endpoints. For production the previous Messages API endpoint was https://api.nexmo.com/v0.1/messages, the new one is https://api.nexmo.com/v1/messages. For sandbox testing the Messages API endpoint is https://messages-sandbox.nexmo.com/v0.1/messages or https://messages-sandbox.nexmo.com/v1/messages, depending on which version you have set in the sandbox dashboard.

Requisitos previos

Si no tiene una solicitud, puede crear uno. Asegúrese también de configure sus webhooks.

Escriba el código

Añada lo siguiente a send-message-with-failover.sh:

curl -X POST "${MESSAGES_API_URL}" \
  -H "Authorization: Bearer "$JWT\
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -d $'{
    "to": "'${MESSAGES_TO_NUMBER}'",
    "from": "'${RCS_SENDER_ID}'",
    "channel": "rcs",
    "message_type": "text",
    "text": "This is an RCS text message sent via the Vonage Messages API",
    "failover": [
      {
        "to": "'${MESSAGES_TO_NUMBER}'",
        "from": "'${SMS_SENDER_ID}'",
        "channel": "sms",
        "message_type": "text",
        "text": "This is an SMS sent using the Vonage Messages API."
      }
    ]
  }'

Ver fuente completa

Ejecute su código

Guarde este archivo en su máquina y ejecútelo:

bash send-message-with-failover.sh

Pruébalo

Al ejecutar el código se envía un mensaje RCS al número de destino; si ese mensaje es rechazado, se enviará en su lugar un mensaje SMS.