Soolo / NorTrace (tanktelemetri)¶
1. Hva den gjør¶
Henter fjernavleste tanknivåer (volum, %, temperatur, batteri, signal) fra Soolo-portalen (NorTrace), brukt i Tankovervåking → Soolo-peilere. ConnectMonitor bruker også samme kilde til tanknivå-varsling.
Flyt¶
flowchart LR
SOOLO[Soolo / NorTrace] -->|bearer-token, bytags| API[Connect API / ConnectMonitor]
API --> APP[Tankovervåking: nivå, prosent, temp]
API --> VARSEL[ConnectMonitor -n: e-postvarsel]
classDef sys fill:#f8d7da,stroke:#b53b46
class API sys
2. Dataretning¶
Inn (kun lesing). Connect API → portal.soolo.no.
3. Autentisering og konfigurasjon¶
Fast bearer-token (JWT) — ingen refresh-mekanisme.
| Konfignøkkel | Rolle |
|---|---|
NorTraceBearer (Web.config) |
JWT-token i Authorization: Bearer-header |
NorTraceBearer (app-settings.ts) |
App-siden har også et token for direkte soolo-kall |
companiesSection … nortraceDepartment |
Tag-filter per selskap, f.eks. Avdeling:Vats |
{id}_NorTraceUsername / …Password |
Brukt av ConnectMonitor (-n) per selskap |
4. Implementasjon¶
nortrace.api:
- NorTraceScrape.cs — bygger kallet …/api/v1/devices/bytags?tags={departments}
med bearer-header.
- RequestHelper.cs — HTTP-wrapper (lang timeout).
Avdelingene (tags) kommer fra companiesSection.nortraceDepartment.
5. Oppsett¶
- Skaff bearer-token fra Soolo-portalen.
- Legg det i
NorTraceBearer(API Web.config). NB: appen har et eget token iapp-settings.ts— bytte av det krever nytt app-bygg. - Sett
nortraceDepartment-taggene per selskap icompaniesSection.
6. Feilmodi¶
| Symptom | Årsak | Tiltak |
|---|---|---|
| Soolo-lista er tom / 401 | Token utløpt (ingen auto-refresh) | Hent nytt token, oppdater NorTraceBearer |
| Tank mangler | Feil/utelatt avdelings-tag | Sjekk nortraceDepartment og tag-oppsett i Soolo |
| Gamle nivåtall | Sensoren har ikke sendt (batteri/dekning) | Se «sist sendt»/batteri i detaljvisningen |
Ingen retry.
To steder for token
Tokenet finnes både i API-ets Web.config og i appens app-settings.ts
(følger app-bygget). Rotasjon må gjøres begge steder, og app-tokenet krever
ny release.
7. Test¶
curl -s "https://portal.soolo.no/api/v1/devices/bytags?tags=Avdeling:Vats" \
-H "Authorization: Bearer ‹NorTraceBearer›"
8. Rotasjon¶
API: Web.config-endring + recycle. App: oppdater app-settings.ts + bygg og
distribuer ny app.