Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
maxLevel7
minLevel1

Innledning

Dette er en integrasjon for arkivering av Master oppgaver fra Wiseflow og Inspera. Integrasjonen bygger videre på arbeidet allerede gjort i forbindelse med Brage-integrasjonen. Da Brage-integrasjonen allerede henter inn master-oppgaver med tilhørende meta-data fra eksamen-systemene, benyttes den delen videre i denne integrasjonen.

Til arkivering, benyttes p360-arkiv-appen /wiki/spaces/IPM/pages/173735939

Veiledning til integrasjonen og løsningsbeskrivelse : Arkivering av masteroppgaver (åpen)

Inc drawio
simple0
zoom1
pageId2300936195
custContentId3417636882
diagramDisplayNameArkiv.drawio
lbox1
hiResPreview0
baseUrlhttps://sikt.atlassian.net/wiki
diagramNameArkiv.drawio
imgPageId2317942841
pCenter0
aspect4ee8JR1-_TgsK1CAWJvy 1
includedDiagram1
width1654
aspectHash8f462a64b3982bdc3e1ceb3853e73841eb19a622
linksauto
tbstyletop
height1121

Nøkkel info

Initiesering av flyt

Inspera : Push (Webhooks)
Wiseflow : Poll-request

Flyt møsnter

Halveis synkron

Den delen som leser inn fra Inspera/Wiseflow er en egen prosess og er fra-koblet fra resten. Men den delen som arkiverer går synkront til arkiv-tjenesten

Bruk av meldingskø

Ja, Kafka

Bare for mottakk av webhook-meldinger fra Inspera

Open API

Nei

IntArk

Ikke brukt*

*-Gravitee brukes men ikke som en IntArk komponent, men som en proxy-ruter mot de ulike arkiverings-endepunkter

Oversikt

Bakgrunn

Arkivering av masteroppgaver er et krav som alle institusjoner skal oppfylle.

...

Dette er en leveranse til både Arkiv og Digital-eksamen. Kostandene Kostnadene deles derfor mellom disse 2.

...

  • Detaljert liste av alle innvolverte systemer/tjenester Hva utveksler data? Fra hvor / Til hvor?

    Tabellen under tar for seg BARE

System

Data

Brukt API (endepunkter)

Brage-integrasjonen

Denne leser inn opgavene fra Inspera og Wiseflow og lagrer metadata i Oai-databasen som del av Brage-integrasjonen Brage, Publisering av master og bachelor oppgaver

Se Brage, Publisering av master og bachelor oppgaver

Config-databasen

Liste over alle institusjoner med ArkivMBOppgaver satt til true

configDB.orgs

Oai-databasen (Brage integrasjonens database)

Liste over alle oppgaver og deres metadata; liste over org i løped av tida basert på READY_DATE og DELAYED_DATE

oai.Records

FS (digex-api)

Henter full exam info for å finne fram til studentens lopenummer basert på kandidatnr

https://fsws.usit.no/eksamen/<system>/<ID>

FS (digex-api)

Henter status på kandidatens oppgave ifm overføring til Brage som tilsvarer examSystem og test-Id

GET: /eksamen/ferdigstatus/

https://www.fellesstudentsystem.no/brukersider/teknisk/fsws-dok/rest/digitaleksamen.html

Inspera

Henter test (prøve) for å finne user-id til eier av prøven

GET: /test/

https://api.inspera.no/apidoc/#/test/getTestMetadata

Inspera

Henter opp user, for å mappe user-id til feide-id

GET: /users/

https://api.inspera.no/apidoc/#/users/getUserInfo

Inspera

Henter kandidatens innsendings-id som tilsvarer test-id og user-id

GET: /candidates/submission/

https://api.inspera.no/apidoc/#/candidates/getSubmissions_1

Wiseflow

WISEflow

– ikke implementert – noe likt det med Inspera

!

Public360

Henter privatpersoner (en list) fra P360 basert på p360ShortName og kriterier definert i inngangsparameteren (PersonalIdNumber og ExternalID).

GetPrivatePersons: https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 3.8)

Public360

Oppdaterer en sak i P360, baseert på CaseNumber, Title, p360ShortName og ResponsiblePersonEmail

UpdateCase:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 6.2)

Public360

Sender spesifisert json til arkiv-appen (HTTP-call)

Henter en liste over alle tilfeller som oppfyller kriteriene for alle de ikke-blanke egenskapene til den oppgitte parameteren basert på p360ShortName og kriterier definert i inngangsparameteren (CaseNumber og ExternalId).

GetCases: https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 6.3)

Public360

Oppretter et arkivdokument

CreateDocument:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 7.1)

Public360

Avskriver et dokument med en svarkode og en valgfri merknad. Parametrene består av ResponseCode, Note, Document og NoteTitle

SignOffDocument:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 7.3)

Public360

Henter metadata på dokumenter basert på p360ShortName og Recno

GetDocuments:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 7.5)

Public360

Strømmer en fil til Public360-serveren (lagret midlertidig), og referert til i CreateDocument() eller UpdateDocument()

Upload:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 9.1)

Public360

Oppdaterer en sak i P360, baseert på CaseNumber, Status og p360ShortName

UpdateCaseStatus:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 15.1)

Public360

Oppretter en sak med “Sak/Noark Sak” (p360ShortName).

CreateCase:

https://help.360online.com/ReleaseInformation/SIF APIs - Documentation.pdf (kapittel 6.1)

P360 Arkivmodul

Documaster

Documaster arkiv-module

Tilgangsstyring og logging

  • Integrasjonen loger til Humio med detaljert logging av prosessen.

  • Integrasjonen er knyttet logg-oversikten som vil logge følgende data:

    • (Legg til fra LastAudit kolleksjonenorgId

    • oppgaveIdentifier

    • testId

    • userOrGroupId

    • examSystem

    • studentRefs

    • success (true/false)

    • errorMessage (hvis aktuelt)

  • Integrasjonen har ikke noe behov for tilgangstyring

Forretningsregler

Behandlingstid/responstid og volum

...

Se https://unit.atlassian.net/wiki/spaces/IPM/pages/2357329942/Arkivering+av+masteroppgaver+pen#Virkem%C3%A5te%3A

Feilhåndtering, konsekvenser av feil og overordnet risikoanalyse

Generelt vil status og dermed eventuelle feil være synlig og tilgjengelig for institusjonen via logg-oversikten. Det er også utarbeidet mulighet for at enkelt personer ved institusjonen kan melde seg på for mottak av feilmeldinger på epost daglig.

Videre har vi overvåkning av loggene via Humio for å fange opp feil-situasjoner utenfor institusjonens virkeområde, som f.eks. utilgjengelige API endepunkter og bugs i koden.

  • Hva skjer ved overload i kø?

    • Det skjer ikke. Men om vi skulle på grunn av noe feil ikke motta meldingene fra eksamensystemene, vil : Inspera vite om det og sende dem på nytt. Wiseflow: er basert på polling, så vi kan alltid polle igjen

  • Hva skjer med ufullstendinge ufullstendige meldinger?

    • De vil feile og det vil vi oppdage i loggene og kan ta aksjon basert på det.

  • Inneholder meldingene personopplysninger?

    • Merk at det utveksles mange “meldinger” mellom ulike systemer i løpet av en integrasjon. Melinger fra eksamensystem inneholder ikke noe persondata, men data vi henter fra FS basert på de meldingene gjør det. Filene vi arkiverer (som kommer fra eksamensystemene) kan også potensielt inneholde personopplysninger.

  • Noe om viktige feil/situasjoner som må passes ekstra på (som kan ha stor konsekvens) . F.eks : Oppgavene som aldri vil publiseres, eller Oppgaver som ikke skal publiseres, publiseres.

    • Oppgavene ikke arkiveres (miste meldinger)

    • Oppgaver arkiveres med feil info. (feiltolking eller feil logikk)

    • Oppgaver arkiveres med feil tilganger (slik at oppgaver som ikke skal være offentlige, arkiveres slik at de blir offentlig synlige) 

Kommentarer