> ## Documentation Index
> Fetch the complete documentation index at: https://help.treble.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# fact_treble_sessions

> Uma linha por execução de fluxo de conversa, inbound ou outbound.

# fact\_treble\_sessions

Cada linha é uma execução de um fluxo conversacional por um usuário — desde o momento em que começa (um envio de campanha ou uma mensagem inbound) até o momento em que termina. Esta é a tabela âncora do warehouse: mensagens, percursos e variáveis fazem join de volta a ela através de `session_id`.

## Que perguntas ela responde?

* Quantas conversas rodaram, inbound vs outbound?
* Quais fluxos (`poll_name`) geram mais conversas?
* Onde os usuários param? (`last_node_id`, resolvível contra `dim_poll_nodes`)
* Qual palavra-chave disparou cada conversa inbound?
* Quanto duram as conversas e como elas terminam?

## Colunas

| Coluna              | Tipo       | Descrição                                                                                                                                                                                             |
| ------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `session_id`        | Int64      | Identificador único do fluxo de conversa                                                                                                                                                              |
| `company_id`        | Int32      | Sua empresa (filtrada automaticamente)                                                                                                                                                                |
| `created_at`        | DateTime64 | Quando a conversa começou                                                                                                                                                                             |
| `cellphone`         | String     | Número de telefone do usuário                                                                                                                                                                         |
| `country_code`      | String     | Código do país do usuário                                                                                                                                                                             |
| `status`            | String     | Quem atendeu a conversa: `AI` (permaneceu com o fluxo automatizado), `HumanHandover` (transferida para um agente humano), `Rating` (passou por um agente e chegou à etapa de avaliação de satisfação) |
| `is_valid`          | Bool       | `true` quando pelo menos uma mensagem da conversa foi confirmada como entregue ou lida pelo usuário — a conversa realmente chegou ao telefone                                                         |
| `poll_id`           | Int32      | Identificador do fluxo                                                                                                                                                                                |
| `poll_name`         | String     | Nome do fluxo                                                                                                                                                                                         |
| `channel_id`        | Int32      | Identificador da linha de WhatsApp                                                                                                                                                                    |
| `channel_cellphone` | String     | Número da linha de WhatsApp                                                                                                                                                                           |
| `direction`         | String     | `INBOUND` (o usuário iniciou) ou `OUTBOUND` (uma campanha iniciou)                                                                                                                                    |
| `contact_id`        | Int64      | Contato da Treble; `0` se não houver                                                                                                                                                                  |
| `finished_at`       | DateTime64 | Quando terminou; `NULL` se ainda aberta                                                                                                                                                               |
| `trigger_keyword`   | String     | A palavra-chave que disparou um fluxo inbound, quando houve correspondência; vazio caso contrário e para outbound                                                                                     |
| `last_node_id`      | Int32      | O último nó do fluxo que esta conversa alcançou; `0` se nunca alcançou um                                                                                                                             |
| `synced_at`         | DateTime64 | Quando esta linha foi gravada/corrigida pela última vez                                                                                                                                               |

## Exemplos de consultas

### Onde as conversas terminam, por fluxo?

```sql theme={null}
SELECT
    s.last_node_id,
    n.node_type,
    n.question_text,
    count() AS conversations_ended_here
FROM fact_treble_sessions AS s
LEFT JOIN dim_poll_nodes AS n
    ON n.company_id = s.company_id AND n.node_id = s.last_node_id
WHERE s.poll_id = {your_poll_id}
  AND s.created_at >= today() - 30
GROUP BY s.last_node_id, n.node_type, n.question_text
ORDER BY conversations_ended_here DESC
```

### Conversas inbound por palavra-chave de disparo

```sql theme={null}
SELECT trigger_keyword, count() AS conversations
FROM fact_treble_sessions
WHERE direction = 'INBOUND'
  AND created_at >= today() - 7
GROUP BY trigger_keyword
ORDER BY conversations DESC
```
