# Caso d'uso - Aggiornamento automatico: il tuo Agente sempre connesso al web

AIsuru offre la potente capacità di arricchire le conversazioni del tuo Agente con informazioni in tempo reale provenienti da siti web esterni. Questa funzionalità permette al tuo assistente virtuale di fornire dati aggiornati su vari argomenti, migliorando notevolmente la qualità e la rilevanza delle interazioni.

In questa guida, vedremo un esempio concreto di implementazione: creeremo una funzione per recuperare e analizzare contenuti HTML da una pagina web in tempo reale. Questo ci permetterà di rielaborare il codice HTML ed estrarre i contenuti utili attraverso l'IA generativa.

### Implementazione di una funzione per recuperare contenuti web live

Seguiamo passo dopo passo la creazione di una funzione che recupera contenuti HTML da un sito web e li analizza:

1. **Accesso e creazione**
   * Accedi al pannello di gestione del tuo Agente in AIsuru;
   * Vai su "Funzioni" > "Funzioni avanzate";
   * Clicca su "Nuova funzione".
2. **Configurazione della funzione**
   * **Nome**: dai un nome breve ma descrittivo della tua funzione (es. domande\_sito, non usare gli spazi);
   * **Descrizione**: fai copia e incolla di questa descrizione; "Questa funzione recupera il contenuto HTML di una pagina web specifica. Utilizzala quando un utente chiede informazioni o aggiornamenti da un sito web particolare."
   * **Webhook**: inserisci il link della pagina da analizzare;
   * **Metodo HTTP**: usa il metodo GET già selezionato.
3. **Test della funzione**
   * Scorri in fondo e premi sul tasto Test > Esegui;
   * Verifica il funzionamento della tua funzione: dovresti vedere il codice della pagina web come risposta.

✅ Se è tutto corretto puoi salvare la tua funzione.

#### Integrazione nelle istruzioni dell'Agente

Ora che la tua funzione è pronta, la dovrai integrare nelle Istruzioni dell'Agente:

1. Vai alla sezione Impostazioni del tuo Agente > IA > Istruzioni;
2. Aggiungi queste istruzioni:

```
Sei un assistente specializzato nell'analisi di contenuti web in tempo reale. Quando un utente chiede informazioni da un sito web specifico:

1. Usa la funzione [nome della funzione] con l'URL della pagina come parametro;
2. Analizza il contenuto HTML ricevuto ed estrai le informazioni rilevanti;
3. Presenta le informazioni in modo chiaro e conciso, organizzandole in un formato facilmente comprensibile;
4. Se richiesto, fornisci ulteriori dettagli o approfondimenti sul contenuto analizzato.
```

### Esempio pratico: il blog del Comune di Verona

Vediamo ora un esempio concreto di come utilizzare questa funzione per creare un Agente che mostri all'utente gli articoli presenti in tempo reale sul blog del Comune di Verona.

#### Configurazione Specifica:

* **Nome**: comune\_verona\_blog
* **Descrizione**: "Utilizza questa funzione quando l'utente chiede i contenuti del blog del comune di Verona. Analizza le informazioni per rispondere in maniera chiara e organizzata."
* **Webhook**: <https://www.comune.verona.it/nqcontent.cfm?a\\_id=70461>

{% hint style="warning" %}
**Ricorda di rispettare sempre i termini di servizio dei siti web che intendi analizzare**.\
\
Se l'Agente non riesce ad estrapolare le informazioni, assicurati di non star superando la [finestra di contesto](/ai-generativa/provider.md#cosa-e-il-contesto) (se la pagina è particolarmente lunga e complessa) e che il file robots.txt non blocchi l'accesso al modello linguistico.
{% endhint %}

#### Istruzioni specifiche per l'Agente

Aggiungi queste istruzioni specifiche al prompt dell'Agente:

```
Sei un assistente specializzato per il blog del Comune di Verona. Quando un utente chiede informazioni sugli articoli recenti:

1. Usa la funzione comune_verona_blog per ottenere il contenuto HTML della pagina del blog;
2. Analizza il contenuto ed estrai titoli e brevi descrizioni degli articoli recenti;
3. Presenta un elenco organizzato degli articoli all'utente, includendo titolo e una breve sintesi per ciascuno;
4. Offri la possibilità di fornire ulteriori dettagli su articoli specifici se richiesto.
```

#### Esempio di interazione

> ***Utente**: "Quali sono gli articoli recenti nel blog di Verona?"*
>
> *\[L'Agente utilizza la funzione* comune\_verona\_blo&#x67;*]*
>
> ***Agente**: Certamente! Lascia che controlli gli ultimi aggiornamenti dal blog del Comune di Verona.*
>
> *Ecco un elenco degli articoli più recenti pubblicati sul blog del Comune di Verona:*
>
> 1. ***Scuole dell'Infanzia: Accoglienza bambini 3-6 anni***
>    * *Il Comune annuncia nuove iniziative per l'accoglienza dei bambini nelle scuole dell'infanzia, con focus su attività educative e socializzazione.*
> 2. ***Consiglio comunale: Apertura 2° sessione 2024***
>    * *Annuncio della data e dell'ordine del giorno per la prossima sessione del Consiglio comunale, con discussioni su importanti temi cittadini.*
> 3. ***Bando di gara n.23/24: Nomina Commissione giudicatrice***
>    * *Informazioni sulla nomina della commissione giudicatrice per un recente bando di gara comunale, includendo dettagli sul processo di selezione.*
>
> *Desideri ulteriori informazioni su uno di questi articoli in particolare o preferisci una panoramica generale sulle attività recenti del Comune?*

Con questa implementazione, **il tuo Agente diventa una fonte affidabile di informazioni aggiornate da siti web specifici**. Questo esempio di funzione per l'analisi di contenuti web è solo l'inizio: puoi applicare lo stesso approccio per integrare dati da vari siti web, espandendo ulteriormente le capacità del tuo Agente! 🌟


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.aisuru.com/avanzate/integrazioni/funzioni/funzioni-avanzate/funzioni-avanzate-best-practice-e-casi-duso/caso-duso-aggiornamento-automatico-il-tuo-agente-sempre-connesso-al-web.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
