In questa pagina viene spiegato come importare, creare, etichettare, elencare, visualizzare ed eliminare i messaggi HL7v2. I messaggi HL7v2 vengono utilizzati per trasmettere dati clinici tra sistemi. Un messaggio HL7v2 potrebbe contenere informazioni su un risultato di osservazione, una prescrizione da inviare a una farmacia, una transazione finanziaria o altri eventi clinici.
Panoramica della creazione e dell'importazione dei messaggi HL7v2
Utilizza uno dei seguenti metodi per archiviare un messaggio HL7v2 nell'API Cloud Healthcare:
Quando utilizzi messages.ingest
, il metodo genera una risposta contenente uno dei seguenti elementi:
- Un messaggio di conferma (
ACK
) HL7v2 in caso di esito positivo - Un messaggio di conferma negativo (
NACK
) in caso di errore
I messaggi ACK
e NACK
vengono utilizzati per rispondere ai sistemi di interfaccia HL7v2
che si aspettano questi riconoscimenti.
Importazione e creazione di messaggi con un adattatore MLLP
I messaggi HL7v2 vengono inviati tra i sistemi sanitari e l'API Cloud Healthcare utilizzando il protocollo MLLP (Minimal Lower Layer Protocol). Per ulteriori informazioni, consulta MLLP e l'adattatore MLLP della piattaforma Google Cloud. Per istruzioni su come configurare un adattatore MLLP per comunicare in modo sicuro con l'API Cloud Healthcare, consulta Trasmissione di messaggi HL7v2 su connessioni TCP/IP.
Importazione di messaggi HL7v2
Dopo che l'API Cloud Healthcare ha importato il messaggio da un sistema sanitario, genera una risposta contenente un campo hl7ack
che contiene un messaggio HL7v2 codificato in base64 con le seguenti caratteristiche:
- Il tipo di messaggio è
ACK
. - La struttura che invia il messaggio e quella che lo riceve sono invertite, così come l'applicazione di invio e quella di ricezione.
- L'ora di invio del messaggio è l'ora corrente e viene generato un nuovo ID controllo.
- Il valore del campo
MSH-9.1
definisce il tipo di messaggio. - Il valore del campo
MSA.1
definisce un tipo di risposta. Un tipo di rispostaAA
indicaApplication Accept
, ovvero che il messaggio è stato convalidato e importato correttamente. - Il valore
MSA.2
contiene l'ID di controllo del messaggio originale.
Gli esempi riportati di seguito mostrano come importare un messaggio HL7v2 utilizzando il metodo
projects.locations.datasets.hl7V2Stores.messages.ingest
.
curl
Per importare un messaggio HL7v2, effettua una richiesta POST
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- Un
Message
Il seguente esempio mostra una richiesta POST
che utilizza curl
e un file JSON di esempio chiamato
hl7v2-sample.json
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data-binary @hl7v2-sample.json \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages:ingest"
La seguente risposta di esempio mostra hl7Ack
e i dettagli del messaggio.
{ "hl7Ack": "TVNIfF5+XCZ8QXxBfEF8U0VORF9GQUNJTElUWXwyMDIwMDIxNDIxMjAwNXx8QUNLfDFmMmQ1MjQzLTFhOWEtNGE4My05ZmI5LWNlNTIzMTVmZjk2M3xUfDAuMA1NU0F8QUF8MjAxODAxMDEwMDAwMDA=", "message": { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "TVNIfF5+XCZ8QXxTRU5EX0ZBQ0lMSVRZfEF8QXwyMDE4MDEwMTAwMDAwMHx8VFlQRV5BfDIwMTgwMTAxMDAwMDAwfFR8MC4wfHx8QUF8fDAwfEFTQ0lJDUVWTnxBMDB8MjAxODAxMDEwNDAwMDANUElEfHwxNAExMTFeXl5eTVJOfDExMTExMTExXl5eXk1STn4xMTExMTExMTExXl5eXk9SR05NQlI=", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "14\u0001111", "type": "MRN" }, { "value": "11111111", "type": "MRN" }, { "value": "1111111111", "type": "ORGNMBR" } ] } }
PowerShell
Per importare un messaggio HL7v2, effettua una richiesta POST
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- Un
Message
Il seguente esempio mostra una richiesta POST
che utilizza PowerShell e un
file JSON di esempio denominato
hl7v2-sample.json
.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile hl7v2-sample.json ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages:ingest" | Select-Object -Expand Content
La seguente risposta di esempio mostra hl7Ack
e i dettagli del messaggio.
{ "hl7Ack": "TVNIfF5+XCZ8QXxBfEF8U0VORF9GQUNJTElUWXwyMDIwMDIxNDIxMjAwNXx8QUNLfDFmMmQ1MjQzLTFhOWEtNGE4My05ZmI5LWNlNTIzMTVmZjk2M3xUfDAuMA1NU0F8QUF8MjAxODAxMDEwMDAwMDA=", "message": { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "TVNIfF5+XCZ8QXxTRU5EX0ZBQ0lMSVRZfEF8QXwyMDE4MDEwMTAwMDAwMHx8VFlQRV5BfDIwMTgwMTAxMDAwMDAwfFR8MC4wfHx8QUF8fDAwfEFTQ0lJDUVWTnxBMDB8MjAxODAxMDEwNDAwMDANUElEfHwxNAExMTFeXl5eTVJOfDExMTExMTExXl5eXk1STn4xMTExMTExMTExXl5eXk9SR05NQlI=", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "14\u0001111", "type": "MRN" }, { "value": "11111111", "type": "MRN" }, { "value": "1111111111", "type": "ORGNMBR" } ] } }
Go
Java
Node.js
Python
Creazione di messaggi HL7v2
Gli esempi riportati di seguito mostrano come creare un messaggio HL7v2 utilizzando il metodo
projects.locations.datasets.hl7V2Stores.messages.create
.
REST
Per creare un messaggio HL7v2, utilizza il metodo projects.locations.datasets.hl7V2Stores.messages.create
.
Se hai bisogno di un file di messaggio HL7v2 da utilizzare con i comandi di esempio, puoi scaricare il file JSON hl7v2-sample.json
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: il set di dati principale dell'archivio HL7v2
- HL7V2_STORE_ID: l'ID dell'archivio HL7v2
- HL7V2_MESSAGE_FILE: il percorso di un file in formato JSON contenente un messaggio HL7v2 sulla tua macchina locale
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
--data-binary @HL7V2_MESSAGE_FILE \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-InFile HL7V2_MESSAGE_FILE `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages" | Select-Object -Expand Content
Explorer API
Apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Compila i campi obbligatori e fai clic su Esegui.
hl7v2-sample.json
, viene restituito il seguente output:
Go
Java
Node.js
Python
Separatori e codifica dei segmenti dei messaggi HL7v2
Il separatore di segmenti predefinito in HL7v2 è un ritorno a capo (\r
). La maggior parte degli editor di testo utilizza i caratteri di a capo (\n
) come separatori di segmenti. In questo modo vengono generati messaggi HL7v2 che non possono essere importati nell'API Cloud Healthcare utilizzando la configurazione predefinita. Per consentire a un archivio HL7v2 di importare messaggi che utilizzano caratteri di a capo come separatori di segmenti, consulta Impostazione del carattere di terminazione dei segmenti.
Per convertire i caratteri di a capo in un file in a capo, esegui il seguente comando in una shell Linux:
sed -z 's/\n/\r/g' INPUT_FILENAME > OUTPUT_FILENAME
I metodi di importazione e creazione si aspettano che i messaggi HL7v2 siano stringhe codificate in base64. Per convertire una stringa in codifica base64, esegui il seguente comando in una shell Linux:
openssl base64 -A -in ./INPUT_FILENAME -out ./OUTPUT_FILENAME
Impostazione del carattere di terminazione dei segmenti
Quando crei o importi i dati, il
formato dei messaggi HL7v2
richiede che i segmenti vengano terminati con il carattere di ritorno
\r
. Puoi configurare un datastore HL7v2 in modo che accetti messaggi HL7v2 con un carattere di terminazione non standard, ad esempio \n
.
Prendi in considerazione il seguente messaggio HL7v2 che utilizza il carattere predefinito \r
come carattere di terminazione del segmento. Questo messaggio viene accettato per impostazione predefinita quando crei un archivio HL7v2.
MSH|^~\\&|FROM_APP|FROM_FACILITY|TO_APP|TO_FACILITY|20150503223000||ADT^A01|20150503223000|P|2.5|\r EVN|A01|20110613083617|\r PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439|\r PV1||I|H73 RM1^1^^HIGHWAY 73 CLINIC||||5148^MARY QUINN|||||||||Y||||||||||||||||||||||||||||20150503223000|\r
Il messaggio seguente è identico al messaggio precedente, tranne per il fatto che utilizza \n
come terminatore di segmento:
MSH|^~\\&|FROM_APP|FROM_FACILITY|TO_APP|TO_FACILITY|20150503223000||ADT^A01|20150503223000|P|2.5|\n EVN|A01|20110613083617|\n PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439|\n PV1||I|H73 RM1^1^^HIGHWAY 73 CLINIC||||5148^MARY QUINN|||||||||Y||||||||||||||||||||||||||||20150503223000|\n
Per memorizzare il messaggio con il carattere di terminazione non standard, configura l'oggetto
ParserConfig
nell'archivio HL7v2 e imposta il campo segmentTerminator
sulla codifica base64 di \n
.
Gli esempi riportati di seguito mostrano come configurare segmentTerminator
in
ParserConfig
quando
crei un archivio HL7v2.
Se hai già un archivio HL7v2, puoi modificarlo per fornire il corpo ParserConfig
. Dopo aver impostato il terminatore di segmento, puoi creare o importare il messaggio.
curl
Per creare un archivio HL7v2 con il carattere di terminazione dei segmenti impostato su \n
, effettua una richiesta POST
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- Un oggetto
parserConfig
consegmentTerminator
impostato suCg==
(la codifica base64 di\n
)
L'esempio seguente mostra una richiesta POST
che utilizza curl
.
curl -X POST \ --data "{ 'parserConfig': { 'segmentTerminator': 'Cg==' } }" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "segmentTerminator": "Cg==" } }
PowerShell
Per creare un archivio HL7v2 con il carattere di terminazione dei segmenti impostato su \n
, effettua una richiesta POST
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- Un oggetto
parserConfig
consegmentTerminator
impostato suCg==
(la codifica base64 di\n
)
Il seguente esempio mostra una richiesta POST
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'parserConfig': { 'segmentTerminator': 'Cg==' } } ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "segmentTerminator": "Cg==" } }
Utilizzo di un'intestazione del segmento null
Un messaggio HL7v2 senza un
segmento di intestazione del messaggio (MSH)
ha un'intestazione del segmento null. In genere, un messaggio HL7v2 contiene un MSH che
definisce i metadati, ad esempio l'origine, lo scopo, lo scopo e la destinazione del messaggio.
L'MSH ti consente di cercare e filtrare i messaggi. Tuttavia, puoi memorizzare i messaggi che non contengono un MSH configurando l'oggetto ParserConfig
nell'archivio HL7v2 e impostando il campo allowNullHeader
su true
.
Il seguente messaggio di esempio contiene un segmento di identificazione del paziente (PID), ma non MSH:
PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439
Gli esempi riportati di seguito mostrano come configurare allowNullHeader
in ParserConfig
quando
crei un archivio HL7v2.
Se hai già un archivio HL7v2, puoi modificarlo e fornire il corpo ParserConfig
. Dopo aver impostato allowNullHeader
su true
,
puoi creare o importare messaggi con intestazioni di segmento nulle.
curl
Per creare un archivio HL7v2 e memorizzare i messaggi che non contengono un MSH, effettua una richiesta POST
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- Un oggetto
parserConfig
conallowNullHeader
impostato sutrue
L'esempio seguente mostra una richiesta POST
che utilizza curl
.
curl -X POST \ --data "{ 'parserConfig': { 'allowNullHeader': true } }" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "allowNullHeader": true } }
PowerShell
Per creare un archivio HL7v2 e memorizzare i messaggi che non contengono un MSH, effettua una richiesta POST
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- Un oggetto
parserConfig
conallowNullHeader
impostato sutrue
Il seguente esempio mostra una richiesta POST
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'parserConfig': { 'nullTerminator': true } } ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "allowNullHeader": true } }
Etichettare un messaggio HL7v2
Puoi aggiungere uno o più etichette chiave-valore a un messaggio. Un caso d'uso per le etichette è l'aggiunta di etichette di stato a un messaggio, in modo che un'applicazione possa eseguire query sui messaggi in base allo stato.
Gli esempi riportati di seguito mostrano come aggiungere etichette a un messaggio HL7v2 utilizzando il metodo
projects.locations.datasets.hl7V2Stores.messages.patch
.
curl
Per aggiungere etichette a un messaggio HL7v2, effettua una richiesta PATCH
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
- I dati dell'etichetta da aggiornare
- Una maschera di aggiornamento
L'esempio seguente mostra una richiesta PATCH
che utilizza curl
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'labels': { 'KEY' : 'VALUE' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?updateMask=labels"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" } ], "labels": { "KEY": "VALUE" } }
PowerShell
Per aggiungere etichette a un messaggio HL7v2, effettua una richiesta PATCH
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
- I dati dell'etichetta da aggiornare
- Una maschera di aggiornamento
Il seguente esempio mostra una richiesta PATCH
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Patch ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'labels': { 'KEY': 'VALUE' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?updateMask=labels" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" } ], "labels": { "KEY": "VALUE" } }
Go
Java
Node.js
Python
Recupero dei contenuti di un messaggio HL7v2
Gli esempi riportati di seguito mostrano come recuperare i contenuti di un messaggio HL7v2 utilizzando il metodo
projects.locations.datasets.hl7V2Stores.messages.get
. Per determinare le parti del messaggio da recuperare, specifica il parametro di query view
con una delle seguenti opzioni:
BASIC
: includi solo il camponame
.RAW_ONLY
: include tutti i campi del messaggio tranne il campoparsedData
.PARSED_ONLY
: include tutti i campi del messaggio tranne il campodata
.FULL
: include tutti i campi del messaggio. Questa è l'impostazione predefinita.
Gli esempi riportati di seguito mostrano come recuperare i contenuti di un messaggio HL7v2 utilizzando le visualizzazioni FULL
, RAW_ONLY
e PARSED_ONLY
.
Utilizzare la visualizzazione FULL
Non è necessario impostare esplicitamente la vista FULL
, poiché FULL
è il valore predefinito. Tuttavia, nei seguenti esempi di curl
e PowerShell, la vista FULL
viene aggiunta come parametro di query per completezza.
curl
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione FULL
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
FULL
comeview
L'esempio seguente mostra una richiesta GET
che utilizza curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=FULL"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { ""segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
PowerShell
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione FULL
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
FULL
comeview
Il seguente esempio mostra una richiesta GET
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=FULL" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { ""segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
Go
Java
Node.js
Python
Utilizzare la visualizzazione RAW_ONLY
Gli esempi riportati di seguito mostrano come recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione RAW_ONLY
, che include tutti i campi del messaggio tranne parsedData
.
curl
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione RAW_ONLY
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
RAW_ONLY
come visualizzazione
L'esempio seguente mostra una richiesta GET
che utilizza curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=RAW_ONLY"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ] }
PowerShell
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione RAW_ONLY
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
RAW_ONLY
come visualizzazione
Il seguente esempio mostra una richiesta GET
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=RAW_ONLY" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ] }
Utilizzare la visualizzazione PARSED_ONLY
Gli esempi riportati di seguito mostrano come recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione PARSED_ONLY
, che include tutti i campi del messaggio tranne data
.
curl
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione PARSED_ONLY
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
PARSED_ONLY
come visualizzazione
L'esempio seguente mostra una richiesta GET
che utilizza curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=PARSED_ONLY"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { "segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
PowerShell
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione PARSED_ONLY
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
PARSED_ONLY
come visualizzazione
Il seguente esempio mostra una richiesta GET
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=PARSED_ONLY" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { "segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
Utilizzare la visualizzazione BASIC
Gli esempi riportati di seguito mostrano come recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione BASIC
, che include solo il campo name
.
curl
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione BASIC
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
BASIC
come visualizzazione
L'esempio seguente mostra una richiesta GET
che utilizza curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=BASIC"
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" }
PowerShell
Per recuperare i contenuti di un messaggio HL7v2 utilizzando la visualizzazione BASIC
, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio
BASIC
come visualizzazione
Il seguente esempio mostra una richiesta GET
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=BASIC" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" }
Elenco dei messaggi HL7v2
Gli esempi riportati di seguito mostrano come elencare i messaggi in un archivio HL7v2 utilizzando il metodo. Per determinare le informazioni su ciascun messaggio da includere nell'elenco,
specifica il parametro di query view
con una delle seguenti opzioni:
BASIC
: includi solo il camponame
. Questa è l'impostazione predefinita.RAW_ONLY
: include tutti i campi del messaggio tranne il campoparsedData
.PARSED_ONLY
: include tutti i campi del messaggio tranne il campodata
.FULL
: include tutti i campi del messaggio.
curl
Per elencare i messaggi in un archivio HL7v2, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
view
, uno dei valoriBASIC
,RAW_ONLY
,PARSED_ONLY
oFULL
oppure ometti di usare il valore predefinitoBASIC
L'esempio seguente mostra una richiesta GET
che utilizza curl
. La richiesta specifica
?view=FULL
per includere tutti i campi del messaggio.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages?view=FULL"
Se la richiesta riesce, il server restituisce un codice di stato HTTP 200 OK
e un array di messaggi denominato hl7_v2_messages
. La seguente risposta di esempio è stata troncata.
{ "hl7_v2_messages": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "SEND_TIME", "messageType": "MESSAGE_TYPE", "createTime": "CREATE_TIME", ... }, ... ] }
PowerShell
Per elencare i messaggi in un archivio HL7v2, effettua una richiesta GET
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
view
, uno dei valoriBASIC
,RAW_ONLY
,PARSED_ONLY
oFULL
oppure ometti di usare il valore predefinitoBASIC
Il seguente esempio mostra una richiesta GET
che utilizza PowerShell. La richiesta
specifica ?view=FULL
per includere tutti i campi del messaggio.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages?view=FULL" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce la risposta in formato JSON. La risposta di esempio è troncata.
{ "hl7_v2_messages": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "SEND_TIME", "messageType": "MESSAGE_TYPE", "createTime": "CREATE_TIME", ... }, ... ] }
Go
Java
Node.js
Python
Eliminazione di un messaggio HL7v2
Gli esempi riportati di seguito mostrano come eliminare un messaggio HL7v2 utilizzando il metodo
projects.locations.datasets.hl7V2Stores.messages.delete
.
curl
Per eliminare un messaggio HL7v2, effettua una richiesta DELETE
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio HL7v2
L'esempio seguente mostra una richiesta DELETE
che utilizza curl
.
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID"
Se la richiesta riesce, il server restituisce la risposta con un testo vuoto in formato JSON:
{}
PowerShell
Per eliminare un messaggio HL7v2, effettua una richiesta DELETE
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome dell'archivio HL7v2
- L'ID messaggio HL7v2
Il seguente esempio mostra una richiesta DELETE
che utilizza PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Delete ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" | Select-Object -Expand Content
Se la richiesta riesce, il server restituisce il corpo della risposta vuoto in formato JSON:
{}
Go
Java
Node.js
Python
Passaggi successivi
- Scopri come configurare più servizi Google Cloud per inviare e ricevere messaggi HL7v2 tramite MLLP.