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

# Communication Triggers

> Triggers que são acionados em resposta a e-mails recebidos, ao término de uma reunião gravada pelo Odin ou a uma mensagem de bot do Telegram.

Triggers de comunicação são acionados em resposta a e-mails recebidos, ao encerramento de uma reunião gravada pelo Odin ou a uma mensagem recebida por um bot do Telegram.

## Email

Verifica periodicamente uma caixa de entrada do Gmail ou Office 365 e aciona o workflow quando um e-mail correspondente é encontrado. Você pode filtrar por endereço do remetente, palavras-chave no assunto e status de leitura. Anexos podem ser opcionalmente incluídos e passados para nós downstream.

**Quando usar**

* Você deseja que um workflow reaja automaticamente quando um e-mail específico chegar.
* Você está construindo um pipeline de e-mail para ação (por exemplo, receber uma fatura por e-mail → extrair dados → criar um registro em um CRM).
* Você precisa processar anexos de e-mail programaticamente.

**Configuração**

<Tabs>
  <Tab title="Gmail">
    | Configuração                  | Tipo    | Descrição                                                             |
    | ----------------------------- | ------- | --------------------------------------------------------------------- |
    | `email_provider`              | String  | Defina como `gmail`.                                                  |
    | `poll_interval`               | Integer | Com que frequência a caixa de entrada é verificada, em segundos.      |
    | `filters.unread_only`         | Boolean | Quando `true`, apenas e-mails não lidos acionam o workflow.           |
    | `filters.from_email`          | String  | Acionar apenas para e-mails deste endereço de remetente.              |
    | `filters.subject_contains`    | String  | Acionar apenas quando o assunto contiver esta palavra-chave ou frase. |
    | `options.include_attachments` | Boolean | Quando `true`, os dados do anexo são incluídos na saída do trigger.   |

    <Note>
      Uma conexão OAuth do Gmail deve ser configurada no projeto antes de usar este trigger.
    </Note>
  </Tab>

  <Tab title="Office 365">
    | Configuração                  | Tipo    | Descrição                                                             |
    | ----------------------------- | ------- | --------------------------------------------------------------------- |
    | `email_provider`              | String  | Defina como `office365`.                                              |
    | `poll_interval`               | Integer | Com que frequência a caixa de entrada é verificada, em segundos.      |
    | `filters.unread_only`         | Boolean | Quando `true`, apenas e-mails não lidos acionam o workflow.           |
    | `filters.from_email`          | String  | Acionar apenas para e-mails deste endereço de remetente.              |
    | `filters.subject_contains`    | String  | Acionar apenas quando o assunto contiver esta palavra-chave ou frase. |
    | `options.include_attachments` | Boolean | Quando `true`, os dados do anexo são incluídos na saída do trigger.   |

    <Note>
      Uma conexão OAuth do Office 365 deve ser configurada no projeto antes de usar este trigger.
    </Note>
  </Tab>
</Tabs>

**Variáveis de saída**

| Variável                    | Descrição                                                                                                                            |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `trigger.email.from`        | O endereço de e-mail do remetente.                                                                                                   |
| `trigger.email.to`          | O endereço de e-mail do destinatário.                                                                                                |
| `trigger.email.subject`     | A linha de assunto do e-mail.                                                                                                        |
| `trigger.email.body`        | O corpo em texto simples do e-mail.                                                                                                  |
| `trigger.email.attachments` | Um array de objetos de anexo (nome do arquivo, tipo MIME, conteúdo). Preenchido apenas quando `include_attachments` está habilitado. |
| `trigger.email.date`        | O carimbo de data/hora de quando o e-mail foi recebido, no formato ISO 8601.                                                         |

<AccordionGroup>
  <Accordion title="Observações">
    * Os filtros são cumulativos. Se tanto `from_email` quanto `subject_contains` estiverem definidos, ambas as condições devem ser atendidas para que o trigger seja acionado.
    * Defina `unread_only` como `true` em workflows de produção para evitar o reprocessamento de e-mails que já foram tratados.
    * Use `trigger.email.attachments` com um nó Loop para processar múltiplos anexos de um único e-mail.
  </Accordion>
</AccordionGroup>

## Odin Meeting End

É acionado automaticamente quando uma reunião gravada pelo Odin termina e notas ou itens de ação são gerados. Use-o para construir workflows de automação pós-reunião — como distribuir resumos, criar tarefas de acompanhamento ou registrar insights da reunião em um CRM ou ferramenta de gerenciamento de projetos.

**Quando usar**

* Você deseja processar automaticamente notas da reunião ou itens de ação assim que a reunião terminar.
* Você está construindo um pipeline pós-reunião (por exemplo, reunião termina → extrair itens de ação → criar tarefas em uma ferramenta de gerenciamento de projetos).
* Você precisa registrar resumos de reunião em uma base de conhecimento ou registro de CRM automaticamente.

**Configuração**

| Configuração              | Tipo    | Descrição                                                                                                     |
| ------------------------- | ------- | ------------------------------------------------------------------------------------------------------------- |
| `Tool Description`        | String  | Uma descrição da ferramenta exibida na página de Ferramentas.                                                 |
| `Require Confirmation`    | Boolean | Quando habilitado, o usuário deve confirmar antes que o workflow seja executado.                              |
| `Open Workflow Panel`     | Boolean | Quando habilitado, exibe o painel de visualização do workflow quando este fluxo é executado a partir do chat. |
| `API Key`                 | String  | Sua API key do OdinAI para autenticação.                                                                      |
| `API Secret`              | String  | Seu segredo da API do OdinAI para autenticação.                                                               |
| `Project ID`              | String  | O ID do seu projeto OdinAI.                                                                                   |
| `Enable for all meetings` | Boolean | Quando habilitado, o trigger é acionado independentemente de qual reunião (da qual você participa) termine.   |
| `Event Type`              | String  | O evento da reunião que aciona o trigger. O padrão é `Meeting Done`.                                          |
| `Action Type`             | String  | O tipo de dados a ser recebido quando a reunião terminar. As opções são `Notes` e `Action Items`.             |

**Variáveis disponíveis**

| Variável                    | Descrição                           |
| --------------------------- | ----------------------------------- |
| `{{trigger.meeting.title}}` | O título da reunião que terminou.   |
| `{{trigger.meeting.notes}}` | As notas geradas por IA da reunião. |

<AccordionGroup>
  <Accordion title="Observações">
    * Requer credenciais da API do OdinAI (API Key, API Secret e Project ID) para autenticação.
    * Quando **Enable for all meetings** está ativado, o trigger é acionado para qualquer reunião da qual você participa. Desative-o para restringir o acionamento a reuniões específicas.
    * O **Action Type** determina se o trigger fornece notas da reunião ou itens de ação para os nós downstream.
    * Os dados da reunião estão acessíveis via `{{trigger.meeting.title}}`, `{{trigger.meeting.notes}}` e outros campos no payload da reunião.
  </Accordion>
</AccordionGroup>

## Telegram: New Message

É acionado quando o bot do Telegram recebe uma nova mensagem. O trigger usa um webhook para o qual o Telegram envia atualizações via POST, iniciando o workflow cada vez que uma mensagem é recebida.

**Quando usar**

* Você deseja construir um bot do Telegram que responda a mensagens de usuários com um workflow automatizado.
* Você está roteando mensagens recebidas do Telegram para um agent de IA ou pipeline de processamento.
* Você precisa capturar e agir sobre mensagens enviadas ao seu bot do Telegram em tempo real.

**Configuração**

| Configuração           | Tipo    | Descrição                                                                                                               |
| ---------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------- |
| `Tool Description`     | String  | Uma descrição da ferramenta exibida na página de Ferramentas.                                                           |
| `Require Confirmation` | Boolean | Quando habilitado, o usuário deve confirmar antes que o workflow seja executado.                                        |
| `Open Workflow Panel`  | Boolean | Quando habilitado, exibe o painel de visualização do workflow quando este fluxo é executado a partir do chat.           |
| `Allowed HTTP Method`  | String  | O método HTTP aceito pelo webhook. O padrão é `POST`.                                                                   |
| `Authentication`       | String  | Método de autenticação para solicitações webhook recebidas. O padrão é `None`.                                          |
| `Response Mode`        | String  | Como o webhook responde às solicitações recebidas. **Respond Immediately** retorna uma resposta `200 OK` imediatamente. |

**Configurando o webhook**

<Steps>
  <Step title="Publique a ferramenta">
    Publique o workflow para ativar o endpoint do webhook e gerar a URL ao vivo.
  </Step>

  <Step title="Registre o webhook no Telegram">
    Copie a **Live URL** e registre-a no seu bot do Telegram usando a ferramenta `telegram_set_webhook` ou o seguinte comando curl:

    ```bash theme={null}
    curl -X POST "https://api.telegram.org/bot<TOKEN>/setWebhook" \
      -H "Content-Type: application/json" \
      -d '{"url":"<WEBHOOK_URL>","allowed_updates":["message"]}'
    ```
  </Step>

  <Step title="Envie uma mensagem ao seu bot">
    Envie uma mensagem ao seu bot do Telegram. O Telegram fará POST na atualização para a URL do webhook e iniciará o workflow.
  </Step>
</Steps>

**Capturar dados de amostra (opcional)**

Para salvar um payload real para execuções de teste sem executar o workflow, envie o seguinte comando ao seu bot:

```
/generate_test_message Hello world
```

Clique em **Refresh** para carregar o payload capturado.

**Variáveis disponíveis**

| Variável                           | Descrição                                                |
| ---------------------------------- | -------------------------------------------------------- |
| `{{trigger.body}}`                 | Corpo da solicitação (JSON analisado).                   |
| `{{trigger.headers}}`              | Cabeçalhos da solicitação.                               |
| `{{trigger.query}}`                | Parâmetros de consulta.                                  |
| `{{trigger.method}}`               | Método HTTP.                                             |
| `{{trigger.body.message.text}}`    | O conteúdo de texto da mensagem recebida do Telegram.    |
| `{{trigger.body.message.chat.id}}` | O ID do chat da conversa de onde a mensagem foi enviada. |

<AccordionGroup>
  <Accordion title="Observações">
    * A **Test URL** (`/test` adicionada à Live URL) gera dados de amostra sem executar o workflow.
    * Os dados da mensagem estão acessíveis via `{{trigger.body.message.text}}`, `{{trigger.body.message.chat.id}}` e outros campos no payload de atualização do Telegram.
    * Serviços externos enviam solicitações HTTP para a URL do webhook; cada solicitação aciona uma nova execução do workflow.
    * Publique a ferramenta para ativar o endpoint do webhook antes de registrá-lo no Telegram.
  </Accordion>
</AccordionGroup>
