Passer au contenu principal

Serveur et fichiers de configuration

Mise en place de la configuration sur le serveur

La configuration des kiosques (qui détermine notamment leur finalité) est réalisée à partir de 4 fichiers téléchargés à chaque démarrage. Ils doivent donc être placés sur un serveur web accessible par les kiosques (intranet, site web de la collectivité…) :

  • config.cfg
    contient les éléments de configuration d'OpenKiosk
  • filters.txt
    contient les listes d'URL accessibles (liste blanche) ou interdites (liste noire)
  • config_system.json
    contient les éléments de configuration du système
  • boot_script.sh
    contient une liste de commandes exécutées en root au démarrage du kiosque

Les paramètres sont plutôt parlants et devraient vous permettre d'adapter votre solution à des usages très différents.

Affichage municipal :

Pour de l'affichage d'informations municipales, l'utilisation d'une solution de type slides.com (qui repose sur reveal.js) peut faire l'affaire. Dans ce cas, modifiez le fichier config.cfg de telle sorte que la page de lecture de la présentation s'ouvre en plein écran au démarrage, désactivez le curseur et la mise en veille de l'écran dans le fichier config_system.json, etc.

Exemples de fichiers de configuration :

Ces exemples permettent de créer un kiosque dédié à de l'accès public sécurisé.

Fichier config.cfg :

// Ficher de configuration OpenKiosk
pref("browser.startup.homepage", "https://example.com/");
pref("browser.download.dir", "/tmp");
pref("openkiosk.fullscreen.enabled", false);
pref("openkiosk.filters.enabled", true);
pref("openkiosk.filters.protocol.about.enabled", false);
pref("openkiosk.filters.protocol.blob.enabled", true);
pref("openkiosk.filters.protocol.data.enabled", true);
pref("openkiosk.filters.protocol.file.enabled", false);
pref("openkiosk.filters.protocol.ftp.enabled", false);
pref("openkiosk.filters.protocol.javascript.enabled", false);
pref("openkiosk.filters.protocol.mailto.enabled", false);
pref("openkiosk.filters.protocol.res.enabled", false);
pref("openkiosk.filters.protocol.sms.enabled", false);
pref("openkiosk.filters.protocol.tel.enabled", false);
pref("openkiosk.filters.protocol.viewsource.enabled", false);
pref("openkiosk.session.inactiveTerminal.enabled", true);
pref("openkiosk.session.inactiveTerminal.minutes", 10);
pref("openkiosk.session.inactiveTerminal.warn.enabled", false);
pref("openkiosk.session.inactiveTerminal.warn.secondes", 10);
pref("openkiosk.session.inactiveTerminal.warn.manual.enabled", false);
pref("openkiosk.session.cookies.enabled", false);
pref("openkiosk.tabs.enabled", true);
pref("openkiosk.osk.enabled", false);
pref("openkiosk.ui.urlbar.enabled", false);
pref("openkiosk.ui.context.menu.enabled", false);
pref("openkiosk.ui.context.search.enabled", false);
pref("openkiosk.admin.password", "e52f15f817710380d47db05179ec4deb,98c34518c3ca6afa539bdcf87ce274b8bc56938f77d4917b02c38e6468623d43");
pref("openkiosk.print.web.enabled", false);
pref("openkiosk.keys.settings.enabled", true);
pref("openkiosk.file.upload.enabled", false);
pref("security.mixed_content.block_active_content", false);
pref("permissions.default.microphone", 0);
pref("permissions.default.camera", 0);
pref("openkiosk.filters.strictmode.enabled", true);
pref("openkiosk.filters.file", "/usr/lib/OpenKiosk/filters.txt");
pref("print.always_print_silent", false);

Fichier filters.txt :

# Whitelist (* = wilcard pour autoriser tous les sous-domaines)
filter[https://*.ma-mairie.fr, ALL]
filter[https://*.gouv.fr, ALL]
filter[https://*.example.com, ALL]

Fichier config_system.json :

{
   "screen_saver": "true",
   "screen_saver_minutes": 10,
   "cursor": "true",
   "sound": "true"
}

Fichier boot_script.sh :

# Script qui s'éxecute en root au démarrage

 

Auteur original de cette documentation : Alexandre Salmetoz.