Cadre photo PF1007L rooté : appli Android native pilotée par Home Assistant, éditeur de mise en page, outil cadre-layout
  • Java 64.9%
  • JavaScript 26.4%
  • Python 5.1%
  • HTML 2%
  • Shell 0.9%
  • Other 0.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-11-05 12:55:59 +01:00
app docs: README, guide de mise en page pour humains et assistants, règles pour agents 2026-11-05 12:55:59 +01:00
editeur feat(agenda): lignes par événement avec jour, horaire et salle ; son d'alerte déclenchable par HA 2026-11-05 12:21:37 +01:00
kiosk feat(cadre): appli native v3.0, éditeur v4, outil cadre-layout et exemples 2026-11-04 23:44:44 +01:00
layouts feat(agenda): lignes par événement avec jour, horaire et salle ; son d'alerte déclenchable par HA 2026-11-05 12:21:37 +01:00
outils feat(cadre): toucher et conditions sur les widgets, plantes, énergie, présence, météo à icônes, lampes en couleur 2026-11-05 11:55:13 +01:00
site docs: README, guide de mise en page pour humains et assistants, règles pour agents 2026-11-05 12:55:59 +01:00
.gitignore feat(cadre): appli native v3.0, éditeur v4, outil cadre-layout et exemples 2026-11-04 23:44:44 +01:00
AGENTS.md docs: README, guide de mise en page pour humains et assistants, règles pour agents 2026-11-05 12:55:59 +01:00
GUIDE-MISE-EN-PAGE.md docs: README, guide de mise en page pour humains et assistants, règles pour agents 2026-11-05 12:55:59 +01:00
README.md docs: README, guide de mise en page pour humains et assistants, règles pour agents 2026-11-05 12:55:59 +01:00

Cadre

Un cadre photo numérique du commerce (PF1007L, écran 10 pouces 1280 × 800, Android 6) rooté et transformé en écran mural piloté par Home Assistant : musique en cours avec pochette et paroles, diaporama Immich, horloge, horaires de prière, bus, agenda, météo, lampes du salon, et des pages composées librement.

Tout ce que le cadre affiche se règle depuis Home Assistant, sans toucher au cadre. Pour changer la mise en page, voir le guide de mise en page : il s'adresse à quelqu'un qui n'a jamais ouvert ce dépôt, et il est écrit pour pouvoir être donné tel quel à un assistant IA.

Ce qu'il y a ici

Dossier Contenu
app/ l'application Android native (xyz.az4aaz.cadre), écran d'accueil du cadre. Java, API 23, sans Gradle : VERSION_CODE=N VERSION_NAME=x.y bash build.sh puis adb install -r build/cadre.apk
editeur/ le panneau « Cadre » de Home Assistant (panel_custom, un seul fichier editeur.js) : mise en page à la souris et onglet Réglages
layouts/ des mises en page complètes ou des pages à fusionner, au format décrit dans le guide
outils/ cadre-layout (lire, envoyer, fusionner, vérifier une mise en page depuis un terminal) et des scripts de vérification du panneau
kiosk/ l'ancien kiosque WebView (dérivé de wesbos/photo-frame-dashboard), gardé pour mémoire
site/ l'ancienne page web affichée par ce kiosque, remplacée par l'application

Comment ça tient ensemble

  • Le cadre parle à Home Assistant par son API et son WebSocket, avec un jeton stocké sur le cadre seulement.
  • La configuration vit dans Home Assistant : un package YAML crée des entités cadre_* (mode, album, luminosité, lecteurs, prière, cours…). Le panneau et l'onglet Réglages de la tablette les pilotent.
  • La mise en page est un document JSON rangé dans les données utilisateur du frontend Home Assistant (clé cadre_layout). Le panneau l'édite ; input_button.cadre_layout prévient le cadre qu'il faut la relire.
  • Le panneau est servi en /local/cadre/editeur.js?v=N : à chaque nouvelle version, augmenter N dans configuration.yaml et redémarrer Home Assistant, sinon le navigateur garde l'ancienne.

Les règles pour un agent qui travaille dans ce dépôt sont dans AGENTS.md.