Addon de Socio - Canal de Chat API
Cuando este addon de socio está habilitado, el espacio de trabajo del cliente podrá configurar un webhook para el canal de chat API.
Instrucciones
Configuración inicial
1. Habilita el addon de socio, Api Chat.
2. Configura el webhook de chat API para el espacio de trabajo a través de la API de socio; la URL del webhook debe ser verificada.
bot_url de la respuesta de configuración del webhook de chat API se usará para enviar mensajes desde el usuario bot.
Consulta los payloads de ejemplo para diferentes tipos de mensajes.
3. Cuando el bot responda o un agente responda, el payload del mensaje se enviará a la URL del webhook de chat API proporcionada con una firma en el encabezado.
API de Socio para obtener/configurar/eliminar webhook
Debes usar tu partner api key para la autenticación.
- Obtener webhook
GET {{baseUrl}}/api/partner/workspace/{{workspace_id}}/apichat-webhook
Request body: (vacío)
POST {{baseUrl}}/api/partner/workspace/{{workspace_id}}/set-apichat-webhook
Request body:
DELETE {{baseUrl}}/api/partner/workspace/{{workspace_id}}/remove-apichat-webhook
Request body: (vacío)
POST https://bot.dfktv2.com/api/apichat/{{unique_code_to_bot}}
Request body:
POST https://bot.dfktv2.com/api/apichat/{{unique_code_to_bot}}
Request body:
POST https://bot.dfktv2.com/api/apichat/{{unique_code_to_bot}}
Request body:
POST https://bot.dfktv2.com/api/apichat/{{unique_code_to_bot}}
Request body:
POST https://bot.dfktv2.com/api/apichat/{{unique_code_to_bot}}
Request body:
POST https://bot.dfktv2.com/api/apichat/{{unique_code_to_bot}}
Request body:
Payload del webhook
Cuando el bot o el agente envíen un mensaje, tu URL de webhook recibirá el payload del mensaje. Para cada solicitud, puedes revisar los siguientes encabezados.
Código de ejemplo en PHP para verificar la firma del payload
body();
$verification_key = "{{VERIFICATION_TOKEN}}";
$sign = 'sha256='.hash_hmac('sha256', $payload, $verification_key);
//debes verificar que el valor de la firma en el encabezado coincida
request()->header('X-Hub-Signature-256') == $sign