Mukautetut integraatiot

Johdanto

Mukautetut integraatiot ovat Provet Cloudin ominaisuus, joka mahdollistaa pyyntöjen lähettämisen ulkoisiin resursseihin Provet Cloudin sisältä. Jos haluat käyttää ominaisuuksia, ota yhteyttä Provet Cloudin tukeen.

Hallinto

Mukautettuja integraatioita hallitaan kohdassa Asetukset → Integraatiot → Mukautetut integraatiot.

Voit lisätä integraation sinisellä '+Add' -painikkeella; käytä valkoista kynänappia taulukkorivillä integraation muokkaamiseen.

Screenshot_2021-12-14_at_8.28.59.png

Asetukset

  • Name - Määrittää käyttöliittymässä näkyvän painikkeen nimen.

  • Näkyvä sivu - Määrittää, millä sivulla painike näkyy. Kukin mukautettu integraatio voi olla näkyvissä vain yhdellä sivulla, mutta sama määritys voidaan monistaa useisiin mukautettuihin integraatioihin.

  • Toiminto - Määrittää, mikä toiminto suoritetaan, kun painiketta napsautetaan.

    • Lähetä HTTP-pyyntö - Pyyntö ajoitetaan taustalla ja lähetetään Provet Cloudin palvelimilla. Käyttäjät eivät näe verkkosivua, mutta saattavat nähdä ilmoituksen, kun lähetys etenee. Pyyntö tulee Provet Cloudin lähtevistä IP-osoitteista, joten vastaanottavan pään on oltava avoinna ulkopuolisille pyynnöille.

    • Avaa uudessa ikkunassa - Kohde-URL avataan uuteen ikkunaan/selaimen välilehteen.

    • Avaa sivupaneelissa - Kohde-URL upotetaan Provet Cloudiin avaamalla sivupaneeli sivun sisällön päälle ja näyttämällä sivu iframe-kehyksenä. Kohde-URL:n on tuettava upottamista (eli X-Frame-Options -otsikon on oltava oikein asetettu).

  • HTTP method - Määrittää, lähetetäänkö pyyntö GET-pyyntönä, jolloin hyötykuorma toimitetaan kyselymerkkijonon parametreina, vai POST-pyyntönä, jolloin hyötykuorma toimitetaan lomaketietona.

  • URL-osoite - Kohde-URL-osoite skeemoineen.

  • Parametrin nimi - Parametrin nimi, jota käytetään nykyisen objektin ID:n antamisessa.

  • Enabled - Mahdollistaa mukautetun integraation ottamisen käyttöön ja poistamisen käytöstä. Mukautetut integraatiot voidaan myös poistaa, jos niitä ei enää tarvita.

  • Add verification hash - Ottaa käyttöön hyötykuormaan sisältyvän tarkistushakemiston, jonka avulla voidaan tarkistaa, että pyyntö on peräisin mukautetusta integraatiosta.

  • Verification salt - Jaettu salaisuus, jota käytetään verifiointitiedoston laskennassa; tarvitaan vain, kun verifiointitiedosto on käytössä.

Etuliite Parametri Arvo

Parametrin arvoon on mahdollista lisätä mukautettu etuliite määrittämällä parametrin nimi eri tavalla. Normaalisti parametrin nimen määrittäminen 'id'-nimellä johtaisi seuraavanlaiseen pyyntöön: https://example.com/?id=1. Jos kuitenkin tarvitaan mukautettu etuliite varsinaisen ID-arvon eteen, parametrin nimi voidaan määritellä esimerkiksi muotoon "id=client_", jolloin lähetetään pyyntö https://example.com/?id=client_1.

Otsikot

Taustapyynnöille ('Lähetä HTTP-pyyntö') voidaan myös antaa mielivaltaisia, staattisia arvoja, jotka lisätään pyyntöihin aina, kun ne lähetetään. Tätä voidaan käyttää esimerkiksi Authorisation-otsakkeiden sisällyttämiseen pyyntöihin.

Tätä ominaisuutta ei ole toteutettu etualalla oleville pyynnöille ('Avaa uudessa ikkunassa', 'Avaa sivupaneelissa'). Lähetettyjä otsikoita ei myöskään kirjata.

Hyötykuormaa koskevat tiedot

Screenshot_2021-12-14_at_10.50.07.png

Asetukset-näkymä näyttää luettelon hyötykuorman avaimista ja arvoista, jotka lähetetään pyynnön mukana joko kyselymerkkijonoparametreina (GET) tai lomaketietoina (POST). Luettelo päivittyy, kun asetuksia muutetaan.

Tukki

Taustalla lähetetyt pyynnöt ('Lähetä HTTP-pyyntö') kirjataan sisäiseen lokiin todentamista ja tarkastusta varten. Näin ylläpitäjät voivat tarkistaa, millaisia pyyntöjä kuka lähetti ja mihin aikaan, ja tarkastaa, millaisen vastauksen mukautettu integraatio lähetti takaisin.

Mukautetun integraation loki on nähtävissä kohdassa Asetukset → Integraatiot → Mukautetut integraatiot → Loki.

Screenshot_2021-12-14_at_9.33.19.png

Lokinäkymässä luetellaan kaikki tehdyt pyynnöt viimeisimmästä pyynnöstä alkaen. Pyyntöjen perustiedot näkyvät luettelossa, ja lisätietoja saa yksityiskohtaisesta näkymästä napsauttamalla kunkin rivin oikealla puolella olevaa silmäpainiketta.

Screenshot_2021-12-14_at_9.33.53.png

Etualan pyyntöjä ("Avaa uudessa ikkunassa", "Avaa sivupaneelissa") ei kirjata, koska selain vastaa näiden pyyntöjen tekemisestä.

Käyttö

Kun mukautetut integraatiot on lisätty, ne näytetään painikkeina kohdesivuillaan. Mukautetut integraatiopainikkeet on helppo erottaa Provet Cloudin painikkeista niiden ainutlaatuisen ruskean ulkonäön perusteella.

Jos sivulle on määritetty vain yksi mukautettu integraatio, se näytetään tavallisena painikkeena, jonka nimenä käytetään mukautetun integraation nimeä. Katso ruskea 'Käynnistä mukautettu integrointi' -painike alla olevassa kuvassa (asiakassivu).

Screenshot_2021-12-14_at_10.07.37.png

Jos sivuun on liitetty useita mukautettuja integraatioita, mukautetut integraatiot esitetään sen sijaan pudotusvalikkona, ja niiden erottamiseen käytetään jälleen samaa ruskeaa ulkonäköä. Valikon merkinnöissä käytetään mukautetun integraation nimeä nimenä, aivan kuten yksittäisissä painikkeissa. Alla olevassa kuvassa on havainnollistava kuva.

Screenshot_2021-12-14_at_10.11.17.png

Mukautetut integraatiot eivät lähetä yksityiskohtaisia tietoja parhaillaan näkyvillä olevasta sivusta. Sen sijaan ne lähettävät vain asiaankuuluvan objektin ID:n (asiakkaan ID, potilaan ID, laskun ID jne.), jota voidaan kysyä Provet Cloudin REST API:sta, kuten webhookit toimivat.

Mukautetut integraatiot eivät automaattisesti sisällä tietoa siitä, mille sivulle ne on rekisteröity. Käyttäjien tulisi joko käyttää eri URL-päätteitä eri sivuille (esimerkiksi integration.com/client/ asiakassivun mukautettua integrointia varten ja integration.com/patient/ potilassivun mukautettua integrointia varten) tai, jos se ei ole mahdollista, käyttää eri parametrien nimiä (esimerkiksi patient_id potilassivun integrointia varten ja client_id asiakassivun integrointia varten, jos molemmissa käytetään samaa URL-osoitetta), ja erottaa sitten integraation puolella, mikä parametri sisällytetään pyyntöön. Taustapyyntöihin voidaan käyttää myös mukautettuja otsikoita.

Myöskään aktiivista Provet-tunnusta ei ole mainittu. Jos rakennat integraatiota, joka on jaettu useiden Provet Cloud -instanssien kesken, on suositeltavaa lisätä päätepisteet kullekin Provet ID:lle (esimerkiksi integration.com/1234/client/ ja integration.com/4321/client/, jos integraatiota käytetään sekä Provet Cloud -instansseissa 1234 että 4321). Tässä tapauksessa on myös suositeltavaa käyttää varmistushashia sen varmistamiseksi, että tiedot tulevat oikeasta instanssista, vaikka mukautetun integraatio-URL:n kanssa olisi tehty virheellinen määritys. Taustapyyntöihin voidaan käyttää myös mukautettuja otsikoita.

Erilaiset toimet

HTTP-pyynnön lähettäminen

Jos mukautettu integraatio on määritelty toiminnoksi "Lähetä HTTP-pyyntö", mukautetun integraation painikkeen napsauttaminen ajoittaa pyynnön lähetettäväksi taustalla Provet Cloudin työpalvelimien avulla. Lähettäminen tapahtuu asynkronisesti, ja vaikka pyyntö tehdään yleensä melko välittömästi, palvelimilla saattaa esiintyä viivettä sen mukaan, kuinka paljon palvelimilla on parhaillaan töitä. Pyyntö tulee Provet Cloudin lähtevistä IP-osoitteista.

Kun pyyntöä ajoitetaan, käyttäjä näkee sivun yläosassa ilmoituksen.

Screenshot_2022-01-06_at_12.12.11.png

Jos pyyntöä käsitellään ja se suoritetaan loppuun ilman, että käyttäjä siirtyy pois sivulta, hänelle voidaan näyttää lisäilmoitus tehtävän suorittamisesta.

Onnistumisilmoitus näytetään, jos pyyntö on lähetetty onnistuneesti ja integraatio vastaa onnistuneella HTTP-tilakoodilla (välillä 200-299).

Screenshot_2022-01-06_at_12.11.51.png

Jos pyyntö kuitenkin jostain syystä epäonnistuu, näytetään punainen virheilmoitus "Integrointipyyntö epäonnistui", ja suluissa on tarkempi virheilmoitus.

Screenshot_2022-01-06_at_12.12.01.png

Mahdolliset virheilmoitukset tällä hetkellä ovat:

  • Backend error - Provet Cloudin työpalvelimilla tapahtui tuntematon virhe, kun pyyntöä lähetettiin. Kyseessä voi olla virhe Provet Cloudin palvelimissa. Ota yhteyttä Provet Cloudin tukeen saadaksesi lisätietoja.

  • Yhteysvirhe - Provet Cloudin palvelimille tehty lähetyksen aikataulutuspyyntö ei mennyt läpi. Kyseessä voi olla käyttäjän yhteyden virhe tai kenties ongelma Provet Cloudin palvelimissa.

  • Tietovirhe - Provet Cloudin palvelimille lähetetty lähetyksen ajoituspyyntö sisälsi virheellisiä tietoja. Tämä viittaa ongelmaan Provet Cloudissa.

  • Integraatiovirhe - Pyyntö lähetettiin onnistuneesti, mutta integraatio vastasi HTTP-tilakoodilla, joka ei ole onnistunut (pienempi kuin 200 tai suurempi kuin 299). Mukautetun integraation lokia voidaan käyttää syyn määrittämiseen, jos epäonnistuminen on odottamaton.

Avaa uudessa ikkunassa

Jos mukautettu integraatio on määritelty "Avaa uudessa ikkunassa" -toiminnoksi, mukautetun integraation painikkeen napsauttaminen avaa kohde-URL-osoitteen uudessa ikkunassa tai nykyaikaisissa selaimissa yleisemmin uudessa välilehdessä. Alkuperäinen Provet Cloud -sivu pysyy auki alkuperäisessä ikkunassa/välilehdessä.

Jos käytetään GET-pyyntömenetelmää, käyttäjät näkevät hyötykuorman tiedot selaimen osoiterivillä. Jos käyttäjien ei pitäisi helposti nähdä lähetettyjä hyötykuorman tietoja, harkitse sen sijaan POST-pyynnön käyttämistä.

Avaa sivupaneeli

Jos mukautettu integraatio on määritelty "Avaa sivupaneelissa" -toiminnoksi, mukautetun integraation painiketta napsauttamalla haetaan kohde-URL selaimessa ja näytetään se iframe -elementissä sivupaneelissa, joka avautuu nykyisen sivun päälle.

Kohde-URL-osoitteen on tuettava upottamista X-Frame-Options-otsikon kautta.

Screenshot_2021-12-14_at_10.37.17.png

Sivut

Asiakas

Asiakkaan mukautetut integraatiot näkyvät asiakassivulla oikealla puolella, Huomautukset-osion yläpuolella, kun selaat mitä tahansa asiakkaan välilehteä ("Asiakastiedot", "Laskutus", "Hoidot" jne.). Sitä ei näytetä potilasvälilehdillä. Asiakastunnus lähetetään parametrina.

Potilas

Vastaavasti potilaan mukautetut integraatiot näkyvät potilassivulla oikealla puolella, Huomautukset-osion yläpuolella, kun selaat potilaan välilehtiä ("Potilaan tiedot", "Historia", "Mittaukset" jne.). Sitä ei näytetä asiakkaan välilehdillä. Potilastunnus lähetetään parametrina.

Screenshot_2021-12-14_at_12.25.13.png

Lasku

Laskun mukautetut integraatiot näytetään laskun (mukaan lukien laskutusmyynti) sivuilla alareunan työkalupalkissa. Laskun tunnus (jota ei pidä sekoittaa laskun numeroon) lähetetään parametrina.

Screenshot_2022-01-06_at_12.30.39.png

Konsultointi

Konsultaatioiden mukautetut integraatiot näytetään konsultaatiosivulla yleisten tietojen yläpuolella sekä käynnissä olevien että päättyneiden konsultaatioiden osalta. Konsultaation tunnus lähetetään parametrina.

Screenshot_2022-01-06_at_12.30.56.png

Nimityskalenteri

Ajanvarauskalenterin mukautetut integraatiot esitetään ajanvarauskalenterin päällä. Aktiivisen klinikan sijainnin ID lähetetään parametrina.

Vuorokalenteri

Vastaavasti vuorokalenterin mukautetut integraatiot esitetään vuorokalenterin päällä, vuorotyypin ja vuoromallin valinnan alla. Aktiivisen klinikan sijaintitunnus lähetetään parametrina.

Screenshot_2021-12-14_at_14.21.34.png

Diagnostinen kuvantaminen

Diagnostisen kuvantamisen mukautetut integraatiot näkyvät diagnostisen kuvantamisen lähetteen sivulla ylä- ja alareunan työkalupalkissa. Diagnostiikkakuvantamisen lähetteen tunnus lähetetään parametrina.

Screenshot_2021-12-14_at_14.27.11.png

Muistutukset

Muistutusten mukautetut integraatiot näkyvät muistutussivun valintatyökalurivillä, kun yksi tai useampi muistutus on valittu taulukossa. Useita muistutuksia voidaan valita ja lähettää samanaikaisesti. Kunkin valitun muistutuksen muistutustunnus lähetetään parametreina.

Screenshot_2021-12-14_at_14.33.09.png

Varmennus Hashes

Jos on olemassa riski, että ulkopuoliset tahot voivat lähettää pyyntöjä kohde-URL-osoitteeseen, ja on tiedettävä, mitkä pyynnöt tulevat Provet Cloudin mukautetusta integraatiosta, varmennushakkeja voidaan käyttää lisävarmennuksena. Kun tämä on käytössä, pyyntöihin lisätään lisäparametri nimeltä "verification", joka on aikaleiman ja tarkistussuolan MD5-hash-digesti.

Jos esimerkiksi halutaan tarkistaa, että varmennushash on kelvollinen Python-kielellä, voidaan kirjoittaa tällainen funktio:

Screenshot_2022-01-06_at_12.36.15.png

Kun käytetään taustalähetystä ("Lähetä HTTP-pyyntö"), aikaleima luodaan, kun pyyntö todella lähetetään. Käytettäessä etualalla tapahtuvaa lähetystä ("Avaa uudessa ikkunassa") aikaleima luodaan kuitenkin silloin, kun mukautetun integrointipainikkeen sisältävä sivu ladataan. Tämä tehdään, jotta varmennuksen hash voidaan luoda palvelinpuolella ja välttää varmennussuolan paljastaminen käyttäjille. Mukautettujen integraatioiden kehittäjien on ehkä otettava huomioon, että käyttäjät saattavat viettää jonkin aikaa sivulla ennen mukautetun integraatiopainikkeen napsauttamista.

Kaksisuuntainen viestintä Provet Cloudin kanssa

Provet Cloud mahdollistaa rajoitetun määrän kaksisuuntaista viestintää etualalla avattujen mukautettujen integraatioiden kanssa käyttämällä Window.postMessage() API:ta. Ikkuna/välilehti, joka avasi mukautetun integraation, on käytettävissä window.opener -objektin kautta, ja näin ollen viesti voidaan lähettää komennolla window.opener.postMessage(message), jossa viesti on Provet Cloudin tunnistama kelvollinen komento.

Screenshot_2022-01-06_at_12.36.23.png

Tällä hetkellä ainoa kelvollinen komento on "reload", joka suorittaa koko sivun uudelleenlatauksen ikkunassa/välilehdessä, joka avasi mukautetun integraation. Tämä voi olla hyödyllistä esimerkiksi silloin, jos mukautettu integraatio päivittää Provet Cloud -tietoja REST API:n kautta, ja käyttäjien pitäisi nähdä viimeisimmät muutokset, kun he palaavat mukautetusta integraatiosta.

Päivitetty

Oliko tämä artikkeli hyödyllinen?

0/0 koki tästä olevan apua

Lisäkysymyksiä? Lähetä pyyntö

Kommentit

0 kommenttia

Kirjaudu sisään jättääksesi kommentin.