Mukautetut liitännät ovat Provetin ominaisuus, jonka avulla voit lähettää pyyntöjä ulkoisiin resursseihin Provetista käsin. Saadaksesi käyttöoikeuden tähän ominaisuuteen, ota yhteyttä Provetin tukeen.
Hallinta
Hallitse mukautettuja liitäntöjä kohdassa Asetukset > Liitännät > Mukautetut liitännät.
Lisää liitäntä valitsemalla Tallenna-painike.
Muokkaa liitäntää valitsemalla taulukon rivin pen-painike.
Asetukset
Kenttä | Kuvaus |
Nimi | Määrittää painikkeen tekstin, joka näkyy käyttäjäliittymässä. |
Määrittää, millä sivulla painike näkyy. Jokainen mukautettu liitäntä voi näkyä vain yhdellä sivulla, mutta sama konfiguraatio voidaan kopioida. | |
Toiminto | Määrittää, mitä tapahtuu, kun painiketta valitaan. |
HTTP-tapa | Määrittää, lähetetäänkö pyyntö GET-pyynnönä (payload annetaan parametrina kyselymerkkijonossa) vai POST-pyynnönä (payload annetaan lomakedatana). |
URL | Kohde-URL, mukana skema. |
Parametrin nimi | Parametrin nimi, jota käytetään, kun annetaan nykyisen kohteen ID. |
Käytössä | Mahdollistaa mukautetun liitännän ottamisen käyttöön ja käytöstä poistamisen. Mukautettuja liitäntöjä voi myös poistaa, jos niitä ei enää tarvita. |
Todennuksen suola | Jaettu salainen tieto, jota käytetään todennuksen hash-arvon laskemiseen. Pakollinen, kun todennuksen hash on käytössä. |
Konfiguraatioasetukset
Lisää todennuksen suola: Ottaa payloadiin mukaan todennuksen hashin, jota voi käyttää varmistamaan, että pyyntö tulee mukautetulta liitännältä.
Sisällytä payload verifiointihashiin: Tämä vaihtoehto laskee todennuksen hash-arvon uudelleen käyttämällä koko payloadia, mukaan lukien käyttäjä- ja asiakasnumerot.
Lisää organisaation ja toimipisteen tiedot: Tämä vaihtoehto sisällyttää tarvittavat organisaatio- ja toimipistetiedot automaattisesti. Provet sisällyttää nämä parametrit pyyntöön: Provet name (organization core), Provet ID (product organization ID) ja Toimipisteen ID.
Parametriarvon etuliite
Parametriarvoon voi lisätä mukautetun etuliitteen määrittämällä parametrin nimen eri tavalla.
Esimerkiksi, jos määrität parametrin nimen muodossa 'id=client_', pyyntö lähetetään muotoon https://example.com/?id=client_1.
Otsikot
Taustapyynnöille ('Lähetä HTTP-pyyntö') voi antaa mielivaltaisia staattisia arvoja, jotka lisätään pyyntöihin.
Tätä voi käyttää Authorization-otsikoiden sisällyttämiseen pyyntöihin.
Toimintoa ei ole toteutettu eteenpäin näkyville pyynnöille ('Avaa uudessa ikkunassa', 'Avaa sivupaneelissa'). Lähetettyjä otsikoita ei myöskään kirjata.
Payloadin tiedot
Asetusnäkymässä näytetään luettelo payloadin avaimista ja arvoista, jotka lähetetään pyynnön mukana. Luettelo päivittyy, kun asetuksia muokataan.
Toimintotyypit
1. Lähetä HTTP-pyyntö
Pyyntö aikataulutetaan taustalle ja lähetetään Provetin palvelimien kautta. Käyttäjät eivät näe verkkosivua, mutta he saattavat nähdä tiedotteen lähettämisen edetessä.
Pyyntö tulee Provetin lähtevistä IP-osoitteista.
Lähetys tapahtuu asynkronisesti, ja viive voi riippua siitä, kuinka paljon palvelimilla on töitä juuri sillä hetkellä.
Näet tiedotteen sivun yläosassa, kun pyyntöä aikataulutetaan.
Onnistumisen tiedote näytetään, jos pyyntö lähetetään onnistuneesti ja liitäntä vastaa onnistuneella HTTP-tilakoodilla (välillä 200–299).
Jos pyyntö epäonnistuu, näkyy virheilmoitus 'Liitännän pyyntö epäonnistui', ja hakasulkeissa on tarkempi virhesanoma.
Virhesanoma | Kuvaus |
Backend-virhe | Tapahtui tuntematon virhe Provetin worker-palvelimilla. Ota yhteyttä Provetin tukeen lisätietojen saamiseksi. |
Yhteysvirhe | Pyyntö lähettämisen aikatauluttamiseksi ei mennyt perille. |
Virheelliset tiedot | Pyyntö lähettämisen aikatauluttamiseksi sisälsi virheellisiä tietoja. |
Liitännän virhe | Pyyntö lähetettiin onnistuneesti, mutta liitäntä vastasi ei-onnistuneella HTTP-tilakoodilla (alle 200 tai yli 299). |
2. Avaa uudessa välilehdessä
Kohde-URL avataan uudessa ikkunassa tai selaimen välilehdessä.
Jos käytetään GET-pyyntöä, käyttäjät näkevät selaimen osoiterivillä näkyvät payloadin tiedot.
3. Avaa sivupaneelissa
Kohde-URL upotetaan Provetiin avaamalla sivupaneeli sivun sisällön päälle ja näyttämällä sivu iframe-elementtinä.
Kohde-URL:n on tuettava upotusta (X-Frame-Options-otsikko on asetettava oikein).
Käyttö
Mukautetut liitännät esitetään painikkeina kohdesivuilla.
Jos sivulle on määritetty vain yksi liitäntä, se näytetään tavallisena painikkeena.
Jos sivulla on useita liitäntöjä, ne näytetään avattavana valikkona.
Mukautetut liitännät lähettävät vain olennaisen kohteen ID:n (asiakasnumero, potilasnumero, laskun ID jne.), joita voi kysyä Provetin REST API:sta.
Sivu | Painikkeen sijainti | ID lähetetään parametrina |
Asiakas | Oikealla puolella, Muistiinpanot-osion yläpuolella (ei potilaan välilehdissä). | Asiakasnumero |
Eläin | Oikealla puolella, Muistiinpanot-osion yläpuolella (ei asiakasvälilehdissä). | Potilasnumero |
Lasku | Laskun alatyökalurivillä (mukaan lukien Käsikauppamyynti-sivut). | Laskun ID (ei laskunumero) |
Käynti | Yleiset tiedot -osion yläpuolella sekä Jatkuva- että Merkitty valmiiksi -käynneissä. | Käynnin ID |
Ajanvarauskalenteri | Ajanvarauskalenterin yläosassa. | Aktiivisen toimipisteen ID |
Työvuorokalenteri | Työvuorokalenterin yläosassa. | Aktiivisen toimipisteen ID |
Diagnostinen kuvantaminen | Diagnostisen kuvantamisen lähetteet -sivulla ylä- ja alatyökaluriveillä. | Diagnostisen kuvantamisen lähete ID |
Kutsut | Muistutukset-sivun valintatyökalurivillä, kun yksi tai useampi kutsu on valittuna. | Kutsun ID jokaiselle valitulle kutsulle |
Loki
Taustalla ('Lähetä HTTP-pyyntö') lähetetyt pyynnöt tallennetaan sisäiseen lokiin todennusta ja auditointia varten.
Siirry kohtaan Asetukset > Liitännät > Mukautetut liitännät > Loki.
Lokinäkymässä luetellaan kaikki tehdyt pyynnöt, uusimmasta alkaen.
Katso lisätietoja yksityiskohtaisesta näkymästä valitsemalla rivin oikealta puolelta silmä-painike.
Huom: Lokiin ei tehdä merkintöjä eteenpäin näkyville pyynnöille ('Avaa uudessa ikkunassa', 'Avaa sivupaneelissa').
Todennuksen suola & hashit
'Todennuksen suola' -vaihtoehto näkyy vain, jos 'Lisää todennuksen suola' on valittu. Lisäksi 'Sisällytä payload verifiointihashiin' näytetään myös, kun 'Lisää todennuksen suola' on valittu.
Todennuksen hash lasketaan seuraavasti oikeuksien yhdistelmän perusteella:
1. Todennuksen suola käytössä, 'sisällytä payload verifiointihashiin' ei käytössä -> hash lasketaan seuraavasti:Heksadesimaalinen todennuksen MD5-tiiviste, esim. "4e531ee13aa16886db72bc1621206d2f". Tiiviste luodaan lisäämällä todennuksen suola aikaleiman jälkeen ("2018-07-15T09:12:54+00:00My verification salt"). [merkkijono]2. Todennuksen suola käytössä, 'sisällytä payload verifiointihashiin' käytössä, 'Lisää organisaation ja toimipisteen tiedot' EI käytössä -> hash lasketaan seuraavasti:Heksadesimaalinen todennuksen MD5-tiiviste, esim. "23ae5385b3862a571f1b5d6f6b469b1c". Tiiviste lasketaan käyttämällä: "<timestamp><salt><parameter_name><object_id>user_id<user_id>" ("2018-07-15T09:12:54+00:00My verification saltpatient_id1234user_id56"). [merkkijono]3. Todennuksen suola käytössä, 'sisällytä payload verifiointihashiin' käytössä, 'Lisää organisaation ja toimipisteen tiedot' KÄYTÖSSÄ -> hash lasketaan seuraavasti:Heksadesimaalinen todennuksen MD5-tiiviste, esim. "163049a017bb405d4bfec754810c9838". Tiiviste lasketaan käyttämällä: "<timestamp><salt><parameter_name><object_id>user_id<user_id>provet_env<provet_env>provet_id<provet_id>department_id<department_id>" ("2018-07-15T09:12:54+00:00My verification saltpatient_id1234user_id56provet_envenvprovet_id12345department_id12"). [merkkijono]Todennuksen hasheja voi käyttää lisävalidointina sen varmistamiseksi, mitkä pyynnöt tulevat Provetin mukautetusta liitännästä.
Kun se on käytössä, pyyntöihin lisätään lisäparametri nimeltä "verification".
Tämä parametri on MD5-tiiviste aikaleimasta ja todennuksen suolasta.
Taustalähetyksissä aikaleima luodaan silloin, kun pyyntö todellisuudessa lähetetään.
Eteenpäin näkyvissä lähetyksissä aikaleima luodaan silloin, kun sivu, joka sisältää mukautetun liitännän painikkeen, ladataan.
Esimerkiksi todentamaan, että todennuksen hash on validi Pythonissa, voisi kirjoittaa toiminnon näin:
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.verificationKaksisuuntainen viestintä Provetin kanssa
Provet mahdollistaa rajallisen kaksisuuntaisen viestinnän mukautettujen liitäntöjen kanssa, kun ne avataan eteenpäin näkyvänä, käyttämällä Window.postMessage() -rajapintaa.
Ainoa sallittu komento on "reload".
function refreshProvetCloud() { window.opener.postMessage("reload","*");}Tämä komento suorittaa täydellisen sivulatauksen ikkunassa tai välilehdessä, joka avasi mukautetun liitännän.
Tästä voi olla hyötyä, jos mukautettu liitäntä päivittää Provetin tietoja REST API:n kautta.
