iWay business components used in the construction of a message flow for HL7 messages include:
iWay Software provides various e-Business Information Exchange (Ebix) files used in conjunction with the iWay integration solutions. In iWay Service Manager, the iWay Integration Solution for EDIHL7 contains several Ebix files, one for each supported HL7 version. An Ebix file for HL7 is named using the following format:
HL7_version.ebx
where:
Is the HL7 version number. For example, the Ebix file for HL7 Version 2.7 is named HL7_2.7.ebx.
An Ebix is a collection of metadata that defines the structure of data. The Ebix supplied with the iWay Integration Solution for EDIHL7 defines the structure of supported HL7 messages.
Each Ebix includes:
The dictionaries from the Ebix are used to transform the structure of a document based on the definition of the HL7 standard.
The MLLP listener uses the Minimal Lower Layer Protocol (MLLP) to receive messages within a channel from configured endpoints.
The following table lists and describes the parameters for the MLLP listener.
Parameter |
Description |
---|---|
IP Properties | |
Port* |
The TCP port where MLLP messages are received. |
Local Bind Address |
Local bind address for multi-homed hosts. This parameter is usually left blank. |
Persistent Connection |
If set, the connection is maintained until client closes or the Persistence Timeout expires. |
Maximum Connections |
Maximum number of simultaneous connections allowed. When this threshold is reached, new connections will not be accepted until current connections have ended and the total number of connections is below the limit. Leave blank or set to zero for no maximum. |
Persistence Timeout value in Minutes |
Maximum length of time (in minutes) that a connection can persist with no activity. 0 or blank will default to 60. |
Set Response NoDelay |
If true, disables Nagle's Algorithm on the response. This will result in faster line turnaround at the expense of an increased number of packets. |
Reuse Address |
If true, when the connection is closed, immediately make the address available, bypassing the TCP defaults. |
Allowable Clients |
If supplied, only messages from this list of fully qualified host names and/or IP addresses are accepted. Enter as comma-separated list or use FILE(). |
Secure Connection |
Use a secure connection over SSL. |
SSL Context Provider |
iWay Security Provider for SSL Context. If this component is secure and SSL Context Provider is left blank, then the default provider will be used. |
MLLP | |
Start Block Character |
The encoding of the Start of Block character in decimal, octal, or hexadecimal format. The default is 0x0B. |
End Block Character |
The encoding of the End of Block character in decimal, octal, or hexadecimal format. The default is 0x1C. |
Maximum Input Size |
Maximum number of bytes read before the end of the message is found. This prevents denial of service attacks with very large messages or a large number of bytes between messages. |
Tuning | |
Multithreading |
Indicates the number of worker threads (documents or requests) that iWay Service Manager can handle in parallel. Setting this to a value of greater than 1 enables the listener to handle a second request while an earlier request is still being processed. The total throughput of a system can be affected by the number of threads operating. Increasing the number of parallel operations may not necessarily improve throughput. The default is 1. The max value is 99. |
Maximum Threads |
The parallel threads can grow to this count automatically on demand. Over time, the worker count will decrease back to the multithreading level. Use this parameter to respond to bursts of activity. |
Optimize Favoring |
Use this option to customize how the listener performs. For smaller transactions, select performance. For large input documents that could monopolize the amount of memory used by iWay Service Manager, select memory. |
Events | |
Failed ReplyTo Flow |
Name of a published process flow to run if a message cannot be emitted on an address in its reply address list. |
Dead Letter Flow |
Name of a published process flow to run if an error cannot be emitted on an address in its error address list. |
Channel Failure Flow |
Name of a published process flow to run if this channel cannot start or fails during message handling. iWay Service Manager will attempt to call this process flow during channel shut down due to the error. |
Parse Failure Flow |
The name of a published process flow to run if XML parsing fails for the incoming message. |
Channel Startup Flow |
The name of a published process flow to run prior to starting the channel. |
Channel Shutdown Flow |
The name of published process flow to run when the channel is shut down. |
Other | |
Whitespace Normalization |
Specifies how the parser treats whitespace in Element content. Select preserve to turn off all normalization as prescribed by the XML Specification. Select condense to remove extra whitespace in pretty printed documents and for compatibility with earlier versions. |
Accepts non-XML (flat) only |
If set to true, the input data is sent directly to the business logic step. The data is not preparsed, parsed, or validated. This flag is used primarily to send non-XML to the business logic or replyTo without processing it. |
Execution Time Limit |
The maximum time that a request may take to complete. Used to prevent runaway requests. Any request that takes longer to complete than this value will be attempted to be terminated. |
Default Java File Encoding |
The default encoding if the incoming message is not self-declaring (that is, XML). |
Agent Precedence |
Sets the order by which iWay Service Manager selects agents. iWay Service Manager selects the agent or agents to process the document by searching through the configuration dictionary. Usually, it looks for a document entry in the configuration and when a match is found, the agent specified in that document entry is selected. If a matching document entry is not found, or no agent is specified, the engine looks in the input protocol configuration (listener). To have the processing agent taken directly from the listener (thus ignoring the document entry), use <listener> overrides <document>. Possible values are <document> overrides <listener> and <listener> overrides <document>. The default value is <document> overrides <listener>. |
Error Documents treated normally |
If set to true, error documents are processed by any configured preemitters. |
Listener is Transaction Manager |
If set to true, agents run within a local transaction. |
Record in Activity Log(s) |
If set to true, activity on this channel will be recorded in the activity logs, otherwise the activity will not be recorded. |
AES Key |
If the channel will receive encrypted AFTI messages, set the AES key (maximum 16 characters) to be used for decrypting. |
Startup Dependencies |
A comma-separated list of channel names that must be started before this one is called. |
The EDIHL7 Batch Splitter preparser (com.ibi.preparsers.EDIHL7BatchSplitter) splits the HL7 batch into individual HL7 messages. It splits on the Message Header (MSH) prior to parsing the data into XML. The EDIHL7 Batch Splitter preparser should only be used in conjunction with the EDIHL7 preparser. In addition, the EDIHL7 Batch Splitter preparser should be placed in order first if multiple preparsers are used.
The EDIHL7 Batch Splitter preparser will extract all messages from a batch. It does not write the following format to your output XML document: FHS - BHS - MSH - BTS - FTS
The following table lists and describes the parameters for the EDIHL7 Batch Splitter preparser.
Parameter |
Description |
---|---|
timestamp |
Select true from the drop-down list to write a timestamp to the log file. By default, this parameter is set to false. |
The EDIHL7 preparser (com.ibi.preparsers.XDEDIHL7PreParser) is available for the iWay Integration Solution for EDIHL7. The preparser for the iWay Integration Solution for EDIHL7 converts an incoming HL7 formatted document to iWay XML format.
The following table lists and describes the parameters for the EDIHL7 preparser.
Parameter |
Description |
---|---|
Template |
The pattern used to lookup a document inside the Ebix. The following format is used: HL7_%_^toXML.xch where:
|
Timestamp |
Select true from the drop-down list to write a timestamp to the log file. By default, this parameter is set to false. |
Z-segment |
Controls how Z-segments should be formatted in the output XML document. If this parameter is set to false, then the fields and components in the segment are not parsed. By default, this parameter is set to false. For more information, see Support for Z-Segments. |
Segment |
Select true from the drop-down list to add the name attribute to the segment. By default, this parameter is set to false. |
Composite |
Select true from the drop-down list to add the name attribute to the composite. By default, this parameter is set to false. |
Element |
Select true from the drop-down list to add the name attribute to the element. By default, this parameter is set to false. |
HL7 is a proprietary message structure that allows you to define your own structure. Since HL7 messages can be customized, the HL7 committee provides a framework for the addition of custom information into HL7 messages.
You can define a custom segment in any HL7 message using iWay Integration Tools (iIT). These segments must be named starting with the letter Z.
The EDIHL7 preparser (com.ibi.preparsers.XDEDIHL7PreParser) provides support for Z-segments. The Make floating structure parameter controls how Z-segments should be formatted in the output XML document. By default, this parameter is set to false.
For example, consider the following segment:
ZMS|20150401|FOL|100
If the Make floating structure parameter is set to false, then the fields and components in the segment are not parsed. The resulting output in the XML document is:
<Z>ZMS|20150401|FOL|100</Z>
If the Make floating structure parameter is set to true, then the fields and components are parsed. The resulting output in the XML document is:
<Z segment-name="ZMS">
<_01_0 name="">20150401</_01_0>
<_02_0 name="">FOL</_02_0>
<_03_0 name="">100</_03_0>
</Z>
Syntax:
com.ibi.agents.XDEDIHL7ValidationReportAgent
Description:
The EDIHL7 Validation Report service is used to generate a validation report after validating an inbound HL7 message or an outbound XML message.
Parameters:
Parameter | Description |
---|---|
Input Message | Select true to add the input message to the generated validation report. |
Output Message | Select true to add the output message to the generated validation report. |
Syntax:
com.ibi.agents.XDEDIHL7AckAgent
Description:
The EDIHL7 Acknowledgement service is used to generate acknowledgement messages using predefined rules. The service chooses ACK / NACK status based on the validity and verification status of the received HL7 message. The generated acknowledgement message can then be sent using the default path of the listener.
Parameters:
Parameter | Description |
---|---|
Sending Application * | The name of the sending application. |
Sending Facility * | The name of the sending facility. |
Control ID * | The Control ID for the message. |
Mode * | Select one of the following acknowledgment modes from the drop-down list:
The default value is Original. |
Acknowledgment * | Specify when an acknowledgement message should be generated by selecting the corresponding value from the drop-down list:
The default value is Always. |
Syntax:
com.ibi.agents.XMLtoEDIHL7TransformAgent
Description:
This service is used in outbound processing to convert the XML-formatted HL7 document to an HL7 formatted document.
Parameters:
Parameter | Description |
---|---|
timestamp | Select true from the drop-down list to write a timestamp to the log file. By default, this parameter is set to false. |
Syntax:
com.ibi.agents.XDMLLPEmitAgent
Description:
This service emits a message using the Minimal Lower Layer Protocol (MLLP). This protocol allows you to wrap an HL7 message with a header and footer to ensure you know where a message starts, where a message stops, and where the next message starts.
Parameters:
Parameter | Description |
---|---|
Host * | The machine name or IP address of the MLLP destination. |
Port * | The designated TCP/IP port that is being used to receive MLLP messages. |
Secure Connection | Select true from the drop-down list if you want use a secure connection through Secure Sockets Layer (SSL). By default, this parameter is set to false. |
SSL Context Provider | If configured, specify the name of an available iWay Security Provider for SSL Context. If the Secure Connection parameter is set to true and the SSL Context Provider field is blank, then the default provider will be used. |
Set TCP No Delay | If set to true, then Nagle's Algorithm on the client socket will be disabled. This will result in faster line turnaround at the expense of an increased number of packets. By default, this parameter is set to false. |
Socket Timeout | The timeout value in seconds. When a non-zero timeout value is specified, a read() function call on the socket will block for only the amount of time specified (in seconds). If the timeout expires, a java.net.SocketTimeoutException is generated. The default timeout is dependent on the operating system being used. |
Persistence | If set to true, then iWay Service Manager (iSM) is instructed to maintain the connection. |
Persistence Timeout value in Minutes | The maximum length of time (in minutes) that a connection can persist with no activity. If this parameter value is zero (0) or left blank, then the default is set to 60 minutes. |
Retry Count | The number of times to try to send the message after an initial failure is encountered. By default, this parameter is set to 0. |
Retry Pause | The amount of time (in milliseconds) to wait between retry attempts. By default, this parameter is set to 1000. |
Start Block Character | The encoding of the Start of Block character in decimal, octal, or hexadecimal format. The default is 0x0B. |
End Block Character | The encoding of the End of Block character in decimal, octal, or hexadecimal format. The default is 0x1C. |
Maximum Message Size | The maximum size of a message that can be sent or received through this emitter. If this parameter value is zero (0) or left blank, then the default is set to 256KB. |
Output Document | Determines whether the output document is a response document, status document, or the original input document. By default, this parameter is set to response. |
iWay Software |