Panoramica
MyQ Roger è un SaaS nativo su cloud pubblico. A differenza dei tradizionali sistemi di gestione della stampa on-premise, Roger è progettato come un sistema distribuito ospitato principalmente su Microsoft Azure, che utilizza l'orchestrazione dei container e i microservizi.
Il sistema è suddiviso in due ambienti principali:
-
Lato server (cloud): ospitato in Azure Kubernetes Services (AKS), gestisce la logica, i database e la messaggistica.
-
Lato client (locale): applicazioni in esecuzione su workstation utente, dispositivi mobili e stampanti multifunzione (MFP) che comunicano in modo sicuro con il cloud.
Architettura lato server (cloud)
Il nucleo di MyQ Roger risiede nel cloud Microsoft Azure. L'infrastruttura è progettata per garantire elevata disponibilità, sicurezza e scalabilità utilizzando Kubernetes.
Componenti principali
-
Azure Kubernetes Service (AKS): la logica dell'applicazione viene eseguita all'interno di container Docker gestiti da Kubernetes.
-
Roger Server (ASP.NET Core): l'applicazione backend principale che gestisce la logica di business, le richieste API, i lavori di stampa e la gestione degli utenti e delle stampanti.
-
Event Bus Server: gestisce la messaggistica asincrona e la comunicazione in tempo reale tra il server e i client.
-
Load Balancer & Ingress: il traffico entra nel cluster tramite un Azure Load Balancer, instradando il traffico HTTPS ai servizi appropriati ({region}.roger.myq.cloud:443 e {region}.amqp.myq.cloud:5671).
Persistenza dei dati
MyQ Roger utilizza servizi dati Azure specifici per garantire l'integrità e la sicurezza dei dati:
-
Database SQL: memorizza dati strutturati (utenti, stampanti, contabilità dei lavori, ecc.).
-
Cosmos DB: un repository non SQL per la telemetria dei lavori grezza e profondamente strutturata, che conserva i dati prima di riassumerli nella pagina dei report e nei report esportati.
-
KeyVault: gestisce in modo sicuro segreti, chiavi e certificati.
Componenti lato client
Poiché il server si trova nel cloud, i componenti lato client svolgono un ruolo cruciale nel collegare la rete locale (dove si trovano le stampanti) con l'infrastruttura cloud.
-
Roger Desktop Client (.NET Core):
-
Piattaforma: Windows, macOS
-
Ruolo: funge da connettore locale. Non è solo un'interfaccia utente, ma gestisce anche la contabilità dei lavori e il processo di rilascio tramite Roger Server.
-
Gestione dei lavori di stampa e spooling:
-
Spooling client (locale): conserva i dati dei lavori di stampa sul dispositivo dell'utente per ridurre al minimo l'utilizzo della larghezza di banda, inviando solo i metadati al cloud. Il lavoro viene rilasciato direttamente dal client alla stampante. Le stampanti vengono rilevate tramite comunicazione SNMP e i lavori possono essere rilasciati utilizzando i protocolli IPPS o RAW configurati nel Roger Server. La stampante e MyQ Roger Client (MRC) devono trovarsi sulla stessa rete.
-
Spooling cloud: carica facoltativamente l'intero lavoro di stampa su Cloud Storage (OneDrive, Google Drive, MyQ Cloud), consentendo agli utenti di rilasciare i lavori su qualsiasi rete o dispositivo.
-
-
Resilienza e monitoraggio:
-
Stampa di fallback: garantisce la continuità della stampa commutando automaticamente i metodi di instradamento se la connessione al Roger Server viene temporaneamente interrotta.
-
Monitoraggio della stampa locale (LPM): tiene traccia e registra le attività di stampa locale (tutti i lavori di stampa inviati a stampanti USB collegate localmente o code TCP/IP dirette).
-
-
Comunicazione: si connette al server Roger tramite API/REST o websocket e mantiene una connessione persistente a Event Bus (AMQP tramite porta TLS 5671) per la segnalazione in tempo reale.
-
-
App Roger Mobile (Flutter):
-
Piattaforma: iOS, Android, Chromebook.
-
Ruolo: funge da assistente digitale personale sul posto di lavoro, collegando l'archiviazione cloud con i dispositivi fisici.
-
Integrazione cloud:
-
Connessione e navigazione nei cloud: si autentica direttamente con l'archiviazione cloud di terze parti (OneDrive, Google Drive, SharePoint, Dropbox e Box) consentendo agli utenti di sfogliare le cartelle e visualizzare l'anteprima dei file.
-
-
Flussi di lavoro digitali:
-
Gestione dei flussi di lavoro: consente agli utenti di controllare completamente i propri processi documentali. Oltre a semplicemente avviare complessi flussi di lavoro di scansione, gli utenti possono creare nuovi flussi di lavoro personali da zero o gestire e modificare quelli esistenti direttamente dall'interfaccia dell'app.
-
Scansione mobile: utilizza la fotocamera del dispositivo per scansionare documenti, applicare il rilevamento/la correzione dei bordi e condividere o caricare sul dispositivo, su destinazioni cloud collegate o tramite e-mail.
-
-
Interazione con la stampante:
-
Identificazione e rilascio: "Rileva" le stampanti senza scansione di rete, utilizzando la vicinanza fisica (Bluetooth/NFC) o la scansione di un codice QR sul pannello del dispositivo per autenticare e rilasciare i lavori in modo sicuro.
-
-
-
Roger MFP/Terminal:
-
Ruolo: funge da chiosco cloud sicuro direttamente sul pannello della stampante, gestendo l'autenticazione degli utenti ed eseguendo flussi di lavoro di stampa e scansione senza server.
-
Piattaforme e tecnologia:
-
Kyocera: HyPAS (basato su Java), funziona come applicazione di sistema nativa direttamente sul firmware del dispositivo.
-
HP: Android (HP Workpath), funziona come una moderna app Android installata tramite HP Command Center.
-
Ricoh: Android (Smart Operation Panel), funziona come applicazione Android nativa su Ricoh SmartSDK.
-
-
Comunicazione:
-
Protocollo: utilizza HTTPS (TLS 1.2/1.3) rigorosamente crittografato per tutte le comunicazioni.
-
Accesso diretto: il terminale comunica direttamente con {region}.roger.myq.cloud.
-
-
-
Roger Web Client (Angular):
-
Ruolo: funge da punto di accesso unificato per l'amministrazione dei tenant e il self-service degli utenti.
-
Funzionalità:
-
Console di amministrazione: fornisce un'interfaccia centralizzata per la gestione dell'intero ambiente tenant, compresa la gestione e la sincronizzazione degli utenti (Azure AD), la gestione delle stampanti, la definizione delle politiche e la gestione delle quote.
-
Portale utente: offre agli utenti finali una vista dashboard personale della cronologia dei loro lavori e la possibilità di gestire il proprio profilo personale.
-
-
Comunicazione:
-
Punto di accesso: gli utenti accedono al client tramite un URL sicuro.
-
Protocollo: comunica esclusivamente tramite HTTPS (TLS 1.2/1.3), effettuando chiamate API REST al backend del server Roger.
-
-
Architettura di rete e sicurezza
MyQ Roger utilizza un'architettura di rete "Secure by Design", che impiega sottoreti segmentate e protocolli crittografati.
Segmentazione della rete
L'ambiente Azure è segmentato in zone di sicurezza distinte:
-
Sottorete API: rivolta al pubblico (tramite Load Balancer), ospita i servizi API e OAuth2. È il punto di accesso per tutti i client mobili e stampanti tramite HTTPS (porta 443).
-
Sottorete Event Bus: gestisce l'accodamento dei messaggi. Accessibile dai Desktop Client tramite TLS sicuro (porta 5671).
-
Sottorete database: una sottorete strettamente privata contenente Cosmos DB, Key Vault e SQL Server. Questi non sono esposti alla rete Internet pubblica e sono accessibili solo tramite la sottorete API.
Protocolli di comunicazione
-
HTTPS (porta 443): utilizzato per tutte le chiamate API REST da app mobili, client Web e MFP.
-
AMQP (porta 5671): protocollo di messaggistica sicuro utilizzato dal Desktop Client per comunicare con l'Event Bus.
-
SNMP e IPPS: utilizzati localmente dal Desktop Client per individuare e comunicare con le stampanti fisiche.
Rilevamento globale e regionale
Per supportare una base di utenti globale, MyQ Roger implementa un meccanismo di rilevamento regionale.
-
Server di rilevamento regionale: quando un client si avvia, contatta il server globale.
-
Routing regionale: il server globale indirizza il client al "cluster lato server" (regione) appropriato in base alla posizione del tenant (ad esempio, UE, UE2, Stati Uniti).
Riepilogo eseguibile e tecnologia
|
Componente |
Tecnologia/Framework |
Piattaforma / Sistema operativo |
Protocolli primari (in uscita) |
|
Roger Server |
ASP.NET Core |
Servizio Azure Kubernetes (contenitori Linux) |
HTTPS (443), SQL, cluster interno |
|
Server bus eventi |
Coda di messaggi (AMQP) |
Servizio Azure Kubernetes |
AMQP (5671) |
|
Desktop Client |
.NET Core |
Windows, macOS |
HTTPS, AMQP, SNMP, Raw Porta 9100, LPR 515 |
|
App mobile |
Flutter |
iOS, Android, Chromebook |
HTTPS, OAuth (Cloud), Bluetooth/NFC |
|
Client web |
Angular (SPA) |
Browser web |
HTTPS (TLS 1.2/1.3) |
|
Terminale MFP |
Kyocera: HyPAS (Java) HP/Ricoh: Android |
Firmware dispositivo integrato |
HTTPS (TLS 1.2/1.3) |