The DICOM Toolbox, HL7 Features Guide

A comprehensive guide to the features of the DICOM Toolbox HL7 Sender & Receiver module.

Sender & Receiver

MLLP & TLS/SSL Encryption

Fully compliant Minimal Lower Layer Protocol (MLLP) wrapper over TCP/IP, ensuring HL7 payloads are safely framed using standard VT and FS/CR characters. Includes optional TLS/SSL layer for encrypted communication.

How to use it Configure target IP/Port. Check "Use TLS/SSL". When sending PHI or PID across a hospital's internal network to an integration engine (like Rhapsody), this ensures data is protected against packet interception.
Sender

Dynamic Mapping Rules

A powerful rules engine that allows you to define custom tokens (e.g., {{PATIENT_ID}}) and replace them with specific values in your templates right before the message is transmitted.

How to use it Add a rule: Token: {{WARD}}, Value: ICU-1. Update your HL7 template's PV1 segment to include {{WARD}}. Upon clicking Send, the toolbox automatically swaps the token for the value, making testing highly dynamic.
Sender

Batch Load Testing & Polling

Import a directory of raw HL7 files or templates and rapidly fire them at a target endpoint. Allows configurable batch counts, transmission intervals, and real-time metrics (Messages Per Second).

How to use it Need to load test a new PACS? Import a folder of 100 HL7 messages, set the batch count to 5000 and interval to 10ms. The toolbox will rapidly stream the messages and measure the receiving server's throughput.
Receiver

Custom ACK Rules & Delays

Configure the receiver to intelligently respond to incoming messages based on specific segment values (e.g., MSH-9 Message Type). Simulate network lag or force Application Rejects (AR/AE) to test error handling.

How to use it Create a rule where MSH-9 = ADT^A01 triggers an AR (Reject) response with a 2000ms delay. Send an ADT message to it and watch the sender gracefully handle the simulated failure and timeout.
Receiver

HL7 Proxy Routing

Act as a man-in-the-middle. The receiver can catch an incoming HL7 message, log it, and seamlessly forward it to another downstream host/port without breaking the connection chain.

How to use it Enable the Proxy settings. Aim a legacy RIS at the Toolbox, and set the Proxy target to the new EMR. You can now intercept, view, and log all traffic flowing between the two systems transparently.
Receiver

Auto-Archiving

Automatically save every received HL7 message to the local filesystem as a neatly organised text file, stamped with the exact date and time of receipt.

How to use it Check "Auto Archive" and point it to C:\HL7_Logs\. Leave the receiver running overnight. In the morning, you will have a physical record of every single message that hit the port for audit purposes.
Sender

Template Management

Comes pre-loaded with standard HL7 v2.x templates (ADT^A01, ORM^O01, ORU^R01, SIU^S12). Users can freely edit these, create their own custom message structures, and save/delete them to a local JSON config.

How to use it Select the pre-built "ORM^O01" template. Tweak the OBR segment to match your vendor's specific requirements, click "Save As", and name it "Custom Vendor ORM". It is now permanently available in your drop-down list.
Sender & Receiver

Deep Auditing & Traffic Log

A real-time, colour-coded traffic console that logs every SEND, ACK, TLS Handshake, and ERROR. It tracks exact round-trip times in milliseconds and displays the raw payloads.

How to use it When an endpoint claims they "never received the message", check the traffic log. You can prove the exact second the payload was delivered and show the exact AA (Application Accept) code they returned.
Receiver

Segment Parser & Visualiser

Breaks down cryptic, pipe-delimited raw HL7 text into an easily readable, hierarchical Tree-View structure, allowing users to drill down into specific segments (MSH, PID, PV1, OBR).

How to use it When a massively complex ORU^R01 (Observation Result) arrives, instead of counting pipes manually to find the observation value, just click the OBX node in the Tree-View to instantly see the extracted data fields.