You are required to embed the HL7 message handling logic in your own application code (Java, C++, C#, etc.).
You are responsible for implementing the operational side of things: message transport and delivery, logging, administration (start/stop), monitoring, etc.
If you're using Iguana:
No custom programming is required to invoke the HL7 message handling logic.
Iguana handles message transport and delivery, logging, administration (start/stop), monitoring, etc. right out of the box.