/ Teknologi Kesehatan
Panduan Lengkap Instalasi DICOM Router SATUSEHAT: Versi Windows dan Docker Linux
Panduan teknis langkah demi langkah instalasi DICOM Router SATUSEHAT. Pelajari cara unduh via API, konfigurasi Windows installer, setup Docker compose, serta solusi error umum di lapangan.
Jawaban singkat
Yang perlu dipahami sebelum membaca lebih jauh
- DICOM Router dapat diinstal melalui dua metode resmi Kemkes: Windows Binary Installer (.exe) atau container Docker (docker-compose).
- Installer tidak tersedia lewat link unduh browser biasa, melainkan harus di-GET melalui endpoint API SATUSEHAT dengan otentikasi Bearer Token.
- Kegagalan pengiriman paling sering terjadi bukan karena file DICOM rusak, melainkan karena ServiceRequest belum dikirim terlebih dahulu ke SATUSEHAT atau Accession Number tidak cocok.
Menghubungkan Modalitas Radiologi ke SATUSEHAT
Bagi rumah sakit dan klinik di Indonesia, integrasi radiologi ke SATUSEHAT adalah salah satu tahap paling teknis dalam transformasi Rekam Medis Elektronik (RME). Berbeda dengan resume rawat jalan atau resep farmasi yang berbasis JSON sederhana, data radiologi melibatkan pertukaran file citra biner dalam standar DICOM (Digital Imaging and Communications in Medicine).
Untuk menjembatani modalitas radiologi (X-Ray, CT-Scan, USG) atau server PACS lokal dengan repositori pencitraan nasional (National Imaging Data Repository / NIDR), Kementerian Kesehatan menyediakan perangkat lunak perantara resmi bernama DICOM Router.
DICOM Router bertindak sebagai penerima data citra (C-STORE SCP) pada port default 11112, membaca metadata pemeriksaan (khususnya Accession Number), mencocokkannya dengan ServiceRequest yang sudah terdaftar di SATUSEHAT, lalu mengunggah citra ke NIDR.
Dokumentasi resmi SATUSEHAT menyediakan dua jalur instalasi: Binary Installer untuk Windows dan Docker Compose untuk Linux/Server. Artikel ini mengupas panduan teknis kedua jalur tersebut beserta solusi atas kendala nyata yang kerap ditemui para teknisi IT di lapangan.
Prasyarat Sebelum Memulai
Sebelum menjalankan instalasi di mesin lokal, pastikan Anda telah menyiapkan hal-hal berikut:
- Kode Akses API SATUSEHAT:
Organization ID,Client ID, danClient Secret(tersedia di portal SATUSEHAT Platform faskes Anda, baik Sandbox maupun Production). - Koneksi Jaringan dan IP Statis: Komputer server yang dipasang DICOM Router harus memiliki IP statis di jaringan lokal faskes agar dapat dijangkau oleh mesin PACS atau modalitas.
- Port Terbuka: Pastikan port
11112(protokol DICOM) dan port8080(HTTP Web UI / API) tidak diblokir firewall lokal dan belum digunakan oleh aplikasi lain.
Opsi 1: Instalasi Versi Windows (Binary Installer)
Opsi ini paling banyak dipilih oleh faskes tipe C/D atau klinik yang menggunakan PC workstation Windows sebagai server radiologi sederhana.
Langkah 1: Mengunduh Installer via API
File installer tidak disediakan dalam bentuk link download browser terbuka. Anda harus melakukan request GET menggunakan Postman, cURL, atau script dengan menyertakan Bearer Token SATUSEHAT:
- Sandbox:
https://api-satusehat-stg.dto.kemkes.go.id/dicom-router-installer - Production:
https://api-satusehat.kemkes.go.id/dicom-router-installer
Header Request:
Authorization: Bearer <access_token_satusehat>
Simpan hasil response body sebagai file bernama dicom-router.zip, lalu ekstrak isinya.
Langkah 2: Menjalankan Installer
- Buka folder hasil ekstraksi dan klik kanan pada file
dicom-router.exe$\to$ pilih Run as administrator. - Saat muncul jendela konfirmasi password installer, masukkan sandi resmi:
dtokemkes - Ikuti wizard instalasi hingga selesai. Secara default, aplikasi akan terpasang di:
C:\Program Files (x86)\DICOM Router\
Langkah 3: Konfigurasi router.conf
Buka file router.conf di folder instalasi menggunakan Notepad atau teks editor (dengan hak Administrator). Masukkan kredensial faskes Anda:
[settings]
org_id=100026xxx
client_id=your_client_id_here
client_secret=your_client_secret_here
url=https://api-satusehat.kemkes.go.id
http_port=8080
dicom_port=11112
ae_title=DCMROUTER
Catatan Kritis: Jangan menambahkan spasi di sekitar tanda sama dengan (
=). Menulisorg_id = 1000xxxsering kali menyebabkan parser gagal membaca kredensial secara diam-diam.
Langkah 4: Menjalankan DICOM Router
Jalankan aplikasi melalui shortcut desktop atau start menu. Jika berjalan normal, jendela konsol akan menampilkan listener port 11112 untuk DICOM dan port 8080 untuk HTTP service.
Opsi 2: Instalasi Versi Docker (Linux / VM)
Metode Docker sangat dianjurkan untuk lingkungan rumah sakit yang memiliki server Linux terpusat (Ubuntu Server, AlmaLinux, Debian) karena stabilitasnya jauh lebih baik untuk operasi non-stop.
Langkah 1: Mengunduh File docker-compose.zip
Sama seperti versi Windows, unduh archive Docker melalui request GET berotentikasi Bearer Token:
- Sandbox:
https://api-satusehat-stg.dto.kemkes.go.id/dicom-router - Production:
https://api-satusehat.kemkes.go.id/dicom-router
Simpan file sebagai docker-compose.zip dan ekstrak di server Linux Anda:
unzip docker-compose.zip -d dicom-router
cd dicom-router
Langkah 2: Struktur dan Konfigurasi docker-compose.yml
Isi file docker-compose.yml standar terlihat seperti berikut:
version: '3.8'
services:
dicom:
image: registry.dto.kemkes.go.id/pub/dicom-router:latest
container_name: dicom-router
restart: always
ports:
- "11112:11112"
- "8080:8080"
environment:
- ORG_ID=100026xxx
- CLIENT=your_client_id
- SECRET=your_client_secret
- URL=https://api-satusehat.kemkes.go.id
- AE_TITLE=DCMROUTER
volumes:
- ./in:/app/in
networks:
- dicom-network
networks:
dicom-network:
driver: bridge
Langkah 3: Menjalankan Container
Pastikan Docker Engine dan Docker Compose plugin telah terpasang, lalu jalankan:
docker compose up -d
Periksa log container untuk memastikan service berjalan lancar:
docker logs -f dicom-router
Langkah 4: Konfigurasi via Web UI
Jika kredensial belum dimasukkan ke environment file YAML, Anda dapat mengonfigurasinya melalui browser dengan mengakses:
http://<ip-server>:8080/config
Masukkan Organization ID, Client ID, dan Client Secret, lalu klik Simpan.
5 Jebakan Teknis yang Sering Terjadi di Lapangan
Berdasarkan riwayat ribuan kendala yang dialami teknisi faskes di seluruh Indonesia, berikut masalah yang paling sering muncul dan cara mengatasinya:
| Gejala Kendala | Penyebab Utama | Solusi Lapangan |
|---|---|---|
| Windows silent crash / file tidak terproses | Windows membatasi panjang path folder di atas 260 karakter (LongPathsEnabled) | Buka regedit $\to$ buka HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem $\to$ ubah LongPathsEnabled menjadi 1, lalu restart PC. |
Error ServiceRequest not found |
File DICOM dikirim sebelum resource ServiceRequest masuk ke SATUSEHAT | Pastikan alur sistem: SIMRS kirim ServiceRequest dulu, catat Accession Number-nya, lalu DICOM baru diforward. |
| Accession Number gagal terbaca | Format Accession Number di SIMRS melebihi 16 karakter | DICOM Router Kemkes membatasi Accession Number maksimal 16 karakter. Sesuaikan penomoran order internal Anda. |
Docker error No such file or directory: /app/in |
Folder tampungan sementara belum dibuat di host mesin | Buat folder lokal mkdir -p in di direktori yang sama dengan docker-compose.yml sebelum menjalankan perintah up. |
| Penyimpanan server lokal cepat penuh | File .dcm yang sukses terkirim tidak otomatis terhapus dari folder /app/in |
Buat cron job atau Windows Task Scheduler harian untuk menghapus file yang berumur lebih dari 3 hari. |
Menguji Pengiriman dari PACS atau Modalitas
Setelah DICOM Router berstatus aktif (listening di port 11112):
- Masuk ke pengaturan DICOM Network pada PACS lokal Anda (misalnya Orthanc, dcm4chee, atau K-PACS).
- Daftarkan entitas baru (DICOM Modality):
- Application Entity (AE) Title:
DCMROUTER - IP Address: IP komputer yang menjalankan DICOM Router
- Port:
11112
- Application Entity (AE) Title:
- Lakukan uji koneksi (C-ECHO / DICOM Ping). Jika status Success, kirimkan satu file sampel hasil pemeriksaan yang sudah memiliki Accession Number yang sinkron dengan ServiceRequest di SATUSEHAT.
- Cek keberhasilan transaksi dengan melakukan request
GET /ImagingStudy?identifier=http://sys-ids.kemkes.go.id/acsn/<Org_ID>|<ACSN>di SATUSEHAT.
Alternatif Modern: Melewati Kompleksitas Router Lokal
Menyiapkan dan memelihara DICOM Router secara mandiri menuntut alokasi hardware khusus, monitoring kestabilan port, manajemen folder tampungan, serta pembaruan berkala saat Kemkes merilis versi baru.
Bagi klinik dan rumah sakit yang menginginkan alur yang lebih praktis, pendekatan cloud-native menghilangkan semua kerumitan di atas:
Imagestro-PACS mengintegrasikan alur pengiriman data radiologi ke SATUSEHAT secara bawaan (cloud-native). Faskes Anda tidak perlu menginstal DICOM Router terpisah, tidak perlu merawat server lokal untuk routing, dan tidak perlu khawatir dengan batasan teknis file system. Dilengkapi dengan Modality Worklist (MWL) otomatis, Web DICOM Viewer, serta Accession Number modifier, Imagestro menjamin data radiologi Anda terhubung ke SATUSEHAT dengan standar kepatuhan penuh. Coba Imagestro Free Tier atau pelajari detail arsitekturnya di solusi Imagestro-PACS.
Istilah penting
Glossary singkat
- DICOM Router
- Middleware perantara resmi yang menerima file DICOM dari PACS atau modalitas melalui protokol C-STORE (port 11112), lalu meneruskannya ke server SATUSEHAT NIDR.
- router.conf
- File konfigurasi DICOM Router pada sistem Windows yang menyimpan parameter organization ID, client credentials, endpoint URL, dan port komunikasi.
- LongPathsEnabled
- Kunci registry Windows yang wajib diaktifkan (value 1) agar DICOM Router tidak mengalami error ketika memproses nama path direktori file DICOM yang panjang.
- C-STORE SCU/SCP
- Peran pertukaran data DICOM di mana modalitas/PACS bertindak sebagai Storage Service Class User (pengirim) dan DICOM Router bertindak sebagai Service Class Provider (penerima).
Pertanyaan umum
Yang sering ditanyakan sebelum implementasi
- Mengapa file installer DICOM Router tidak bisa diunduh langsung lewat browser?
- Kemenkes membatasi distribusi installer DICOM Router dan docker-compose.zip hanya untuk faskes terverifikasi. Pengunduhan harus dilakukan melalui request HTTP GET ke endpoint API SATUSEHAT dengan menyertakan Bearer Token otentikasi (Client ID dan Secret faskes).
- Apa password default installer Windows DICOM Router?
- Password resmi untuk membuka file installer dicom-router.exe pada Windows adalah "dtokemkes" (tanpa tanda kutip).
- Kapan sebaiknya memilih Docker daripada Windows Installer?
- Docker sangat disarankan jika faskes memiliki server Linux, membutuhkan custom port (misal port 8080 sudah terpakai), menginginkan isolasi resource, atau membutuhkan kemudahan update versi tanpa merusak sistem host.
Umpan balik
Apakah artikel ini membantu memahami workflow PACS?
Kirim Data Radiologi ke SATUSEHAT Tanpa Beban Setup Mandiri
Hubungkan alur radiologi faskes Anda—mulai dari worklist modalitas, accession number otomatis, web DICOM viewer, hingga sinkronisasi SATUSEHAT. Tersedia Free Tier untuk klinik dan rumah sakit.