# Indice della documentazione

Benvenuti nella documentazione ufficiale di [OpenCity Italia](https://opencityitalia.it/it/), piattaforma open source gestita e sviluppata da OpenCityLabs. In questa pagina trovi tutto il materiale necessario: dalle prospettive di sviluppo futuro, agli aggiornamenti recenti, fino ai manuali operativi e alle slide di formazione.

## 🛠️ Evoluzioni

Scopri le prossime funzionalità in arrivo.

{% content-ref url="/pages/Ow9XCr2L7jccb1L0uoKI" %}
[Roadmap di sviluppo](/evoluzioni/roadmap-di-sviluppo)
{% endcontent-ref %}

{% content-ref url="/pages/AfoPcCRaSboorzUHBBjU" %}
[Changelog](/evoluzioni/changelog)
{% endcontent-ref %}

## 📖 Manualistica

Consulta le guide operative per usare, configurare e gestire i prodotti OpenCity.

### 🤖 OpenCity AI

<table data-view="cards"><thead><tr><th></th><th data-type="image"></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>🤖  <em>OpenCity AI Assistant</em></td><td></td><td><strong>Supporto AI per funzionari e dirigenti</strong></td><td><a href="/spaces/0AdQysODIf5E7oHfQAtY">/spaces/0AdQysODIf5E7oHfQAtY</a></td></tr><tr><td>💬 <em>OpenCity AI Chatbot</em></td><td></td><td><strong>Architettura e funzionalità del chatbot</strong></td><td><a href="/spaces/R5qTx8bksn2njb5reyN5">/spaces/R5qTx8bksn2njb5reyN5</a></td></tr></tbody></table>

### ✉️ OpenCity Connect

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>✉️ <strong>Guida all'invio di notifiche ai cittadini tramite AppIO ed email</strong></td><td><a href="/spaces/hvfma71FhcUHvlRwF4rM">/spaces/hvfma71FhcUHvlRwF4rM</a></td></tr></tbody></table>

### ✍️ Sito web

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>✍️ <strong>Guida alla gestione dei contenuti sul sito web</strong></td><td><a href="/spaces/fYDGLbEkTaK5gywjDOEN">/spaces/fYDGLbEkTaK5gywjDOEN</a></td></tr></tbody></table>

### 📋 Stanza del cittadino

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>👤 <strong>Guida alle funzioni operatore di gestione delle pratiche online</strong></td><td><a href="/spaces/buF4yaTdhboReojXsnKw">/spaces/buF4yaTdhboReojXsnKw</a></td></tr><tr><td>🧩 <strong>Guida per sviluppatori e partner tecnologici</strong></td><td><a href="/spaces/NwAiDeLoMPCkkp1BdSbI">/spaces/NwAiDeLoMPCkkp1BdSbI</a></td></tr><tr><td>⚙️ <strong>Guida alle funzioni admin per la creazione e configurazione dei servizi digitali</strong></td><td><a href="/spaces/rdV0mwA7iy2c3I7wu5BX">/spaces/rdV0mwA7iy2c3I7wu5BX</a></td></tr><tr><td>🛠️ <strong>Guida all'infrastruttura, all'installazione e alla manutenzione della piattaforma</strong></td><td><a href="/spaces/3Lijwdi7sVujjCdIagU2">/spaces/3Lijwdi7sVujjCdIagU2</a></td></tr></tbody></table>

## 🖼 Materiali di presentazione

Consulta le slide di presentazione dei prodotti OpenCity.&#x20;

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>📽️ <strong>Presentazioni prodotto</strong></td><td><a href="https://docs.opencityitalia.it/materiali-di-presentazione/presentazioni-prodotto">https://docs.opencityitalia.it/materiali-di-presentazione/presentazioni-prodotto</a></td></tr></tbody></table>


# Indice della documentazione

Manualistica

Elenco dei manuali OpenCity Italia&#x20;

### OpenCity Sito web

Guida alle funzioni redattore di gestione dei contenuti sul sito web

{% content-ref url="/spaces/fYDGLbEkTaK5gywjDOEN" %}
[Sito web](https://docs.opencityitalia.it/sito-web/)
{% endcontent-ref %}

### OpenCity Stanza del cittadino

Guida alle funzioni operatore di gestione delle pratiche online

{% content-ref url="/spaces/buF4yaTdhboReojXsnKw" %}
[Stanza del cittadino - Funzioni](https://docs.opencityitalia.it/stanza-del-cittadino/)
{% endcontent-ref %}

### Sviluppo dei servizi digitali

Guida alle funzioni admin di creazione e configurazione dei servizi digitali

{% content-ref url="/spaces/rdV0mwA7iy2c3I7wu5BX" %}
[Stanza del cittadino - Creazione servizi](https://docs.opencityitalia.it/stanza-del-cittadino/guida-alla-creazione-dei-servizi-digitali/)
{% endcontent-ref %}

## OpenCity AI Chatbot

{% content-ref url="/spaces/R5qTx8bksn2njb5reyN5" %}
[OpenCity AI Chatbot](https://docs.opencityitalia.it/ai/architettura-e-funzionalita-del-chatbot/)
{% endcontent-ref %}

## Guida all'infrastruttura e alle integrazioni

{% content-ref url="/spaces/3Lijwdi7sVujjCdIagU2" %}
[Stanza del cittadino - Installazione](https://docs.opencityitalia.it/stanza-del-cittadino/installazione-e-manutenzione/)
{% endcontent-ref %}

{% content-ref url="/spaces/NwAiDeLoMPCkkp1BdSbI" %}
[Stanza del cittadino - Integrazioni](https://docs.opencityitalia.it/stanza-del-cittadino/sviluppatori-e-partner-tecnologici/)
{% endcontent-ref %}


# Roadmap di sviluppo

Scopri su cosa stiamo lavorando e le prossime funzionalità in arrivo.

## Opencity Connect

*OpenCity Connect è un back office di gestione dell’invio di comunicazioni personalizzate a gruppi utenti. Risponde al bisogno dell’ente di avere uno strumento sufficientemente flessibile per governare l’invio di notifiche e sfruttare pienamente il potenziale di app IO, una delle infrastrutture digitali più importanti del Paese.*

#### 2026

Il prodotto è stato rilasciato ad aprile 2026 in una versione beta production-ready comprensiva di [documentazione](https://docs.opencityitalia.it/manuale-di-utilizzo-di-oc-connect). Nel periodo da maggio a settembre, un primo nucleo di enti ha iniziato a utilizzarlo in produzione per l'invio di comunicazioni ai cittadini con l'invio di decine di migliaia di messaggi personalizzati. La nascita del prodotto è l'occasione per vedere all'opera alcuni nuovi componenti infrastrutturali di OpenCity per la gestione dei workflow (Windmill) e per la gestione dell'autenticazione (Authentik).

Nell'ultimo trimestre dell'anno è prevista una valutazione di possibili sviluppi basati sull'analisi dell'utilizzo della piattaforma e dei feedback degli enti. Tra questi, è in corso di valutazione una integrazione di OC Connect con area personale utente, per fornire al cittadino un archivio dei propri messaggi in area personale.

## Opencity AI Assistant

*OpenCity AI Assistant fornisce a tutti i dipendenti dell'ente, dai funzionari ai dirigenti, un unico ambiente di lavoro potenziato dall'intelligenza artificiale. Basta descrivere quello che si sta cercando di fare: l'assistente recupera informazioni, prepara bozze, monitora scadenze e segnala criticità, tutto attraverso una conversazione in linguaggio naturale.*

#### 2026

La versione beta production-ready è stata rilasciata a giugno 2026 comprensiva di [documentazione](https://docs.opencityitalia.it/oc-ai-assistant). La nascita del prodotto è l'occasione per vedere all'opera nuovi componenti infrastrutturali di OpenCity per la gestione dell'autenticazione (Authentik) e delle notifiche (Novu). L'assistente introduce e sperimenta un approccio di agentic RAG e un sistema di auditing avanzato in grado di soddisfare i più stringenti requisiti normativi.&#x20;

A partire dal terzo trimestre dell'anno è previsto l'on boarding di un primo nucleo di enti. L'analisi dei dati di utilizzo e dei feedback degli enti sarà la base per introdurre progressivamente nuove istruzioni e nuove fonti, aumentando la quantità e la qualità dei compiti affidati all'assistente. Sarà anche l'occasione per sperimentare un nuovo elemento infrastrutturale di OpenCity: un sistema di autorizzazione (permessi) attribute based.

&#x20;

## Opencity AI Chatbot

*OpenCity AI Chatbot è una soluzione di ricerca semantica progettata per trasformare l’interazione tra i cittadini e la Pubblica Amministrazione. Lo strumento permette agli utenti di avviare una vera e propria conversazione con il portale istituzionale dell’Ente, ottenendo risposte immediate e precise ai propri bisogni informativi.*

#### 2026

Il prodotto è stato rilasciato in versione beta production-ready a dicembre 2025. Nel primo semestre dell'anno sono state introdotte funzioni di assistenza vocale e di interazione multilingua.&#x20;

La seconda parte dell'anno è dedicata alla valutazione della versione 2 di [Cheshire Cat](https://cheshirecat.ai/), nuova versione open source dell'architettura AI già utilizzata dal chatbot e allo sviluppo di funzionalità avanzate di crawling per migliorare l'indicizzazione di fonti.

## OpenCity Website

*OpenCity mette a disposizione modelli di siti web per i Comuni, le Province, le Regioni e gli altri enti della pubblica amministrazione. La soluzione open source è presente su* [*Developers Italia*](https://developers.italia.it/it/software/gitlab.com/opencity-labs/sito-istituzionale/cms.html) *e permette di gestire tutti i contenuti dell'ente attraverso il sito web, l'amministrazione trasparente e l'albo pretorio*

#### 2026

Il primo semestre dell'anno è stato dedicato alla introduzione di un widget di analytics, che integra i dati di Web Analytics Italia per rispondere agli obblighi di pubblicazione dei dati di traffico dei siti web delle amministrazioni italiane. Sono inoltre state implementate alcune funzionalità aggiuntive, disponibili su richiesta come gli itinerari di visita.

Nel terzo trimestre prende il via l'adozione di una versione beta del motore di ricerca ibrido, che su richiesta degli enti può essere introdotto al posto di Solr come strumento di indicizzazione. Il motore di ricerca supera alcuni limiti dei sistemi tradizionali, integrando AI come tecnologia di ricerca. In secondo luogo, è prevista l'introduzione, su richiesta degli enti, di un widget relativo all'allerta meteo. Il widget utilizza i dati dei sistemi meteo regionali.

Nella seconda metà dell'anno è previsto il rilascio di una versione provvista di CDN, nell'ambito degli interventi di innalzamento degli standard di sicurezza che potreranno alla creazione di una versione della piattaforma con un livello di qualificazione ACN di tipo QC2 e coerente rispetto alla direttiva NIS2 (disponibile su richiesta degli enti).

Entro l'anno è previsto il completamento della nuova versione di amministrazione trasparente di OpenCity, arricchita di nuove funzionalità di automazione e di controllo delle scadenze di pubblicazione relative agli atti e ad altri contenuti di trasparenza e albo pretorio.

## OpenCity Stanza del cittadino

*La piattaforma permette di erogare in forma digitale decine di servizi ai cittadini; mette a disposizione strumenti avanzati di help desk e un sistema di prenotazione appuntamenti. I servizi digitali sfruttano integrazioni con identità digitale, sistema di pagamento PagoPA, sistema di protocollo e PDND per garantire una esperienza moderna, mobile friendly e rispettosta di tutti gli standard previsti dal settore pubblico.*

#### 2026

Nel primo semestre dell'anno è stato completato il disaccoppiamento della infrastruttura di gestione dei pagamenti dal core di Stanza del Cittadino. Sono state introdotte alcune nuove funzionalità, tra cui quella relativa alla impostazione dei tempi di scadenza delle bozze delle pratiche create dai cittadini.

Nel terzo trimestre è previsto il rilascio  di una versione provvista di Multi-Factor Authentication, nell'ambito degli interventi di innalzamento degli standard di sicurezza che potreranno alla creazione di una versione della piattaforma con un livello di qualificazione ACN di tipo QC2 e coerente rispetto alla direttiva NIS2 (disponibile su richiesta degli enti).

Entro l'anno è previsto il rilascio per tutti gli enti della nuova area personale utente, con un restyling dell'interfaccia e nuove funzionalità, tra cui la gestione dei pagamenti multipli (più avvisi di pagamento in una unica transazione). Su richiesta, l'ente potrà attivare connettori di integrazione per mostrare tutti i pagamenti del cittadino nell'area personale e per visualizzare un estratto di tutte le pratiche del cittadino, a prescindere dall'applicativo che le ha generate.

Infine, il back office si arricchisce nel quarto trimestre di una nuova dashboard di visualizzazione dei dati relativi alle pratiche, ai servizi di help desk e agli appuntamenti. La dashboard è basata su una infrastruttura di analytics che prevede l'utilizzo del sistema di streaming di eventi (Kafka), il salvataggio dei dati anonimizzati in un database a colonne (Clickhouse) cui si aggiunge l'utilizzo di Metabase per la realizzazione delle dashboard.\ <br>

## OpenCity Identity (POC)

*Consolidamento di una infrastruttura di gestione dei dati dei cittadini*

#### 2026

Nel secondo semestre dell'anno viene avviato il percorso di consolidamento di una infrastruttura orizzontale per la gestione dei dati dei cittadini, coerente con l'architettura multitenant di OpenCity Italia.&#x20;

L'architettura comprende un sistema di autenticazione, un sistema di autorizzazione e un database per la gestione dei dati degli utenti. Dialoga con gli applicativi OpenCity, con altre applicazioni dell'ente e con PDND. Consente una gestione dei dati compliant rispetto al GDPR, garantendo una gestione corretta dei trattamenti in base alla tipologia dei dati, alla finalità e alla durata dei trattamenti e consentendo l'audit. L'utente può sempre consultare le proprie informazioni attraverso l'area personale utente composta da un profilo e dalle sezioni messaggi, documenti, pratiche e pagamenti.


# Changelog

Questa pagina raccoglie i changelog di OpenCity Italia, dai rilasci più recenti ai precedenti.

{% updates format="full" %}
{% update date="2026-07-01" %}

## Evolutive gennaio - dicembre 2026

Le evolutive del 2026 aggiornano la piattaforma a **PHP 8.3** e **Symfony 6.4**. Introducono anche miglioramenti per pagamenti, pratiche esterne, area personale e chatbot.

[Tutte le evolutive del 2026](https://docs.opencityitalia.it/stanza-del-cittadino/installazione-e-manutenzione/release/versione-4)
{% endupdate %}

{% update date="2025-12-31" %}

## Evolutive gennaio - dicembre 2025

Le evolutive del 2025 includono l'aggiornamento a **Symfony 5.4**. Migliorano inoltre pratiche, pagamenti dovuti, area personale, segnalazioni e appuntamenti.

[Tutte le evolutive del 2025](https://docs.opencityitalia.it/stanza-del-cittadino/installazione-e-manutenzione/release/versione-3)
{% endupdate %}

{% update date="2023-11-22" %}

## Evolutive gennaio - dicembre 2023

Questa sezione raccoglie le evolutive pubblicate dal 2023 fino alla versione 3. Consulta ogni rilascio per conoscere funzioni e correzioni introdotte.

[Tutte le evolutive del 2023](https://docs.opencityitalia.it/stanza-del-cittadino/installazione-e-manutenzione/release/versione-2)
{% endupdate %}
{% endupdates %}


# Presentazioni prodotto

Qui trovi l'elenco delle slide e materiali formativi riguardanti la piattaforma.

Consulta le presentazioni e i materiali formativi divisi per prodotto e funzionalità.

{% tabs %}
{% tab title="Sito web" %}
**Funzioni base**

* [Comuni | Sito web | Funzionalità e interfacce utente](https://docs.google.com/presentation/d/1N72BxoSrjjYdC8l4NSBAMWojEbI6D-ianKnmaUhnq7g/edit#slide=id.g1c69a47d885_0_2250)
* [Comuni | Sito web | Funzionalità e interfacce redattore](https://docs.google.com/presentation/d/1PkuEnORLJyCa9jXMoSNU9kpREQVenucR60L2iG3ix6A/edit?slide=id.g1c69a47d885_0_2250#slide=id.g1c69a47d885_0_2250)
* [ASL | Sito web | Funzionalità e interfacce utente](https://docs.google.com/presentation/d/1B1nmMxCveVkm_V6EQXFKOcbsYJfTBCwW1IolAxTU3k8/edit#slide=id.g2032803cf08_0_10)
* [ASL | Sito web | Funzionalità e interfacce redattore](https://docs.google.com/presentation/d/1FBEj3oi40vNy6oG9VQvFLAPtNDeZ41mZa3B2GqXmGXo/edit#slide=id.g1c69a47d885_0_2250)

**Funzionalità aggiuntive**

* [Nuove funzionalità per il sito web](https://docs.opencityitalia.it/materiali-di-presentazione/presentazioni-prodotto#sito-web)
* [Amministrazione Trasparente | Comuni](https://docs.google.com/presentation/d/1mCb04FfasqM6uoeCic_i0SEaYshcCIukFzXNRVghRgI/edit?usp=sharing)
* [Amministrazione trasparente | ASL](https://docs.google.com/presentation/d/1sr_KhL8RktMARQvGQdHO6YC7egDWBQMOdFHyxR7NV1I/edit?slide=id.g29d5775ce5d_1_0#slide=id.g29d5775ce5d_1_0)
* [Agenda eventi | Interfacce utente e moderatore](https://docs.google.com/presentation/d/1_TSQiN1gjxsSJHOWMTYXmUFBINSSnEKWg6s0W09SgYc/edit?usp=sharing)
* [Agenda eventi | Organizzazioni](https://docs.google.com/presentation/d/1JCT0-UeAiTYLjk0_cWw8qzDhqrgWvBAB4-RQMPv8h9Y/edit?usp=sharing)
* [Newsletter](https://docs.google.com/presentation/d/1Kt24maLp4wCL-QhWsSAN1NCkGTCTxCpNOQjnuQ09TGE/edit?slide=id.g1c69a47d885_0_2250#slide=id.g1c69a47d885_0_2250)
* [Multilinguismo](https://docs.google.com/presentation/d/1qZJ_XJvNqv1YC3icH79ktG_sdCnNp6kcn-yDW-10v00/edit?usp=sharing)
* [Moderazione contenuti](https://docs.google.com/presentation/d/13mns_FKWn-CtHQ1MW2CTfmIgRJl07DW9SVVKD28y-fY/edit#slide=id.g2fb9e58f20a_0_231)
* [Dashboard di soddisfazione dell'utente](https://docs.google.com/presentation/d/1llEG0TqFFLsg1W-SnlBX2CoMbIW1LpwKJC6TKx7FdQQ/edit#slide=id.g2ef1d5fee24_0_8)
* [Il content type "Guida"](https://docs.google.com/presentation/d/1IJfKwuwRN0X-KHHbomsHutnjFH-i4-VFNkvoQUmMeQA/edit#slide=id.p3)
* [Il content type "Progetto"](https://docs.google.com/presentation/d/1hrha6_X5x5_ubAyR7aKLDrzkE7FSnJ7WTi_Nc84775c/edit?slide=id.g30e592f979d_0_0#slide=id.g30e592f979d_0_0)
* [Argomenti personalizzati](https://docs.google.com/presentation/d/1nxWz54HXhUH73X0E2u2EnExBNdtTuAsjHlMr3IXcvvI/edit#slide=id.gd79f03727e_2_76)
* [Gestione degli RSS](https://docs.google.com/presentation/d/1O9e7ospWCjoRHUYzPMswMJC_H1Oatl9oAyUxx-jnK3s/edit#slide=id.p3)
  {% endtab %}

{% tab title="Servizi digitali" %}
**Catalogo dei servizi digitali per Comuni**:&#x20;

* [Consulta l’elenco dei servizi digitali](https://docs.opencityitalia.it/stanza-del-cittadino/guida-alla-creazione-dei-servizi-digitali/il-catalogo-dei-servizi-digitali/catalogo-comuni)

**Funzioni base**

* [Servizi digitali | Interfacce e funzionalità utente](https://docs.google.com/presentation/d/1sB2rheZdIJ40EqhnwjTIcFHPacssqLrB9vKnITH_mJA/edit?usp=sharing)
* [Servizi digitali | Funzionalità operatori](https://docs.google.com/presentation/d/1lj3sovI_BzPnrIYD8u1arQP6HWmPxWtTEmvMc4JPNsU/edit?usp=sharing)

**Funzionalità aggiuntive**

* [Funzionalità e interfacce admin](https://docs.google.com/presentation/d/1v0Sx3QV14G5k29pP7NQq6stQ5T5rWqxYwpg0IlPXgrA/edit?usp=sharing)
* [Creazione dei servizi digitali](https://docs.google.com/presentation/d/1U0bJ2_oXiOkWdRn4qv_wtaoZpnPAfBRMWJiXpcSzkjs/edit#slide=id.g1c69a47d885_0_2250)
* [Interoperabilità e modelli di integrazione dei servizi digitali](https://docs.google.com/presentation/d/1n4Fo__Gn6rbHFQnp2bBD8lZjfbAXiabB_MKS9AGswAs/edit#slide=id.g1c69a47d885_0_2250)
  {% endtab %}

{% tab title="Helpdesk" %}

* [Helpdesk - Segnalazioni e assistenza](https://docs.google.com/presentation/d/1u0bwR3RGbU56A2Pd2k0Bxidf04U-Q6s4XUgc0tT6YdY/edit?slide=id.g3a2f386484f_0_234#slide=id.g3a2f386484f_0_234)
  {% endtab %}

{% tab title="Appuntamenti" %}

* [Prenotazione appuntamenti](https://docs.google.com/presentation/d/1k87B1K7vgjk1TvzinDbMtV8Gig85Pxf3TnGZ6X_uvY8/edit?usp=sharing)
* [Prenotazione appuntamenti - advanced](https://docs.google.com/presentation/d/1UBvCdxsRY2kiqW-M-6Rzl82pXHbXcHCWuzoRUfZX4Fs/edit#slide=id.g1c69a47d885_0_2250)
  {% endtab %}

{% tab title="AI" %}

* [OpenCity AI Chatbot](https://docs.google.com/presentation/d/105XzebHgjHOa5wZVVGGaHym60CtHJJfbQooJhvoSri0/edit?slide=id.g3a051481000_0_1#slide=id.g3a051481000_0_1)
  {% endtab %}
  {% endtabs %}

## Utilities

{% tabs %}
{% tab title="Integrazioni" %}

* [Interoperabilità e modelli di integrazione dei servizi digitali](https://docs.google.com/presentation/d/1n4Fo__Gn6rbHFQnp2bBD8lZjfbAXiabB_MKS9AGswAs/edit#slide=id.g1c69a47d885_0_2250)
* [Integrazione con la PDND (fruizione)](https://docs.google.com/presentation/d/1AvlyukibxHAFp7AwGkhHqj2Hhzobo8O6dz5Pn0ZiQSs/edit#slide=id.g2cdd84c1aa3_0_80)
* [Richiesta di fruizione dati via PDND](https://docs.google.com/presentation/d/1vwNEXNLN--xdE-MHkOKzLiya6DjtRGeE0aNjvIMk6MQ/edit#slide=id.g2286e170a2b_0_0)
* [Erogazione e-service - 1.3.1 PDND](https://docs.google.com/presentation/d/1Ok58CvauBb3ymV9GWYLX_z3OxffLgxt6X9LN0KctypY/edit?slide=id.g2286e170a2b_0_0#slide=id.g2286e170a2b_0_0)
  {% endtab %}

{% tab title="Accessibilità" %}

* [Linee guida all'accessibilità](https://docs.google.com/presentation/d/1ZbeBf2Ej8Z1rphgGtoE1F95cA-IpWciRNtVqcQbX2-k/edit#slide=id.g2cc4b6957b5_0_1)
* [Allegato 2 - Linee guida accessibilità (Modello Comuni - sito web)](https://docs.google.com/document/d/1UcNA5McG45tUUuKNae2eiRvolJawuuXxqcc51Z7meaM/edit?tab=t.0)
* [Allegato 2 - Linee guida accessibilità (Modello Comuni - Area personale)](https://docs.google.com/document/d/1RpSMnHVQ4cuOGvYuhTh1-PzWEAeW18xeCf0-Zk3R3TY/edit)
* [Allegato 2 - Linee guida accessibilità (Modello Comuni - area personale EVO)](https://docs.google.com/document/d/1wAaBL6N6CrYA3Ef_1ucy3BDcRedHjWH-tsfiuhMJXgo/edit?tab=t.0#heading=h.fbqjlgv7w1pe)
* [Allegato 2 - Linee guida accessibilità (Modello ASL - sito web)](https://docs.google.com/document/d/1hPGlqXqvoyXFxx-Twh3Hb8LbqL_ybSaYyPBiGuFtvkg/edit?tab=t.0)
* [Allegato 2 - Linee guida accessibilità (Modello Province e Regioni - sito web)](https://docs.google.com/document/d/1dLwLqcMerM-4ZTIysNcq7urvaNcTgyr9YzaYluHzIXo/edit?tab=t.0)
  {% endtab %}

{% tab title="Privacy" %}

* [Sito web | Privacy e cookie](https://docs.google.com/presentation/d/1BrURyX3s6TJnQeDBM-Kny293QFblDUBL61_X-syBpa8/edit#slide=id.p3)
* [Servizi digitali | Privacy e cookie](https://docs.google.com/presentation/d/1xG5Zv0wt1th_VNCUcCxJbcN-f7a2QfgxKdIRFSQzHb4/edit#slide=id.p3)
  {% endtab %}

{% tab title="Qualificazioni " %}

* [OpenCity Italia | Servizio SaaS qualificato ACN](https://docs.google.com/presentation/d/1chmsnnBjivXagRIFaS3e0MxXO-tzajAY-0MsVmnnJ70/edit#slide=id.g32b64a492b2_0_57)
* [Performance e sicurezza](https://docs.google.com/presentation/d/1i1Wm1qdRFplUhVoj7tLEfoF1_i46GcSNc0iwj3YuDH0/edit?slide=id.p3#slide=id.p3)
* [PL09 - Procedura di reversibilità del servizio SaaS](https://docs.google.com/document/d/1mhTLcnOZnRMcpCXBwEd-oU_vwUq8LfEXy9yy19uOjhc/edit?tab=t.0#heading=h.qn2wj791qb5k)
  {% endtab %}
  {% endtabs %}


# Introduzione

<figure><img src="/files/Gcyk9Up9ipLnPnFwD76u" alt=""><figcaption></figcaption></figure>

Questo manuale accompagna la Pubblica Amministrazione nell'adozione del chatbot AI di OpenCity Italia, una soluzione pensata per migliorare l'interazione con i cittadini sui portali di Comuni e ASL.

La guida è strutturata in due parti principali:

1. Architettura e utilizzo dei dati: una sezione tecnica dedicata all'architettura del prodotto e al flusso e utilizzo dei dati;
2. Guida all'uso: una panoramica funzionale che mostra come il cittadino utilizza l'assistente virtuale per trovare informazioni e accedere ai servizi.


# Cos'è OpenCity AI Chatbot?

OpenCity AI Chatbot è un’innovativa soluzione di ricerca semantica progettata per trasformare l’interazione tra i cittadini e la Pubblica Amministrazione. Lo strumento permette agli utenti di avviare una vera e propria conversazione con il portale istituzionale dell’Ente, ottenendo risposte immediate e precise ai propri bisogni informativi.

## Conformità al Piano Triennale

Lo sviluppo e l’erogazione di OpenCity AI Chatbot seguono rigorosamente le indicazioni del [Piano Triennale per l’informatica nella Pubblica Amministrazione](https://www.agid.gov.it/sites/agid/files/2025-10/Piano_Triennale_2024-2026_Aggiornamento_2026.pdf), basandosi sui seguenti principi cardine:

* **Privacy e sicurezza**: è fondamentale garantire la protezione dei dati personali e la sicurezza dei sistemi fin dalla fase di progettazione (*privacy and security by design*);
* **Formazione e sviluppo delle competenze**: bisogna investire nella formazione dei dipendenti pubblici per creare le competenze necessarie a governare e utilizzare l'IA;
* **Standardizzazione**: incoraggiare l'uso di standard aperti per garantire l'interoperabilità tra le soluzioni;
* **Sostenibilità**: le iniziative di IA devono essere sostenibili dal punto di vista economico, sociale e ambientale;
* **Approccio antropocentrico**: la decisione finale e il controllo devono rimanere sempre in capo all'essere umano;
* **Sperimentazione e gradualità**: si promuove un approccio graduale, partendo da progetti pilota e casi d'uso concreti per valutare l'impatto prima di una diffusione su larga scala;
* **Miglioramento dei servizi e riduzione dei costi**: l'IA deve essere usata per rendere i servizi pubblici più efficienti, efficaci e personalizzati per i cittadini, ottimizzando le risorse;
* **Analisi del rischio**: prima di adottare una soluzione IA, le PA devono condurre un'attenta valutazione dei rischi (tecnici, etici, legali e di sicurezza);
* **Trasparenza e responsabilità**: i processi decisionali devono essere comprensibili, tracciabili e deve essere sempre chiaro chi è il responsabile della decisione finale (principio di *accountability*);
* **Inclusività e accessibilità**: le soluzioni IA non devono creare nuove forme di discriminazione e devono essere accessibili a tutti i cittadini;


# Interagire con il chatbot

{% hint style="info" %}
Vuoi provare OpenCity AI Chatbot? L'assistente virtuale di OpenCity è testabile sul portale istituzionale del [Comune di Vicopisano](https://www.comune.vicopisano.pi.it/).
{% endhint %}

## Attivare il chatbot

Il widget del chatbot è presente su tutte le pagine del sito web. Il cittadino può attivarlo in qualsiasi momento della navigazione.

{% hint style="info" %}
Come stabilito dall'art. 50, comma 1, del Regolamento (UE) 2024/1689 (EU AI Act), la schermata iniziale mostra un avviso relativo alla generazione delle risposte tramite l'utilizzo dell'AI.
{% endhint %}

<figure><img src="/files/aMXs5US81cz6S45cHeeU" alt=""><figcaption></figcaption></figure>

Per attivarlo, l'utente clicca sul logo in basso e conferma di aver letto l'informativa privacy del Comune.

<div><figure><img src="/files/jGklL4OHVDFO4Al8pZf9" alt=""><figcaption></figcaption></figure> <figure><img src="/files/2msWpkXSpUnCFsOjaXYn" alt=""><figcaption></figcaption></figure></div>

## Iniziare la conversazione

Una volta aperta la chat, il cittadino può:

* selezionare uno degli argomenti predefiniti (1);
* inserire la richiesta manualmente o a voce nella propria lingua o indicare l'argomento che vuole approfondire (2).

<figure><img src="/files/vVOcos1GsOnC2e83mwkr" alt=""><figcaption></figcaption></figure>

## Consultare risposte e fonti

Insieme alla risposta, il sistema propone anche i link alle fonti. Rimanda a pagine del sito strettamente collegate alla domanda o all'argomento inserito.

<figure><img src="/files/QRLbu05tHkyA7sxbSXp0" alt=""><figcaption></figcaption></figure>

## Affinare la richiesta

Se i contenuti suggeriti non sono quelli cercati, il cittadino può proseguire il dialogo. Inserendo una nuova richiesta, o specificando meglio l'argomento, ottiene una risposta più precisa.

<figure><img src="/files/4onImXR1F5QNWkjiWeZb" alt=""><figcaption></figcaption></figure>

## Riprendere una sessione salvata

In caso di chiusura improvvisa o apertura di nuove schede, la sessione viene salvata automaticamente per un'ora nel tuo browser per garantirti la massima continuità del dialogo: potrai riprendere il filo del discorso esattamente da dove lo avevi lasciato, senza perdere lo storico della conversazione.

<div><figure><img src="/files/rUGFBMpxJZZMQIlKrpMJ" alt=""><figcaption></figcaption></figure> <figure><img src="/files/b7g33bagSJK4qqjsh6Ef" alt=""><figcaption></figcaption></figure></div>

## Gestire la scadenza della sessione

In caso di scadenza della sessione, l'utente viene avvertito attraverso un messaggio del chatbot.

<figure><img src="/files/yAjZKmGsHkF5oLYsj6R6" alt=""><figcaption></figcaption></figure>

È comunque possibile resettare la sessione e iniziarne una nuova tramite pulsante apposito.

<figure><img src="/files/lX5m74FJJUY8s47zi6Yq" alt=""><figcaption></figcaption></figure>

## Gestione della manutenzione

Durante le attività di manutenzione del backoffice, l'utente riceve un messaggio che informa che il chatbot è temporaneamente non disponibile.

Durante questo intervallo non è possibile inviare nuove richieste o ricevere risposte. Al termine della manutenzione, il cittadino può aggiornare la pagina e riaprire il chatbot.

<div><figure><img src="/files/WdIphzrsC6rZFaLfKGrJ" alt=""><figcaption></figcaption></figure> <figure><img src="/files/1uEVutxyac3dcEYSCRJY" alt=""><figcaption></figcaption></figure></div>


# Esempi pratici di interazione e risposte del sistema

All'interno di questo capitolo viene descritto il comportamento del chatbot in scenari reali, evidenziando la sua capacità di individuare correttamente le informazioni, gestire i riferimenti alle fonti e rispondere in modo pertinente alle diverse tipologie di domande poste dai cittadini.

## Richiedere informazioni sui servizi tramite chatbot

In questo scenario, l'utente interroga il chatbot per conoscere le scadenze di pagamento dell'IMU.

<figure><img src="/files/ZBqW58NRS6hGJ0zrfkeB" alt=""><figcaption></figcaption></figure>

OpenCity AI Chatbot non si limita a una risposta testuale generica, ma interpreta la richiesta dell'utente per fornire un supporto a tre livelli:

1. il sistema estrae e presenta chiaramente le due scadenze principali ("Acconto" e "Saldo"), rispondendo in modo diretto al dubbio dell'utente;
2. viene fornito il link alla pagina informativa dedicata sul sito dell'Ente, dove il cittadino può consultare aliquote, detrazioni e regolamenti aggiornati;
3. il chatbot facilita il passaggio alla fase operativa, guidando l'utente verso la Stanza del Cittadino per l'attivazione del servizio (ad esempio, l'accesso al calcolatore IMU o la presentazione di una dichiarazione).

Una volta ottenute le risposte, l'interazione continua. L'utente può approfondire l'argomento trattato oppure iniziare una conversazione su temi diversi:

<div><figure><img src="/files/hwdSxHxhlx0Xrg3UMkYs" alt=""><figcaption></figcaption></figure> <figure><img src="/files/tYSkuGcSEknmYjS3y5bI" alt=""><figcaption></figcaption></figure></div>

## Consultazione del calendario eventi e manifestazioni

In questo scenario, l’utente interroga il chatbot per conoscere gli eventi che sono stati organizzati per la settimana corrente.

<figure><img src="/files/Kf48okevtF8AzEtPxQub" alt=""><figcaption></figcaption></figure>

OpenCity AI Chatbot agisce come un facilitatore tra il cittadino e l'agenda culturale dell'Ente:

1. il sistema interpreta la richiesta temporale dell'utente ("settimana corrente") e comunica in modo chiaro che sono previsti due eventi: il primo per martedì 20 gennaio (dalle ore 18:00) e il secondo a partire da domenica 25 gennaio;
2. per ogni evento individuato, il chatbot fornisce un link diretto al contenuto dedicato presente sul sito web istituzionale;
3. grazie a questo approccio, il cittadino non deve navigare l'intero calendario eventi del portale, ma viene indirizzato immediatamente alla scheda specifica per consultare dettagli, locandine o eventuali modalità di prenotazione.

## Accompagnare l'utente nell'invio di una segnalazione o una richiesta di appuntamento

In questo scenario, l'utente manifesta la necessità di segnalare un'anomalia sul territorio (come la presenza di buche stradali) e richiede indicazioni sulla procedura ufficiale per trasmettere l'informazione all'Ente."

<figure><img src="/files/uqxaJrZ2BUjVoKmJjRyU" alt=""><figcaption></figcaption></figure>

OpenCity AI Chatbot interpreta correttamente la domanda dell'utente e gli fornisce tutte le opzioni disponibili per procedere con la segnalazione, guidandolo verso la soluzione più adatta alle sue esigenze:

* Contatto immediato (telefonia/email): il sistema indica i recapiti diretti per chi preferisce un contatto a distanza ma non digitale;
* Assistenza in presenza (URP): viene indicata la possibilità di recarsi fisicamente presso l'Ufficio Relazioni con il Pubblico per i cittadini che necessitano di un supporto interpersonale;
* Servizio digitale (Percorso consigliato): il chatbot promuove l'uso dello sportello telematico fornendo il link diretto al servizio "Segnala disservizio".

Oltre al link, il chatbot fornisce istruzioni per la corretta compilazione della richiesta, ricordando al cittadino di specificare con precisione il tipo di disservizio e il luogo esatto all'interno del territorio comunale.

La medesima logica di instradamento viene applicata per facilitare la prenotazione di appuntamenti presso gli uffici comunali.

<figure><img src="/files/n4oivHXrCkLLjxARP5jK" alt=""><figcaption></figcaption></figure>

OpenCity AI Chatbot risponde con una strategia di orientamento completa:

1. Abilitazione al servizio online: il chatbot segnala immediatamente la possibilità di utilizzare il servizio digitale, fornendo il link diretto alla piattaforma di prenotazione dell'Ente.
2. Guida alla procedura: il sistema elenca i passaggi principali necessari per completare l'invio della richiesta:
   * selezione dell'ufficio;
   * scelta del giorno e dell'orario tra quelli disponibili;
   * indicazione del motivo dell'appuntamento (es. rilascio CIE, certificati, pratiche migratorie);
   * inserimento dati anagrafici del richiedente.

## Gestione dei refusi e degli errori di digitazione

In questo scenario, la domanda posta dall'utente contiene un evidente errore di digitazione (il termine “oline” invece di “online”).

<figure><img src="/files/VPozvhJEZRV9tvPFsLki" alt=""><figcaption></figcaption></figure>

OpenCity AI Chatbot interpreta correttamente l'obiettivo dell’utente e fornisce immediatamente la procedura per il cambio di residenza.

Questo esempio dimostra la robustezza semantica del modello che, anziché bloccarsi di fronte a refusi ortografici, è in grado di elaborare il contesto della richiesta e restituire informazioni accurate.

Nello specifico, l'elaborazione del sistema permette di:

1. superare l'errore materiale: il termine "oline" viene ricondotto correttamente al concetto di "servizio telematico";
2. identificare l'istanza: il sistema comprende che l'utente non vuole solo informazioni, ma intende avviare una pratica amministrativa specifica;
3. abilitare il servizio: il chatbot risponde fornendo i requisiti necessari e il link diretto alla sezione della Stanza del Cittadino dedicata ai cambi di residenza.

## Gestione di domande non pertinenti

In questo test è stata posta una domanda del tutto estranea ai servizi e ai contenuti del Comune: “Qual è la capitale del Brasile?”. Questo scenario è utile per osservare come il sistema reagisce a sollecitazioni che non rientrano nelle finalità istituzionali dell'Ente.

<figure><img src="/files/5MMYO4ziJ4HW000m5V3Y" alt=""><figcaption></figcaption></figure>

Il chatbot riconosce che la richiesta non riguarda l’ambito dei servizi pubblici e dei contenuti istituzionali.

Questo comportamento conferma la capacità del sistema di mantenere il focus sugli argomenti di competenza dell'Ente, distinguendo le necessità reali del cittadino dalle richieste non pertinenti. Questo garantisce che lo strumento rimanga un punto di riferimento autorevole e specializzato per la comunicazione istituzionale.

## Gestione delle informazioni non presenti sul sito web

Questo test simula il caso in cui un cittadino chieda informazioni su un argomento che non è presente nelle pagine del sito istituzionale o nella base di conoscenza caricata. L'obiettivo è osservare come il sistema gestisce l'assenza di dati senza interrompere il supporto all'utente.

<figure><img src="/files/bpxQKWBiknwIW2fYyUJs" alt=""><figcaption></figcaption></figure>

Invece di provare a indovinare o fornire dati incerti, OpenCity AI Chatbot riconosce di non avere le informazioni necessarie e indirizza l’utente verso i servizi di assistenza o gli uffici competenti (come l’URP).

Il chatbot non "inventa" mai le risposte, ma garantisce comunque un supporto utile guidando il cittadino verso un operatore umano.


# Funzionalità del chatbot

## *User experience*

OpenCity AI introduce un avanzato strumento di ricerca semantica progettato per orientare in modo efficace gli utenti e rispondere con precisione ai loro bisogni informativi.

Si presenta come **un'interfaccia conversazionale&#x20;*****mobile first***, sempre a disposizione dell'utente. È accessibile da ogni pagina del sito web cliccando sull'apposita icona collocata in basso a destra.

Il chatbot fornisce risposte basate esclusivamente sul dominio di conoscenza dell'ente, utilizzando unicamente i dati e i contenuti presenti sul sito web istituzionale. Per facilitare ulteriormente la navigazione, l'interfaccia propone anche una selezione di domande frequenti (FAQ) per indirizzare l'utente verso i temi di maggiore interesse.

## Qualità delle risposte

Il sistema elabora risposte esaustive e mirate, concepite per restituire all'utente l'informazione chiave evitando lunghe ricerche all'interno del portale. A garanzia dell'affidabilità, ogni risposta generata è sempre corredata dalle relative fonti. Questo permette all'utente, qualora lo desideri, di verificare l'informazione o di approfondire la lettura consultando direttamente la pagina web di origine.

L'interazione con il chatbot è dinamica: l'utente può dialogare con il sistema, ponendo domande successive per specificare meglio il contesto o per richiedere ulteriori dettagli, proprio come in una conversazione reale.

Questa fluidità è resa possibile dalla capacità del sistema di **superare le barriere del linguaggio burocratico**, spesso presente nelle fonti ufficiali come delibere o regolamenti, rielaborando i contenuti in uno stile di comunicazione colloquiale, sintetico e accessibile. In questo modo, l'eventuale complessità tecnica dei contenuti viene resa comprensibile per il cittadino, senza alterare la correttezza del dato istituzionale di partenza.

## Vantaggi rispetto al motore di ricerca

A differenza del motore di ricerca del sito web, OpenCity Chatbot AI è progettato per interpretare il linguaggio naturale.

Il sistema supera i limiti del motore di ricerca poiché è in grado di comprendere il reale intento dell'utente e il contesto della richiesta, come rilevato anche dai [cicli di test svolti](/ai/architettura-e-funzionalita-del-chatbot/chatbot-per-la-pa/ciclo-di-test-e-ottimizzazione-del-chatbot).

Questo permette al cittadino di ricevere risposte pertinenti anche quando si esprime con un linguaggio colloquiale, semplificando l'accesso ai servizi e alle informazioni dell'Ente.

In particolare, il chatbot offre un supporto decisivo in scenari come:

* **Tolleranza agli errori**: comprende la richiesta e fornisce la risposta corretta anche se la domanda dell'utente contiene errori grammaticali o di battitura;
* **Riconoscimento dei sinonimi**: interpreta il linguaggio comune e lo collega alla terminologia tecnica dell'ente (ad esempio, associa il termine "morti" alla sezione "servizi per i defunti");
* **Capacità di sintesi**: riesce a elaborare una risposta specifica aggregando informazioni frammentate su più pagine, risultando utile quando non esiste una singola pagina web dedicata esattamente al quesito dell'utente (es. "sono previste assunzioni nel 2026?");
* **Comprensione semantica**: collega il bisogno espresso dall'utente al servizio o all'ufficio competente, anche senza parole chiave esatte (ad esempio, capisce che una domanda sul "problema delle buche" fa riferimento al servizio "segnalazione disservizi").

## Vantaggi rispetto a LLM generici

A differenza di modelli di Intelligenza Artificiale generica, come ChatGPT, Gemini o Deepseek, OpenCity Chatbot AI è una soluzione specializzata e "addestrata" specificamente per la Pubblica Amministrazione.

I vantaggi principali rispetto a un modello generico sono:

* **Accuratezza della ricerca semantica**: mentre i modelli generici possono faticare a isolare i dati specifici di un singolo territorio, il nostro chatbot esegue una ricerca semantica avanzata sui soli dati ufficiali dell'Ente. Questo garantisce che la risposta sia sempre pertinente al contesto locale e non basata su normative generali o di altri Paesi;
* **Prevenzione delle "allucinazioni"**: in ambito IA, si parla di "allucinazione" quando un sistema genera risposte false ma verosimili. OpenCity Chatbot AI è configurato per essere rigoroso: se il sistema non trova informazioni affidabili nei contenuti del sito web o se la domanda risulta ambigua, non "inventa" una risposta. Al contrario, invita l'utente a contattare direttamente gli uffici competenti, garantendo così la massima integrità dell'informazione istituzionale;
* **Robustezza della privacy e protezione dei dati**: il sistema richiede la presa visione dell'informativa privacy dell'Ente prima dell'interazione, assicurando che l'utente sia pienamente informato sul trattamento dei dati. Inoltre, l’architettura integra un filtro di sicurezza che blocca preventivamente l'invio di dati personali verso LLM esterni, impedendo che informazioni sensibili vengano trattate da sistemi di terze parti.

## Sincronizzazione dei contenuti e aggiornamento dati

Le risposte fornite da OpenCity Chatbot AI sono generate esclusivamente sulla base dei contenuti ufficiali pubblicati all'interno del sito web istituzionale.

Al fine di garantire la massima accuratezza e pertinenza delle informazioni, il sistema esegue una scansione automatizzata quotidiana (***scraping***) del portale. Questo processo permette al chatbot di apprendere tempestivamente ogni aggiornamento, modifica o nuova pubblicazione inserita dall'Ente, assicurando all'utente finale risposte sempre allineate.

## Rapidità di attivazione e indipendenza tecnologica

L’attivazione di OpenCity AI Chatbot si distingue per la rapidità operativa: l’integrazione sul portale istituzionale, infatti, avviene tramite **l’inserimento di uno script**, un’operazione non invasiva che **non richiede interventi sistemistici** lato server **né riconfigurazioni tecniche**.

Questa facilità è possibile grazie alla **totale indipendenza del sistema** rispetto alla piattaforma in uso: il chatbot si configura come un modulo autonomo e *stand-alone*, capace di operare su qualsiasi tipologia di sito senza la necessità di migrare contenuti o modificare l’infrastruttura esistente.

In fase di attivazione, inoltre, OpenCity Italia genera un **report riguardante la qualità delle risposte** fornite dal sistema. Questo documento fornisce indicazioni pratiche per il miglioramento o l'aggiornamento di determinati contenuti del sito, laddove necessario.

## Gestione *multisite*

Spesso il patrimonio informativo di un Comune è distribuito su portali differenti: dal sito istituzionale ai siti verticali (turismo, musei, biblioteche), fino alle piattaforme esterne per l'Albo Pretorio o l'Amministrazione Trasparente.

OpenCity Chatbot AI supera la frammentazione di questi contenuti attraverso una gestione multisite avanzata, che opera su due livelli:

1. il chatbot può acquisire e analizzare i contenuti provenienti da tutti i siti web dell'ecosistema comunale. Questo permette al sistema di fornire risposte complete attingendo a fonti diverse, anche se l'informazione non è presente sul sito principale;
2. il chatbot può essere installato contemporaneamente su tutti i portali dell'Ente. In questo modo, il cittadino avrà sempre a disposizione lo stesso assistente intelligente, capace di rispondere su ogni ambito di competenza dell'amministrazione a prescindere dal portale in cui si trova in quel momento.

Questa architettura trasforma la rete di siti web dell'Ente in un unico punto di accesso assistito, eliminando la necessità per l'utente di conoscere l'esatta collocazione di un documento o di un servizio.

## Gestione della comunicazione multilingue

L'architettura di OpenCity AI Chatbot è stata progettata per supportare la diversità linguistica, una funzionalità progettata per rispondere a due scenari operativi distinti, definiti come obiettivi strategici e desiderata di progetto:

### **Interazione spontanea in lingua straniera**

{% hint style="info" %}
OpenCity Chatbot AI supporta attualmente circa [quaranta lingue](https://docs.cloud.google.com/gemini/docs/codeassist/supported-languages?hl=it).

Clicca qui per vedere un caso d'uso reale: [Chatbot multilingua](https://youtube.com/shorts/PgJwVHvZeN4?si=JMkdJYBhWjp9hURW)
{% endhint %}

Questo scenario valuta l'efficacia del chatbot nel comprendere e rispondere a query multilingue (es. inglese, francese, spagnolo). La funzionalità si applica sia su un singolo portale integrato con selezione della lingua, sia su più portali autonomi distinti per lingua.

Il sistema opera come un mediatore digitale per facilitare l’accesso ai contenuti agli utenti non italofoni.

Quando l’utente invia un messaggio, la richiesta viene processata attraverso la nostra pipeline e inoltrata al modello di linguaggio per l'elaborazione. Una volta generata la risposta, prima della pubblicazione finale, interviene un modulo di controllo basato su un modello di Machine Learning (integrato tramite *spacy-language-detection*) residente sui nostri sistemi.

Questo modulo verifica la coerenza linguistica tra il quesito originale e la risposta prodotta:

* **se le lingue coincidono**: la risposta viene inviata direttamente all'utente;
* **se viene rilevata una discrepanza**: il sistema effettua una chiamata dedicata, distinta dal flusso della chat principale, con un'istruzione specifica per tradurre il testo nella lingua dell'utente, garantendo così la massima accuratezza prima della consegna finale.

<figure><img src="/files/oDipwbc49mS6BGEcAayD" alt=""><figcaption></figcaption></figure>

Questa capacità di comprensione e risposta si estende anche alle **lingue più complesse**, come ad esempio arabo e cinese.

<div><figure><img src="/files/wBZM2tnKITzVTt7CdD80" alt=""><figcaption><p>Nell'immagine, l'utente chiede in lingua cinese come richiedere la carta d'identità elettronica (请问，如何办理电子身份证?)</p></figcaption></figure> <figure><img src="/files/rASgPhOSiCT1pvvH5g7d" alt=""><figcaption><p>Nell'immagine, l'utente chiede in lingua araba come richiedere la carta d'identità elettronica (كيف يمكنني التقدم بطلب للحصول على بطاقة الهوية الإلكترونية؟)</p></figcaption></figure></div>

### **Integrazione con portali multilingue nativi**

Nel caso di un singolo portale integrato con selezione della lingua, il chatbot si allinea automaticamente alle impostazioni dell'utente. Il sistema attinge i contenuti dalla Knowledge Base primariamente redatta in italiano e provvede alla traduzione dinamica delle informazioni nella lingua dell'interfaccia scelta.

Nello specifico caso di portali **che operano su domini o sottodomini separati** (ad esempio, uno per l'italiano e uno per il tedesco), la soluzione prevede l'**attivazione di due installazioni distinte dell'assistente virtuale**.

Tale approccio permette di dedicare ogni istanza del chatbot a un dominio linguistico specifico, garantendo una separazione netta delle *knowledge base*.

All'interno di ciascuna installazione, il widget si aggiorna automaticamente in base alla lingua selezionata nel sito. L'utente trova quindi un'interfaccia coerente con la navigazione, dalla schermata iniziale ai messaggi della conversazione. Il chatbot consulta inoltre la *knowledge base* associata alla relativa versione linguistica del portale. In questo modo, risposte, fonti e interfaccia restano allineate alla lingua scelta dall'utente.

#### Lingua del widget

Il widget utilizza la lingua del sito selezionata dall'utente. Le stringhe dell'interfaccia sono gestite nel [progetto Poeditor](https://poeditor.com/projects/view?id=834704).

## Interazione vocale

OpenCity AI Chatbot supporta l'**inserimento della domanda tramite voce**, offrendo un canale di accesso alternativo alla digitazione testuale. Il cittadino può attivare il riconoscimento vocale direttamente dall'interfaccia del chatbot e formulare la propria richiesta a voce: il sistema trascrive l'audio in testo e avvia l'elaborazione seguendo il medesimo flusso della chat tradizionale.

Questa modalità si rivela particolarmente utile in scenari di accessibilità e contribuisce a rendere il servizio fruibile da una platea più ampia di cittadini.

La funzionalità è disponibile sui dispositivi e browser che supportano le API di accesso al microfono; non richiede installazione di componenti aggiuntivi né configurazioni specifiche da parte dell'Ente.

## Indicizzazione dei documenti (PDF)

Sebbene sia possibile prevedere l’indicizzazione dei file PDF caricati all’interno del sito web, tale funzionalità **non è attualmente implementata**.

In base [alle analisi e ai test condotti](/ai/architettura-e-funzionalita-del-chatbot/chatbot-per-la-pa/ciclo-di-test-e-ottimizzazione-del-chatbot) da OpenCity Italia, è emerso che:

* l'uso dei PDF **può peggiorare sensibilmente le prestazioni del chatbot:** la natura stessa di questi file comporta una forte variabilità nell'indicizzazione, rendendo meno fluida e precisa l'elaborazione della risposta;
* l’inclusione massiva di documenti allegati determina un aumento delle fonti considerate dal sistema per ogni singola domanda. Questa sovrabbondanza di dati **può generare un "rumore" informativo** che rischia di portare il chatbot a scartare fonti web più rilevanti e aggiornate a favore di passaggi contenuti in documenti meno pertinenti.


# Ciclo di test e ottimizzazione del chatbot

OpenCity Chatbot AI è il risultato di un esteso processo di validazione condotto su un vasto campione di portali della Pubblica Amministrazione italiana. L'obiettivo di questa fase di q*uality assurance* è garantire uno strumento affidabile, capace di rispondere alle reali esigenze dei cittadini.

La fase di test non è stata intesa come una semplice verifica tecnica, ma come un processo di validazione strategica volto a garantire che l’assistente virtuale risponda con precisione alle dinamiche del settore pubblico.

I test sono stati progettati per rispondere a tre esigenze fondamentali:

* **Riflettere l’utilizzo reale dei cittadini**: le simulazioni sono state strutturate per rappresentare il modo concreto con cui le persone interagiscono con i servizi digitali della Pubblica Amministrazione. Questo significa aver testato non solo domande formali, ma anche richieste poste con linguaggio colloquiale o meno strutturato.
* **Assicurare l’affidabilità in un contesto pubblico**: l'autorevolezza di un Ente dipende dalla precisione delle informazioni fornite. Per questo, i test hanno verificato che il chatbot fornisca risposte coerenti, corrette e comprensibili, specialmente quando si trattano temi sensibili (es. scadenze di pagamento o requisiti per l'accesso a servizi sociali).
* **Garantire solidità in scenari diversi**: la comunicazione dei cittadini varia sensibilmente per forma, registro linguistico e livello di dettaglio. I test sono stati pensati per coprire questa varietà, assicurando che il sistema rimanga stabile e preciso sia di fronte a quesiti sintetici, sia di fronte a richieste più articolate e complesse.

## Tipologia di test condotti

Per garantire una copertura completa delle possibili interazioni tra cittadino e Pubblica Amministrazione, il ciclo di ottimizzazione ha previsto cinque diverse tipologie di test complementari:

* **Analisi dei domini informativi rilevanti**: prima della fase di test vera e propria, sono stati identificati i temi e le informazioni più ricercate sui siti della PA italiana. Questo ha permesso di focalizzare l'addestramento del chatbot sugli argomenti di reale interesse per la collettività (es. tributi, anagrafe, mobilità).
* **Validazione della qualità delle risposte**: una serie di test mirati a verificare sistematicamente la bontà delle risposte fornite, applicando i criteri di correttezza, chiarezza e completezza per ogni informazione erogata.
* **Test di robustezza linguistica (varianti e formulazioni)**: il sistema è stato sollecitato con diverse formulazioni della stessa domanda, simulando linguaggi colloquiali, stili sintetici o richieste molto dettagliate. L'obiettivo è assicurare che il chatbot comprenda l'intento dell'utente indipendentemente dalla forma grammaticale utilizzata.
* **Test di copertura degli scenari trasversali**: valutazione della capacità del chatbot di navigare tra bisogni informativi diversi e complessi, garantendo risposte precise anche quando le domande toccano uffici o procedimenti amministrativi differenti.
* **Stress-test su casi limite e ambiguità**: verifica del comportamento del sistema in presenza di domande incomplete, ambigue o del tutto estranee al contesto istituzionale (fuori perimetro). Questo assicura che il chatbot mantenga sempre un tono professionale e non fornisca informazioni incerte.

Le sessioni di validazione hanno coperto un ventaglio completo di servizi, riflettendo la complessità e la varietà delle richieste che un Comune riceve quotidianamente. Gli argomenti sono stati selezionati per testare la capacità del chatbot di navigare tra domini informativi molto diversi tra loro:

* **Cultura, eventi e tempo libero**: iniziative locali, musei e manifestazioni.
* **Servizi scolastici e formazione**: iscrizioni, mense e agevolazioni.
* **Servizi anagrafici e stato civile**: certificati, atti e documenti d'identità.
* **Segnalazioni e assistenza**: guasti, reclami e supporto al cittadino.
* **Edilizia, Urbanistica (PRG) e Regolamenti**: pratiche edilizie e norme tecniche.
* **Tributi e tasse: IMU, TARI e scadenze fiscali**.
* **Concorsi e personale**: bandi di gara e opportunità di impiego nell'Ente.
* **Sociale, Casa e Welfare**: alloggi popolari e sussidi.
* **Organizzazione uffici**: orari, sedi e competenze dei singoli settori.
* **Mobilità e trasporti**: ZTL, parcheggi e viabilità.

### Esempi di domande poste al chatbot

Per verificare la solidità del sistema, sono stati formulati quesiti con diversi livelli di complessità e registri linguistici. Di seguito sono riportati alcuni esempi significativi:

* *"Come posso iscrivere mio figlio all'asilo nido?"*
* *"Come posso richiedere la carta d’identità elettronica (CIE)?"*
* *"Devo liberarmi di un vecchio divano e di un armadio. Dove posso portare i rifiuti ingombranti?"*
* *"Ho perso il mio portafoglio in città. Dove posso segnalarlo?"*
* *"Quanto costa un funerale comunale?"*
* *"Come si fa un cambio di residenza online?"*
* *"Vorrei sapere dove sono le zone a traffico limitato"*

Questa varietà di scenari ha permesso di certificare che l'OpenCity AI Chatbot sia in grado di agire come un punto di accesso unico e affidabile, indipendentemente dall'ufficio o dal settore di competenza della richiesta.

## Metodologia

Ogni risposta generata dal sistema è stata sottoposta a un rigoroso processo di validazione. La metodologia adottata prevede l’assegnazione di un punteggio da 1 a 3 (dove 3 rappresenta il massimo livello di qualità) per ciascuna interazione, valutata secondo cinque criteri oggettivi:

* **Correttezza**: l'informazione fornita non è solo priva di errori fattuali, ma risulta verificabile, aggiornata e accurata rispetto alle fonti ufficiali e alle banche dati dell'Ente.
* **Aderenza alla domanda**: il chatbot mantiene il focus costante sulla richiesta specifica dell'utente, evitando divagazioni inutili o risposte che non rispondono direttamente all'intento rilevato.
* **Completezza**: viene offerta una risposta esaustiva che copre tutti gli aspetti rilevanti del quesito, assicurando che non rimangano lacune informative o punti in sospeso per il cittadino.
* **Chiarezza**: la risposta è formulata in un italiano corretto, con un’esposizione piana, ordinata e facilmente comprensibile anche per utenti con diversi livelli di competenza digitale.
* **Concisione**: il messaggio viene comunicato in modo diretto ed essenziale, eliminando ridondanze, ripetizioni e qualsiasi contenuto superfluo che non aggiunga valore informativo alla conversazione.

Il processo si articola in tre fasi operative:

1. individuazione dei bisogni: partendo dai dati reali di navigazione e dalle analisi SEO dei siti istituzionali, abbiamo costruito un set di centinaia di domande rappresentative delle necessità più frequenti dei cittadini;
2. simulazione di scenari d'uso: ogni domanda è stata testata in molteplici varianti, simulando l'uso di un linguaggio colloquiale, la presenza di refusi o formulazioni ambigue, per garantire la robustezza dell'interpretazione semantica;
3. validazione delle risposte: ogni risposta generata è stata analizzata secondo criteri di pertinenza, completezza (assenza di informazioni superflue) e coerenza con le pagine citate come fonte.

### Sistema di valutazione dei risultati

A ciascuno dei criteri di analisi è stato assegnato un valore che riflette il grado di aderenza agli standard qualitativi di OpenCity Italia:

* 3 (Ottimale): la risposta soddisfa pienamente il criterio. L'informazione è accurata, il tono è corretto e non sono necessari interventi;
* 2 (Migliorabile): la risposta è corretta e utile, ma presenta margini di perfezionamento (es. nella concisione o nella formattazione);
* 1 (Non soddisfacente): la risposta non rispetta il criterio. Segnala la necessità di un intervento prioritario sulla *Knowledge Base*.

Di seguito vengono riportati i punteggi medi rilevati, che evidenziano la solidità delle risposte sia in contesti metropolitani che in realtà di dimensioni ridotte.

| **Criterio**          | **Descrizione**                                                                                | **Comune grande (\~100.000 ab.)** | **Comune piccolo (\~10.000 ab.)** |
| --------------------- | ---------------------------------------------------------------------------------------------- | --------------------------------- | --------------------------------- |
| Correttezza           | L'informazione è priva di errori fattuali, verificabile, aggiornata e accurata.                | 2,4                               | 2,4                               |
| Aderenza alla domanda | Il chatbot rimane focalizzato sulla richiesta, evitando divagazioni o risposte fuori contesto. | 2,6                               | 2,8                               |
| Completezza           | La risposta è esaustiva e copre tutti gli aspetti rilevanti del quesito.                       | 2,7                               | 2,7                               |
| Chiarezza             | Esposizione chiara, ordinata, in italiano corretto e facilmente comprensibile.                 | 2,8                               | 2,7                               |
| Concisione            | Il messaggio è diretto ed essenziale, privo di ridondanze o contenuti superflui.               | 2,7                               | 2,6                               |

## Analisi comparativa

Per misurare il valore aggiunto del sistema, abbiamo condotto analisi comparative tra le prestazioni del chatbot e quelle dei motori di ricerca nativi dei siti web dell'Ente.

I test hanno dimostrato che OpenCity Chatbot AI è in grado di fornire risposte puntuali anche laddove la ricerca tradizionale per parola chiave non produce risultati utili, orientando il cittadino con maggiore efficacia.

## Ottimizzazione continua

Le evidenze emerse dai test hanno permesso di implementare azioni di miglioramento mirate a:

* incrementare la precisione semantica nelle risposte ai quesiti complessi;
* affinare la selezione delle fonti, mostrando all'utente i link più pertinenti;
* garantire un miglioramento costante: il sistema è progettato per evolvere insieme ai contenuti del sito. Periodicamente, vengono eseguiti test su set di domande standard per assicurare che il livello di qualità rimanga elevato nel tempo, seguendo un modello di miglioramento continuo.


# Architettura e framework

## Architettura software

Il cuore tecnologico di OpenCity Chatbot AI si basa su un’architettura di tipo RAG (*Retrieval-Augmented Generation*). A differenza dei sistemi basati su sola intelligenza artificiale generica, questo approccio fa in modo che ogni risposta sia il più possibile ancorata esclusivamente a dati certi e verificati.

Quando un utente pone una domanda, il flusso di elaborazione segue tre fasi principali:

1. *Retrieval*: la richiesta viene gestita dal componente open source OpenCity AI, che analizza il contenuto della domanda e interroga il motore di ricerca interno per individuare le informazioni specifiche presenti sul sito web dell'Ente;
2. Arricchimento del contesto: il sistema "arricchisce" la domanda dell'utente unendola ai frammenti di testo ufficiali recuperati dal sito. In questa fase, il chatbot ha già la risposta corretta sotto forma di dati grezzi;
3. *Generation*: il pacchetto informativo (domanda + dati ufficiali) viene inviato a un modello linguistico avanzato (LLM) tramite API sicure. In questa fase finale, l'LLM non attinge alla propria conoscenza generica, ma si limita a elaborare in forma di dialogo le informazioni ricevute, restituendo al cittadino una risposta chiara, cortese e precisa.

Questa architettura garantisce la massima trasparenza grazie alla base open source e la massima affidabilità, poiché separa la fase di "conoscenza" (gestita dai dati comunali) dalla fase di "esposizione" (gestita dall'IA).

## Opensource e neutralità tecnologica

OpenCity AI Chatbot è configurato come un modulo completamente autonomo, progettato per essere introdotto nell'ecosistema digitale dell'Ente senza generare vincoli o dipendenze tecnologiche.

A differenza di altre soluzioni sul mercato, il sistema garantisce la massima libertà di manovra grazie a due pilastri:

* **Nessun prerequisito di piattaforma**: il chatbot è pronto all'uso come **soluzione&#x20;*****stand-alone***, capace di operare indipendentemente dai software già in dote all'Amministrazione;
* **Nessun obbligo di migrazione**: l’Ente non è obbligato a migrare il proprio sito web o a modificare l’attuale infrastruttura digitale per poter beneficiare dell’assistente virtuale. Il sistema si integra sul portale esistente, permettendo all'Ente di evolvere i propri servizi ai cittadini senza dover affrontare i costi e le complessità di un cambio di piattaforma o di un trasloco di contenuti.

Questa impostazione garantisce una piena interoperabilità e permette all'Ente di potenziare l'interazione con l'utenza in tempi rapidi, mantenendo intatto l'investimento tecnologico già effettuato sul proprio sito istituzionale.

### Erogazione in SaaS

Il servizio viene fornito interamente in modalità SaaS (*Software as a Service*). Questa scelta architettonica è pensata per azzerare l’impatto sull'infrastruttura dell'Ente: essendo una soluzione *cloud* nativa, l'Ente non deve installare alcun software né configurare o gestire server dedicati.

### Agnosticismo rispetto ai modelli di linguaggio (LLM)

OpenCity AI **è agnostico rispetto alla soluzione LLM** (*Large Language Model*) adottata, garantendo:

* **intercambiabilità dei modelli**: attualmente il sistema utilizza Google Agentic Platform (ex Google Vertex AI), ma l'architettura è predisposta per integrare altri modelli leader di mercato a seconda delle necessità o dell'evoluzione tecnologica;
* **sperimentazione**: il nostro team sta attivamente sperimentando l'uso di modelli locali Open Source.

### Ecosistema di plugin e repository

L'estensibilità del sistema è garantita da un’architettura modulare che conta attualmente su 9 plugin interamente Open Source, progettati per potenziare le capacità di interazione e integrazione del chatbot.

L'attuale configurazione prevede:

* **6 plugin sviluppati internamente**: moduli progettati ad hoc dai nostri team per rispondere alle specifiche esigenze verticali della Pubblica Amministrazione italiana;
* **3 plugin preesistenti**: componenti selezionati dalla comunità Open Source globale, integrati e ottimizzati per garantire la massima stabilità e interoperabilità.

Tutti i moduli, corredati dalla relativa documentazione tecnica, sono descritti nella sezione [Gestione dei Plugin](https://docs.opencityitalia.it/sviluppatori-e-partner-tecnologici/integrazioni/installazione-chatbot/gestione-dei-plugin).

## Framework

Il sistema si basa sul framework Open Source [Cheshire Cat AI v.1](https://cheshirecat.ai/) che, tramite il nostro contributo sotto forma di plug-in anche essi Open Source, permette di gestire tutto il flusso delle chat.

Le funzionalità del prodotto ci permettono di:

* avere sempre a disposizione le [informazioni](/ai/architettura-e-funzionalita-del-chatbot/chatbot-per-la-pa/funzionalita-del-chatbot#sincronizzazione-dei-contenuti-e-aggiornamento-dati) del sito web (aggiornate alla mezzanotte del giorno corrente);
* mantenere la [privacy](/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/privacy-e-sicurezza-dei-dati) degli utenti tramite specifiche funzionalità di anonimizzazione;
* mostrare le fonti da cui sono state prese le informazioni;
* rifiutare richieste non pertinenti.

## Integrazioni e interoperabilità: analisi e adozione del Model Context Protocol (MCP)

La nostra piattaforma è in costante evoluzione per allinearsi in modo fluido e sicuro all'ecosistema digitale della Pubblica Amministrazione. Per garantire la massima longevità e interoperabilità dei nostri sistemi, stiamo attivamente esplorando l'adozione del **Model Context Protocol (MCP)**, il nuovo standard per la comunicazione tra le intelligenze artificiali e i servizi dati.

L'adozione di questo standard ha il potenziale per superare le tradizionali e rigide integrazioni API point-to-point, puntando a trasformare il nostro chatbot in un ecosistema sempre più *plug-and-play*. In prospettiva, ciò andrebbe a limitare il rischio di *vendor lock-in*, facendo sì che i futuri aggiornamenti ai servizi dell'Ente possano richiedere interventi minimi sul codice del chatbot, ottimizzando tempi e costi di manutenzione.

La nostra analisi implementativa si sta sviluppando su due direttrici principali, al fine di studiare un flusso bidirezionale per i servizi della PA:

### Il chatbot verso un modello di agente universale (client MCP)

L'obiettivo è quello di elevare il nostro assistente AI da strumento puramente conversazionale a sistema capace di interagire in modo proattivo con i servizi digitali dell'Ente. Le aree di indagine attuali includono:

* **Integrazione sicura con SPID/CIE (privacy-first):** Lo scenario applicativo a cui puntiamo prevede la possibilità di far autenticare l'utente tramite i sistemi di identità digitale standard. In questa architettura, il server MCP agirebbe da ponte sicuro per la gestione della sessione SPID, facendo in modo che il "cervello" dell'IA (l'LLM) non debba mai entrare in possesso dei token diretti, a garanzia e tutela della privacy.
* **Automazione assistita (agent loop):** La sperimentazione sull'MCP mira ad abilitare, in futuro, l'esecuzione di operazioni complesse in un'unica interazione semantica. A tendere, una volta autenticato, l'agente potrebbe essere in grado di visualizzare le pratiche di un cittadino, identificare documenti mancanti e prepararne l'aggiornamento sui sistemi dell'Ente, chiedendo all'utente unicamente le conferme finali necessarie.
* **Connessione a servizi di terze parti:** Qualora l'Ente utilizzasse già software di altri fornitori compatibili con lo standard MCP, il nostro obiettivo è fare in modo che il chatbot possa interfacciarsi a tali servizi, ponendosi progressivamente come interfaccia unificata.

### Verso un'apertura all'ecosistema PA (server MCP)

L'interoperabilità è un principio fondamentale delle linee guida AgID. Per questo motivo, stiamo studiando l'approccio tecnico per esporre progressivamente i nostri servizi proprietari tramite un nostro server MCP dedicato. Una volta a regime, questa architettura permetterà potenzialmente ad altri agenti AI in uso all'Ente di interrogare la nostra piattaforma in modo standardizzato, valorizzando il patrimonio informativo a tutti i livelli istituzionali.

### Sicurezza, governance e trasparenza

Trattando dati sensibili, il controllo sulle azioni dell'IA resta il perno della nostra progettazione:

* **Autorizzazioni granulari (RBAC):** L'architettura MCP sta venendo ingegnerizzata per permettere una configurazione flessibile dei permessi. L'intento è fornire all'Ente la capacità di definire a livello di server quali endpoint siano accessibili e con quali privilegi (es. limitare alcuni flussi alla sola consultazione e abilitare la scrittura solo per specifiche pratiche).
* **Tracciabilità e auditing strutturato:** Sebbene ogni interazione del sistema sia già tracciata dalle nostre infrastrutture, stiamo valutando un'evoluzione per rendere in futuro la consultazione dei log ancora più accessibile per i responsabili dell'Ente, garantendo massima trasparenza amministrativa sulle richieste e sulle operazioni gestite dall'IA.
* **Affidabilità e certezza del dato:** La prospettiva di integrazione real-time con i database dell'Ente (in sinergia con i nostri attuali sistemi RAG) ha lo scopo di fornire al chatbot un contesto sempre più basato su dati certificati e aggiornati, con l'obiettivo continuo di mitigare il rischio di allucinazioni.
* **Trasparenza sull'interazione con l'AI:** In conformità a quanto stabilito dall'art. 50, comma 1, del Regolamento (UE) 2024/1689 (EU AI Act), la schermata di chat integra un avviso visivo permanente e ben visibile prima dell'invio del primo messaggio ("Le risposte sono generate con l'aiuto dell'intelligenza artificiale e potrebbero contenere inesattezze, verifica sempre le informazioni rilevanti"). In questo modo, l'utente è sempre consapevole dell'origine delle risposte che riceve.

### Roadmap e approccio allo sviluppo

Trattandosi di un'evoluzione architetturale profonda e strettamente legata all'evoluzione degli standard globali dell'IA, l'introduzione delle funzionalità basate su Model Context Protocol avverrà in modo **progressivo e strettamente modulare**.

Le fasi di test e sviluppo procederanno in parallelo con il rilascio dei nostri nuovi moduli software. Questo approccio flessibile e cauto ci permette di assicurare che ogni potenziale integrazione MCP venga rigorosamente validata prima dell'eventuale rilascio in produzione, tutelando la stabilità, la sicurezza e la continuità di servizio per le Pubbliche Amministrazioni.


# Installazione

{% hint style="info" %}
L'installazione del chatbot e dei relativi plugin è a cura del personale di OpenCity.
{% endhint %}

Il capitolo descrive, a scopo di trasparenza, il processo che porta il chatbot da immagine Docker a servizio attivo e configurato sul sito dell'Ente.

Il processo si svolge in questi passaggi:

1. [Istanziare il backend](/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/installazione/istanziare-il-backend): avvio del container Docker con le variabili d'ambiente dell'Ente.
2. [Setup preliminare](/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/installazione/setup-preliminare): primo accesso al pannello di amministrazione e configurazione di LLM ed Embedder.
3. [Gestione dei Plugin](/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/installazione/gestione-dei-plugin): attivazione dei moduli che estendono le funzionalità del chatbot.
4. [Finalizzazione del setup e prima indicizzazione](/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/installazione/finalizzazione-del-setup-e-prima-indicizzazione): caricamento della base di conoscenza dal sito istituzionale.
5. [Integrazione con il frontend](/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/installazione/integrazione-con-il-frontend): collegamento del widget al sito dell'Ente.


# Istanziare il backend

Il backend del chatbot si basa sul framework open source [Cheshire Cat AI](https://cheshirecat.ai/), esteso con i plugin sviluppati da OpenCity per la Pubblica Amministrazione.

Per l'installazione si usa l'[immagine Docker di OpenCity AI Chatbot](https://docs.opencityitalia.it/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/architettura-e-framework), configurata dal personale OpenCity con le variabili d'ambiente descritte nel `README.md` della repository. Sono tutte necessarie e comprendono:

* le chiavi per il modello linguistico (LLM) e per l'Embedder;
* i dati identificativi dell'Ente (nome, sito da scansionare, contatti);
* i parametri di sistema del core (host, porte, chiavi API e JWT).

Il container mantiene come volumi persistenti le cartelle `data`, `plugins` e `static`, per non perdere configurazione e base di conoscenza a ogni riavvio.


# Setup preliminare

Una volta completata l'installazione, è necessario procedere alla configurazione dell'ambiente amministrativo:

## Accesso al Pannello di Amministrazione

Naviga all'URL dell'istanza installata (es. `https://nuovaistanza.it/admin`). Effettuare il primo accesso (login) utilizzando le credenziali predefinite di sistema:

* Username: `admin`
* Password: `admin`

## Messa in sicurezza e gestione delle utenze

Accedi alla scheda Settings

<figure><img src="/files/g6Wa9aMkyhVvJfWDhzeO" alt=""><figcaption></figcaption></figure>

Come operazione preliminare e prioritaria per la sicurezza del sistema:

* modifica immediatamente la password dell'utente `admin` predefinito e dell'utente `user`.
* crea eventuali profili utente aggiuntivi necessari per la gestione del chatbot.

## Configurazione del Large Language Model (LLM)

Di default, il modello di linguaggio impostato sarà Gemini 2.5 Flash via Google Agentic Platform, con la chiave API della variabile d'ambiente.

Se si volesse cambiare LLM provider o modello:

Sempre all'interno della scheda Settings, localizza la sezione dedicata al LLM e clicca su "Configure"

<figure><img src="/files/fbTRqZr76sNZ2hghaVkD" alt=""><figcaption></figcaption></figure>

Successivamente, inserisci:

* Provider: Selezionare il Provider desiderato dal menu a tendina.
* API Key: Inserire l'eventuale chiave API valida.
* Model: Impostare il modello desiderato.

<figure><img src="/files/uRRew4IDsIhwwYhJvE3r" alt=""><figcaption></figcaption></figure>

Una volta concluso, salva per confermare le modifiche.

## Configurazione dell'Embedder

Di default, il modello Embedder impostato sarà gemini-embedding-001 via Google Agentic Platform, con la chiave API della variabile d'ambiente.

Se si volesse cambiare Embedder provider o modello:

Accedi alla sezione dedicata all'Embedder e clicca su "Configure":

<figure><img src="/files/ZAII0ht8W0O9UtkarHE6" alt=""><figcaption></figcaption></figure>

Successivamente, inserisci:

* Provider: Selezionare il Provider desiderato dal menu a tendina.
* API Key: Inserire l'eventuale chiave API valida.
* Model: Impostare il modello desiderato.

<figure><img src="/files/ORSmxRG00pXbOopuwUdp" alt=""><figcaption></figcaption></figure>

Una volta concluso, salva per finalizzare la configurazione.


# Gestione dei Plugin

Il sistema adotta un'architettura estensibile basata su Plugin. Questo approccio consente di aggiungere o modificare le funzionalità del chatbot senza intervenire direttamente sul codice sorgente principale (*Core*) del framework, garantendo così una maggiore stabilità e facilità di aggiornamento del sistema.

L'attivazione di nuovi moduli aggiuntivi è gestita interamente tramite l'interfaccia grafica:

1. accedere al pannello di amministrazione con privilegi di amministratore;
2. navigare alla sezione Plugins;
3. individuare il componente desiderato dall'elenco e procedere all'installazione.

<figure><img src="/files/7cRxKlcRXhTmjkpt4Is6" alt=""><figcaption></figcaption></figure>

Ogni plugin dispone di una propria documentazione tecnica specifica. Si raccomanda di consultare tali risorse esterne per ottenere dettagli approfonditi su:

* logiche di funzionamento interne;
* parametri di configurazione avanzata;
* valori di default e variabili d'ambiente dedicate.

## Elenco dei plugin

L'immagine Docker di OpenCity AI arriva con una serie di plugin già installati e configurati, la lista completa e sempre aggiornata è disponibile nella [repository GitLab](https://docs.opencityitalia.it/ai/architettura-e-funzionalita-del-chatbot/architettura-e-sicurezza-dei-dati/architettura-e-framework) principale.


# Valori threshold

I valori di *Threshold* indicati di seguito sono indicativi. Poiché la qualità del recupero dati dipende strettamente dal modello di Embedder configurato (nel nostro caso *Google Gemini Embedder*), è necessario effettuare test empirici tramite l'interfaccia di chat Admin per affinare questi valori.


# Finalizzazione del setup e prima indicizzazione

Una volta completata l'installazione e la configurazione dei plugin, è necessario procedere con l'inizializzazione del sistema e il caricamento della base di conoscenza (Knowledge Base).

## Procedura di scraping e ingestione dati

A sistema avviato, si procederà con l'acquisizione automatica dei contenuti del sito web istituzionale per popolarne la memoria a lungo termine in due modalità:

1. Attendere le 2 AM UTC per la prima scansione automatica
2. Procedere manualmente:
   1. Accesso: effettuare nuovamente il login alla dashboard di amministrazione (`/admin`) con credenziali di amministratore.
   2. Esecuzione comando: posizionarsi nella scheda Home (l'interfaccia di chat di test). Inviare il seguente comando nella chat per attivare il plugin *Scrapycat*: `@scrapycat https://www.ente.it`

Il sistema avvierà il processo di *crawling* (navigazione) e *scraping* (estrazione):

* il testo estratto verrà convertito in vettori numerici (tramite l'Embedder configurato).
* i vettori verranno salvati nella Memoria Dichiarativa all'interno del database vettoriale Qdrant.

La velocità di indicizzazione è stimata in circa 1 secondo per pagina web. Il tempo totale dipenderà quindi dalla mole di pagine presenti sul sito target, con possibilità di aggiungere un cut-off automatico ad un determinato numero di pagine.


# Integrazione con il frontend

Il componente di interfaccia (Frontend) è l'elemento che permette l'interazione diretta tra i cittadini e il motore di intelligenza artificiale configurato nel backend.

Il widget è stato sviluppato seguendo rigorosamente le linee guida ufficiali di Designers Italia. Questo garantisce:

* piena accessibilità e usabilità;
* coerenza grafica con gli standard dei siti della Pubblica Amministrazione;
* un'esperienza utente (UX) intuitiva.

## Parametri di configurazione

Il codice sorgente completo del widget è disponibile al seguente indirizzo: [integrazioni con il sito istituzionale](https://docs.opencityitalia.it/sviluppatori-e-partner-tecnologici/integrazioni/integrazioni-con-il-sito-istituzionale)

Per rendere operativo il widget e personalizzarlo secondo le specifiche dell'Ente, lo script di integrazione richiede la definizione obbligatoria di cinque parametri:

| **Parametro**     | **Funzione**                                              | **Esempio / Note**                |
| ----------------- | --------------------------------------------------------- | --------------------------------- |
| API URL           | Indirizzo HTTP per le chiamate REST al backend.           | `https://chat.ente.it/cat`        |
| WebSocket URL     | Indirizzo per la connessione in tempo reale (streaming).  | `wss://chat.ente.it/cat/ws`       |
| Nome Ente         | Etichetta testuale mostrata nell'intestazione della chat. | Es. "Comune di Trento"            |
| Colore Principale | Codice esadecimale per il branding (bottoni, header).     | Es. `#0066CC`                     |
| Link Privacy      | URL alla pagina dell'informativa sul trattamento dati.    | Obbligatorio per conformità GDPR. |

## Widget non visibile: AdBlock e anti-tracking

Il widget viene integrato tramite **Google Tag Manager** (GTM), uno strumento che consente di aggiungere componenti a runtime senza dover intervenire direttamente sul codice del sito.

In alcune configurazioni, il widget potrebbe non essere visibile al cittadino. La causa più comune è l'**attivazione di un ad blocker o di uno strumento anti-tracking**, come:

* estensioni browser tipo AdBlock, uBlock Origin o simili;
* funzionalità di protezione integrata in VPN (ad esempio NordVPN);
* modalità "Enhanced Tracking Protection" di alcuni browser.

Gli strumenti anti-tracking bloccano Google Tag Manager perché, nella grande maggioranza dei casi, i siti web lo utilizzano per finalità di profilazione e pubblicità. Nel caso del chatbot OpenCity, GTM è il metodo più comodo per iniettare il widget a runtime senza dover coinvolgere i developer del sito a ogni aggiornamento: non viene usato per raccogliere dati o tracciare il comportamento degli utenti. Il blocco è però automatico e indiscriminato.

{% hint style="warning" %}
Se il widget del chatbot non appare, verifica se il browser o la VPN in uso hanno un ad blocker attivo. Disabilitandolo per il sito istituzionale, il widget torna visibile.
{% endhint %}

Se il problema riguarda una quota rilevante degli utenti, la soluzione definitiva è integrare lo script del widget **direttamente nel codice del sito**, bypassando Google Tag Manager: lo script non sarà più soggetto ai filtri anti-tracking che si concentrano su GTM.


# Privacy e sicurezza dei dati

{% hint style="info" %}
Per una disamina completa sulle modalità di gestione e trattamento dei dati, è possibile consultare il documento ufficiale sulle [Modalità di trattamento dei dati personali](https://docs.google.com/document/d/1AoimC9Z2K8tqhUFLTQlclU2zpKU_w2bH_EHg_RXVn6E/edit?tab=t.0)
{% endhint %}

Per garantire la massima sicurezza, il sistema integra un componente software dedicato che agisce come un filtro di sicurezza preventivo tra l’utente e il modello di linguaggio (LLM) esterno.

Prima che qualsiasi richiesta venga inoltrata all'intelligenza artificiale per l'elaborazione della risposta, il modulo di sicurezza di OpenCity interviene attivamente attraverso due azioni cruciali:

### **Validazione della pertinenza**

**I**l sistema analizza il contenuto della richiesta e impedisce l'inoltro di domande su argomenti non pertinenti al dominio informativo dell'Ente. Questo assicura che il chatbot rimanga focalizzato esclusivamente sui servizi e sulle finalità istituzionali.

### **Anonimizzazione preventiva**

Il filtro identifica e rimuove istantaneamente eventuali dati personali (nomi, indirizzi email, numeri di telefono, codici fiscali, ecc.) inseriti involontariamente dall'utente all'interno della chat.

Questo flusso operativo è stato progettato per limitare il rischio che un sistema esterno (LLM) effettui trattamenti su dati personali. In sostanza, il componente OpenCity AI funge da barriera protettiva, garantendo che al modello di intelligenza artificiale giungano esclusivamente quesiti anonimi e privi di informazioni sensibili.

### **Limiti dell'AI e gestione degli errori**

Come qualsiasi sistema basato su intelligenza artificiale, OpenCity AI Chatbot può commettere errori. Il chatbot è progettato per gestirli in modo trasparente: quando non dispone di informazioni, lo dichiara esplicitamente e invita l'utente a contattare l'ente attraverso i canali dedicati, invece di produrre una risposta approssimativa.


# Indicizzazione dei contenuti

L’affidabilità delle risposte fornite da OpenCity AI Chatbot è strettamente legata all’accuratezza e al costante allineamento dei flussi informativi acquisiti dal portale istituzionale.

Il cuore di questo processo è il ***crawler***, un modulo specializzato nella scansione periodica del portale istituzionale, progettato per operare nel pieno rispetto della privacy e delle policy di pubblicazione dell’Ente.

Il sistema adotta gli standard e le regole di indicizzazione dei principali motori di ricerca mondiali (come Google e Bing):

* rispetto del protocollo `robots.txt`: il crawler segue rigorosamente le istruzioni di esclusione impostate sul sito web, garantendo che il chatbot non indicizzi mai aree riservate o protette.
* sincronizzazione semantica: a differenza dei motori di ricerca tradizionali, il chatbot trasforma i testi in un database semantico che permette di comprendere l'intento dell'utente e non solo le singole parole chiave.


# OpenCity AI Crawler

### **Cos'è l'OpenCity AI Crawler?**

Il crawler di **OpenCity AI** è un web scraper sviluppato da OpenCity Labs per leggere e indicizzare i contenuti web pubblici dei siti della Pubblica Amministrazione, così da renderli disponibili al chatbot.

Visita periodicamente le pagine dei siti comunali, come farebbe un utente reale: legge le pagine, estrae il testo utile e lo salva. Quando una pagina cambia, la aggiorna; quando non è più raggiungibile, la segnala. Il processo è continuo e automatico e non richiede interventi manuali.

### **Come identificarlo nei log**

Se vedi il nostro crawler nei log del tuo server, lo riconosci dalla seguente stringa `User-Agent`:

```
Mozilla/5.0 (compatible; OpenCityAI-Crawler/1.0; +https://link.opencitylabs.it/ai-chatbot-crawler)
```

Il token da usare nelle regole `robots.txt` è `OpenCityAI-Crawler`.

### **Cosa fa?**

Quando un crawl parte su un sito, il crawler non conosce in anticipo tutte le pagine: le scopre navigando, proprio come farebbe un utente reale. Parte dalla homepage e segue i link, costruendo progressivamente la mappa del sito. In parallelo usa anche la sitemap XML, se presente, per trovare le pagine più velocemente. Se la sitemap non è dichiarata nel file `robots.txt` ma è comunque nota, puoi inserirla manualmente nella configurazione del sito.

Il crawler rispetta sempre le istruzioni pubblicate nel `robots.txt` e ignora le aree non scansionabili. All'avvio di un crawl puoi però sovrascrivere temporaneamente queste regole, ad esempio per testare aree normalmente escluse.

Tra i contenuti scoperti rientrano anche i file PDF: il crawler li scarica e li salva, ma non ne analizza il contenuto interno né segue eventuali link al loro interno.

All'inizio della scansione di un nuovo sito il crawler esegue una fase di calibrazione (*probe*): stabilisce così quante pagine può processare in parallelo senza sovraccaricare il sito. Salva il valore individuato e lo riusa come punto di partenza nelle scansioni successive; dall'interfaccia puoi comunque forzarne uno nuovo quando serve.

Durante la scansione il crawler continua ad adattarsi al comportamento del sito. Se riceve segnali di rallentamento, come errori `429` o `503`, aumenta automaticamente il tempo di attesa tra una richiesta e l'altra. Se invece più *batch* consecutivi si chiudono senza problemi, riduce gradualmente il ritardo: cerca sempre il ritmo più veloce che il sito è in grado di sostenere.

Il crawler non riscansiona una pagina se non serve. Ogni pagina ha una finestra di validità che si allunga o si accorcia automaticamente in base alla sua storia: il crawler controlla più spesso le pagine che cambiano frequentemente, molto meno quelle stabili.

Quando arriva il momento di ricontrollare una pagina, il crawler verifica prima se il contenuto è davvero cambiato. Usa le intestazioni HTTP standard e confronta la pagina con quella salvata in precedenza. Solo se rileva una variazione reale, la reindicizza e ne aggiorna la data di ultima modifica. Quel campo indica quindi sempre un cambiamento effettivo del contenuto, non semplicemente l'ultima visita del crawler (indicata invece dal campo *last visited*).

Alcuni siti caricano i contenuti principali tramite JavaScript: in questi casi il testo non è visibile nella versione HTML statica della pagina. Il crawler rileva automaticamente questa situazione confrontando le due versioni della pagina, sia sulla differenza di quantità di caratteri sia tramite intelligenza artificiale. Quando serve, usa un browser *headless* per ottenere la pagina così come la vedrebbe un utente reale.

Il crawler memorizza la classificazione per ogni pagina, così le scansioni successive non devono ripetere ogni volta lo stesso confronto.

Se una pagina smette di rispondere o restituisce errori ripetuti, il crawler non continua a tentare inutilmente. Dopo alcuni tentativi falliti consecutivi la mette in pausa automaticamente per alcuni giorni; se il problema persiste, allunga progressivamente il blocco. Quando la pagina torna accessibile e risponde correttamente, il crawler rimuove il blocco in automatico e azzera il contatore degli errori.

Ogni giorno alle 02:00 il sistema avvia automaticamente il crawl di tutti i siti disponibili, per mantenerli aggiornati. Se un crawl è già in corso, blocca automaticamente i tentativi successivi sullo stesso sito.

Oltre alle regole automatiche, è possibile intervenire manualmente su singole pagine o su interi percorsi. Per esempio si può:

* forzare una frequenza di riscansione diversa (di base il crawler non ricontrolla le pagine visitate nelle ultime 24 ore);
* aggiungere un file `robots.txt` personalizzato per impostare un limite di velocità o bloccare la scansione di certi percorsi;
* forzare un crawl da zero ignorando le regole per le pagine già visitate.

Queste opzioni convivono con quelle automatiche e hanno precedenza su di esse. All'avvio di un crawl è anche possibile impostare un limite massimo di pagine da scansionare, utile per test rapidi su siti molto grandi.

### **Comportamento e rispetto del robots.txt**

Il nostro crawler:

* rispetta rigorosamente il Web Robots Exclusion Protocol, inclusi `Disallow`, `Allow` e `Crawl-delay`;
* adatta automaticamente la velocità di scansione in base alle risposte del server;
* mantiene un intervallo minimo tra le richieste allo stesso host;
* accede solo a contenuto pubblico, senza entrare in aree autenticate, compilare form o interagire con elementi che richiedono login.

#### Bloccare sezioni specifiche

```
User-agent: OpenCityAI-Crawler
Disallow: /area-riservata/
Disallow: /documenti-interni/
```

#### Impostare un ritardo tra le richieste

```
User-agent: OpenCityAI-Crawler
Crawl-delay: 5
```

#### Bloccare completamente il crawler

```
User-agent: OpenCityAI-Crawler
Disallow: /
```

{% hint style="info" %}
Se il tuo sito ha `Disallow: /` per `User-agent: *` e vuoi che il nostro crawler possa comunque accedere, aggiungi un blocco specifico:

```
User-agent: OpenCityAI-Crawler
Allow: /
```

{% endhint %}

### Verifica dell'autenticità

Il crawler proviene da questi indirizzi IP:

* `3.250.32.208`
* `3.253.249.121`

### Contatti

Per domande, segnalazioni di comportamenti anomali o supporto nella configurazione del `robots.txt`:

* **Sito web:** [www.opencitylabs.it](http://www.opencitylabs.it)
* **Email:** <support@opencitylabs.it>


# Introduzione

<figure><img src="/files/cUxd2nyUsB2yNoA71sMb" alt=""><figcaption></figcaption></figure>

Questo manuale accompagna la Pubblica Amministrazione nell'adozione di OpenCity AI Assistant, l'ambiente di lavoro di OpenCity Italia potenziato dall'intelligenza artificiale che affianca funzionari e dirigenti nelle attività quotidiane, dalla redazione di testi al monitoraggio delle scadenze fino all'analisi dei dati.

A differenza degli assistenti generici, OpenCity AI Assistant lavora dentro le regole dell'ente: conosce la normativa di riferimento, i processi amministrativi e il linguaggio istituzionale. La conformità a Linee Guida AgID, *AI Act* e standard per il digitale è garantita a monte da OpenCity Italia.


# Cos'è OpenCity AI Assistant

OpenCity AI Assistant fornisce a tutti i dipendenti dell'ente, dai funzionari ai dirigenti, un unico ambiente di lavoro potenziato dall'intelligenza artificiale. Basta descrivere quello che si sta cercando di fare: l'assistente recupera informazioni, prepara bozze, monitora scadenze e segnala criticità, tutto attraverso una conversazione in linguaggio naturale.

A differenza degli strumenti di AI generici, OpenCity AI Assistant opera nel contesto specifico delle Pubbliche Amministrazioni italiane. Conosce la normativa di riferimento, i processi amministrativi, il linguaggio istituzionale e gli standard di servizio pubblico: questo gli permette di produrre risposte e contenuti coerenti con il modo di lavorare dell'ente, non indicazioni valide in qualsiasi contesto.

In ogni momento, la decisione finale resta in capo alla persona. È il principio dell'*human-in-the-loop*: l'assistente prepara, suggerisce e segnala, ma non agisce autonomamente. Il funzionario valuta, corregge e approva. Questo principio attraversa tutti gli strumenti della piattaforma.

La conformità normativa e tecnologica (Linee Guida AgID sull'AI, AI Act, Legge 132/2025, standard di interoperabilità, privacy, sicurezza e open source) è gestita a monte da OpenCity Labs. L'ente può così concentrarsi sull'utilità concreta dello strumento, misurarne l'impatto sul lavoro quotidiano e decidere, con dati alla mano, se e quanto estendere l'uso dell'intelligenza artificiale all'interno dell'organizzazione.


# I tre assistenti

OpenCity AI Assistant si articola in tre assistenti distinti, ciascuno calibrato su un profilo di utente e su un ambito di lavoro specifico. Tutti e tre condividono gli stessi strumenti (chat, attività, notifiche) e funzionano allo stesso modo: attraverso una conversazione in linguaggio naturale.

{% hint style="info" %}
Non è necessario scegliere quale assistente aprire: l'ambiente di lavoro è unico. I tre assistenti rappresentano le diverse modalità con cui la piattaforma supporta il dipendente a seconda di quello che sta facendo, non tre applicazioni separate.
{% endhint %}


# Staff Assistant

## **A chi è rivolto**

Per tutti i dipendenti dell'ente, indipendentemente dall'ufficio o dal ruolo.

Staff Assistant accompagna il dipendente nelle attività quotidiane che attraversano ogni ufficio: scrivere testi, organizzare il lavoro, rispettare scadenze, orientarsi nella normativa di base. Non richiede competenze tecniche particolari: basta descrivere quello che si sta cercando di fare.

## **Cosa fa**

#### **Aiutarti a scrivere**

Staff Assistant redige bozze di testi su indicazione: comunicazioni interne, risposte a richieste, contenuti da pubblicare. Il funzionario può rivedere, correggere e approvare il testo prima di utilizzarlo.

#### **Trovare informazioni nell'ente**

L'assistente conosce i contenuti già pubblicati dall'ente (sito istituzionale, Amministrazione Trasparente, Albo Pretorio, intranet) e recupera rapidamente regolamenti, circolari e bandi senza dover navigare tra decine di pagine.

#### **Orientarsi nella normativa**

Conosce il quadro normativo di base per chi lavora nel settore pubblico: il funzionamento della PA, i principali riferimenti legislativi, i diritti e i doveri del dipendente pubblico.

#### **Indirizzarti al servizio giusto**

Quando una richiesta riguarda un altro ufficio o un servizio specifico, Staff Assistant indica dove andare e come attivare la procedura corretta. In particolare, guida verso:

* l'assistenza tecnica, per richieste IT, dotazioni hardware e materiali di consumo;
* l'ufficio del personale, per questioni contrattuali, permessi, ferie e pratiche amministrative;
* il canale di whistleblowing, per segnalazioni riservate;
* la formazione, per consultare le opportunità disponibili;
* le segnalazioni sulla sede, per problemi agli impianti, riscaldamento, pulizie o manutenzione ordinaria;
* le visite mediche, per la gestione degli appuntamenti di sorveglianza sanitaria.


# Tech Assistant

## **A chi è rivolto**

Per il Responsabile per la Transizione Digitale (RTD) e il personale dell'ufficio IT.

Tech Assistant affianca l'RTD e l'ufficio IT nella gestione quotidiana e nella pianificazione strategica delle attività digitali dell'ente. Conosce le fonti ufficiali chiave per la trasformazione digitale della PA e le tiene aggiornate: linee guida AgID, Piano Triennale per l'Informatica, documentazione su ANPR, PDND, pagoPA, SPID e CIE.

## **Cosa fa**

#### **Supportare la pianificazione strategica**

Tech Assistant aiuta a redigere e aggiornare il Piano Triennale IT dell'ente, contribuisce alle sezioni del PIAO dedicate alla digitalizzazione e verifica lo stato di avanzamento rispetto agli obiettivi nazionali.

#### **Analizzare fornitori e offerte**

Confronta le soluzioni proposte dai fornitori, valuta la conformità agli standard di interoperabilità e verifica i requisiti di sicurezza informatica. Può analizzare documenti complessi (capitolati, offerte tecniche, SLA) e produrre un report comparativo su criteri definiti dall'ufficio.

#### **Rispondere a domande tecniche operative**

Gestisce le molte questioni tecniche che attraversano il lavoro quotidiano dell'ufficio IT, fornendo risposte puntuali e allineate al quadro normativo vigente.

#### **Apprendere dal contesto locale**

L'ufficio IT può caricare direttamente documenti e fogli di calcolo (inventario asset, parco fornitori, piano attività, configurazioni in essere) per rendere le risposte dell'assistente progressivamente più precise e contestualizzate.

#### **Gestire le segnalazioni dei dipendenti**

Tech Assistant riceve e traccia le segnalazioni inviate dai colleghi tramite Staff Assistant. Ogni segnalazione viene gestita con un sistema di ticketing integrato: l'ufficio IT può monitorare, assegnare e risolvere le richieste in modo ordinato.


# Governance Assistant

## **A chi è rivolto**

Per il Segretario Generale, anche nelle vesti di Responsabile della Prevenzione della Corruzione e della Trasparenza (RPCT) e per l'Ufficio Segreteria (e/o Affari Generali, secondo l'organigramma dell'ente).&#x20;

Governance Assistant supporta il governo complessivo dell'ente ad opera del Segretario e del suo staff: dal monitoraggio delle attività alla valutazione delle decisioni strategiche, dalla conformità normativa al controllo della qualità dei servizi erogati.

## Cosa fa

L'assistente svolge funzioni specifiche, che si aggiungono alle funzioni generali (creazione documenti, interrogazione atti, sintesi documenti ecc.) a disposizione di tutto il personale dell'ente (Staff Assistant)

#### **Dialogare con i dati dell'ente**

L'assistente può essere alimentato con le basi dati specifiche dell'ente (reportistica, fogli di calcolo, documenti di pianificazione, dati gestionali) e permette di interrogarle in linguaggio naturale. I dirigenti estraggono informazioni mirate ed elaborano scenari senza dover aprire file o costruire query. In questo modo riesce a fornire risposte migliori, basate sul contesto reale in cui opera l'ente.

#### **Coordinamento e monitoraggio del PIAO**

Supporta il Segretario nella composizione del documento, nei controlli di coerenza (anche rispetto al DUP) e nella redazione delle sezioni di sua stretta competenza. Successivamente alla approvazione, supporta il monitoraggio relativo allo stato di avanzamento degli obiettivi, segnala gli scostamenti e aiuta a mantenere l'allineamento tra le attività quotidiane e la programmazione strategica. Permette di generare un rapporto sui risultati, da utilizzare per la definizione del PIAO per l'anno successivo.

Più nello specifico, supporta il Segretario nella valutazione della qualità dei servizi offerti. Verifica la completezza delle informazioni pubblicate per i cittadini, confronta i servizi disponibili in forma digitale con quelli accessibili solo tramite appuntamento e individua i margini di miglioramento nell'offerta digitale. Consente di includere i risultati (i dati) di soddisfazione dei cittadini come previsto dal TUEL. Le osservazioni possono essere inviate direttamente ai responsabili competenti come notifiche, senza passaggi intermedi.

#### **Funzioni di Responsabile della Prevenzione Corruzione e della Trasparenza (RPCT)**

Verifica lo stato di aggiornamento delle sezioni di Amministrazione Trasparente e segnala le aree non conformi o da integrare. Monitora costantemente la trasparenza utilizzando la griglia di monitoraggio fornita da ANAC. Supporta l'analisi delle osservazioni dell'organismo interno di valutazione. Le attività correttive da svolgere (task) possono essere inviate direttamente ai responsabili competenti attraverso una notifica, senza passaggi intermedi.

#### **Controlli di legittimità e produzione di pareri**&#x20;

Supporta la realizzazione di controlli di legittimità ex post a campione, analizzando competenza, copertura finanziaria, motivazione, trasparenza, anticorruzione e tracciabilità secondo le specifiche definite dal regolamento comunale. Crea l'analisi e genera un report con metodologia, analisi quantitativa e qualitativa, criticità ricorrenti e direttive correttive.\
Inoltre utilizzando i regolamenti comunali, la normativa e altri documenti, assiste il Segretario nella produzione di pareri relativi alla legittimità giuridica di una bozza di provvedimento.


# Casi d'uso

Gli esempi che seguono mostrano come OpenCity AI Assistant possa entrare nel lavoro quotidiano di profili diversi dell'ente.

<details>

<summary>Monitorare gli obblighi di trasparenza</summary>

L'RPCT ha l'obbligo di verificare periodicamente che tutte le sezioni dell'Amministrazione Trasparente siano complete, aggiornate e conformi alle prescrizioni normative. Si tratta di un controllo che, eseguito manualmente, richiede di aprire decine di sezioni, confrontarle una per una con la normativa vigente e tenere traccia delle irregolarità su fogli di lavoro separati. Un'attività ripetitiva, ad alto rischio di omissioni, che può impegnare il responsabile per più settimane.

Con OpenCity AI Assistant, il processo cambia nella sostanza. L'RPCT apre una conversazione in chat e chiede all'assistente di analizzare lo stato dell'Amministrazione Trasparente dell'ente. L'assistente esamina le sezioni soggette a pubblicazione obbligatoria, individua le irregolarità (dati mancanti o in formati sbagliati, contenuti scaduti, sezioni incomplete) e le riporta in forma chiara e ordinata, con riferimento alla norma specifica che non risulta rispettata. Il responsabile ottiene in pochi minuti un quadro completo delle criticità, senza dover aprire manualmente nessuna sezione.

A partire da quella sintesi, l'RPCT può aprire direttamente i task verso i responsabili dei singoli servizi coinvolti, indicando cosa correggere e entro quando. Ogni dirigente o funzionario riceve un'assegnazione precisa, con il riferimento alla sezione da sanare e alla scadenza da rispettare. Il flusso correttivo è tracciato dall'inizio, senza bisogno di email di sollecito o fogli di monitoraggio paralleli.

Una volta completata la fase correttiva, l'assistente redige la Nota di Ottemperanza: il documento che certifica l'avvenuta sanatoria delle criticità rilevate, attesta il miglioramento dei dati pubblicati e chiude formalmente il ciclo di verifica.

Un controllo che prima impegnava il responsabile per settimane si conclude in pochi giorni con maggiore precisione, piena tracciabilità e zero rischio di dimenticare una sezione.

</details>

<details>

<summary>Consultare lo storico delle sedute del Consiglio</summary>

Il Consiglio è chiamato a discutere di un argomento che non compare per la prima volta all'ordine del giorno, come una variante urbanistica su un'area già oggetto di discussioni passate.&#x20;

Prima di aprire la seduta, il Segretario comunale vuole ricostruire il quadro: quando se ne è parlato, cosa si è detto, quali posizioni si sono confrontate, quali deliberazioni sono state adottate. Farlo manualmente significa aprire i verbali archiviati uno per uno, scorrere documenti anche molto lunghi e cercare i passaggi pertinenti senza avere la certezza di non averne saltato qualcuno.

Con OpenCity AI Assistant, questa fase preparatoria si riduce a una domanda in chat. Il Segretario descrive all'assistente il tema che verrà trattato e chiede se sia già stato affrontato in sessioni precedenti. L'assistente analizza i verbali del Consiglio indicizzati nella base di conoscenza dell'ente e risponde con un quadro strutturato: elenca le sedute in cui l'argomento è stato discusso, riassume per ciascuna i punti principali del dibattito, indica le posizioni emerse in aula e riporta le decisioni eventualmente adottate, con riferimento al numero e alla data della deliberazione.

Il Segretario può approfondire un passaggio specifico continuando la conversazione: può chiedere cosa aveva proposto la minoranza in quella seduta, se c'era stato un rinvio e per quale motivo, oppure quale impegno era stato assunto dall'Amministrazione e mai poi richiamato. L'assistente risponde in modo puntuale, sempre a partire dai documenti ufficiali, senza ricostruzioni approssimative.

Il risultato è che ogni seduta si apre con una memoria istituzionale accessibile a tutti i partecipanti. Il dibattito guadagna in continuità e profondità: le decisioni precedenti non vengono ignorate per mancanza di tempo o dimenticanza, e le posizioni si confrontano su basi documentate. Un lavoro che altrimenti richiederebbe ore di ricerca archivistica diventa parte naturale della preparazione di qualsiasi seduta.

</details>

<details>

<summary>Redigere il verbale della seduta del Consiglio</summary>

Il verbale della seduta del Consiglio comunale è un atto ufficiale: deve rispettare una struttura precisa, usare un linguaggio formale coerente con gli altri verbali dell'ente e riportare fedelmente gli interventi, le votazioni e le deliberazioni adottate. Il Segretario comunale partecipa alla seduta, prende appunti e, a seduta conclusa, si trova davanti a pagine di note disorganizzate da trasformare in un documento ufficiale. La redazione richiede spesso ore di lavoro e il rischio di dimenticare un passaggio o di non rispettare la struttura consolidata è sempre presente.

Con OpenCity AI Assistant, il Segretario carica i propri appunti direttamente in chat al termine della seduta e chiede all'assistente di redigere il verbale. L'assistente analizza le note, le integra nella struttura dei verbali precedenti già presenti nella base di conoscenza dell'ente e produce una bozza completa: con l'intestazione corretta, l'elenco dei presenti, la trattazione ordinata dei punti all'ordine del giorno, la trascrizione degli interventi principali, l'esito delle votazioni e le deliberazioni adottate con la relativa numerazione progressiva.

Il Segretario rivede la bozza, apporta le correzioni del caso e approva il documento. Se un passaggio non è chiaro o un'informazione manca, può chiedere all'assistente di riformulare una sezione o di integrare un dettaglio direttamente in chat, senza dover riscrivere l'intero testo. Il verbale finale è formalmente corretto, stilisticamente coerente con tutti gli atti precedenti e pronto per la pubblicazione sull'Albo Pretorio e sul sito istituzionale.

Quello che prima richiedeva ore di trascrizione e revisione si conclude in pochi minuti, con un risultato più uniforme e un processo completamente tracciabile.

</details>

<details>

<summary>Gestire una circolare complessa</summary>

L'Ufficio Personale riceve una circolare di 18 pagine sul lavoro agile: nuovi criteri di accesso, obblighi di rendicontazione e scadenze ravvicinate che l'ente è tenuto a recepire entro pochi giorni.

Il funzionario apre OpenCity AI Assistant, carica il documento direttamente nella chat e chiede quali siano le nuove regole da rispettare e cosa l'ufficio debba fare concretamente. In pochi secondi, l'assistente restituisce un riepilogo strutturato: le modifiche normative rilevanti, le scadenze operative ordinate per priorità e le azioni richieste a ciascuna figura coinvolta. Niente fronzoli, solo ciò che serve per agire.

A partire dal riepilogo, il funzionario apre i task direttamente dalla chat, li assegna ai colleghi interessati e fissa le scadenze. Il tutto senza uscire dall'assistente, copiare testi tra applicazioni diverse o dover organizzare riunioni preliminari per allineare il team sul contenuto della circolare.

Il documento resta accessibile nella knowledge base dell'ente: la prossima volta che un collega avrà bisogno di verificare un dettaglio sullo stesso tema, potrà interrogare direttamente l'assistente invece di cercare il file nella posta o nei drive condivisi.

</details>

<details>

<summary>Confrontare due o più offerte tecniche</summary>

Le gare e le procedure di acquisto in ambito IT producono offerte tecniche di centinaia di pagine: specifiche di sicurezza, architetture di sistema, livelli di servizio garantiti, condizioni economiche, clausole contrattuali. Il funzionario dell'ufficio IT che deve valutarle si trova spesso a lavorare sotto pressione: i tempi di risposta sono stretti, i documenti sono densi di tecnicismi e il confronto tra due proposte articolate richiede di tenere a mente decine di variabili in parallelo.&#x20;

Con OpenCity AI Assistant, il funzionario carica entrambe le offerte direttamente in chat e chiede un'analisi comparativa. L'assistente, che conosce già i criteri di valutazione da applicare, esamina i documenti, estrae le informazioni pertinenti per ciascun criterio e produce un report strutturato che mette a confronto le due proposte punto per punto, segnalando le differenze rilevanti, le clausole da approfondire e le eventuali lacune rispetto ai requisiti richiesti.

A partire da quel report, il funzionario apre un task per il dirigente direttamente dall'interfaccia, allega l'analisi e imposta una notifica automatica: il dirigente riceve l'assegnazione con tutto il materiale necessario per esprimere una valutazione, senza bisogno di ulteriori passaggi manuali. Se dall'analisi emergono punti da chiarire con i fornitori, il funzionario chiede all'assistente di redigere il testo delle comunicazioni da inviare.

Una procedura che normalmente occupa giorni di lavoro si conclude in poche ore con una documentazione completa, un flusso approvativo già avviato e le comunicazioni esterne già pronte.

</details>


# L'architettura tecnica

L'interazione parte dall'interfaccia di OpenCity AI Assistant, attraverso cui il funzionario dialoga con la piattaforma. La richiesta viene ricevuta dall'orchestratore, che gestisce l'intera logica operativa e decide quali componenti coinvolgere per produrre la risposta.

<figure><img src="/files/ciTcO0cfBEfmgFtD74wl" alt=""><figcaption></figcaption></figure>

I componenti principali sono:

* **l'orchestratore**, l'agentic framework che coordina l'intera esecuzione: riceve la richiesta, stabilisce la strategia di risposta e attiva gli strumenti necessari;\
  Il codice è rilasciato con licenza OpenSource su [GitLab](https://gitlab.com/opencity-labs/opencity-ai/ai-orchestrator)
* **il modello di linguaggio (LLM)**, che elabora il testo e genera le risposte; viene coordinato dall'orchestratore e può essere sostituito senza modificare il resto del sistema;
* **la base di conoscenza locale**, consultata in modalità Agentic RAG per recuperare informazioni pertinenti da normative, documenti dell'ente e fonti precaricate;
* **le funzionalità esterne**, richiamate tramite il protocollo aperto MCP (ad esempio, la ricerca aggiornata di normative da fonti esterne all'ente);
* **le funzionalità interne**, disponibili come integrazioni native (ad esempio, l'analisi di dati, la creazione di report e la gestione delle attività).

Il modello di linguaggio consulta la base di conoscenza e richiama le funzionalità esterne e interne in modo autonomo, a seconda di ciò che serve per rispondere alla richiesta specifica.

Lo stack tecnologico è interamente open source: i componenti principali includono LiteLLM per la gestione dei modelli, SurrealDB come base dati, Windmill per l'orchestrazione dei flussi e spaCy per l'elaborazione del linguaggio.

## Dal RAG all'Agentic RAG

Il modo in cui l'assistente cerca le informazioni rappresenta un cambio di approccio rispetto ai sistemi tradizionali basati su AI.

Nel RAG classico (Retrieval-Augmented Generation), è il messaggio dell'utente a fare da interrogazione diretta per la base di conoscenza: il sistema cerca i documenti più simili alla domanda posta e li usa come contesto per generare la risposta. È un approccio efficace ma rigido, che funziona bene quando la domanda è semplice e diretta.

Con l'Agentic RAG, è l'agente a decidere cosa cercare e come farlo, a partire dal messaggio del funzionario. L'agente può formulare interrogazioni multiple, concatenarle, rivalutare i risultati e cambiare strategia durante l'elaborazione, tutto in modo autonomo. Questo consente di gestire richieste complesse, ambigue o che richiedono di incrociare informazioni da fonti diverse.

Il risultato è una qualità di risposta significativamente più alta per i casi d'uso reali della PA, a fronte di un leggero aumento dei tempi di elaborazione rispetto al RAG classico.

## Agnosticismo rispetto ai modelli di linguaggio (LLM)

OpenCity AI Assistant **è agnostico rispetto alla soluzione LLM** (*Large Language Model*) adottata, garantendo:

* **intercambiabilità dei modelli**: l'architettura è predisposta per integrare qualsiasi modello leader di mercato a seconda delle necessità o dell'evoluzione tecnologica;
* **sperimentazione**: il nostro team sta attivamente sperimentando l'uso di modelli locali Open Source.

Questa scelta non è solo tecnica: risponde al principio di evitare il vendor lock-in, particolarmente rilevante per la PA, che deve poter governare le proprie scelte tecnologiche nel tempo senza dipendere da un singolo fornitore.&#x20;


# Gli strumenti

OpenCity AI Assistant mette a disposizione tre strumenti fondamentali, comuni a tutti gli ambiti di lavoro: chat, attività e notifiche. Insieme danno sempre una visione aggiornata di cosa è in corso, cosa è già stato fatto e cosa resta da fare.

I tre strumenti non lavorano in modo isolato: una richiesta in chat può generare un'attività con scadenza, che a sua volta fa partire una notifica al collega coinvolto. Tutto resta tracciato e sotto il controllo del funzionario.


# La chat

La chat è lo strumento principale per interagire con l'assistente. Il funzionario descrive in linguaggio naturale, per iscritto o a voce, quello che vuole fare e l'assistente risponde, chiede chiarimenti se necessario o avvia direttamente l'azione richiesta.

<figure><img src="/files/XEu3ElJ5MBFWm5vYJVJB" alt=""><figcaption></figcaption></figure>

L'interazione è una conversazione: il funzionario può approfondire, correggere il tiro o tornare su un punto precedente e l'assistente mantiene il contesto dell'intera sessione. Se la risposta prende una direzione diversa da quella attesa, è possibile interromperla o rigenerarla, anche modificando la domanda di partenza.

I documenti si caricano tramite il pulsante dedicato o trascinandoli direttamente in chat. L'assistente li legge e li usa come base per la risposta, senza che il funzionario debba copiarne o riassumerne il contenuto.

<figure><img src="/files/xVZH2lyWa5DCo42j36Hr" alt=""><figcaption></figcaption></figure>

Mentre elabora la risposta, l'assistente mostra in tempo reale cosa sta facendo: se sta ragionando sulla richiesta, cercando tra le istruzioni operative o recuperando un documento dalla base di conoscenza. A risposta completata, è possibile vedere quale istruzione è stata richiamata.

<figure><img src="/files/xpH8r6oPBortjflc8lOo" alt=""><figcaption></figcaption></figure>

Sotto il campo di testo sono sempre visibili alcuni suggerimenti di attività. Si tratta di azioni frequenti o pertinenti al contesto dell'assistente attivo, proposte sotto forma di etichette selezionabili che, se cliccate, permettono di avviare rapidamente un'attività.&#x20;

<figure><img src="/files/yONGhI5KWq9vH717EuvU" alt=""><figcaption></figcaption></figure>

Ogni conversazione viene salvata automaticamente ed è sempre consultabile. Il funzionario può riprendere una sessione precedente, cercare tra le conversazioni passate o continuare un'attività avviata in un momento diverso.


# I task

I task (o attività) sono il modo in cui la piattaforma trasforma le conversazioni in lavoro concreto e tracciabile. Quando da una richiesta emerge qualcosa che richiede un seguito (un documento da produrre, una verifica da completare, un'azione da assegnare a un collega) l'assistente propone di aprire un'attività direttamente dalla chat, senza dover passare a un altro strumento. Il funzionario può anche decidere di aprire un task indipendentemente da una conversazione in corso.

<figure><img src="/files/r3pR5oDUAx2E4I1oq0kn" alt=""><figcaption></figcaption></figure>

Ogni è composta da:&#x20;

* un titolo;
* una descrizione con eventuali allegati;
* una scadenza;
* un responsabile.&#x20;

Il funzionario accede a tutte le proprie attività dalla sezione "Le tue attività" nel menu laterale: qui trova i task assegnati a sé, quelli condivisi con i colleghi e quelli che ha aperto per altri senza condividerli direttamente. Le attività si possono filtrare per scadenza o priorità, oppure cercare per nome quando si sa già cosa si sta cercando.

<figure><img src="/files/POiSy4RF6JQkfItFUMbS" alt=""><figcaption></figcaption></figure>

Quando un'attività viene assegnata a un collega, questi riceve una notifica automatica. Ogni aggiornamento di stato (apertura, avanzamento, chiusura) è registrato e visibile a chi ha accesso all'attività.


# Le notifiche

Le notifiche segnalano al funzionario tutto ciò che richiede un intervento o un'attenzione, senza che debba ricordarsi di controllare autonomamente. Quando arriva una nuova notifica, la piattaforma la segnala con un suono e aggiorna il contatore in alto a destra: anche senza tenere d'occhio la schermata, il funzionario sa in tempo reale che c'è qualcosa che richiede la sua attenzione.

<figure><img src="/files/hXg1T6wgnzMLsZTernVD" alt=""><figcaption></figcaption></figure>

Una notifica viene inviata quando una scadenza normativa o operativa si avvicina oppure quando un'attività è stata assegnata al funzionario da un altro collega.

Ogni notifica è collegata all'elemento che l'ha generata (per esempio, un'attività) e da lì il funzionario può intervenire direttamente, senza dover cercare il punto di partenza. Le notifiche già gestite si possono archiviare per tenere la sezione ordinata oppure eliminare quando non sono più necessarie.

Tutte le notifiche sono accessibili dall'apposita sezione in alto a destra della piattaforma.


# La base di conoscenza

La base di conoscenza è il patrimonio informativo su cui gli assistenti si appoggiano per rispondere.&#x20;

È composta da tre elementi distinti:&#x20;

* le **fonti**, cioè i documenti e i riferimenti che l'assistente può consultare;
* le **istruzioni**, cioè le regole che ne guidano il comportamento;
* le **strutture dati**, cioè gli elenchi di informazioni strutturate che l'assistente può usare come riferimento per fornire le risposte.

La piattaforma include fin dall'avvio una base comune a tutti gli enti, precaricata con normativa nazionale e documentazione tecnica di riferimento. Ogni ente può poi ampliarla con i propri contenuti (documenti, regolamenti, dati operativi) senza alcun intervento tecnico: basta caricare un file o scrivere una nuova istruzione.

La base di conoscenza è organizzata in **categorie**, che determinano quali informazioni sono accessibili a quali utenti: un documento caricato in una categoria riservata all'ufficio IT non sarà visibile a chi lavora in segreteria, e viceversa.&#x20;

{% hint style="info" %}
Questa struttura è ciò che distingue OpenCity AI Assistant dagli strumenti generici: non conosce solo le informazioni, sa anche come usarle nel contesto specifico dell'ente.
{% endhint %}


# Le fonti

Le fonti sono i documenti e i riferimenti che l'assistente consulta quando elabora una risposta. Più le fonti sono complete e aggiornate, più le risposte sono precise e contestualizzate.

<figure><img src="/files/eBuJvkO5WO9O5jhR6ieR" alt=""><figcaption></figcaption></figure>

Le fonti possono essere nazionali (normativa rilevante per la PA, linee guida AgID, documentazione sulle principali piattaforme abilitanti) oppure specifiche dell'ente (regolamenti comunali, delibere, circolari interne e qualsiasi altro documento che l'assistente deve poter consultare per rispondere in modo pertinente al contesto locale).

## Aggiungere una nuova fonte

<figure><img src="/files/cuNM4TKzKWv7ytfMruWY" alt=""><figcaption></figcaption></figure>

Per aggiungere una nuova fonte bisogna accedere alla sezione "Knowledge base" nel menu laterale e premere il pulsante "Aggiungi".&#x20;

La fonte può essere caricata come file, incollata come testo oppure inserita tramite un link a una pagina web. Per ciascuna fonte è possibile indicare una categoria, che determina quali utenti potranno consultarla: alcune fonti sono riservate a specifici ruoli o uffici, altre sono pubbliche e accessibili a tutti gli assistenti attivi sulla piattaforma.&#x20;

Per tutte le fonti è inoltre possibile specificarne la natura (normativa, atto, pratica, documento interno o risorsa web).

Una volta caricate, le fonti possono essere ricercate tramite una barra di ricerca o filtrate per tipologia e possono sempre essere modificate o rimosse.


# Le istruzioni

Le istruzioni definiscono come l'assistente deve comportarsi. Sono regole operative scritte in linguaggio naturale, che guidano il modo in cui interpreta le richieste, produce i contenuti e gestisce situazioni specifiche.

<figure><img src="/files/uNrxFC7iahmKDDFhZTzs" alt=""><figcaption></figcaption></figure>

La piattaforma include un set di istruzioni precaricate che coprono i comportamenti di base comuni a tutti gli enti. Ogni ente può modificarle o integrarle con le proprie regole operative, descrivendo i processi interni così come funzionano nella realtà. Più l'assistente conosce il contesto in cui opera, più le sue risposte risultano coerenti con i processi reali, riducendo la necessità di correggere o riformulare.

## Creare una nuova istruzione

{% hint style="info" %}
Durante la generazione, il sistema usa le direttive inserite per definire automaticamente:

* la lista delle funzioni utili all'esecuzione dell'istruzione;
* i metadati;
* una breve descrizione.

Queste informazioni aiutano l'assistente a eseguire correttamente l'istruzione.
{% endhint %}

Per creare una nuova istruzione, bisogna accedere alla sezione "Istruzioni" nel menu laterale e cliccare sul pulsante "Nuova istruzione".

<figure><img src="/files/wnLmJVl2nB4z1D0sB6fL" alt=""><figcaption></figcaption></figure>

Il processo è guidato: il funzionario descrive in parole proprie cosa deve fare l'istruzione, indica la knowledge base di riferimento ed eventuali istruzioni correlate già presenti. L'assistente genera una bozza che si può modificare o rigenerare e accompagna il funzionario fino alla configurazione dei metadati e all'anteprima finale.

Una volta salvata, l'istruzione è ricercabile per nome. Può essere attivata manualmente dalla sezione dedicata per avviare una conversazione in chat legata a quella specifica attività; in alternativa, sarà l'assistente a richiamarla autonomamente quando la richiesta lo richiede. Le istruzioni esistenti si possono scaricare, modificare o eliminare in qualsiasi momento.


# Le strutture dati

Le strutture dati sono i dataset che l'assistente può consultare quando elabora una risposta o quando viene creata una nuova istruzione. Rappresentano insiemi di informazioni strutturate (per esempio, elenchi di servizi offerti dall'ente o qualsiasi altro insieme di dati) che l'assistente può usare come riferimento per produrre contenuti coerenti con la realtà organizzativa locale.

<figure><img src="/files/EC2K26iiemEh7eaVHBVK" alt=""><figcaption></figcaption></figure>

## Creare una nuova struttura dati

Per aggiungere un nuovo utente, bisogna accedere a Impostazioni → Ente → Utenti.

<figure><img src="/files/9iPcknnUpl9OlkFRRLB9" alt=""><figcaption></figcaption></figure>

Per creare una nuova struttura dati, lbisogna accedere a Impostazioni → Configurazioni → Strutture dati. Si assegna un nome al dataset, un identificativo univoco e, facoltativamente, una descrizione che ne chiarisca il contenuto e l'uso previsto. Il dataset viene poi alimentato tramite un JSON schema, che definisce la struttura e il formato delle informazioni che conterrà.

Una volta creato, il dataset è disponibile come risorsa selezionabile al momento della configurazione di una nuova istruzione e si può associare a un nuovo utente.&#x20;

Ogni struttura dati può essere modificata nel tempo oppure eliminata quando non è più necessaria.


# Permessi e funzioni

L'accesso a OpenCity AI Assistant è governato da un sistema di permessi granulari, progettato per adattarsi all'organizzazione reale dell'ente anziché costringerla in schemi predefiniti. Ogni utente opera all'interno di un profilo su misura, che definisce esattamente a cosa può accedere e cosa può fare sulla piattaforma.

<figure><img src="/files/OhypqWXct4EH5jnJnHaR" alt=""><figcaption></figcaption></figure>

## Un sistema basato su funzioni

A differenza dei sistemi tradizionali fondati su ruoli fissi, OpenCity AI Assistant assegna a ogni utente un insieme specifico di funzioni (come *crea documento*, *crea task* o *analizza qualità del sito*) che determinano le capacità operative di ciascuna persona: non il ruolo in organigramma, ma le attività concrete che svolge sulla piattaforma.

La combinazione assegnata determina anche quali categorie della base di conoscenza sono visibili e quali assistenti sono disponibili: un dipendente senza funzioni legate all'ufficio IT, ad esempio, non potrà vedere le fonti e le istruzioni riservate a quell'ambito.

I profili non sono rigidi: due funzionari dello stesso ufficio possono avere funzioni diverse, e chiunque può riceverne di nuove nel tempo senza interventi strutturali. I permessi si aggiornano in qualsiasi momento, mantenendo sempre il pieno governo su chi può fare cosa.

## Aggiungere nuovi utenti e assegnare i permessi

Per aggiungere un nuovo utente, bisogna accedere a Impostazioni → Ente → Utenti. Da qui si può inviare un invito inserendo l'indirizzo email della persona oppure caricare un file CSV per importare più utenti contemporaneamente: il file deve contenere, per ciascuna persona, nome, cognome, indirizzo email, funzione e ufficio di appartenenza.

<figure><img src="/files/JcrLtDEWivzprDUJIgqM" alt=""><figcaption></figcaption></figure>

Una volta che l'utente ha effettuato il primo accesso alla piattaforma, si configura il suo profilo nel dettaglio assegnando le funzioni operative, indicando le raccolte della base di conoscenza a cui potrà accedere oltre a quella pubblica e definendo le istruzioni disponibili e le strutture dati a cui potrà attingere. Il profilo può essere aggiornato in qualsiasi momento man mano che le esigenze dell'utente cambiano.

### Work in Progress

Stiamo valutando un'evoluzione del modello autorizzativo verso approcci più avanzati come **ABAC** (*Attribute-Based Access Control*) e **ReBAC** (*Relationship-Based Access Control*), anche attraverso soluzioni dedicate come **OpenFGA**.

L'obiettivo è centralizzare la gestione dei permessi, rendere le regole più coerenti tra moduli diversi e supportare scenari organizzativi più articolati senza aumentare la complessità operativa per gli enti.

Questa direzione ci permetterebbe di governare autorizzazioni su funzionalità e gestione nel contesto dell'applicativo in modo più flessibile, mantenendo al tempo stesso controllo e tracciabilità.


# Privacy, sicurezza e conformità

OpenCity AI Assistant è progettato perché l'ente non debba occuparsi degli aspetti di compliance, sicurezza e infrastruttura: sono gestiti a monte da OpenCity Labs. I meccanismi di tracciamento e protezione richiesti dalla normativa vigente sono integrati nativamente nel prodotto, non aggiunti in un secondo momento.

Questa scelta permette all'ente di concentrarsi sull'utilizzo concreto della piattaforma, con la certezza che le questioni di sicurezza giuridica e tecnica siano già risolte.

## Conformità normativa

OpenCity AI Assistant è progettato nel rispetto degli standard europei e nazionali per la trasformazione digitale della PA:

* **sicurezza**, garantita dalle certificazioni ISO 9001 e ISO 27001 e dalla qualificazione ACN dell'infrastruttura;
* **privacy**, con trattamento conforme al GDPR e controllo automatico attivo sui dati personali dei cittadini;
* **open source**, in conformità alle regole tecniche per l'acquisizione di software nella PA;
* **interoperabilità**, tramite l'adozione del protocollo aperto MCP;
* **accessibilità e user experience**, secondo le linee guida di design per i servizi pubblici digitali;
* **regole tecniche AI nella PA**, con conformità alla Legge 132/2025 e al Regolamento UE sull'intelligenza artificiale (AI Act).

## Infrastruttura qualificata ACN

L'intera soluzione è ospitata su cloud AWS qualificato dall'Agenzia per la Cybersicurezza Nazionale (ACN). Questo significa che l'infrastruttura rispetta i requisiti di sicurezza, continuità e protezione dei dati stabiliti a livello nazionale per i servizi cloud destinati alla Pubblica Amministrazione.

L'impostazione model-agnostic del prodotto permette l'utilizzo di LLM tramite diversi servizi qualificati ACN by design (AWS Bedrock, Google Agentic Platform, ecc.), rendendo l'architettura indipendente dal modello.

La piattaforma adotta il protocollo aperto MCP (Model Context Protocol) per garantire l'interoperabilità con altri sistemi in uso nell'ente e con soluzioni di terze parti. L'intero ambiente è protetto da autenticazione: nulla entra e nulla esce senza essere autenticato.

## Open source

Il prodotto è interamente open source: frontend, architettura e logica di orchestrazione sono pubblicati con licenza aperta, secondo le raccomandazioni AgID e le regole tecniche per l'acquisizione di software nella PA. Il codice è verificabile, riusabile e non vincolato a modelli proprietari.

Lo stack tecnologico si basa su componenti aperti e consolidati: SurrealDB e PostgreSQL per la gestione dei dati, LiteLLM per l'integrazione con i modelli di linguaggio, Windmill per l'orchestrazione dei flussi e spaCy per l'elaborazione del linguaggio naturale.

La trasparenza del codice protegge l'investimento dell'ente nel tempo: non ci sono dipendenze da soluzioni proprietarie opache, e la comunità open source garantisce evoluzione continua e verificabilità indipendente.

## Protezione dei dati personali

La piattaforma include un controllo automatico attivo su ogni conversazione. Quando il funzionario invia un messaggio che contiene dati personali (codici fiscali, indirizzi, nominativi, ecc.) il sistema lo rileva e avvisa l'utente prima dell'invio.

Il filtro funziona in questo modo:

1. al momento dell'invio del messaggio, il contenuto testuale viene analizzato da un modello di Machine Learning che risiede nell'istanza dell'AI Assistant;
2. l'operatore viene avvisato nel caso in cui vengano trovati potenziali PII (Personal Identifiable Information);
3. l'operatore può decidere se offuscare o meno i dati rilevati prima di procedere all'invio.

## Log AI e tracciabilità

Ogni interazione con la piattaforma viene registrata: chi ha agito, quando e con quale esito. I log sono consultabili direttamente da Impostazioni → Monitoraggio → Log AI e sono esportabili in formato CSV.

<figure><img src="/files/5uWH4y9hVwSMptlqtHZ2" alt=""><figcaption></figcaption></figure>

Questo tracciamento è conforme al principio P.14 delle Linee Guida AgID sull'intelligenza artificiale, al Regolamento europeo sull'AI (AI Act) e alla Legge 132/2025. L'ente dispone in ogni momento di un registro completo e verificabile di tutte le attività svolte tramite l'assistente, a supporto di eventuali controlli interni o verifiche esterne.

## Metriche di utilizzo

La piattaforma raccoglie metriche aggregate di utilizzo e performance (tra cui volumi di richieste, tempi di risposta, disponibilità dei servizi e frequenza di utilizzo delle singole funzionalità) al fine di garantire la qualità e la continuità del servizio.

I dati raccolti sono esclusivamente di natura tecnica e aggregata: non vengono registrati contenuti di conversazioni né dati personali degli utenti finali oltre a quanto strettamente necessario per il tracciamento delle operazioni (audit trail), conservato in conformità al Regolamento UE 2016/679 (GDPR) e alle linee guida AgID.

Al fine di orientare le priorità di sviluppo, Opencity Labs potrà analizzare in forma aggregata e anonimizzata i pattern di utilizzo della piattaforma, incluse le tipologie di richieste più frequenti, senza mai ricondurre i dati a singoli utenti o conversazioni specifiche.

## Limiti dell'AI e gestione degli errori

Come qualsiasi sistema basato su intelligenza artificiale, la piattaforma può commettere errori. OpenCity AI Assistant è progettato per gestirli in modo trasparente: quando l'assistente non dispone di informazioni affidabili, lo dichiara esplicitamente e invita il funzionario a verificare attraverso i canali ordinari o con i colleghi competenti, invece di produrre una risposta approssimativa.

Ogni proposta dell'assistente è sottoposta alla valutazione del funzionario prima di essere utilizzata. È il principio dell'*human-in-the-loop*, già richiamato in altri capitoli di questo manuale: l'AI suggerisce, accelera e segnala, ma la decisione finale è sempre umana. Il funzionario valuta, corregge e approva. Questo vale per ogni strumento della piattaforma, dalla redazione di un testo alla chiusura di un'attività.


# Introduzione

<figure><img src="/files/t1mfdWpOh5uOIRGNOXF9" alt=""><figcaption></figcaption></figure>

\
Questo manuale accompagna la Pubblica Amministrazione nell'adozione di OC Connect, il software di OpenCity Italia pensato per migliorare la fruizione dei servizi digitali tramite l'invio di messaggi su AppIO e via email a liste di cittadini.


# Dal rispondere all'anticipare

Gli enti pubblici hanno consolidato nel tempo processi efficaci per gestire le richieste dei cittadini: raccogliere domande, istruire pratiche, comunicare esiti. Il flusso è sempre lo stesso: il cittadino si fa avanti, l'ente risponde.

Quello che manca, nella maggior parte dei casi, è il movimento inverso: l'ente che prende l'iniziativa, che anticipa un bisogno, che agisce prima che il cittadino debba tornare a chiedere. Scadenze, rinnovi, aggiornamenti sullo stato di una pratica, avvisi utili in momenti chiave del percorso: tutte comunicazioni che il cittadino si aspetta, ma che spesso non arrivano o arrivano tardi, attraverso canali frammentati, con un linguaggio che non aiuta.

Le ragioni sono spesso strutturali: mancanza di strumenti adeguati, processi non progettati per la comunicazione proattiva, una cultura istituzionale che tende a vedere la notifica come un adempimento e non come un servizio. Il risultato è che il cittadino resta in attesa, deve ricordare da solo le scadenze, deve farsi avanti per sapere a che punto è la sua pratica.

Non si tratta di inviare più messaggi. Si tratta di essere presenti nel momento giusto, con l'informazione giusta, trasformando la comunicazione **da obbligo burocratico a parte integrante dell'esperienza di servizio**.


# App IO: un’infrastruttura sottoutilizzata

[App IO](https://ioapp.it/) è oggi uno dei canali digitali più rilevanti nel rapporto tra la Pubblica Amministrazione e i cittadini: oltre 13,6 milioni di utenti attivi, più di un miliardo di messaggi inviati dal 2020, oltre 15.000 enti aderenti. Un'infrastruttura già presente nella vita quotidiana di milioni di persone, che si aspettano di trovarci anche i servizi del proprio Comune.

Eppure la maggior parte degli enti ha configurato pochi contesti di utilizzo e si è fermata lì, delegando il resto del rapporto con il cittadino a canali frammentati come email generiche, sportelli, telefonate, carta. App IO viene usata principalmente per gli avvisi di pagamento, lasciando inesplorata la parte più ricca del suo potenziale: **accompagnare il cittadino lungo tutto il percorso di fruizione di un servizio**.

Storicamente, la PA trattato la comunicazione con il cittadino come un adempimento: si comunica perché la norma lo prevede, nel modo più formale possibile.

App IO ha invece introdotto e reso possibile un **cambio di prospettiva reale**: un messaggio chiaro, tempestivo e personalizzato non è un adempimento burocratico, è **parte integrante dell'esperienza di servizio** e un'opportunità concreta di cambiare la qualità del rapporto con i cittadini.


# Il valore di OC Connect

OC Connect è il back office che permette agli enti di sfruttare concretamente il potenziale di App IO, passando a una **comunicazione proattiva e personalizzata, integrata nell'esperienza di ogni servizio**.

La piattaforma è organizzata per servizi: ogni ufficio lavora nel proprio perimetro di competenza. Un sistema flessibile di permessi definisce chi può fare cosa, garantendo controllo e tracciabilità senza rallentare l'operatività.

Il risultato è un modello in cui la comunicazione proattiva smette di essere un'eccezione e diventa una capacità distribuita all'interno dell'ente: il modo concreto per fare quel cambio di prospettiva che App IO rende possibile.

Come tutti i prodotti di OpenCity Labs, anche OC Connect è una **soluzione SaaS certificata** (ISO 9001, 27001, 20000, 22301, …) e basata su **cloud** [**qualificato ACN**](https://www.acn.gov.it/portale/w/sa-6063).

La gestione della privacy è parte della struttura della piattaforma. Ogni comunicazione in OC Connect nasce all'interno di un servizio specifico, a cui è associata una precisa informativa privacy. Ogni invio ha una finalità dichiarata, una base giuridica adeguata e un insieme di dati definito e circoscritto.

Inoltre, OC Connect è progettato per adattarsi alle esigenze operative e tecniche di ciascun ente: permette di inviare messaggi a gruppi molto grandi di destinatari caricandone i dati tramite file CSV o via API e di personalizzare le comunicazioni con i dati specifici di ogni singolo cittadino.

## Un esempio concreto: i servizi dell'Anagrafe

Per capire come OC Connect si inserisce nel lavoro quotidiano di un ufficio, è utile partire da un caso pratico.

> L'ufficio Anagrafe gestisce sul sito web una pagina dedicata ai servizi anagrafici, dove i cittadini possono richiedere l'attivazione della CIE, prenotare appuntamenti e accedere ad altri servizi. Per mantenere un rapporto attivo con i cittadini, l'ufficio ha bisogno di comunicare in modo mirato: avvisarli di nuovi orari o aperture straordinarie, ricordare la scadenza di un documento, inviare avvisi di pagamento, ricordare un appuntamento.
>
> Tutte situazioni diverse, ma con una struttura comune.

## I pattern ricorrenti

Le attività di un ufficio come l'Anagrafe, per quanto articolate, si organizzano attorno a un insieme limitato di pattern ricorrenti: **comunicazioni generiche, di scadenza, di emergenza, di ottenimento di un beneficio, di caricamento di un nuovo documento**. Lo stesso vale per gli altri uffici di un Ente: i contesti cambiano, ma le situazioni comunicative si ripetono.

Al centro di tutto ci sono i messaggi. Sono il punto di contatto tra l'Ente e il cittadino in ogni fase del servizio: accompagnano un'azione avviata dall'ufficio (un promemoria, un avviso, una comunicazione di esito), oppure rispondono a qualcosa che è partito dal cittadino (una domanda, una prenotazione, una richiesta). In entrambi i casi, il messaggio è il filo che tiene insieme i diversi momenti del servizio e OC Connect è lo strumento con cui l'ufficio lo gestisce.

{% hint style="info" %}
[Clicca qui](https://docs.google.com/presentation/d/1syP-8zPRHqadnrJsDHb0Rg93eeAPiddMuoWbZQGNJQw/edit?slide=id.p3#slide=id.p3) per esplorare i principali casi d'uso
{% endhint %}


# Come accedere

Per accedere a OC Connect segui questi passaggi:

<figure><img src="/files/8RewhurRMQHVLWCdgbuC" alt="" width="375"><figcaption></figcaption></figure>

{% stepper %}
{% step %}

### Apri il browser e vai all'indirizzo della piattaforma

{% endstep %}

{% step %}

### Fai clic su "Accedi con OpenCity Italia"

{% endstep %}

{% step %}

### Completa l'autenticazione inserendo le tue credenziali (username e password)

{% endstep %}
{% endstepper %}

Al termine, la piattaforma ti reindirizza automaticamente alla Dashboard.

Se il tuo account è associato a più organizzazioni, dopo l'accesso la piattaforma mostra una schermata per scegliere l'Ente su cui vuoi operare. Se sei associato a un solo Ente, la selezione avviene in automatico.

{% hint style="warning" %}
Se non riesci ad accedere o la piattaforma non si apre, contatta il tuo amministratore per verificare che il tuo account sia stato correttamente abilitato
{% endhint %}


# Come è organizzata la piattaforma

Prima di iniziare a usare OC Connect, è utile capire come sono organizzati i contenuti.

## Servizi ed eventi

OC Connect organizza le comunicazioni per **servizi** ed **eventi**.

Un servizio è un'area tematica per cui l'Ente può inviare comunicazioni ai cittadini (ad esempio "IMU", "Carta d'identità" o "Prestazioni sanitarie"). I servizi corrispondono a quelli presenti nel [catalogo di App IO](https://docs.pagopa.it/v1.0-catalogo-dei-servizi).

All'interno di ogni servizio ci sono uno o più eventi. Un evento rappresenta una situazione specifica in cui ha senso contattare il cittadino: nel servizio "Carta d'identità", ad esempio, l'evento può essere "Rinnovo della carta d'identità". Il flusso è sempre lo stesso:

<p align="center"><strong>scegli il servizio → scegli l'evento → invia il messaggio</strong></p>

## Modelli (*template*) e segnaposto (*placeholder*)

Per ogni evento, la piattaforma mette a disposizione un **modello (*****template*****)** di messaggio, eventualmente personalizzabile per ciascun canale di invio abilitato (App IO, Email).

Al primo utilizzo saranno disponibili i template forniti dalla piattaforma: essi non sono modificabili dall'Ente, tuttavia è possibile crearne una copia personalizzata e modificarla secondo le proprie esigenze.

I template possono contenere dei **segnaposto (*****placeholder*****)**: parti del testo che, al momento dell'invio, la piattaforma sostituisce automaticamente con i dati reali del contenuto del messaggio che si sta inviando (ad esempio la data di scadenza di un pagamento, il suo importo, e così via).


# Navigazione dell'interfaccia

Dopo l'accesso, la piattaforma apre automaticamente la pagina **Dashboard**, da cui è possibile monitorare l'andamento delle attività proprie o dell'ente (a seconda dei permessi).

La Dashboard presenta una panoramica delle tue attività, organizzata in tre sezioni.

| Riquadro                        | Contenuto                                                               |
| ------------------------------- | ----------------------------------------------------------------------- |
| Messaggi inviati tramite App IO | Numero totale di messaggi consegnati tramite l'App dei servizi pubblici |
| Messaggi inviati tramite Email  | Totale delle email inviate                                              |
| Campagne                        | Totale delle campagne attivate                                          |

Infine, la sezione "**Ultimi servizi utilizzati**" elenca gli ultimi servizi e relativi eventi per i quali sono stati inviati dei messaggi.

A sinistra è disponibile un **menu** contenente le voci di navigazione principali.

| Voce                                          | Descrizione                                 |
| --------------------------------------------- | ------------------------------------------- |
| Dashboard                                     | Panoramica con metriche e ultime attività   |
| Servizi                                       | Catalogo dei servizi dell'Ente              |
| Messaggi                                      | Elenco di tutti i messaggi                  |
| Template                                      | Elenco dei template di messaggi disponibili |
| Utenti *(disponibile solo per l'admin)*       | Gestione utenti, inviti e API Key           |
| Impostazioni *(disponibile solo per l'admin)* | Configurazione dell'ente e App IO           |


# Impostazioni della piattaforma

{% hint style="warning" %}
Le funzioni descritte in questa pagina sono disponibili solo per l'admin
{% endhint %}

Dalla sezione **Impostazioni**, l'admin può:

* Impostare la **IO Master Key** per sincronizzare automaticamente i servizi disponibili in OC Connect con quelli in App IO ([clicca qui](/connect/le-funzioni/i-servizi) per approfondire);
* Attivare, sospendere o simulare l'invio di messaggi verso i cittadini;
* Configurare la **grafica dell'email** caricando il logo dell'ente e impostando i contatti globali del footer (email di contatto, link alla privacy e link al supporto). Questi valori sono il riferimento di default per tutti i servizi: ogni servizio può sovrascriverli con contatti specifici dalla propria pagina > **Contatti per il servizio**.

{% hint style="info" %}
Se viene configurata la IO Master Key, queste informazioni vengono sovrascritte dalle informazioni inserite per ciascun servizio nel selfcare di PagoPA
{% endhint %}

<figure><img src="/files/W1aaCUDhutlgAigrlZBA" alt="Scheda Ente nelle Impostazioni: logo, email di contatto, URL privacy e URL supporto"><figcaption></figcaption></figure>

* Visualizzare l'elenco dei servizi registrati su App IO con il relativo stato (approvato o cancellato); la lista è paginata e consultabile direttamente dalla sezione Impostazioni.

{% hint style="info" %}
La visualizzazione dei dati in questa tabella richiede che sia stata configurata la IO Master Key
{% endhint %}

<figure><img src="/files/XhqXnWQy6KXklGcgMUtz" alt=""><figcaption></figcaption></figure>


# Gli utenti

{% hint style="warning" %}
Le funzioni descritte in questa pagina sono disponibili solo per l'amministratore.
{% endhint %}

Dalla sezione **Utenti**, l'amministratore può consultare l'elenco degli utenti della piattaforma, verificare i permessi assegnati e modificarne il ruolo, per esempio da Operatore a Service Manager.

<figure><img src="/files/GlkRWn8kMtQCz0VPGmAw" alt=""><figcaption></figcaption></figure>

## Invitare nuovi utenti

Dalla stessa sezione, l'amministratore può invitare nuovi utenti ad accedere alla piattaforma tramite email.

<figure><img src="/files/Xr5snLMlUUvq6zLuRz78" alt=""><figcaption></figcaption></figure>

## Ruoli disponibili

Sono disponibili questi ruoli:

| Ruolo               | Cosa può fare                                                                                                                           |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| **Amministratore**  | Gestisce la piattaforma, crea nuovi utenti, attiva e disattiva servizi ed eventi, invia messaggi, personalizza i template di messaggio. |
| **Service Manager** | Attiva e disattiva eventi, invia messaggi, personalizza i template di messaggio per i servizi assegnati.                                |
| **Operatore**       | Invia messaggi per i servizi assegnati                                                                                                  |

### Gestione degli inviti

Nella sezione **Inviti**, l'amministratore può monitorare ogni invito fino al primo accesso dell'utente.

Ogni invito mostra lo stato del link:

* **Link di invito valido fino al GG/MM/AAAA**: l'utente può completare la registrazione.
* **Link non più valido (usato o scaduto)**: è necessario generare un nuovo invito.
* **L'utente ha già un account su Connect**: non viene creato alcun link e la persona riceve solo una mail per accedere.

<figure><img src="/files/J7csSSG3sKNa0wKIjhSW" alt=""><figcaption></figcaption></figure>

Lo stato si aggiorna automaticamente all'apertura della pagina.

Per ogni invito sono disponibili queste azioni, anche dal menu ⋮:

* **Reinvia mail** (1): invia di nuovo la stessa mail con lo stesso link.
* **Genera nuovo invito** (2): crea un nuovo link, disattiva quello precedente e invia una nuova mail. È utile quando il link è scaduto o già usato.
* **Revoca** (3): annulla l'invito e rende il link non più valido.

<figure><img src="/files/i4xc78Qkcyl5AUwHcmwh" alt=""><figcaption></figcaption></figure>


# Le API Key

{% hint style="warning" %}
Le funzioni descritte in questa pagina sono disponibili solo per l'admin
{% endhint %}

## Le API Key

Le API Key permettono di abilitare le API per inviare messaggi ai cittadini in modo automatico. L'amministratore può creare nuove chiavi e revocare quelle esistenti dalla sezione **Utenti → API Key**.

E' possibile creare una nuova chiave da **Crea nuova API Key** o revocarne di esistenti. La revoca interrompe immediatamente qualsiasi integrazione.

{% hint style="warning" %}
**Attenzione**

Al momento della creazione, la chiave API viene mostrata una sola volta e non è possibile recuperarla. Ricordati di copiarla e conservarla in un luogo sicuro; se la chiave viene persa, l'unica soluzione è revocarla e crearne una nuova.
{% endhint %}

<figure><img src="/files/aaCyfQzww0gG24ZOtjRE" alt=""><figcaption></figcaption></figure>

## Documentazione API

La documentazione API è costituita dagli endpoint REST disponibili per ogni servizio attivo sulla piattaforma. La documentazione si genera automaticamente in base ai servizi e agli eventi configurati.

Le API di OC Connect sono protette da autenticazione e per utilizzarle è necessario configurare un'API key come descritto nel paragrafo "[Le API Key](#le-api-key)".

{% hint style="info" %}
[Clicca qui](https://www.connect.opencityitalia.it/api-docs) per leggere la documentazione completa
{% endhint %}

### Cosa è possibile fare

Tramite API è possibile inviare messaggi ai cittadini in modo automatico, a partire dalle configurazioni già definite nella piattaforma. Per ogni messaggio viene utilizzato il template predefinito associato all'evento, ma è possibile specificarne uno diverso se necessario.

I messaggi inviati tramite API sono visibili sia attraverso le API stesse sia direttamente nell'interfaccia della piattaforma, dove compaiono insieme a quelle inviate manualmente.

Le API supportano un meccanismo di idempotenza: è possibile associare a ogni richiesta una chiave univoca. Se la stessa chiave viene inviata più volte, la piattaforma riconosce la duplicazione e blocca gli invii successivi, garantendo che il cittadino riceva il messaggio una volta sola.


# I servizi

{% hint style="info" %}
Un servizio è un'area tematica per cui è possibile inviare comunicazioni ai cittadini (es. "Carta d'identità", "IMU"). Corrisponde ai servizi del catalogo App IO.
{% endhint %}

<details>

<summary>Cosa può fare l'admin</summary>

Dalla sezione **Servizi** l'amministratore consulta il catalogo completo dei servizi disponibili sulla piattaforma, che può attivare per l'invio di messaggi.

{% hint style="info" %}
I servizi disponibili all'attivazione sono quelli per i quali esiste almeno un modello di messaggio (*template*) già predisposto e pronto all'uso.

Per fare in modo che i servizi attivi nel self care di PagoPA siano attivi automaticamente anche in Connect e che possano inviare messaggi su AppIO, nelle Impostazioni va inserita la chiave di accesso del self care di PagoPA (IO Master key) e il servizio deve essere già registrato su App IO.

In alternativa, nella pagina di dettaglio di ciascun servizio va abilitato il Canale App IO inserendo la API Key primaria generata sempre nel self care.
{% endhint %}

<figure><img src="/files/QzPFeCC3KEarT5VMa9tt" alt=""><figcaption></figcaption></figure>

Nel dettaglio del servizio, è possibile sospendere un servizio attivo tramite la funzione **Metti in pausa**, in modo che il servizio non possa generare messaggi, o riattivare un servizio sospeso.

Per ogni servizio è possibile configurare i canali su cui inviare i messaggi (**App IO** ed **Email**), abilitare operatori e Service Manager a operare sul servizio e configurare i canali specifici di contatto che il cittadino visualizzerà nel messaggio (indirizzo email, link all'informativa privacy e link al servizio di supporto dell'ente).

{% hint style="info" %}
Quando non specificati, i canali di supporto che il cittadino visualizza sono quelli generali configurati a livello di piattaforma
{% endhint %}

Dall'elenco "Messaggi da inviare" si possono [visualizzare e gestire gli eventi](/connect/le-funzioni/gli-eventi) che generano i messaggi.

Infine, una piccola dashboard mostra le ultime attività effettuate sul servizio (messaggi singoli, invii massivi, campagne attivate) e le Api key attivate, che permettono di inviare messaggi automaticamente.

<figure><img src="/files/fnp6X2sV76WXICL6WvBg" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Cosa possono fare il service manager e l'operatore</summary>

Dalla sezione **Servizi** è possibile consultare il catalogo dei servizi attivi sulla piattaforma per i quali l'utente può inviare dei messaggi ai cittadini.

<figure><img src="/files/udbPAqpj0A5qj1K9auF5" alt=""><figcaption></figcaption></figure>

Nel dettaglio del servizio, è possibile vedere se questo sia sospeso, quindi non generi messaggi, i canali di invio abilitati (**App IO** ed **Email**) e i contatti di supporto configurati per il servizio.

Dall'elenco "Messaggi da inviare" si possono [visualizzare gli eventi](/connect/le-funzioni/gli-eventi) che generano i messaggi.

Infine, una piccola dashboard mostra le ultime attività effettuate sul servizio (messaggi singoli, invii massivi, campagne attivate) e le Api key attivate, che permettono di inviare messaggi automaticamente.

</details>


# Gli eventi

Dal dettaglio di un servizio è possibile gestire e visualizzare gli eventi.

{% hint style="info" %}
Un evento è una situazione specifica all'interno di un servizio che genera un messaggio (es. "Rinnovo CIE").
{% endhint %}

<details>

<summary>Cosa possono fare l'admin e il service manager</summary>

## Dettaglio dell'evento

Dal dettaglio dell'evento è possibile sospenderlo tramite la funzione **"Metti in pausa"**, così che non si possano generare nuovi messaggi.

Per ogni evento si possono configurare i canali di invio abilitati (**App IO** ed **Email**) e definire la **strategia di invio**:

* **Invia il messaggio a tutti i canali**: la piattaforma invia il messaggio su App IO e via email in parallelo
* **Invia il messaggio al canale App IO con fallback Email**: la piattaforma invia il messaggio su App IO e, solo in caso di fallimento, spedisce l'email
* **Invia il messaggio al canale Email con fallback App IO**: la piattaforma invia l'email e, solo in caso di fallimento, invia il messaggio su App IO

<figure><img src="/files/XDX764FfzroiVczZnDCX" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Cosa può fare l'operatore</summary>

## Dettaglio dell'evento

Dalla pagina del dettaglio dell'evento l'operatore legge il titolo e la descrizione dell'evento e ne controlla lo stato operativo. Se attivo, l'evento genera notifiche, mentre se è in pausa, l'evento non genera notifiche.

Per ogni evento l'operatore visualizza i canali abilitati (**App IO** ed **Email**).

Nella sezione **Template di default** è visibile il modello di messaggio configurato per l'evento. Cliccando sul titolo, l'operatore ha a disposizione un'anteprima sia in formato mobile, per visualizzare il messaggio come appare su smartphone, sia solo testo.

<figure><img src="/files/fUFnkZhcJi4flmbZXeCx" alt=""><figcaption></figcaption></figure>

</details>


# I messaggi

{% hint style="info" %}
Un messaggio è una comunicazione che il cittadino riceve su App IO o via email in relazione ad un determinato evento.
{% endhint %}

## Inviare singoli messaggi

Dal dettaglio dell'evento > "**Invia messaggi" > "Invio singolo (manuale)"** è possibile inviare un messaggio singolo a uno o pochi cittadini inserendo:

* i campi variabili previsti dall'evento (almeno quelli obbligatori)
* la campagna nell'ambito della quale si sta facendo l'invio
* il template del messaggio da inviare
* i dati del destinatario (nome, cognome, codice fiscale e indirizzo email)

{% hint style="info" %}
La validazione accetta tutti i codici fiscali validi, inclusi quelli soggetti a **omocodia** (in cui alcune cifre sono sostituite da lettere specifiche per evitare duplicati).
{% endhint %}

{% hint style="info" %}
Se l'evento prevede un pagamento, il campo **importo** accetta il formato italiano (es. `1.234,56` o `1234,56`) e quello internazionale con punto decimale (es. `1234.56`).
{% endhint %}

La funzione è utile sia per inviare comunicazioni individuali sia per eseguire test prima di avviare una campagna.

<figure><img src="/files/LSGGjVp2W8LOm8x6ugY2" alt=""><figcaption></figcaption></figure>

## Inviare un messaggio massivo da una lista

Sempre dal dettaglio dell'evento > **"Invia messaggi" >** "**Invio massivo (da lista)"** si può inviare un messaggio massivamente a una lista di cittadini caricata tramite file CSV.

Per creare un invio massivo bisogna:

{% stepper %}
{% step %}

### Associare un nome e una campagna all'invio

Dare un nome all'invio permette di raggruppare tutti i messaggi inviati sotto un unico nome, in modo da poterli monitorare in blocco e non singolarmente (es. *Avvisi IMU acconto 2025*).

L'associazione a una campagna nuova o esistente consente di assegnare un tag all'invio. Se il tag viene assegnato a più invii dello stesso ambito (es. *Avvisi IMU 2025*), questi possono essere monitorati tutti insieme.
{% endstep %}

{% step %}

### Caricare il file con i destinatari e i dati dell'invio

Il file CSV caricato tramite il pulsante "**Importa file CSV"** deve contenere i dati dei destinatari e almeno i campi obbligatori previsti dall'evento.\
\
Per quanto riguarda le **date**, il sistema riconosce i seguenti formati:

* `DD/MM/YYYY`
* `YYYY-MM-DD`
* `DD-MM-YYYY`
* `YYYY/MM/DD`

{% hint style="info" %}
I dati inseriti nel file vanno raggruppati per colonna (es. *Nome*, *Cognome*, *Importo* ecc.). In fase di caricamento del file, il sistema permette di associare ogni campo previsto dal messaggio alla corrispondente colonna del file.
{% endhint %}

{% hint style="info" %}
Se l'evento prevede un pagamento, il campo **importo** nel CSV accetta il formato italiano (es. `1.234,56` o `1234,56`) e quello internazionale con punto decimale (es. `1234.56`).
{% endhint %}

<figure><img src="https://docs.opencityitalia.it/~gitbook/image?url=https%3A%2F%2F3274777267-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fhvfma71FhcUHvlRwF4rM%252Fuploads%252FaQt06bSdL8ZW9sYXkMGd%252Fimage.png%3Falt%3Dmedia%26token%3D394f3639-e8f7-402d-bb8a-9bfa84f77b2d&#x26;width=768&#x26;dpr=3&#x26;quality=100&#x26;sign=2bf84e9&#x26;sv=2" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Template messaggio

La piattaforma propone il [template impostato come default](/connect/le-funzioni/i-modelli-di-messaggio-template) nelle configurazioni dell'evento, ma in questo passaggio è possibile selezionarne un altro.

L'anteprima a destra mostra come apparirà il messaggio ai destinatari.

<figure><img src="/files/FKYNXuHgBFC2WHePEF2L" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

Dopo l'invio, dal dettaglio dell'evento o del servizio oppure dal menu laterale "Messaggi" si può visualizzare il dettaglio di un invio massivo e i messaggi inviati, con le relative informazioni di dettaglio.

Sono disponibili una ricerca per singolo destinatario e dei filtri per campagna, servizio, evento, tipo di invio (massivo, singolo, via API) e stato di invio (generale, delle email, dei messaggi di AppIO).

La piattaforma permette inoltre di esportare in csv l'elenco dei messaggi visualizzati, con o senza filtri applicati.

<figure><img src="/files/YAwMpnN9uvQOXbxa7qCa" alt=""><figcaption></figcaption></figure>


# I modelli di messaggio (template)

{% hint style="warning" %}
Le funzioni descritte in questa pagina sono disponibili solo per l'admin e il service manager
{% endhint %}

Dal dettaglio dell'evento è possibile consultare il modello di messaggio (*template*) di default configurato.

{% hint style="info" %}
Per modello di messaggio si intende il testo base di un messaggio, con segnaposto, disponibile per ogni evento e canale abilitato.
{% endhint %}

Ogni evento può avere un *template* distinto per App IO e per Email, ciascuno modificabile in modo indipendente o sincronizzato.

I template con l'indicazione "**Fornito dalla piattaforma**" sono [quelli suggeriti dalla piattaforma](#template-di-sistema) e sono sufficientemente astratti per essere utlizzati nella maggior parte dei casi d'uso.

Tramite la funzione "**Cambia template di default**" è possibile scegliere un altro template (fornito o meno dalla piattaforma) compatibile con il tipo di evento.

<figure><img src="/files/UAhNnhTJm7wB3NJ3LAZW" alt="" width="563"><figcaption></figcaption></figure>

## Creare un nuovo template

I template forniti dalla piattaforma non sono modificabili; è possibile tuttavia crearne una copia e personalizzarla tramite l'icona "✏️" accanto al nome del template.

Dopo aver associato un nome al nuovo template, bisogna scegliere se questo sarà uguale per tutti i canali di invio o se si preferisce personalizzarlo in base al canale. Si scrivono quindi l'oggetto e il testo del messaggio, inserendo, se serve, dei [campi variabili](#campi-variabili-dellevento).

Infine, è possibile configurare uno o due pulsanti contenenti un link che rimanderà ad una pagina web.

Un'anteprima a destra dà un'idea del risultato finale.

{% hint style="success" %}
Un messaggio ben scritto è costituito da frasi brevi e dirette e da un linguaggio semplice e non burocratico.

L'oggetto del messaggio è il primo elemento che il cittadino vede. Per questo, deve essere specifico e descrittivo, non generico, ma comunque breve.

Le informazioni più importanti nel testo devono emergere a colpo d'occhio, senza che il cittadino debba faticare per cercarle. Allo stesso tempo, il testo deve contenere tutto il necessario senza inutili appesantimenti, per evitare di perdere l'attenzione di chi legge.

Per approfondire: [Linee guida di design per i servizi digitali della PA](https://docs.italia.it/italia/designers-italia/writing-toolkit/)
{% endhint %}

<figure><img src="/files/5rYl7JzythqwCF3B57Ae" alt=""><figcaption></figcaption></figure>

## Campi variabili dell'evento

{% hint style="info" %}
I campi variabili sono dei dati variabili nel modello di messaggio che la piattaforma sostituisce con i dati reali del cittadino al momento dell'invio (es. importo, data appuntamento).
{% endhint %}

La sezione **Campi variabili dell'evento** elenca i campi facoltativi del messaggio e quelli che invece devono essere sempre presenti; se questi ultimi mancano, la piattaforma non genera il messaggio.

<figure><img src="/files/wqxi9EqNHsCR2a9LBPVB" alt="" width="362"><figcaption></figcaption></figure>

I campi obbligatori servono a garantire le funzionalità "in app" dei messaggi.

Nel caso dei pagamenti, per esempio, la mancanza di un campo "IUV" non permetterà di effettuare il pagamento direttamente dall'App IO.

## Template di sistema

Il sistema propone dei template di default che possono essere utilizzati per l'invio dei messaggi. Di seguito sono elencati i template con il testo di default e i campi variabili previsti.

<details>

<summary>Comunicazione generica</summary>

🖋 **Oggetto del messaggio:** Hai una nuova comunicazione

🗒 **Testo del messaggio:**&#x20;

Gentile cittadino,

ti comunichiamo che *(testo del messaggio)*.

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:** n/a

***

**Destinatari**: I cittadini a cui l'ente deve inviare una comunicazione.\
**Quando inviarlo**: I tempi variano a seconda della comunicazione.\
**User story**: Come cittadino voglio ricevere una comunicazione dal mio ente

{% hint style="info" %}
Utilizza questo template come base per qualsiasi comunicazione da inviare ai cittadini
{% endhint %}

</details>

<details>

<summary>Nuovo documento</summary>

🖋 **Oggetto del messaggio:** Nuovo documento pubblicato

🗒 **Testo del messaggio:**&#x20;

Un nuovo documento è stato pubblicato ed è ora disponibile nella tua area personale.

{{# if document\_link}}\
Per visualizzarlo premi sul pulsante “Vedi documento”.\
{{/if}}

🪄 **Pulsante:** Vedi documento

🏷️ **Campi variabili:**

* link al documento (`document_link`) - *facoltativo*

***

**Destinatari**: I cittadini per i quali è stato pubblicato un nuovo documento.\
**Quando inviarlo**: Quando viene pubblicato il documento.\
**User story**: Come cittadino voglio ricevere comunicazione quando viene pubblicato un nuovo documento per me.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Invio referto</summary>

🖋 **Oggetto del messaggio:** Nuovo referto disponibile

🗒 **Testo del messaggio:**&#x20;

È stato caricato un nuovo referto.

Per visualizzarlo accedi al Portale dei referti autenticandoti con SPID o CIE.

Attenzione: il referto è disponibile per 30 giorni dal momento della ricezione della presente notifica.

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:** n/a

***

**Destinatari**: I cittadini per i quali è stato pubblicato un nuovo referto.\
**Quando inviarlo**: Quando viene pubblicato il referto.\
**User story**: Come cittadino voglio ricevere comunicazione quando viene pubblicato un nuovo referto.

</details>

<details>

<summary>Scadenza documento</summary>

🖋 **Oggetto del messaggio:** Documento in scadenza

🗒 **Testo del messaggio:**&#x20;

Il **`{{ document_expiration_date }}`** scadrà il tuo documento `{{# if document_type}}{{/if}}`. Ti ricordiamo di rinnovarlo prima della scadenza per evitare disagi.

`{{# if document_booking_link}}` Per il rinnovo, prenota un appuntamento premendo "Prenota appuntamento". `{{/if}}`

🪄 **Pulsante:** Prenota appuntamento

🏷️ **Campi variabili:**

* data di scadenza del documento (`document_expiration_date`)
* tipo di documento (`document_type`) - *facoltativo*
* link al servizio di prenotazione appuntamenti (`document_booking_link`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno un documento in scadenza.\
**Quando inviarlo**: Qualche settimana prima della data di scadenza del documento.\
**User story**: Come cittadino voglio ricevere comunicazione quando ho un documento in scadenza.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Pubblicazione graduatoria</summary>

🖋 **Oggetto del messaggio:** Pubblicazione graduatoria

🗒 **Testo del messaggio:**&#x20;

E' stata pubblicata la graduatoria per il servizio **`{{ service }}`**.

`{{#if ranking_link}}` Puoi consultare la tua posizione in graduatoria premendo il pulsante "Consulta graduatoria". `{{else}}` Puoi consultare la tua posizione in graduatoria sul sito web del Comune. `{{/if}}`

🪄 **Pulsante:** Consulta graduatoria

🏷️ **Campi variabili:**

* nome del servizio (`service`)
* link alla graduatoria (`ranking_link`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno presentato una domanda soggetta a graduatoria.\
**Quando inviarlo**: Quando è pubblicata la graduatoria.\
**User story**: Come cittadino voglio ricevere aggiornamenti sullo stato della mia domanda.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} e degli {{else}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Concessione bonus</summary>

🖋 **Oggetto del messaggio:** Concessione contributo

🗒 **Testo del messaggio:**&#x20;

La tua richiesta di concessione di **`{{ bonus_name }}`** è stata accolta.

L'importo di **`{{ bonus_amount }}`** € ti sarà erogato sul conto corrente che hai indicato nella richiesta.

Per maggiori informazioni, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* tipo di contributo (`bonus_name`)
* importo (`bonus_amount`)

***

**Destinatari**: I cittadini a cui è stato concesso un contributo.\
**Quando inviarlo**: Quando il contributo viene concesso.\
**User story**: Come cittadino voglio ricevere comunicazione quando mi viene concesso il contributo che ho richiesto.

</details>

<details>

<summary>Nuovo avviso di pagamento</summary>

🖋 **Oggetto del messaggio:** Hai un nuovo avviso di pagamento

🗒 **Testo del messaggio:**&#x20;

C'è un nuovo avviso di pagamento intestato a te.

Devi pagare: **`{{ payment_amount }}` €**

`{{#if payment_expiration_date}}`Entro il: **`{{ date payment_expiration_date }}`**`{{/if}}`

Puoi pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA.

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

In fase di pagamento, se previsto dall'ente, l'importo riportato nel messaggio potrebbe subire variazioni.

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* data di scadenza del pagamento (`date payment_expiration_date`) - *facoltativo*

***

**Destinatari**: I cittadini che devono pagare un servizio all'ente.\
**Quando inviarlo**: Quando è richiesto il pagamento del servizio.\
**User story**: Come cittadino voglio ricevere comunicazione quando è richiesto di procedere al pagamento.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Scadenza pagamento</summary>

🖋 **Oggetto del messaggio:** Pagamento in scadenza

🗒 **Testo del messaggio:**&#x20;

Hai un avviso di pagamento in scadenza.

Devi pagare: **`{{ payment_amount }}` €**

`{{#if payment_expiration_date}}`Entro il: **`{{ date payment_expiration_date }}`**`{{/if}}`

Puoi pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA.

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

In fase di pagamento, se previsto dall'ente, l'importo riportato nel messaggio potrebbe subire variazioni.

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* data di scadenza del pagamento (`date payment_expiration_date`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno un pagamento in scadenza.\
**Quando inviarlo**: Quando il pagamento del servizio è in scadenza.\
**User story**: Come cittadino voglio ricevere una comunicazione quando ho un pagamento in scadenza.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Pagamento aggiornato</summary>

🖋 **Oggetto del messaggio:** Pagamento aggiornato

🗒 **Testo del messaggio:**&#x20;

Il tuo pagamento per **`{{ payment_reason }}`** è stato aggiornato.

Devi pagare: **`{{ payment_amount }}`** €

`{{#if payment_expiration_date}}`Entro il: **`{{ date payment_expiration_date }}`**`{{/if}}`

Puoi pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA.

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* causale di pagamento (`payment_reason`)
* importo (`payment_amount`)
* data di scadenza del pagamento (`date payment_expiration_date`) *- facoltativo*

***

**Destinatari**: I cittadini per i quali è stato aggiornato un pagamento.\
**Quando inviarlo**: Quando il pagamento del servizio è stato aggiornato.\
**User story**: Come cittadino voglio ricevere una comunicazione quando il mio pagamento viene aggiornato.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Pagamento annullato</summary>

🖋 **Oggetto del messaggio:** Pagamento annullato

🗒 **Testo del messaggio:**&#x20;

L’avviso di pagamento di **`{{ payment_amount }}`** € con oggetto **`{{ payment_reason }}`** intestato a te è stato annullato.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* causale di pagamento (`payment_reason`)

***

**Destinatari**: I cittadini per i quali è stato annullato un pagamento.\
**Quando inviarlo**: Quando il pagamento del servizio è stato annullato.\
**User story**: Come cittadino voglio ricevere una comunicazione quando il mio pagamento viene annullato.

</details>

<details>

<summary>Pagamento non effettuato</summary>

🖋 **Oggetto del messaggio:** Pagamento non effettuato

🗒 **Testo del messaggio:**&#x20;

Il tuo pagamento di **`{{ payment_amount }}` €** relativo a **`{{ payment_reason }}`** è scaduto `{{# if payment_expiration_date}}` il **`{{ date payment_expiration_date }}`**`{{/if}}`.

Puoi ancora pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA e le altre modalità di pagamento offerte da **`{{ tenant_name }}`** .

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

In fase di pagamento, se previsto dall'ente, l'importo riportato nel messaggio potrebbe subire variazioni.

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* causale di pagamento (`payment_reason`)
* data di scadenza del pagamento (`date payment_expiration_date`) *- facoltativo*
* nome dell'ente (`tenant_name`) - *compilato automaticamente*

***

**Destinatari**: I cittadini che hanno un pagamento scaduto.\
**Quando inviarlo**: Quando il pagamento del servizio è scaduto.\
**User story**: Come cittadino voglio ricevere una comunicazione quando il mio pagamento è scaduto.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Conferma appuntamento</summary>

🖋 **Oggetto del messaggio:** Appuntamento confermato

🗒 **Testo del messaggio:**&#x20;

Il tuo appuntamento è stato confermato.

Quando: **`{{ date booking_date }}`** alle **`{{ time booking_date }}`**

Dove: **`{{ booking_place }}`**

Ti invitiamo a presentarti nel luogo indicato con almeno 15 minuti di anticipo e con la documentazione necessaria.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo “Contatta il mittente”.

`{{# if booking_management_url}}` Per spostare o annullare l’appuntamento, premi “Sposta o annulla appuntamento”. `{{/if}}`

🪄 **Pulsante:** Sposta o annulla appuntamento

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)
* luogo dell'appuntamento (`booking_place`)
* link al sistema di gestione dell'appuntamento (`booking_management_url`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno prenotato un appuntamento.\
**Quando inviarlo**: Quando l'appuntamento è confermato.\
**User story**: Come cittadino voglio ricevere comunicazione quando l'appuntamento è confermato.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Promemoria appuntamento</summary>

🖋 **Oggetto del messaggio:** Promemoria appuntamento

🗒 **Testo del messaggio:**&#x20;

Ti ricordiamo che hai un appuntamento programmato.

Quando: **`{{ date booking_date }}`** alle **`{{ time booking_date }}`**

Dove: **`{{ booking_place }}`**

Ti invitiamo a presentarti nel luogo indicato con almeno 15 minuti di anticipo e con la documentazione necessaria.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo “Contatta il mittente”.

`{{# if booking_management_url}}` Per spostare o annullare l’appuntamento, premi “Sposta o annulla appuntamento”. `{{/if}}`

🪄 **Pulsante:** Sposta o annulla appuntamento

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)
* luogo dell'appuntamento (`booking_place`)
* link al sistema di gestione dell'appuntamento (`booking_management_url`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno un appuntamento imminente.\
**Quando inviarlo**: Qualche ora prima dell'appuntamento.\
**User story**: Come cittadino voglio ricevere un promemoria in prossimità dell'appuntamento.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Aggiornamento appuntamento</summary>

🖋 **Oggetto del messaggio:** Il tuo appuntamento è stato aggiornato

🗒 **Testo del messaggio:**&#x20;

Il tuo appuntamento è stato aggiornato.

Quando: **`{{ date booking_date }}`** alle **`{{ time booking_date }}`**

Dove: **`{{ booking_place }}`**

Ti invitiamo a presentarti nel luogo indicato con almeno 15 minuti di anticipo e con la documentazione necessaria.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo “Contatta il mittente”.

`{{# if booking_management_url}}` Per spostare o annullare l’appuntamento, premi “Gestisci appuntamento”. `{{/if}}`

🪄 **Pulsante:** Gestisci appuntamento

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)
* luogo dell'appuntamento (`booking_place`)
* link al sistema di gestione dell'appuntamento (`booking_management_url`) - *facoltativo*

***

**Destinatari**: I cittadini il cui appuntamento è stato aggiornato.\
**Quando inviarlo**: Quando l'appuntamento viene aggiornato.\
**User story**: Come cittadino voglio ricevere comunicazione quando il mio appuntamento viene aggiornato.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Annullamento appuntamento</summary>

🖋 **Oggetto del messaggio:** Il tuo appuntamento è stato annullato

🗒 **Testo del messaggio:**&#x20;

Il tuo appuntamento del giorno **`{{date booking_date }}`** alle **`{{ time booking_date }}`** è stato annullato.

Per maggiori informazioni, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)

***

**Destinatari**: I cittadini il cui appuntamento è stato annullato.\
**Quando inviarlo**: Quando l'appuntamento viene annullato.\
**User story**: Come cittadino voglio ricevere comunicazione quando il mio appuntamento viene annullato.

</details>

<details>

<summary>Rifiuto richiesta di appuntamento</summary>

🖋 **Oggetto del messaggio:** La tua richiesta di appuntamento è stata rifiutata

🗒 **Testo del messaggio:**&#x20;

La tua richiesta di appuntamento per il giorno **`{{date booking_date }}`** alle **`{{time booking_date }}`** è stata rifiutata.

Per maggiori informazioni, contattaci tramite i canali che trovi premendo "Contatta il mittente" o prenota un nuovo appuntamento.

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)

***

**Destinatari**: I cittadini la cui richiesta di appuntamento è stata rifiutata.\
**Quando inviarlo**: Quando la richiesta di appuntamento viene rifiutata.\
**User story**: Come cittadino voglio ricevere comunicazione quando la mia richiesta di appuntamento viene rifiutata.

</details>


# Introduzione

<figure><img src="/files/WJh2oSOuLkAncUDtxE7s" alt=""><figcaption></figcaption></figure>

Questo manuale OpenCity ha l’obiettivo di illustrare le funzionalità che la piattaforma mette a disposizione dei redattori per la creazione e la gestione dei contenuti del sito web istituzionale.

Il documento è strutturato in due parti principali:

## Funzionalità generali della piattaforma

In questa sezione vengono presentati:

* una panoramica delle [principali funzioni disponibili](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti) per l’aggiornamento dei contenuti del sito;
* i [moduli integrativi](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza) che l’Ente può chiedere di attivare;
* le [linee guida](/sito-web/linee-guida/testi-e-linguaggio) per una corretta gestione editoriale dei contenuti, comprese indicazioni sull’utilizzo delle immagini.

## Il motore di ricerca del sito

La piattaforma usa un **motore di ricerca interno** per alimentare sia la barra di ricerca del sito sia tutti i blocchi di contenuti filtrabili (per tipologia, categoria, data e altri criteri). Tutte queste funzioni attingono all'indice di ricerca: nessuna interroga direttamente il database.

Ogni volta che pubblichi o modifichi un contenuto, la piattaforma lo indicizza automaticamente: il contenuto diventa subito cercabile e visibile nei blocchi che lo includono.

{% hint style="info" %}
Il motore di ricerca contiene una **copia** dei contenuti del sito, non è la fonte. Questo significa che un contenuto può esistere nel database ma non comparire nella ricerca o nei blocchi, se per qualche motivo non è stato indicizzato.
{% endhint %}

### Quando un contenuto non compare nella ricerca

Ci sono situazioni in cui il contenuto potrebbe non essere presente nell'indice:

* dopo la pubblicazione, se l'indicizzazione non è andata a buon fine;
* quando vengono aggiunti nuovi campi a un tipo di contenuto: i contenuti già esistenti di quel tipo non vengono reindicizzati automaticamente;
* dopo una migrazione di dati o un ripristino da backup.

In questi casi il contenuto è nel sito ma non è raggiungibile tramite ricerca né visibile nei blocchi filtrabili.

{% hint style="warning" %}
Se un contenuto non compare nella ricerca o in un blocco filtrabile dopo la pubblicazione, segnalalo all'**amministratore della piattaforma**. L'amministratore può avviare la reindicizzazione, che può riguardare un singolo tipo di contenuto o l'intero sito.
{% endhint %}

## Modelli di sito web e relative funzionalità

La seconda parte del manuale descrive le funzionalità specifiche previste per i diversi modelli di sito:

* sito per [**Comuni italiani**](/sito-web/modello-comuni/il-modello-di-sito-comunale);
* sito per [**Province e Regioni**](/sito-web/modello-regioni-e-province-autonome/il-modello-di-sito-regionale-e-provinciale);
* sito per [**Aziende Sanitarie Locali (ASL)** e **Aziende Ospedaliere (AO)**](/sito-web/modello-asl/il-modello-di-sito-per-asl).


# Avvio del sito e migrazione dei contenuti

Quando un Ente adotta OpenCity Italia in sostituzione di un sito precedente, si pone il problema di trasferire i contenuti esistenti nel nuovo ambiente. OpenCity Italia segue un approccio strutturato alla migrazione, che privilegia la qualità e la conformità dei contenuti rispetto alla velocità e alla quantità.

OpenCity Italia **non effettua mai migrazioni massive e automatiche dal vecchio sito al nuovo**. Nella nostra esperienza, questo approccio sposta a valle i problemi, portando sul nuovo sito contenuti di bassa qualità e rischiando di compromettere la conformità ai requisiti PNRR.

## Avvio del sito

L'attivazione di un nuovo sito istituzionale su OpenCity Italia segue un processo strutturato che coinvolge sia il team di OpenCity Italia che l'Ente. Di seguito sono descritte le fasi principali.

### Programmazione del go-live

La data di go-live viene concordata tra OpenCity Italia e l'Ente con congruo anticipo. Una volta stabilita, vengono pianificate le attività tecniche necessarie al rilascio.

### Operazioni tecniche

Nella giornata del go-live, il team tecnico di OpenCity Italia si occupa di:

* creazione del certificato SSL per il dominio di produzione
* configurazione del redirect dal dominio temporaneo al dominio definitivo
* configurazione del backend.

### Controlli post-rilascio

{% hint style="warning" %}
Prima del go-live, assicurarsi che l'informativa privacy sia aggiornata e pubblicata sul sito. In caso contrario, OpenCity Italia è tenuta a sollecitare l'Ente, anche tramite PEC, per evitare problemi con il Garante per la protezione dei dati personali.
{% endhint %}

Una volta che il sito è online, OpenCity Italia effettua una serie di verifiche prima di comunicare all'Ente che il sito è in produzione:

* verifica che il login funzioni correttamente
* caricamento della sitemap (per i Comuni con un numero elevato di contenuti)
* verifica dei troncamenti nel motore di ricerca (per i Comuni con un numero elevato di contenuti)
* verifica della presenza e correttezza di logo, favicon e icona per dispositivi Apple
* verifica delle impostazioni generali
* verifica della conformità ai requisiti PNRR
* verifica che l'informativa privacy sia aggiornata.

## Le fasi della migrazione

{% stepper %}
{% step %}

#### Analisi e mapping

La prima fase è un'attività di analisi della struttura e della qualità dei contenuti del vecchio sito, svolta da OpenCity Italia. Viene realizzato un mapping tra la struttura precedente e quella nuova, vengono analizzate le tipologie di contenuto presenti e viene formulato un piano di migrazione con soluzioni pratiche.

Questa fase si conclude con un **meeting di kick off** in cui OpenCity Italia presenta all'Ente i risultati dell'analisi, illustra il metodo di lavoro e il tool di validazione, e propone le tempistiche per la migrazione.
{% endstep %}

{% step %}

#### Editing e validazione

I contenuti selezionati vengono portati dal vecchio sito verso un **foglio di calcolo condiviso in cloud**, che costituisce l'ambiente di lavoro per la fase di editing e validazione. In questo foglio ogni contenuto viene presentato con evidenza degli attributi obbligatori mancanti, in modo che l'Ente possa arricchirlo e renderlo compatibile con la struttura dei content type prevista dal nuovo modello e dai requisiti PNRR.

OpenCity Italia fornisce esempi pratici per ciascuna tipologia di contenuto e supervisiona il lavoro dell'Ente, cosa che sarebbe impossibile se i contenuti venissero modificati direttamente nel back office del CMS.
{% endstep %}

{% step %}

#### Migrazione

Completato il lavoro di editing e validazione, OpenCity Italia effettua l'import automatico dei contenuti dal foglio di calcolo al nuovo sito. Il processo, avendo seguito le fasi precedenti, non presenta problematiche di importazione.

La migrazione non riguarda necessariamente tutti i contenuti del vecchio sito. In accordo con l'Ente, vengono esclusi documenti non rilevanti, notizie datate, immagini prive di attribuzione o licenza chiara. Vengono inoltre esclusi i contenuti troppo difformi dai content type del nuovo modello, che l'Ente provvederà a riscrivere direttamente nel back office con il supporto di OpenCity Italia.
{% endstep %}

{% step %}

#### Editing, validazione e migrazione dei contenuti più recenti

Nei casi in cui la migrazione si protragga nel tempo, viene svolta una fase aggiuntiva per allineare i contenuti più recenti pubblicati sul vecchio sito nel periodo intercorso tra l'avvio della migrazione e il go-live del nuovo sito.
{% endstep %}
{% endstepper %}


# Sicurezza e continuità del servizio

Questa sezione raccoglie le informazioni su sicurezza, continuità del servizio e comunicazioni ufficiali che possono riguardare il sito istituzionale

Questa sezione descrive gli aspetti di sicurezza della piattaforma, le garanzie di continuità e reversibilità del servizio in caso di dismissione, e come comportarti di fronte a comunicazioni esterne che segnalano presunte vulnerabilità del sito.


# Dismissione e reversibilità del servizio

Quando un Ente decide di cessare l'utilizzo della piattaforma, anticipatamente o alla scadenza naturale del contratto, può richiedere la dismissione del servizio ed esercitare il diritto a ricevere una copia di tutti i dati in proprio possesso, per favorire l'eventuale passaggio a un nuovo fornitore.

La procedura è gratuita e viene avviata su richiesta formale dell'Ente.

## Come avviare la procedura

{% hint style="warning" icon="triangle-exclamation" %}
Una volta avviata, la procedura **non può essere interrotta**.
{% endhint %}

Per avviare la procedura, il legale rappresentante dell'Ente deve compilare e inviare via PEC l'[Allegato A](https://docs.google.com/document/d/1mhTLcnOZnRMcpCXBwEd-oU_vwUq8LfEXy9yy19uOjhc/edit?tab=t.0), indicando:

* l'indirizzo del servizio di cui si richiede la dismissione;
* se si richiede la restituzione dei dati;
* se si richiede supporto per il trasferimento del dominio a un nuovo fornitore (solo se il dominio è gestito da Opencity Labs);
* le persone da coinvolgere nel processo.

## Cosa succede dopo l'invio della PEC

Entro tre giorni lavorativi dalla ricezione della PEC, Opencity Labs apre un ticket interno e risponde all'Ente con una PEC contenente le date previste per la dismissione.

L'Ente ha **5 giorni lavorativi** per richiedere eventuali modifiche alle date proposte. Trascorso questo termine, le date si considerano accettate.

## Tempistiche della dismissione

La procedura si articola in tre fasi:

* **Modalità read-only**: entro 30 giorni dalla ricezione della PEC, il servizio entra in modalità di sola lettura. Da questo momento è possibile scaricare l'archivio con tutti i dati, ma eventuali modifiche successive non saranno incluse nell'export;
* **Disattivazione del servizio**: non prima di 30 giorni e non oltre 90 giorni dalla richiesta;
* **Cancellazione dei dati**: entro 10 giorni solari dalla data di disattivazione.

## I dati restituiti all'Ente

Opencity Labs produce un export che include:

* il contenuto del database, in formato SQL standard;
* i file caricati sulla piattaforma, nel formato originale con cui sono stati caricati.

L'archivio è scaricabile tramite un indirizzo internet protetto, direttamente da browser.

## Conservazione e cancellazione dei dati

Dopo la cancellazione, i dati rimangono disponibili nei backup per un massimo di 6 mesi, al termine dei quali vengono rimossi definitivamente, come previsto dalla Politica di Backup (PL05).


# Sicurezza

Questa sezione raccoglie le informazioni relative agli aspetti di sicurezza del sito istituzionale

La sicurezza del sito istituzionale riguarda sia gli aspetti infrastrutturali, come la **protezione della connessione** e la **gestione dei certificati**, sia il **rispetto dei requisiti normativi in materia di cybersicurezza**, tra cui la **certificazione ACN** e gli **obblighi introdotti dalla direttiva NIS 2**.

Questa sezione descrive come la piattaforma affronta ciascuno di questi aspetti, distinguendo tra ciò che è gestito automaticamente e ciò che richiede un'azione da parte dell'Ente.

## Certificato HTTPS

{% hint style="info" %}
Il certificato di sicurezza è **gestito interamente dalla piattaforma**: viene rilasciato automaticamente all'attivazione del sito e rinnovato prima della scadenza, senza che l'Ente debba effettuare alcuna operazione.
{% endhint %}

Il sito istituzionale utilizza un certificato SSL/TLS per garantire la connessione sicura HTTPS. Il certificato viene rilasciato automaticamente dalla piattaforma al momento dell'attivazione del sito, ha una durata di 90 giorni e viene rinnovato in automatico 30 giorni prima della scadenza, senza che l'Ente debba effettuare alcuna operazione.


# Segnalazioni AgID su vulnerabilità WordPress

**ComunWeb non usa WordPress.** La segnalazione è una comunicazione massiva inviata da AgID a tutti gli enti, indipendentemente dalla piattaforma in uso. La vulnerabilità riguarda il tema WordPress "Design Comuni Italiani", che non fa parte della piattaforma OpenCity Italia.


# Accesso alla piattaforma

Per gestire i contenuti il redattore deve prima fare accesso alla piattaforma con le proprie credenziali.

Il back office della piattaforma è un’applicazione web utilizzabile da pc attraverso un normale browser web. Può essere utilizzata per gestire contenuti in qualsiasi luogo e in qualsiasi orario, a prescindere dalla sede in cui si lavora e anche in situazioni di smartworking. In questo modo si abilita l'introduzione di modalità di lavoro flessibili all'interno degli enti pubblici, senza ulteriori complicazioni.

## Accesso al sistema

{% hint style="info" %}
I redattori vengono inizialmente creati da un amministratore (gestito da OpenCity Italia) o da un [redattore abilitato](#gestire-gli-utenti), che indica lo username dell'utente (solitamente nome e cognome del funzionario) e associa un indirizzo mail.
{% endhint %}

OpenCity mette a disposizione un sistema di autenticazione nativo alla piattaforma. Su richiesta, è possibile attivare un connettore con il sistema di gestione delle identità dell’ente tramite Single Sign-On (es: **Microsoft Entra ID**)

### Accesso con il sistema nativo <a href="#accesso-con-il-sistema-nativo" id="accesso-con-il-sistema-nativo"></a>

L’accesso alla piattaforma avviene attraverso il link "Accesso redattori sito" collocato nel footer (1).

<figure><img src="/files/arh9P8ue1f57PwjJNqLK" alt=""><figcaption></figcaption></figure>

Clicca su "Accedi come redattore del sito web" (2), inserisci username e password del tuo utente (3) e clicca su "Login" (4).

<div data-full-width="true"><figure><img src="/files/Jig9nMgmLPOBwl1hLPaR" alt=""><figcaption></figcaption></figure> <figure><img src="/files/Rt5AtizwMUh4yaJtaLCy" alt=""><figcaption></figcaption></figure></div>

### Accesso con Single Sign-On (es: Microsoft Entra ID)

{% hint style="info" %}
L’attivazione di Sigle Sign-On è disponibile su richiesta. Contatta OpenCity Italia per avviare la configurazione con il sistema di identità del tuo ente.
{% endhint %}

Su richiesta dell’ente, è possibile attivare l’accesso al back office tramite **Microsoft Entra ID** (già Azure Active Directory). In questo caso, gli operatori accedono con le credenziali aziendali già in uso presso l’ente, senza dover gestire una password separata per la piattaforma.

<figure><img src="/files/sRIkRQnXBG5iqhKgUlbS" alt=""><figcaption></figcaption></figure>

## Primo accesso alla piattaforma

In caso di primo accesso, devi creare una nuova password tramite il link ***Hai dimenticato la password?.***

<figure><img src="/files/bnZN8mEtRUb27ZRxKzCw" alt=""><figcaption></figcaption></figure>

### Creare una nuova password

{% hint style="info" %}
Il sistema non prevede l'invio al redattore di una password temporanea da modificare dopo il primo accesso.

Questa funzione può essere utilizzata anche per necessità future di cambio della password.
{% endhint %}

Inserisci l'indirizzo mail associato al tuo utente, a cui verrà automaticamente inviato il link per la creazione della password.

<figure><img src="/files/0yz9TRlX6XdtwpGiCo14" alt=""><figcaption></figcaption></figure>


# Attribuzione dei permessi

Il redattore deve disporre dei permessi corretti per poter gestire i contenuti del sito

{% hint style="info" %}
Il sistema di permessi attribuito a un redattore può essere completo o limitato ad alcune sezioni del sito.
{% endhint %}

Durante la creazione di un redattore, l'amministratore indica le sezioni in cui il redattore può gestire i contenuti presenti.

<figure><img src="/files/PmWu3jrkIW0PSw83hpiQ" alt=""><figcaption></figcaption></figure>

I permessi a disposizione di un redattore sono:

{% tabs fullWidth="true" %}
{% tab title="Modello Comuni" %}
**Editor Homepage**

Il redattore può modificare la [homepage del sito](/sito-web/modello-comuni/personalizzare-homepage-del-sito-comunale).

**Editor Amministrazione**

Il redattore può gestire in Amministrazione:

* [Unità organizzative](/sito-web/modello-comuni/gestire-lorganigramma-del-comune) (Organi di governo, Aree amministrative, Uffici, Enti e fondazioni)
* [Persone pubbliche](/sito-web/modello-comuni/gestire-il-personale-e-i-politici-del-comune) (Politici e Personale amministrativo);
* [Documenti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune)

**Editor Amministrazione Trasparente**

Il redattore può [gestire i contenuti nelle pagine di Amministrazione Trasparente](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza) ma **non** creare nuove Pagine di Trasparenza.

**Editor Dataset**

Il redattore può gestire i [Dataset](/sito-web/modello-comuni/pubblicare-dati-e-statistiche-del-comune-dataset) in Documenti e dati.

**Editor FAQ**

Il redattore può gestire le [Domande frequenti](/sito-web/modello-comuni/organizzare-le-domande-frequenti-per-la-navigazione-del-sito-comunale/configurare-le-domande-frequenti) del sito.

**Editor Guide e approfondimenti**

Il redattore può gestire le [Guide](/sito-web/modello-comuni/configurare-le-guide-del-sito-comunale) e gli [Approfondimenti](/sito-web/modello-comuni/inserire-gli-approfondimenti-del-comune) in Vivere il Comune.

**Editor Novità**

Il redattore può gestire [gli avvisi, le notizie e i comunicati stampa](/sito-web/modello-comuni/comunicare-le-novita-del-comune) in Novità.

**Editor Progetti**

Il redattore può gestire i [Progetti](/sito-web/modello-comuni/gestire-i-progetti-del-comune) in Documenti e dati.

**Editor Servizi**

Il redattore può i [Servizi pubblici](/sito-web/modello-comuni/configurare-le-schede-informative-dei-servizi-forniti-dal-comune) in Servizi.

**Editor Struttura Amministrazione Trasparente**

Il redattore può gestire le [Pagine di trasparenza](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/gestire-le-pagine-di-trasparenza) **ma non** creare nuovi contenuti in in Amministrazione Trasparente.

**Editor Vivere il Comune**

Il redattore può gestire [Luoghi](/sito-web/modello-comuni/gestire-luoghi-e-sedi-del-comune), [Eventi](/sito-web/modello-comuni/gestire-gli-eventi-del-comune) e la [Storia del Comune](/sito-web/modello-comuni/raccontare-la-storia-del-comune) in Vivere il Comune.
{% endtab %}

{% tab title="Modello ASL" %}
**Editor Homepage**

Il redattore può modificare la [homepage del sito](/sito-web/modello-asl/personalizzare-la-homepage-del-sito-della-asl).

**Editor Amministrazione**

Il redattore può gestire [Unità organizzative-organizzazioni](/sito-web/modello-asl/organizzare-le-strutture-della-asl) e [Persone pubbliche](/sito-web/modello-asl/configurare-il-personale-della-asl) (Medici e Personale amministrativo) nelle pagine Strutture e Organizzazione.

**Editor Amministrazione Trasparente**

Il redattore può gestire i contenuti nelle pagine di [Amministrazione Trasparente](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza).

**Editor Bandi e concorsi**

Il redattore può gestire [bandi e concorsi pubblici](/sito-web/modello-asl/lavorare-nella-asl-bandi-e-concorsi) nella pagina ASL Comunica

**Editor FAQ**

Il redattore può gestire le [domande frequenti](/sito-web/modello-asl/organizzare-le-domande-frequenti-per-la-navigazione-del-sito-della-asl) del sito.

**Editor Documenti**

Il redattore può gestire i [Documenti](/sito-web/modello-asl/pubblicare-la-documentazione-della-asl) e i [Dataset](/sito-web/modello-asl/pubblicare-dati-e-statistiche-della-asl-dataset) nella pagina Organizzazione

**Editor Novità**

Il redattore può gestire [gli avvisi, le notizie, i comunicati stampa](/sito-web/modello-asl/comunicare-le-novita-della-asl) e [gli eventi](/sito-web/modello-asl/gestire-gli-eventi-della-asl) nella pagina ASL Comunica.

**Editor Progetti**

Il redattore può gestire i [Progetti](/sito-web/modello-asl/organizzare-i-progetti-della-asl) nella pagina Organizzazione

**Editor Servizi e Come fare per**

Il redattore può i [Servizi pubblici](/sito-web/modello-asl/configurare-le-schede-informative-dei-servizi-forniti-dalla-asl) e [Guide](/sito-web/modello-asl/amministrare-le-procedure-della-asl-come-fare-per) nelle pagine Servizi e prestazioni e Come fare per
{% endtab %}

{% tab title="Modello Regioni e Province autonome" %}
**Editor Argomenti**

Il redattore può gestire le Pagine argomento del sito

**Editor Concorsi**

Il redattore può gestire i [Concorsi](/sito-web/modello-regioni-e-province-autonome/lavorare-nellente-concorso-pubblico) nella pagina Lavora con noi nella sezione Amministrazione

**Editor Dataset**

Il redattore può gestire i [Dataset](/sito-web/modello-regioni-e-province-autonome/pubblicare-dati-e-statistiche-dellente-dataset) nella sezione Dati e statistiche

**Editor Documenti**

Il redattore può gestire i [Documenti](/sito-web/modello-regioni-e-province-autonome/pubblicare-la-documentazione-dellente) nelle pagine Documenti e Programmazione della sezione Amministrazione

**Editor Homepage**

Il redattore può modificare la homepage del sito web.

**Editor Novità**

Il redattore può gestire [avvisi, comunicati stampa](/sito-web/modello-regioni-e-province-autonome/comunicare-le-novita-dellente) ed [eventi](/sito-web/modello-regioni-e-province-autonome/gestire-gli-eventi-dellente) nella sezione News

**Editor Organizzazioni**

Il redattore può gestire, nella sezione Amministrazione, le [Unità organizzative](/sito-web/modello-regioni-e-province-autonome/gestire-lorganigramma-dellente) nelle pagine:

* Organi politici;
* Strutture organizzative;
* Enti, società e fondazioni;
* Comuni e comunità di valle;
* Organismi e strumenti di garanzia;

**Editor Progetti**

Il redattore può gestire i [Progetti](/sito-web/modello-regioni-e-province-autonome/gestire-i-progetti-dellente) nella pagina Progetti della sezione Amministrazione

**Editor Servizi**

Il redattore può gestire i [Servizi pubblici](/sito-web/modello-regioni-e-province-autonome/configurare-le-schede-informative-dei-servizi-forniti-dallente) nella sezione Servizi.
{% endtab %}
{% endtabs %}

## Gestire gli utenti

{% hint style="warning" %}
Questa funzione viene **non è attiva di default** ma deve essere richiesta dall'Ente.

Normalmente, viene attivata per le utenze dei partner o del CED.
{% endhint %}

Esiste un permesso avanzato, chiamato "Gestione accessi redazione", che consente di [modificare il sistema di permessi](#modificare-i-permessi-assegnati-ai-redattori) e di [creare nuove utenze](#creare-nuovi-utenti).

<figure><img src="/files/vw2r6yA4AxNkTifZRIYT" alt=""><figcaption></figcaption></figure>

## Modificare il sistema di permessi

Dal [menù redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Amministra" e poi su "Gestione accessi redazione".

<figure><img src="/files/emi5nakDc8u7WyB796R1" alt=""><figcaption></figcaption></figure>

Per attribuire o togliere permessi, clicca su una delle specifiche voci di editor (es. Editor Homepage)

<figure><img src="/files/ifrtKfwHjKq5hscAyg7Q" alt=""><figcaption></figcaption></figure>

## Creare nuovi utenti

Clicca sull'icona di aggiunta collocata in alto a destra.

<figure><img src="/files/DxOX63I8p8VSEg3MESoM" alt=""><figcaption></figcaption></figure>

Per creare un nuovo utente, devi indicare:

* nome e cognome del funzionario;
* nome utente;
* indirizzo mail.

Per confermare la creazione, accetta i termini di utilizzo (1) e poi clicca su "Salva" (2).

<figure><img src="/files/QuYHnuQ19RNFOLLb6SoK" alt=""><figcaption></figcaption></figure>

## Visualizzare lo storico delle attività dell'utente

Cliccando sull'icona a forma di ingranaggio sotto il nome dell'utente, puoi visualizzare lo storico delle sue attività riguardanti la gestione dei contenuti, disponibile alla voce "Ultime azioni"

<div data-full-width="true"><figure><img src="/files/9gQDJYUnQj1zOprZkoQ4" alt=""><figcaption></figcaption></figure> <figure><img src="/files/CdMMCKOoAu561OCFiLri" alt=""><figcaption></figcaption></figure></div>


# Il menù redattore

Il menù del redattore è la barra degli strumenti che consente al funzionario di gestire i contenuti sul sito web.

Una volta fatto accesso, su ogni pagina del sito di cui ha ricevuto [permessi da Editor](/sito-web/la-piattaforma/accedere-alla-piattaforma/attribuzione-dei-permessi) visualizzi il menù del redattore, la barra degli strumenti per la gestione dei contenuti.

<figure><img src="/files/2J4kJjASBh3adQxRwsUF" alt=""><figcaption></figcaption></figure>

## Funzioni di base

Le funzioni principali del menù del redattore sono:

* **Crea** - consente di [creare un contenuto di dettaglio](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto) (content type);
* **Modifica** - consente di [modificare la pagina](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto) facendo prima una bozza e poi pubblicarla;
* **Preferiti** - consente di salvare la pagina tra i preferiti all'interno del [Pannello strumenti](/sito-web/la-piattaforma/il-pannello-strumenti).

## Funzioni avanzate

Oltre alle tre funzioni principali, il menù del redattore permette di:

* [**Rendere un contenuto privato**](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/nascondere-o-programmare-un-contenuto) (*Imposta come privato*) e quindi nasconderlo ai cittadini. Nel caso di contenuti nascosti, il nome della funzione sarà *Imposta come pubblico;*
* [**Spostare un contenuto**](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/spostare-un-contenuto) in un’altra sezione o categoria (*Sposta*);
* [**Eliminare un contenuto**](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/eliminare-un-contenuto), spostandolo nel cestino o cancellandolo definitivamente (*Elimina*). Dal cestino è possibile recuperare un contenuto eliminato, ma se viene cancellato definitivamente non sarà più recuperabile;
* [**Ordinare un elenco di contenuti**](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/ordinare-un-elenco-di-contenuti) (*Ordina*);
* [**Aggiungere una nuova collocazione**](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza#aggiungere-una-collocazione) al contenuto (*Aggiungi collocazioni*). Questa funzionalità viene usata per i Documenti che non vengono mostrati automaticamente in [Amministrazione Trasparente](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza);
* [**Copiare un contenuto**](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/copiare-un-contenuto)**,** partendo da uno già esistente;
* [**Ripristinare la versione precedente** ](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/ripristinare-la-versione-precedente-di-un-contenuto)di un contenuto;
* **Visualizzare delle informazioni** relative alla pagina che sta gestendo (*Info*);
* [**Gestire le bozze**](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/gestire-le-bozze) lasciate in sospeso dal redattore.


# Il motore di ricerca

La pagina descrive la ricerca del sito, i filtri disponibili e la visibilità dei contenuti.

Per effettuare una ricerca sul sito web, il cittadino inserisce una o più parole nel campo di ricerca.&#x20;

<figure><img src="/files/y5NyKtL2z9x1nCizNb5M" alt=""><figcaption></figcaption></figure>

Il sito mostra i contenuti pubblicati più pertinenti e consente di individuare più facilmente le informazioni disponibili.

<figure><img src="/files/pmVdLkgFUJSeZyDKejjx" alt=""><figcaption></figcaption></figure>

Dopo aver eseguito una ricerca, il cittadino può restringere i risultati usando i filtri disponibili:

* **Sezioni**;
* **Argomenti**.

<figure><img src="/files/fBYAISZ1mDa8NxxD7VSv" alt=""><figcaption></figcaption></figure>

Il cittadino può anche ordinare i risultati della ricerca per:

* rilevanza;
* data di pubblicazione;
* tipologia di contenuto;
* nome.

<figure><img src="/files/rHwwLrCT7moIVIbPhLnF" alt=""><figcaption></figcaption></figure>

## Struttura tecnica del motore di ricerca

La ricerca usa il CMS, il database PostgreSQL e Apache Solr. Ogni componente svolge un compito specifico. Il CMS gestisce i contenuti e li conserva in PostgreSQL. Quando necessario, invia a Solr una copia dei dati da usare nelle ricerche. Solr elabora le richieste degli utenti e restituisce i risultati. Il database rimane sempre la fonte principale dei contenuti.

### Come funziona l'indicizzazione dei risultati

Quando un redattore pubblica o modifica un contenuto, il sistema lo aggiunge automaticamente alla ricerca. Nella ricerca pubblica, i cittadini trovano solo i contenuti pubblicati. I redattori vedono anche i contenuti privati o programmati, mentre le bozze non sono visibili.&#x20;

Per modificare lo stato di un contenuto, il redattore può consultare [la pubblicazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/pubblicare-un-contenuto) e [la gestione dei contenuti nascosti o programmati](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/nascondere-o-programmare-un-contenuto).

Quando un redattore pubblica o modifica un contenuto, il CMS invia i dati a Solr tramite chiamate HTTP. Solr aggiorna il proprio indice e la ricerca usa questa copia per mostrare i risultati. Un contenuto assente dall'indice non appare nella ricerca o nei blocchi filtrabili, anche se è presente nel database PostgreSQL.

### Componenti coinvolti

Il CMS è un'applicazione monolitica in PHP. PostgreSQL conserva i contenuti del sito e resta la fonte dei dati. Il CMS usa **Apache Solr** tramite l'estensione **ezfind**. Ogni piattaforma ha un core Solr dedicato, che contiene una copia indicizzata dei contenuti pubblicati. L'architettura include anche Redis, che conserva i dati temporanei delle sessioni, e Varnish, che gestisce la cache HTTP.

### Ricerche e filtri

Il componente **ocsearchtools** usa l'indice Solr per elaborare le ricerche. Traduce le parole inserite dagli utenti nel formato usato dal motore e gestisce la navigazione a faccette, cioè i filtri per sezione e argomento. La ricerca del sito e i blocchi filtrabili interrogano Solr, non PostgreSQL. Per i dataset personalizzati è disponibile il componente **occustomfind**.


# Il pannello strumenti

Il redattore dispone di una sezione personale in cui recuperare le bozze, i contenuti indicati come preferiti e gli ultimi dieci pubblicati sul sito web.

Cliccando sul proprio nome in alto a destra, hai accesso al tuo pannello strumenti.

<figure><img src="/files/3JqBBwh5xNzOvqRLRC3p" alt=""><figcaption></figcaption></figure>

All'interno del pannello strumenti, puoi visualizzare:

* i contenuti indicati come preferiti;

<figure><img src="/files/9mKbqAykeo9ujq9yQlyp" alt=""><figcaption></figcaption></figure>

* le [bozze](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/gestire-le-bozze#recuperare-le-bozze-dal-pannello-strumenti) lasciate in sospeso;

<figure><img src="/files/Be2nQdqHcRm6po3SgnPS" alt=""><figcaption></figcaption></figure>

* gli ultimi dieci contenuti pubblicati sul sito **dal tuo utente**;

<figure><img src="/files/ESKaKrD5ndpe1ZLQ6PiK" alt=""><figcaption></figcaption></figure>

* gli ultimi dieci contenuti pubblicati sul sito **da tutti i redattori.**

{% hint style="info" %}
I contenuti pubblicati da altri utenti sono modificabili in base al [sistema di permessi](/sito-web/la-piattaforma/accedere-alla-piattaforma/attribuzione-dei-permessi) del tuo utente.
{% endhint %}

<figure><img src="/files/JWBiOO7tHoREX3p77E2G" alt=""><figcaption></figcaption></figure>


# Configurare la piattaforma

Prima della messa online della piattaforma, vengono gestiti alcuni passaggi di configurazione, che possono essere successivamente amministrati dai redattori.

Tramite la voce "Amministra" del [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), puoi amministrare alcune configurazioni della piattaforma.

<figure><img src="/files/E50POMXvxcj8z39Dvxlm" alt=""><figcaption></figcaption></figure>


# Scegliere il colore del tema

Il redattore può modificare il tema (colore) del sito web.

Tramite il [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Amministra" (1) e poi su "Gestione tema" (2).

<figure><img src="/files/LaUrnoQW6sn2jRtur9Kx" alt=""><figcaption></figcaption></figure>

Scegli il tema da un elenco, che puoi visualizzare in anteprima sulla destra.

<figure><img src="/files/zqqLlBeVWXKlRvLavo7D" alt=""><figcaption></figcaption></figure>

È possibile configurare "slim header", "header center" e "header navbar" in versione chiara (1). Per confermare le modifiche al tema, clicca sul pulsante "Salva" in basso a destra (2).

<figure><img src="/files/ohRndMLZ4xGA3Noowc77" alt=""><figcaption></figcaption></figure>


# Personalizzare header e footer

Il redattore può modificare i link di header e footer.

Sul [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Amministra" (1) e poi su "Gestione informazioni generali" (2)

<figure><img src="/files/XcIFwep2xHwSKunW1Qbt" alt=""><figcaption></figcaption></figure>

Qui puoi configurare:

* le informazioni generali dell'Ente (numero di telefono, email, indirizzo, codice fiscale...);

<figure><img src="/files/EtwRVpM3Yj5wKSeI51lG" alt=""><figcaption></figcaption></figure>

* i link ai canali social (Facebook, Instagram, YouTube...);

<figure><img src="/files/8mV8yXK8WY2cijKLiiqP" alt=""><figcaption></figcaption></figure>

* il link di integrazione con la piattaforma dei servizi;

<figure><img src="/files/B63eLPnj8Ps7qfxLmkh6" alt=""><figcaption></figcaption></figure>

## Gestire i link dell'header

Per aggiungere un nuovo link, [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) con un link o una pagina del sito.

<figure><img src="/files/bdgt87mFcsw4XkV8EctO" alt=""><figcaption></figcaption></figure>

## Gestire i link del footer

Puoi indicare altri link da riportare all'interno del footer, oltre a quelli già presenti e riguardanti la [Dichiarazione di accessibilità](/sito-web/la-piattaforma/configurare-la-piattaforma/compilare-e-allegare-la-dichiarazione-di-accessibilita), la [Privacy](/sito-web/la-piattaforma/configurare-la-piattaforma/gestione-privacy-e-cookie#privacy) e le Note legali, [creando una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) con un link o una pagina del sito.

{% hint style="warning" %}
Differentemente dagli altri link, quelli riguardanti la dichiarazione di accessibilità, la privacy e le note legali **non possono essere eliminati o inseriti da un redattore**, ma vengono inclusi con la messa online del sito web.
{% endhint %}

<figure><img src="/files/flKWOhqKzF7O6fZJlpAQ" alt=""><figcaption></figcaption></figure>

Per confermare le modifiche, il redattore clicca su "Salva" in basso a destra.

<figure><img src="/files/YN3kNKQlHyTrLr01U9FT" alt=""><figcaption></figcaption></figure>


# Gestione privacy e cookie

Il redattore può gestire le informazioni riguardanti la Privacy e Cookie policy

## Amministrare la Privacy

{% hint style="warning" %}
Per gestire la pagina della Privacy, devi essere abilitato come "Editor homepage" nella sezione [Gestione accessi redazione](/sito-web/la-piattaforma/accedere-alla-piattaforma#attribuzione-dei-permessi).

La creazione, pubblicazione e gestione delle informative **è una responsabilità dell’Ente:** in caso di aggiornamento, è opportuno lasciare sul sito anche quella precedente, riportando in modo chiaro il periodo di validità.
{% endhint %}

La sezione Privacy è il luogo in cui pubblicare le informative privacy dell’Ente relative al sito web e ai servizi digitali.

<figure><img src="/files/DQwKEsfTnjlXUfbA876F" alt=""><figcaption></figcaption></figure>

Tramite il [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore) clicca su "Crea qui" (1) e scegli il tipo di contenuto che vuoi creare (2).

<figure><img src="/files/4uOIyD6Ev0BUuuGSSIsQ" alt=""><figcaption></figcaption></figure>

Una volta selezionato, procedi alla [creazione del contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto).

<figure><img src="/files/d83fVXpPU8Ifxgt7pvxo" alt=""><figcaption></figcaption></figure>

Una volta creati, puoi [modificare i contenuti](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto) presenti nella pagina Privacy.

<figure><img src="/files/graKRpkdJ2ic1eKSj3d8" alt=""><figcaption></figcaption></figure>

## Il documento di trattamento dati

Per facilitare l'attività dell'Ente, OpenCity Italia mette a disposizione un [documento di trattamento dati](https://docs.google.com/document/d/1AoimC9Z2K8tqhUFLTQlclU2zpKU_w2bH_EHg_RXVn6E/edit?usp=sharing) che illustra le funzionalità della piattaforma, le modalità di trattamento dei dati personali, informazioni sui cookie e sulle politiche di sicurezza. L'Ente può utilizzarlo come riferimento per la redazione o l'aggiornamento della propria informativa privacy.

## Dati personali pubblicati sul sito

Se l'Ente riceve una richiesta di cancellazione o di rettifica di dati personali pubblicati sul sito, provvede normalmente a effettuare una istruttoria. Nei casi in cui l'istruttoria riscontri l'effettiva necessità di intervenire, l'Ente può provvedere autonomamente alla modifica del contenuto o alla cancellazione della pagina attraverso le funzionalità di gestione dei contenuti della piattaforma.

I contenuti pubblicati dalla piattaforma possono essere stati copiati o indicizzati da altri siti web. Eventuali richieste di rimozione o deindicizzazione di questi contenuti **devono essere inoltrate dal soggetto interessato direttamente ai siti web in cui i contenuti sono presenti**.

## I cookie della piattaforma

{% hint style="info" %}
Per consentire il funzionamento del sito web, la piattaforma fa uso di cookies che vengono salvati sul dispositivo dell’utente e consentono il funzionamento del software.
{% endhint %}

La versione standard della piattaforma OpenCity Italia **fa utilizzo esclusivo di cookie tecnici,** essenziali per l’utilizzo della piattaforma. L’[elenco dei cookie tecnici](https://docs.google.com/document/d/1AoimC9Z2K8tqhUFLTQlclU2zpKU_w2bH_EHg_RXVn6E/edit?tab=t.0) viene messo a disposizione dell’Ente per la pubblicazione all’interno della [pagina della Privacy](#amministrare-la-privacy).

### Cookie di terze parti

Nel corso della navigazione l’utente potrebbe ricevere sul suo terminale anche cookie di siti diversi (c.d. cookies di terze parti), impostati direttamente da gestori di detti siti web e utilizzati per le finalità e secondo le modalità da questi definiti.

L’Ente ha la facoltà di attivare funzionalità di terze parti che prevedono cookies, come ad esempio, funzionalità di analytics o sistemi che consentono la visualizzazione di porzioni di contenuti provenienti da altri siti web.

L’attivazione di queste funzionalità comporta normalmente l’utilizzo di cookie terze parti o altre modalità di tracciamento secondo le specifiche tecnologie e le modalità di funzionamento.

In questi casi l’Ente che intende utilizzare questi strumenti deve valutare l’impatto in termini di protezione dei dati personale e conseguentemente aggiornare la propria [informativa privacy](#privacy).

ll conferimento dei dati è rimesso alla volontà dell’interessato che decida di navigare sul sito dopo aver preso visione dell’informativa breve contenuta nell’apposito banner. L’interessato può quindi evitare l’installazione dei cookie cliccando sul pulsante "Rifiuta tutti i cookie" nonché attraverso le apposite funzioni disponibili sul proprio browser. La mancata installazione da parte dell’utente comporta il non funzionamento delle funzionalità associate

<figure><img src="/files/ZVKZvkltpSRExB5gcoUW" alt=""><figcaption></figcaption></figure>

L’insieme dei cookie di terze parti installati risulta inoltre sempre accessibile attraverso la funzione "Personalizza i cookie” presente nel footer del sito.

<figure><img src="/files/kcNqBSw94pskRTSdQJgm" alt=""><figcaption></figcaption></figure>

In questa sezione è possibile accettare o rifiutare i cookie di terze parti in uso nel sito web.

<figure><img src="/files/ume6Um9GNfgq7akEPYq6" alt=""><figcaption></figcaption></figure>


# Compilare e allegare la Dichiarazione di accessibilità

Ogni Ente deve pubblicare la Dichiarazione di accessibilità all'interno del proprio sito web.

{% hint style="info" %}
Per maggiori informazioni sulla compilazione della Dichiarazione di accessibilità, ti rimandiamo al corso AgID online "[Siti web accessibili: buone pratiche da seguire](https://www.youtube.com/watch?v=kEhMT7aeNU8\&t=4908s)" e alla [nostra documentazione dedicata](https://docs.google.com/presentation/d/1ZbeBf2Ej8Z1rphgGtoE1F95cA-IpWciRNtVqcQbX2-k/edit?slide=id.g2cc50e876d3_0_112#slide=id.g2cc50e876d3_0_112).
{% endhint %}

## Aggiornare il link alla Dichiarazione di accessibilità

{% hint style="warning" %}
**Entro il 23 settembre**, l'Ente è obbligato a redigere e pubblicare la Dichiarazione di accessibilità, lo strumento attraverso il quale le Amministrazioni rendono pubblico lo stato di accessibilità di ogni sito web e applicazione mobile di cui sono titolari.

La dichiarazione ha validità di un anno, dal 24 settembre, e deve essere accessibile dal [footer del sito](/sito-web/la-piattaforma/configurare-la-piattaforma/personalizzare-header-e-footer#gestire-i-link-del-footer)

**Entro il 20 settembre**, OpenCity Italia mette a disposizione l’Allegato 2 per la Dichiarazione di accessibilità dell’anno corrente e basato sul report di analisi di accessibilità della soluzione:

* [Allegato 2 - Modello Comuni](https://link.opencontent.it/TFxCd);
* [Allegato 2 - Modello ASL](https://link.opencontent.it/ijZhJ);
* [Allegato 2 - Modello Province e Regioni](https://link.opencontent.it/ccBNb).
  {% endhint %}

La Dichiarazione deve essere redatta **esclusivamente** con il [form AGID](https://form.agid.gov.it/home) e ogni anno deve essere riesaminata e, se necessario, aggiornata sulla base dell'Allegato 2 fornito da OpenCity Italia **entro il 20 settembre** e basato sul report di analisi di accessibilità della soluzione.

<figure><img src="/files/Z7Vw6GDa4hkC7tmXFfO1" alt=""><figcaption></figcaption></figure>

Tramite il [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Amministra" (1) e poi su "Libreria media" (2)

<figure><img src="/files/JhGH9iO7Oeg8HH5BNFr4" alt=""><figcaption></figcaption></figure>

Accedi alla pagina "Banner e link" (1) e modifica il link della Dichiarazione di accessibilità cliccando sull'icona di modifica (2)

<div><figure><img src="/files/I4KonN8nhWKcBh0bG68f" alt=""><figcaption></figcaption></figure> <figure><img src="/files/dRLaReHEoQf30laahQga" alt=""><figcaption></figcaption></figure></div>

In questo modo accedi alla modifica il contenuto e puoi sostituire il link con quello nuovo.

<figure><img src="/files/m9cASpMS5OUljFyiCQ89" alt=""><figcaption></figcaption></figure>

## Gli Obiettivi di accessibilità

{% hint style="warning" %}
**Entro il 31 marzo**, l’Ente deve pubblicare gli Obiettivi di accessibilità per l’anno corrente.
{% endhint %}

A supporto dell’Ente, OpenCity Italia pubblica il [Piano di miglioramento delle performance](https://docs.google.com/document/d/1qHuFHx-oBsOA10l3xWd4_P-XxVCgalYQoNPqLK3uyI4/edit), dove vengono riportate le future azioni di miglioramento della piattaforma e le tempistiche di rilascio, mentre Agid fornisce una [Guida alla compilazione degli Obiettivi di accessibilità](https://form.agid.gov.it/home).


# SEO, Analytics e Statistiche

Il redattore può configurare e gestire il SEO e gli analytics del sito.

{% hint style="info" %}
Il sito web, nella sua configurazione nativa, include già i metatag principali necessari per l’indicizzazione da parte dei motori di ricerca e per una corretta condivisione dei contenuti. Questi metatag vengono generati sulla base dei contenuti inseriti nel sito e rispettano gli standard di accessibilità e interoperabilità richiesti per i siti della Pubblica Amministrazione.

Grazie a questa impostazione predefinita, **non è necessario per i redattori** intervenire manualmente nella configurazione dei metatag.
{% endhint %}

Dal [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Amministra" e poi su "Gestione SEO"

<figure><img src="/files/SAzNP41lIlecfjGxWjNU" alt=""><figcaption></figcaption></figure>

## Accesso ai motori di ricerca

{% hint style="warning" %}
La funzione deve essere attivata per far sì che il sito venga indicizzato sui motori di ricerca
{% endhint %}

Attiva l'opzione 'Permetti l'accesso ai motori di ricerca' per rendere il sito indicizzabile e visibile nei risultati di ricerca."

<figure><img src="/files/LlGo1WKXlPZyVFGdZTUU" alt=""><figcaption></figcaption></figure>

## Gestione di Web Analytics Italia

{% hint style="warning" %}
Le Pubbliche Amministrazioni italiane hanno l’obbligo di adottare [Web Analytics Italia](https://webanalytics.italia.it/) (WAI) come strumento per la raccolta e l’analisi dei dati relativi alla navigazione sui propri siti web.

Web analytics Italia (WAI) è una piattaforma nazionale di raccolta e analisi dei dati statistici relativi al traffico dei siti e servizi digitali della Pubblica Amministrazione italiana che consente di:

* uniformare la raccolta di tali dati;
* semplificare l'accesso alle statistiche sul traffico e sul comportamento degli utenti che usano siti e servizi digitali istituzionali;
* fornire agli operatori della PA strumenti ad hoc per agevolare la comprensione di tali informazioni, con l'obiettivo finale di ottimizzare in maniera continua l'esperienza utente.

La piattaforma espone inoltre pubblicamente, e in maniera aggregata, alcuni dei dati che riguardano la fruizione dei servizi digitali della PA da parte dei cittadini.

Il progetto WAI **non raccoglie dati personali**, ad eccezione dell'indirizzo IP per il quale è prevista l'anonimizzazione.

Per garantire statistiche affidabili, WAI esclude le visite alle pagine di errore del sito, in quanto possono essere generate da bot o sistemi automatici.

Per maggiori informazioni, vi invitiamo a consultare il [sito web](https://webanalytics.italia.it/) e le [FAQ](https://webanalytics.italia.it/faq) della piattaforma.
{% endhint %}

Incolla il codice WAI nel campo "Codice Web Analytics Italia".

{% hint style="warning" %}
In caso di sito multilingua, la voce andrà compilata **due volte**
{% endhint %}

<figure><img src="/files/82kqt15MaWmV51DSBIXV" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
E' obbligatorio fare riferimento all'uso di WAI all'interno del [documento di privacy](/sito-web/la-piattaforma/configurare-la-piattaforma/gestione-privacy-e-cookie#amministrare-la-privacy).

Non c'è al momento un formato standard da rispettare, ma in base a quanto indicato da AgiD è necessario:

* Aggiornare l’informativa privacy generale, menzionando l’attivazione del servizio (WAI) in ottemperanza all’art. 13 GDPR
* Inserire un paragrafo specifico su Web Analytics Italia, spiegando finalità, modalità, titolare del trattamento e base giuridica
* Inserire un rinvio diretto alla pagina dell’informativa specifica di WAI: <https://webanalytics.italia.it/privacy>
  {% endhint %}

## Configurare la pagina Statistiche

{% hint style="info" %}
Il sito istituzionale include una pagina dedicata alle **Statistiche** del traffico web, accessibile pubblicamente all'indirizzo `/statistiche`. Questa pagina mostra in forma aggregata i dati di navigazione raccolti tramite [Web Analytics Italia (WAI)](https://webanalytics.italia.it/).

La pagina è generata automaticamente dalla piattaforma: non richiede interventi redazionali sui contenuti, ma deve essere correttamente configurata affinché il tracciamento dei dati sia attivo.
{% endhint %}

Per attivare la pagina Statistiche, compila la voce "Side id WAI" con il site ID fornito da Web Analytics Italia.

{% hint style="warning" %}
In caso di sito multilingua, la voce andrà compilata **due volte**
{% endhint %}

<figure><img src="/files/Nq35iaZwVACM0M9MzACe" alt=""><figcaption></figcaption></figure>

Una volta salvata la modifica, la pagina Statistiche sarà a disposizione tramite link collocato **nel footer del sito**.

<figure><img src="/files/S7k1kCB29wAS1t2nF6ns" alt=""><figcaption></figcaption></figure>

### Cosa mostra la pagina?

La pagina "Statistiche" presenta cinque sezioni con dati aggregati sul traffico del sito, aggiornati automaticamente da WAI. Tutti i dati sono visualizzati in forma **aggregata e anonimizzata**, nel rispetto della normativa sulla privacy.

<details>

<summary><strong>Andamento</strong></summary>

Grafico a linee che mostra l'evoluzione delle **visite** nel tempo.

<figure><img src="/files/0sntjD5gRszINKO0IQXJ" alt=""><figcaption></figcaption></figure>

Puoi modificare la granularità temporale scegliendo tra **Giorno**, **Settimana**, **Mese** e **Anno**.

<div><figure><img src="/files/HlkxDzsp4bvfbH7yiq5D" alt=""><figcaption></figcaption></figure> <figure><img src="/files/JFdX2hmm9nXdQj1viPu4" alt=""><figcaption></figcaption></figure></div>

</details>

<details>

<summary><strong>Ultimo mese</strong></summary>

Un riepilogo delle principali metriche relative al mese in corso, che offre una panoramica rapida dell'andamento complessivo del traffico.

<figure><img src="/files/GeNioDBzHAEk9l7yAVNp" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary><strong>Pagine</strong></summary>

Una tabella con le pagine del sito più visitate, ordinata per numero di visualizzazioni uniche.

Per ciascuna pagina sono riportate le seguenti colonne:

* **URL pagina:** indirizzo della pagina;
* **Visualizzazioni pagina:** numero totale di visualizzazioni, incluse quelle ripetute dello stesso utente;
* **Visualizzazioni uniche**: numero di visualizzazioni da parte di utenti distinti;
* **% rimbalzi**: percentuale di utenti che hanno abbandonato il sito dalla pagina senza compiere ulteriori azioni;
* **Tempo medio sulla pagina:** tempo medio trascorso dagli utenti su quella pagina;
* **% uscite:** percentuale di sessioni in cui quella pagina è stata l'ultima visitata.

<figure><img src="/files/pPhQce3Y8zK1JCT0Z2wt" alt=""><figcaption></figcaption></figure>

Tramite l'icona di configurazione (⚙️) è possibile intervenire su alcune opzioni di visualizzazione della tabella:

* **Rendilo gerarchico / Rendilo piatto:** alterna la vista tra struttura gerarchica degli URL (predefinito) e vista piatta;
* **Visualizza/Nascondi le righe di aggregazione:** mostra o nasconde le righe che raggruppano voci simili;
* **Mostra/Nascondi la riga dei totali:** aggiunge o rimuove la riga di riepilogo in fondo alla tabella;
* **Escludi/Mostra le righe scarsamente popolate:** filtra le pagine con poche visualizzazioni.

<div><figure><img src="/files/xMJbXTEzKHu6LrKWid6i" alt=""><figcaption></figcaption></figure> <figure><img src="/files/zOSCumP7DuodKPK6lC13" alt=""><figcaption></figcaption></figure></div>

Tramite l'icona a griglia è possibile invece modificare la modalità di visualizzazione scegliendo tra: tabella semplice e tabella con le metriche dei Goal (Obiettivi), relativa alle visualizzazioni uniche.

<div><figure><img src="/files/BTqCZZuE32UOCN1Tdnyn" alt=""><figcaption></figcaption></figure> <figure><img src="/files/OoYIC7BRXghMj51njSCz" alt=""><figcaption></figcaption></figure></div>

</details>

<details>

<summary><strong>Tipo di dispositivo</strong></summary>

Una tabella che mostra la distribuzione delle **visite** per categoria di dispositivo utilizzato.

Le categorie rilevate sono: Smartphone, Desktop, Tablet, Phablet, Apparecchio TV, Browser in auto, Console, Feature phone, Fotocamera e Sconosciuto.

<figure><img src="/files/gvK10vHMAZnQ5F5oZaVT" alt=""><figcaption></figcaption></figure>

Tramite l'icona di configurazione (⚙️) è possibile **mostrare o nascondere la riga dei totali** in fondo alla tabella

<div><figure><img src="/files/65tG81hJdSbyRsHl9OXn" alt=""><figcaption></figcaption></figure> <figure><img src="/files/DSZ6fb3L6GMZFbAcjMA4" alt=""><figcaption></figcaption></figure></div>

Tramite l'icona a griglia è possibile modificare la modalità di visualizzazione scegliendo tra: tabella semplice, tabella con più metriche, tabella con le metriche dei Goal (Obiettivi), grafico a barre, diagramma a torta e Tag Cloud.

<div><figure><img src="/files/4uD8x9HNEX3OZFNaV50x" alt=""><figcaption></figcaption></figure> <figure><img src="/files/BLJBSVKnOhNYKupTbNv7" alt=""><figcaption></figcaption></figure></div>

</details>

<details>

<summary><strong>Tipo di canale</strong></summary>

Tabella che mostra da dove provengono le visite al sito, suddivise per canale di ingresso. I canali rilevati includono: Motori di ricerca, Ingressi Diretti, Social Networks, Siti web e Campagne. Per ciascun canale sono riportate le seguenti colonne:

* **Visite:** numero totale di sessioni provenienti dal canale;
* **Azioni nel sito:** numero di pagine o eventi registrati durante quelle sessioni;
* **Azioni per visita:** media delle azioni compiute per singola visita;
* **Tempo medio sul sito**: durata media delle sessioni provenienti da quel canale;
* **% rimbalzi**: percentuale di visite in cui l'utente ha abbandonato il sito senza compiere ulteriori azioni.

<figure><img src="/files/yYg52ygFm4M9BIS7ZtT5" alt=""><figcaption></figcaption></figure>

Tramite l'icona di configurazione (⚙️) è possibile **mostrare o nascondere la riga dei totali** in fondo alla tabella.

<div><figure><img src="/files/vn5wcxHjIQpaBZ5tXlTA" alt=""><figcaption></figcaption></figure> <figure><img src="/files/6IxMt67bYuAXhr3sPGTe" alt=""><figcaption></figcaption></figure></div>

Tramite l'icona a griglia è possibile modificare la modalità di visualizzazione scegliendo tra: tabella semplice, tabella con più metriche, tabella con le metriche dei Goal (Obiettivi), grafico a barre, diagramma a torta e Tag Cloud.

<div><figure><img src="/files/tnpwD5nAoeWCYIpBjlKu" alt=""><figcaption></figcaption></figure> <figure><img src="/files/SBNACRpcOVp8A9NLXoor" alt=""><figcaption></figcaption></figure></div>

</details>


# Funzioni generali di gestione dei contenuti

Il redattore dispone di una serie di funzioni generali per la gestione dei contenuti sul sito

Tramite il [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), disponi di una serie di funzioni che ti permettono di gestire i contenuti pubblicati sul sito web.

<figure><img src="/files/6sTX4HDet10YxGixZ8DV" alt=""><figcaption></figcaption></figure>


# Creare un nuovo contenuto

Il redattore può creare nuovi contenuti sul sito web.

{% hint style="warning" %}
Quando il redattore gestisce i contenuti all'interno del sito web, deve tener conto di una serie di [linee guida](/sito-web/linee-guida/testi-e-linguaggio) riguardanti il linguaggio e l'uso delle immagini.
{% endhint %}

Collocati nella pagina in cui vuole creare l'oggetto e clicca sul pulsante "Crea".

<figure><img src="/files/M3qU5j669bT1Inxy8x85" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Il redattore visualizza il contenuto che può creare in base alla pagina in cui si è collocato.

Ad esempio, se si trova in "Notizie", potrà creare contenuti di tipo "Avviso-Notizia-Comunicato".
{% endhint %}

Una volta effettuata questa azione, il sistema presenta l’interfaccia di inserimenti di un nuovo contenuto, con la lista degli attributi da compilare.

<figure><img src="/files/uNcbOVyGEN0DdleHvDm9" alt=""><figcaption></figcaption></figure>

Dopo aver compilato il contenuto, è possibile [pubblicarlo](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/pubblicare-un-contenuto) oppure [salvarlo come bozza](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/gestire-le-bozze).

## Campi obbligatori

Per creare un contenuto devi compilare **almeno** i campi obbligatori (quelli con l'asterisco).

<figure><img src="/files/vZXMBAKkFSdi3B0hq45v" alt=""><figcaption></figcaption></figure>

Il CMS espone una funzione che permette al redattore di visualizzare solo gli attributi obbligatori di un content type, in modo da velocizzare la produzione di contenuti quando necessario.

<figure><img src="/files/DNx3lyKSkuFO0lEVmyGA" alt=""><figcaption></figcaption></figure>

## Scegliere dell'Argomento

{% hint style="info" %}
Questo sistema permette di popolare le [pagine Argomento](/sito-web/modello-comuni/gestire-le-pagine-argomento-del-comune) presenti sul sito web.

Nel caso del [modello ASL](/sito-web/modello-asl/il-modello-di-sito-per-asl), è necessario classificare i contenuti anche per [tipo di Utente](/sito-web/modello-asl/il-modello-di-sito-per-asl#le-pagine-utente).
{% endhint %}

Durante la creazione di un contenuto, indica l'Argomento di riferimento del contenuto.

<figure><img src="/files/HmPtfxOTRo2toMrsQTkg" alt=""><figcaption></figcaption></figure>


# Modificare un contenuto

Il redattore può modificare i contenuti già pubblicati sul sito

{% hint style="warning" %}
Quando il redattore gestisce i contenuti all'interno del sito web, deve tener conto di una serie di [linee guida](/sito-web/linee-guida/testi-e-linguaggio) riguardanti il linguaggio e l'uso delle immagini.

E' possibile modificare i contenuti pubblicati da altri utenti limitatamente al [sistema di permessi](/sito-web/la-piattaforma/accedere-alla-piattaforma/attribuzione-dei-permessi) del tuo redattore.
{% endhint %}

Una volta raggiunto il contenuto da modificare, clicca su "Modifica".

<div data-full-width="false"><figure><img src="/files/kLKv6tZPveyPl2Mk1GSo" alt=""><figcaption></figcaption></figure></div>

Il redattore cambia le informazioni nei campi che deve modificare e poi [pubblica il contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/pubblicare-un-contenuto).

<div align="right" data-full-width="false"><figure><img src="/files/V49p21ZiqDirw00X5v0P" alt=""><figcaption></figcaption></figure></div>

## Conflitto di modifica

Durante l’attività di gestione dei contenuti, soprattutto nei casi in cui più persone lavorano su uno stesso contenuto o è stata lasciata una bozza in sospeso, può capitare che ci si imbatta in un messaggio che segnala un conflitto di modifica del contenuto.

<figure><img src="/files/6Xe80wIYvvsDeQqSbNwJ" alt=""><figcaption></figcaption></figure>

### Bozza creata dal tuo utente

{% hint style="warning" %}
In casi come questo, è consigliabile continuare a lavorare sulla versione in sospeso piuttosto che crearne una nuova.
{% endhint %}

Nel caso in cui tu abbia lasciato in sospeso una bozza di un contenuto e provassi a creare una nuova versione dello stesso, puoi continuare a modificare la bozza (1) oppure creare un'altra versione (2).

<figure><img src="/files/8kdigStbIVgzZc98srXl" alt=""><figcaption></figcaption></figure>

### Bozza creata da un utente diverso

{% hint style="warning" %}
In casi come questo, **chiedi al proprietario della bozza di annullarla o procedere alla pubblicazione**: creare più versioni di un contenuto porta a casi di conflitto di modifica difficilmente gestibili.

Non puoi pubblicare o annullare le bozze lasciate in sospeso dagli altri redattori.
{% endhint %}

Nel caso in cui un redattore abbia lasciato una bozza in sospeso e tu provassi a creare una nuova versione dell'oggetto, il sistema **non ti permette** di modificare la bozza ma puoi solamente creare una nuova versione.

<figure><img src="/files/8S4POYQuLVdE4T7kRExf" alt=""><figcaption></figcaption></figure>

### Bozza creata da più utenti

{% hint style="warning" %}
In casi come questi, il consiglio è quello di confrontarsi con gli altri utenti che hanno lasciato le bozze in sospeso.

Non puoi pubblicare o annullare le bozze lasciate in sospeso dagli altri redattori.
{% endhint %}

Nel caso in cui tu e altri utenti abbiate lasciato in sospeso più versioni di una stessa bozza, potrai modificare solamente la versione creata da te (1) o procedere alla creazione di una nuova (2)

<figure><img src="/files/diOmc3P7GoRo9PesJkZQ" alt=""><figcaption></figcaption></figure>


# Pubblicare un contenuto

Dopo aver compilato i campi del contenuto, il redattore procede alla pubblicazione della bozza.

Durante la [creazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto) o la [modifica](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto) di un contenuto, puoi:

* pubblicare la bozza (1), che diventa versione corrente dell'oggetto;
* registrare la bozza (2) e continuare a modificarla;
* registrare la bozza e uscire (3), lasciandola tra le [bozze in sospeso](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/gestire-le-bozze);
* annullare la bozza (4);
* recuperare una versione precedente dell'oggetto (5);
* [visualizzare l'anteprima](#visualizzare-lanteprima-delloggetto) del contenuto (6).

<figure><img src="/files/5RrRoqU2zFHZNUQXqxvx" alt=""><figcaption></figcaption></figure>

## Visualizzare l'anteprima dell'oggetto

Clicca su "Anteprima" collocato in alto a destra.

<figure><img src="/files/tzogGirZ5FXRwwFdbkUp" alt=""><figcaption></figcaption></figure>

Nella schermata di anteprima, puoi:

* tornare alla modifica del contenuto (1);
* pubblicare il contenuto sul sito (2).

<figure><img src="/files/yZKQ72pOAA3qPu6ZCSqp" alt=""><figcaption></figcaption></figure>


# Creare relazioni tra contenuti

Il CMS consente di creare relazioni bidirezionali tra contenuti di dettaglio (foglie).

{% hint style="warning" %}
Puoi creare relazioni solamente con i contenuti previsti dal campo: ad esempio, se il campo si chiama "Documenti allegati", puoi creare una relazione solamente con contenuti di tipo "Documento"
{% endhint %}

Durante la [creazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto) o la [modifica](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto) di un contenuto, puoi creare delle relazioni tra questo e un altro contenuto del sito attraverso i campi appositi.

<figure><img src="/files/Td1NVSiQ7PYnArTK29iU" alt=""><figcaption></figcaption></figure>

Per creare una relazione con un oggetto già esistente, clicca su "Seleziona dalla libreria" (1) e poi su "Aggiungi" (2).

<figure><img src="/files/WfvIp2eBtSAmKFjTJhOX" alt=""><figcaption></figcaption></figure>

Se il contenuto non è presente nell'elenco, clicca sul titolo della sezione (3) per navigare all'interno dell'alberatura e selezionare il contenuto specifico.

<figure><img src="/files/0b59PtqehL67heIZRKsF" alt=""><figcaption></figcaption></figure>

Altrimenti, puoi utilizzare il pulsante "Cerca" (4) e inserire il nome del contenuto da associare dopo aver attivato l'opzione "Cerca in tutti i contenuti" (5)

<div data-full-width="true"><figure><img src="/files/INBJQO3Ig1kTq7fGBT21" alt=""><figcaption></figcaption></figure> <figure><img src="/files/q4dYxeITTw2x14mbsllw" alt=""><figcaption></figcaption></figure></div>


# Gestire le bozze

Una bozza è un contenuto che è stato inserito e salvato sul CMS, ma che non è ancora stato pubblicato. Un redattore può gestire solo le proprie bozze.

Puoi recuperare le bozze lasciate in sospeso attraverso:

* il [pannello strumenti](#recuperare-le-bozze-dal-pannello-strumenti);
* la sezione "[Le mie bozze](#recuperare-le-bozze-dalla-pagina-le-mie-bozze)";

## Recuperare le bozze dal pannello strumenti

[Accedi al pannello strumenti](/sito-web/la-piattaforma/il-pannello-strumenti) e cerca la bozza di cui vuoi riprendere la modifica (1). Una volta trovata, clicca sull'icona di modifica a forma di matita (2).

<div data-full-width="true"><figure><img src="/files/25OONitLLj4E0tLOexCC" alt=""><figcaption><p>Ne "Le mie bozze", il redattore trova indicato il nome del contenuto, la tipologia di content type di riferimento, il numero della versione in bozza e la data di ultima modifica</p></figcaption></figure></div>

## Recuperare le bozze dalla pagina "Le mie bozze"

Tramite il [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Amministra" e poi su "Le mie bozze".

<figure><img src="/files/S6z1zm09T00k4B4sTStk" alt=""><figcaption></figcaption></figure>

In questo modo accedi all'elenco delle bozze lasciate in sospeso, dove puoi:

* riprendere la modifica del contenuto (1);
* svuotare l'elenco e cancellare tutte le bozze presenti (2);
* selezionare la bozza da cancellare (3) e poi cliccare su "Elimina" (4).

<figure><img src="/files/LsRKHdJHWOi4S79DyYII" alt=""><figcaption></figcaption></figure>


# Spostare un contenuto

Il redattore può trasferire i contenuti all'interno di altre pagine del sito.

{% hint style="warning" %}
I contenuti possono essere spostati solo all'interno di sezioni o categorie che, secondo il modello, prevedono il relativo content type: ad esempio, non puoi spostare un documento all''interno della sezione "Vivere il Comune".
{% endhint %}

Collocati nella pagina del contenuto che vuoi trasferire e poi clicca su "Sposta".

<figure><img src="/files/lrvyEYCUlii6VZZwkaRt" alt=""><figcaption></figcaption></figure>

In questo modo accedi alla navigazione tra i nodi di contenuto, in cui puoi:

* cliccare sul nodo (1) per visualizzare i contenuti al suo interno;
* usare la funzione di ricerca (2);
* cliccare sulla freccia (3) per spostarsi nell'alberatura dei contenuti.

<figure><img src="/files/l1GxMjj8nXwWa94dnn1j" alt=""><figcaption></figcaption></figure>

Una volta trovata, seleziona la pagina in cui spostare il contenuto (4) e clicca su “Seleziona” (5) per confermare.

<figure><img src="/files/uwuPyvLmYp4AYwEWy88e" alt=""><figcaption></figcaption></figure>


# Copiare un contenuto

Il redattore può creare una copia di un contenuto esistente.

Collocati nella pagina del contenuto di cui vuoi creare una copia, clicca su "Altro" e poi su "Crea una copia dell'oggetto"

<figure><img src="/files/ujakUNvg0z2E9FtNivrT" alt=""><figcaption></figcaption></figure>

Il sistema effettua una copia del contenuto e la apre direttamente nell’[interfaccia di modifica](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto).

<figure><img src="/files/fKq1DdOUoK7AkJDt5hv0" alt=""><figcaption></figcaption></figure>

Una volta modificato il contenuto, è possibile [pubblicare](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/pubblicare-un-contenuto) il contenuto oppure [salvarlo come bozza](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/gestire-le-bozze).


# Eliminare un contenuto

I contenuti possono essere spostati nel cestino o cancellati definitivamente.

Per rimuovere un contenuto, collocati nella pagina del contenuto che vuole cancellare e clicca su usa "Elimina".

<figure><img src="/files/MVIIb8sX091nXORPOVbk" alt=""><figcaption></figcaption></figure>

Il sistema chiede sempre se il contenuto deve essere spostato nel cestino (predefinito) o eliminato definitivamente; per questo secondo caso, disattiva la funzione "Sposta nel cestino"

<figure><img src="/files/43ZIjpQZV1cvxL9RqvCX" alt=""><figcaption></figcaption></figure>

Per rimuovere il contenuto, clicca su "Conferma".

<figure><img src="/files/QBM6BXVfzJKtNmmZ5PAW" alt=""><figcaption></figcaption></figure>

Per accedere successivamente al cestino, dal menù del redattore clicca su "Amministra" (1) e poi su "Cestino" (2).

<figure><img src="/files/I2Qj3AUIEGjbeaUFoFan" alt=""><figcaption></figcaption></figure>

Qui puoi:

* svuotare il cestino (1);
* cancellare i contenuti che hai selezionato (2);
* [ripristinare un contenuto](#ripristinare-un-contenuto) (3).

<figure><img src="/files/8LYw0qCajQ1zeSwgMCqa" alt=""><figcaption></figcaption></figure>

## Ripristinare un contenuto

Per ripristinare un contenuto nel cestino, dal menù del redattore clicca su "Amministra" (1) e poi su "Cestino" (2).

<figure><img src="/files/I2Qj3AUIEGjbeaUFoFan" alt=""><figcaption></figcaption></figure>

Successivamente, clicca sull'icona di ripristino.

<figure><img src="/files/HnLjmLxSwk6ZbAiwqO3I" alt=""><figcaption></figcaption></figure>

In questo modo, puoi scegliere se:

* ripristinare il contenuto nella collocazione originale (1);
* cercare una nuova collocazione (2).

<figure><img src="/files/X3rEfNrRHtPFWSy30aGG" alt=""><figcaption></figcaption></figure>

### Cercare una nuova collocazione

{% hint style="warning" %}
Puoi scegliere solo le pagine che supportano questo tipo di contenuto
{% endhint %}

Se scegli di cercare una nuova collocazione al contenuto, ti verrà chiesto di selezionare la nuova pagina in cui ripristinare il contenuto cancellato.

<figure><img src="/files/wJgg1HXPsYJ8MKkZeXts" alt=""><figcaption></figcaption></figure>

Seleziona la pagina in cui ripristinare il contenuto (1) e poi clicca su "Seleziona" (2).

<figure><img src="/files/S1clWD4MPT6dQpTqaMQK" alt=""><figcaption></figcaption></figure>


# Nascondere o programmare un contenuto

Il redattore può nascondere alcuni contenuti pubblicati sul sito web.

## I contenuti nascosti

Un contenuto nascosto non viene visualizzato dai cittadini che navigano il sito web. È comunque visibile ai redattori, che possono gestirlo come qualsiasi altro contenuto. Per distinguerlo dai quelli pubblici, il contenuto nascosto è visualizzato come semi-trasparente all'interno della pagina in cui è stato pubblicato.

<figure><img src="/files/0BIVXMKwpo3KjDnQHQR9" alt=""><figcaption></figcaption></figure>

Per nascondere un contenuto, puoi:

* usare la [funzione dedicata](#nascondere-un-contenuto), impostandolo in stato "Privato";
* [programmare la pubblicazione](#programmare-la-pubblicazione-di-un-contenuto) del contenuto.

{% hint style="warning" %}
Quest'ultima funzione è disponibile **solamente** per i content type [Avviso-Notizia-Comunicato](/sito-web/modello-comuni/comunicare-le-novita-del-comune) e [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) per i modelli Comuni e Province e regioni, per il content type "[Notizia-Comunicato](/sito-web/modello-asl/comunicare-le-novita-della-asl)" per il modello ASL
{% endhint %}

## Impostare come "privato" un contenuto

Nel [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore) clicca su "Imposta come privato".

<figure><img src="/files/HjxDRdl8yJXl3yeSWQJI" alt=""><figcaption></figcaption></figure>

### Rendere visibile un contenuto

Nel caso in cui il contenuto sia stato nascosto [tramite funzione dedicata](#nascondere-un-contenuto), puoi renderlo nuovamente visibile agli utenti attraverso lo stesso comando, che prende il nome di "Imposta come pubblico".

<figure><img src="/files/SA7OLErLP1uHjbvyJA8R" alt=""><figcaption></figcaption></figure>

## Programmare la pubblicazione di un contenuto

Alcuni contenuti dispongono di un campo "Data di pubblicazione" con cui puoi indicare la data a partire dalla quale il contenuto verrà visualizzato sul sito web.

{% hint style="info" %}
Il campo viene normalmente compilato con la data di creazione del contenuto.
{% endhint %}

<div data-full-width="true"><figure><img src="/files/BW4ubRepLUxS9FBnSUEW" alt=""><figcaption></figcaption></figure></div>

Se imposti una data di pubblicazione futura, il contenuto viene salvato con lo stato **Pianificato**. Il sistema lo pubblica automaticamente alla data indicata, senza alcun intervento da parte tua. Nel menù del redattore la voce "scheduled" segnala che il contenuto è in attesa di pubblicazione.

<figure><img src="/files/8S2YOMfGYkeAp5nTyOvO" alt=""><figcaption></figcaption></figure>

Tramite il campo "Data di scadenza", invece, puoi indicare la data a partire dalla quale il contenuto non verrà più visualizzato sul sito web.

{% hint style="warning" %}
Per rendere visibile nuovamente un contenuto scaduto, aggiorna la data di scadenza oppure rimuovila.
{% endhint %}

<div data-full-width="true"><figure><img src="/files/YkesN2N0YOBngGxirBOG" alt=""><figcaption></figcaption></figure></div>

Alla scadenza, il sistema nasconde il contenuto automaticamente e lo imposta nello stato **Scaduto**. Il contenuto rimane visibile ai redattori ma non è accessibile dai cittadini. Nel menù del redattore compare la voce "expired".

<figure><img src="/files/8ihjQ7haeAbZEHVUQLwr" alt=""><figcaption></figcaption></figure>


# Ripristinare la versione precedente di un contenuto

Il redattore dispone di due funzioni di ripristino di una versione archiviata di un contenuto.

{% hint style="info" %}
Ogni volta che crei o modifichi un contenuto produci una versione dell'oggetto; quella precedente viene archiviata.

Il sistema tiene conto delle ultime 10 versioni pubblicate per ogni oggetto e permette al redattore di ripristinarne una precedente.
{% endhint %}

Puoi ripristinare una versione archiviata di un contenuto:

* [attraverso il menù del redattore](#ripristinare-una-versione-da-menu-del-redattore);
* [durante la modifica del contenuto](#ripristinare-la-versione-in-fase-di-modifica-del-contenuto).

## Ripristinare una versione da menù del redattore

Nel [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), clicca su "Altro" e poi su "Amministra versioni".

<figure><img src="/files/YxASuN2jUhisjAi94uaT" alt=""><figcaption></figcaption></figure>

In questo modo accedi all'elenco delle ultime dieci versioni dell’oggetto. Le versioni precedenti sono indicate in stato "Archiviata" (1); l'ultima in elenco è sempre la versione pubblicata (2).

{% hint style="info" %}
Nell'elenco il redattore visualizza gli utenti che hanno creato le versioni precedenti. È possibile ripristinare anche le versioni create da altri redattori.
{% endhint %}

<figure><img src="/files/1Fe4wv0saSIuMcAZidJJ" alt=""><figcaption></figcaption></figure>

Per ripristinare una versione archiviata, il redattore clicca sulla funzione di “[Copia](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/copiare-un-contenuto)” collocata a destra.

<figure><img src="/files/NyGgWlbn2x0ErupmPoCZ" alt=""><figcaption></figcaption></figure>

Il redattore accede così alla [modifica del contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto) e crea una nuova versione dell’oggetto, che diventerà quella pubblicata.

## Ripristinare la versione durante la modifica del contenuto

Durante la [modifica del contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto), il redattore clicca sulla funzione "Amministra versioni" collocata in alto a destra.

<figure><img src="/files/fRJHxWlYyJ7ETb0R0Sqz" alt=""><figcaption></figcaption></figure>

Anche in questo caso il redattore visualizza l'elenco di tutte le versioni create. L'ultima in elenco, però, non sarà quella pubblicata ma una versione in bozza, dato che siamo passati per la schermata di modifica del contenuto.

<figure><img src="/files/wjiXTOr8H3zcswMx8gD7" alt=""><figcaption></figcaption></figure>

Anche in questo caso, per ripristinare una versione archiviata, il redattore clicca sulla funzione di "[Copia](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/copiare-un-contenuto)" collocata sulla destra e accede alla modifica della versione che sta ripristinando.

<figure><img src="/files/UkXOfbHEXM7srPJ5aRDr" alt=""><figcaption></figcaption></figure>


# Ordinare un elenco di contenuti

Il redattore dispone di una funzione di ordinamento dei contenuti presenti in una pagina.

Per gestire l'ordinamento, clicca sul pulsante "Ordina" del [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore).

<figure><img src="/files/yb8YMD4bAclZamfRL3x1" alt=""><figcaption></figcaption></figure>

Disponi di più opzioni di ordinamento dei contenuti, tra cui:

* **Nome**: ordine alfabetico;
* **Pubblicato**: ordine cronologico in base alla data di pubblicazione;
* **Modifica**: ordine cronologico in base alla data di modifica;
* [**Priorità**](#ordinare-per-priorita): in questa modalità è possibile ordinare i contenuti manualmente assegnando una priorità ad ognuno di essi.

## Scegliere il tipo di ordinamento

Per modificare il tipo di ordinamento, devi indicare:

* il criterio di ordinamento (1);
* il verso di ordinamento (2).

<figure><img src="/files/VQJtB3G6NLDETNt6wJGB" alt=""><figcaption></figcaption></figure>

Una volta selezionato criterio e verso dell'ordinamento, clicca su "Imposta" per confermare le modifiche.

<figure><img src="/files/pjZIqCH6PWpkpIH3qTqn" alt=""><figcaption></figcaption></figure>

## Ordinare per priorità

Per ordinare per priorità, [seleziona il criterio di ordinamento](#scegliere-il-tipo-di-ordinamento) corretto ("Priorità").

<figure><img src="/files/EKoW6U5leVQy3yvL0IxO" alt=""><figcaption></figcaption></figure>

Una volta impostato il nuovo criterio, indica la priorità di visualizzazione (1) e clicca su "Aggiorna priorità" (2).

<figure><img src="/files/RsMIHz5F4IybkpLCQk6A" alt=""><figcaption></figcaption></figure>

Puoi ordinare i contenuti della pagina anche tramite *drag and drop*.

<figure><img src="/files/X8W8cqS2uTtEbUeW9jxT" alt=""><figcaption></figcaption></figure>


# Gestire la customer satisfaction

Il cittadino può valutare in maniera anonima la chiarezza informativa delle pagine del sito e dei servizi digitali.

{% hint style="info" %}
Le valutazioni anonime raccolte dai cittadini rappresentano uno strumento utile per monitorare la qualità percepita dei contenuti pubblicati sul sito.

Queste indicazioni possono essere utilizzate per programmare revisioni periodiche, con l’obiettivo di aggiornare e migliorare le informazioni offerte, garantendo così contenuti sempre chiari, pertinenti e rispondenti ai reali bisogni degli utenti.
{% endhint %}

## Commentare la chiarezza informativa del sito e dei servizi

In tutte le pagine del sito ad accesso libero è presente un *widget* che consente al cittadino di valutare la chiarezza informativa della pagina o del servizio in cui si trova,

<figure><img src="/files/4S4nEUqQ2NQPRovt682G" alt=""><figcaption></figcaption></figure>

Il cittadino attribuisce un punteggio (da 1 a 5) e seleziona una delle risposte preimpostate.

<div><figure><img src="/files/SQCwkLtZtHhuy8diLDbE" alt=""><figcaption></figcaption></figure> <figure><img src="/files/ewsD7yWwMhORUG4cmnf1" alt=""><figcaption></figcaption></figure></div>

Nello step successivo, può inserire dei dettagli aggiuntivi alla risposta che ha indicato.

<figure><img src="/files/bFRgenh7PpCE6RbTiiSt" alt=""><figcaption></figcaption></figure>

## Gestire le valutazioni anonime

Le valutazioni anonime vengono raccolte all'interno di un *file* dedicato e fornito all'Ente con la messa online della piattaforma.

Il file è composto da cinque fogli, che ti permettono di:

* leggere i commenti inseriti dai cittadini ("[Recensioni](#analizzare-le-recensioni)");
* analizzare i punteggi di ogni contenuto del sito ("[Pagine del sito](#esaminare-i-punteggi)");
* esaminare il numero e la tipologia di valutazione inserite per ogni pagina del sito ("[Analisi per pagina](#analizzare-le-pagine)");
* analizzare i punteggi e i commenti inseriti per i servizi digitali forniti ("[Servizi digitali](#visualizzare-i-servizi-digitali)");
* controllare quante volte sono state aggiunte delle valutazioni anonime ("[Quanto è usato Satisfy](#esaminare-lutilizzo-del-widget)?").

## Leggere le recensioni

Nel foglio "Recensioni" vengono elencate le pagine del sito per cui sono stati aggiunti dei commenti.

<figure><img src="/files/gKlf7eRwTHWmhR0HzOdG" alt=""><figcaption></figcaption></figure>

Per ogni pagina, viene indicato:

* l'indirizzo del contenuto sul sito (1);
* la data di inserimento del commento (2);
* la valutazione indicata (3);
* il commento inserito (4).

<figure><img src="/files/gerfxUiRLSKH5dONq7Mk" alt=""><figcaption></figcaption></figure>

## Analizzare i punteggi

Nel foglio "Pagine del sito" vengono elencate le pagine del sito che hanno ricevuto una valutazione negli ultimi dodici mesi.

<figure><img src="/files/X9RM5Xza7IYAzBXVgDfU" alt=""><figcaption></figcaption></figure>

Per ogni pagina, viene indicato:

* la URI (1);
* il titolo (2);
* il numero di valutazioni (3);
* la media delle valutazioni (4).

<figure><img src="/files/pWD25f2uLft7ysep4sSS" alt=""><figcaption></figcaption></figure>

## Esaminare le pagine del sito

Nel foglio "Analisi per pagina" puoi selezionare una pagina del sito (1), visualizzare il numero e la media di valutazioni inserite negli ultimi dodici mesi (2) e il numero di volte che è stata selezionata una risposta negativa (3).

{% hint style="warning" %}
La media delle valutazioni non è disponibile (n/a) se per la pagina:

* non ci sono valutazioni;
* ci sono poche valutazioni .
  {% endhint %}

<figure><img src="/files/YW8n55HFwV6QgDmKU2W1" alt=""><figcaption></figcaption></figure>

Alla voce "Recensioni della pagina", invece, vengono indicati:

* la data di inserimento della valutazione (1);
* il punteggio inserito (2);
* la risposta selezionata (3).

<figure><img src="/files/AzgMZ1jJ16dc0j1Sq7to" alt=""><figcaption></figcaption></figure>

## Analizzare i servizi digitali

Nel foglio "Servizi digitali" trovi elencati tutti i servizi digitali che hanno ricevuto almeno una valutazione al termine del loro utilizzo negli ultimi dodici mesi.

<figure><img src="/files/nFzQe9vdgfFI5P5uniU7" alt=""><figcaption></figcaption></figure>

Per ogni servizio valutato, vengono indicati:

* il titolo (1);
* la data di inserimento della valutazione (2);
* il numero di valutazioni inserite (3);
* la media delle valutazioni inserite (4).

<figure><img src="/files/kHDnnIVmW2d9mvqCBAun" alt=""><figcaption></figcaption></figure>

## Esaminare l'utilizzo del widget

Nel foglio "Quanto è usato Satisfy?" trovi indicato il numero di volte che è sono state inserite delle valutazioni negli ultimi dodici mesi.

{% hint style="info" %}
Le valutazioni inserite per il sito web vengono raccolte in un'unica riga, mentre viene dedicata una riga per ogni servizio digitale valutato
{% endhint %}

<figure><img src="/files/HXLPpoDZ3ftTCrFLR4a9" alt=""><figcaption></figcaption></figure>


# Amministrare la trasparenza

Per gli Enti che ne fanno richiesta viene messa a disposizione la sezione di Amministrazione Trasparente.

L'Amministrazione Trasparente è una sezione del sito web che consente all'ente di rendere disponibili al pubblico tutti i documenti, le informazioni e i dati soggetti a pubblicazione obbligatoria ai sensi del d.lgs. 33/2013. La struttura dell'alberatura è definita da ANAC e [mantenuta aggiornata](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/aggiornamenti-anac) da OpenCity Italia.

<figure><img src="/files/7uLk6Jwei96FeZSon1MQ" alt=""><figcaption></figcaption></figure>

## Un sistema integrato che si alimenta con i contenuti del sito

A differenza di quanto avviene in molti sistemi, la sezione Amministrazione Trasparente non è un ambiente separato da gestire in modo autonomo: si tratta di un sistema integrato che raccoglie e organizza in modo coerente le informazioni già presenti nel sito.

Molti contenuti pubblicati nelle sezioni ordinarie del sito, come statuti, regolamenti, disciplinari, bandi di concorso, deliberazioni, determinazioni e documenti di bilancio, [**confluiscono automaticamente nelle voci previste dalla normativa**](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/visualizzazione-automatica-dei-contenuti-in-amministrazione-trasparente), senza che il redattore debba intervenire manualmente una seconda volta.

Quando necessario, rimane comunque possibile [pubblicare contenuti](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pubblicare-un-documento-in-amministrazione-trasparente) direttamente nella sezione Trasparenza, per garantire la massima aderenza agli obblighi previsti.


# Obblighi ANAC e come OpenCity risponde

Ogni amministrazione pubblica deve rendere disponibili online i propri dati e documenti soggetti a pubblicazione obbligatoria. L'obbligo nasce dal d.lgs. 33/2013 e la struttura delle sezioni è quella dell'Allegato 1 della delibera ANAC 1310/2016, aggiornata dalle delibere più recenti (n. 495/2024 e n. 481/2025).

In OpenCity non devi costruire questa struttura né ricaricare i contenuti uno per uno. La sezione Amministrazione Trasparente è già pronta, allineata al modello ANAC, e si alimenta in gran parte da sola con i contenuti che pubblichi nelle pagine ordinarie del sito.

{% hint style="info" %}
L'alberatura delle sezioni è definita da ANAC e mantenuta aggiornata da OpenCity Italia. Quando ANAC cambia uno schema di pubblicazione, i template vengono adeguati senza che tu debba intervenire sulla struttura. Trovi lo storico nel capitolo Aggiornamenti ANAC.
{% endhint %}

## I tre modi in cui un contenuto arriva in Trasparenza

Prima di scorrere le sezioni, è utile avere chiari i tre meccanismi con cui un dato finisce nella pagina giusta. Li ritrovi citati in tutta la tabella che segue.

1. **Confluenza automatica.** Pubblichi un contenuto in una pagina ordinaria del sito (per esempio una determinazione in "Documenti e dati") e una regola di rappresentazione lo richiama da sola nella pagina di Trasparenza corretta. Non fai nulla in più.
2. **Pubblicazione diretta.** Per i contenuti che la normativa prevede solo in Trasparenza, crei il documento direttamente nella pagina della sezione.
3. **Collocazione aggiuntiva.** Un contenuto già pubblicato altrove deve comparire anche in Trasparenza: aggiungi una seconda collocazione senza duplicare il file.

{% hint style="success" %}
La regola pratica: se un dato esiste già altrove nel sito, quasi sempre confluisce in Trasparenza senza un secondo caricamento. Pubblichi una volta, resti conforme.
{% endhint %}

## La mappa: obbligo ANAC → funzione OpenCity

La tabella scorre le voci di primo livello dell'Amministrazione Trasparente nell'ordine in cui le trovi nel sito. Per ognuna trovi cosa chiede la norma e come la copri in piattaforma.

| Sezione ANAC                                                                                                                                                            | Come la copri in OpenCity                                                                                                                                                        |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Disposizioni generali](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Disposizioni-generali)                                                            | Statuti, regolamenti e disciplinari pubblicati come documenti confluiscono in "Atti generali". Il PIAO e il codice di condotta si pubblicano come documenti dedicati.            |
| [Organizzazione](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Organizzazione)                                                                          | Le schede Persona e Unità organizzativa popolano "Titolari di incarichi politici" e "Articolazione degli uffici". I punti di contatto alimentano "Telefono e posta elettronica". |
| [Consulenti e Collaboratori](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Consulenti-e-collaboratori)                                                  | Pubblicazione diretta dei provvedimenti di incarico nella sezione dedicata.                                                                                                      |
| [Personale](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Personale)                                                                                    | Pubblicazione diretta di dotazione organica, tassi di assenza e contrattazione.                                                                                                  |
| [Bandi di concorso](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Bandi-di-concorso)                                                                    | I documenti di tipologia "Bando di concorso" confluiscono automaticamente nella pagina.                                                                                          |
| [Performance](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Performance)                                                                                | Pubblicazione diretta di Piano e Relazione sulla performance.                                                                                                                    |
| [Enti Controllati](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Enti-controllati)                                                                      | Pubblicazione diretta dei dati su partecipate ed enti vigilati.                                                                                                                  |
| [Attività e Procedimenti](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Attivita-e-procedimenti)                                                        | Pubblicazione diretta delle tipologie di procedimento.                                                                                                                           |
| [Provvedimenti](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Provvedimenti)                                                                            | Deliberazioni e determinazioni confluiscono in "Provvedimenti organi di indirizzo politico" e "Provvedimenti dirigenti", con numerazione inserita dalla piattaforma.             |
| [Controlli sulle Imprese](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Controlli-sulle-imprese)                                                        | Pubblicazione diretta dei dati sui controlli alle imprese.                                                                                                                       |
| [Bandi di gara e contratti](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Bandi-di-gara-e-contratti)                                                    | Pubblicazione degli atti delle procedure di affidamento.                                                                                                                         |
| [Sovvenzioni, contributi, sussidi, vantaggi economici](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Sovvenzioni-contributi-sussidi-vantaggi-economici) | Pubblicazione diretta dell'albo dei beneficiari.                                                                                                                                 |
| [Bilanci](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Bilanci)                                                                                        | I documenti "Bilancio preventivo" e "Bilancio consuntivo" confluiscono automaticamente.                                                                                          |
| [Beni immobili e gestione patrimonio](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Beni-immobili-e-gestione-patrimonio)                                | Pubblicazione diretta del patrimonio e dei canoni.                                                                                                                               |
| [Controlli e rilievi sull'Amministrazione](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Controlli-e-rilievi-sull-amministrazione)                      | Pubblicazione dei rilievi degli organi di controllo e della Corte dei conti, secondo lo schema dell'art. 31.                                                                     |
| [Servizi erogati](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Servizi-erogati)                                                                        | Pubblicazione diretta di carta dei servizi, costi e tempi medi.                                                                                                                  |
| [Pagamenti dell'Amministrazione](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Pagamenti-dell-amministrazione)                                          | IBAN, indicatori di tempestività e dati sui pagamenti secondo lo schema dell'art. 4-bis.                                                                                         |
| [Opere Pubbliche](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Opere-pubbliche)                                                                        | Pubblicazione diretta di programmazione e stato di avanzamento.                                                                                                                  |
| [Pianificazione e governo del territorio](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Pianificazione-e-governo-del-territorio)                        | Pubblicazione diretta degli atti di pianificazione urbanistica.                                                                                                                  |
| [Informazioni Ambientali](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Informazioni-ambientali)                                                        | Pubblicazione diretta dei dati ambientali.                                                                                                                                       |
| [Interventi straordinari e di emergenza](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Interventi-straordinari-e-di-emergenza)                          | Pubblicazione diretta dei provvedimenti contingibili e urgenti.                                                                                                                  |
| [Altri contenuti](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Altri-contenuti)                                                                        | Prevenzione corruzione, accesso civico, registro degli accessi, accessibilità e dati ulteriori.                                                                                  |

{% hint style="info" %}
Le regole di rappresentazione che governano la confluenza automatica sono gestite da OpenCity Italia. Se un contenuto che ti aspetti non compare nella pagina di Trasparenza, contatta il supporto: di norma si tratta di una tipologia di documento da agganciare alla regola.
{% endhint %}

## Tre sezioni viste da vicino, con un caso concreto

Per capire come lavori davvero, ecco tre sezioni che usano i tre meccanismi diversi.

### Provvedimenti — confluenza automatica

**Cosa chiede ANAC.** L'elenco dei provvedimenti finali adottati dagli organi di indirizzo politico e dai dirigenti.

**Come la copri.** Pubblichi le deliberazioni e le determinazioni come documenti nelle pagine ordinarie. Le regole di rappresentazione le richiamano da sole nelle pagine "Provvedimenti organi di indirizzo politico" e "Provvedimenti dirigenti", in ordine di data. Il numero della determinazione lo inserisce la piattaforma.

**Esempio.** L'ufficio segreteria del Comune carica le determinazioni dirigenziali della settimana in "Documenti e dati". Senza nessun passaggio aggiuntivo, le stesse determinazioni compaiono già ordinate nella pagina di Trasparenza, con numero, data e file allegato.

### Pagamenti dell'amministrazione — schema ANAC aggiornato

**Cosa chiede ANAC.** I dati sull'utilizzo delle risorse pubbliche secondo lo schema dell'art. 4-bis, rivisto con la delibera 481/2025.

**Come la copri.** Compili il template aggiornato. Nel campo "Beneficiario" non serve più il codice fiscale: selezioni se si tratta di persona fisica, altro soggetto pubblico o privato, oppure soggetto estero.

**Esempio.** L'ufficio ragioneria pubblica i pagamenti del trimestre. Per un contributo a un'associazione locale seleziona "Altro soggetto pubblico e privato", senza esporre dati identificativi non più richiesti dalla norma.

### Altri contenuti, Accesso civico — pubblicazione diretta

**Cosa chiede ANAC.** Il registro degli accessi e i riferimenti del Responsabile, aggiornati e consultabili.

**Come la copri.** Crei il documento direttamente nella sezione "Altri contenuti", con la data di aggiornamento valorizzata.

**Esempio.** L'ufficio protocollo carica ogni semestre il registro degli accessi civici in formato aperto. Chi consulta il sito vede subito le richieste evase e i tempi di risposta, senza dover presentare una nuova istanza.

## Pubblicare non basta: la qualità del dato

ANAC non verifica solo che un dato ci sia, ma anche come è pubblicato. L'art. 6 del d.lgs. 33/2013 chiede quattro requisiti, che valgono per ogni sezione della Trasparenza:

* **semplicità di consultazione**, cioè dati organizzati in modo da trovarli con facilità;
* **comprensibilità**, cioè un contenuto chiaro e leggibile;
* **formato aperto**, cioè dati riutilizzabili e accessibili senza filtri;
* **attualità**, cioè informazioni aggiornate rispetto al procedimento.

In concreto, un file scansionato come immagine non soddisfa il requisito di riutilizzabilità, anche se il contenuto è corretto: chi consulta il sito non può estrarne i dati. Quando carichi un documento in Trasparenza, preferisci sempre un formato aperto e tieni valorizzata la data di aggiornamento.

{% hint style="info" %}
Per i passaggi operativi vedi i capitoli Visualizzazione automatica dei contenuti, Pubblicare un documento e Aggiungere una collocazione.
{% endhint %}


# Aggiornamenti ANAC

Qui trovi elencate le modifiche effettuate in Amministrazione Trasparente sulla base delle delibere dell'Autorità Nazionale Anticorruzione

{% hint style="info" %}
Questo paragrafo raccoglie gli aggiornamenti agli schemi di pubblicazione introdotti dall'ANAC nel tempo, con indicazione delle modifiche apportate alla piattaforma Opencity Italia per garantire la conformità agli obblighi di trasparenza.
{% endhint %}

## Delibera n. 495 del 25 settembre 2024

ANAC ha approvato gli **schemi di pubblicazione obbligatoria** ai sensi dell'articolo 48 del D.Lgs. 14 marzo 2013, n. 33, con riferimento ai seguenti articoli:

* Art. 4-bis (utilizzo delle risorse pubbliche);
* Art. 13 (organizzazione);
* Art. 31 (controlli su attività e organizzazione).

In recepimento di questa delibera, Opencity Italia ha introdotto **template standardizzati** e **aggiornato le linee guida al redattore** per facilitare la pubblicazione dei dati richiesti.

{% hint style="info" %}
Per approfondimenti sulla gestione degli schemi di pubblicazione, ti rimandiamo al [capitolo dedicato](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/gestire-gli-schemi-di-pubblicazione).
{% endhint %}

## Delibera n. 481 del 3 dicembre 2025

ANAC ha **aggiornato gli schemi di pubblicazione relativi all'art. 4-bis e all'art. 31**, già definiti con la Delibera n. 495/2024.

Le modifiche riguardano i template utilizzati per la pubblicazione dei dati nella sezione "Amministrazione Trasparente":

### **Dati sui pagamenti (art. 4-bis)**

{% hint style="info" %}
Per approfondire la gestione di questa pagina, [leggi il capitolo dedicato](https://docs.opencityitalia.it/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pages/PjhwmeyYfX81FG0F3I6R#id-1.-art.-4-bis-utilizzo-delle-risorse-pubbliche).
{% endhint %}

Nel campo "Beneficiario" non è più richiesto l'inserimento del codice fiscale. Il redattore può ora selezionare una delle seguenti voci:

* Persona fisica;
* Altro soggetto pubblico e privato;
* Soggetto estero.

### **Corte dei conti (art. 31)**

{% hint style="info" %}
Per approfondire la gestione di questa pagina, [leggi il capitolo dedicato](https://docs.opencityitalia.it/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pages/PjhwmeyYfX81FG0F3I6R#id-3.-art.-31-controlli-su-attivita-e-organizzazione).
{% endhint %}

È stato eliminato il campo "Recepimento o meno del rilievo da parte dell'amministrazione" dal template e dal dataset relativo ai controlli della Corte dei conti.


# Gestire le Pagine di Trasparenza

La sezione di Amministrazione Trasparente è suddivisa in "Pagine di Trasparenza", composte a loro volta da:

* una Guida per il cittadino;

<figure><img src="/files/1dGy0kZK7bsvGOEkkjrn" alt=""><figcaption></figcaption></figure>

* una Guida per il redattore;

<figure><img src="/files/oLwpIHFkLNPjaFsDEUUc" alt=""><figcaption></figcaption></figure>

* [Note di trasparenza](#aggiungere-una-nota-di-trasparenza);

<figure><img src="/files/P4wY727VxGF2xXjhXWTT" alt=""><figcaption></figcaption></figure>

* una [tabella di rappresentazione dei contenuti](#visualizzazione-automatica-dei-contenuti) (opzionale).

<figure><img src="/files/Vn9npKjYjsJfIKEYRh3v" alt=""><figcaption></figcaption></figure>

## Configurare le Pagine di Trasparenza

I redattori a cui è stato attivato l'editor "Struttura Amministrazione Trasparente" possono [modificare](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/modificare-un-contenuto) le pagine di trasparenza già esistenti, così come [crearne di nuove](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto).

<div><figure><img src="/files/FQiWCHKta6lqhVgcR3cl" alt=""><figcaption></figcaption></figure> <figure><img src="/files/hRcbeMBP71r8XebcgrLJ" alt=""><figcaption></figcaption></figure></div>


# Visualizzazione automatica dei contenuti in Amministrazione Trasparente

Alcune pagine di Trasparenza sono impostate per visualizzare automaticamente alcuni contenuti pubblicati all'interno del sito:

Il campo "Regole di rappresentazione dei dati", indica la tipologia di contenuto che deve essere richiamata dal sito e l'ordinamento che questi contenuti devono avere all'interno della pagina di trasparenza.

{% hint style="warning" %}
La gestione e l'eventuale modifica delle regole di rappresentazione dei dati è a carico di OpenCity Italia
{% endhint %}

{% hint style="info" %}
Nell'esempio riportato in immagine, la query richiama all'interno della pagina di trasparenza tutti i documenti (|document|) di tipologia "Bando di concorso" (filters:document\_type='"Bando di concorso"'), ordinati per data di inizio pubblicazione (order\_by:-publication\_start\_time) e di cui vengono mostrati in tabella data di pubblicazione, titolo, descrizione breve e file allegato (|publication\_start\_time, name, abstract, file|).
{% endhint %}

Le regole di rappresentazione già presenti sono:

* "Atti generali/Riferimenti normativi su organizzazione e attività": tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Statuto" e "Regolamento";
* Atti generali/Codice disciplinare e codice di condotta: tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Disciplinare";
* Titolari di incarichi politici, di amministrazione, di direzione o di governo/Titolari di incarichi politici di cui all'art.14, co.1, del d.lgs n. 33/2013: tutte le persone che hanno un [ruolo attivo](/sito-web/modello-comuni/gestire-il-personale-e-i-politici-del-comune/configurare-i-ruoli-amministrativi-e-politici) come "Sindaco" oppure un ruolo attivo presso la Giunta e il Consiglio comunale;
* Articolazione degli uffici: tutte le organizzazioni di [tipologia](/sito-web/modello-comuni/gestire-lorganigramma-del-comune) "Ufficio";
* Telefono e posta elettronica: tutti i punti di contatto delle unità organizzative di tipo "Ufficio";
* Titolari di incarichi dirigenziali amministrativi di vertice: tutte le persone che hanno [ruolo attivo](/sito-web/modello-comuni/gestire-il-personale-e-i-politici-del-comune/configurare-i-ruoli-amministrativi-e-politici) "Segretario generale" o "Segretario comunale";

{% hint style="info" %}
Per il modello ASL, i ruolo richiamati saranno "Direttore generale", "Direttore sanitario" e "Direttore amministrativo"
{% endhint %}

* Titolari di incarichi dirigenziali (dirigenti non generali): tutte le persone che hanno un [ruolo attivo](/sito-web/modello-comuni/gestire-il-personale-e-i-politici-del-comune/configurare-i-ruoli-amministrativi-e-politici), di tipo "incarico dirigenziale";
* Dirigenti cessati: tutte le persone che hanno un [ruolo scaduto](/sito-web/modello-comuni/gestire-il-personale-e-i-politici-del-comune/configurare-i-ruoli-amministrativi-e-politici), di tipo "incarico dirigenziale";
* Posizioni organizzative: tutte le persone che hanno un [ruolo attivo](/sito-web/modello-comuni/gestire-il-personale-e-i-politici-del-comune/configurare-i-ruoli-amministrativi-e-politici), di tipo "posizione organizzativa";
* Tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Bando di concorso";
* Provvedimenti organi indirizzo politico: tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Deliberazione" (o sotto-tipologie);
* Provvedimenti dirigenti: tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Determinazione" (o sotto-tipologie);

{% hint style="info" %}
Il numero di determinazione viene inserito automaticamente dalla piattaforma. Se non compare nella card, contatta il supporto di OpenCity Italia.
{% endhint %}

* Bilancio preventivo: tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Bilancio preventivo";
* Bilancio consuntivo: tutti i documenti di [tipologia](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) "Bilancio consuntivo".


# Pubblicare un documento in Amministrazione Trasparente

Il redattore può creare contenuti direttamente all'interno di Amministrazione Trasparente

Per creare un documenti in Amministrazione Trasparente, collocati nella pagina in cui vuoi pubblicare il contenuto, scegli dal menù a tendina il tipo di contenuto (1) e [procedi alla creazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto) (2).

<figure><img src="/files/ZQyd6p1LlIP0TDWRA6L3" alt=""><figcaption></figcaption></figure>


# Aggiungere una collocazione in Amministrazione Trasparente

Puoi aggiungere una doppia collocazione ai contenuti pubblicati sul sito web.

{% hint style="warning" %}
Non puoi aggiungere una collocazione in Amministrazione Trasparente per quei contenuti che non sono previsti per questa sezione.
{% endhint %}

Alcuni contenuti non vengono richiamati attraverso le [regole di rappresentazione dei dati](/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/visualizzazione-automatica-dei-contenuti-in-amministrazione-trasparente). Per far sì che anche questi vengano mostrati in Trasparenza, dal [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore) puoi aggiungere una seconda collocazione attraverso la funzione "Aggiungi collocazioni".

<figure><img src="/files/iA9LR48xv96IfnExzE0Z" alt=""><figcaption></figcaption></figure>

Clicca su "Amministrazione Trasparente" (1) o cerca tramite parola chiave la pagina di trasparenza in cui aggiungere la collocazione (2).

<figure><img src="/files/pDA0kt8ShKW8EcSKZjjG" alt=""><figcaption></figcaption></figure>

Scegli la pagina in cui aggiungere la collocazione (1) e poi clicca su "Seleziona" (2).

<figure><img src="/files/mAwarvWOfrWN7C2I0CNg" alt=""><figcaption></figcaption></figure>

## Cancellare una collocazione

{% hint style="warning" %}
Questo procedimento **non elimina il contenuto**.
{% endhint %}

Per cancellare una collocazione, accedi alla pagina in cui è stata aggiunta quella nuova e procedi all'[eliminazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/eliminare-un-contenuto).

<figure><img src="/files/yRpjN9QjN8og30NmouZY" alt=""><figcaption></figcaption></figure>


# Spostare un contenuto in Amministrazione Trasparente

Il redattore può spostare alcuni contenuti del sito all'interno di Amministrazione Trasparente.

{% hint style="warning" %}
Non puoi spostare in Amministrazione Trasparente i contenuti che non sono previsti per questa sezione.
{% endhint %}

Per spostare un contenuto in Amministrazione Trasparenza, collocati nella pagina dell'oggetto e [procedi allo spostamento](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/spostare-un-contenuto).

<figure><img src="/files/QF90If0cwKFQnfMyiQF3" alt=""><figcaption></figcaption></figure>


# Aggiungere una nota di trasparenza

Il redattore può aggiungere delle note di trasparenza leggibili dai cittadini.

Per aggiungere una nota di trasparenza, puoi:

* cliccare su "Aggiungi nota trasparenza" all'interno della Pagina di Trasparenza;

<figure><img src="/files/mKswEFP0C8WH5jKU77UK" alt=""><figcaption></figcaption></figure>

* selezionare dal [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore) la classe "Nota trasparenza" e [creare il contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto).

<figure><img src="/files/THQYawbn9VdPfYigbwaO" alt=""><figcaption></figcaption></figure>


# Gestire gli schemi di pubblicazione

Gli schemi di pubblicazione ANAC approvati si riferiscono ai seguenti articoli del decreto:

* Art. 4-bis (utilizzo delle risorse pubbliche),
* Art. 13 (organizzazione),
* Art. 31 (controlli su attività e organizzazione).

Questi obblighi di pubblicazione sono previsti per garantire la trasparenza nell'uso delle risorse pubbliche, l'efficienza nell'organizzazione e il controllo delle attività

## Template e linee guida

{% hint style="info" %}
Sulla piattaforma Opencity Italia sono state introdotte alcune modifiche per facilitare la pubblicazione dei contenuti, in ottemperanza alla [Delibera n. 495 del 25 settembre 2024](https://www.anticorruzione.it/-/delibera-n.-495-del-25-settembre-2024) e all'aggiornamento introdotto con la [Delibera n. 481 del 3 dicembre 2025](https://www.anticorruzione.it/-/del.481.2025). Di seguito trovate tutte le informazioni necessarie per utilizzare correttamente le nuove funzionalità.
{% endhint %}

In linea con quanto previsto dalla normativa ANAC, OpenCity Italia ha sviluppato dei template standardizzati e migliorato le linee guide al redattore per facilitare la pubblicazione dei dati richiesti e la conformità agli obblighi di trasparenza e controllo.

### 1. Art. 4-bis – Utilizzo delle risorse pubbliche

La “Guida alla compilazione” a disposizione dei redattori riporta le indicazioni per la gestione della pagina ed è stato introdotto un Dataset specifico per l’inserimento dei dati sui pagamenti, da configurare tramite un [file template](https://docs.google.com/spreadsheets/d/1TVZFNMit-JJ87KaLWbMzOWGST8tyfFWIngZeXfQUZdM/edit?gid=2079137325#gid=2079137325) a disposizione nella pagina di Trasparenza.

{% hint style="warning" %}
Il template è stato predisposto con regole che guidano il redattore nella compilazione corretta dei dati (es. menù a tendina condizionali, rilevazione di errori, etc...)

A seguito dell'[**aggiornamento della Delibera n. 481/2025**](https://gitlab.com/opencity-labs/docs/-/tree/Redattori_ripristinato/opencity-labs/docs/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/aggiornamenti-anac.md#delibera-n.-481-del-3-dicembre-2025)**,** nel campo "Beneficiario", il redattore può selezionare una delle seguenti voci:

* Persona fisica;
* Altro soggetto pubblico e privato;
* Soggetto estero.
  {% endhint %}

Il dataset si trova nella [sezione "Dataset"](https://www.comune.bugliano.pi.it/Amministrazione/Documenti-e-dati/Dataset/Dati-relativi-ai-pagamenti) ed è visualizzato automaticamente nella sezione di Amministrazione Trasparente "[Dati sui pagamenti](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Pagamenti-dell-amministrazione/Dati-sui-pagamenti)".

{% hint style="info" %}
Nel caso in cui si decidesse di non procedere con l’utilizzo del Dataset, si suggerisce di nasconderlo (“[Imposta privato](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/nascondere-o-programmare-un-contenuto#impostare-come-privato-un-contenuto)”) e procedere con il caricamento del [file](https://docs.google.com/spreadsheets/d/1TVZFNMit-JJ87KaLWbMzOWGST8tyfFWIngZeXfQUZdM/edit?gid=2079137325#gid=2079137325) direttamente in Amministrazione trasparente.
{% endhint %}

<figure><img src="/files/5NrCQFPk1GpUbzaeWe6w" alt=""><figcaption></figcaption></figure>

### 2. Art. 13 – Organizzazione

{% hint style="warning" %}
Per ottemperare agli obblighi di pubblicazione secondo gli schemi previsti dalla [Delibera n. 495 del 25 settembre 2024 (all. 2)](https://docs.opencityitalia.it/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pages/TokUQ2JsvqcGEhUYSMnF#delibera-n.-495-del-25-settembre-2024), si ricorda di compilare i campi:

* Ruolo e Competenze per la Persona pubblica;
* Competenze, Responsabile e Punti di Contatto per l'Unità organizzativa.
  {% endhint %}

All'interno della sezione di Amministrazione Trasparente "[Organizzazione](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Organizzazione)":

* nella pagina "[Titolari di incarichi politici, di amministrazione, di direzione o di governo](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Organizzazione/Titolari-di-incarichi-politici-di-amministrazione-di-direzione-o-di-governo)", le regole di visualizzazione dati sono state aggiornate per mostrare anche le competenze relative ai vari incarichi [negli organi di indirizzo politico](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Organizzazione/Titolari-di-incarichi-politici-di-amministrazione-di-direzione-o-di-governo/Titolari-di-incarichi-politici-di-cui-all-art.14-co.1-del-d.lgs-n.-33-2013);

<figure><img src="/files/wuuG6ldMSNWjruyUqG62" alt=""><figcaption></figcaption></figure>

* nella pagina "[Articolazione degli uffici](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Organizzazione/Articolazione-degli-uffici)", le informazioni visualizzate includono un link diretto al contenuto, così da permettere il recupero dei dati previsti dallo schema ANAC.

<div><figure><img src="/files/IHKLwUE0hIX27xfsdvBa" alt=""><figcaption></figcaption></figure> <figure><img src="/files/Krp5ptCXWyECz0jVT4BZ" alt=""><figcaption></figcaption></figure></div>

### 3. Art. 31 – Controlli su attività e organizzazione

La “Guida alla compilazione” nella è stata aggiornata con indicazioni per la gestione della pagina ed è stato introdotto un Dataset specifico per l’inserimento dei dati relativi ai rilievi della Corte dei Conti, da configurare tramite un [file template](https://docs.google.com/spreadsheets/d/1yYL4ApL1nG1vrUZtGyTAF0cN4Pr_om6VvPkxV2Wukb8/edit?gid=1480130203#gid=1480130203) a disposizione nella pagina di Trasparenza.

{% hint style="warning" %}
Il template è stato predisposto con regole che guidano il redattore nella compilazione corretta dei dati (es. menù a tendina condizionali, rilevazione di errori, etc...)

A seguito dell'[**aggiornamento della Delibera n. 481/2025**](https://docs.opencityitalia.it/sito-web/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pages/TokUQ2JsvqcGEhUYSMnF#delibera-n.-481-del-3-dicembre-2025) è stato eliminato il campo "Recepimento o meno del rilievo da parte dell'amministrazione".

Ogni nuovo inserimento **deve fare riferimento al template aggiornato**.
{% endhint %}

Il dataset da configurare si trova nella [sezione "Dataset"](https://www.comune.bugliano.pi.it/Amministrazione/Documenti-e-dati/Dataset/Rilievi-della-Corte-dei-conti) ed è visualizzabile automaticamente nella sezione di Amministrazione Trasparente "[Corte dei conti](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Controlli-e-rilievi-sull-amministrazione/Corte-dei-conti)".

{% hint style="info" %}
Nel caso in cui si decidesse di non procedere con l’utilizzo del dataset, si suggerisce di nascondere il Dataset (“[Imposta privato](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/nascondere-o-programmare-un-contenuto#impostare-come-privato-un-contenuto)”) e procedere con il caricamento del [file](https://docs.google.com/spreadsheets/d/1yYL4ApL1nG1vrUZtGyTAF0cN4Pr_om6VvPkxV2Wukb8/edit?gid=1480130203#gid=1480130203) in Amministrazione trasparente.
{% endhint %}

<figure><img src="/files/4KVHG3bBuPpQD448kHwh" alt=""><figcaption></figcaption></figure>

### 3.2 Organismi indipendenti di valutazione

{% hint style="warning" %}
Per poter essere visualizzati, i Documenti [devono essere creati](https://gitlab.com/opencity-labs/docs/-/tree/Redattori_ripristinato/opencity-labs/docs/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pubblicare-un-documento-in-amministrazione-trasparente.md) all'interno di questa pagina.
{% endhint %}

All'interno della sezione di Amministrazione Trasparente "[Organismi indipendenti di valutazione, nuclei di valutazione o altri organismi con funzioni analoghe](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Controlli-e-rilievi-sull-amministrazione/Organismi-indipendenti-di-valutazione-nuclei-di-valutazione-o-altri-organismi-con-funzioni-analoghe)**"** le regole di visualizzazione sono state aggiornate per mostrare **titolo** e **data di pubblicazione** dei documenti.

<figure><img src="/files/nIt7SVjtMJz7j7t1jj3c" alt=""><figcaption></figcaption></figure>

### 3.2 Organi di revisione

{% hint style="warning" %}
Per poter essere visualizzati, i Documenti [devono essere creati](https://gitlab.com/opencity-labs/docs/-/tree/Redattori_ripristinato/opencity-labs/docs/moduli-integrativi-della-piattaforma/amministrare-la-trasparenza/pubblicare-un-documento-in-amministrazione-trasparente.md) all'interno di questa pagina.
{% endhint %}

All'interno della sezione di Amministrazione Trasparente "[Organi di revisione amministrativa e contabile](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Controlli-e-rilievi-sull-amministrazione/Organi-di-revisione-amministrativa-e-contabile)" le regole di visualizzazione sono state aggiornate per mostrare **titolo** e **data di pubblicazione** dei documenti.

<figure><img src="/files/pebVBHTQbAqjbPQWzBEj" alt=""><figcaption></figcaption></figure>


# Pubblicare i bandi di gara

Con le modifiche introdotte dalla delibera 601 del 19 dicembre 2023, sono state aggiunte tre nuove pagine dedicate ai bandi di gara

Con l'introduzione della Banca Dati Nazionale dei Contratti Pubblici (BDNCP) e le [modifiche introdotte dalla delibera 601 del 19 dicembre 2023](https://www.anticorruzione.it/-/delibera-n.-264-del-20-giugno-2023-provvedimento-art.-28-trasparenza), sono state aggiunte, nella sezione Bandi di gara e contratti, tre nuove pagine dedicate a:

* Atti e documenti di carattere generale;
* Dati relativi alle singole procedure e link alla BDNCP, dove è possibile [pubblicare nuovi bandi di gara](/sito-web/moduli-integrativi-della-piattaforma/bandi-di-gara/creare-un-bando-di-gara);
* Obblighi precedenti il 31/12/2023, in cui sono stati spostati tutti gli eventuali contenuti pregressi.

<figure><img src="/files/ZzlzO7i8SIrErqNiRH7U" alt=""><figcaption></figcaption></figure>


# Integrazione con la banca dati ANAC e gestione dei nuovi bandi

La sezione Bandi di gara del sito può essere alimentata attraverso automaticamente grazie all’integrazione con la **Banca dati nazionale dei contratti pubblici (ANAC)**.

## Attivazione integrazione con la banda dati ANAC

Con l'attivazione dell'integrazione con la Banca Dati, è possibile recuperare automaticamente tutti i bandi pubblicati dall'ente su ANAC negli ultimi 5 anni.

Il sistema acquisisce le informazioni disponibili su ANAC, spesso non facilmente consultabili a causa dell'instabilità del portale nazionale, e le rende disponibili all'interno del sito comunale in forma strutturata. Una volta completata l'importazione, il Comune deve semplicemente associare i documenti richiesti, senza dover ricostruire manualmente le informazioni di ciascun bando.

Il recupero non è un'operazione una tantum. Dopo l'importazione iniziale dello storico, lo stesso processo viene eseguito automaticamente ogni notte e importa i nuovi bandi pubblicati dall'ente su ANAC. In questo modo, la sezione **Bandi di gara** resta sempre allineata senza interventi manuali.

<figure><img src="/files/s8clZAm51SQoGw6h6WZy" alt=""><figcaption></figcaption></figure>

#### Tempi della prima importazione

I tempi di importazione dipendono dal numero di bandi dell'ente, con un ritmo indicativo di circa 50 bandi ogni 3 minuti. Per gli enti con molti bandi, l'importazione viene completata in modo scaglionato su più esecuzioni. I tempi possono variare in base alla reattività dei servizi ANAC.

Il tempo necessario per recuperare lo storico dipende dal numero di bandi pubblicati dall'ente su ANAC. Questi valori sono indicativi:

| Bandi da importare | Tempo indicativo | Con servizi ANAC rallentati |
| -----------------: | ---------------- | --------------------------- |
|                 50 | \~3 minuti       | \~3,5 minuti                |
|                100 | \~5-6 minuti     | \~7 minuti                  |
|                500 | \~30 minuti      | \~35 minuti                 |
|              1.000 | \~1 ora          | \~1 ora e 10 minuti         |
|              5.000 | \~4-5 ore        | \~6 ore                     |
|             10.000 | \~9 ore          | \~11-12 ore                 |

{% hint style="info" %}
Per gli enti con molti bandi, l'importazione dello storico viene completata **in modo graduale, distribuita su più esecuzioni**. I bandi compaiono quindi sul sito progressivamente. I tempi indicati sono cumulativi e possono variare in base alla reattività dei servizi ANAC.
{% endhint %}

#### Da dove arrivano i dati

Le informazioni di ogni bando non risiedono in un unico servizio ANAC: il sistema interroga più fonti e, per ciascun bando, sceglie automaticamente quella più completa, integrando ciò che manca dalle altre.

* **Dettaglio CIG:** la scheda completa del bando, la stessa consultabile pubblicamente sul portale ANAC. È la fonte più ricca: include importi e criterio di aggiudicazione e l'elenco degli aggiudicatari.
* **SmartCIG:** il servizio ANAC per gli affidamenti di importo ridotto. Viene usato come fonte di riserva quando il dettaglio completo non è disponibile: fornisce i dati essenziali, ma non gli aggiudicatari.
* **OCDS** (*Open Contracting Data Standard*): lo standard internazionale per i dati aperti sugli appalti, pubblicato da ANAC come *open data*. Viene usato per arricchire la scheda con informazioni verificate (categoria merceologica CPV e aggiudicatari mancanti).

### Mappatura campi ANAC → OpenCity Italia

Per ogni bando il titolo viene riscritto in forma più leggibile a partire dall'oggetto originale del bando, che su ANAC è spesso scritto interamente in maiuscolo. La riscrittura segue queste regole:

* **sentence case**: solo la prima lettera della frase in maiuscolo;
* gli **acronimi** (CIG, PNRR, ICT, RUP, MEPA, CONSIP…) e i **nomi propri** (aziende, comuni, prodotti) restano in maiuscolo;
* il titolo resta **identico all'originale**: vengono modificate solo le maiuscole/minuscole, senza parafrasare né accorciare il testo;
* non vengono aggiunte spiegazioni né punteggiatura.

Per ogni bando importato vengono acquisiti automaticamente i seguenti campi:

| Informazione su ANAC                       | Esempio                                   | Campo nel sito                       | Note                                                                                                                                                                                                                                                                                                    |
| ------------------------------------------ | ----------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| CIG                                        | `9A1B2C3D4E`                              | Codice Identificativo Gara           | Identifica il bando in modo univoco (per creazione e aggiornamento)                                                                                                                                                                                                                                     |
| Oggetto del bando                          | `SERVIZIO DI MANUTENZIONE...`             | ✨ Oggetto                            | Riscritto in forma leggibile dall'AI a partire dall'oggetto originale del bando, spesso interamente in maiuscolo: prima lettera maiuscola e resto in minuscolo, mantenendo però in maiuscolo gli acronimi (CIG, PNRR, MEPA, CONSIP…) e i nomi propri. **Il testo non viene parafrasato né accorciato.** |
| Data di pubblicazione                      | `27/05/2026`                              | Data di pubblicazione / Anno         |                                                                                                                                                                                                                                                                                                         |
| Tipologia di contratto                     | `Servizi`                                 | Tipologia (Lavori/Servizi/Forniture) |                                                                                                                                                                                                                                                                                                         |
| Stato della procedura                      | `In corso`                                | Stato della gara                     | Aggiornato man mano che la gara avanza                                                                                                                                                                                                                                                                  |
| Esito della gara                           | `Aggiudicata`                             | Esito                                |                                                                                                                                                                                                                                                                                                         |
| Modalità di scelta del contraente          | `Affidamento diretto`                     | Modalità di scelta del contraente    |                                                                                                                                                                                                                                                                                                         |
| Importo                                    | `45.000,00 €`                             | Importo del contratto                |                                                                                                                                                                                                                                                                                                         |
| Importo, criterio e data di aggiudicazione | `43.200,00 € · Minor prezzo · 27/05/2026` | Aggiudicazione                       | Riportata quando disponibile                                                                                                                                                                                                                                                                            |
| Aggiudicatari                              | `Verde S.r.l. (CF 01234567890)`           | Aggiudicatari                        | Solo quelli con denominazione e codice fiscale presenti                                                                                                                                                                                                                                                 |
| Categoria merceologica (CPV)               | *(codice ufficiale)*                      | Link CPV                             | Solo se verificata sulla fonte open data                                                                                                                                                                                                                                                                |
| Stazione appaltante / Provincia            | `Comune di Esempio · TN`                  | Informazioni aggiuntive              |                                                                                                                                                                                                                                                                                                         |
| Link alla procedura su BDNCP               | `dettaglio-cig.anticorruzione.it/...`     | Collegamento "Vai al bando"          | Rimanda alla scheda ufficiale BDNCP                                                                                                                                                                                                                                                                     |

{% hint style="info" %}
Il campo contrassegnato con ✨ è generato con il supporto dell'intelligenza artificiale.
{% endhint %}

L'aggiornamento giornaliero integra poi ogni bando con eventuali dati inseriti o modificati successivamente — come valore e data di aggiudicazione e aggiudicatario — senza sovrascrivere la documentazione già caricata dal redattore.

{% hint style="info" %}
L'aggiornamento è automatico e a cadenza giornaliera, in orario notturno. I nuovi bandi e le modifiche pubblicate su ANAC sono visibili sul sito a partire dal giorno successivo.
{% endhint %}

Il recupero non è un'operazione una tantum: dopo l'importazione iniziale dello storico, lo stesso processo viene eseguito automaticamente ogni notte e importa i nuovi bandi pubblicati dall'ente su ANAC, così la sezione Bandi di gara resta sempre allineata senza interventi manuali.

## Gestione dei nuovi bandi

{% hint style="info" %}
In questo modo, il Comune non è tenuto a reinserire manualmente le informazioni già presenti nei sistemi nazionali.
{% endhint %}

Per i nuovi bandi, è disponibile un cruscotto dedicato che consente di generare un **link univoco e persistente** da inserire su MEPA (o un'altra Piattaforma di Approvvigionamento Digitale) nel campo "Link alla documentazione", al momento della richiesta del CIG.

Una volta ottenuto il CIG tramite MEPA, questo può essere associato al link generato in precedenza. A partire da queste informazioni, il sistema recupera automaticamente da ANAC **tramite API** tutti i dati del bando e li inserisce nella sezione Bandi di gara del sito.

<figure><img src="/files/96B14EXNmx6zeCbnxyOT" alt=""><figcaption></figcaption></figure>

## Gestire un bando in preparazione

Quando devi avviare una procedura su MEPA prima ancora di avere un CIG, puoi creare un **bando in preparazione**. Questo ti permette di ottenere subito il link da inserire nella piattaforma di approvvigionamento, senza bloccare il flusso operativo.

Per creare un bando in preparazione:

1. Accedi alla pagina "[Atti e documenti relativi alle singole procedure e link alla BDNCP](/sito-web/moduli-integrativi-della-piattaforma/bandi-di-gara/organizzare-atti-e-documenti-relativi-alle-singole-procedure)".
2. Dal [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore), seleziona la classe "Bando di gara (CIG)" e [crea un nuovo contenuto](/sito-web/moduli-integrativi-della-piattaforma/bandi-di-gara/creare-un-bando-di-gara).
3. Spunta la voce **"Bando in preparazione"**: il campo CIG diventa facoltativo.
4. Salva il contenuto. Il sistema genera un link univoco e persistente associato al bando.
5. Nella pagina "[Atti e documenti relativi alle singole procedure e link alla BDNCP](/sito-web/moduli-integrativi-della-piattaforma/bandi-di-gara/organizzare-atti-e-documenti-relativi-alle-singole-procedure)" il bando è elencato nella tabella Bandi in preparazione. Ogni bando della tabella accanto al link ha un bottone che permettere la copia del link univoco e persistente associato al bando.

   <figure><img src="/files/vSRm3J77w8tr60qW4UaS" alt=""><figcaption></figcaption></figure>
6. Copia il link e inseriscilo su MEPA (o altra piattaforma) nel campo "Link alla documentazione" per richiedere il CIG.

{% hint style="info" %}
Il bando in preparazione non è accessibile ai cittadini fino alla pubblicazione definitiva. Nella pagina "Atti e documenti relativi alle singole procedure e link alla BDNCP", i bandi in preparazione compaiono in una **tabella separata**, visibile solo ai redattori autenticati, distinta dalla tabella pubblica dei bandi.
{% endhint %}

Una volta che MEPA (o altra piattaforma di approvvigionamento) ha emesso il CIG:

1. Riapri il bando in preparazione.
2. Rimuovi la spunta da "Bando in preparazione".
3. Inserisci il CIG e gli altri dati obbligatori.
4. [Pubblica il contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/pubblicare-un-contenuto) in Amministrazione Trasparente.

Il sistema aggiorna automaticamente il bando con tutte le informazioni presenti su ANAC a partire dal CIG inserito.

## Sincronizzazione degli aggiornamenti

Anche dopo la pubblicazione, le informazioni di un bando possono cambiare su ANAC: lo stato della procedura può passare da "In corso" ad "Aggiudicato", e possono comparire il valore e la data di aggiudicazione e l'aggiudicatario.

Il sistema mantiene il bando allineato in due modi:

* **automaticamente**, con l'aggiornamento giornaliero che rilegge i bandi ancora attivi e ne aggiorna lo stato;
* **su richiesta**, quando un redattore modifica e salva il bando sul sito: il sistema rilegge i dati da ANAC e applica gli aggiornamenti.

In entrambi i casi vengono aggiornati **solo i dati provenienti da ANAC**: i documenti e gli altri contenuti caricati manualmente dal redattore non vengono mai sovrascritti.


# Organizzare atti e documenti relativi alle singole procedure

All'interno della pagina "[Atti e documenti relativi alle singole procedure e link alla BDNCP](https://www.comune.bugliano.pi.it/Amministrazione-Trasparente/Bandi-di-gara-e-contratti/Atti-e-documenti-relativi-alle-singole-procedure-e-link-alla-BDNCP)", utenti e OIV trovano un elenco di tutti i bandi di gara pubblicati all'interno di Amministrazione Trasparente.

<figure><img src="/files/B7EATEI8DT9ct14xmAbZ" alt=""><figcaption></figcaption></figure>

I bandi di gara elencati possono essere ricercati tramite:

* ricerca per parola chiave;

<figure><img src="/files/xUewF9ZcT615k4BzzTOL" alt=""><figcaption></figcaption></figure>

* un filtro per anno di pubblicazione

<figure><img src="/files/bT8zAGX6p49FOraNzrcP" alt=""><figcaption></figcaption></figure>

* un filtro per fase della procedura.

<div data-full-width="true"><figure><img src="/files/CQPNpk7PYDdQrxZXBsme" alt=""><figcaption></figcaption></figure> <figure><img src="/files/wbdJiNcgrOydJwPRsUvI" alt=""><figcaption></figcaption></figure></div>

### Filtri specifici per fase

Per ogni bando è possibile gestire l'inserimento di informazioni specifiche relative alle diverse fasi della procedura. A ciascuna fase è associato un insieme di tag che indicano la natura dei documenti caricati.

Nella fase di **Pubblicazione**, ad esempio, puoi assegnare **tag** che indicano la natura dei documenti caricati.

I tag attualmente disponibili permettono di distinguere:

* documenti relativi al **dibattito pubblico**;
* **documenti di gara** in senso stretto.

<figure><img src="/files/imeOYgtdRBHXQZmJO2Ib" alt=""><figcaption></figcaption></figure>

Nella fase di **Affidamento** i tag disponibili sono:

* Composizione delle commissioni giudicatrici e CV dei componenti;
* Pari opportunità e inclusione lavorativa nei contratti pubblici PNRR e PNC e nei contratti riservati;
* Procedura di affidamento dei servizi pubblici locali.

<figure><img src="/files/9uHhg8GP1H9Fjj463QfP" alt=""><figcaption></figcaption></figure>

Nella fase **Esecutiva** i tag disponibili sono:

* Composizione del Collegio consultivo tecnico;
* Pari opportunità e inclusione lavorativa nei contratti pubblici PNRR e PNC e nei contratti riservati.

<figure><img src="/files/3g6O6KNECNHkmxYszQPo" alt=""><figcaption></figcaption></figure>

Nella fase di **Sponsorizzazioni** il tag disponibile è:

* Contratti gratuiti e forme speciali di partenariato.

<figure><img src="/files/1wIV7Xcflo5KRHt6YRIN" alt=""><figcaption></figcaption></figure>

Nella fase di **Procedure di somma urgenza e di protezione civile** il tag disponibile è:

* Atti e documenti relativi agli affidamenti di somma urgenza.

<figure><img src="/files/0nBZCrnHJNiqtyoKLmq3" alt=""><figcaption></figcaption></figure>

Nella fase di **Finanza di progetto** il tag disponibile è:

* Procedura di affidamento.

<figure><img src="/files/rZ61m0uEI8TxNa7kUMqj" alt=""><figcaption></figcaption></figure>

I tag assegnati sono utilizzabili tramite il filtro **Filtra per fase** presente nella pagina Atti e documenti relativi alle singole procedure e link alla BDNCP, migliorando la trovabilità dei bandi all'interno della sezione e rendendo più efficace il controllo da parte degli Organismi Indipendenti di Valutazione (OIV), che possono filtrare rapidamente i contenuti di loro competenza.

<figure><img src="/files/LdsPpIHmGZBFOJ4Pw9wP" alt=""><figcaption></figcaption></figure>


# Creare un Bando di Gara (CIG)

<details>

<summary><strong>Bando di gara (CIG)</strong></summary>

**Bando di gara (CIG)** è la classe che rappresenta le procedure di appalto pubblico dell'ente, pensata per assolvere agli obblighi di pubblicazione in Amministrazione Trasparente nella sezione *Bandi di gara e contratti*, in conformità con le disposizioni ANAC e la Banca Dati Nazionale dei Contratti Pubblici (BDNCP).

Identificatore > bando

| Attributo                                                                                           | Descrizione                                                                                                                                                                                                                                                                       | Tipo di dato                             | Obbligatorio | Ricercabile |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- | ------------ | ----------- |
| Bando in preparazione (is\_draft)                                                                   | Seleziona questa opzione se il bando non ha ancora un CIG. In questo stato, il bando resterà visibile solo al redattore. Una volta deselezionata, il bando verrà pubblicato e sarà obbligatorio inserire il relativo CIG.                                                         | Checkbox (ezboolean)                     |              | X           |
| CIG (codice\_identificativo\_gara)                                                                  | Codice Identificativo Gara rilasciato dall’autorità                                                                                                                                                                                                                              | Linea di testo (ezstring)                |              | X           |
| Oggetto (oggetto)                                                                                   |                                                                                                                                                                                                                                                                                   | Linea di testo (ezstring)                | X            | X           |
| Anno (anno)                                                                                         |                                                                                                                                                                                                                                                                                   | Intero (ezinteger)                       | X            | X           |
| Data di pubblicazione (published)                                                                   | Data in cui il bando è pubblicato.                                                                                                                                                                                                                                                | Data (ezdate)                            | X            | X           |
| Link alla procedura sulla Banca Dati Nazionale dei Contratti Pubblici (BDNCP) (location)            |                                                                                                                                                                                                                                                                                   | URL (ezurl)                              |              |             |
| Link alla Piattaforma di Pubblicità a Valore Legale (PVL) (pvl\_link)                               |                                                                                                                                                                                                                                                                                   | URL (ezurl)                              |              |             |
| Link a contrattipubblici.org Common Procurement Vocabulary (CPV) (cpv\_link)                        |                                                                                                                                                                                                                                                                                   | URL (ezurl)                              |              |             |
| Pubblicazione (pubblicazione)                                                                       | Documenti di gara e documenti relativi al dibattito pubblico                                                                                                                                                                                                                      | File multipli (ocmultibinary)            |              | X           |
| Pubblicazione (documenti correlati) (pubblicazione\_relations)                                      | Seleziona dalla libreria i documenti di gara e documenti relativi al dibattito pubblico già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                              | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase pubblicazione (notes\_pubblicazione)                                      | Nel caso in cui non ci siano documenti relativi alla fase "Pubblicazione" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                     | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (pubblicazione\_types)                                                          |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Affidamento (affidamento)                                                                           | Composizione delle commissioni giudicatrici e CV dei componenti, copia dell’ultimo rapporto sulla situazione del personale maschile e femminile redatto dall’operatore economico, documenti relativi alle procedure di affidamento dei servizi pubblici locali                    | File multipli (ocmultibinary)            |              | X           |
| Affidamento (documenti correlati) (affidamento\_relations)                                          | Seleziona dalla libreria i documenti relativi alla procedura di affidamento già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                          | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase affidamento (notes\_affidamento)                                          | Nel caso in cui non ci siano documenti relativi alla fase "Affidamento" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                       | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (affidamento\_types)                                                            |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Esecutiva (esecutiva)                                                                               | Composizione del Collegio consultivo tecnici (nominativi) e CV dei componenti, relazione di genere sulla situazione del personale maschile e femminile, certificazione di cui all’art. 17 della legge 12 marzo 1999, n. 68                                                        | File multipli (ocmultibinary)            |              | X           |
| Esecutiva (documenti correlati) (esecutiva\_relations)                                              | Seleziona dalla libreria i documenti relativi alla fase esecutiva già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                                    | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase esecutiva (notes\_esecutiva)                                              | Nel caso in cui non ci siano documenti relativi alla fase "Esecutiva" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                         | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (esecutiva\_types)                                                              |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Sponsorizzazioni (sponsorizzazioni)                                                                 | per importi superiori a quarantamila 40.000 euro: avviso con il quale si rende nota la ricerca di sponsor per specifici interventi, ovvero si comunica l'avvenuto ricevimento di una proposta di sponsorizzazione, con sintetica indicazione del contenuto del contratto proposto | File multipli (ocmultibinary)            |              | X           |
| Sponsorizzazioni (documenti correlati) (sponsorizzazioni\_relations)                                | Seleziona dalla libreria i documenti relativi alle sponsorizzazioni già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                                  | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase sponsorizzazioni (notes\_sponsorizzazioni)                                | Nel caso in cui non ci siano documenti relativi alla fase "Sponsorizzazioni" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                  | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (sponsorizzazioni\_types)                                                       |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Procedure di somma urgenza e di protezione civile (somma\_urgenza)                                  | Atti e documenti relativi agli affidamenti di somma urgenza a prescindere dall’importo di affidamento                                                                                                                                                                             | File multipli (ocmultibinary)            |              | X           |
| Procedure di somma urgenza e di protezione civile (documenti correlati) (somma\_urgenza\_relations) | Seleziona dalla libreria i documenti relativi alle procedure di somma urgenza già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                        | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per le procedure di somma urgenza e di protezione civile (notes\_somma\_urgenza)      | Nel caso in cui non ci siano documenti relativi alle procedure di somma urgenza e di protezione civile puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                        | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (somma\_urgenza\_types)                                                         |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Finanza di progetto (finanza)                                                                       | Provvedimento conclusivo della procedura di valutazione della proposta del promotore relativa alla realizzazione in concessione di lavori o servizi                                                                                                                               | File multipli (ocmultibinary)            |              | X           |
| Finanza di progetto (documenti correlati) (finanza\_relations)                                      | Seleziona dalla libreria i documenti relativi alla finanza di progetto già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                               | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase finanza di progetto (notes\_finanza)                                      | Nel caso in cui non ci siano documenti relativi alla fase "Finanza di progetto" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                               | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (finanza\_types)                                                                |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Ulteriori informazioni (extra\_info)                                                                |                                                                                                                                                                                                                                                                                   | Matrice (ezmatrix)                       |              | X           |
| Data di rimozione (expiration\_time)                                                                |                                                                                                                                                                                                                                                                                   | Data (ezdate)                            |              | X           |
| Tipologia del contratto (tender\_types)                                                             |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Esito della gara (tender\_result\_types)                                                            |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Stato (tender\_status\_types)                                                                       |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Tipo scelta contraente (tender\_contract\_types)                                                    |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Importo complessivo (contract\_value)                                                               | Inserisci l'importo senza indicare la valuta; il sistema applicherà automaticamente il simbolo €                                                                                                                                                                                  | Prezzo (ezprice)                         |              |             |
| Aggiudicazione (award\_value)                                                                       |                                                                                                                                                                                                                                                                                   | Matrice (ezmatrix)                       |              | X           |
| Aggiudicatario (award\_winners)                                                                     |                                                                                                                                                                                                                                                                                   | Matrice (ezmatrix)                       |              | X           |
| Responsabile unico del procedimento (procedure\_managers)                                           | Inserisci il funzionario incaricato di seguire la procedura del bando.                                                                                                                                                                                                            | Relazioni oggetti (ezobjectrelationlist) |              | X           |

</details>

{% hint style="info" %}
Con l'aggiornamento delle pagine dedicate ai bandi di gara e per rispondere alle necessità degli Enti che utilizzano la soluzione OpenCity per l'Amministrazione Trasparente, è stata introdotta una nuova classe di contenuto: **Bando di gara (CIG)**
{% endhint %}

All'interno della pagina "Atti e documenti relativi alle singole procedure e link alla BDNCP", tramite il [menù del redattore](/sito-web/la-piattaforma/il-menu-redattore) seleziona la classe "Bando di gara (CIG)" (1) e procedi alla [creazione del contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-un-nuovo-contenuto) (2).

<figure><img src="/files/192k98Qo3gmUqPX7oSNc" alt=""><figcaption></figcaption></figure>

Inserisci il CIG, l'oggetto, l'anno di riferimento e la data di pubblicazione del bando.

{% hint style="info" %}
I campi Anno e Data di pubblicazione sono già compilati con l'anno e la data correnti.
{% endhint %}

<figure><img src="/files/RaYQIr9HgnpASMtkgAu9" alt=""><figcaption></figcaption></figure>

Successivamente, indica il link alla procedura sulla BDNCP (1). Puoi inserire anche i link alla Piattaforma di Pubblicità a Valore Legale (2) e al Common Procurement Vocabulary (3).

<figure><img src="/files/eVIYf5JDyzcccIN2ClD2" alt=""><figcaption></figcaption></figure>

## Compila i dati della procedura

Dopo aver indicato il CIG e i link obbligatori, puoi compilare i campi descrittivi della procedura:

* **Tipologia del contratto** — la categoria merceologica o il tipo di appalto;
* **Stato** — lo stato corrente della procedura (in corso, conclusa, ecc.);
* **Tipo scelta contraente** — la modalità di selezione (procedura aperta, negoziata, ecc.);
* **Esito della gara** — l'esito finale della procedura;
* **Importo complessivo** — il valore dell'appalto, senza simbolo di valuta (il sistema aggiunge € in automatico);
* **Aggiudicazione** — la data e l'importo di aggiudicazione;
* **Aggiudicatario** — il soggetto a cui è stato affidato il contratto;
* **Responsabile unico del procedimento** — il funzionario incaricato di seguire la procedura del bando.

{% hint style="info" %}
I campi importati automaticamente da ANAC vengono aggiornati quotidianamente. Puoi modificarli manualmente, ma le modifiche manuali non vengono sovrascritte dall'aggiornamento automatico.
{% endhint %}

## Gestisci la pubblicazione, l'affidamento e l'esecutiva

[Aggiungi i file riguardanti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune#allega-i-file-al-documento) la pubblicazione (1) o [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) tra il contenuto e un [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) (2)

<figure><img src="/files/C4lt3Q9wsxidiVv3FAeQ" alt=""><figcaption></figcaption></figure>

[Aggiungi i file riguardanti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune#allega-i-file-al-documento) l'affidamento (1) o [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) tra il contenuto e un [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) (2)

<figure><img src="/files/iyETqzz8Clh0aftvHx9l" alt=""><figcaption></figcaption></figure>

[Aggiungi i file riguardanti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune#allega-i-file-al-documento) l'esecutiva (1) o [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) tra il contenuto e un [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) (2)

<figure><img src="/files/ttY4M1S87Ke5lVn9p47Y" alt=""><figcaption></figcaption></figure>

In tutti e tre i casi, puoi inserire una nota testuale riguardante la fase di pubblicazione. Nel caso in cui non ci siano documenti relativi a queste fasi, specifica che "Non sussiste la fattispecie"

<figure><img src="/files/iCUvVZZNc4bgaoG5NmJw" alt=""><figcaption></figcaption></figure>

## Gestisci le sponsorizzazioni, le procedure di somma urgenza e protezione civile e la finanza del progetto

[Aggiungi i file riguardanti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune#allega-i-file-al-documento) le sponsorizzazioni (1) o [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) tra il contenuto e un [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) (2)

<figure><img src="/files/lVIu1voznJIKsD13nwlk" alt=""><figcaption></figcaption></figure>

[Aggiungi i file riguardanti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune#allega-i-file-al-documento) le procedure di somma urgenza e di protezione civile (1) o [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) tra il contenuto e un [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) (2)

<figure><img src="/files/QWWpFf0iJAQGKJVvpVXh" alt=""><figcaption></figcaption></figure>

[Aggiungi i file riguardanti](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune#allega-i-file-al-documento) la finanza del progetto (1) o [crea una relazione](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/creare-relazioni-tra-contenuti) tra il contenuto e un [Documento](/sito-web/modello-comuni/pubblicare-la-documentazione-del-comune) (2)

<figure><img src="/files/N1Wr4ygIxf6PVzUJqyst" alt=""><figcaption></figcaption></figure>

In tutti e tre i casi, puoi inserire una nota testuale riguardante la fase di pubblicazione. Nel caso in cui non ci siano documenti relativi a queste fasi, specifica che "Non sussiste la fattispecie"

<figure><img src="/files/iCUvVZZNc4bgaoG5NmJw" alt=""><figcaption></figcaption></figure>

## Pubblica il bando di gara CIG

Compilati i campi obbligatori, [pubblica il contenuto](/sito-web/la-piattaforma/funzioni-generali-di-gestione-dei-contenuti/pubblicare-un-contenuto) in Amministrazione Trasparente.

<figure><img src="/files/N7NYxIJKEpml4EcMh6XU" alt=""><figcaption></figcaption></figure>

<details>

<summary><strong>Bando di gara (CIG)</strong></summary>

**Bando di gara (CIG)** è la classe che rappresenta le procedure di appalto pubblico dell'ente, pensata per assolvere agli obblighi di pubblicazione in Amministrazione Trasparente nella sezione *Bandi di gara e contratti*, in conformità con le disposizioni ANAC e la Banca Dati Nazionale dei Contratti Pubblici (BDNCP).

Identificatore > bando

| Attributo                                                                                           | Descrizione                                                                                                                                                                                                                                                                       | Tipo di dato                             | Obbligatorio | Ricercabile |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- | ------------ | ----------- |
| Bando in preparazione (is\_draft)                                                                   | Seleziona questa opzione se il bando non ha ancora un CIG. In questo stato, il bando resterà visibile solo al redattore. Una volta deselezionata, il bando verrà pubblicato e sarà obbligatorio inserire il relativo CIG.                                                         | Checkbox (ezboolean)                     |              | X           |
| CIG (codice\_identificativo\_gara)                                                                  | Codice Identificativo Gara rilasciato dall’autorità                                                                                                                                                                                                                              | Linea di testo (ezstring)                |              | X           |
| Oggetto (oggetto)                                                                                   |                                                                                                                                                                                                                                                                                   | Linea di testo (ezstring)                | X            | X           |
| Anno (anno)                                                                                         |                                                                                                                                                                                                                                                                                   | Intero (ezinteger)                       | X            | X           |
| Data di pubblicazione (published)                                                                   | Data in cui il bando è pubblicato.                                                                                                                                                                                                                                                | Data (ezdate)                            | X            | X           |
| Link alla procedura sulla Banca Dati Nazionale dei Contratti Pubblici (BDNCP) (location)            |                                                                                                                                                                                                                                                                                   | URL (ezurl)                              |              |             |
| Link alla Piattaforma di Pubblicità a Valore Legale (PVL) (pvl\_link)                               |                                                                                                                                                                                                                                                                                   | URL (ezurl)                              |              |             |
| Link a contrattipubblici.org Common Procurement Vocabulary (CPV) (cpv\_link)                        |                                                                                                                                                                                                                                                                                   | URL (ezurl)                              |              |             |
| Pubblicazione (pubblicazione)                                                                       | Documenti di gara e documenti relativi al dibattito pubblico                                                                                                                                                                                                                      | File multipli (ocmultibinary)            |              | X           |
| Pubblicazione (documenti correlati) (pubblicazione\_relations)                                      | Seleziona dalla libreria i documenti di gara e documenti relativi al dibattito pubblico già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                              | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase pubblicazione (notes\_pubblicazione)                                      | Nel caso in cui non ci siano documenti relativi alla fase "Pubblicazione" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                     | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (pubblicazione\_types)                                                          |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Affidamento (affidamento)                                                                           | Composizione delle commissioni giudicatrici e CV dei componenti, copia dell’ultimo rapporto sulla situazione del personale maschile e femminile redatto dall’operatore economico, documenti relativi alle procedure di affidamento dei servizi pubblici locali                    | File multipli (ocmultibinary)            |              | X           |
| Affidamento (documenti correlati) (affidamento\_relations)                                          | Seleziona dalla libreria i documenti relativi alla procedura di affidamento già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                          | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase affidamento (notes\_affidamento)                                          | Nel caso in cui non ci siano documenti relativi alla fase "Affidamento" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                       | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (affidamento\_types)                                                            |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Esecutiva (esecutiva)                                                                               | Composizione del Collegio consultivo tecnici (nominativi) e CV dei componenti, relazione di genere sulla situazione del personale maschile e femminile, certificazione di cui all’art. 17 della legge 12 marzo 1999, n. 68                                                        | File multipli (ocmultibinary)            |              | X           |
| Esecutiva (documenti correlati) (esecutiva\_relations)                                              | Seleziona dalla libreria i documenti relativi alla fase esecutiva già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                                    | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase esecutiva (notes\_esecutiva)                                              | Nel caso in cui non ci siano documenti relativi alla fase "Esecutiva" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                         | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (esecutiva\_types)                                                              |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Sponsorizzazioni (sponsorizzazioni)                                                                 | per importi superiori a quarantamila 40.000 euro: avviso con il quale si rende nota la ricerca di sponsor per specifici interventi, ovvero si comunica l'avvenuto ricevimento di una proposta di sponsorizzazione, con sintetica indicazione del contenuto del contratto proposto | File multipli (ocmultibinary)            |              | X           |
| Sponsorizzazioni (documenti correlati) (sponsorizzazioni\_relations)                                | Seleziona dalla libreria i documenti relativi alle sponsorizzazioni già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                                  | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase sponsorizzazioni (notes\_sponsorizzazioni)                                | Nel caso in cui non ci siano documenti relativi alla fase "Sponsorizzazioni" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                                  | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (sponsorizzazioni\_types)                                                       |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Procedure di somma urgenza e di protezione civile (somma\_urgenza)                                  | Atti e documenti relativi agli affidamenti di somma urgenza a prescindere dall’importo di affidamento                                                                                                                                                                             | File multipli (ocmultibinary)            |              | X           |
| Procedure di somma urgenza e di protezione civile (documenti correlati) (somma\_urgenza\_relations) | Seleziona dalla libreria i documenti relativi alle procedure di somma urgenza già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                        | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per le procedure di somma urgenza e di protezione civile (notes\_somma\_urgenza)      | Nel caso in cui non ci siano documenti relativi alle procedure di somma urgenza e di protezione civile puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                        | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (somma\_urgenza\_types)                                                         |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Finanza di progetto (finanza)                                                                       | Provvedimento conclusivo della procedura di valutazione della proposta del promotore relativa alla realizzazione in concessione di lavori o servizi                                                                                                                               | File multipli (ocmultibinary)            |              | X           |
| Finanza di progetto (documenti correlati) (finanza\_relations)                                      | Seleziona dalla libreria i documenti relativi alla finanza di progetto già caricati nella sezione "Documenti e dati" oppure crea un nuovo documento                                                                                                                               | Relazioni oggetti (ezobjectrelationlist) |              | X           |
| Nota testuale per la fase finanza di progetto (notes\_finanza)                                      | Nel caso in cui non ci siano documenti relativi alla fase "Finanza di progetto" puoi utilizzare questo campo note per specificare che "Non sussiste la fattispecie"                                                                                                               | Linea di testo (ezstring)                |              | X           |
| Tipologia documento (finanza\_types)                                                                |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Ulteriori informazioni (extra\_info)                                                                |                                                                                                                                                                                                                                                                                   | Matrice (ezmatrix)                       |              | X           |
| Data di rimozione (expiration\_time)                                                                |                                                                                                                                                                                                                                                                                   | Data (ezdate)                            |              | X           |
| Tipologia del contratto (tender\_types)                                                             |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Esito della gara (tender\_result\_types)                                                            |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Stato (tender\_status\_types)                                                                       |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Tipo scelta contraente (tender\_contract\_types)                                                    |                                                                                                                                                                                                                                                                                   | Tags (eztags)                            |              | X           |
| Importo complessivo (contract\_value)                                                               | Inserisci l'importo senza indicare la valuta; il sistema applicherà automaticamente il simbolo €                                                                                                                                                                                  | Prezzo (ezprice)                         |              |             |
| Aggiudicazione (award\_value)                                                                       |                                                                                                                                                                                                                                                                                   | Matrice (ezmatrix)                       |              | X           |
| Aggiudicatario (award\_winners)                                                                     |                                                                                                                                                                                                                                                                                   | Matrice (ezmatrix)                       |              | X           |
| Responsabile unico del procedimento (procedure\_managers)                                           | Inserisci il funzionario incaricato di seguire la procedura del bando.                                                                                                                                                                                                            | Relazioni oggetti (ezobjectrelationlist) |              | X           |

</details>


# Gestire gli atti e l'Albo pretorio

Il modulo Albo Pretorio permette di gestire in modo strutturato l'intero ciclo della pubblicazione degli atti, secondo le regole previste dalla normativa.

La sezione è integrata direttamente nel sito istituzionale e si presenta ai cittadini con un elenco chiaro degli atti in corso di pubblicazione e la possibilità di consultare lo [storico degli atti](#lo-storico-delle-pubblicazioni) già pubblicati. Sono disponibili filtri di ricerca per numero di registro, anno, data, tipologia di atto e ufficio responsabile, che consentono di individuare rapidamente il documento cercato.

<figure><img src="/files/2NMmkbRFaWWjedI1Vbkw" alt=""><figcaption></figcaption></figure>

Dal punto di vista del redattore, il sistema governa in modo automatico tempi, registro e tracciabilità della pubblicità legale, riducendo al minimo le operazioni manuali e il rischio di errore.

## Pubblicare gli atti

Il modulo Albo Pretorio viene utilizzato insieme all'[integrazione con il gestionale atti](/sito-web/moduli-integrativi-della-piattaforma/gestire-gli-atti-e-lalbo-pretorio/integrazione-con-il-gestionale-atti), **disponibile attualmente con JIRIDE** (con possibilità di valutare integrazioni con altri sistemi): grazie a questa integrazione, delibere e determine vengono importate automaticamente nella sezione Documenti del sito senza intervento manuale, e da lì rese disponibili sull'Albo.

In assenza dell'integrazione, gli atti possono essere [pubblicati manualmente dal redattore](https://docs.opencityitalia.it/manuale-opencity-italia-sito-web-istituzionale-v3/modello-comuni/pubblicare-la-documentazione-del-comune) nella sezione Documenti del sito.

## Lo storico delle pubblicazioni

La sezione Albo Pretorio è integrata direttamente nel sito istituzionale e si presenta ai cittadini con un elenco chiaro degli atti in corso di pubblicazione e la possibilità di consultare lo storico degli atti già pubblicati ("Storico pubblicazioni").

<div><figure><img src="/files/YZKvZjffSilDNaaWKEzq" alt=""><figcaption></figcaption></figure> <figure><img src="/files/qjia3Iw43Es8bdwdBi1a" alt=""><figcaption></figcaption></figure></div>


# Integrazione con il gestionale atti

{% hint style="warning" %}
L'integrazione è attualmente disponibile per **Maggioli (JIRIDE)**.

OpenCity Italia è disponibile a valutare integrazioni con altri sistemi gestionali.
{% endhint %}

Attraverso il connettore con il gestionale atti dell'ente, delibere e determine non devono più essere caricate manualmente sul sito. Gli atti vengono importati automaticamente nella sezione Documenti, insieme ai principali metadati, e resi immediatamente disponibili per l'utilizzo da parte del sistema.

Questo elimina la necessità di duplicare il lavoro su due piattaforme diverse e riduce sensibilmente il rischio di errori nella pubblicazione.

## Come funziona il connettore

{% hint style="info" %}
L'importazione è periodica, con **aggiornamento ogni 12 ore** (la finestra temporale è configurabile, con valore predefinito di 48 ore).

La strategia adottata è di tipo insert-only: gli atti già presenti nel sito vengono riconosciuti e saltati automaticamente, **evitando duplicazioni**.
{% endhint %}

Il connettore utilizza le API REST di Sicraweb con autenticazione Bearer token. Il recupero degli atti avviene tramite la funzione `listaAtti` (con paginazione e filtro per data di aggiornamento) e la funzione `dettaglioAtto` per i campi estesi.

## Mappatura con supporto AI

La mappatura dei dati importati avviene anche con il supporto dell'intelligenza artificiale, secondo le seguenti logiche:

* **selezione del tipo documento, dell'ufficio responsabile e degli argomenti tematici** tra quelli già presenti nel sito di destinazione, garantendo coerenza con la tassonomia in uso;
* **normalizzazione della descrizione breve**: l'oggetto dell'atto viene uniformato applicando il sentence case — solo la prima lettera in maiuscolo — mantenendo in maiuscolo acronimi (es. CIG, IVA, ANAC), sigle di province italiane, numeri romani e nomi propri di persona o geografici. Il testo non viene troncato né parafrasato;
* **generazione automatica di abstract e descrizione strutturata** a partire dall'oggetto dell'atto e dal testo estratto dal PDF allegato. La descrizione è articolata in tre punti: azione principale, eventuali acronimi e impatto per i cittadini.

## Arricchimento e leggibilità degli atti

Oltre alla mappatura, il sistema migliora la qualità e la trovabilità di ogni atto importato.

La descrizione breve viene normalizzata a partire dall'oggetto originale dell'atto: viene applicato il sentence case (solo la prima lettera in maiuscolo), mantenendo in maiuscolo acronimi come CIG, IVA o ANAC, le sigle di province italiane, i numeri romani e i nomi propri di persona o geografici. Il testo non viene modificato nel significato né troncato.

L'abstract generato automaticamente offre ai cittadini un'anteprima chiara del contenuto senza dover aprire il PDF.

La classificazione per **argomento tematico** rende ogni atto raggiungibile anche dalle altre sezioni del sito — non solo dall'Albo pretorio o dall'Amministrazione Trasparente, ma da qualsiasi pagina tematica correlata.

{% hint style="info" %}
Puoi verificare il risultato dell'arricchimento AI direttamente sulla scheda del documento, prima che l'atto venga reso pubblico. Se necessario, puoi modificare manualmente titolo, abstract e classificazioni.
{% endhint %}

I documenti importati tramite il connettore riportano automaticamente, nella pagina pubblica, il seguente avviso ai cittadini:

> *Questa scheda sintetica è stata generata tramite sistemi di intelligenza artificiale per facilitare la lettura. Per i dettagli completi e il valore legale dell'atto, si rimanda al documento originale allegato.*

L'avviso viene impostato dal sistema e non richiede alcun intervento da parte del redattore.

### Esempio pratico

Un atto con oggetto "LIQ. LAVORO STRAORDINARIO PERSONALE DIP. 1° TRIM. 2026" viene importato con:

* **descrizione breve**: "Liq. lavoro straordinario personale dip. 1° trim. 2026";
* **abstract**: descrizione breve accessibile ai cittadini;
* **argomenti**: classificazione automatica che collega l'atto alle sezioni tematiche del sito.

### Sintesi mappatura campi Maggioli → OpenCity Italia

| Campo Maggioli                        | Valore esempio                                   | Campo OpenCity Italia               | Valore esempio                                  | Note                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------------------- | ------------------------------------------------ | ----------------------------------- | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Categoria + Sottocategoria            | `ATTI AMMINISTRATIVI / DETERMINA IN TRASPARENZA` | ✨ Tipologia di documento            | `Atto amministrativo / Determinazione`          | Mappatura tramite [vocabolario controllato "Documenti Albo pretorio"](https://gitlab.com/opencity-labs/docs/-/tree/Redattori_ripristinato/manuale-opencity-italia-sito-web-istituzionale-v3/modello-comuni/pubblicare-la-documentazione-del-comune/README.md). Per le **Pubblicazioni di Matrimonio**, il tipo documento viene sempre impostato a `Pubblicazione di matrimonio`. |
| Anno atto + Numero atto               | `2026` + `215`                                   | Numero atto                         | `215/2026`                                      | Visualizzato come stringa: "Determina n. 215 del 2026"                                                                                                                                                                                                                                                                                                                           |
| Data documento / Data atto            | `27/05/2026`                                     | Data del documento                  | `27/05/2026`                                    |                                                                                                                                                                                                                                                                                                                                                                                  |
| Data esecutività                      | `27/05/2026`                                     | Data inizio validità/efficacia      | `27/05/2026`                                    |                                                                                                                                                                                                                                                                                                                                                                                  |
| Data di registro                      | `27/05/2026`                                     | Data di inizio pubblicazione        | `27/05/2026`                                    |                                                                                                                                                                                                                                                                                                                                                                                  |
|                                       |                                                  | Data di rimozione dalla trasparenza | `27/05/2032`                                    | Calcolata automaticamente: data di inizio pubblicazione + 5 anni                                                                                                                                                                                                                                                                                                                 |
| Data di protocollazione               | `27/05/2026`                                     | Data di protocollazione             | `27/05/2026`                                    |                                                                                                                                                                                                                                                                                                                                                                                  |
| Numero di protocollo                  | `3444454`                                        | Numero di protocollo                | `3444454`                                       |                                                                                                                                                                                                                                                                                                                                                                                  |
| Anno di registro + Numero di registro | `2026` + `916`                                   | Numero registro albo                | `2026/916`                                      |                                                                                                                                                                                                                                                                                                                                                                                  |
| Proponente                            | `Ufficio Ambiente`                               | ✨ Unità organizzativa responsabile  | `Ufficio Ambiente`                              |                                                                                                                                                                                                                                                                                                                                                                                  |
| Oggetto                               | `AFFIDAMENTO INCARICO...`                        | Descrizione breve                   | `Affidamento incarico...`                       | Sentence case: prima lettera maiuscola, acronimi e nomi propri mantenuti in maiuscolo, testo non modificato né troncato                                                                                                                                                                                                                                                          |
| Dirigente/Firmatario                  | `Mario Rossi`                                    | Dirigente/Firmatario                | `Mario Rossi`                                   |                                                                                                                                                                                                                                                                                                                                                                                  |
| Allegati del gestionale               | `(file PDF + P7M)`                               | Documenti                           | `(file PDF + P7M)`                              | I file allegati vengono importati così come sono                                                                                                                                                                                                                                                                                                                                 |
|                                       |                                                  | ✨ Descrizione estesa                | *(testo generato)*                              | L'AI legge il PDF allegato e genera la descrizione estesa                                                                                                                                                                                                                                                                                                                        |
|                                       |                                                  | ✨ Argomenti                         | `Lavoro`, `Economia`, `Politica`                | L'AI legge il PDF allegato e assegna gli argomenti                                                                                                                                                                                                                                                                                                                               |
|                                       |                                                  | ✨ Formati disponibili               | `PDF`                                           | Rilevati automaticamente dai file allegati                                                                                                                                                                                                                                                                                                                                       |
|                                       |                                                  | Licenza di distribuzione            | `CC-BY 4.0`                                     | Sempre CC-BY 4.0 per tutti gli atti importati da Maggioli                                                                                                                                                                                                                                                                                                                        |
|                                       |                                                  | Nota in calce                       | `"Questa scheda sintetica è stata generata..."` | Aggiunta automaticamente a tutti gli atti con descrizione generata da AI                                                                                                                                                                                                                                                                                                         |

{% hint style="info" %}
I campi contrassegnati con ✨ sono generati o compilati tramite il supporto dell'intelligenza artificiale.
{% endhint %}




---

[Next Page](/llms-full.txt/1)

