Este tutorial muestra cómo usar Agentic Journey en Chat App Message Service para construir un flujo de trabajo de entrega multicanal de mensajes con contraseña de un solo uso (OTP).
Contexto
A finales de 2023, WhatsApp superaba los 2 mil millones de usuarios activos en casi 200 países y regiones. Dado que su sistema de cuentas se basa en números de teléfono, esta plataforma es un canal muy eficaz para llegar a los usuarios. Por ello, muchas empresas priorizan WhatsApp al enviar mensajes de contraseña de un solo uso (OTP), notificaciones y campañas de marketing a sus usuarios globales.
Sin embargo, las empresas con una base de usuarios global suelen notar que depender exclusivamente de WhatsApp para entregar OTP genera resultados insatisfactorios.
Esto se debe a dos razones principales:
En primer lugar, aunque las OTP, las notificaciones y los mensajes de marketing se envían por canales como SMS, correo electrónico o aplicaciones de mensajería instantánea, difieren fundamentalmente en propósito, contenido y expectativas del usuario. El objetivo de una OTP es completar una verificación de identidad, generalmente en menos de un minuto. Esto exige mayor precisión y puntualidad en el mensaje, mientras que los criterios para considerar exitosa la entrega son muy simples.
En segundo lugar, si bien WhatsApp es popular a nivel mundial, su penetración varía significativamente según el país. La aplicación de mensajería instantánea preferida también cambia por región. Esta variación implica que WhatsApp no es la opción principal para los usuarios de ciertos países, lo cual afecta negativamente la entrega de mensajes OTP.
Por consiguiente, al atender a una base de usuarios global, un enfoque de canal único basado solo en WhatsApp resultará insuficiente. Para superar esto, las empresas deben "llegar a los usuarios donde estén" y cubrir todos los canales de comunicación principales. Pero, ¿cómo identificar el país de una lista masiva de números telefónicos y enrutar los mensajes por varios canales en consecuencia?
Solución
Use Agentic Journey en Alibaba Cloud Chat App Message Service para identificar rápidamente las regiones de los números telefónicos y enviar mensajes por múltiples canales.
Chat App Message Service es un potente motor de mensajería de Alibaba Cloud que ayuda a las empresas a llegar a sus usuarios de forma eficaz. Permite integrarse fácilmente con plataformas de mensajería globales como WhatsApp, Viber, Messenger e Instagram, lo que mejora la interacción mediante tipos de mensajes enriquecidos. Para simplificar la configuración, el servicio incluye la herramienta integrada Agentic Journey. Esta permite que cualquier empleado construya flujos de trabajo interactivos rápidamente mediante un enfoque low-code.
Agentic Journey ofrece un gran lienzo visual. En el lado izquierdo encontrará una amplia variedad de componentes, entre ellos de mensajería, control de flujo, inteligencia artificial y marketing. Arrastre y suelte estos elementos en el lienzo; con una configuración sencilla, Agentic Journey le permitirá ensamblar rápidamente un flujo de trabajo que se ajuste a su proceso de negocio.
Las funciones de Agentic Journey se dividen en cuatro categorías principales: channel dock, flow dock, AI dock y marketing dock. Para más detalles, consulte Agentic Journey Features.
Agentic Journey destaca por cinco fortalezas clave: es fácil de usar, sencillo de mantener, altamente flexible, está profundamente integrado y tiene una amplia aplicabilidad. Para más detalles, consulte Agentic Journey Highlights.
Procedimiento
Escenario: desea enviar OTP por Viber a los usuarios de Filipinas, por WhatsApp a los de Malasia y por SMS a los de todos los demás países.
Diagrama de flujo:

Complete los siguientes cinco pasos:
-
Establezca las variables
En la pestaña , haga clic en el Flow Name de un flujo cuyo Trigger Type sea Manual. Se abrirá la página del editor de lienzos. En el lienzo, haga clic en Start y, en el panel derecho, desactive Do Not Accept Incoming Variables. Por ejemplo, en este escenario, tras desactivar Do Not Accept Incoming Variables, debe introducir las siguientes variables: número de teléfono del cliente (
customerPhoneNumber) y código de verificación (verificationCode). -
Cree las ramas PH y ML
En la biblioteca de componentes, seleccione el componente Recognize a Phone Number y arrástrelo al lienzo. Habilite el botón Multi-branching. Si desea crear ramas según los códigos de región, seleccione la opción Region Code. En las ramas inferiores, seleccione los códigos internacionales de los países o regiones de destino, como Filipinas (PH) y Malasia (ML). Establezca el Output Variable Name. Este nombre le servirá para hacer referencia a la variable en los componentes posteriores.
En la sección Input Settings, seleccione la variable
customerPhoneNumber. Establezca el Output Variable Name comoregionCode. -
Configure la rama else
En la rama else, arrastre y suelte el componente Send SMS. Configure el identificador del remitente. Para el número de teléfono del destinatario, seleccione la variable customerPhoneNumber definida en el nodo Start. En Message Content, establezca el Content Type como Verification Code. El contenido del mensaje es el cuerpo que se enviará al usuario. Para este escenario, introduzca lo siguiente:
"Your one-time password is:{{verificationCode}} The password is valid for 10 minutes. Please do not share this password with anyone to protect your account."
En este caso, verificationCode es el nombre de la variable que representa el código de verificación y se define en el nodo Start. Para usar variables, introduzca {{. Luego podrá seleccionar una existente o crear una nueva. La lista contiene todas las variables disponibles en el componente actual.
NotaSe recomienda configurar primero la rama else. Esta funciona como alternativa de respaldo, a la cual puede saltar desde otras ramas si necesita gestionar excepciones.
-
Configure la rama PH
Arrastre el componente Send Viber Message a la rama PH y configure los parámetros relacionados, como Message Sending Settings, Message Settings y Timeout Settings.
Message Sending Settings: establezca Action como From/To, Message Type como Transaction y Sending Type como Service ID (la cuenta empresarial de Viber). En Channel, seleccione el canal que usará para enviar los mensajes. Para el destinatario, utilice la variable customerPhoneNumber definida en el nodo Start, la cual representa el número de celular del usuario.
-
Message settings: en Message Type, seleccione Text e introduzca el cuerpo del mensaje. Para este escenario, escriba:
"Your one-time password is:{{verificationCode}} The password is valid for 10 minutes. Please do not share this password with anyone to protect your account."
NotaAquí, verificationCode es el nombre de la variable del código de verificación, definida en Start.
En el nodo Send a Viber Message in PH region, los ajustes de envío se configuran de la siguiente manera:
Action: From/To
Sending Message Type: Transaction
Sending Type: Service ID
Sending Channel: Viber
Recipient:
{{customerPhoneNumber}}
-
Timeout Settings: para asegurar que los usuarios reciban la OTP, configure una acción que se active si el mensaje no se entrega o no se lee dentro de un periodo determinado.
A continuación se describe cómo configurarla.
Send WhatsApp if undelivered
Siga estos tres pasos:
Arrastre el componente Send a WhatsApp Message a la rama undelivered del componente Send a Viber Message.
Haga clic en el componente Send WhatsApp Message. En el panel derecho, dentro de , seleccione From/To. En Sending Type, seleccione Mobile Number. En Channel, elija el canal WABA que utilizará para enviar el mensaje. Para Sender Mobile Number, seleccione un número verificado dentro de dicho canal WABA. En Recipient, introduzca la variable del número telefónico del usuario definida en el nodo Start, como customerPhoneNumber.
En Message Settings, establezca Message Type como Template Message. Seleccione el mismo canal de envío en Channel y elija la plantilla que se enviará en Template Message. La plantilla debe crearse previamente y estar aprobada por WhatsApp.
Send SMS if unread
Siga estos dos pasos:
Arrastre el componente Jump to Another Step a la rama unread del componente Send a Viber Message.
Haga clic en el componente Jump to Another Step. En el panel derecho, dentro de , seleccione el nodo del componente Send SMS. El campo Maximum number of jumps indica el número máximo de veces que se puede activar el componente de salto. Por ejemplo, si introduce 3, el componente no se activará la cuarta vez que se ingrese a él.
En la rama PH también puede configurar las ramas undelivered y unread para el componente Send a WhatsApp Message. En este flujo, si el mensaje de WhatsApp no se entrega en 30 segundos, el proceso salta al componente unificado Send an SMS Message ubicado en la rama else. La configuración es similar a los pasos anteriores. En el componente de salto, debe especificar el nombre del componente de destino. Los nombres de los componentes se pueden personalizar en el lienzo para diferenciarlos.
NotaPara los usuarios de Filipinas, el flujo intenta primero enviar la OTP por Viber. Si la entrega falla, reintenta inmediatamente por WhatsApp. Si este canal también falla, recurre finalmente al SMS. Este enfoque multicanal maximiza la probabilidad de entregar el mensaje correctamente.
-
Configure la rama ML
Configure el flujo para los números telefónicos de Malasia en la rama ML. El proceso es similar al de la rama PH, pero la prioridad de canales cambia. Para los usuarios de Malasia, el flujo intenta primero enviar el mensaje por WhatsApp. Si falla, recurre a Viber. Si este último también falla, un componente Jump to Another Step redirige el proceso al canal SMS unificado de la rama else. Cuando el mensaje de WhatsApp se entrega y se lee correctamente, el flujo concluye.