Meta

La Plataforma de WhatsApp Business permite a medianas y grandes empresas comunicarse con sus clientes a gran escala. Puedes iniciar conversaciones con clientes en apenas unos minutos, enviarles notificaciones de atención al cliente o actualizaciones de compras, ofrecerles un nivel de servicio personalizado y prestarles ayuda a través del canal que ellos prefieran.

Requerimientos

  • Registrar una cuenta de facebook developers
  • Tendrás que verificar tu negocio y tu aplicación con documentos oficiales, cuyo tipo puede variar dependiendo de tu país.
  • Deberás asociar a tu cuenta un número de teléfono oficial de tu negocio que no esté vinculado con ninguna otra cuenta de WhatsApp, ya sea regular o Business. Para las pruebas, Meta provee un número de teléfono gratuito.
  • Meta ofrece 1000 conversaciones gratuitas iniciadas por el cliente hacia el bot, y 250 conversaciones gratuitas iniciadas por el bot hacia el cliente. Una vez alcanzado este límite, cada conversación adicional tendrá un costo que puede variar dependiendo de tu país o región.

Requerimientos

Debes crear una aplicación nueva. Para ello haz clic en el botón Crear aplicación


En esta pantalla debes de seleccionar Empresa o Business


En el siguiente paso debes escribir un nombre al tu aplicación también colocar un email de contacto y seleccionar la aplicación de Test Business


Ahora dirígete a la sección de Ajustes de WhatsApp.


Está la parte donde encontraras el token acceso y también puedes ver el número desde donde se envía los mensajes de WhatsApp y a donde se va a enviar. Como estás en la versión de prueba, deberás dar de alta los números a los que quieres enviar.


En esta misma página puedes encontrar el apartado de Webhook que pronto necesitaremos usar


En el archivo principal del bot donde estás implementando la función del adaptador de meta vas a colocar los siguientes datos:

  • numberId: Lo puedes encontrar en la pagina anterior
  • jwtToken: Lo puedes encontrar en la pagina anterior
  • verifyToken: Puedes escribir lo que quieras es como una palabra clave
const main = async () => {
    const adapterDB = new MockAdapter()
    const adapterFlow = createFlow([flowPrincipal])

    const adapterProvider = createProvider(MetaProvider, {
        jwtToken: process.env.JWTOKEN, //EAARBW3ZBGU0UBAACDjtQIzI8JuEa.............
        numberId: process.env.NUMBER_ID, //103975305758520
        verifyToken: process.env.VERIFY_TOKEN, //LO_QUE_SEA,
        version:'v16.0'
    })

    createBot({
        flow: adapterFlow,
        provider: adapterProvider,
        database: adapterDB,
    })
}

main()

Luego de ejecutar el bot encontraras un mensaje en la consola similar al siguiente. Donde podrás encontrar la URL para tu webhook

$ npm start

> bot-whatsapp-base-meta-memory@1.0.0 start
> node app.js


[meta]: Agregar esta url "WHEN A MESSAGE COMES IN"
[meta]: POST http://localhost:3000/webhook
[meta]: Más información en la documentacion

¿Ahora que hago?

Podrás observar que el bot inicia un servicio HTTP (endpoint) que debe estar en un servidor en linea para que puedas conectarlo con Meta.


Opción 1:

Puedes hacer pruebas en local atrevés de un servidor proxy tunnel.  Descarga ngork es una herramienta gratuita que nos ayudara con esto.


Esto genera una URL en línea que podemos usar en la parte de WebHook de Meta





Opción 2:

Si ya tienes desplegado tu bot en un servidor tienes que obtener la IP publica o subdominio que te proporcionaron. Ejemplo si estas usando Railway puedes ir a la seccion de ajustes y generar un subdominio. Ya tendriamos el WebHook https://base-twilio-memory-production.up.railway.app/twilio-hook