Expand description
Relevés IoT et compteurs Linky.
§Le périmètre de ces routes (#864)
Huit routes de ce module portaient let _ = auth; // Authentication required. La ligne disait vrai et ne protégeait rien : l’extracteur refuse
bien un appel anonyme, mais l’immeuble est fourni par l’appelant. Tout
utilisateur authentifié lisait donc les relevés de n’importe quel immeuble
du produit en connaissant son UUID.
Une courbe de consommation électrique n’est pas une donnée neutre : elle dit quand le logement est occupé, et quand il ne l’est pas.
Deux régimes s’appliquent désormais, selon ce que la route parcourt :
- route portant un
building_id→verify_building_org_access, qui rattache l’immeuble à l’organisation de l’appelant ; - balayage sans immeuble (
needing-sync,expired-tokens) → réservé au superadministrateur, puisqu’il traverse toutes les organisations.
Les routes d’écriture, elles, passaient déjà organization_id au cas
d’usage : elles n’ont pas changé.
Functions§
- configure_
iot_ routes - Configure IoT routes
- configure_
linky_ device - Configure a Linky device for a building
- create_
iot_ reading - Create a single IoT reading
- create_
iot_ readings_ bulk - Create multiple IoT readings in bulk
- delete_
linky_ device - Delete Linky device for a building
- detect_
anomalies - Detect consumption anomalies for a building
- find_
devices_ needing_ sync - Find Linky devices needing sync
- find_
devices_ with_ expired_ tokens - Find Linky devices with expired tokens
- get_
consumption_ stats - Get consumption statistics for a building
- get_
daily_ aggregates - Get daily aggregates for a building
- get_
linky_ device - Get Linky device for a building
- get_
monthly_ aggregates - Get monthly aggregates for a building
- query_
iot_ readings - Query IoT readings with filters
- sync_
linky_ data - Sync Linky data for a building
- toggle_
linky_ sync - Toggle sync for a Linky device