Índice:
Introducción
Por decisión de Meta, el contacto de verificación, que permitía a los usuarios de Blip verificar la validez de los números de teléfono de su base de clientes en WhatsApp, se suspende. Por lo tanto, los clientes On-Premise no tendrán acceso al recurso en la versión actualizada del canal. Tendrán que seguir, también por decisión de Meta, el mismo patrón que los que utilizan la infraestructura de Cloud API, que ya no contaba con esta funcionalidad.
Verificar contacto permitía al usuario probar la validez de un número de teléfono. WhatsApp volvió informando si ese contacto existía o no. En la nueva versión del canal ya no se reportaba este estado. Independientemente de si el usuario tiene WhatsApp o no, la respuesta siempre se devuelve con un estado válido y un wa_id.
Todo esto requiere más responsabilidad por parte de nuestros clientes para garantizar que el contacto sea correcto. Seguirás teniendo visibilidad de los mensajes que no se entreguen, pero no podrás deshacer el envío de un mensaje a un contacto inexistente.
IMPORTANTE: La llamada a /accounts debe realizarse antes de enviar cualquier notificación a través de la API de Blip, independientemente de la versión del contenedor en el que se encuentre el bot o en la API de la nube. Porque la llamada a /accounts evita que se duplique el hilo de contacto. La principal diferencia es que ahora las nuevas versiones de contenedores se comportarán de manera similar a CAPI, donde el número ya no es validado por Meta, como se mencionó anteriormente.
Verificación de cuenta de usuario de WhatsApp por "/cuentas"
El proceso de verificación debe realizarse para todos los mensajes y notificaciones enviados. Incluso en casos de números ya validados, WhatsApp no garantiza un caché de más de 7 días. Esto puede llevar a que su envío reciba un error de contacto inexistente en la base de contenedores de WhatsApp. Esta definición de caché y usuarios válidos se describe en la Documentación oficial de WhatsApp.
Solicitud
La plataforma Blip se encargará de llamar a WhatsApp y realizar la validación, devolviendo los datos de ese contacto de WhatsApp. La llamada para validar al usuario a través de la API Blip es la siguiente:
YOUR_TOKEN es la clave de autorización de su bot.
PHONE_NUMBER es el número de usuario a validar. Debe estar en su forma completa con +, DDI, DDD y el número.
Punto de atención: No olvide agregar el signo "+" (más) antes de enviar.
Ejemplo: +5531988889999.
POST https://{ORGANIZATION_ID}.http.msging.net/commands HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}
{
"id": "{{$guid}}",
"to": "postmaster@wa.gw.msging.net",
"method": "get",
"uri": "lime://wa.gw.msging.net/accounts/{PHONE_NUMBER}"
}
En caso de solicitudes por lotes:
POST https://{ORGANIZATION_ID}.http.msging.net/commands HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}
{
"id": "{{$guid}}",
"to": "postmaster@wa.gw.msging.net",
"method": "get",
"uri": "lime://wa.gw.msging.net/accounts?identities=+5531988889999;+5531966667777"
}
Nota: asegúrese de colocar el carácter "+" antes de cada número.
Respuesta
En respuesta a esta llamada habrá alguna información de contacto. La más importante aquí es la cuenta alternativa, que debe usarse para activar la notificación. Después de la validación, es esencial guardar el valor devuelto en este campo. Los demás campos son información extra que no siempre estará disponible, dependiendo del contacto.
Ejemplo: 5531988889999@wa.gw.msging.net.
HTTP/1.1 200 Aceptar
Tipo de contenido: aplicación/json
{
"type": "application/vnd.lime.account+json",
"resource": {
"fullName": "John Doe",
"alternativeAccount": "5531988889999@wa.gw.msging.net",
"identity": "5531988889999@wa.gw.msging.net",
"phoneNumber": "+5531988889999",
"source": "WhatsApp"
},
"method": "get",
"status": "success",
"id": "{{$guid}}",
"from": "postmaster@wa.gw.msging.net",
"to": "bot@msging.net",
"metadata": {
"#command.uri": "lime://wa.gw.msging.net/accounts/+5531988889999"
}
}
Nota: Al enviar plantillas de mensajes, ya no será necesario utilizar el campo Espacio de nombres. Por lo tanto, es importante eliminarlo para evitar inconsistencias en el futuro.
Para obtener más información, acceda a la discusión sobre el tema en nuestra comunidad o los videos en nuestro canal. 😃