För att använda Aktiverings-API:et krävs två funktioner i Stadsnätet:
Bounce URL
Detta är en URL (adress) som besökarens webbläsare skickas till när dom besöker Tjänsteguiden. Den ska gå till en server i Stadsnätet som kan identifiera kunden med hjälp av ert provisioneringssystem. Läs mer om hur själva identifieringen går till här: Identifiering av kund. Den här URL:en måste vara tillgänglig för alla, både i stadsnätet och från internetsequenceDiagram
%%{init: {"theme":"base","themeVariables":{"actorBkg":"#3a88fe","actorTextColor":"#ffffff","labelTextColor":"#000000","signalTextColor":"#000000","loopTextColor":"#000000"}}}%%
participant A as Kund
participant B as Tjänsteguide
participant C as API Server
participant D as Aktiveringssystem
A->>B: Besöker med IP X.X.X.X
B--)A: Skickar till Bounce URL
A->>C: Besöker Bounce URL
C--)D: Vad är accessId
för IP X.X.X.X? D--)C: AccessId är
AB1234 C->>A: Skickar till Tjänsteguiden A->>B: Besöker Tjänsteguiden
med ?accessId=AB1234 B->>A: Sparar accessId för
framtida beställningar
för IP X.X.X.X? D--)C: AccessId är
AB1234 C->>A: Skickar till Tjänsteguiden A->>B: Besöker Tjänsteguiden
med ?accessId=AB1234 B->>A: Sparar accessId för
framtida beställningar
API URL
Om besökaren till Tjänsteguiden kan identifieras enligt ovan så används API URL:en för all kommande kommunikation, detta är en sluten kommunikation som med föredel bör göras över SSL och vara IP-bunden till Tjänsteguidens IP så ingen annan kan komma åt den. Vid access skickar Tjänsteguiden med API Användar-information för verifikation av access om ovanstående inte kan uppnås. Den här URL:en måste vara tillgänglig från Atlas CMS (94.247.170.170) samt vår utvecklingsmiljö (217.78.18.*)sequenceDiagram
%%{init: {"theme":"base","themeVariables":{"actorBkg":"#3a88fe","actorTextColor":"#ffffff","labelTextColor":"#000000","signalTextColor":"#000000","loopTextColor":"#000000"}}}%%
participant A as Kund
participant B as Tjänsteguide
participant C as API Server
participant D as Aktiveringssystem
A->>B: Kan jag få tjänst 100/100?
B-->>C: Kan BB100100
aktiveras på AB1234? C-->>D: Kan BB100100
aktiveras på AB1234? D-->>C: Ja C-->>B: Ja B->>A: Du kan aktivera tjänsten A->>B: Jag vill aktivera tjänsten B-->>C: Aktivera BB100100
på AB1234 C-->>D: Aktivera BB100100
på AB1234 D-->>C: Klart C-->>B: Klart B->>A: Tjänsten är aktiverad
aktiveras på AB1234? C-->>D: Kan BB100100
aktiveras på AB1234? D-->>C: Ja C-->>B: Ja B->>A: Du kan aktivera tjänsten A->>B: Jag vill aktivera tjänsten B-->>C: Aktivera BB100100
på AB1234 C-->>D: Aktivera BB100100
på AB1234 D-->>C: Klart C-->>B: Klart B->>A: Tjänsten är aktiverad
Utveckling och test
För att vi ska kunna hjälpa er komma igång samt felsöka problem så måste er API URL vara tillgänglig för våra IP-adresser, vilket är 217.78.19.*, och det är också viktigt att er Bounce-URL identifierar detta som en riktigt port i ert nät (en fejkport som används för tester är att föredra) där vi kan beställa, aktivera och testa API:et med.Provisionering
För att besökaren till Tjänsteguiden ska kunna direktaktivera en tjänst så krävs det att en del parametrar har uppnåtts:- Kunden har identifierats som stadsnätskund enligt ovan
- Tjänsteleverantören har valt att aktuell tjänst kan direktaktiveras
- Stadsnätet har angivit vilket det lokala unika ID't är för tjänsten, så att API:et kan skicka med rätt identifiering för aktuell tjänst
Om ovanstående har uppnåtts så används API:et för att:
- Skicka service_deliverable() för att säkerställa att aktuell tjänst kan aktiveras på aktuell port.
- Skicka service_order() för att skicka in en beställning till API-servern med aktuell tjänst och aktuell kund, samt kunddata från beställningsformuläret
- Vid direktaktivering, skicka port_status() för att säkerställa att tjänsten nu är aktiv på porten