New Product Features and Improvements – Feb 2020
Core
Added Listener Inactivity Monitor
A configurable inactivity monitor has been added to listeners. This monitor will indicate an exception when expected transactions have not been detected by a listener within customizable configuration frequency thresholds. With the Inactivity Monitor, users gain more insight into their transactions by being able to get an alert.
Expanded Module Support for XPath 2.0/3.0
General XPath 2.0/3.0 support was introduced with release 18R2; with this release, we have expanded support in both the XPath Routing Module and the XPath Expression Tester.
Expanded Internal Object Pooling
Object pooling is an internal engine optimization technique that allows for reuse of processing-heavy objects that would otherwise incur repeated creation and initialization penalties. Object pooling has been utilized in more parts of the core software, resulting in better performance and reduced memory pressure.
Updated ACORD TXLife and P&C Bundled Assets
ACORD TXLife assets have been updated to 2.42.00 and P&C assets to 2.06.00
Updated 3rd-Party Libraries
Several 3rd-party dependencies have been updated to incorporate upstream bug fixes and improve functionality.
HL7
Expanded Support for Additional HL7 Versions
In order to continue offering the most complete and robust HL7 support available of any interface engine, we have added additional support for versions 2.7.1, 2.8, 2.8.1, 2.8.2. The PilotFish HL7 Interface Engine can easily consume all standards-compliant as well as non-standards-compliant HL7 messages for all released versions.
Added New HL7 Listener Engine
By making our new selectable HL7 Listener Engine more aligned with how our core engine operates, it better supports customized HL7 ACKs (if desired). This in-house developed Listener Engine includes new flexibilities and added business-level features.
Note: Our HAPI-based HL7 Listener engine is not affected by this new Listener engine option.
Enhanced HL7 Validation
Validating HL7 messages outside of the HL7 Listener/Transport allows for delayed validations and customized routing flows – in order to check for and meet HL7 exchange partner message specifics.
EDI
Improved Support for X12 EDI
EDI processing is a central part of PilotFish software with notably robust support for HIPAA EDI. In a commitment to continuing to offer the best and most comprehensive built-in X12 EDI support, we have expanded X12 schema and table data support for non-HIPAA EDI such as Supply Chain transactions.
Added X12 5010 Evaluation Table Data Directly into Trial Installers
For ease of use and rapid evaluation of PilotFish’s integration engine solution, X12 EDI evaluation table data is now integrated directly with trial versions of our software into the installers.
Added Support for 4010 EDI Table Data
In line with our broader EDI support efforts and for customers still using the 4010 message format, we have also added support for legacy 4010 X12 EDI table data and schemas.
Improved Support for Handling Non-Standard EDI Messages
For EDI messages that do not conform to the X12 standard, we have enhanced our EDI modules to efficiently handle and identify these imperfections that would otherwise fail when parsed in the EDI module.
Cloud
Additional Cloud Support
As the wave of systems migration to the cloud continues, we have introduced and improved several cloud-related modules for Amazon Web Services (AWS), Microsoft Azure Cloud Computing (Azure), Google Cloud Engine (GCE) and more. In particular, AWS integration has seen increased focus as support was added for Simple Queue Service (SQS), Simple Notification Service (SNS), Security Token Service (STS), as well an additional S3 related processor to complement the existing AWS S3 transport.
Database
New SQLXML Operation: BatchExecute
We’ve enhanced our database interoperability and functionality in several key areas. One of which is a new BatchExecute SQLXML declaration which allows for a more concise definition of parameterized SQL execute statements.
Support for PostgreSQL 11+ Stored Procedures
True stored procedures were introduced in Postgresql 11 which allow for transaction management inside user-defined procedures. With this feature came a new CALL syntax, which has now been integrated into our software.
Messaging
Added Support for RabbitMQ Mirrored Queues
RabbitMQ’s high-availability is implemented through mirrored queues which require a particular type of connection set up for client software. We’ve enhanced our RabbitMQ modules to include support for connecting to multiple nodes that participate in a mirrored queue architecture.
Added JMS Ack Support
JMS clients have typically relied on automatic message acknowledgments in the past, however, we’ve seen interest from customers wanting the ability to delay acknowledgments until further in their data flows. In response, we have added a Synchronous Ack option to the JMS Listener which allows interface developers to utilize the standard synchronous response pattern to delay message acknowledgments.
Web
Improved API XL
Initially introduced in 17R2, each major release of API XL has seen new features and functionality layered onto its robust fundamentals. In the 20R1 release, we have improved HTTP request performance and support for complex iterations. Users may now select specific SSL/TLS protocol versions. We have added the ability to use operating system certificate stores by offering easier administration to enterprise customers that operate their own certificate authorities.
Usability
Added Global Attributes
The eiPlatform’s core approach to processing is the execution of independent transactions moving concurrently through the system. Any information sharing between transactions has historically required external resources (database, Redis, etc.). In this version, we’ve added a new internal Global Attributes facility to provide cross-transaction object storage that should simplify and accelerate several common interface use-cases.
Better Sorting in File Management Window
The File Management Window in the eiConsole has been changed to natural sorting order which will order interfaces and routes in a more human-intuitive way.
Added Ability to Set Multiple Attribute Values at One Time
Transaction Attribute Population is one of the most utilized processors in the software – however, in the past, it was limited to setting a single attribute per processor instance. This limitation often resulted in multiple Transaction Attribute Population processors needing to be defined in a row in order to set multiple attributes. To address this in 20R1, we’ve added the ability to define multiple attributes (both transaction and Global) in a single processor instance which can significantly cut down on interface configuration bloat.
Added Ability to Reorder Items in Table Configurations
Several module configurations use table controls to set multiple values at once. Depending on the module, the order of these values may be significant (i.e., Database Polling Listener query parameters). To better manage these settings, we’ve added up/down buttons to the table control to allow for simple re-ordering.
Relaxed Global Unique Listener Name Restriction
Previously, listener names needed to be unique across the entire working directory. In 20R1 we’ve relaxed this restriction so that only listener names within a route need to be unique. As a result, listener management REST calls (start/stop/restart) that previously only took a single listener parameter now also have a route URI parameter to qualify which listener. Please refer to the eip-rest/application.html for details.
Added JVM Memory Slider to eiPlatform Installer
The new JVM Memory Slider makes setting the memory allocated to the eiPlatform a trivial step.
Processors
API XL – Execute API XL as a processor
HL7 Validation – Validate HL7 messages outside of HL7 Listener/Transport Transaction Data Population – Assign explicit transaction contents at any processor entry point
SQLXML – Execute SQLXML as a processor
BOM Removal – Remove byte order mark from file streams
EDI Validation – Perform a sanity check of EDI messages that would otherwise fail in the EDI module parsing
AWS S3 Operation – Perform AWS S3 operations midstream (i.e. Copy/Move/Delete)
FTP Operation – Perform (S)FTP operations midstream (i.e. Move/Delete/Upload/List Files)