Skip to main content
Skip table of contents

Architecture

Présentation

MyQ Roger est un SaaS natif dans le cloud public. Contrairement aux systèmes traditionnels de gestion d'impression sur site, Roger est conçu comme un système distribué hébergé principalement dans Microsoft Azure, utilisant l'orchestration de conteneurs et les microservices. 

Le système est divisé en deux environnements principaux : 

  • Côté serveur (cloud) : hébergé dans Azure Kubernetes Services (AKS), il gère la logique, les bases de données et la messagerie. 

  • Côté client (local) : applications exécutées sur les postes de travail des utilisateurs, les périphériques mobiles et les imprimantes multifonctions (MFP) qui communiquent de manière sécurisée avec le cloud. 

Architecture côté serveur (cloud) 

Le cœur de MyQ Roger réside dans le cloud Microsoft Azure. L'infrastructure est conçue pour offrir une haute disponibilité, une sécurité et une évolutivité optimales grâce à Kubernetes. 

Composants principaux 

  • Azure Kubernetes Service (AKS) : la logique de l'application s'exécute dans des conteneurs Docker gérés par Kubernetes. 

  • Roger Server (ASP.NET Core) : l'application backend principale qui gère la logique métier, les requêtes API, les travaux d'impression et la gestion des utilisateurs et des imprimantes. 

  • Serveur de bus d'événements : gère la messagerie asynchrone et la communication en temps réel entre le serveur et les clients. 

  • Load Balancer & Ingress : le trafic entre dans le cluster via un Azure Load Balancer, qui achemine le trafic HTTPS vers les services appropriés ({region}.roger.myq.cloud:443 et {region}.amqp.myq.cloud:5671). 

Persistance des données 

MyQ Roger utilise des services de données Azure spécifiques pour garantir l'intégrité et la sécurité des données : 

  • Base de données SQL : stocke les données structurées (utilisateurs, imprimantes, comptabilité des travaux, etc.). 

  • Cosmos DB : référentiel non SQL pour la télémétrie brute et profondément structurée des travaux, qui conserve les données avant de les résumer sur la page des rapports et dans les rapports exportés. 

  • KeyVault : gère de manière sécurisée les secrets, les clés et les certificats. 

roger-architecture.png

Composants côté client 

Le serveur étant dans le cloud, les composants côté client jouent un rôle crucial dans la connexion du réseau local (où se trouvent les imprimantes) à l'infrastructure cloud. 

  • Client Roger Desktop (.NET Core) : 

    • Plateforme : Windows, macOS 

    • Rôle : agit comme un connecteur local. Il ne s'agit pas seulement d'une interface utilisateur ; il gère la comptabilité des travaux et le processus de libération via Roger Server. 

    • Gestion des travaux et spooling : 

      • Mise en file d'attente côté client (local) : conserve les données des travaux d'impression sur l'appareil de l'utilisateur afin de minimiser l'utilisation de la bande passante, en envoyant uniquement les métadonnées vers le cloud. Le travail est libéré directement depuis le client vers l'imprimante. Les imprimantes sont détectées à l'aide de la communication SNMP, et les travaux peuvent être libérés à l'aide des protocoles IPPS ou RAW configurés dans Roger Server. L'imprimante et MyQ Roger Client (MRC) doivent se trouver sur le même réseau. 

      • Mise en file d'attente dans le cloud : permet de télécharger l'intégralité du travail d'impression vers un espace de stockage dans le cloud (OneDrive, Google Drive, MyQ Cloud), ce qui permet aux utilisateurs de lancer des travaux sur n'importe quel réseau ou périphérique. 

    • Résilience et surveillance : 

      • Impression de secours : garantit la continuité de l'impression en changeant automatiquement de méthode de routage si la connexion au serveur Roger est temporairement interrompue. 

      • Surveillance de l'impression locale (LPM) : suit et comptabilise les activités d'impression locales (tous les travaux envoyés à des imprimantes USB connectées localement ou à des files d'impression TCP/IP directes). 

    • Communication : se connecte au serveur Roger via API/REST ou websockets, et maintient une connexion persistante à Event Bus (AMQP via le port TLS 5671) pour une signalisation en temps réel. 

  • Application mobile Roger (Flutter) : 

    • Plateforme : iOS, Android, Chromebook. 

    • Rôle : agit comme un assistant numérique personnel, reliant le stockage cloud aux périphériques physiques. 

    • Intégration cloud : 

      • Connexion et navigation dans les clouds : s'authentifie directement auprès du stockage cloud tiers (OneDrive, Google Drive, SharePoint, Dropbox et Box), permettant aux utilisateurs de parcourir les dossiers et de prévisualiser les fichiers. 

    • Workflows numériques : 

      • Gestion des flux de travail : permet aux utilisateurs de contrôler entièrement leurs processus documentaires. Au-delà du simple déclenchement de flux de travail de numérisation complexes, les utilisateurs peuvent créer de nouveaux flux de travail personnels à partir de zéro ou gérer et modifier ceux existants directement dans l'interface de l'application. 

      • Numérisation mobile : utilise l'appareil photo de l'appareil pour numériser des documents, appliquer la détection/correction des bords et partager ou télécharger vers l'appareil, des destinations cloud connectées ou par e-mail. 

    • Interaction avec l'imprimante : 

      • Identification et validation : « Découvre » les imprimantes sans numérisation réseau, en utilisant la proximité physique (Bluetooth/NFC) ou en scannant un code QR sur le panneau du périphérique pour authentifier et valider les travaux en toute sécurité. 

  • Roger MFP/Terminal : 

    • Rôle : agit comme un kiosque cloud sécurisé directement sur le panneau de l'imprimante, gérant l'authentification des utilisateurs et exécutant des flux de travail d'impression et de numérisation sans serveur. 

    • Plateformes et technologie : 

      • Kyocera : HyPAS (basé sur Java), fonctionne comme une application système native directement sur le micrologiciel du périphérique. 

      • HP : Android (HP Workpath), fonctionne comme une application Android moderne installée via le HP Command Center. 

      • Ricoh : Android (Smart Operation Panel), fonctionne comme une application Android native sur le Ricoh SmartSDK. 

    • Communication : 

      • Protocole : utilise strictement le protocole HTTPS crypté (TLS 1.2/1.3) pour toutes les communications. 

      • Accès direct : le terminal communique directement avec {region}.roger.myq.cloud. 

  • Client Web Roger (Angular) : 

    • Rôle : sert de point d'accès unifié pour l'administration des locataires et le libre-service des utilisateurs. 

    • Capacités : 

      • Console d'administration : fournit une interface centralisée pour gérer l'ensemble de l'environnement des locataires, y compris la gestion et la synchronisation des utilisateurs (Azure AD), la gestion des imprimantes, les définitions de politiques et la gestion des quotas. 

      • Portail utilisateur : offre aux utilisateurs finaux un tableau de bord personnel affichant l'historique de leurs travaux et la possibilité de gérer leur profil personnel. 

    • Communication : 

      • Point d'accès : les utilisateurs accèdent au client via une URL sécurisée. 

      • Protocole : communique exclusivement via HTTPS (TLS 1.2/1.3), en effectuant des appels API REST vers le backend du serveur Roger. 

Architecture réseau et sécurité 

MyQ Roger utilise une architecture réseau « Secure by Design » (sécurisée dès la conception), qui fait appel à des sous-réseaux segmentés et à des protocoles cryptés. 

Segmentation du réseau 

L'environnement Azure est segmenté en zones de sécurité distinctes : 

  • Sous-réseau API : accessible au public (via un équilibreur de charge), il héberge les services API et OAuth2. Il s'agit du point d'entrée pour tous les clients mobiles et imprimantes via HTTPS (port 443). 

  • Sous-réseau Event Bus : gère la mise en file d'attente des messages. Accessible par Desktop Client via TLS sécurisé (port 5671). 

  • Sous-réseau de bases de données : sous-réseau strictement privé contenant Cosmos DB, Key Vault et SQL Server. Ceux-ci ne sont pas exposés à l'Internet public et ne sont accessibles que via le sous-réseau API. 

Protocoles de communication 

  • HTTPS (port 443) : utilisé pour tous les appels API REST provenant d'applications mobiles, de clients Web et de multifonctions. 

  • AMQP (port 5671) : protocole de messagerie sécurisé utilisé par le Desktop Client pour communiquer avec le bus d'événements. 

  • SNMP et IPPS : utilisés localement par le Desktop Client pour détecter les imprimantes physiques et communiquer avec elles. 

Détection mondiale et régionale 

Afin de prendre en charge une base d'utilisateurs mondiale, MyQ Roger met en œuvre un mécanisme de détection régionale. 

  • Serveur de découverte régionale : lorsqu'un client s'initialise, il contacte le serveur global. 

  • Routage régional : le serveur global achemine le client vers le « cluster côté serveur » (région) approprié en fonction de l'emplacement du locataire (par exemple, UE, UE2, États-Unis). 

Résumé des exécutables et des technologies 

Composant 

Technologie / Cadre 

Plateforme / Système d'exploitation 

Protocoles principaux (sortants) 

Serveur Roger 

ASP.NET Core  

Service Azure Kubernetes (conteneurs Linux) 

HTTPS (443), SQL, cluster interne 

Serveur de bus d'événements 

File d'attente de messages (AMQP) 

Service Azure Kubernetes 

AMQP (5671) 

Desktop Client 

.NET Core 

Windows, macOS 

HTTPS, AMQP, SNMP, Raw Port 9100, LPR 515 

Application mobile 

Flutter 

iOS, Android, Chromebook 

HTTPS, OAuth (Clouds), Bluetooth/NFC 

Client Web 

Angular (SPA) 

Navigateur Web 

HTTPS (TLS 1.2/1.3) 

Terminal MFP 

Kyocera : HyPAS (Java) HP/Ricoh : Android 

Micrologiciel intégré 

HTTPS (TLS 1.2/1.3) 

 

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.