AnpherosAnpheros PlatformDevelopers

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

臨床ダッシュボードのためのHL7 v2とFHIR

HL7 v2 ORU^R01検査メッセージからダッシュボードタイルへの変換:範囲とフラグ付きFHIR Observation、署名付きWebhook、重複なし。これがベッドサイドモニタリングではない理由も説明します。

クリニカルダッシュボードは、レポートされた瞬間に構造化されたコード化データとして結果を必要とします — テスト、値、単位、参照範囲、フラグ — 読み取る必要のあるPDFではなく。 多くの結果は依然としてラボからHL7 v2 ORU^R01メッセージとして送信されますが、ダッシュボードはFHIR R4 Observationで構築するのが最も簡単です。Anpherosがその間に位置します:ラボシステムはHTTPS経由でHL7 v2メッセージ(またはCSVまたはJSONレポート)を投稿し、各結果はコード(ラボが送信した場合はLOINC)、値、参照範囲を持つFHIR Observationとなり、署名付きWebhookが新しい結果が到着したことをダッシュボードに通知します。

From the laboratory to a dashboard tile
  1. Laboratory systemSends an HL7 v2 ORU^R01 message or a CSV report
  2. Lab connectorPOST /v1/patients/{id}/labs/import over HTTPS
  3. FHIR ObservationsLOINC code, value, unit, reference range, H/L flag
  4. Signed webhookresource.created reaches your server, retried on failure
  5. Your dashboardReads the new results and updates the tile

ダッシュボードが受信するもの

メッセージの各OBXセグメントは、1つの検査結果(Laboratory Observation)になります。

HL7 v2 OBXフィールド FHIR R4 Observation ダッシュボード上
OBX-3 test code code (ラボが送信する場合はLOINC。ローカルコードはラボのコードとして保持されます) テスト名; LOINCによりラボ間で比較可能になります
OBX-5 value, OBX-6 unit valueQuantity (UCUM unit) 数値とその単位
OBX-7 reference range referenceRange 正常範囲
OBX-8 abnormal flag interpretation (H, L, …) 赤または青のフラグ
OBX-14 time effectiveDateTime サンプルが採取された日時
What a dashboard can build from imported results (illustrative data)
Bed 4 · latest laboratory resultsreceived 08:42 · HL7 v2 ORU^R01
TestValueReferenceFlag
Potassium5.9 mmol/L3.5–5.1H
Creatinine1.1 mg/dL0.7–1.3—
Haemoglobin10.8 g/dL13.0–17.0L
Glucose104 mg/dL70–99H

メッセージのインポートとリアクション

作成した患者(または権限を付与されている患者)のメッセージを送信します。

import { readFile } from 'node:fs/promises';
import { Anpheros, apiKey } from '@anpheros/sdk';

const anpheros = new Anpheros({ auth: apiKey(process.env.ANPHEROS_KEY!) });   // a sandbox key, sk_test_…
const message = await readFile('oru_r01.hl7', 'utf8');
const result = await anpheros.labs.importHl7(patientId, message, { sourceSystem: 'lab-lis' });
console.log(result);   // created, skipped and unmapped counts

その後、ポーリングする代わりにプラットフォームがダッシュボードバックエンドを呼び出すようにします。

await anpheros.webhooks.create('https://dashboard.example.org/anpheros/hook', { events: ['resource.created'] });

各配信は署名されており(SDKのverifyWebhookSignatureで検証できます)、サーバーが応答しない場合は再試行されます。イベントはリソースタイプ、ID、および患者を運びます。新しいObservationを読み取り、タイルを更新します。再送信されたレポートはスキップされるため、タイムアウト時に再送信する検査機関は画面に重複行を作成しません。

各リンクにおける HL7 v2 または FHIR の選択

リンク 使用 理由
Laboratory → data layer HL7 v2 ORU^R01 (または CSV/JSON) 検査システムが既に発行しているもの。システム側の変更は不要
Data layer → dashboard FHIR R4 Observation + webhooks フロントエンドが直接読み取れる、コード化されバージョン管理された JSON
Dashboard → other apps FHIR R4、患者の同意の下で すべてのコンシューマー向けの単一標準

これは何かではありません

よくある質問

ダッシュボードはHL7 v2の検査結果を直接読み取れますか?

読み取ることは可能ですが、ダッシュボードごとにHL7 v2パーサー、コードマッピング、重複排除が必要になります。一度FHIR R4 ObservationsにLOINCコードで変換することで、すべての画面で同じクリーンなデータを利用できます。

インポートされた結果はダッシュボードにどのくらいの速さで到達しますか?

インポートリクエストは、Observationsが保存された時点で返され、同時にそれぞれに対してresource.createdのWebhookがキューイングされます。エンドポイントが利用できない場合は、配信が再試行されます。

異常な結果はどのようにフラグ付けされますか?

OBX-8はObservationのinterpretation(例: HまたはL)になり、OBX-7はそのreferenceRangeになるため、ダッシュボードはフラグと正常範囲の両方を表示できます。

AnpherosはICUモニタリングをサポートしていますか?

いいえ。Anpherosは検査結果および臨床結果を保存し、新しいデータについてシステムに通知します。継続的なベッドサイドモニタリングおよび臨床アラームは、認定された医療機器に残ります。

関連情報

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Product updates by email

New features, guides and the end of the beta. One email a month at most.

Send me occasional Anpheros Platform updates by email (new features, API changes, guides). I'll confirm by email and can unsubscribe in one click from any email. Privacy