本頁面提供總覽,說明如何在 Cloud Healthcare API 資料儲存庫中發生臨床事件時,使用 Pub/Sub 接收通知。如要瞭解如何設定及使用 Pub/Sub 訊息,請參閱「設定 Pub/Sub 通知」。
總覽
發生下列任何臨床事件時,您可以使用 Pub/Sub 接收通知:
- 您可以使用
dicomStores.dicomWeb.studies.storeInstances
方法,將 DICOM 執行個體儲存在 DICOM 儲存庫中。 - 您可以使用
dicomStores.import
方法,將 DICOM 例項匯入 DICOM 儲存庫。 - 在 FHIR 儲存庫中建立、修補、更新或刪除 FHIR 資源。不過,如果 FHIR 資源是從 Cloud Storage 匯入,系統就不會傳送通知。
- 在 HL7v2 儲存庫中擷取或建立 HL7v2 訊息。
系統會以訊息形式,將每個事件的相關資訊新增至對應資料儲存庫的 Pub/Sub 主題。
只要是您有足夠權限的專案,您就能將訊息發布至其中的任何 Pub/Sub 主題。Pub/Sub 主題收到訊息後,系統會將訊息轉寄給主題的訂閱者 (數量不限)。
DICOM 通知
如要瞭解如何搭配 DICOM 資料使用 Pub/Sub 通知,請參閱「DICOM Pub/Sub 通知」。
FHIR 通知
如要瞭解如何搭配 FHIR 資料使用 Pub/Sub 通知,請參閱「FHIR Pub/Sub 通知」。
HL7v2 通知
下圖顯示擷取或建立 HL7v2 訊息時,會發生的通知流程:
- Cloud Healthcare API 會從照護系統擷取 HL7v2 訊息。
- 訊息會儲存在 HL7v2 儲存庫中。
- HL7v2 儲存庫會建立並傳送 Pub/Sub 訊息至儲存庫的 Pub/Sub 主題,該主題具有與 HL7v2 訊息相符的篩選器。
- Pub/Sub 會將 Pub/Sub 訊息轉送至主題的訂閱項目。
- 訂閱者會從訂閱項目接收以 Pub/Sub 訊息形式顯示的通知。每個訂閱項目可包含一或多個訂閱者,以便增加平行處理工作。
通知格式
傳送至 Pub/Sub 主題的通知分為以下兩部分:
- 屬性:用於說明事件的鍵/值組合。這些值可用於篩選訂閱項目中的訊息,進而篩選用戶端接收的事件。
- 資料:包含相關 FHIR 資源、DICOM 例項或 HL7v2 訊息的 ID 的字串。
DICOM 例項資料
當 DICOM 執行個體儲存在 DICOM 儲存庫中時,Pub/Sub 訊息的 data
欄位一律會包含下列 ID:
projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID/series/SERIES_UID/instances/INSTANCE_UID
儲存 DICOM 例項的通知不會包含任何 attribute
值。
HL7v2 訊息資料和屬性
建立 HL7v2 訊息或將其擷取至 HL7v2 儲存庫時,Pub/Sub 訊息的 data
欄位一律會包含下列 ID:
projects/PROJECT_ID/locations/us-central1/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/HL7V2_MESSAGE_ID
下列鍵/值組合一律會包含在 Pub/Sub 訊息的 attributes
欄位中:
屬性名稱 | 可能的值 | 範例 | 說明 |
---|---|---|---|
msgType |
任何 HL7v2 訊息類型。 | ADT |
建立或擷取的 HL7v2 訊息類型。 |
後續步驟
- 參閱 Pub/Sub 說明文件。
- 如要深入瞭解 Pub/Sub,請參閱「什麼是 Cloud Pub/Sub?」一文。