Webhooks entrantes
Con los webhooks entrantes, tu bot incluso puede iniciar una conversación con un usuario del bot que nunca antes había hablado con él.
Por ejemplo, cuando un cliente llena su información de contacto en tu sitio web, envías esos datos a un webhook entrante de un chatbot, por ejemplo, un bot de SMS. Entonces el bot de SMS puede enviar un mensaje de confirmación al número de teléfono del cliente.
Si ese webhook está configurado en un bot de Voz, ¡el bot incluso puede llamar al cliente de inmediato!
Limitación: cada bot tiene hasta 5 webhooks entrantes, y el límite de tasa es de 500 solicitudes por cada 24 horas. El reinicio funciona de la siguiente manera:
24 horas después de la primera solicitud. Hay una marca de tiempo en los encabezados de la respuesta que puedes revisar.
El límite es por cada 24 horas, no por día, así que no se reinicia a una hora fija.
Crear webhook entrante
Está disponible en casi todos los canales. En tu Flow Builder, ve a Tools - Inbound Webhooks:
Haz clic en New Inbound Webhook, asigna un nombre y haz clic en Save:
Verás una interfaz de edición como esta:
Dirección del webhook
Esta área te muestra adónde enviar los datos y el método, que es POST. Cada webhook entrante tiene una URL única en todo el sistema OneChat.
Ejemplo de JSON recibido
Esta área muestra un ejemplo de JSON como referencia. Describe la estructura de los datos en el JSON que recibiremos después. Lo necesitamos para encontrar los valores tanto para la **identificación del usuario** como para los datos que se guardarán.
Hay 2 formas de obtener un JSON de ejemplo:
1. escribirlo/pegarlo aquí manualmente
2. escuchar datos en tiempo real desde una prueba en vivo
Valores para identificar a un usuario
Cada vez que el webhook recibe datos, primero revisa las rutas que especifiques aquí para ver si puede encontrar un usuario existente en el chatbot.
Si el usuario no está en el sistema, el chatbot creará un nuevo perfil. Así es como el chatbot inicia una conversación sin haber hablado antes con el usuario.
Sin embargo, algunos canales no permiten que el chatbot inicie la conversación primero debido a temas de privacidad y spam.
Por ejemplo, tu bot de SMS puede enviar mensajes siempre que tengas el número de teléfono del destinatario, mientras que tu chatbot de Facebook Messenger no puede enviar mensajes a un usuario de Facebook que nunca antes haya hablado con tu bot.
#### Proceso para la identificación de usuarios
Este es el proceso de cómo el sistema identifica a un usuario:
verificar user_ns
- si hay un user_ns válido, se encuentra al usuario.
- si no, siguiente paso
verificar teléfono / email
- si podemos encontrar un usuario por teléfono o email, se encuentra al usuario.
- si no, siguiente paso
verificar teléfono
- no hubo coincidencia de usuario en el sistema, ¿el teléfono es un número válido?
- si sí, se crea el perfil del usuario.
- si no, el webhook no se procesará
Área de mapeo
La lista de mapeo muestra qué valor debe almacenarse en qué campo personalizado. Cuando obtengas un JSON de ejemplo en el área anterior, haz clic en Preview Payload para obtener una herramienta de mapeo.
Registros del webhook
Cada solicitud se guarda en Logs. Haz clic en un registro para ver los datos JSON recibidos.
Limitación de webhooks entrantes
De forma predeterminada, el límite de solicitudes de webhook entrante es de 500 solicitudes por cada 24 horas. Puedes ver los límites en la captura de pantalla a continuación:
Si has excedido los límites, sí tienes la opción de actualizar a más solicitudes por día. Aquí tienes una lista de las opciones disponibles:
- 500/día - Incluido ~~ 15K solicitudes/por mes
- 1000/día - $20 por mes ~~ 30K solicitudes/por mes
- 2000/día - $40 por mes ~~ 60K solicitudes/por mes
- 3000/día - $60 por mes ~~ 90K solicitudes/por mes
- 4000/día - $80 por mes ~~ 120K solicitudes/por mes
- 5000/día - $100 por mes ~~ 150K solicitudes/por mes
- 10000/día - $200 por mes ~~ 300K solicitudes/por mes
Puedes suscribirte desde el siguiente enlace:
https://buy.stripe.com/00g9BJ6GLcLugvKbIV
El enlace es de $20 por mes por unidad. Si necesitas 1000 solicitudes por día, simplemente selecciona la cantidad 1;
Si necesitas 2000 solicitudes por día, simplemente selecciona la cantidad 2, etc.
Después del pago, debes proporcionar tu recibo de pago y tu flowNS al correo de soporte de OneChat en ticket@onechat.com.au
Así es como puedes encontrar tu flowNS:
Ve a "All bots" en el panel de OneChat, luego busca el bot al que deseas aumentarle el límite de solicitudes de webhook entrante y haz clic en el menú desplegable; allí encontrarás el flowNS.
Tutorial en video
TODO_VIDEO[be2dc3b92e]: reemplazar este video con un recurso oficial de OneChat.
Uw
Cómo depurar el error de máximo de solicitudes del webhook entrante
Antes que nada, si no estás recibiendo los datos en el webhook entrante o no puedes encontrar los datos en los registros, es muy probable que hayas alcanzado el límite máximo diario de solicitudes.
Así es como puedes probarlo.
Puedes enviar la solicitud al webhook entrante desde Postman o desde una solicitud externa de OneChat, y luego podrás encontrar la siguiente información en el encabezado:
Como puedes ver, existe rate-limit-remaining; si es 0, eso significa que ya alcanzaste los límites de tasa y deberías actualizar para obtener más límites.
Demo: Confirmación de reserva
¡Una herramienta perfecta para probar tu webhook entrante ya está integrada en todas partes! Simplemente toma un chatbot (de cualquier canal) y pruébalo en un Action Step.
Abre otra página web de OneChat lado a lado, mantén la edición del webhook entrante en la Página 1 y selecciona una solicitud externa en la Página 2:
Sigue los pasos del 1 al 8 en la siguiente captura de pantalla:
Proporciona los datos que deben enviarse al chatbot y haz clic en Test; debes recibir un error de "webhook inactive" ya que todavía no lo hemos activado. Está bien, haz clic en Done en la Página 1 y verás los datos guardados:
Desplázate un poco hacia abajo y sigue los pasos 1, 2 y 3 para indicarle al sistema dónde están los valores de teléfono y email en el JSON:
Finalmente, mapea el resto de los datos al chatbot:
Guarda la edición de tu webhook entrante:
Entra al subflow, enviemos un mensaje al usuario del bot:
Publica el flujo y hagamos una prueba en vivo en la solicitud externa otra vez:
Podemos ver que esta vez se ejecutó sin error porque activamos el webhook y usamos un número de teléfono real. Ve a Logs y podremos ver que se creó correctamente un nuevo perfil de usuario.
Del lado del usuario:
FAQ
¿El webhook entrante no funciona en tu dominio personalizado de partner?
En los casos en que los webhooks entrantes bajo tu dominio personalizado de Partner dejan de funcionar, mientras que bajo el dominio de OneChat funcionan correctamente,
el problema podría estar en la configuración de tu Cloudflare.
A veces Cloudflare detecta automáticamente las solicitudes a tu dominio y las considera ataques de bots. Esto bloquea las solicitudes que llegan a estos webhooks entrantes durante un cierto intervalo de tiempo.
Para evitarlo, ve a la configuración dentro de tu panel de Cloudflare y, en la pestaña de seguridad, desactiva "Bot Fight Mode".
Esto te ayudará a dejar de clasificar las solicitudes hechas a tus webhooks como ataques de bots y tus webhooks entrantes volverán a funcionar.
Nota: otra razón por la que los webhooks pueden dejar de funcionar es haber alcanzado su umbral diario. Así que revisa siempre para asegurarte de que los límites no se estén agotando.