HTTP
Resumen
Sección titulada «Resumen»messaging-http es un proveedor de mensajería controlado por respuestas y generado desde build-answer.json. Es útil cuando un sistema se comunica con un trabajador digital mediante HTTP directo en lugar de una plataforma de chat con nombre.
Actualmente admite:
- Mapear solicitudes HTTP
POSTcon JSON a eventos normalizados del proveedor - Comprobaciones opcionales de token bearer entrante o de cabecera de API key
- Capturar cabeceras y parámetros de consulta seleccionados
- Construir descripciones de solicitudes HTTP
GEToPOSTsalientes a partir de payloads de mensaje - Plantillas de URL con valores del payload como
{payload.case_id}
Configuración
Sección titulada «Configuración»-
Agrega el pack del proveedor
Selecciona
messaging-httpcongtc wizardo agrega el pack al bundle desde el catálogo de proveedores de mensajería. -
Configura rutas y autenticación
Usa las respuestas de configuración generadas para tu pack instalado. La configuración típica incluye información de ruta/URL pública, autenticación opcional, cabeceras capturadas y ajustes de solicitudes salientes.
-
Ejecuta setup
Ventana de terminal gtc setup ./my-bundle -
Inicia el runtime
Ventana de terminal gtc start ./my-bundle
Mapeo entrante
Sección titulada «Mapeo entrante»HTTP entrante espera una solicitud POST con un cuerpo JSON de objeto. El proveedor la mapea a un evento con esta forma:
{ "provider": "messaging-http", "direction": "inbound", "kind": "http.webhook", "idempotency_key": "req-1", "source": { "method": "POST", "path": "/webhooks/acme", "headers": { "x-request-id": "req-1" }, "query": { "source": "test" } }, "payload": { "case_id": "C123", "event": "case.created" }}La clave de idempotencia se toma de Idempotency-Key, X-Request-Id, payload.idempotency_key o payload.id cuando están presentes.
Mapeo saliente
Sección titulada «Mapeo saliente»Los mensajes salientes se convierten en descripciones de solicitudes HTTP. Por ejemplo, con esta configuración:
{ "method": "POST", "url": "https://example.test/cases/{payload.case_id}", "headers": { "content-type": "application/json" }, "timeout_ms": 5000}Un payload de mensaje { "case_id": "C123", "status": "open" } produce:
{ "method": "POST", "url": "https://example.test/cases/C123", "headers": { "content-type": "application/json" }, "body": "{\"case_id\":\"C123\",\"status\":\"open\"}", "timeout_ms": 5000}Acceso de red
Sección titulada «Acceso de red»| Dirección | Protocolo y puerto | Propósito |
|---|---|---|
| Entrante | HTTPS 443 hacia Greentic | Sistemas externos que envían solicitudes JSON estilo webhook |
| Entrante, desarrollo local | HTTP en el puerto local del runtime/tester | Pruebas locales antes de la terminación TLS/túnel |
| Saliente | HTTP o HTTPS hacia endpoints configurados | Solicitudes salientes construidas por el proveedor |
Pruebas
Sección titulada «Pruebas»Usa el tester local:
./scripts/test_http.shLa página de pruebas tiene botones separados para mapeo entrante y generación de solicitudes salientes, y muestra un estado claro de aprobado/error.