本頁說明如何建立、編輯、查看及刪除健康狀態層級七 (國際版本 2) (HL7v2) 儲存區。HL7v2 儲存庫會保存 HL7v2 訊息,用於在系統之間傳輸臨床資料。
建立 HL7v2 儲存庫
建立 HL7v2 存放區前,請先建立資料集。
建立 HL7v2 儲存庫時,請指定 V3 剖析器版本。建立 HL7v2 存放區後,就無法變更剖析器版本。
下列範例說明如何使用 V3 剖析器建立 HL7v2 儲存區。
控制台
- 前往 Google Cloud 控制台的「Datasets」(資料集) 頁面。 
- 選取要建立 HL7v2 存放區的資料集。系統隨即會顯示「資料集」頁面。 
- 點按「add_box Create data store」(建立資料儲存庫)。系統隨即會顯示「建立資料儲存庫」頁面。 
- 在「Type」(類型) 選單中,選取「HL7v2」。 
- 在「ID」欄位中,輸入 HL7v2 儲存區的名稱。資料集中的名稱不得重複。如需更多命名規定,請參閱「允許使用的字元和大小規定」。 
- 點選「下一步」。系統會顯示「設定 HL7v2 儲存庫」部分。 
- 進行下列設定: - 在「版本」部分,保留預設的「V3」選項。
- 如要允許建立及擷取沒有標頭的 HL7v2 訊息,請選取「允許空值的訊息標頭 (MSH)」。
- 如要設定自訂區段結束字元,請按一下「設定自訂區段結束字元」,然後在「區段結束字元」欄位中輸入結束字元。詳情請參閱「設定區隔終止符」。
- 如要拒絕與 HL7v2 儲存庫中現有 HL7v2 訊息具有相同原始位元組的傳入 HL7v2 訊息,請選取「拒絕重複訊息」。
 
- 點選「下一步」。系統會顯示「接收 Cloud Pub/Sub 通知」部分。 
- 如要在 HL7v2 存放區發生臨床事件時收到 Pub/Sub 通知,請指定 Pub/Sub 主題。您必須先建立主題,才能在 HL7v2 儲存庫中設定主題。 
- 點選「下一步」。系統會顯示「新增標籤以便整理資料儲存庫」部分。 
- 如要為 HL7v2 儲存區新增一或多個鍵/值標籤,請按一下「新增標籤」add。如要進一步瞭解資源標籤,請參閱「使用資源標籤」。 
- 按一下「建立」,系統會顯示「資料集」頁面,且 HL7v2 存放區會顯示在「資料存放區」表格中。 
gcloud
如要建立 HL7v2 儲存庫,請執行 gcloud healthcare hl7v2-stores create 指令。
使用下列任何指令資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID: HL7v2 儲存區的 ID,須符合HL7v2 儲存區的字元和大小規定
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare hl7v2-stores create HL7V2_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --parser-version=v3
Windows (PowerShell)
gcloud healthcare hl7v2-stores create HL7V2_STORE_ID ` --dataset=DATASET_ID ` --location=LOCATION ` --parser-version=v3
Windows (cmd.exe)
gcloud healthcare hl7v2-stores create HL7V2_STORE_ID ^ --dataset=DATASET_ID ^ --location=LOCATION ^ --parser-version=v3
您應該會收到類似以下的回應:
回應
Created hl7V2Store [HL7V2_STORE_ID].
REST
如要建立 HL7v2 儲存庫,請使用 projects.locations.datasets.hl7V2Stores.create 方法。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID: HL7v2 儲存區的 ID,須符合HL7v2 儲存區的字元和大小規定
JSON 要求主體:
{
  "parserConfig": {
    "version": "V3"
  }
}
如要傳送要求,請選擇以下其中一個選項:
curl
      將要求主體儲存在名為 request.json 的檔案中。
      在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
cat > request.json << 'EOF'
{
  "parserConfig": {
    "version": "V3"
  }
}
EOF接著,請執行下列指令來傳送 REST 要求:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID"
PowerShell
      將要求主體儲存在名為 request.json 的檔案中。
      在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
@'
{
  "parserConfig": {
    "version": "V3"
  }
}
'@  | Out-File -FilePath request.json -Encoding utf8接著,請執行下列指令來傳送 REST 要求:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID" | Select-Object -Expand Content
APIs Explorer
複製要求內文並開啟方法參考資料頁面。系統會在頁面右側開啟 APIs Explorer 面板。您可以使用這項工具來傳送要求。將要求內文貼到這項工具中,並填妥其他必填欄位,然後按一下「Execute」(執行)。
您應該會收到如下的 JSON 回應:
Go
Java
Node.js
Python
使用 Pub/Sub 主題和篩選器
使用 Pub/Sub 和篩選器搭配 HL7v2 儲存區是常見的用途,特別是透過 TCP/IP 連線傳送 HL7v2 訊息時。
本頁面上的部分範例說明如何設定現有的 Pub/Sub 主題,讓 Cloud Healthcare API 將 HL7v2 儲存區中的臨床事件通知傳送至該主題。指定現有 Pub/Sub 主題和篩選器清單後,Cloud Healthcare API 就能將通知傳送至多個主題,您也可以使用篩選器限制要傳送的通知。如要進一步瞭解如何設定 Pub/Sub 主題和篩選器,請參閱「HL7v2 通知」 和「查看 HL7v2 通知」。
編輯 HL7v2 儲存庫
下列範例說明如何編輯 Pub/Sub 主題和篩選器清單,讓 Cloud Healthcare API 用於傳送 HL7v2 儲存庫變更通知。
此外,多個範例也說明如何編輯 HL7v2 儲存庫的標籤。
指定 Pub/Sub 主題時,請輸入主題的完整 URI,如下列範例所示:projects/PROJECT_ID/topics/PUBSUB_TOPIC
控制台
如要編輯 HL7v2 儲存庫,請完成下列步驟:
- 前往 Google Cloud 控制台的「Datasets」(資料集) 頁面。
- 選取要編輯 HL7v2 儲存庫的資料集。
- 在「資料儲存庫」清單中,點選要編輯的資料儲存庫。
- 如要編輯 HL7v2 儲存庫的設定,請按一下「HL7v2 Store Configuration」(HL7v2 儲存庫設定)。
 如要進一步瞭解 HL7v2 儲存庫的設定選項,請參閱「建立 HL7v2 儲存庫」。
-  如要為資料儲存庫設定 Pub/Sub 主題,請按一下「新增 Pub/Sub 主題」,然後選取主題名稱。指定 Pub/Sub 主題時,請輸入主題的完整 URI,如下列範例所示:
projects/PROJECT_ID/topics/PUBSUB_TOPIC 
- 如果已新增 Pub/Sub 主題,請按一下「完成」。
- 如要為商店新增一或多個標籤,請按一下「標籤」,然後按一下「新增標籤」,並輸入鍵/值標籤。如要進一步瞭解資源標籤,請參閱「使用資源標籤」。
- 按一下 [儲存]。
gcloud
gcloud CLI 不支援這項操作。請改用 Google Cloud 控制台、curl、PowerShell 或偏好的語言。
REST
如要編輯 HL7v2 儲存庫,請使用 projects.locations.datasets.hl7V2Stores.patch 方法。
執行下列範例前,您必須在專案中建立至少一個 Pub/Sub 主題。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID:HL7v2 儲存庫 ID
- PUBSUB_TOPIC1:當資料儲存庫中發生事件時,訊息發布至的 Pub/Sub 主題
- FILTER1:用於比對發布至 PUBSUB_TOPIC1 的訊息的字串
    如需有效篩選器值的範例,請參閱 filter。
- PUBSUB_TOPIC2:訊息發布至其中的 Pub/Sub 主題
- FILTER2:用於比對發布至 PUBSUB_TOPIC2 的訊息的字串
- KEY1:第一個標籤鍵
- VALUE1:第一個標籤值
- KEY2:第二個標籤鍵
- VALUE2:第二個標籤值
JSON 要求主體:
{
  'notificationConfigs': [
    {
      'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC1',
      'filter' : 'FILTER1'
    },
    {
      'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC2',
      'filter': 'FILTER2'
    },
  ],
  'labels': {
    'KEY1':'VALUE1',
    'KEY2':'VALUE2'
  }
}
如要傳送要求,請選擇以下其中一個選項:
curl
      將要求主體儲存在名為 request.json 的檔案中。
      在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
cat > request.json << 'EOF'
{
  'notificationConfigs': [
    {
      'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC1',
      'filter' : 'FILTER1'
    },
    {
      'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC2',
      'filter': 'FILTER2'
    },
  ],
  'labels': {
    'KEY1':'VALUE1',
    'KEY2':'VALUE2'
  }
}
EOF接著,請執行下列指令來傳送 REST 要求:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID?updateMask=notificationConfigs,labels"
PowerShell
      將要求主體儲存在名為 request.json 的檔案中。
      在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
@'
{
  'notificationConfigs': [
    {
      'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC1',
      'filter' : 'FILTER1'
    },
    {
      'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC2',
      'filter': 'FILTER2'
    },
  ],
  'labels': {
    'KEY1':'VALUE1',
    'KEY2':'VALUE2'
  }
}
'@  | Out-File -FilePath request.json -Encoding utf8接著,請執行下列指令來傳送 REST 要求:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID?updateMask=notificationConfigs,labels" | Select-Object -Expand Content
APIs Explorer
複製要求內文並開啟方法參考資料頁面。系統會在頁面右側開啟 APIs Explorer 面板。您可以使用這項工具來傳送要求。將要求內文貼到這項工具中,並填妥其他必填欄位,然後按一下「Execute」(執行)。
您應該會收到如下的 JSON 回應:
Go
Java
Node.js
Python
取得 HL7v2 儲存庫詳細資料
下列範例說明如何取得 HL7v2 存放區的詳細資料。
控制台
如要查看 HL7v2 儲存庫的詳細資料,請按照下列步驟操作:
- 前往 Google Cloud 控制台的「Datasets」(資料集) 頁面。
- 選取包含要查看 HL7v2 存放區的資料集。
- 按一下 HL7v2 儲存庫的名稱。
「Datastore details」(資料儲存庫詳細資料) 頁面會顯示所選 HL7v2 儲存庫的詳細資料。
gcloud
如要取得 HL7v2 儲存區的詳細資料,請執行 gcloud healthcare hl7v2-stores describe 指令。
使用下列任何指令資料之前,請先替換以下項目:
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID:HL7v2 儲存庫 ID
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare hl7v2-stores describe HL7V2_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare hl7v2-stores describe HL7V2_STORE_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare hl7v2-stores describe HL7V2_STORE_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
您應該會收到類似以下的回覆。
如果您在 Hl7V2Store 資源中設定任何欄位,這些欄位也會顯示在回應中。
回應
... name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID ...
REST
如要取得 HL7v2 儲存庫的詳細資料,請使用 projects.locations.datasets.hl7V2Stores.get 方法。
  
  
  
  
  
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID:HL7v2 儲存庫 ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID"
PowerShell
執行下列指令:
$cred = gcloud auth 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" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 APIs Explorer 面板。您可以使用這項工具來傳送要求。完成任何必填欄位,然後按一下「執行」。
您應該會收到類似以下的回覆。
如果您在 Hl7V2Store 資源中設定任何欄位,這些欄位也會顯示在回應中。
Go
Java
Node.js
Python
列出資料集中的 HL7v2 存放區
下列範例說明如何列出資料集中的 HL7v2 存放區。
控制台
如要查看資料集中的資料儲存庫:
- 前往 Google Cloud 控制台的「Datasets」(資料集) 頁面。
- 選取包含要查看資料儲存庫的資料集。
gcloud
如要列出資料集中的 HL7v2 存放區,請執行 gcloud healthcare hl7v2-stores list 指令。
使用下列任何指令資料之前,請先替換以下項目:
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare hl7v2-stores list --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare hl7v2-stores list --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare hl7v2-stores list --dataset=DATASET_ID ^ --location=LOCATION
您應該會收到類似以下的回覆。
如果您在 Hl7V2Store 資源中設定任何欄位,這些欄位也會顯示在回應中。
ID LOCATION TOPIC HL7V2_STORE_ID LOCATION projects/PROJECT_ID/topics/PUBSUB_TOPIC PUBSUB_TOPIC ...
REST
如要列出資料集中的 HL7v2 存放區,請使用 projects.locations.datasets.hl7V2Stores.list 方法。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores"
PowerShell
執行下列指令:
$cred = gcloud auth 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" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 APIs Explorer 面板。您可以使用這項工具來傳送要求。完成任何必填欄位,然後按一下「執行」。
您應該會收到類似以下的回覆。
如果您在 Hl7V2Store 資源中設定任何欄位,這些欄位也會顯示在回應中。
Go
Java
Node.js
Python
刪除 HL7v2 儲存庫
下列範例說明如何刪除 HL7v2 存放區。
控制台
如何刪除資料儲存庫:
- 前往 Google Cloud 控制台的「Datasets」(資料集) 頁面。
- 選取要刪除資料存放區的資料集。
- 在要刪除的資料存放區「動作」下拉式清單中,選擇「刪除」。
- 如要確認,請輸入資料儲存庫名稱,然後按一下「Delete」(刪除)。
gcloud
如要刪除 HL7v2 儲存庫,請執行 gcloud healthcare hl7v2-stores delete 指令。
使用下列任何指令資料之前,請先替換以下項目:
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID:HL7v2 儲存庫 ID
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare hl7v2-stores delete HL7V2_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare hl7v2-stores delete HL7V2_STORE_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare hl7v2-stores delete HL7V2_STORE_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
Deleted hl7v2Store [HL7V2_STORE_ID].
REST
如要刪除 HL7v2 儲存庫,請使用 projects.locations.datasets.hl7V2Stores.delete 方法。
  
  
  
  
  
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父項資料集
- HL7V2_STORE_ID:HL7v2 儲存庫 ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID"
PowerShell
執行下列指令:
$cred = gcloud auth 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" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 APIs Explorer 面板。您可以使用這項工具來傳送要求。完成任何必填欄位,然後按一下「執行」。