Gå til innhold

ABAX (kjøretøysporing)

1. Hva den gjør

Henter sanntids kjøretøyposisjoner og -data fra ABAX, brukt i Flåte-kartet. Kjøretøyene matches mot bilene i Visma via registreringsnummer.

Flyt

flowchart LR
    ABAX[ABAX cloud] -->|OAuth2 client credentials| API[Connect API: AbaxHelper]
    API --> KART[Flåtekart: match bil mot Visma på skiltnr]
    classDef sys fill:#f8d7da,stroke:#b53b46
    class API sys

2. Dataretning

Inn (kun lesing). Connect API → ABAX cloud.

3. Autentisering og konfigurasjon

OAuth2 client credentials.

Konfignøkkel (Web.config) Rolle
ABAXClientId Klient-ID
ABAXClientSecret Klienthemmelighet
ABAXIdentityProviderUri Token-endepunkt (https://identity.abax.cloud)
ABAXApiUri API-endepunkt (https://api.abax.cloud)

Scope: open_api open_api.vehicles.

4. Implementasjon

Helpers/AbaxHelper.cs: - GetAccessToken() — POST mot identity-provideren (client credentials). - GetVehicles() — GET …/v1/vehicles med Bearer-token.

Token caches ikke — nytt token hentes ved hvert GetVehicles()-kall.

5. Oppsett

  1. Opprett API-klient i ABAX-portalen med vehicles-scope.
  2. Legg ABAXClientId/ABAXClientSecret i Web.config.
  3. Sørg for at bilenes registreringsnummer står i bilbeskrivelsen i Visma (matchingen i Flåte er på skiltnummer).

6. Feilmodi

Symptom Årsak Tiltak
Flåtekartet uten biler OAuth feilet (feil ID/secret) eller ABAX nede Test token-endepunktet; sjekk nøklene
En bil mangler Skiltnummer matcher ikke Visma-beskrivelsen Rett bilbeskrivelsen i Visma
Treghet Token hentes på nytt hver gang (ingen caching) Forventet — ikke kritisk

Ingen retry.

7. Test

# 1) Hent token
curl -s -X POST https://identity.abax.cloud/connect/token \
  -d "grant_type=client_credentials&scope=open_api open_api.vehicles&client_id=‹id›&client_secret=‹secret›"
# 2) Hent kjøretøy med token
curl -s https://api.abax.cloud/v1/vehicles -H "Authorization: Bearer ‹token›"

8. Rotasjon

Kun Web.config-endring (ABAXClientId/ABAXClientSecret) + app-pool recycle.

Relaterte sider