Pub/Sub 通知

本頁面提供總覽,說明如何在 Cloud Healthcare API 資料儲存庫中發生臨床事件時,使用 Pub/Sub 接收通知。如要瞭解如何設定及使用 Pub/Sub 訊息,請參閱「設定 Pub/Sub 通知」。

總覽

發生下列任何臨床事件時,您可以使用 Pub/Sub 接收通知:

系統會以訊息形式,將每個事件的相關資訊新增至對應資料儲存庫的 Pub/Sub 主題。

只要是您有足夠權限的專案,您就能將訊息發布至其中的任何 Pub/Sub 主題。Pub/Sub 主題收到訊息後,系統會將訊息轉寄給主題的訂閱者 (數量不限)。

DICOM 通知

如要瞭解如何搭配 DICOM 資料使用 Pub/Sub 通知,請參閱「DICOM Pub/Sub 通知」。

FHIR 通知

如要瞭解如何搭配 FHIR 資料使用 Pub/Sub 通知,請參閱「FHIR Pub/Sub 通知」。

HL7v2 通知

下圖顯示擷取或建立 HL7v2 訊息時,會發生的通知流程:

hl7v2_pubsub

  1. Cloud Healthcare API 會從照護系統擷取 HL7v2 訊息。
  2. 訊息會儲存在 HL7v2 儲存庫中。
  3. HL7v2 儲存庫會建立並傳送 Pub/Sub 訊息至儲存庫的 Pub/Sub 主題,該主題具有與 HL7v2 訊息相符的篩選器。
  4. Pub/Sub 會將 Pub/Sub 訊息轉送至主題的訂閱項目。
  5. 訂閱者會從訂閱項目接收以 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 訊息類型。

後續步驟