HL7 ADT / ORU Integration with OpenEMR

Situation
I have been reading many OpenEMR community forums threads to check if OpenEMR has a capability to trigger outbound HL7 Messages ?
I already come across the availability of exporting/sending/downloading CCDs for patients but was wondering if an HL7 export/outbound is possible as well. Some forum posts do mention it is possible but not “HOW” to achieve it.
I am keen towards understanding if this is at all possible to do within OEMR without making any additional/custom dev efforts.

I have two use cases:

  1. Patient Arrival and registration - When a patient is registered in OpenEMR, an outbound HL7 ADT A04 is sent to an external Integration engine. Similarly, any updates done for that patient at later point, should trigger ADT A08s. ADTs having the the PID and PV1 level of information.

  2. Patient lab results/vitals filed in OpenEMR - Once the processing of orders is completed and the results are available in OpenEMR. Either by polling reports from external lab service or adding result values through Procedure >> Pending review - This should trigger HL7 ORU messages to an external integration engine having all the information about the patient and lab results.

I do know when a patient lab order is transmitted from OEMR, we have an option to download or send the generated HL7 ORM message to external locations through SFTP. Webservice and Local Filesystems also being an option. But ORM is not something i am looking for. I need to get the ADT and ORUs out of OEMR as and when any activity happens for the patient related to patient or its laboratory workflow.

I have also explored other options like HL7 viewer, but it seems to be only parsing the HL7 file and displaying field level information.

Any suggestion/inputs on this would be very helpful.

OpenEMR Version
I’m using OpenEMR version : 7.0.0

Browser:
I’m using: Edge

Operating System
I’m using: Linux

Logs
Did you check the logs? Yes
Was there anything pertinent in them? No
Please paste them here (surround with three backticks (```) for readability.
You can also turn on User Debugging under Administration->Globals->Logging User Debugging Options=>All