Skip to content

Envoyer les rappels push des parcours programmés (veille 18:00 et H-1) #44

Open

Description

@IlanAMG

Contexte

Epic : #14
Maquette : E-18 · validée le 2026-09-28
API · Architecture-Technique · D-002

Comportement attendu

  • Table notifications, enregistrement des jetons push (POST /me/devices), endpoint interne /internal/reminders appelé par Cloud Scheduler toutes les 15 min, envoi FCM via Expo, respect des préférences.
  • Mobile : réception, tap → ouvre E-07 ; événements reminder_received, reminder_tapped.

Critères d'acceptation

Activity

  1. added this to the v0.4 milestone on Sep 21, 2026
  2. IlanAMG commented on Sep 25, 2026

    @IlanAMG
    MemberAuthor

    D-035 (https://github.com/Inprogress-Agency/widoo-app/wiki/Design-Changelog) : rappels la veille à 18:00 et une heure avant le départ.

  3. changed the title [-]Envoyer les rappels push J-1 et H-1 des parcours programmés[/-] [+]Envoyer les rappels push des parcours programmés (veille 18:00 et H-1)[/+] on Sep 25, 2026
  4. IlanAMG commented on Sep 28, 2026

    @IlanAMG
    MemberAuthor

    D-060 (https://github.com/Inprogress-Agency/widoo-app/wiki/Design-Changelog) : au premier « Programmer », sheet « Recevoir un rappel ? » (montrée une seule fois) puis fenêtre du système ; refus sans blocage. Dans « Votre sortie » (E-08) : ligne « Rappels désactivés » avec « Activer », qui ouvre la fenêtre du système ou les réglages du téléphone. Maquettes : https://github.com/Inprogress-Agency/widoo-app/wiki/Ecrans#e-18--premier-lancement et design/E-08/2026-09-28-rappels-desactives.png.

  5. IlanAMG commented on Sep 28, 2026

    @IlanAMG
    MemberAuthor

    D-061 (https://github.com/Inprogress-Agency/widoo-app/wiki/Design-Changelog) : lire l'état réel des notifications du système pour la ligne « Notifications — Désactivées » des Réglages (E-09) et la ligne « Rappels désactivés » de Votre sortie (E-08) ; geste d'échappement sur la sheet des rappels = « Plus tard ».

  6. IlanAMG commented on Sep 28, 2026

    @IlanAMG
    MemberAuthor

    D-062 (https://github.com/Inprogress-Agency/widoo-app/wiki/Design-Changelog) : respecter notification_prefs (reminders pour la veille et H-1 ; next_day pour la notification de 10:00 après une sortie, go_closed) et envoyer dans la langue effective (users.locale, sinon langue du téléphone de POST /me/devices). Dépend de #197 ; modèles traduits dans #199.

  7. added
    status:blockedBloqué, voir commentaire ⛔
    and removed
    status:readySpec complète, prêt à coder
    on Sep 29, 2026
  8. added
    status:readySpec complète, prêt à coder
    and removed
    status:blockedBloqué, voir commentaire ⛔
    on Oct 14, 2026
  9. PaulThiberville commented on Oct 15, 2026

    @PaulThiberville
    Collaborator

    📋 MANAGER, 2026-10-15 — à inclure dans ce ticket (découverte de CODE pendant #189, PR #484) : l'app ne déclare pas android.permission.POST_NOTIFICATIONS. Sur Android 13 et plus elle ne peut pas notifier, et Réglages › Notifications (E-19) affiche toujours l'encart « coupées » avec des interrupteurs inactifs. À faire avec le module de notifications : déclarer la permission, la demander au premier « Programmer » (E-18, « Recevoir un rappel ? »), lire l'état sur iOS (getPermissionsAsync, D-061) et remplacer readPhoneNotifications (apps/mobile/src/settings/phoneNotifications.ts). Ce ticket est area:api : si la part mobile dépasse une session, la sortir en ticket area:mobile lié.

  10. PaulThiberville commented on Oct 15, 2026

    @PaulThiberville
    Collaborator

    Depuis #199 (PR #493) : les rappels doivent résoudre leur destinataire par pushRecipientOf(db, userId, 'reminders') (apps/api/src/notifications/recipients.ts), qui renvoie { locale, pushTokens } ou null si l'interrupteur « Rappels » est coupé, le compte supprimé ou sans téléphone. Les textes du push s'écrivent en Localized<T> (@widoo/shared), fr et en, et l'envoi prend texts[locale]. Même chose pour go_closed et report_resolved, avec notificationPrefOfKind[kind]. Les critères de #199 « un utilisateur en reçoit les push en anglais » et « aucun envoi pour un type désactivé » se vérifieront de bout en bout ici.

  11. PaulThiberville commented on Oct 15, 2026

    @PaulThiberville
    Collaborator

    📋 MANAGER, 2026-10-15 — partage avec #495, ce qui précise mon commentaire de 13:32Z. Ce ticket garde le module de notifications côté mobile : expo-notifications, le droit aps-environment, la déclaration android.permission.POST_NOTIFICATIONS, l'enregistrement du jeton (POST /me/devices), la réception et l'ouverture de E-07 au tap. La sheet « Recevoir un rappel ? » du premier « Programmer », la demande d'autorisation, « Rappels désactivés » (E-08) et le remplacement de readPhoneNotifications passent à #495, qui est déclaré bloqué par ce ticket.

    Deux critères de #199 sont aussi ajoutés ici, parce que #199 n'a livré que le socle (PR #493) : les rappels push dans la langue effective, et aucun push pour un type désactivé.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions