Skip to main content
Las conversaciones permiten mantener contexto entre mensajes. El SDK gestiona conversationId automaticamente, o puedes controlarlo manualmente.

Auto-tracking

Por defecto, el SDK trackea la conversacion activa automaticamente:

Conversaciones manuales

Crea y gestiona conversaciones explicitamente:

ConversationManager

El SDK expone thaliq.conversations para gestionar conversaciones:

Nueva conversacion vs continuacion

No envies valores reservados como conversationId (literal "pending", "new", "null", "undefined", vacios, o ids de menos de 16 caracteres). El backend los rechaza y genera uno nuevo, pero loggea un warning de seguridad. Estos valores fueron causa de un bug previo de cross-tenant context leakage; ahora estan bloqueados explicitamente. Usa el id real de una conversacion existente o no envies el campo.

Session timeout

Las conversaciones tienen un session timeout configurable por agente (default: 30 minutos). Si la ultima interaccion fue hace mas de 30 minutos, el backend crea una conversacion nueva automaticamente.

Aislamiento por agente

Cada conversacion esta ligada al agente que la atendio. Si reusas un conversationId pero apuntas a un agente distinto, el backend detecta el mismatch y crea una conversacion nueva (no mezcla contextos). Esto evita que un cambio de agentId herede historial de otro agente.

Persistencia

Las conversaciones se persisten en el backend con TTL segun tu plan:
El ConversationManager del SDK solo trackea conversaciones en memoria (de la sesion actual). Los datos se persisten en el backend automaticamente.

Feedback en conversaciones

Puedes enviar feedback sobre mensajes individuales dentro de una conversacion:
Ver Feedback e Insights para mas detalles.

Acciones HITL inline

Cuando una instruccion dispara una accion (consent / confirm / select / form), la accion se entrega como un evento action y el stream se cierra. Para continuar la conversacion dentro del mismo turno y mensaje, mandas un nuevo request con actionResponse:
Ver HITL para los formatos de actionResponse por tipo (consent, confirm, select, form).