In PilotFish’s eiConsole and eiPlatform, the HL7 LLP Listener monitors a specified TCP socket for HL7 messages.
Select the HL7 LLP Listener from the Listener Type drop-down. There are 6 tabs: Basic, Advanced, Transaction Logging, Inactivity, Throttling, and Compliance.
Listener (Adapter) Configuration Drop-Down List
Basic HL7 LLP Listener Configuration Options
On the Basic tab you can specify:
- HL7 Engine – the engine to process incoming HL7 messages. If insure select ’PilotFish’, which has more granular ACK control
- Port – the server socket port listen on for incoming HL7 MLLP connections
- Socket Timeout – the socket/connection timeout for read and write operations. Set to 0 to maintain the connection.
- Synchronous – specifies if a synchronous response is required to send back an acknowledgment
- Synchronous Timeout – specifies how long the Listener should wait for messages which are interrupted before timing out the connection
- Auto-Generate ACK – specifies if the ACK should automatically be built on a successful or failed response (attribute “HL7.SynchronousResponse.Code”); if not, the transaction contents are assumed to be the acknowledgment
- Maximum Connections – the maximum number of simultaneous connections on this port
- Validate Messages – if selected, messages will be validated by the HL7 HAPI library before starting processing
HL7 LLP Listener Basic Configuration Options
Advanced HL7 LLP Listener Configuration Options
The Advanced tab allows you to specify whether or not you should only run the Listener when it is triggered externally, how many elements should be serialized.
Also, you can set the following options:
- Initialize on Trigger Only – if enabled, the Listener doesn’t start up until a trigger initializes it
- Allow Command-Line Invocation – if enabled, the Listener can be invoked using the CLI client application
- Restart on Listening Error – if enabled, the Listener will be restarted after an error occurs
- Stop if Directory Not Found – the Listener will stop and report an error when polling the directory or postprocess Target directory and they do not exist
- FIFO Queue Name – the FIFO option enables a “First In, First Out” queuing mechanism between Listeners and Transports. If a FIFO Queue Name is provided, it will be used as a key for a transaction queue. Transactions will be written to this queue before they reach a Transport. The transactions in this queue will be ordered according to when they were created by the Listener.
- FIFO Queue Delay – it is the interval between updates/checks against that queue. Providing a queue name guarantees that a given Transport sends transactions in the same order the Listener created them in.
HL7 LLP Listener Advanced Configuration Options
Transaction Logging HL7 LLP Listener Configuration Options
On the Transaction Logging tab, you are allowed to enable transaction events logging. That data can be logged by a TransactionEventListener.
- Transaction Logging Enabled – this checkbox allows transaction events originating from this Listener to be logged by a TransactionEventListener
- Log Transaction Data – if enabled, logs transaction data body
- Log Transaction Data Base64 – if enabled, logs transaction data body as Base64
- Log Transaction Attribute – if enabled, logs transaction attributes
- Log All Attributes – if enabled, no attributes will be filtered
- Allowed Attributes – attributes that are allowed to be logged
HL7 LLP Listener Transaction Logging Configuration Options
Inactivity HL7 LLP Listener Configuration Options
On the Inactivity tab, you are allowed to specify:
- Enable Inactivity Monitor – check this box to enable inactivity monitoring. This will throw a non-transaction exception if the specified number of Transactions haven’t been processed in the specified time interval.
- Min. Transactions to Expect – the number of transactions to expect to be completed per monitoring interval
- Monitoring Interval – how often to check the specified number of transactions that have been processed
- Times to Monitor – if set, monitoring will be done during the defined times of the day. To ignore, set start and end time equally.
- Days to Exclude from Monitoring – inactivity monitoring will not occur on the days specified
- Include Errors in Transaction Count – if checked, transactions that attempted to start, but failed at the Listener stage, will also be counted
HL7 LLP Listener Inactivity Configuration Options
Throttling HL7 LLP Listener Configuration Options
On the Throttling tab, you are allowed to specify:
- Throttling Mode – the throttling mode to use for limiting the number of transactions or messages emitted by this Listener. “Timed” will limit transactions based on time intervals, while “Concurrent” will limit based on a concurrent number of transactions. “Concurrent” mode requires a Throttling Response Processor step later in your interface workflow to acknowledge completion.
HL7 LLP Listener Throttling Mode
- Throttling Mechanism – the mechanism to use for throttling messages. “Blocking” prevents the Listener from continuing to process and emit messages altogether, while “Queued” pushes received messages into the interface queue or a default, in-memory queue.
- Max Concurrent Messages – how many messages can be concurrently processed, either by time-based limits (“Allow X per Second”) or synchronous (“Allow X at any Time”)
- Timed Emission Interval – the interval for time-based limits (“Allow X per X Timed Emission Interval”)
- Synchronous Timeout Interval – the interval to wait for a synchronous response before failing
HL7 LLP Listener Throttling Configuration Options
Compliance HL7 LLP Listener Configuration Options
The Compliance tab allows you to specify the following:
- 2.7 Compliance Mode – if enabled, switches to an alternative processing mode
- Invalid Character Handling – behavior for unexpected, non-erroneous whitespace
- Disconnect on Error – specifies if a client should be disconnected when it sends erroneous data
HL7 LLP Listener Compliance Configuration Options