Aligne l'aide et les libellés de l'interface sur Automation
Les pages /aide, /settings et /logs référeçaient encore Tasker (payant) pour
la détection de présence. Mise à jour de la procédure (Wi-Fi ou géofence +
action Trigger URL POST), des libellés et messages, et du test qui vérifiait
la présence du mot « Tasker ».
💘 Generated with Crush
Assisted-by: Crush:glm-5.2
This commit is contained in:
@ -886,7 +886,7 @@ def settings_regenerate_presence_token(request: Request):
|
|||||||
f'<span class="settings-urllabel">Départ</span>'
|
f'<span class="settings-urllabel">Départ</span>'
|
||||||
f'<code class="settings-url">{depart_url}</code>'
|
f'<code class="settings-url">{depart_url}</code>'
|
||||||
f'</div>'
|
f'</div>'
|
||||||
f'<div class="settings-saved">Token régénéré. Mets à jour les URLs dans Tasker.</div>'
|
f'<div class="settings-saved">Token régénéré. Mets à jour les URLs dans Automation.</div>'
|
||||||
f'</div>'
|
f'</div>'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
<div class="stats-head">
|
<div class="stats-head">
|
||||||
<div>
|
<div>
|
||||||
<span class="stats-title">Aide</span>
|
<span class="stats-title">Aide</span>
|
||||||
<div class="stats-meta">Configurer les notifications ntfy et la détection de présence Tasker</div>
|
<div class="stats-meta">Configurer les notifications ntfy et la détection de présence (Automation)</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -73,39 +73,48 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="settings-card">
|
<div class="settings-card">
|
||||||
<span class="hist-label">2. Détecter la présence (Tasker)</span>
|
<span class="hist-label">2. Détecter la présence (Automation)</span>
|
||||||
<p class="settings-p">
|
<p class="settings-p">
|
||||||
Créer une automatisation Tasker déclenchée par une géofence autour du bureau : à l'entrée
|
Créer une automatisation <a href="https://f-droid.org/en/packages/com.jens.automation2/" target="_blank" rel="noopener">Automation</a>
|
||||||
de la zone, appeler l'URL "Arrivée" ; à la sortie, l'URL "Départ".
|
(app FOSS, F-Droid) déclenchée par le Wi-Fi du bureau ou par une géofence :
|
||||||
|
à l'entrée, appeler l'URL « Arrivée » ; à la sortie, l'URL « Départ ».
|
||||||
</p>
|
</p>
|
||||||
<ol class="aide-steps">
|
<ol class="aide-steps">
|
||||||
<li>
|
<li>
|
||||||
Installe <a href="https://tasker.joaoapps.com/" target="_blank" rel="noopener">Tasker</a>
|
Installe <a href="https://f-droid.org/en/packages/com.jens.automation2/" target="_blank" rel="noopener">Automation</a>
|
||||||
(payant, Play Store).
|
depuis F-Droid (évite la version Play Store, amputée de la localisation).
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Autorise Tasker à utiliser la localisation en arrière-plan
|
Autorise la <b>localisation en arrière-plan</b> : Réglages → Applications →
|
||||||
(Réglages → Applications → Tasker → Autorisations → Localisation → "Toujours").
|
Automation → Autorisations → Position → <b>Toujours</b>. Sans ça, Android
|
||||||
Sans ça, Android coupe la géolocalisation quand l'app n'est pas au premier plan.
|
coupe la détection quand l'app n'est pas au premier plan.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Crée un profil <b>Entrée bureau</b> :
|
Désactive l'<b>optimisation batterie</b> pour Automation (même menu →
|
||||||
|
Batterie → « Aucune restriction »).
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Crée la règle <b>Arrivée bureau</b> — Automation → <b>Rules</b> → <b>+</b> :
|
||||||
<ul class="aide-substeps">
|
<ul class="aide-substeps">
|
||||||
<li>Onglet <b>Profiles</b> → bouton <b>+</b> → <b>Location</b>.</li>
|
<li><b>Trigger</b> : <b>Wifi connection</b> → entre le SSID du Wi-Fi du bureau (méthode recommandée),
|
||||||
<li>Renseigne l'adresse ou les coordonnées du bureau, rayon ~100–150 m.</li>
|
<i>ou</i> <b>Location</b> → adresse du bureau, rayon ~100–150 m, événement <b>Enter</b> (géofence).</li>
|
||||||
<li>Tâche associée (nouvelle tâche, ex: <code>PointeuseArrivee</code>) :</li>
|
<li><b>Action</b> : <b>Trigger URL</b>, method <code>POST</code>,
|
||||||
<li>Action <b>Net → HTTP Request</b>, méthode <code>GET</code>,
|
|
||||||
URL = ton lien <b>Arrivée</b> copié depuis <a href="/settings">/settings</a>.</li>
|
URL = ton lien <b>Arrivée</b> copié depuis <a href="/settings">/settings</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Crée un profil symétrique <b>Sortie bureau</b> : même géofence, événement <b>Exit</b>,
|
Crée la règle symétrique <b>Sortie bureau</b> : même SSID en sens <b>déconnexion</b>
|
||||||
tâche <code>PointeuseDepart</code> qui appelle ton lien <b>Départ</b>.
|
(ou même géofence, événement <b>Exit</b>), action <b>Trigger URL</b> <code>POST</code>
|
||||||
|
vers ton lien <b>Départ</b>.
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
<p class="settings-hint">
|
||||||
|
Au bureau, la méthode Wi-Fi est généralement plus réactive et plus économe en
|
||||||
|
batterie que la géofence GPS.
|
||||||
|
</p>
|
||||||
<p class="settings-hint">
|
<p class="settings-hint">
|
||||||
Si tu changes de téléphone ou réinstalles, les tokens restent valides — il suffit de
|
Si tu changes de téléphone ou réinstalles, les tokens restent valides — il suffit de
|
||||||
recharger les profils Tasker et l'abonnement ntfy.
|
recréer les règles Automation et l'abonnement ntfy.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -113,8 +122,8 @@
|
|||||||
<span class="hist-label">3. Vérifier</span>
|
<span class="hist-label">3. Vérifier</span>
|
||||||
<ol class="aide-steps">
|
<ol class="aide-steps">
|
||||||
<li>
|
<li>
|
||||||
Force une entrée/sortie de zone (ou lance la tâche HTTP manuellement dans Tasker via
|
Force une entrée/sortie de zone ou de Wi-Fi (ou, dans Automation, ouvre une règle
|
||||||
le bouton "play"). La réponse doit être <code>{"ok":true}</code>.
|
et utilise le bouton « Test », icône lecture). La réponse doit être <code>{"ok":true}</code>.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Va sur <a href="/logs">/logs</a> : tu dois voir une entrée "Présence / arrivée" ou
|
Va sur <a href="/logs">/logs</a> : tu dois voir une entrée "Présence / arrivée" ou
|
||||||
@ -136,8 +145,10 @@
|
|||||||
est bien le même côté serveur et côté téléphone (sensible à la casse).
|
est bien le même côté serveur et côté téléphone (sensible à la casse).
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>Pas de déclenchement Tasker</b> : dans Tasker, vérifie que la géofence est bien activée
|
<b>Pas de déclenchement Automation</b> : dans Automation, vérifie que la règle est
|
||||||
(icône rouge) et lance la tâche à la main pour isoler le problème (réseau vs géoloc).
|
bien activée et utilise le bouton « Test » pour isoler le problème (réseau vs
|
||||||
|
géoloc vs Wi-Fi). Vérifie aussi que l'optimisation batterie est bien désactivée
|
||||||
|
pour l'app.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>Logs vides sur /logs</b> : les entrées ne s'écrivent que quand un événement réel se
|
<b>Logs vides sur /logs</b> : les entrées ne s'écrivent que quand un événement réel se
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
<div>
|
<div>
|
||||||
<span class="stats-title">Journaux</span>
|
<span class="stats-title">Journaux</span>
|
||||||
<div class="stats-meta">
|
<div class="stats-meta">
|
||||||
Notifications ntfy et détections de présence (Tasker) — {{ current_user }}
|
Notifications ntfy et détections de présence (Automation) — {{ current_user }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -126,13 +126,14 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="settings-card">
|
<div class="settings-card">
|
||||||
<span class="hist-label">Détection de présence (Tasker) <a href="/aide" class="settings-help-link">Aide</a></span>
|
<span class="hist-label">Détection de présence (Automation) <a href="/aide" class="settings-help-link">Aide</a></span>
|
||||||
<p class="settings-p">
|
<p class="settings-p">
|
||||||
Crée une automatisation Tasker déclenchée par une géofence autour du bureau : à l'<b>entrée</b> de la
|
Crée une automatisation <a href="https://f-droid.org/en/packages/com.jens.automation2/" target="_blank" rel="noopener">Automation</a>
|
||||||
zone, appelle l'URL "arrivée" ; à la <b>sortie</b>, l'URL "départ". Tant que tu es détecté présent sans
|
déclenchée par le Wi-Fi du bureau (ou une géofence) : à la <b>connexion</b>/entrée, appelle l'URL « arrivée » ;
|
||||||
avoir pointé l'entrée du matin, ou parti sans avoir pointé la sortie, tu reçois un rappel toutes les
|
à la <b>déconnexion</b>/sortie, l'URL « départ ». Tant que tu es détecté présent sans
|
||||||
5 minutes, dans la plage horaire réglée ci-dessus (jours ouvrés). Étapes détaillées sur la page
|
avoir pointé l'entrée du matin, ou parti sans avoir pointé la sortie, tu reçois un rappel
|
||||||
<a href="/aide">Aide</a>.
|
selon l'intervalle réglé ci-dessus, dans la plage horaire configurée (jours ouvrés).
|
||||||
|
Étapes détaillées sur la page <a href="/aide">Aide</a>.
|
||||||
</p>
|
</p>
|
||||||
<div id="presence-urls">
|
<div id="presence-urls">
|
||||||
<div class="settings-urlrow">
|
<div class="settings-urlrow">
|
||||||
|
|||||||
@ -45,7 +45,7 @@ def test_logs_page_empty_for_new_user():
|
|||||||
|
|
||||||
def test_logs_page_shows_entries_after_presence():
|
def test_logs_page_shows_entries_after_presence():
|
||||||
token = models.load_notif_config("alice")["token"]
|
token = models.load_notif_config("alice")["token"]
|
||||||
# Simule une arrivée Tasker
|
# Simule une arrivée Automation
|
||||||
client.post(f"/presence/{token}/arrivee")
|
client.post(f"/presence/{token}/arrivee")
|
||||||
# Simule un départ
|
# Simule un départ
|
||||||
client.post(f"/presence/{token}/depart")
|
client.post(f"/presence/{token}/depart")
|
||||||
@ -86,7 +86,7 @@ def test_aide_page_content():
|
|||||||
r = client.get("/aide", cookies=COOKIES)
|
r = client.get("/aide", cookies=COOKIES)
|
||||||
assert r.status_code == 200
|
assert r.status_code == 200
|
||||||
# Vérifie la présence des sections clés
|
# Vérifie la présence des sections clés
|
||||||
for needle in ["ntfy", "Tasker", "Aide", "topic", "géofence", "/logs"]:
|
for needle in ["ntfy", "Automation", "Aide", "topic", "géofence", "/logs"]:
|
||||||
assert needle in r.text, f"missing {needle!r}"
|
assert needle in r.text, f"missing {needle!r}"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user