$ curl "$MEDOS/fhir/metadata"
{
"resourceType": "CapabilityStatement",
"fhirVersion": "4.0.1",
"rest": [ { "mode": "server", ... } ]
}动手试试
标准接口,无需专有 SDK
示例在您自己的部署上运行:将 $MEDOS 设置为其地址。目前尚无公共共享沙箱。
$ curl "$MEDOS/fhir/Patient/{id}/\$summary" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/fhir+json"$ curl -X POST "$MEDOS/hl7/raw" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"rawMessage":"MSH|^~\\&|LIS|LAB|MEDOS|HOSP|..."}'技术栈
一个请求的流转路径
后端是位于 API 网关之后的微服务,浏览器端是 React 应用,另有一个投影层作为读模型。写操作发往各服务;界面订阅读模型并实时更新。
- 服务总线
- NATS
- 框架
- NestJS + Moleculer
- 主存储
- MongoDB
- 读模型
- PostgreSQL
- 文件存储
- IPFS + S3
- 前端
- React + Vite
Frontend (React) │ REST / HTTPS ▼ Load balancer or nginx ▼ API gateway JWT validation, routing ▼ NATS message bus request / reply + pub/sub ▼ Microservices ├─▶ MongoDB primary write store ├─▶ projection read-model tables │ └─▶ Frontend realtime subscription ├─▶ IPFS / S3 files └─▶ External systems FHIR / HL7 / SMART
接口详解
FHIR R4
支持读写操作,并通过订阅机制推送事件。SMART on FHIR 应用通过公共 API 服务与平台交互。
对 Patient、Encounter、Observation、Condition 等资源执行 GET 和搜索。
POST、PUT 和 PATCH,映射回平台自身的记录。默认按医院关闭。
注册匹配条件;匹配的事件以 FHIR Bundle 形式推送,并附 HMAC 签名。
/fhir/metadata 上的 CapabilityStatement 会准确列出某个部署所支持的能力。
HL7v2
面向仍使用这一较早标准的检验仪器、入院信息源和药房系统。
- 传输方式
- 基于 TCP 的 MLLP,或 REST
- 默认端口
- 2575
- 入院
- ADT A01 至 A08
- 医嘱
- ORM O01
- 结果
- ORU R01
- 应答
- 每条消息均返回 ACK / NAK
自行部署
一条命令,跑起整套医院系统
本地部署包是一个 Docker Compose 文件:包含数据库、消息总线、文件存储、全部服务、反向代理和前端,并带有健康检查和启动顺序控制。
- 为您的主机名生成 TLS 证书。
- 创建带随机密钥的环境文件。
- 按所选国家设置语言和地址。
- 构建全部镜像。
公开发布筹备期间,源代码访问需提交申请。
$ cd infrastructure $ ./scripts/setup-onpremise.sh --region japan --hostname medos.local --yes
market-packs/ ├── medos-thailand/ th-TH · Asia/Bangkok · NHSO ├── medos-japan/ ja-JP · Asia/Tokyo · Kaigo └── medos-philippines/ fil-PH · Asia/Manila · PhilHealth
开发者常见问题
有公共沙箱吗?
暂时没有。示例在您自己的部署上运行。如需评估访问权限,请与我们联系。
需要专有 SDK 吗?
不需要。对外接口是 FHIR R4 和 HL7v2,任何标准客户端都可以使用。
可以写入数据,还是只能读取?
两者都可以。FHIR 写入默认关闭,按医院单独启用,因为向临床记录写入数据应由该医院自行决定。
事件如何推送?
通过 FHIR 订阅和 webhook。推送内容带有签名,接收方可以验证发送方身份;每个订阅都有速率限制。
源代码开放吗?
公开发布正在筹备中。在此之前,源代码访问需提交申请;符合条件的公共卫生项目可获得免费使用许可。
界面支持哪些语言?
十七种语言区域,包括泰语、日语、菲律宾语和英语。
立即加入这场变革。
Ever 从零起步,与开拓创新的工程师和资深医生携手打造。我们的创新致力于解决困扰全球医疗机构的现实问题。


