Skip to content
LambogeniusDocs

HL7 MLLP Connector for Azure Logic Apps

Samples

Five runnable Logic Apps: auto and workflow ACKs, sending, TLS, and the HL7 v2 Codec.

Service provider/serviceProviders/lamboHl7MllpLicensed together with the HL7 v2 Codec. One token covers both.

lambogenius-mllp-connector-samples

The samples repository has five Logic Apps. Each folder builds and runs on its own: ./run.ps1 starts Azurite, the stand-in systems (Python, standard library only) and the Logic App; ./demo.ps1 sends every message, checks each ACK and what reached the stand-ins, and exits with 1 when a check fails. All test messages are made up.

SampleShows
01 · Receive with auto ACKAA (CA in enhanced mode) once the run is saved; AR for malformed messages, with no run; a batch split into one run per message and one batch ACK; every message and ACK archived to files
02 · Workflow acknowledgementsA two-way receive: the workflow answers AA, AE with the EHR's reason, or AR with Send acknowledgement; the connector's timeout AE for a slow EHR; enhanced mode with an application ACK built by Create acknowledgement
03 · SendAn HTTP-triggered workflow sends orders to a lab and returns its ACK: AA, AE, and a lab that doesn't answer; persistent connections
04 · TLSMLLP over TLS 1.2 both ways with throwaway certificates: plain MLLP and the wrong TLS version refused, a pinned thumbprint on send, an impostor certificate refused
05 · With the HL7 v2 CodecReceive over MLLP, decode with the HL7 v2 Codec in schemaless mode, and return the codec's ACK; AR for an unsupported version

Run one

git clone https://github.com/lambogenius/lambogenius-mllp-connector-samples C:\src\mllp-samples
cd C:\src\mllp-samples
# save Lambogenius.MllpConnector.LogicApps.1.4.0.nupkg from Downloads in packages/
# (sample 05 also needs Lambogenius.Hl7Codec.LogicApps.1.1.0.nupkg)
cd 01-receive-auto-ack
./run.ps1            # window 1
./demo.ps1           # window 2

Prerequisites: Windows, the .NET 8 SDK, Azure Functions Core Tools 4, Azurite, PowerShell 7, and Python 3. No license is needed under func start. Clone to a short path: the builds write files up to about 165 characters below the clone folder, and Windows limits paths to 260. Every sample also works with the mllp test tool instead of its Python sender or receiver; the repository's README has one command per sample.