Passer au contenu principal

Configuration

Le pilote lit config.json depuis la racine de l’application :
  • Exécutable fourni : à côté de plato-printer.exe.
  • Développement : répertoire de travail actuel.
Si config.json est manquant, le pilote en crée un avec des valeurs par défaut nettoyées.

Exemple de configuration

{
  "server": {
    "port": 8080
  },
  "features": {
    "meshEnabled": true,
    "httpsEnabled": true
  },
  "caddy": {
    "enabled": true,
    "domain": "plato-printer.local",
    "httpsPort": 443,
    "version": "2.6.4"
  },
  "redis": {
    "mode": "embedded",
    "version": "6.2.14",
    "host": "127.0.0.1",
    "port": 6379,
    "db": 0,
    "username": "",
    "password": "",
    "diskSync": true,
    "snapshotIntervalSec": 30
  },
  "queue": {
    "retryDelayMs": 5000,
    "maxAttempts": 2147483647
  }
}

Serveuse

ChampDéfautRemarques
server.port8080Port HTTP pour tous les points de terminaison API.
L’application Express active CORS et Access-Control-Allow-Private-Network: true permissifs afin que les clients du navigateur POS puissent appeler le pilote à partir de réseaux locaux/privés.

Caractéristiques

ChampDéfautRemarques
features.meshEnabledtrueActive la signalisation PeerJS sur /mesh.
features.httpsEnabledtruePermet la configuration de HTTPS lorsque Caddy est également activé.
HTTPS ne démarre que lorsque features.httpsEnabled et caddy.enabled sont tous deux vrais.

Caddie

ChampDéfautRemarques
caddy.enabledtrueActive le chemin du proxy inverse Caddy.
caddy.domainplato-printer.localNom d’hôte utilisé pour HTTPS.
caddy.httpsPort443Port d’écoute HTTPS.
caddy.version2.6.4Épinglé pour la compatibilité avec Windows 7.
Sous Windows 7 ou version antérieure, le pilote rejette les configurations HTTPS qui utilisent une version de Caddy autre que 2.6.4.

Redis

ChampDéfautRemarques
redis.modeembeddedembedded démarre Redis à partir du pilote ; external utilise un serveur Redis existant.
redis.version6.2.14Version Redis intégrée requise.
redis.host127.0.0.1Redis lier/connecter l’hôte.
redis.port6379Port Redis.
redis.db0Numéro de base de données Redis.
redis.usernamevideUtilisé pour l’authentification Redis externe lorsqu’il est défini.
redis.passwordvideUtilisé pour l’authentification Redis externe lorsqu’il est défini.
redis.diskSyncfalse généré par défautÉcrit les instantanés Redis dans dump.rdb lorsqu’il est vrai. La configuration de production validée définit ceci sur true.
redis.snapshotIntervalSec30Intervalle d’instantané utilisé lorsque la synchronisation du disque est activée.
Le démarrage intégré de Redis abandonne l’intégralité du pilote si Redis ne peut pas démarrer ou si la version réelle de Redis ne correspond pas à redis.version.

File d’attente

ChampDéfautRemarques
queue.retryDelayMs5000Correction du délai de nouvelle tentative pour les travaux d’impression ayant échoué.
queue.maxAttempts2147483647Nombre maximal de tentatives par tâche. La configuration actuelle réessaye effectivement pour toujours.

Désinfection

Le lecteur de configuration nettoie les valeurs :
  • Les ports et les paramètres numériques doivent être des entiers positifs.
  • Les booléens peuvent être des booléens ou des chaînes "true" / "false".
  • redis.mode doit être embedded ou external.
  • Les chaînes vides reviennent aux valeurs par défaut pour les champs de type domaine/version/hôte.