Back to home

PReS Connect 2019.2 new features summary

By Colin Casey

Introduction

OL Connect 2019.2 is a very special version because it includes some new features that can’t be seen, yet have huge value for partners and customers. To help pursue new markets we have improved our ability to sign PDFs and made it easier to develop connectors to third party systems. We’ve simplified scheduling and made more usability improvements including our ability to print and process print streams. But what excites me most is that this release is more connectable and cloudable because we’ve created a new plug-in architecture and improved Connect’s API. Amongst other things, the new API has made it possible to render emails to disk (new plug-in) and allows the result to be sent using SendGrid and/or MailJet (new plug-ins) for improved email performance. We’ve also created an new M-Files plug-in to extend our ability to deliver documents into this popular cloud based ECM system making three new Connectors to 3rd party systems.

So, the new architecture will speed up our ability to create plug-ins that we can make available independently of any future OL Connect release. Furthermore we will provide an SDK so that our PSO team and partners can develop their own plug-ins, providing the ones we’ve already developed as examples.

PDF Signing

We have overhauled OL Connect’s functionality for digitally signing PDF. This will now properly support signing certificates on secure devices such as USB tokens, and HSM’s. This enables applying digital signatures for use cases where regulations require secure storage of the certificate.

Scheduling settings simplified, improved, and basically replaced

When deploying OL Connect, many users have to adjust the Scheduling preferences in the Connect Server Configuration. This has proved to be a daunting task for many. With version 2019.2, we are changing this. In fact,many users will never again have to bother with these preferences.

The user interface has been greatly simplified: the number of Connect Server settings has gone down from 27 to 13, and the settings that remain have less dependencies. For Connect Designer there is only 1 setting left! The result is much cleaner and more intelligible. We have also added presets to make the most basic use cases a complete no-brainer.

The improvements are more than skin deep: Connect Server will now automatically determine how many engines participate in Content Creation, and also dynamically reassign engines to other tasks if desired. This results in a better utilization of computing power, keeping all engines busy when there is enough work, while large tasks don’t have to block other tasks. For Output Creation, the licensed speed limit is automatically distributed over multiple tasks when they run at the same time, and also adjusted as tasks finish and start. Users control the distribution of the licensed speed by setting a target speed in pages per minute; speed units have disappeared, and are no longer a concern for anyone.

Out of the box, OL Connect will also match its engine setup better with the hardware it is running on, typically giving better performance for a fresh installation.

In summary, dealing with scheduling settings is now a thing of the past (literally, we renamed the preference page to “Parallel Processing”), and only users who have a mixed workload with parallel running tasks need to go beyond choosing a preset.

Email improvements

Several new email related Workflow plugins are created to improve the email sending performance by simplifying the integration with Email Service Providers (ESP). The original Create Email Content renders email messages and sends these over SMTP in a single run. This limits our software to use the slower SMTP protocol, which quickly becomes a bottleneck when larger batches are processed.

The new Render Email Content plugin for Workflow prepares messages in the Connect File Store. This allows ESP specific plugins to pickup the content and send it via their faster Web APIs. Sending email via ESPs brings the advantage of open rate tracking, click through tracking, bounce handling all presented in online dashboards. With Connect 2019.2 we introduce connectors for SendGrid and MailJet which will me made available via http://help.objectiflune.com.

M-Files

We have created connectors to allow uploading files to M-Files from Workflow, and downloading from M-Files to Workflow. These connectors can be used with both on-premise versions of M-Files, as well as with M-Files instances in the cloud. This makes it a lot easier to use M-Files in use cases such as in our Solution Framework :

POD (Proof Of Delivery)

storing the delivery note in M-Files,

AR (Accounts Receivable)

archiving invoices, and retrieving archived delivery notes to combine those with outgoing invoices.

Designer

Import template resources

A common challenge for template designers is to import design elements from existing templates. It can be a time-consuming task to extract resources like stylesheets, snippets and images from one template and add them to another.

The Import Resources… option located in the File menu provides an easy way to append design elements. The option let’s you import typical resources like images, snippets and stylesheets and allows the import of media, master pages, sections and user scripts. A real time-saver.

Dynamic section backgrounds

Let’s assume you have a folder with several postcard designs and a matching data file containing recipient information along with their favorite travel destination. How would you create a personalized document with the respective design in the background? The Dynamic Section Background let’s you create such documents in a breeze.

Set one of the images as the section background, this provides the location for the other images to the wizard. Either add the designs to the Images folder of your template or use them from a folder on disk. Load your data file. Now right mouse click the section in the Resources panel and choose Dynamic Background… The wizard automatically extracts the location of the initial background image and let’s you construct the dynamic path. All you need to do is the specify the data field holding the base name of the images and off you go.

Misc Designer changes

  • Save a copy of your Template or DataMapping configuration. This creates an exact copy of your config somewhere on your computer (a sort of manual backup). In Connect Designer you’ll continue working on the current config. This option also allows you to save the copy in an older version of OL Connect (e.g. down saving).
  • Automatically generate a Plain Text content for email messages. HTML-only emails could be a red flag for spam filters, with a plain text alternative this is less likely to happen.
  • Dragging and dropping a JSON or HTML snippet in the script editor automatically inserts the accompanying script commands (loadhtml() or loadjson()) and sets the path the dropped resource.
  • It is now possible to change the content of a master page or section in Post Pagination script. This allows for conditional modifications before the merge process starts.
  • Various improvements are made to the Script Debugger: mark occurrences, drill into query results, incremental find and more.
  • Saving a SASS partial file now auto compiles root level .scss files.

Workflow

Improved Plug-in Architecture

The Custom Plugin SDK has been completely re-engineered to allow all R&D teams – and, in time, partners and customers – to create responsive, efficient and powerful plugins for Workflow. The most evident change is in the HTML rendering engine, which is used to display the GUI for the plugins at configuration time. The new rendering engine is fully HTML5/CSS3-compliant and supports ECMASCRIPT 2017 JavaScript. This allows plugin designers to use a combination of CSS and JS code to provide dynamic interactive validation of the parameters provided by the end users when they configure the plugin.

The second critical part of custom plugins is the Scripting Engine used at run time to actually perform operations. Our goal was to provide a fully ECMASCRIPT 2017-compliant JavaScript engine, to take advantage of the massive improvements implemented in JS, particularly over the last few years. Unfortunately, because of time constraints, we have not been able to implement this new JS engine for the 2019.2 release (note that the JS engine used at runtime is distinct from the one used at design time), so the current JScript engine must still be used. However, we managed to significantly upgrade the version of JScript. Please read the Ugraded JScript capabilities section for more information on that.

Upgraded JScript Capabilities

Workflow scripts are based on Windows’ Active Scripting engine, which supports multiple scripting languages. However, Microsoft’s last update of its embeddable Jscript engine dates back to 2009, making it severely outdated when compared to the large number of improvements that have been implemented in the language over the same period. The R&D team is working on implementing a completely different – and fully up to date -engine for 2020.1, but for 2019.2 we still managed to significantly improve Jscript’s capabilities by including alibrary of polyfilled methods and functions that, overall, boost Jscript’s abilities well beyond what it is natively capable of, almost matching those of current, up to date engines.

Basic methods like String.trim(), or btoa()/atob() , or more advanced methods like Array.forEach() can now be used natively inside any script. In fact, all methods and objects that are part of the ECMASCRIPT 2017 specification can now be used inside a Workflow scripting task. Mind you, scripts are not yet fully ECMASCRIPT 2017-compliant: several syntactical elements (i.e. other than methods and objects) are still unavailable because they cannot be polyfilled (for instance: let, const, await, async or arrow functions, among others). However, given that the vast majority of JavaScript samples found on the web do not necessarily make use of these newer syntactical elements yet, it’s much more likely that copy/pasting these samples into a scripting task will work with little to no changes required, making development easier, faster and much less frustrating.

Updated PDF libraries

Workflow’s PDF libraries have been updated to the latest available version, enabling the processing of larger PDF files while significantly improving overall stability, memory management and performance when merging documents or importing pages. The update fixes a number of issues reported by customers over the last year, notably from Asia.

Named parameters in Job Presets

Version 2019.2 introduces a way for Job Presets to specify which specific parameters they need from Workflow (or from any other source). Accordingly, the Create Job plugin in Workflow can now display a list of expected parameters that the user can fill with dynamic values. This makes it much easier to pass specific parameters from Workflow to the Connect Server without having to stuff all kinds of information in generic JobInfos.

In future versions, we are planning to make this same method available for data mapping, content creation and output creation.

PDF to bitmap

A new task converts PDF pages to bitmaps, allowing users to easily generate thumbnails for their documents. The plugin allows the end users to specify page ranges, output format and DPI resolution of the resulting images. The plugin then uses the Updated PDF libraries (see above) to generate the images. The feature allows users to generate images that can, for instance, be used to provide document previews inside web pages delivered by Workflow and Connect.

JSON output for data mapping

A new JSON output option has been added to the Execute data mapping task. The JSON format created by the task is exactly the same as that generated by the Retrieve Items task, allowing the users to streamline their Workflow processes.

CTRL-A now available

This seemingly minor feature may just have been one of the most requested features ever, and it is finally here! The CTRL-A (i.e. Select All) keyboard shortcut has been implemented in all edit/memo controls in Workflow, making it easier to select the entire contents of a field.

Collapse/Expand branches

A new option allows users to expand/collapse branches and conditions in Workflow processes. This makes navigating large processes much faster and easier, allowing end-users to focus on the parts of the process they are actually working on without having to deal with screen clutter.

File/Folder Exists condition

A new condition allows a process to branch out if a specific file or folder exists. The file/folder name can be dynamic, allowing a process, for instance, to check for the presence of a file or folder created by another process.

DataMapper

PDF data mapping without extraction

In many cases, print-ready files (e.g. PDF, PS, PCL, AFP) need to be processed by the DataMapper but without the need for extracting any of their contents. For instance, all pertinent information may already be stored in the file’s metadata. Still, until Version 2019.2, the DataMapper was inspecting each and every page of the PDF file in case data extraction was required, making the processing much slower than expected. With version 2019.2, the DataMapper first inspects its own process and if no extraction steps (other than for metadata) are found, it zips through the file at a speed that is orders of magnitude faster than with previous versions.

Pre-sorting CSV-type data

Database mode already allowed users to specify a sort order for the data before running the data mapping process. The same feature is now available with CSV-type data, thereby insuring that the data can be processed in a specific order without having to create a convoluted Workflow process before calling the DataMapper. Combined with the new ability to stop processing a file at any point in the DataMapper (see next point, below),this allows end users to quickly data map groups of related records without having to go through the entre file, making the process significantly faster.

Stop Data Mapping

Previous versions allowed the DataMapper to stop processing a record and move on to the next one when a specific condition was met. A new feature in 2019.2 allows the DataMapper to skip the rest of the data stream entirely. One could, for instance, skip sorted records until a certain marker is found, then process all records containing that marker and finally, exit from the process when the marker is no longer found. This makes data mapping partial files much more efficient.

Improved data model performance and features

Data models containing a large number of fields could often be sluggish on screen. With 2019.2, significant improvements allow it to display much faster than in previous versions. In addition, it is now possible to rename fields directly from the data model pane, both in the DataMapper and in the Designer.

New REST API endpoints

Prerender Email Content

Omitting the host parameter for the existing email content creation endpoints stores the email messages along with possible attachments in the OL Connect File Store. This includes both the HTML and Plain Text content. The returned JSON data contains email information like To, From, Subject and the managed file IDs. The latter can be used in separate end points to download the resources from the File Store.

/rest/serverengine/workflow/contentcreation/email/{templateId}

Create rasterized images for Print, Email and Web contexts

A new end point is introduced to fetch a rasterized image of a print, email and web contexts. These images can be used in integrations with custom solutions or third party applications. The parameters of this call define options like the image format (JPG, PNG), viewport width and page range.

rest/serverengine/workflow/contentcreation/imagepreview/{templateId}

Leave a Reply

Your email address will not be published. Required fields are marked *