Patrick Schurig 325409dd3f feat(i18n): prose traduite DE/EN et référence régénérée en anglais
82 pages .de.md et 82 .en.md. La volumétrie explique la forme : 95 % du volume
est GÉNÉRÉ (74 013 mots contre 3 506 rédigés, mesuré sur 107 pages). On ne
traduisait donc pas 77 500 mots — on traduit la prose, et le vocabulaire des
générateurs fait le reste.

Prose traduite à la main : accueil, installation (4), fonctionnalités (4),
tarifs, référence, dépannage, FAQ, intégrations (2), api/index, et les 6 fiches
appareils qui portent une vraie prose + compatibilite.md. Les blocs générés ne
sont JAMAIS recopiés dans une traduction : le script de pose les reprend
verbatim du fichier français via des placeholders, pour qu'une traduction ne
puisse pas désynchroniser un bloc généré.

Les 49 fiches légères n'ont rien à traduire : leur tagline vient d'amont et est
DÉJÀ en anglais (« Connects nymea to powerfox. »). Constat, pas renoncement.

Localisation ≠ traduction, et tarifs.md en est l'exemple à connaître : la
version FR parle de Tempo et du signal RTE, la DE de §14a EnWG et de SMARD,
l'EN des deux. Ce ne sont pas des traductions l'une de l'autre, et c'est
volontaire — les signaux tarifaires sont nationaux. Aucune des deux n'est
annoncée comme livrée : les deux sont Roadmap, et les pages le disent.

Référence régénérée : en-têtes et libellés en anglais (Field/Type/Notes,
Supported models, Settings, Read-only, Brand / Model…). Conséquence assumée et
signalée : les pages FR en ligne changent aussi.

README.md (il était VIDE) : la règle du 95 % généré en tête, la frontière de
décision du multi-langue avec sa mesure, pourquoi SCAFFOLD existe, et le piège
--strict/navigation.instant.

TODO : multi-langue clos, et trois points ouverts qui en restent — les tagline
vivent dans les meta.json de 5 autres dépôts (forme à ajouter : tagline_de /
tagline_en), les stubs traduits restent des stubs (la dette éditoriale a triplé
en surface, pas en fond), api/types.md n'a pas besoin de variante. Le P1
openmeteo est corrigé sur constat : il EST dans PORTING_STATUS depuis, et une
ligne commentée contradictoire y traîne encore.

Vérifié : mkdocs build --strict vert sur les trois langues, 322 pages HTML,
contenu traduit relu dans le HTML produit, et les deux générateurs rendent
« Doc à jour » en --check.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-10-13 06:39:20 +02:00

4.4 KiB

Energy

Methods

Energy.GetPowerBalance

PUBLIC

Get the current power balance. That is, production, consumption and acquisition.

Parameters:

No parameters.

Returns:

Field Type Notes
currentPowerAcquisition Double
currentPowerConsumption Double
currentPowerProduction Double
currentPowerStorage Double
totalAcquisition Double
totalConsumption Double
totalProduction Double
totalReturn Double

Energy.GetPowerBalanceLogs

PUBLIC

Get logs for the power balance. If from is not give, the log will start at the beginning of recording. If to is not given, the logs will and at the last sample for this sample rate before now.

Parameters:

Field Type Notes
from Uint optional
to Uint optional
sampleRate SampleRate

Returns:

Field Type Notes
powerBalanceLogEntries PowerBalanceLogEntries

Energy.GetRootMeter

PUBLIC

Get the root meter ID. If there is no root meter set, the params will be empty.

Parameters:

No parameters.

Returns:

Field Type Notes
rootMeterThingId Uuid optional

Energy.GetThingPowerLogs

PUBLIC

Get logs for one or more things power values. If thingIds is not given, logs for all energy related things will be returned. If from is not given, the log will start at the beginning of recording. If to is not given, the logs will and at the last sample for this sample rate before now. If the parameter "includeCurrent" is set to true, the result will contain the newest log entries available, regardless of the sample rate (that is, 1 minute). This may be useful to calculate the difference to the newest entry of the fetched sample rate and the current values to display the live value until the current sample is completed.

Parameters:

Field Type Notes
from Uint optional
includeCurrent Bool optional
thingIds Uuid[] optional
to Uint optional
sampleRate SampleRate

Returns:

Field Type Notes
currentEntries ThingPowerLogEntries optional
thingPowerLogEntries ThingPowerLogEntries

Energy.SetRootMeter

ADMIN

Set the root meter.

Parameters:

Field Type Notes
rootMeterThingId Uuid

Returns:

Field Type Notes
energyError EnergyError

Notifications

Energy.PowerBalanceChanged

Emitted whenever the energy balance changes. That is, when the current consumption, production or acquisition changes. Typically they will all change at the same time.

Parameters:

Field Type Notes
currentPowerAcquisition Double
currentPowerConsumption Double
currentPowerProduction Double
currentPowerStorage Double
totalAcquisition Double
totalConsumption Double
totalProduction Double
totalReturn Double

Energy.PowerBalanceLogEntryAdded

Emitted whenever an entry is added to the power balance log.

Parameters:

Field Type Notes
powerBalanceLogEntry PowerBalanceLogEntry
sampleRate SampleRate

Energy.RootMeterChanged

Emitted whenever the root meter id changes. If the root meter has been unset, the params will be empty.

Parameters:

Field Type Notes
rootMeterThingId Uuid optional

Energy.ThingPowerLogEntryAdded

Emitted whenever an entry is added to the thing power log.

Parameters:

Field Type Notes
sampleRate SampleRate
thingPowerLogEntry ThingPowerLogEntry