1.8 KiB

TODO — ETM PowerSync App

En cours / priorité haute

  • TariffProvider — connexion RPC réelle

    • load() appelle encore un Future.delayed fictif
    • Brancher sur nymea JSON-RPC pour récupérer les prix live (ENTSO-E, Tibber, etc.)
  • EnergySetupProvider — persistance

    • Les assignations de rôles (EV, PAC, batterie…) ne survivent pas au redémarrage
    • Sérialiser en SharedPreferences ou JSON local
  • SchedulerProvider — exécution réelle

    • forceRecalc() ne fait rien pour l'instant
    • Brancher sur l'API nymea Energy Scheduler (si disponible)

Screens à implémenter

  • DeveloperScreen — logs, introspection JSON-RPC, test ping nymea
  • AboutScreen — version app, version nymea, licences
  • SystemSettingsScreen — adresse serveur nymea, port, transport (TCP/WS)

Amélioration UX

  • Timeline — remplacer la simulation bell-curve par les vraies créneaux du scheduler nymea
  • RoleConfigFlow Step 3 — test de connexion sur RPC réel au lieu du délai simulé
  • InstallerModeProvider — persister le hash PIN dans SharedPreferences (actuellement en mémoire)
  • AppSettingsProvider — persister les préférences (thème, densité, écrans actifs) dans SharedPreferences

Intégration nymea live

  • Mapping EmsRole → nymea thingClass pour les installations réelles
  • Vérifier les interfaces nymea sur serveur réel (comparer avec docs/nymea_integrations.md)
  • Energy.GetSchedule / Energy.SetSchedule si l'API le supporte

Technique / dette

  • Ajouter des tests unitaires pour TariffProvider et EnergySetupProvider
  • Gérer le cas où NymeaService.thingClasses est vide en mode live (classes non chargées)
  • Revoir _Step1ThingList : passer en context.watch pour réactivité si les things changent