3CX AI Agents Agentic Tools

Introduzione

Gli strumenti per gli agenti consentono agli agenti di interagire con il centralino e con i chiamanti, eseguendo funzioni quali il trasferimento delle chiamate e il recupero di informazioni. Nel presente documento elenchiamo gli strumenti disponibili per ciascun tipo di agente, insieme alla loro funzione.

Nozioni di base sull’utilizzo e la formattazione

I messaggi di prompt dell’agente IA 3CX utilizzano la sintassi Mustache. Questa sezione fornisce una panoramica della sintassi. La comprensione di queste regole garantisce la corretta integrazione degli strumenti per agenti IA 3CX nei prompt.

  • Le variabili vengono richiamate utilizzando la sintassi Mustache racchiudendo l’identificatore tra parentesi graffe.
  • {{...}} or {{{...}}}  -> (no #, ^ o /) estituisce (riproduce) il contenuto grezzo di una variabile direttamente in quella posizione (senza escape HTML).
  • È possibile racchiudere una sezione di prompt all’interno di un blocco; il contenuto viene visualizzato nel testo finale del prompt solo se una variabile supera un test.
  • È possibile effettuare un test positivo
  • {{#...}} -> il blocco si apre solo se la variabile ha un contenuto o è TRUE
  • {{/…}} -> chiusura del blocco
  • or a negative test:
  • {{^...}} -> il blocco si apre solo se la variabile è vuota o FALSE
  • {{/…}} -> chiusura del blocco
  • Gli strumenti Agentic possono essere “richiamati” per nome, ma è l’Agente IA a richiamarli quando determina che sono necessari.

Di seguito sono riportati due esempi, entrambi basati sulle destinazioni di inoltro delle chiamate Route By Topic definite nella scheda Call Routing dell’Agente IA di 3CX.

Nei nostri esempi utilizzeremo:

  • Variable addressbook_topics: Questa variabile contiene tutte le voci Route by Topic configurate; viene popolata con gli argomenti ogni volta che l’Agent si avvia o si riavvia; funziona come una variabile di sistema.
  • Strumento get_addressbook: Uno strumento Agentic che recupera su richiesta le voci degli argomenti configurati.
  • Strumento resolve_handoff_destination: Uno strumento Agentic che risolve le richieste in linguaggio naturale assegnandole a destinazioni (interni).

Esempio 1

Gli strumenti Agentic possono essere menzionati nel prompt principale con indicazioni per l’Agente IA sul loro utilizzo, consentendogli di decidere liberamente quando richiamarli.

Se il chiamante chiede di un reparto o pone una domanda su un problema, utilizzare prima get_addressbook per verificare se esistono argomenti correlati alla domanda, quindi utilizzare immediatamente resolve_handoff_destination, senza fornire prima una risposta informativa.

Nell’esempio sopra riportato, questa aggiunta al prompt consentirà al modello di IA di sapere quali strumenti sono disponibili e poi di decidere se richiamarli o meno. Il testo sopra riportato sarà sempre presente nel prompt finale risolto, indipendentemente dal fatto che siano stati impostati degli argomenti.

Esempio 2

È inoltre possibile utilizzare la sintassi Mustache per aggiungere una logica di base alla costruzione del prompt, saltando gli elementi quando non sono necessari; ciò può portare a un prompt finale più compatto o più pulito.

{{#addressbook_topics}}

Se il chiamante chiede informazioni su un reparto o pone una domanda relativa a un problema, verifica se nell’elenco seguente sono presenti argomenti correlati alla domanda:

{{addressbook_topics}}

e utilizza immediatamente resolve_handoff_destination, senza fornire prima una risposta informativa.

{{/addressbook_topics}}

 

{{^addressbook_topics}}

Utilizza immediatamente resolve_handoff_destination, non fornire prima una risposta informativa.

{{/addressbook_topics}}

In questo esempio:

  • Per prima cosa verifichiamo se addressbook_topics è impostato/esiste e, in caso affermativo,
  • Visualizziamo un elenco di tali argomenti nel prompt affinché l’agente AI
  • Utilizza lo strumento resolve_handoff_destination per individuare la destinazione ottimale per la chiamata, sulla base dell’elenco degli argomenti (e della sua conoscenza dei nostri reparti e degli interni utente/di sistema).
  • Se invece gli addressbook_topics non sono impostati,
  • non “inquinamo” il prompt con testo superfluo e un elenco vuoto, ma chiediamo all’agente di:
  • utilizzare lo strumento resolve_handoff_destination per individuare la destinazione ottimale per la chiamata, sulla base della sua conoscenza dei nostri reparti e degli interni utente/di sistema.

In un centralino in cui è stato configurato un unico argomento: Per qualsiasi problema elettrico: 106 la definizione del prompt sopra riportata genererebbe il seguente testo finale del prompt, che l’agente IA dovrà seguire:

Se il chiamante chiede di un reparto o pone una domanda su un problema, verifica se nell’elenco seguente sono presenti argomenti correlati alla domanda:

- Per qualsiasi problema elettrico

e utilizza immediatamente resolve_handoff_destination, senza fornire prima una risposta informativa.

Va sottolineato che gli agenti di intelligenza artificiale conoscono già questi strumenti e le loro funzionalità. In una chiamata standard che utilizza i prompt predefiniti, l’agente può utilizzarli senza bisogno di istruzioni esplicite. Tuttavia, se si desidera influenzare il comportamento dell’agente o imporre una sequenza di esecuzione rigorosa, è possibile istruirlo a richiamare gli strumenti direttamente all’interno del prompt, come illustrato sopra.

Strumenti degli agenti nella chat

Il prompt dell’agente IA è comune a tutti gli agenti, indipendentemente dal canale di comunicazione, vocale o testuale/chat. Le descrizioni degli strumenti riportate di seguito si concentrano sul canale vocale e, nella maggior parte dei casi, funzioneranno in modo identico anche nella chat.

Alcuni strumenti che gestiscono l’instradamento delle chiamate vocali, come il trasferimento alla segreteria telefonica, ovviamente non funzioneranno in una comunicazione testuale, mentre altri eseguiranno le loro azioni in modo leggermente diverso, ma comunque nel rispetto delle specifiche riportate di seguito.

Strumenti degli agenti per tipo di agente

Nome strumento

Funzione

Strumenti per ruolo

Receptionist

Assistente Personale

Servizio

Clienti (U10)

classify_request_before_handoff

Consente ai flussi di lavoro dell’Assistente Personale di distinguere tra scenari di interruzione, notifica e blocco. Quando il chiamante non è il superiore dell’Assistente Personale, memorizza la classificazione della chiamata in modo che l’agente possa decidere come procedere.

No

No

drop_call

Consente all’assistente di terminare la conversazione.

find_contact_by_extension

Recupera informazioni su un interno specifico.

get_addressbook

Carica l’elenco “Route by Topic”, consentendo all’agente IA di utilizzarne gli elementi nella conversazione e di scegliere le destinazioni.

get_current_datetime

Restituisce la data e l’ora correnti sia in UTC che nell’ora locale del sistema.

perform_chat

Avvia la procedura di terminazione della chiamata notificando la destinazione appropriata tramite un messaggio di chat.

perform_email

Avvia la procedura di conclusione della chiamata avvisando la destinazione appropriata tramite e-mail.

perform_transfer

Avvia la procedura di conclusione della chiamata trasferendo la chiamata alla destinazione appropriata.

perform_voicemail

Avvia la procedura di conclusione della chiamata trasferendo la chiamata alla segreteria telefonica della destinazione appropriata.

resolve_handoff_destination

Esegue la richiesta di trasferimento del chiamante utilizzando una ricerca a testo libero tra tutti gli endpoint di trasferimento consentiti.

No

set_detected_language

Consente all’assistente di ricordare la lingua rilevata del chiamante e di utilizzarla nelle interazioni successive.

spam_detected

Registra che la chiamata in corso è stata identificata come spam.

take_handoff_decision

Registra il tipo di trasferimento previsto e il numero di interno.

take_hostility_action

Registra che il chiamante sta assumendo un comportamento ostile o offensivo.

take_not_collaborative_action

Registra che il chiamante non è disposto a collaborare con l’assistente.

vector_store_search

Consente all’assistente di recuperare informazioni dalle basi di conoscenza configurate e dai documenti indicizzati.

Strumenti, input e output agenti

Nome strumento

Input

Output

Requisiti

classify_request_before_handoff

Classificazioni disponibili:

  • notify (Default)
  • interruzione
  • blocco

Conferma che la classificazione è stata salvata.

drop_call

Nessuna

Risultato restituito dal sottosistema di terminazione delle chiamate.

find_contact_by_extension

Numero di interno, ad es. 100.

Una tabella di directory preceduta da uno stato di risoluzione.

Resolution: exact_contact

ext|name|department|available|can_receive_email

100|John Smith|Sales|true|true

get_addressbook

Nessuna

Un elenco contenente tutti gli argomenti configurati.

  • Topic 1
  • Topic 2 ...

get_current_datetime

Nessuna

Una stringa contenente:

  • Timestamp UTC corrente
  • Timestamp locale corrente
  • Nome del fuso orario locale

perform_chat

Nessuna (utilizza le informazioni esistenti sul contesto della chiamata tramite strumenti secondari non visibili).

Conferma che la decisione relativa alla chat è stata registrata.

PA segue le regole di notifica, gli altri utilizzano l'impostazione predefinita “disponibile”.

perform_email

Nessuna (utilizza le informazioni esistenti sul contesto della chiamata tramite strumenti secondari non visibili).

Conferma che la decisione relativa alla chat è stata registrata.

La destinazione deve essere idonea a ricevere e-mail.

PA segue le regole di notifica, gli altri utilizzano l'impostazione predefinita “disponibile”.

perform_transfer

Nessuna (utilizza le informazioni esistenti sul contesto della chiamata tramite strumenti secondari non visibili).

Conferma che la decisione relativa al trasferimento è stata registrata.

PA segue le regole di notifica, gli altri utilizzano l'impostazione predefinita “disponibile”.

perform_voicemail

Nessuna (utilizza le informazioni esistenti sul contesto della chiamata tramite strumenti secondari non visibili).

Conferma che la decisione relativa al messaggio vocale è stata registrata.

PA segue le regole di notifica, gli altri utilizzano l'impostazione predefinita “disponibile”.

resolve_handoff_destination

destinazione – testo libero fornito dal chiamante.

Può restituire: exact_contact, multiple_contacts, no_contact.

Requisiti::

allowed_search=True

Resolution: exact_contact

ext|name|department|available|can_receive_email

801|Sales Team|Sales|true|false

set_detected_language

lingua – nome della lingua rilevata.

Conferma che la lingua è stata memorizzata.

Requisiti::

switch_language=True

spam_detected

motivo – spiegazione del motivo per cui la chiamata è stata classificata come spam.

Conferma che il segnale di spam è stato registrato.

take_handoff_decision

Genere – trasferimento, segreteria telefonica, chat, e-mail.

destinazione – numero di interno.

Conferma che la decisione di trasferimento è stata registrata.

take_hostility_action

motivo – spiegazione del comportamento ostile rilevato.

Conferma che il segnale di ostilità è stato registrato.

take_not_collaborative_action

motivo – spiegazione del comportamento rilevato.

Conferma che il segnale di collaborazione è stato registrato.

vector_store_search

vs_id – identificatore dell’archivio dei vettori.

query – query di ricerca.

top_k – numero massimo di risultati da restituire.

Risultati rilevanti recuperati dall'archivio vettoriale specificato.

Richiede uno o più archivi vettoriali configurati.

Per saperne di più

Ultimo aggiornamento
Questo documento è stato aggiornato il 21 agosto 2026
https://www.3cx.com/docs/agentic-ai-tools/