Last ned historiske data
De historiske dataene for hver enhet er i tekstfiler (datalogger) på enhetsserveren. Hver fil dekker én dag, én måned eller hele historikken. Du trenger lesetilgang til enheten.
For en eksport uten kode, bruk rapportene i appen. Se dataene dine.
Prosedyre
Section titled “Prosedyre”- Finn serveren for enheten. Kall
get_device_info.phpog les feltetdevice_server. Se REST API. - Finn rekkefølgen på kolonnene. Kall
get_device_definitions.php?family_id=<family>og lesreadingsogoutput_names. - Beregn nivået og filnummeret (bin) for perioden som du vil ha.
- Last ned hver fil fra serveren for enheten.
- Slå sammen radene, sorter dem etter tidsstempel og fyll ut de tomme feltene.
Forespørselen
Section titled “Forespørselen”curl --compressed \ -H "Authorization: Bearer-API YOUR_API_KEY" \ "https://DEVICE_SERVER/datalogs.php?serialno=e11:123&id=0.20740&ver=2"Bytt ut DEVICE_SERVER med verdien i feltet device_server for enheten.
| Parameter | Verdi |
|---|---|
serialno |
Serienummeret til enheten |
id |
<level>.<bin>, for eksempel 0.20740 |
ver |
2 |
For autentisering, send headeren Authorization: Bearer-API YOUR_API_KEY eller Authorization: Bearer YOUR_ACCESS_TOKEN.
Serveren kan sende filen komprimert (gzip eller br). Valget --compressed i curl pakker den ut.
| HTTP-kode | Betydning |
|---|---|
| 200 | Filen, som text/plain |
| 400 | Feil serialno eller id |
| 403 | Du har ikke lesetilgang til enheten |
| 404 | Det finnes ingen data for denne filen |
Nivåer og filnumre
Section titled “Nivåer og filnumre”Alle beregninger bruker UTC.
| Nivå | Én fil per | Beregning av bin | Eksempel |
|---|---|---|---|
0 |
Dag | floor(unix_seconds / 86400) |
14. oktober 2026 = 0.20740 |
1 |
Måned | (year - 1970) * 12 + (month - 1) |
Oktober 2026 = 1.681 |
2 |
Hele historikken | Alltid m |
2.m |
Nivå 0 har alle radene for dagen. Nivå 1 har omtrent én rad per dag. Nivå 2 har omtrent én rad per måned.
Appen bruker nivå 0 for perioder opptil 7 dager og nivå 1 for perioder opptil 5 måneder. For lengre perioder bruker den 2.m.
Format på radene
Section titled “Format på radene”Hver rad er én måling. Feltene er skilt med ;.
timestamp;reading1;reading2;...;readingN;output1;...;outputMtimestamper unix-sekunder (UTC). Den kan ha desimaler.- Så kommer avlesningene, i rekkefølgen til
readingsfor familien. - Så kommer utgangene, i rekkefølgen til
output_names. - Et tomt felt betyr at verdien ikke ble endret. Bruk den siste verdien fra en tidligere rad.
- Verdien
2147483648betyr at avlesningen mangler. - Radene er ikke alltid sortert. Sorter dem etter
timestamp.
Eksempel
Section titled “Eksempel”En enhet i familien e11 har readings = ["T", "GI", "GIC", "GI2", "GI2C"] og ingen utganger.
1791936198.977;2120;1;0;1;0| Felt | Verdi | Betydning |
|---|---|---|
| timestamp | 1791936198.977 |
Tiden for målingen |
T |
2120 |
21,20 °C, fordi konverteringen for T er divide_by_100 |
GI |
1 |
Tilstanden til den første inngangen |
GIC |
0 |
Telleren for den første inngangen |
GI2 |
1 |
Tilstanden til den andre inngangen |
GI2C |
0 |
Telleren for den andre inngangen |
Du finner konverteringene og måleenhetene i ordboken readings i definisjonene. Se REST API.
Eksempel for skall
Section titled “Eksempel for skall”Dette eksempelet laster ned de siste 3 dagene for en enhet.
SERVER=DEVICE_SERVERSN=e11:123TODAY=$(( $(date -u +%s) / 86400 ))for BIN in $(seq $((TODAY - 2)) $TODAY); do curl -s --compressed \ -H "Authorization: Bearer-API YOUR_API_KEY" \ "https://$SERVER/datalogs.php?serialno=$SN&id=0.$BIN&ver=2"done | sort -t';' -k1,1nEn annen metode
Section titled “En annen metode”MCP-serveren har verktøyet get_device_history. Det godtar de samme nivåene og bin-verdiene.

