Una vez que te registres como socio de RBM, tendrás una cuenta de socio. Para acceder a la configuración de tu cuenta de socio, abre Developer Console de Business Communications y haz clic en Configuración de la cuenta de socio. Desde allí, puedes hacer lo siguiente:
- Actualiza la información de tu cuenta de socio
- Agrega, edita y quita las marcas vinculadas a tu cuenta
- Administra los usuarios de la cuenta
- Crea una cuenta de servicio y una clave para autenticar las llamadas a la API
Actualiza la información de la cuenta de socio
En la página Configuración, puedes ver tu ID de socio y actualizar la siguiente información:
Campo | Descripción |
---|---|
Nombre del socio | Nombre de tu cuenta de socio |
Nombre visible | El nombre aparecerá en los
informes de facturación de RBM que reciben los operadores (como el campo owner_name ). Los operadores la usarán para identificarte como socio de confianza y asegurarse de generar la información de facturación correcta para que uses la RBM y llegues a sus suscriptores. El nombre que proporciones aquí debe coincidir con el que se usa en los contratos de mensajería de tu operador. |
Punto de contacto técnico | Es la persona con la que Google se comunicará en caso de que haya algún problema técnico con tus agentes. Puedes actualizar su
|
Webhook | Esta es la URL del extremo de tu webhook. Haz clic en Configurar para actualizarla. Cuando configuras el webhook de tu socio, se aplica a todos tus agentes. Si deseas usar un webhook diferente para un agente individual, puedes configurar un webhook de agente que solo se aplicará a ese agente. |
Administra marcas
Como socio de RBM, puedes crear agentes en nombre de las marcas.
Usa la página Marcas en la Configuración de la cuenta para agregar, editar y quitar las marcas asociadas con tu cuenta de socio.
Agregar una marca
Para agregar una marca, ingresa su nombre en el campo de entrada y haz clic en Agregar.
Cómo editar una marca
Para editar una marca, sigue estos pasos:
- Haz clic en la casilla de verificación junto al nombre de la marca.
- Haz clic en el botón y, luego, en Editar nombre.
- Realiza las modificaciones necesarias y haz clic en Listo.
Cómo quitar una marca
No se puede quitar una marca si está asociada a un agente, incluso si este no se lanzó.
Para quitar una marca, haz clic en la casilla de verificación junto a su nombre y, luego, en Borrar.
Administración de usuarios
En la página Usuarios de la Configuración de la cuenta, puedes administrar los usuarios de tu cuenta de socio. El usuario que creó la cuenta de socio tiene el rol de propietario. Los usuarios nuevos pueden tener el rol de administrador o lector.
- Los administradores pueden acceder a todas las funciones de Play Console para administrar todos los agentes que pertenecen a la cuenta de socio.
- Los lectores tienen acceso de solo lectura a la Consola de Play para ver todos los agentes que pertenecen a la cuenta de socio.
Agrega un usuario
Para agregar un usuario, ingresa su dirección de correo electrónico en el campo de entrada y selecciona su rol.
Cuando agregas un usuario nuevo, este recibe un correo electrónico en el que se le notifica que tiene acceso a la cuenta de socio.
Quitar un usuario
Sigue estos pasos para quitar usuarios:
- Busca el usuario que deseas quitar y haz clic en el botón en su fila de la tabla.
- Selecciona Quitar usuario.
- Confirma la eliminación.
El usuario que quitaste recibirá un correo electrónico en el que se le notificará que ya no tiene acceso a la cuenta de socio.
No puedes quitar a un usuario con el rol de propietario. Para cambiar o quitar al propietario, debes comunicarte con el equipo de asistencia.
Cambiar la función de un usuario
Para actualizar el rol de un usuario, sigue estos pasos:
- Busca el usuario que deseas actualizar y haz clic en el botón en su fila de la tabla.
- Selecciona Editar rol.
- Elige un nuevo rol en el menú desplegable.
- Haz clic en Guardar.
Configura una cuenta de servicio para autenticar las llamadas a la API
Cuando realizas llamadas a la API de RBM, autenticas las llamadas con una clave de cuenta de servicio. Esta clave te permite crear y administrar marcas y agentes, y enviar mensajes y solicitudes como agente. Una cuenta de servicio puede tener hasta 10 claves.
Para autenticar de forma segura las llamadas a la API, también necesitas la herramienta de línea de comandos oauth2l.
Sigue estos pasos para generar una clave de cuenta de servicio:
- En Configuración de la cuenta, navega a la página Cuenta de servicio.
- Haz clic en Crear clave y, luego, en Crear. Tu navegador descarga la clave de la cuenta de servicio.
Almacena la clave de la cuenta de servicio en una ubicación privada y segura. No compartas tu clave públicamente. Necesitarás esta clave más adelante para acceder a las APIs de RBM.
Configura el webhook de tu socio
Un webhook es una devolución de llamada HTTPS creada por un socio que especifica cómo debe responder tu agente a los mensajes y eventos. Una vez que configures tu webhook, podrás comenzar a recibir mensajes y eventos.
Si quieres usar un webhook diferente para cualquiera de tus agentes, puedes configurar un webhook a nivel del agente que anule el webhook del socio. Para obtener más información, consulta Configura un webhook de agente.
Para configurar tu webhook de socio, sigue estos pasos:
Abre Business Communications Developer Console y accede con la Cuenta de Google de tu socio de RBM.
Abre la Configuración de la cuenta.
En URL de webhook de RCS Business Messaging, haz clic en Configurar.
En URL del extremo del webhook, ingresa la URL de tu webhook que comience con "https://".
Anota el valor de
clientToken
. La necesitas para verificar que los mensajes que recibes provengan de Google.Configura tu webhook para que acepte una solicitud
POST
con el parámetroclientToken
especificado y envía una respuesta200 OK
con el valor de texto sin formato del parámetrosecret
como cuerpo de la respuesta.Por ejemplo, si tu webhook recibe una solicitud de
POST
con el siguiente contenido del cuerpo{ "clientToken":"SJENCPGJESMGUFPY", "secret":"1234567890" }
entonces, tu webhook debe confirmar el valor
clientToken
y, siclientToken
es correcto, mostrar una respuesta200 OK
con1234567890
como el cuerpo de la respuesta:// clientToken from Configure const myClientToken = "SJENCPGJESMGUFPY"; // Example endpoint app.post("/rbm-webhook", (req, res) => { const msg = req.body; if (msg.clientToken === myClientToken) { res.status(200).send(msg.secret); return; } res.send(400); });
En Play Console, haz clic en Verificar. Cuando RBM verifica tu webhook, se cierra el diálogo.
Para controlar las fallas de entrega de webhooks y garantizar un procesamiento de mensajes confiable, consulta Manejo de mensajes.
Verifica los mensajes entrantes
Debido a que los webhooks pueden recibir mensajes de cualquier remitente, debes verificar que Google haya enviado los mensajes entrantes antes de procesar el contenido de los mensajes.
Para verificar que Google te envió un mensaje, sigue estos pasos:
- Extrae el encabezado
X-Goog-Signature
del mensaje. Esta es una copia con hash y codificación en base64 de la carga útil del cuerpo del mensaje. - Decodifica en base 64 la carga útil de RBM en el elemento
message.body
de la solicitud. - Con el token de cliente de tu webhook (que especificaste cuando configuraste el webhook) como clave, crea un HMAC SHA512 de los bytes de la carga útil del mensaje decodificada en base 64 y codifica el resultado en base 64.
- Compara el hash de
X-Goog-Signature
con el que creaste.- Si los valores hash coinciden, significa que Google envió el mensaje.
Si los valores hash no coinciden, verifica el proceso de codificación hash en un mensaje que se sepa que es correcto.
Si tu proceso de hash funciona correctamente y recibes un mensaje que crees que se te envió de forma fraudulenta, comunícate con nosotros.
Node.js
if ((requestBody.hasOwnProperty('message')) && (requestBody.message.hasOwnProperty('data'))) { // Validate the received hash to ensure the message came from Google RBM let userEventString = Buffer.from(requestBody.message.data, 'base64'); let hmac = crypto.createHmac('sha512', CLIENT_TOKEN); let data = hmac.update(userEventString); let genHash = data.digest('base64'); let headerHash = req.header('X-Goog-Signature'); if (headerHash === genHash) { let userEvent = JSON.parse(userEventString); console.log('userEventString: ' + userEventString); handleMessage(userEvent); } else { console.log('hash mismatch - ignoring message'); } } res.sendStatus(200);
Próximos pasos
Ahora que se configuró tu cuenta de socio, es hora de compilar tu primer agente.