technique:raspitv-accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
technique:raspitv-accueil [2021/04/29 23:36] francoisatechnique:raspitv-accueil [2024/04/02 15:08] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-====== Raspberry TV-Accueil ====== +**Cette page est obsolète. Veuillez accéder au contenu à son nouvel emplacement : [[https://bibliotech.cemea.org/books/outils-technique/page/raspitv-accueil|raspitv-accueil]]**
- +
-Le projet repose sur l'utilisation conjointe de 2 outils : +
- +
-  Une appli d'enregistrement de réservations : Booked. Appli libre forkée et disponible ici :  [[https://github.com/effgarces/BookedScheduler|https://github.com/effgarces/BookedScheduler]] +
-      * Cette appli sert à stocker des réservations de salles : [[https://ladoc.cemea.org/dsi/booked_an|https://ladoc.cemea.org/dsi/booked_an]] +
-  * Un raspberry connecté à une TV qui vient piocher les infos dans Booked et les affiche de manière personnalisée +
- +
-===== Comment ça marche ? ===== +
- +
-1) Booked fonctionne sur le mode d'une appli Web avec PHP & une base de données MySQL dont la structure reste technique+
- +
-Une partie du [[https://code.cemea.org/francois.audirac/raspitv|code du projet]] propose à l'aide d'un script Python-Flask **apibkd.py**  (lancé par le script runapi.sh) une API qui affiche les événements voulus sur une URL dans un fichier JSON donné : +
- +
-[[http://ip_booked:5000/v1/YYYY-MM-DD|http://ip_booked:5000/v1/YYYY-MM-DD]] renvoie des infos du jour : +
-<code> +
- +
-    { +
-        "titre": "D4", +
-        "description": "", +
-        "organisateur": "Edwige MASSON", +
-        "datedebut": "2021-04-26 09:00:00", +
-        "datefin": "2021-04-26 17:00:00", +
-        "nbpers": "", +
-        "salle": "Salle 15", +
-        "series_id": 49, +
-        "reservation_instance_id": 38 +
-    }, +
- +
-</code> +
-==== Installation et services en détail de l'API ==== +
- +
-- le code est placé dans /srv/raspitv depuis le dépot cloné : https://code.cemea.org/francois.audirac/raspitv +
- +
-- Personnaliser le .env (issu du .env.example) pour se connecter à la base de données. +
- +
-- installer le service **apibkd.service**  qui va lancer /srv/raspitv/**runapi.sh**  qui va lancer **apibkd.py** +
- +
-- le service doit alors répondre aux requêtes web : http://ip_booked:5000/v1/YYYY-MM-DD  et http://ip_booked:5000/v1/lastupdate qui renvoie la date de dernière modification de la base de données. +
- +
-2) Du côté du Raspberry, un script permanent diffuse un diaporama à partir d'images contenues dans des dossiers distants. +
- +
-Le code du projet propose un script **plangen.py**  qui vient régulièrement chercher les modifications issues de Booked et générer une image **planning.png**  à partir d'un fichier HTML + CSS. Ce fichier placé dans /var/lib/rs/ sera donc affiché au milieu des images diffusées. Si aucun événement n'est programmé, le planning est noir. +
- +
-==== Installation et services en détail de la diffusion sur la TV ==== +
- +
-- le code est placé dans /srv/raspitv depuis le dépot cloné : https://code.cemea.org/francois.audirac/raspitv +
- +
-- Personnaliser le **.env**  (issu du .env.example) pour adapter des paramètres de diffusion +
- +
-- Personnaliser le fichier **/var/lib/rs/media.conf**  pour personnaliser les paramètres de connexion au serveur/cloud : accès aux images distantes +
- +
-- installer le service **raspitv.service**  qui va lancer /srv/raspitv/**raspitvdiff.sh**  qui va générer le planning (**plangen.py**) et lancer la diffusion du diaporama. +
- +
-- le fichier /etc/crontab est personnalisé pour varier les périodes d'affichage avec : extinction d'écran + arrêt diffusion / démarrage écran + départ diffusion +
- +
  • technique/raspitv-accueil.1619732189.txt.gz
  • Dernière modification : 2021/04/29 23:36
  • de francoisa