Dottie (intranettfeed)¶
1. Hva den gjør¶
Leverer intranett-feeden («Oppslag» på forsiden) med innlegg, bilder, kommentarer og reaksjoner, samt ansattdata.
Flyt¶
flowchart LR
DOTTIE[Dottie] <-->|API-nøkkel + klient-ID| API[Connect API: DottieHelper]
API --> FEED[Forsiden: oppslag + ansatte]
classDef sys fill:#f8d7da,stroke:#b53b46
class API sys
2. Dataretning¶
Begge veier. Connect API ↔ api.dottie.no.
3. Autentisering og konfigurasjon¶
API-nøkkel + klient-ID (custom auth, ikke OAuth).
| Konfig | Rolle |
|---|---|
DottieClientId / DottieApiKey (Web.config) |
Felles fallback-nøkler |
companiesSection … DottieClientId / DottieApiKey |
Per-selskap-nøkler (valgfritt) |
Tilgangsregel: Selskaper som deler fallback-nøklene (alle unntatt det som eier dem) ser kun innlegg med topic-ID 5 («Alle Selskap»). Selskap med egne nøkler ser alt sitt.
4. Implementasjon¶
dottieApi/DottieAPI/DottieClient.cs—AuthenticateAsync(clientId, apiKey)(bearer-token itoken-feltet),GetFeedsPostAsync(), media, kommentarer.Helpers/DottieHelper.cs— velger riktige nøkler per selskap (egne → felles fallback),FilterPostsByCompanyAccess()(topic 5-regelen), 1 times cache av ansatte. Logger via NLog (Debug/Warn/Error).
Auth gjøres ved hver forespørsel (ingen token-caching i klienten), så nøkkelbytte gir umiddelbar effekt.
5. Oppsett¶
- Legg felles
DottieClientId/DottieApiKeyiWeb.config. - For selskap som skal se alt sitt: legg egne nøkler i
companiesSection. - Innlegg som skal nå delte-nøkkel-selskaper må ha topic-ID 5 i Dottie.
6. Feilmodi¶
| Symptom | Årsak | Tiltak |
|---|---|---|
| Oppslag-kortet tomt | Auth feilet, eller selskapet deler nøkler og har ingen topic-5-innlegg | Sjekk nøkler; legg innlegg på topic 5, eller gi selskapet egne nøkler |
| «Dottie credentials not configured» | Verken egne eller fallback-nøkler satt | Legg inn nøkler |
| Ansattliste tom | Ugyldig API-nøkkel | Forny nøkkelen |
7. Test¶
# 1) Auth
curl -s -X POST https://api.dottie.no/api/auth/apikey \
-H "Content-Type: application/json" \
-d '{"clientId":"‹id›","apiKey":"‹key›"}'
# 2) Feed
curl -s https://api.dottie.no/api/FeedPost -H "Authorization: Bearer ‹token›"
8. Rotasjon¶
Kun config-endring (Web.config eller companiesSection) + recycle.