3CX AI Agents Agentic Tools
Introdução
As ferramentas para agentes permitem que os agentes interajam com o PABX e com os chamadores, realizando funções como transferência de chamadas e recuperação de informações. Neste documento, listamos as ferramentas disponíveis para cada tipo de agente, juntamente com suas funções.
Noções Básicas de Uso e Formatação
Os prompts do Agente de IA 3CX utilizam a sintaxe Mustache. Esta seção apresenta uma visão geral da sintaxe. Compreender essas regras garante a integração precisa de ferramentas agentic nos prompts do 3CX AI Agent.
- As variáveis são invocadas usando a sintaxe Mustache, colocando o identificador entre chaves.
- {{...}} ou {{{...}}} -> (sem #, ^ ou /) retorna (exibe) o conteúdo bruto de uma variável diretamente nesse local (sem escape de HTML).
- Podemos incluir uma seção do prompt dentro de um bloco; o conteúdo só é exibido no texto final do prompt se uma variável passar em um teste.
- Temos a opção de realizar um teste com resultado positivo
- {{#...}} -> o bloco só é aberto se a variável tiver conteúdo ou for TRUE
- {{/…}} -> fechamento do bloco
- ou um resultado negativo no teste:
- {{^...}} -> o bloco só é aberto se a variável estiver vazia ou for FALSE
- {{/…}} -> fechamento do bloco
- Ferramentas Agênticas podem ser "invocadas" pelo nome, mas o Agente de IA as chama quando determina que são necessárias.
A seguir, dois exemplos, ambos utilizando os destinos de encaminhamento de chamadas Route By Topic (Encainhar por Tópico) que você define na guia Encaminhamento de Chamadas do Agente de IA 3CX.
Em nossos exemplos, utilizaremos:
- variável addressbook_topics - essa variável contém todas as entradas Route by Topic (Encainhar por Tópico) que você configurou; ela é preenchida com os Tópicos sempre que o Agente é (re)iniciado; funciona como uma variável de sistema.
- ferramenta get_addressbook - uma ferramenta Agêntica que busca as entradas de Tópico configuradas sob demanda.
- ferramenta resolve_handoff_destination - uma ferramenta Agêntica que resolve solicitações em linguagem natural para destinos (ramais).
Exemplo 1
As ferramentas de agência podem ser mencionadas no prompt principal, acompanhadas de orientações para o Agente de IA sobre como utilizá-las, permitindo que ele decida livremente quando recorrer a elas.
Se o chamador solicitar um departamento ou fizer uma pergunta sobre um problema, use primeiro get_addressbook ara verificar se há tópicos relacionados à pergunta e use resolve_handoff_destination imediatamente; não dê uma resposta informativa antes.
No exemplo acima, essa adição ao prompt permitirá que o modelo de IA saiba quais ferramentas estão disponíveis e, então, decida se elas devem ou não ser acionadas. O texto acima sempre estará presente no prompt final, independentemente de terem sido definidos ou não quaisquer Tópicos.
Exemplo 2
Você também pode usar a sintaxe do Mustache para adicionar alguma lógica básica à construção do prompt, omitindo elementos quando eles não forem necessários; isso pode resultar em um prompt final mais compacto ou mais claro.
{{#addressbook_topics}}
Se o interlocutor solicitar um departamento ou fizer uma pergunta sobre um problema, verifique se há tópicos relacionados à pergunta na lista a seguir:
{{addressbook_topics}}
e use resolve_handoff_destination imediatamente; não responda de forma informativa primeiro.
{{/addressbook_topics}}
{{^addressbook_topics}}
Use resolve_handoff_destination imediatamente; não responda de forma informativa primeiro.
{{/addressbook_topics}}
Neste exemplo:
- Primeiro, verificamos se addressbook_topics estão definidos/existem e, caso estejam,
- reproduzimos uma lista desses tópicos no prompt para que o Agente de IA
- utilize a ferramenta resolve_handoff_destination para encontrar o melhor destino para a chamada, com base na lista de Tópicos (e no conhecimento que ela possui sobre nossos Departamentos e ramais de usuários/sistemas).
- Então, se addressbook_topics não estiverem definidos,
- não “sujamos” o prompt com texto extra e uma lista vazia; em vez disso, pedimos que ele
- utilize a ferramenta resolve_handoff_destination para encontrar o melhor destino para a chamada, com base no conhecimento que ela possui sobre nossos Departamentos e ramais de usuários/sistemas.
Em um PABX em que foi configurado um único tópico: "Para quaisquer problemas elétricos: 106", a definição de prompt acima geraria o texto final do prompt abaixo, a ser seguido pelo Agente de IA:
Se o interlocutor solicitar um departamento ou fizer uma pergunta sobre um problema, verifique se há tópicos relacionados à pergunta na lista a seguir:
- Para qualquer problema elétrico
e use resolve_handoff_destination imediatamente; não responda de forma informativa primeiro.
É importante fazer a observação de que os agentes de IA já possuem conhecimento dessas ferramentas e de suas capacidades. Em uma chamada padrão, utilizando prompts padrão, o agente pode utilizá-las sem instruções explícitas. No entanto, se você quiser influenciar o comportamento do agente ou definir uma sequência de execução rígida, pode instruí-lo a chamar as ferramentas diretamente no prompt, conforme mostrado acima.
Ferramentas Agênticas no Chat
O prompt do Agente de IA é o mesmo em todos os agentes, independentemente do canal de comunicação, seja de voz ou de texto/chat. As descrições da ferramenta abaixo se concentram no canal de voz e, na maioria dos casos, funcionarão da mesma forma também no chat.
Certas ferramentas que realizam o encaminhamento de chamadas de voz, como o encaminhamento para a caixa postal, obviamente não funcionarão em uma comunicação baseada em texto, e outras realizarão suas ações de maneira ligeiramente diferente, mas dentro da especificação apresentada a seguir.
Ferramentas Agênticas por Tipo de Agente
Nome da Ferramenta | Função | Disponibilidade de ferramentas por Função | ||
Recepcionista | Assistente Pessoal | Atendimento ao Cliente (U10) | ||
classificar_solicitação_antes_da_transferência | Permite que os fluxos de trabalho do Assistente Pessoal distingam entre cenários de interrupção, notificação e bloqueio. Quando quem liga não é o chefe do Assistente Pessoal, o sistema armazena a classificação da chamada para que o agente possa decidir como proceder. | Não | Sim | Não |
drop_call | Permite que o assistente encerre a conversa | Sim | Sim | Sim |
encontrar_contato_por_ramal | Recupera informações sobre um ramal específico. | Sim | Sim | Sim |
get_addressbook | Carrega a lista “Encaminhar por Tópico”, permitindo que o agente de IA utilize seus elementos na conversa, bem como escolha destinos. | Sim | Sim | Sim |
get_current_datetime | Retorna a data e a hora atuais tanto no formato UTC quanto no horário local do sistema. | Sim | Sim | Sim |
executar_chat | Inicia o processo de encerramento da chamada, notificando o destinatário correspondente por meio de uma mensagem de chat. | Sim | Sim | Sim |
executar_e-mail | Inicia o processo de encerramento da chamada, notificando o destinatário apropriado por e-mail. | Sim | Sim | Sim |
executar_transferência | Inicia o processo de encerramento da chamada, transferindo-a para o destino adequado. | Sim | Sim | Sim |
executar_mensagem de voz | Inicia o processo de encerramento da chamada, transferindo-a para a caixa postal do destinatário correspondente. | Sim | Sim | Sim |
resolver_destino_da_transferência | Atenda à solicitação de transferência do chamador por meio de uma pesquisa de destino em texto livre entre todos os terminais de transferência permitidos. | Sim | Não | Sim |
definir_idioma_detectado | Permite que o assistente memorize o idioma detectado do chamador e o utilize em interações posteriores. | Sim | Sim | Sim |
spam_detectado | Registra que a chamada atual foi identificada como spam. | Sim | Sim | Sim |
tomar_decisão_sobre_o_repasso | Registra o tipo de transferência pretendida e o número do ramal. | Sim | Sim | Sim |
realizar_ação_hostil | Registra que o interlocutor está se comportando de maneira hostil ou abusiva. | Sim | Sim | Sim |
não_tomar_medidas_colaborativas | Registra que o autor da chamada não está disposto a cooperar com o assistente. | Sim | Sim | Sim |
vector_store_search | Permite que o assistente recupere informações de bases de conhecimento configuradas e de documentos indexados. | Sim | Sim | Sim |
Ferramentas Agênticas, Entradas e Saídas
Nome da Ferramenta | Entrada | Saída | Requisitos |
classificar_solicitação_antes_da_transferência | Classificações disponíveis:
| Confirmação de que a classificação foi salva. | |
drop_call | Nenhum | Resultado retornado pelo subsistema de encerramento de chamadas. | |
encontrar_contato_por_ramal | Número de ramal, por exemplo, 100. | Uma tabela de diretório precedida por um status de resolução. | |
Resolução: exact_contact ext|nome|departamento|disponível|pode receber e-mail 100|John Smith|Vendas|verdadeiro|verdadeiro | |||
get_addressbook | Nenhum | Uma lista contendo todos os tópicos configurados. | |
| |||
get_current_datetime | Nenhum | A string containing:
| |
executar_chat | Nenhuma (utiliza informações existentes do contexto da chamada por meio de ferramentas secundárias, não expostas). | Confirmação de que a decisão do chat foi registrada. | O PA segue as regras de notificação; os demais assumem o padrão “disponível”. |
executar_e-mail | Nenhuma (utiliza informações existentes do contexto da chamada por meio de ferramentas secundárias, não expostas). | Confirmação de que a decisão do chat foi registrada. |
|
executar_transferência | Nenhuma (utiliza informações existentes do contexto da chamada por meio de ferramentas secundárias, não expostas). | Confirmação de que a decisão de transferência foi registrada. | O PA segue as regras de notificação; os demais assumem o padrão “disponível”. |
executar_mensagem de voz | Nenhuma (utiliza informações existentes do contexto da chamada por meio de ferramentas secundárias, não expostas). | Confirmação de que a decisão sobre a caixa postal foi gravada. | O PA segue as regras de notificação; os demais assumem o padrão “disponível”. |
resolver_destino_de_transferência | destino – texto livre fornecido pelo chamador. | Pode retornar: exact_contact, multiple_contacts, no_contact. | Requisitos: allowed_search=True |
Resolução: exact_contact ext|nome|departamento|disponível|pode_receber_e-mail 801|Equipe de Vendas|Vendas|verdadeiro|falso | |||
definir_idioma_detectado | idioma – nome do idioma detectado. | Confirmação de que o idioma foi salvo. | Requisitos: switch_language=True |
spam_detectado | motivo – explicação do motivo pelo qual a ligação foi classificada como spam. | Confirmação de que o sinal de spam foi registrado. | |
tomar_decisão_sobre_transferência | tipo – transferência, correio de voz, chat, e-mail. destino – ramal. | Confirmação de que a decisão sobre a transferência foi registrada. | |
realizar_ação_hostil | motivo – explicação do comportamento hostil detectado. | Confirmação de que o sinal de hostilidade foi registrado. | |
não_tomar_medidas_colaborativas | motivo – explicação do comportamento detectado. | Confirmação de que o sinal de colaboração foi registrado. | |
vector_store_search | vs_id – identificador do armazenamento vetorial. consulta – consulta de pesquisa. top_k – número máximo de resultados a serem retornados. | Resultados relevantes recuperados do repositório vetorial especificado. | Requer um ou mais armazenamentos vetoriais configurados. |
Veja Também
Última Atualização
Este documento foi atualizado pela última vez em 05 de agosto de 2026
https://www.3cx.com.br/docs/agentic-ai-tools/
