- Created by Levin Løssfelt, last modified by kjetill.vassmo.lund on Oct 31, 2023
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 8 Current »
iCalendar (se http://tools.ietf.org/html/rfc5545) benyttes for å overføre informasjon om kalenderelement. Dette gjelder alle de bruksområdene hvor informasjon om tidspunkt er nødvendig å overføre:
Pasientens bestilte timer
Ledige timer som kan reserveres
Reservasjon, endring eller avbestilling av avtaler
Ønske om time, ønske om endring av time og ønske om avbestilling av time
Bekreftelse av utført avtale
Informasjon om timer vil kommuniseres ved bruk av xCal standarden som er XML representasjon av iCalendar kalenderinformasjon, se http://tools.ietf.org/html/rfc6321.
iCal-standarden er utvidet med noen spesifikke attributter for Digital dialog, skjema for dette er tilgjengelig sammen med andre skjema på sarepta.no
xCal versjon 2.0 skal benyttes
Obligatorisk informasjon for xcal:vcalendar (gjelder pr. kalender/timebok)
Versjon av iCalendar standarden som benyttes (xcal:version)
Produktidentifikasjon av det produktet som genererte iCalendar objektet (xcal:prodid)
Obligatorisk informasjon for xcal:vevent (gjelder pr. time)
Starttidspunkt for time (xcal:dtstart)
Sluttidspunkt for time (xcal:dtend)
Id for hver time på formatet UUID (xcal:uid)
HER-id for aktøren som timen tilhører (xcal:contact)
Valgfri informasjon som kan benyttes i xcal:vevent
Id for timeavtalen som et tidspunkt tilhører på formatet UUID (xcal:related-to), skal oppgis dersom denne id-en eksisterer
(id-en vil gjerne først eksistere når en timereservasjon bekreftes av EPJ slik at en timeavtale oppstår). Denne verdien skal beholdes når det gjøres endring av tidspunktet for en timeavtale. Related-to anvendes typisk når UID peker på en avtale/slot of time, ikke direkte på timeinstansen i EPJ.Categories (xcal:categories). Benyttes for å angi timetype, se eget avsnitt kategorisering av avtaler.
Emne (xcal:summary). Benyttes for å angi oppsummering av avtale. For hjemmebaserte tjenester navn på tjenesten som utføres, f.eks. «Praktisk Bistand» eller «Hjemmesykepleie»
Beskrivelse (xcal:description): Angir fritekstinformasjon om avtalen
Regelmessighet. Gjentagelse brukt ved planlagte besøk og eventuelle unntak fra gjentagelse, bruk av Rrule element.
Sted (xcal:location). Angivelse av sted avtalen finner sted.
Status (xcal:status). Angivelse av status for avtalen
Avlysningsårsak (xcal:x-cancellation-reason). Angir hvorfor en avtale har status avlyst
Attendee (xcal:attendee) Angivelse av deltagere i avtalen, benyttes blant annet for ansatte som utfører besøk
Organizer (xcal:organizer) Angivelse av hvem som utfører avtalen, benyttes for organisasjon som utfører besøk
Forventet varighet (xcal:x-expected-duration) Angivelse av forventet varighet for besøk som inngår i en tidsgruppe.
Tidspunkt avtalen tilgjengeliggjøres (xcal:x-available-at) Angivelse av tidspunkt avtalen tilgjengeliggjøres eller gjøres valgbar for innbygger
XML eksempel på iCalendar med svar fra fastlegen vedørende bekreftelse av reservasjon av en time:
<xcal:vcalendar> <xcal:properties> <xcal:prodid> <xcal:text>System NN</xcal:text> </xcal:prodid> <xcal:version> <xcal:text>2.0</xcal:text> </xcal:version> </xcal:properties> <xcal:components> <xcal:vevent> <xcal:properties> <xcal:dtstart> <xcal:date-time>2012-02-13T09:15:00</xcal:date-time> </xcal:dtstart> <xcal:dtend> <xcal:date-time>2012-02-13T09:30:00</xcal:date-time> </xcal:dtend> <xcal:summary> <xcal:text>Konsultasjon med lege NN</xcal:text> </xcal:summary> <xcal:description> <xcal:text>Din time er bekreftet. Du får SMS påminnelse før konsultasjonen. Mvh. Legekontor NN.</xcal:text> </xcal:description> <xcal:uid> <xcal:text>012d1e50-760e-11e2-bcfd-0800200c9a66</xcal:text> </xcal:uid> <xcal:contact> <xcal:text>91095 </xcal:text> </xcal:contact> <xcal:related-to> <xcal:uri>651b1341-26ca-11e4-8c21-0800200c9a66</xcal:uri> </xcal:related-to> </xcal:properties> <xcal:components/> </xcal:vevent> </xcal:components> </xcal:vcalendar>
Skjemaet definerer ikke makslengder eller innhold i felter. For Digital dialog med innbygger er det innført begrensninger i brukergrensesnitt for feltlengder og ved lagring av data. Begrensninger er vist i tabellen er vist under, dersom det sendes innhold lenger enn dette vil det trunkeres ved mottak.
Felt | Feltlengde | Kommentar |
Emne | 192 | iCal Summary |
Beskrivelse | 255 | iCal Description |
Sted | 255 | iCal Location |
For å kunne angi referanse til intern henvisningsid i meldingen mellom helsenorge.no og spesialisthelsetjenesten er det lagt til et egendefinert element «x-referral-id» i xCal for dette.
Element «x-referral-id» er definert i en egen xsd (iCalendar-DigitalDialogSpesialist-extensions.xsd) som må inkluderes fra iCalendar.xsd. Denne metoden for å legge til egendefinerte elementer er i henhold til slik det er beskrevet i selve xCal/iCalendar standarden.
For å kunne bruke element «x-referral-id» i XML-meldinger må exstensions-skjemaet iCalendar-DigitalDialogSpesialist-extensions.xsd være inkludert fra iCalendar.xsd, og iCalendar-DigitalDialogSpesialist-extensions.xsd må være tilgjengelig.
XML eksempel på iCalendar med informasjon om en time som har henvisning:
<xcal:vcalendar> <xcal:properties> <xcal:prodid> <xcal:text>System NN</xcal:text> </xcal:prodid> <xcal:version> <xcal:text>2.0</xcal:text> </xcal:version> </xcal:properties> <xcal:components> <xcal:vevent> <xcal:properties> <xcal:dtstart> <xcal:date-time>2015-08-13T09:00:00</xcal:date-time> </xcal:dtstart> <xcal:dtend> <xcal:date-time>2015-08-13T10:30:00</xcal:date-time> </xcal:dtend> <xcal:summary> <xcal:text>Kontrolltime</xcal:text> </xcal:summary> <xcal:uid> <xcal:text>abc123</xcal:text> </xcal:uid> <xcal:x-referral-id> <xcal:text>xyz789</xcal:text> </xcal:x-referral-id > </xcal:properties> <xcal:components/> </xcal:vevent> </xcal:components> </xcal:vcalendar>
EPJ-systemet kan kategorisere avtaler for å angi mer detaljert type avtale. For dette er det etablert et kodeverk "Timetype Innbyggerportal" med id 7617.
Elementet «categories» i iCalendar skal brukes til å angi timetype, dersom det ikke behøves eller er angitt noen spesifikk timetype skal elementet «categories» ikke brukes. Kodeverket som benyttes angis ikke i Categories.
Det er kun støtte for en (1) timetype. Dette betyr for eksempel at det ikke støttes å sende hastetimer på video. Her vil det innføres et skille mellom møteform (video, telefon, fysisk) og timetype (konsultasjon, hastetime, gruppetime osv), dette skillet kommer i oppdatert timetjeneste som er under utvikling.
Følgende verdier av timetype er tatt i bruk:
"Ordinær". Ordinær time, ved fravær av timetype benyttes denne som default - (brukes ved bestilling, timevisning og varsling).
"Hastetime". Benyttes for hastetimer - (brukes kun ved timebestilling)
"Video". Avtalen er en videotime - (brukes ved bestilling, timevisning og varsling)
“Telefon”: Avtalen gjennomføres på telefon - (brukes ved bestilling, timevisning og varsling)
"Tidsvindu". Benyttes for hjemmebesøk - (brukes kun ved timevisning)
"Gruppetime". Avtaler som inneholder flere pasienter
Alle under, - brukes ved bestilling, timevisning og varsling:
"Vaksine". Time for vaksinering, Kan gi eget varsel og visning til innbygger
"Lab". Time på lab, Kan gi eget varsel og visning til innbygger
"Koronatest". Kan gi eget varsel for time for koronatest, innført for pandemien
"Koronavaksine". Kan gi eget varsel for time for koronavaksine, innført for pandemien
Et eksempel på angivelse av en hastetime er vist under.
<xcal:categories> <xcal:text>Hastetime</xcal:text> </xcal:categories>
EPJ-systemet kan angi om en planlagt avtale er et tidsvindu når informasjon om planlagte avtaler sendes til helsenorge.no. Med tidsvindu menes en avtale der start og stopp indikerer en forventet periode der avtalen inntreffer, uten at avtalen forventes å vare hele perioden. Et eksempel på et tidsvindu er en avtale som inntreffer en gang mellom 10:00 og 12:00 og forventes å vare i 30 minutter.
Timene vil vises ulikt for innbygger på helsenorge.no for å tydeliggjøre dette.
Dersom timen er et tidsvindu kan også forventet varighet på avtalen angis. For standard avtaler kan start og stopp eller start og duration angis, det er ikke mulig å oppgi start, stopp og duration. Det er derfor lagt til en custom extension for å støtte dette, x-expected duration.
Merk: Inntil 31.10.2023 var eksempelet for duration feil i henhold til Iso spesifikasjonen. Tidligere var det angitt “P30M” for å angi 30 minutter, riktig er “PT30M”
Angivelse av et tidsvindu med en avtale med antatt varighet på 30 min er vist under:
<xcal:categories> <xcal:text>Tidsvindu</xcal:text> </xcal:categories> <xcal:x-expected-duration> <xcal:duration>PT30M</xcal:duration> </xcal:x-expected-duration>
Timeboken kan angi tidspunktet for når avtalen blir tilgjengelig for bestilling. Timen gjøres først valgbar for innbygger når dagens tidspunkt er likt eller overstiger tidspunktet angitt. Før dette tidspunktet vises avtalen som ikke bestillbar.
Elementet er en utvidelse av iCalandar standarden, XML eksempel er vist under.
<xcal:x-available-at> <xcal:date-time>2018-07-25T08:00:00</xcal:date-time> </xcal:x-available-at>
Elementet skal ikke benyttes sammen med timer som ikke kan bestilles på nett. Det vil si timer som har kategori="Must-call" skal ikke ha dette feltet angitt, og helsenorge.no vil overse elementet i dette tilfellet.
Ved henting av ledige timer kan timeboken angi at en time ikke kan bestilles elektronisk. Elementet «categories» i iCalendar skal brukes til å angi ikke bestillbar time. Følgende verdi skal benyttes for dette.
"MustCall". Benyttes for å vise at en time ikke er tilgjengelig for elektronisk bestilling og innbygger må kontakte behandler på annen måte.
Denne verdien er bare relevant ved henting av ledige timer, ved overføring av bekreftede timer skal denne ikke benyttes.
Kategorien "MustCall" som angir en time som ikke kan bookes på nett kan kombineres med andre timetyper. I tillegg kan noen timetype kombineres med tidspunkt for tilgjengeliggjøring. Tabellen under viser lovlige kombinasjoner og funksjonell betydning.
Kombinasjonene benyttes kun ved henting av ledige timer, dersom en time allerede er bekreftet skal MustCall og available-at ikke benyttes.
Timetype | Bestillbar | available-at | Betydning |
(Ingen) |
| (ingen) | Vanlig konsultasjon, timetype ikke angitt |
(Ingen) |
| Tidspunkt | Vanlig konsultasjon, tilgjengelig for booking etter angitt tidspunkt |
(Ingen) | MustCall | N/A | Vanlig konsultasjon som ikke kan bookes på nett |
Hastetime |
| (ingen) | Hastetime |
Hastetime |
| Tidspunkt | Hastetime, tilgjengelig for booking etter angitt tidspunkt |
Hastetime | MustCall | N/A | Hastetime som ikke kan bookes på nett |
Video |
| (ingen) | Videotime |
Video |
| Tidspunkt | Videotime, tilgjengelig for booking etter angitt tidspunkt. |
Video | MustCall | N/A | Videotime som ikke kan bookes på nett |
Tilsvarende som beskrevet i Dialogmelding under Referanse til helsekontakt- Sakstype kan det angis en referanse til helsekontakt i et kalenderelement. Dette behøves for eksempel der en melding har flere kalenderelement, og hvert kalenderobjekt må spesifisere referanse.
Elementet «categories» i iCalendar benyttes til å angi ID til tjenesten, med prefiks "Tjenesteid:". Angivelse av et en avtale som er et tidsvindu og som leveres av tjenesteId=12 vises under:
<xcal:categories> <xcal:text>Tidsvindu</xcal:text> <xcal:text>TjenesteId:12</xcal:text> </xcal:categories>
Standarden for regelmessige avtaler i iCal benyttes for å angi timer som gjentas, dette gjelder typisk for besøk innen Pleie og omsorg. Følgende elementer fra standarden er støttet:
Element | Lovlige verdier | Kommentar |
Freq | DAILY, WEEKLY | Regelmessige avtaler støttes for avtaler som inntreffer hver dag, eller ukentlig. Måned og år er ikke implementert. Skjema støtter timer, minutter og sekunder, det er heller ikke implementert |
Count | (alle) | Antall ganger avtale gjentas |
Interval | (alle) | Intervall mellom hver gjentagelse, f.eks. for å angi at en avtale inntreffer hver andre uke |
Byday | (alle) | Angivelse av hvilke ukedager avtale inntreffer på |
Elementet «recur» i iCalendar skal brukes når en time er regelmessig. Et eksempel for en avtale som gjentas daglig hver ukedag 103 ganger er vist under.
<xcal:dtstart> <xcal:date-time>2017-05-16T09:15:00</xcal:date-time> </xcal:dtstart> <xcal:rrule> <xcal:recur> <xcal:freq>WEEKLY</xcal:freq > <xcal:count >103</xcal:count > <xcal:byday> MO,TU,WE,TH,FR</xcal:byday > </xcal:recur> </xcal:rrule>
Et eksempel for en avtale som gjentas ukentlig annenhver onsdag uten sluttdato er vist under.
<xcal:dtstart> <xcal:date-time>2017-05-16T09:15:00</xcal:date-time> </xcal:dtstart> <xcal:rrule> <xcal:recur> <xcal:freq>WEEKLY</xcal:freq > <xcal:interval >2</xcal:interval > <xcal:byday> WE</xcal:byday > </xcal:recur> </xcal:rrule>
For å angi unntak fra regler om gjentagelse benyttes exdate, et eksempel på dette er vist under med et unntak for 17.5.2017 og 24.5
<xcal:dtstart> <xcal:date-time>2017-05-16T09:15:00</xcal:date-time> </xcal:dtstart> <xcal:rrule> <xcal:recur> <xcal:freq>WEEKLY</xcal:freq > <xcal:byday> WE</xcal:byday > </xcal:recur> </xcal:rrule> <xcal:exdate> <xcal:date-time>2017-05-17T09:15:00</xcal:date-time> </xcal:exdate> <xcal:exdate> <xcal:date-time>2017-05-24T09:15:00</xcal:date-time> </xcal:exdate>
EPJ-systemet kan angi status for en avtale, og helsenorge.no vil benytte stauts for visning.
Elementet «Status» i iCalendar skal brukes for å indikere dette, med lovlige verdier
TENTATIVE. Avtale er planlagt men ikke bekreftet
CONFIRMED: Avtale er bekreftet
CANCELLED: Avtale er avlyst
Et eksempel er vist under:
<xcal:status> <xcal:text>TENTATIVE</xcal:text> </xcal:status>
Dersom status er avlyst «CANCELLED» kan årsak til avlysning angis i x-cancelllation-reason. Dette er en utvidelse av iCalendar og følgende verdier kan benyttes for årsak til avlysning:
Avlyst av tjeneste. Avtalen ble avlyst av organisasjonen som skulle utføre avtalen
Avlyst - ikke hjemme: Avtalen ble avlyst fordi ingen var hjemme, «Bomtur»
Avlyst av innbygger. Avtalen ble avlyst av innbygger, enten elektronisk eller fysisk
Avlyst på vegne av innbygger: Avtalen ble avlyst av person med fullmakt for innbygger
Et eksempel er vist under:
<status> <text>CANCELLED</text> </status> <x-cancellation-reason> <text> Avlyst av innbygger</text> </x-cancellation-reason>
Dersom en helseaktør har tatt i bruk en videoløsning og videoløsningen krever overføring av en lenke til videoventerom, kan lenken sendes med som et attributt på avtalen.
Dersom det sendes med en videolenke, skal timetype settes til "Videotime" og lenken til venterommet legges inn i feltet url. Videoproduktet som benyttes sendes i extensionfeltet x-videoproduct som er lagt til iCal definisjonen.
URL benyttes for uthopp fra Helsenorge, videoprodukt benyttes for å validere lenke og gi produkveiledning til innbygger.
Et eksempel er vist under:
<url> <uri>https://videoventerom.video.no</uri> </url> <x-videoproduct> <text>Videoprodukt</text> </x-videoproduct> <categories> <text>Video</text> </categories>
For å angi hvilken konsultasjonstype en avtale gjelder kan det legget ved et attributt x-servicetype. Dette angir en kodet verdi for hvilken tjeneste som er planlagt. iCal standarden har ingen god representasjon av kodeverk, verdien som angis skal oppgis som <kodeverkId>:<Kodeverdi>. Foreløpig er denne kun benyttet for kodeverk 9505 og for å angi faste konsultasjoner for helsestasjon og skolehelsetjeneste. Utvidelsen er basert på feltet servicetype i FHIR appointment, slik at samme informasjon skal kunne overføres også ved bruk av FHIR.
Et eksempel er vist under for en konsultasjon etter 4 uker på helsestasjon.
<x-servicetype> <text>9505:4U</text> </x-servicetype>
Helsenorge benytter denne koden til å hente ytterligere informasjon om timen basert på nasjonale retningslinjer.
- No labels