Affiche la batterie de la Kobo (push via params /image.png) en pied de page

This commit is contained in:
jerem
2026-06-15 16:01:09 +02:00
parent 0178f596ef
commit ba7ea0af3f
5 changed files with 88 additions and 4 deletions

View File

@@ -18,10 +18,36 @@ BUSYBOX="./bin/busybox_kobo"
log() { echo "[$(date '+%H:%M:%S')] $*"; sync; }
read_battery() {
# Renvoie "CAP|CHG" (ex. "85|0"), CHG=1 si en charge. Vide si introuvable.
# On lit capacity + status dans le même dossier /sys/class/power_supply/*.
for d in /sys/class/power_supply/*/; do
[ -r "${d}capacity" ] || continue
cap=$(cat "${d}capacity" 2>/dev/null)
chg=0
if [ -r "${d}status" ]; then
case "$(cat "${d}status" 2>/dev/null)" in
Charging|Full) chg=1 ;;
esac
fi
echo "${cap}|${chg}"
return 0
done
echo ""
}
fetch() {
# On pousse la batterie de la Kobo en paramètres d'URL (le backend la mémorise).
url="$IMAGE_URL"
bat="$(read_battery)"
if [ -n "$bat" ]; then
cap="${bat%%|*}"; chg="${bat##*|}"
case "$url" in *\?*) sep="&" ;; *) sep="?" ;; esac
url="${url}${sep}bat=${cap}&chg=${chg}"
fi
# busybox wget (toujours présent), fallback curl si dispo dans le PATH.
"$BUSYBOX" wget -q -T 30 -O "$TMP" "$IMAGE_URL" 2>/dev/null && return 0
command -v curl >/dev/null 2>&1 && curl -fsSL -m 30 -o "$TMP" "$IMAGE_URL" 2>/dev/null && return 0
"$BUSYBOX" wget -q -T 30 -O "$TMP" "$url" 2>/dev/null && return 0
command -v curl >/dev/null 2>&1 && curl -fsSL -m 30 -o "$TMP" "$url" 2>/dev/null && return 0
return 1
}