Oversikt over integrasjon med System-X

Oversikt over intergrajon mellom System X og Cerebrum for UiT.

Om integrasjon med System-X

Integrasjon med System X består i hovedsak av:

  1. Parser for System-X CSV-eksportfil (Cerebrum.modules.no.uit.access_SYSX)
  2. Import-script (contrib/no/uit/import_systemx.py)
  3. Brukerkonto-automatikk (contrib/no/uit/process_systemx.py)
  4. Eksport av Org-enheter til System-X (contrib/no/uit/generate_sysx_ouoptions.py)

Import av data fra System-X og eksport av data til System-X gjøres mer eller mindre i helt separate integrasjoner.

Integrasjonen gjøres i ulike steg:

Eksport

Eksport av org-enheter til System-X skjer i grove trekk gjennom å

  1. Hente en CSV-fil med org-struktur fra filutvekslingstjener hos UiT (stellanova.uit.no). Kun stedtre-gjeldende.csv brukes.
  2. Lese inn og parse org-informasjon fra CSV-fil, eksportere en fil med stedkode og navn på alle relevante org-enheter.
  3. Plassere eksportfil på filutvekslingstjener hos UiT.

Usikker på hvorfor dette gjøres av Cerebrum? Usikker på hvorfor kun stedtre-gjeldende.csv brukes? Usikker på hvorfor vi ikke snakker med stedkode-tjenesten hos UiT for dette?

Merk at eksportfilen ouoptions.xml ikke er en XML-fil.

Import

Import av gjester og oppretting av brukerkonto fra System-X skjer i grove trekk gjennom å:

  1. Hente en CSV-fil med gjestedata fa filutvekslingstjener hos UiT

  2. Kjøre importscriptet som...

    1. parser import-fil

    2. oppretter eller oppdaterer personer i Cerebrum fra import-fil

    3. fjerner alle tilknytninger fra System-X som ikke lenger forekommer/blir

      hentet inn fra import-fil

  3. Kjøre automatikk-script som...

    1. parser import-fil

    2. for hver person i import-fil:

      1. Hvis brukerkonto mangler (men person eksisterer i Cerebrum, med

        System-X ID og System-X affiliations), oppretter ny brukerkonto

      2. Hvis brukerkonto finnes eller ble opprettet: Oppdaterer med

        expire-date fra system-x importfil (hvis expire-date er lenger inn i fremtid enn dagens expire-date)

      3. Hvis brukerkonto finnes eller ble opprettet: Oppdaterer brukerkonto

        (med account-affs, spreads, posix-promote, sysx-karantene)

Importfil og data

Importfil fra System-X er en CSV med følgende felter

sysx_id
Intern System-X ID - external-id i Cerebrum
birth_date
Fødselsdato for gjest. Brukes som birth_date i Cerebrum. Ikke alle personer har dette feltet - hvis det mangler, parses det fra fnr i stedet. Hvis ikke noen fødselsdato kan hentes ut fra CSV-fil, så vil heller ikke personen oppdateres/regnes som gyldig.
fnr
Fødselsnummer for gjest. Legges inn som external-id i Cerebrum
gender
Kjønn på gjest. Brukes som gender i Cerebrum.
fornavn
Fornavn på gjest.
etternavn
Etternavn på gjest.
ou
Stedkode på org-enhet å knytte gjest til. Hvis stedkoden ikke finnes i Cerberum, blir gjesten heller knyttet til stedkode "000000" (rotnode?)
affiliation, affiliation_status
Tilknytning som skal tildeles gjest.
expire_date

Utløpsdato på gjest, og utløpsdato for en eventuell brukerkonto.

expire_date legges kun inn på brukerkonto dersom den er etter nåværende utløpsdato, og dersom personen ikke er markert som død.

spreads

Spreads som skal tildeles gjestens brukerkonto.

Kun utvalgte spreads kan legges til. Spread legges kun til, de fjernes ikke. Utvalgte spreads får satt en spread-expire via UiT-spesifikk funksjonalitet for å avvikle spreads. Expire-date på spreads settes til expire_date fra import-fil.

hjemmel
Årsak for tildeling av gjesterolle. Fritekst-aktig. Brukes kun av brukerkonto-automatikk, dersom en e-post sendes til ansvarlig_epost.
kontaktinfo
Kontaktinfo for gjest. Fritekst-aktig. Brukes kun av brukerkonto-automatikk, dersom en e-post sendes til ansvarlig_epost.
ansvarlig_epost
E-postadresse for sponsor? Brukes kun av brukerkonto-automatikk, for å varsle sponsor om at brukerkonto har blitt opprettet/sperret/endret.
bruker_epost
Privat e-postadresse for gjest. Brukes kun av brukerkonto-automatikk, for å varsle bruker om at brukerkonto har blitt opprettet/sperret/endret.
national_id
Landkode for gjest? Brukes ikke i integrasjonen
approved
Brukes for å avgjøre om en person skal importeres/oppdateres/få brukerkonto
Av fhl
Publisert 25. nov. 2022 13:02 - Sist endret 29. nov. 2022 11:17