ExternalBookingService (2019-4)
Denne service er kun til brug for DFDG og må ikke benyttes af andre webserviceaftagere.
Servicen anvendes af DFDG for at understøtte borgers selvbook og ombook idet den viderestiller borgers kald fra Jobnet (gennem servicen /wiki/spaces/GI/pages/4456653). Overordnet set har servicen til opgave at udstille de mødetilbud, som borgeren kan selvbooke, levere mulige mødetidspunkter, oprette møde, ombooke mødet og aflyse mødet.
Servicen udstilles af eksterne bookingsystemer, men med en WSDL som er defineret af DFDG.
Forretningsbeskrivelse
Se overordnet forretningsbeskrivelse på It-understøttelse af planlagte samtaler.
Jobnet - DFDG - EksterntBookingSystem bookingflow
Ny selvbooking med CreateBooking
Ombook selvbooking med RescheduleBooking
Det er optionelt om der kaldes efter hvilke sagsbehandlere der kan bookes til, denne del er derfor med gråt.
Bookingflow med frist for selvbook
Når en borger har en frist for selvbook kommer der nogle ekstra krav til EksterntBookingSystem:
I tegningen ovenfor er yderligere vist, hvilke WSRM'er der sendes ifm. selvbooking med frister. GetBooking WSRM'en vil også blive sendt i de andre scenarier, men er ikke vist i dem. WSRM'erne sendes til KSS systemerne, og det er op til de enkelte planner systemer, om de vil aftage dem via en subkø. GetBooking WSRM'en vil fortælle, at der er oprettet en booking, og GetInterviewDeadline WSRM'en vil fortælle, at fristen nu er skiftet til status "Indfriet frist".
Forretningsregler om samtaletyper og frister som bookingSystemet skal overholde ved udstilling
Kun 1 jobsamtale eller opfølgningssamtale ad gangen
For at frister (som kan have hårdtslående konsekvenser) og samtaletyper med frist skal være overskuelige og hænge godt sammen for borger, må hver borger kun have enten 1 jobsamtale/opfølgningssamtale eller 1 uindfriet frist. Flere planlagte samtaler af disse typer er ikke lovligt.
Frister i InterviewDeadlineCollection
Frist medsendes til bookingsystem på de kald hvor der skal tages hensyn til den, så længe den kan påvirke borgers booknings- eller ombookningsmuligheder, dvs. fra den er oprettet til den lukkes.
Det der primært skal sikres, er
- At mødet afholdes for sent (max 7 dg. efter fristdatoen)
- At borger ikke får en frist + en mødeindkaldelse, eller to samtidig indkaldelser på Jobsamtale (id 7) eller Opfølgningssamtale (id 4)
Se en fuld gennemgang af hvornår DFDG medsender frist og hvilke forventninger der er til brugen af fristen her:
Da DFDG ikke har information om samtaletype til rådighed ved kald til -Timeslot metoder, beriges alle kald til bookingsystem med fristinformation uanset om det er relevant af hensyn til samtaletypen.
Der må kun gives samtaletilbud for den type borgeren har en frist til, pt. enten Jobsamtale eller Opfølgningssamtale, hvorpå der vil kunne gives tider indenfor fristen. Der må tilsvarende kun gives tider indenfor fristen.
Ved bookning og ombookning skal det tilsvarende sikres at frist ikke overskrides.
Straksbookede møder må hverken ombookes eller aflyses
Bookings lavet som straksbookede møder skal markeres med dette (IsImmediateBooking) og må hverken ombookes eller aflyses.
GetBookingDetails brug af Id
DFDG udfylder InterviewOptionId ved CreateBooking (og BookingIdentifier er tom). Ved ombook (RescheduleBooking) udfyldes BookingIdentifier (og InterviewOptionId er tom). Når BookingIdentifier er tildelt forventes den at være Id for bookingen igennem hele dens levetid.
Kaldemønster best practise, valideringer i DFDG og forventninger til hvad BookingSystemer afstår fra aht. borgeroplevelsen
Det er vigtigt for STAR og jobcentrene at borgere som selvbooker får en god brugeroplevelse. En væsentlig del af den gode brugeroplevelse er ikke at skulle vente på svar fra interfacet. STAR optimerer løbende på såvel Jobnet som DFDG, men der er behov for at også ExternalBookingService bidrager med så lave svartider som muligt. Et sekundært, men nok så væsentligt aspekt på dette, er at undgå timeouts.
Ifm. CreateBooking bør støttekald til -StatusService og lignende i videst muligt omfang undgås
På en række af flowsne i EBS opretter DFDG en transaction for at sikre at DFDG og PlannerSystem har samme bestand af bookings. Dermed låses en del af tabelgrundlaget for -StatusService, og der vil være blokeret for at PlannerSystem kan kalde ind.
Selv hvis den specifikke tabel ikke er låst af transaktionen, er det imidlertid at foretrække at der ikke spildes tid på at kalde DFDG i forbindelse med kaldet, data bør i stedet prepareres tidligere, fx trigget af kaldet til GetSelfbookInterviewOptions eller GetSelfbookTimeslots (GetBookingDetails er ikke godt nok, her sidder borger allerede og venter på sin booking).
Skemavalidering af request til, og response fra ExternalBookingService
Alle requests fra DFDG til og alle responses fra plannersystemerne bliver skemavalideret mod WDSL kontrakten således at der kastes en valideringsfejl tilbage til Jobnet hvis request eller response ikke overholder kontrakten. Fejlen der kastes er: 9329 "Response from external planner system violated the wsdl contract".
PlannerSystemer kan selv identificere ubrugelige bookings
Bookings med ulovlige data er uhensigtsmæssige for såvel DFDG (som må svare borger at bookingen ikke kunne gennemføres) som PlannerSystemet (som spilder kapacitet på en booking som ingen kan booke, og som sagsbehandlere formodentlig regner med udgør en del af et påkrævet udbud af mødetilbud).
Der findes ingen metode til at DFDG kan kalde PlannerSystemet og gøre opmærksom på den ubrugelige booking, men det bør heller ikke være nødvendigt, de er lette at identificere:
Alle bookings som DFDG henter GetBookingDetails på uden efterfølgende at kalde CreateBooking har data som gør dem ubrugelige. Se evt. sekvensdiagrammerne ovenfor.
Teknisk gæld
Deprecatede collections
Anden aktør information (HasExternalOperatorReferral) og fraværsinformation (AbsenceCollection) er begge deprecatede og kan ikke påregnes udfyldte. De fjernes fra snitfladen ved førstkommende lejlighed (løft til ny serviceversion).
Informationen skal i stedet hentes ved kald til PersonStatusService eller anden -StatusService.
Link til forretningsbeskrivelser
Found 1 search result(s) for ExternalBookingService.
Link til wsdl
Metoder
GetSelfbookInterviewOptions
Operationen anvendes af DFDG til at videreformidle forespørgsel fra Jobnet (i JobnetBookingservice. GetSelfbookInterviewOptions) om mødetilbud som udstilles til en specifik borger. Kaldet fra DFDG er stort set en ren viderestilling til og fra jobnet.
Vi sender kun nyeste frist uanset samtaletype, og kun hvis nyeste ikke er Administrativt lukket.
Der sendes nuværende PersonCategory (som i DFDG blot er den senest registrerede). Hvis PersonCategory er Jobparat (1) eller Åbenlyst uddannelsesparat (3) ses der på om personen er tilmeldt. Hvis han ikke er tilmeldt sendes der ikke en PersonCategory til external booking service. Dette fordi der ikke er en slutdato på PersonCategory, så vi kan ikke vide om den er afsluttet på anden måde end når den er åbenlyst forældet jf. tilmeldestatus og kravene til PersonCategory
Bemærk, at såfremt der ikke findes mulige tilbud i forespørgslen, returneres der ikke fejl, men systemet sender en mail til borgerens tilknyttede jobcenter/subjobcenter.
GetSelfbookTimeslots
Metoden bruges ved selvbook til at hente mulige mødetidpunkter for et specifikt online tilbud. Metoden kaldes af DFDG til det eksterne bookingsystem.
Til selvbook af individuelle møder udregner det eksterne booking system mulige mødetidspunkter på baggrund af tilbuddets opsatte vejledere og vejledernes kalendere. For fællesmøder returneres de udvalgte datoer/tider, som fællesmøderne på forhånd er opsat til.
Uanset om der er angivet en sagsbehandler eller ej i request, forventes det at der er angivet sagbehandlere i SupervisorToBook strukturen. Et hvert ID for sagsbehandler angivet i timeslots skal kunne findes i SupervisorToBookCollection.
Hvis der ikke er ledige tider bør jobcentret gøres opmærksom på dette og der returneres en fejl (4770).
GetImmediateBookingTimeslots
Metoden bruges ved straksbooking til at hente et antal mødetidpunkter for alle online tilbud af den specifikt InterviewType. Metoden kaldes af Jobnet via DFDG til det eksterne booking system, og svarer i store træk til en kombination af GetSelfbookInterviewOptions og GetSelfbookTimeslots.
Til straksbooking udregner det eksterne bookingsystem et angivet antal mødetidspunkter jævnt fordelt over et angivet tidsrum, og for den angivne InterviewType.
Individuelle møder prioriteres højere end fællesmøder. Der jobcentret bør gøres opmærksom på det både hvis der ikke findes nogle onlinetilbud og hvis der ikke findes nogle ledige tider.
GetRescheduleTimeslots
Metoden anvendes af Jobnet, der kalder det eksterne booking system via DFDG.
Formålet er at udstille mulige tider til ombookning af et eksisterende planlagt møder. Møder, der enten kan være selvbookede eller indkaldte.
Forinden dette kald vil GetRescheduleCaseworkers være kaldt for at hente mulige sagsbehandlere at hente tider på.
Efterfølgende kan ombookning ske via kald til RescheduleBooking.
Uanset om der er angivet en sagsbehandler eller ej i request, forventes det at der er angivet sagbehandlere i SupervisorToBook strukturen. Et hvert ID for sagsbehandler angivet i timeslots skal kunne findes i SupervisorToBookCollection.
Hvis der ikke er ledige tider bør jobcentret gøres opmærksom på dette og der returneres en fejl (4770).
GetRescheduleSupervisors
Metoden bruges ved ombookning til at hente en liste af mulige sagsbehandlere. Alle mulige sagsbehandlere uanset om de har tid bliver returneret. Metoden anvendes fra Jobnet og kaldet er viderestillet gennem DFDG
Kaldet anvendes både ved ombookning af indkaldte og selvbookede møder.
For indkaldte individuelle møder returneres de vejledere, der er tilknyttet det team, som indkaldelsen er oprettet til.
For selvbookede individuelle møder returneres de vejledere, der er tilknyttet det online tilbud, som indkaldelsen er dannet på baggrund af.
CreateBooking
Metoden bruges ved selvbooking til at oprette selve mødet i det eksterne booking system. Dette ses samtidigt som en accept af mødet.
Mødet oprettes med angivelse af et mødetilbudsid med starttidspunkt og eventuelt en vejleder.
Detaljegrundlaget for CreateBooking hentes med GetBookingDetails. Hvis operationen er succesfuld, returneres alle detaljer vedr. bookningen tilbage til DFDG, der persisterer mødet og udsender WSRM beskeder.
For individuelle møder oprettes mødet i det eksterne booking system som resultat af kaldet.
Der returneres en fejl (4819) hvis tiden i mellemtiden er optaget
Hvis der returneres fejl så ruller DFDG tilbage, og forventer at det samme sker i eksternt booking system.
For fællesmøder findes mødet allerede, og kun borgerens tilknytning til mødet oprettes. Fra DFDG's vinkel er der ikke samme skelnen, da mødet blot persisteres med de returnerede data.
GetBookingDetails
Metode som DFDG henter alle detaljer om et møde i, forud for oprettelsen af mødet i DFDG. Det eksterne bookingsystem skal reservere mødettilbudsid'et til borgeren med det givne personnummer i 5 minutter for at vi i rimeligt omfang er sikret imod fejl på at tiden går til en anden i mellemtiden.
Der kan kastes de samme fejl som ved CreateBooking.
RescheduleBooking
Bruges til borgers ombooking af tidligere oprettede møder. Dette kan både være et indkaldt eller et selvbooket møde. Dette ses samtidigt som en accept af mødet.
Request indeholder identifikation af det tidligere møde samt identifikation af det ønskede starttidspunkt og ønsket vejlleder. Metoden returnerer alle booking-detaljer tilbage til DFDG, der herefter kan gemme informationerne og udsende WSRM'er.
Der returneres en fejl (4819) hvis tiden i mellemtiden er optaget.
Hvis der returneres fejl så ruller DFDG tilbage, og forventer at det samme sker i eksternt booking system.
AcceptBooking
Bruges når borgeren via Jobnet accepterer en indkaldelse. Kaldet medfører en markering i det eksterne booking system, der tydeliggør, at borgeren har set indkaldelsen.
CancelBooking
Metoden bruges til at aflyse et møde i det eksterne booking system. Kaldet vil komme fra Jobnet, der gennemstiller kaldet via fra DFDG. DFDG foretager i forbindelse med kaldet persistering og WSRM behandling.
SaveBookingList
Denne metode skal kaldes, når KSS kalder SaveBookingList i BookingService – På den måde vil det være muligt at overføre indkaldelisterne online til EksterntBookingSystem.
Brugen af metoden (og om den bruges) varierer fra jobcenter til jobcenter, så dette er en beskrivelse af hvad vi stiller til rådighed:
Jobcentret kan sende en liste af (borger+samtaletype+evt. seneste ønskede samtaledato).
CalendarLink er, som beskrevet i feltbeskrivelserne, fx https://starwiki.atlassian.net/wiki/spaces/FYS/pages/1201176658/ExternalBookingService+Version+3+2019-2#ExternalBookingService(Version3,2019-2)-SaveBookingList en mulighed for et sagslink. Igen kan brugen variere fra jobcenter til jobcenter.
Bemærk at BookingDeadline ikke er det samme som borgers frist til at selvbooke - det kan selvfølgelig tænkes at den er sat mht, denne, men det er ikke sammenhængende systemmæssigt i DFDG.