Progetti

Software, automazione AV e infrastrutture, dal problema al risultato.

Case study

Dettagli tecnici, scelte e risultati.

In corso

Client Televic CoCon

Client Python asincrono e tipizzato per le API REST documentate di Televic CoCon.

Autore — sviluppo per 3P Technologies S.r.l.

Problema
Fornire un'unica interfaccia asincrona per inviare comandi CoCon e ricevere notifiche, senza ripetere la gestione del trasporto in ogni applicazione.
Approccio
Long polling e invio dei comandi procedono separatamente, così le notifiche in ingresso non bloccano i comandi in uscita. I payload supportati diventano dataclass tipizzate, mentre retry, riconnessione e ripristino delle sottoscrizioni restano interni al client.
Contributo
Sviluppo del client asincrono, del parser tipizzato delle notifiche e della gestione di connessioni e comandi.
Risultato
Libreria pubblicata e utilizzata internamente come base per CoCon Vote Monitor.

Un solo punto di accesso a CoCon

Ho sviluppato il client perché il codice applicativo potesse lavorare con comandi ed eventi tipizzati, senza occuparsi direttamente di long polling, retry e riconnessioni. L’API basata su async with gestisce apertura e chiusura, mentre sottoscrizioni e callback mantengono semplice la gestione delle notifiche.

Il registro delle notifiche raccoglie in un solo punto il supporto ai diversi payload, mentre il ripristino delle sottoscrizioni permette alle applicazioni di proseguire dopo un’interruzione della connessione. Lo stesso client è poi diventato la base di CoCon Vote Monitor.

Tecnologie

Python · asyncio · aiohttp · Dataclass tipizzate · REST/JSON

Attribuzione

Sviluppato per 3P Technologies S.r.l., che ne detiene il copyright. Disponibile con licenza LGPL-3.0-or-later o commerciale. CoCon e i relativi marchi appartengono a Televic Conference NV; il progetto è indipendente e non affiliato a Televic.

In corso

CoCon Vote Monitor

Vista web in tempo reale dello stato della riunione e dei risultati di voto ricevuti da un sistema Televic CoCon.

Autore — sviluppo per 3P Technologies S.r.l.

Problema
Fornire una vista chiara della riunione, del punto all'ordine del giorno e dei risultati di voto correnti.
Approccio
L'applicazione mantiene sul server lo stato della riunione e della votazione e invia uno snapshot completo a ogni nuovo display collegato. I WebSocket trasportano gli aggiornamenti successivi e la vista standard può aprire il flusso di stampa del browser alla chiusura della votazione.
Contributo
Sviluppo dell'applicazione web, mappatura delle notifiche CoCon nello stato della pagina e aggiornamenti in tempo reale per i browser collegati.
Risultato
Applicazione pubblica e configurabile che visualizza stato della riunione, punto all'ordine del giorno, risultati per delegato e conteggi aggregati.

Una vista in tempo reale di ogni votazione

Ho sviluppato il monitor come applicazione complementare a cocon_client. Mantenere lo stato corrente sul server permette a un nuovo display di ricevere subito la vista completa della riunione e della votazione; i display già collegati restano aggiornati tramite WebSocket, senza polling o refresh della pagina.

Alla chiusura della votazione, la vista standard può aprire automaticamente il flusso di stampa del browser. /noautoprint mantiene la stessa vista in tempo reale senza attivarlo.

Tecnologie

Python · Starlette · Uvicorn · WebSocket · cocon_client

Attribuzione

Sviluppato per 3P Technologies S.r.l., che ne detiene il copyright. Rilasciato con licenza AGPL-3.0-or-later. CoCon e i relativi marchi appartengono a Televic Conference NV.

08/2024–in corso

Integrazione AV per spazi conferenza

Integrazione e configurazione di sistemi AV e di controllo per il rinnovamento di più spazi conferenza della principale istituzione internazionale di Ginevra.

System Integrator & Quality Manager — incarico di progetto per 3P Audiovisual SAGL

Problema
Far lavorare insieme in modo coerente diversi sistemi AV e di building control durante il rinnovamento pluriennale di più spazi conferenza.
Approccio
Confronto diretto con il cliente, verifica dei punti di contatto tra i sottosistemi, configurazione e collaudo dei dispositivi ambiente per ambiente e coordinamento delle modifiche al controllo con lo sviluppatore principale dell'automazione.
Contributo
Gestione dell'integrazione di sistema, confronto con il cliente su requisiti e possibili modifiche, configurazione, collaudo e messa in servizio dei sistemi audio, video, telecamere, KNX e controllo.
Risultato
Cinque dei sette ambienti previsti sono stati configurati, collaudati e messi in esercizio; le attività rimanenti sono in corso.

Integrazione su scala congressuale

Nei sette ambienti conferenza, il progetto comprende quasi 5.000 dispositivi e postazioni: circa 1.700 postazioni delegate e microfono, circa 2.800 unità di ascolto, oltre 300 endpoint AV-over-IP e decine di telecamere controllate.

Mi confronto direttamente con il cliente su requisiti e possibili modifiche, coordino le interfacce tra i sistemi e seguo in prima persona configurazione, collaudo e messa in servizio dei dispositivi. Cinque dei sette ambienti previsti sono operativi; le attività rimanenti sono ancora in corso.

Lavoro insieme allo sviluppatore senior dell’automazione, responsabile dell’implementazione principale del codice di controllo. Il mio contributo software riguarda le modifiche più piccole necessarie durante l’integrazione; la maggior parte del mio lavoro è dedicata a integrazione, configurazione dei dispositivi, verifiche di qualità e messa in servizio.

Tecnologie

AMX NetLinx · Sistemi di controllo AV · Audio e video su rete · Controllo telecamere · KNX

Attribuzione

Incarico di progetto a supporto di 3P Audiovisual SAGL come dipendente di 3P Technologies S.r.l., in collaborazione con lo sviluppatore senior dell'automazione.

Palette dei comandi

Navigazione

6 destinazioni disponibili.

Scorciatoie da tastiera

Le scorciatoie globali sono disattivate mentre scrivi in un campo. Tutte le azioni restano disponibili come controlli e link normali.

Alt+P
Apri la palette dei comandi
Alt+T
Cambia tema: auto, scuro, chiaro
Alt+H
Apri o chiudi questo aiuto
Esc
Chiudi la finestra attiva