Gå til hovedinnhold

Egendefinerte integrasjoner

Egendefinerte integrasjoner er en funksjon i Provet som gjør det mulig å sende forespørsler til eksterne ressurser fra innsiden av Provet. For å få tilgang til denne funksjonen, kontakt Provet suppor…

Egendefinerte integrasjoner er en funksjon i Provet som gjør det mulig å sende forespørsler til eksterne ressurser fra innsiden av Provet. For å få tilgang til denne funksjonen, kontakt Provet support.

Administrasjon

Administrer egendefinerte integrasjoner i Innstillinger > Integrasjoner > Egendefinerte integrasjoner.

  • Hvis du vil legge til en integrasjon, velg knappen Legg til.

  • Hvis du vil redigere en integrasjon, velg knappen pen i raden i tabellen.

Innstillinger

Felt

Beskrivelse

Navn

Angir etiketten på knappen som vises i brukergrensesnittet.

Angir hvilken side knappen er synlig på. Hver egendefinerte integrasjon kan bare være synlig på én side, men den samme konfigurasjonen kan dupliseres.

Handling

Angir hvilken handling som utføres når knappen velges.

HTTP-metode

Angir om forespørselen sendes som en FÅ-forespørsel (nyttelast oppgitt som parametere i spørringsstrengen) eller som en POST-forespørsel (nyttelast oppgitt som skjema-data).

Nettadresse

Mål-Nettadresse, komplett med skjema.

Parameternavn

Navnet på parameteren som brukes når du oppgir aktuelt objekt-ID.

Aktivert

Lar deg aktivere og deaktivere en egendefinert integrasjon. Egendefinerte integrasjoner kan også slettes hvis de ikke lenger trengs.

Bekreftelsestillegg

En delt hemmelighet som brukes til å beregne verifikasjonshashen. Kreves når verifikasjonshashen er aktivert.

Konfigurasjonsalternativer

  • Legg til bekreftelses-hash: Aktiverer en bekreftelses-hash i nyttelasten som kan brukes til å verifisere at forespørselen kommer fra den egendefinerte integrasjonen.

  • Inkluder nyttelasten i verifikasjonshashen: Dette alternativet regner ut verifikasjonshashen på nytt ved å bruke hele nyttelasten, inkludert kunde- og klient-ID.

  • Legg til informasjon om organisasjon og avdeling: Dette alternativet inkluderer nødvendig informasjon om organisasjon og avdeling automatisk. Provet vil inkludere disse parametrene i forespørselen: Provet navn (organisasjonens kjerne), Provet ID (produktorganisasjons-ID) og Avdelings-ID.

Prefiksing av paramet verdi

Det er mulig å legge til et egendefinert prefiks i parameterverdien ved å oppgi parameternavnet på en annen måte.

Overskrifter

Bakgrunnsforespørsler ('Send HTTP-forespørsel') kan få vilkårlige, statiske verdier som legges til i forespørslene.

  • Dette kan brukes til å inkludere autorisasjonsoverskrifter i forespørslene.

  • Denne funksjonen er ikke implementert for forgrunnsforespørsler ('Åpne i ny fane', 'Åpne i sidepanel'). Sendte overskrifter logges heller ikke.

Nyttelast informasjon

Innstillingsvisningen viser en liste over nyttelastnøkler og verdier som sendes med forespørselen. Denne listen oppdateres når innstillingene endres.

CI2.png

Handlingstyper

1. Send HTTP-forespørsel

En forespørsel planlegges i bakgrunnen og sendes ved hjelp av Provet sine servere. Brukere ser ikke nettsiden, men kan se en varsling mens sendingen pågår.

  • Forespørselen kommer fra Provet sine utgående IP-adresser.

  • Sendingen skjer asynkront, og det kan være en forsinkelse avhengig av mengden arbeid som er i gang på serverne.

  • Du vil se en informasjonsvarsling øverst på siden når forespørselen planlegges.

  • Det vises en suksessvarsling hvis forespørselen blir sendt vellykket, og integrasjonen svarer med en vellykket HTTP-statuskode (mellom 200 og 299, inkludert).

  • Hvis forespørselen mislykkes, vises en feilmelding med teksten 'Integrasjonsforespørsel mislyktes', med en mer spesifikk feilmelding i parentes.

Feilmelding

Beskrivelse

Backend-feil

Det oppstod en ukjent feil på Provet sine worker-servere. Kontakt Provet support for tilleggsinformasjon.

Tilkoblingsfeil

Forespørselen om å planlegge sendingen gikk ikke gjennom.

Dat feil

Forespørselen om å planlegge sendingen inneholdt ugyldige data.

Integrasjonsfeil

Forespørselen ble sendt vellykket, men integrasjonen svarte med en ikke-vellykket HTTP-statuskode (lavere enn 200 eller høyere enn 299).

2. Åpne i ny fane

Mål-Nettadresse åpnes i et nytt vindu eller en ny nettleserfane.

  • Hvis en FÅ-forespørsel brukes, kan brukerne se nyttelast informasjon som vises i nettleserens adressefelt.

3. Åpne i sidepanel

Mål-Nettadresse bygges inn i Provet ved å åpne et sidepanel over innholdet på siden og vise siden som en iframe.

  • Mål-Nettadresse må støtte innebygging (topptekst for X-Frame-Options må være satt riktig).

Bruk

Egendefinerte integrasjoner vises som knapper på mål-sider.

  • Hvis kun én integrasjon er satt opp for en side, vises den som en vanlig knapp.

  • Hvis en side har flere integrasjoner, vises de som en rullegardinmeny.

CI5.png

Egendefinerte integrasjoner sender kun relevant objekt-ID (kunde-ID, pasient-ID, faktura-ID osv.) som kan hentes fra Provet REST API.

Side

Knappplassering

ID sendt som parameter

Kunde

På høyre side, over seksjonen Merknader (ikke på kundefanene).

Kunde ID

Pasient

På høyre side, over seksjonen Merknader (ikke på pasientfanene).

Pasient-ID

Faktura

I bunnverktøylinjen på faktura-sider (inkludert direktesalg).

Faktura ID (ikke fakturanummeret)

Konsultasjon

Over seksjonen generell info, for både pågående og ferdige konsultasjoner.

Konsultasjons-ID

Timeavtale kalender

Øverst på timeavtale-kalenderen.

Aktuelt avdelings-ID

Skiftkalender

Øverst på skiftkalenderen.

Aktuelt avdelings-ID

Bildediagnostikk

På henvisningssiden til bildediagnostikk i topp- og bunnverktøylinjene.

Henvisning til bildediagnostikk ID

Innkalling

I utvalgsverktøylinjen på innkallings-siden når én eller flere innkallinger er valgt.

Innkalling ID for hver valgt innkalling

Logg

Forespørsler sendt i bakgrunnen ('Send HTTP-forespørsel') lagres i en intern logg for verifikasjon og revisjon.

CI3.png
CI4.png
  1. Gå til Innstillinger > Integrasjoner > Egendefinerte integrasjoner > Logg.

  2. Loggvisningen viser alle forespørslene som er gjort, med den nyeste forespørselen først.

  3. Se mer informasjon i detaljvisningen ved å velge øye-knappen til høyre i hver rad.

Merk: Logging utføres ikke for forgrunnsforespørsler ('Åpne i ny fane', 'Åpne i sidepanel').

Bekreftelsestillegg & hashes

Alternativet "Bekreftelsestillegg" vises bare hvis "Legg til bekreftelses-hash" er valgt. I tillegg vises "Inkluder nyttelasten i verifikasjonshashen" også når "Legg til bekreftelses-hash" er valgt.

Basert på kombinasjonen av tillatelser beregnes verifikasjonshashen slik:

1. Bekreftelsestillegg aktivert, "inkluder nyttelast i verifikasjon-alternativ" deaktivert -> hash beregnes som: Heksadesimalt MD5-hashtag for bekreftelsessammendrag, for eksempel "4e531ee13aa16886db72bc1621206d2f". Hash-en genereres ved å legge til bekreftelses-feltet etter det inkluderte tidsstempelet ("2018-07-15T09:12:54+00:00Min bekreftelsesfelt"). [Streng]2. Bekreftelsestillegg aktivert, "inkluder nyttelast i verifikasjon-alternativ" aktivert, "Legg til informasjon om organisasjon og avdeling" DEAKTIVERT -> hash beregnes som: Heksadesimalt MD5-hashtag for bekreftelsessammendrag, for eksempel "23ae5385b3862a571f1b5d6f6b469b1c". Hash-en beregnes med: "<tidsstempel><tillegg><parameternavn><objekt_id>user_id<user_id>" ("2018-07-15T09:12:54+00:00Min bekreftelsesfeltpatient_id1234user_id56"). [Streng]3. Bekreftelsestillegg aktivert, "inkluder nyttelast i verifikasjon-alternativ" aktivert, "Legg til informasjon om organisasjon og avdeling" AKTIVERT -> hash beregnes som: Heksadesimalt MD5-hashtag for bekreftelsessammendrag, for eksempel "163049a017bb405d4bfec754810c9838". Hash-en beregnes med: "<tidsstempel><tillegg><parameternavn><objekt_id>user_id<user_id>provet_env<provet_env>provet_id<provet_id>department_id<department_id>" ("2018-07-15T09:12:54+00:00Min bekreftelsesfeltpatient_id1234user_id56provet_envenvprovet_id12345department_id12"). [Streng]

Verifikasjonshashene kan brukes som ekstra validering for å verifisere hvilke forespørsler som kommer fra Provet sin egendefinerte integrasjon.

  • Når aktivert, legges en ekstra parameter kalt "verification" til forespørslene.

  • Denne parameteren er et MD5-hashtag for verifikasjon av tidsstempelet og bekreftelsestillegget.

  • For bakgrunnssending genereres tidsstempelet når forespørselen faktisk sendes.

  • For forgrunnssending genereres tidsstempelet når en side som inneholder knappen for egendefinert integrasjon lastes.

For eksempel, for å verifisere at verifikasjonshashen er gyldig i Python, kan man skrive en funksjon som denne:

from hashlib import md5VERIFICATION_SALT = "My custom verification salt"def is_verification_hash_valid(parameters):    hasher = md5()    hasher.update(parameters.timestamp.encode("utf8"))    hasher.update(VERIFICATION_SALT.encode("utf8"))    return hasher.hexdigest() == parameters.verification

To-veis kommunikasjon med Provet

Provet legger til rette for en begrenset mengde to-veis kommunikasjon med egendefinerte integrasjoner som åpnes i forgrunnen ved hjelp av Window.postMessage()-APIet.

  • Den eneste gyldige kommandoen er "reload".

    function refreshProvetCloud() {    window.opener.postMessage("reload","*");}
  • Denne kommandoen utfører en full sideoppdatering i vinduet eller fanen som åpnet den egendefinerte integrasjonen.

  • Dette kan være nyttig hvis den egendefinerte integrasjonen oppdaterer Provet-data via REST API.

Se også

Svarte dette på spørsmålet?