
Compartir:
Karl es un defensor de los desarrolladores para Vonage, centrado en el mantenimiento de nuestros SDK de servidor Ruby y la mejora de la experiencia de los desarrolladores para nuestra comunidad. Le encanta aprender, hacer cosas, compartir conocimientos y, en general, todo lo relacionado con la tecnología web.
RCS Business Messaging es ahora GA en el Messages API de Vonage
Tiempo de lectura: 8 minutos
Rich Communication Services (RCS) está abriendo nuevas oportunidades para la mensajería empresarial, y me complace anunciar que RCS Messaging ya está disponible de forma general (GA) en la Mensajes API de Vonage¡!
Con el paso a GA, la mensajería RCS está ahora disponible de forma más amplia.
Cobertura geográfica ampliada
Mientras que el lanzamiento de la beta de RCS sólo cubría las redes de Alemania, tras el lanzamiento de GA, el Reino Unido y más de 10 países son ahora compatibles, y la cobertura se ampliará aún más en el futuro.
Compatible con nuestros SDK de servidor
RCS siendo GA también significa que la mensajería RCS se implementa ahora en nuestro SDK de servidor. Así que, como desarrollador, ¡puedes enviar mensajes RCS utilizando tu lenguaje de programación favorito!
En el resto de este artículo, vamos a ver algunos ejemplos de cómo implementar RCS mediante programación. Vamos allá.
En ¿Te preguntas qué es exactamente la mensajería RCS? ¿O cómo se compara la mensajería RCS con los SMS o MMS? Echa un vistazo a el post que escribí a principios de este año cuando la mensajería RCS se añadió a la Messages API en beta. Ese artículo cubre algunas ventajas de la mensajería RCS. Estas ventajas pueden proporcionar experiencias de cliente más ricas que pueden impulsar el compromiso del usuario y conducir a mejores tasas de conversión
Diferencias entre RCS y la mensajería SMS/MMS
Mensajes SMS/MMS vs RCS, ¿cuál es la diferencia? Los tres canales admiten mensajes de texto, y tanto MMS como RCS permiten enviar mensajes con archivos adjuntos, como imágenes y vídeos. Donde RCS realmente destaca es en algunos de los otros tipos de mensajes que admite:
Respuestas sugeridas
Acciones sugeridas
Tarjetas ricas
Dentro del canal RCS de la API Messages, estos tipos de mensajes se envían utilizando el tipo de mensaje custom tipo de mensaje. Puede leer más sobre Mensajes Personalizados RCS y cómo utilizarlos.
Veamos un par de ejemplos de envío de algunos de estos tipos de mensajes utilizando los SDK de servidor.
Requisitos previos
Una cuenta de desarrollador de Vonage
Vonage API Account
To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.
Puesta en marcha
Antes de que puedas comenzar a enviar mensajes RCS con tu SDK de Vonage elegido, debes seguir un par de pasos preliminares.
Usted necesitará configurar un Agente RBM (RCS Business Messaging). Una vez creado el agente, se te proporcionará un ID de agente que podrás usar como ID de remitente al enviar mensajes RCS. En el contexto de Messages API de Vonage, este será el valor del campo
fromen el cuerpo de la solicitud.
Una cosa más a mencionar aquí, es que si está utilizando un agente de prueba (es decir, un agente RBM registrado en modo desarrollador), tendrá que permitir la lista del número al que desea enviar para ese agente. Puede ponerse en contacto con el gestor de su Account o con el departamento de soporte para configurarlo.
Crear una aplicación de Vonage habilitada para la API de Messages. Las aplicaciones de Vonage se usan para almacenar configuraciones relacionadas con las API de Vonage que estás usando, así como para generar credenciales para crear JWT (JSON Web Tokens). Existen varias maneras de crear una aplicación de Vonage:
A través de la página Applications del Panel para desarrolladores de Vonage
A través de la CLI de Vonage
A través de la API de aplicaciones de Vonage
La configuración de la aplicación de Vonage te proporcionará un ID de aplicación y un private.key archivo. Los necesitarás para generar JWT que se utilizarán para la autenticación con la API de Messages API de Vonage. Los SDK generarán los JWT automáticamente para cada solicitud, pero deberás proporcionarles el ID de la aplicación y la clave privada.
Una vez que el agente de RBM y la aplicación de Vonage estén configurados, lo último que debes hacer es vincularlos. Puedes hacerlo a través de Vonage Developer Dashboard, ya sea en la página de la aplicación de Vonage (en la pestaña External Accounts) o en la página Página de cuentas externas.
Screenshot of the Vonage Developer Dashboard with an option to link an RCS agent to an Application
Bien, ahora que lo tenemos todo preparado, veamos algunos ejemplos de código.
Cómo utilizar la mensajería RCS
Cómo instanciar el cliente de Vonage
Todos los SDK de servidor varían en términos de su implementación específica, pero todos comparten algunos Concepts generales, como la instanciación de un objeto cliente que luego puede usarse para interactuar con las API de Vonage llamando a los métodos que contiene. Aquí es donde necesitarás el ID de la aplicación y la clave privada generados anteriormente. A continuación se muestra un ejemplo de cómo hacerlo con el SDK de Ruby, aunque todos los SDK de servidor siguen un patrón similar:
vonage_client = Vonage::Client.new(
application_id: ENV['VONAGE_APPLICATION_ID'],
private_key: File.read(ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH'])
)Tenga en cuenta que en el ejemplo anterior VONAGE_APPLICATION_ID y VONAGE_APPLICATION_PRIVATE_KEY_PATH se establecen como variables de entorno.
Cómo enviar un mensaje de respuesta sugerida RCS
Los mensajes de respuesta sugerida son un tipo de mensaje en el que puedes enviar un texto con una serie de opciones sugeridas que el destinatario puede utilizar como respuesta. Estas opciones aparecen como "fichas" o botones en la interfaz de usuario del dispositivo que el destinatario puede pulsar para seleccionar.
Los mensajes de respuesta sugerida son ideales para muchos casos de uso diferentes. Un ejemplo es la realización de encuestas a clientes. Limitar las respuestas a valores específicos y sugeridos facilita el procesamiento de los datos dentro de la aplicación. Por ejemplo, usted podría enviar un mensaje RCS pidiendo a un cliente para evaluar su servicio de uno a cinco, con text valores del uno al cinco como opciones de respuesta sugeridas.
Además de la sugerencia textcada opción de respuesta sugerida también incluye un valor postbackData valor. Esto puede permitirle, por ejemplo, utilizar un lenguaje fácil de usar para el valor text pero algo diferente para el valor postbackData valor que se utilizará para el procesamiento interno. Otro uso para postbackData podría ser enviar la encuesta a diferentes regiones con el valor text valor en diferentes idiomas según la región, pero asignando el mismo postbackData valor.
Veamos un ejemplo.
A continuación se explica cómo enviar estos mensajes con los SDK de Node y Ruby.
Enviar un Mensaje de Respuesta Sugerida RCS con el SDK de Nodo
Aquí enviamos el mensaje de la encuesta en inglés.
vonageClient.messages.send(
new RCSCustom({
custom: {
contentMessage: {
text: "Vonage APIs are easy to use.",
suggestions: [
{
reply: {
text: "Strongly agree",
postbackData: "5",
},
},
{
reply: {
text: "Agree",
postbackData: "4",
},
},
{
reply: {
text: "Neither agree or disagree",
postbackData: "3",
},
},
{
reply: {
text: "Disagree",
postbackData: "2",
},
},
{
reply: {
text: "Strongly disagree",
postbackData: "1",
},
},
],
},
},
to: '447900000000',
from: 'VonageRCSAgent',
}),
);Cuando se recibiera, el mensaje se mostraría con una lista desplegable de sugerencias para que el destinatario eligiera.
Screenshot of an RCS suggested reply message in English
Screenshot of an RCS suggested reply message in English
Enviar un mensaje de respuesta sugerida RCS con el SDK de Ruby
Aquí enviamos el mensaje de la encuesta en francés.
message = vonage_client.messaging.rcs(
type: 'custom',
message: {
contentMessage: {
text: "Les APIs de Vonage sont simple a utilizer",
suggestions: [
{
reply: {
text: "Fortement en accord",
postbackData: "5"
}
},
{
reply: {
text: "En accord",
postbackData: "4"
}
},
{
reply: {
text: "Neutre",
postbackData: "3"
}
},
{
reply: {
text: "En désaccord",
postbackData: "2"
}
},
{
reply: {
text: "Fortement en désaccord",
postbackData: "1"
}
}
]
}
}
)
vonage_client.messaging.send(
from: 'VonageRCSAgent',
to: '447900000000',
**message
)Que se mostraría de la misma manera pero con los valores modificados text modificados:
Screenshot of an RCS suggested reply message in French
Screenshot of an RCS suggested reply message in French
Tenga en cuenta que para ambas versiones lingüísticas, los valores postbackData son los mismos.
Cuando el destinatario responde con una de las opciones, esto se recibe a través de su webhook de mensajes entrantes como un rcs mensaje con un message_type de reply. La carga útil JSON del mensaje reply incluirá un objeto reply con dos propiedades: title, que contiene el valor text de la opción de respuesta seleccionada; y idque contiene el valor de la opción postbackData de la opción de respuesta seleccionada.
Cómo enviar un mensaje de acción sugerida RCS
Los mensajes de acción sugerida te permiten sugerir al destinatario una acción que interactuará con una app nativa o instalada en el dispositivo con el que recibe el mensaje. Por ejemplo, abrir una URL en un navegador, ver una ubicación en un mapa o en una aplicación de localización, etc. Al igual que con las respuestas sugeridas, existen numerosos casos de uso para los distintos tipos de mensajes de acción sugerida. De forma similar a las respuestas sugeridas, las acciones sugeridas aparecen como "fichas" o botones en la interfaz de usuario del dispositivo que el destinatario puede pulsar para activar la acción.
Las acciones disponibles son:
openUrlAction
dialAction
viewLocationAction
shareLocationAction
createCalendarEventAction
Con todos los tipos de acción sugeridos, puede incluir algunos text que aparecerán en el mensaje principal así como algunas text dentro de la propia acción que aparecerán en el 'chip'/botón.
Todas las acciones contienen una propiedad postbackData cuyo valor se recibirá como valor de la propiedad payload en un mensaje rcs de tipo button.
Veamos un par de ejemplos.
Cómo enviar un mensaje Crear un evento de calendario con el SDK de Python
Comencemos con la acción Crear evento de calendario. Esta acción permite que su mensaje interactúe con la aplicación de calendario en el teléfono del destinatario para crear un evento en ese calendario. Un posible caso de uso para esta acción sería la confirmación de una cita, por ejemplo, una cita médica o dental.
El mensaje se mostraría en la aplicación de mensajería con una opción para crear un evento de calendario.
Screenshot of an RCS suggested action message to create a calendar eventSi se selecciona esta opción, se abre la aplicación de calendario predeterminada del dispositivo y permite al usuario guardar el evento en su calendario.
Screenshot of a calendar appliction with a option to save an event
En esta acción se establece un title y description de evento de calendario, así como el startTime y endTime (que representan la hora y la fecha en que comienza y termina el evento). Observe el desfase con respecto a UTC.
vonage_client.messages.send_message(
{
"channel": "rcs",
"message_type": "custom",
"to": '447900000000',
"from": 'VonageRCSAgent',
"custom": {
"contentMessage": {
"text": "Dear Mr Smith, we're happy to confirm your appointment at 14:30h on Tuesday the 1st of October at Healthy Smile Dental Co.",
"suggestions": [
{
"action": {
"text": "Save to calendar",
"postbackData": "postback_data_1234",
"fallbackUrl": "https://www.google.com/calendar",
"createCalendarEventAction": {
"startTime": "2024-10-01T14:30:00+01:00",
"endTime": "2024-10-01T15:00:00+01:00",
"title": "Dental Appointment",
"description": "Dental Appointment at Healthy Smile Dental Co.",
},
}
}
],
}
},
}
)Cómo enviar un mensaje de Compartir ubicación con el SDK de Java
Cuando se selecciona la acción Compartir una ubicación, se pide al destinatario del mensaje que comparta una ubicación geográfica abriendo el mapa o la aplicación de ubicación predeterminados del dispositivo. Una vez que el destinatario ha seleccionado una ubicación, puede enviarla en respuesta al mensaje que ha recibido. La respuesta del destinatario se recibirá a través de su webhook de mensajes entrantes como un mensaje rcs con un valor message_type de location. La carga útil JSON de este mensaje contendrá un objeto location con lat y long que especifican la ubicación compartida.
Un posible caso de uso para este tipo de mensaje sería el de un servicio de taxis que necesita que un cliente especifique un punto de recogida.
El mensaje recibido tendría una opción para compartir una ubicación.
Screenshot of an RCS suggested action message to share a locationSi se selecciona, se abrirá la aplicación de mapas predeterminada del dispositivo, lo que permitirá al destinatario colocar un alfiler y compartir su ubicación.
Screenshot of a map application with a pin and option to send location
var response = vonageClient.getMessagesClient().sendMessage(
RcsCustomRequest.builder()
.from('VonageRCSAgent').to('447900000000')
.custom(Map.of("contentMessage", Map.of(
"text", "Your driver will come and meet you at your specified location.",
"suggestions", List.of(
Map.of(
"action", Map.of(
"text", "Share your pickup location",
"postbackData", "postback_data_1234",
"shareLocationAction", Map.of()
)
)
)
))
).build()
); Conclusión y próximos pasos
En este artículo, hemos visto algunos ejemplos de cómo enviar diferentes tipos de mensajes RCS usando los SDK de servidor de Vonage. Sin embargo, esto es solo una idea, y existen innumerables casos de uso potenciales para la mensajería RCS. Cubriremos más ejemplos de mensajería RCS en futuras publicaciones del blog, ¡así que asegúrate de volver pronto!
Si te has inspirado para crear algo impresionante con el canal RCS de la API Messages API de Vonage, asegúrate de consultar la documentación de Messages API y los fragmentos de código fragmentos de código.
Gracias por leernos. Puedes seguirnos en X para obtener más noticias de Vonage Dev, o únete a nosotros en nuestro espacio de trabajo de espacio de trabajo Slack de la comunidad de Vonage.
Compartir:
Karl es un defensor de los desarrolladores para Vonage, centrado en el mantenimiento de nuestros SDK de servidor Ruby y la mejora de la experiencia de los desarrolladores para nuestra comunidad. Le encanta aprender, hacer cosas, compartir conocimientos y, en general, todo lo relacionado con la tecnología web.
