This topic lists information about previous releases of Verizon Connect® Flows™ and what has been improved and/or fixed in each version.
The current release is 4.0. Information regarding this release can be found below.
When a Flows update is released, any new flows you create use the latest version, but none of your existing flows are automatically upgraded. For information about what to consider before upgrading and how it works, see Upgrading flows.
4.0
Breaking Change
•
Removed the FTP folder bind.
New Features
•
Added a new Mongo node.
•
Added the ability to use the SFTP server instead of relying on the local file system.
Miscellaneous Improvements
•
Updated ftp-watcher to get data from the SFTP server instead of the locally mounted "ftp" folder.
•
Deprecated the current Mongo node.
•
Improved debug logging for all FTP nodes.
Bug Fixes
•
Fixed a bug that caused the FTP upload node to lock up.
•
Fixed a bug that caused the CSV node to fail converting data to a CSV.
3.11
Miscellaneous Improvements
•
Added a timestamp to node-red-std* logs.
Bug Fixes
•
Corrected an issue that meant the Realtime feed node would not authenticate.
•
Fixed the retry logic in the TDE node to account for ETIMEDOUT and ESOCKETTIMEDOUT.
3.10
Bug Fixes
•
Fixed an issue that caused the API config node to log and return an "HTTP 500" error when testing credentials failed.
•
Fixed a bug within the SMTP email out node that meant it sometimes failed to read environment variables for credentials.
3.9
Miscellaneous Improvements
•
Added a suppress error option to the FTP node.
•
Made usability improvements to the Email node.
Bug Fixes
•
Fixed a bug that caused /admin/log/ to return an Internal Server Error.
•
Corrected the CPU metrics that were inaccurate in latest Flows image.
•
Updated the SMTP server settings for the verizonconnect.com domain.
3.8
Miscellaneous Improvements
•
Updated node red in wrapper.
Bug Fixes
•
Fixed a bug that meant the archiver node would not support absolute paths / filenames of files that were stored several subdirectories deep.
•
Fixed an issue where the TDE node would throw an error as soon as an authentication error was returned from TDE.
3.7
New Features
•
Added functionality that allows users to create a flow from a template.
Bug Fixes
•
Fixed an issue that caused TDE templates with large comments to take several minutes to decompress.
3.6
Bug Fixes
•
Fixed an issue where the event cache database used by the wrapper for de-duping events could become corrupted.
3.5
New Features
•
Added a threshold per customer to the TDE template node.
•
Added the option to disable logs being sent to Loggly to avoid duplicate logs in Loggly.
Miscellaneous Improvements
•
Added the ability for Flows developers to configure a flow differently in development compared to production mode.
•
Improved the functionality of the Mongo node so that it documents the requirement for a database, and returns an explicit error if there is no database set up.
Bug Fixes
•
Fixed an issue that meant Crash monitor would not run in production mode.
•
Corrected an API config node issue so that it now uses a fetcher to look up a subscription in the AppSubscription table.
•
Fixed an issue that meant your position on the screen would not be retained when switching between tabs in the Fullscreen Editor.
•
Corrected a bug that caused the TDE node to get stuck at the executing template stage, even though the request had finished in TDE.
•
Corrected issues with concurrency in the FTP and SFTP nodes.
•
Fixed a bug that caused the FTP upload node to get stuck during uploads.
•
Fixed the Mongo node to allow the use of the _id field.
•
Fixed a bug that caused the TDE node to incorrectly return objects when the template specified certain parameters.
•
Fixed an issue where the TDE node would not retry after a "429 too many requests" error.
•
Corrected a bug that caused Databus watcher to return msg.payload that could not be safely cloned.
•
Fixed a Lock node bug that meant messages would sometimes be let through, even though the node was locked.
3.3
New Features
•
Added Telogis authentication options to the File-upload node so the uploading user can be found.
Miscellaneous Improvements
•
Made improvements so that the API config node now supports passing in app key credentials in the message (similar to how username and password supports it).
Bug Fixes
•
Fixed a bug that caused the File-upload node to work incorrectly when embedded in platform.
•
Corrected an issue within the TDE node, so that it no longer requires an instance.
•
Fixed an issue that meant MongoClient could have an undefined connection pool when attempting to get a collection.
3.0
Breaking Change
•
Introduced the ability for Flows to use SQS and SNS queues for flow events.
New Features
•
Added functionality that allows the File-in node to read files in alternate encodings.
•
Improved the options for nodes so that they can now be configured to not send errors to the global catch.
•
Modified the API config node to support TDE application subscriptions.
Miscellaneous Improvements
•
Added retry options to FTP nodes.
•
Mongo node now uses options set on message object for Find operations.
Bug Fixes
•
Fixed a bug that caused the CSV parse node to hang for large input files.
•
Fixed a bug where the TDE node would not retry on "Template ID not found" error.
•
Corrected a bug that caused the TDE Template builder to put “Commit=false” in templates it would execute, instead of in URL query parameters.
•
Fixed an issue where the FlowsLifetime setup meant that keepAlive functions would sometimes not be defined.
•
Fixed a bug that caused dispatching events in node-red to use the old credentials.authToken to get the API config token.
•
Corrected an issue that caused an error to be thrown when giving an _id while performing a Mongo update.
•
Fixed an issue that meant API config was not backwards compatible with the subscription.
•
Fixed a bug where authentication token passed in on msg.credentials would not work with the latest API config changes.
2.9
Bug Fixes
•
Fixed a bug where the FTP node would ignore advancedOptions set on msg.credentials.
•
Fixed an issue where the http-in node would not delete cookies when the session had expired if the node had Telogis authentication.
•
Corrected an issue that caused TDE to fail silently with unhandled rejection on unknown TDE errors.
•
Fixed a bug that caused API config node changes to break the old schedule6 node and RouteCloud API usages.
•
Corrected a bug that made the FTP archiver node not backward compatible with old configurations.
•
Corrected an issue where Telogis authentication on the http-in node would intermittently supply customer and user names.
•
Fixed retry logic in the TDE node to handle more cases.
•
Fixed an issue that would show invalid retry limits on the TDE node.
2.8
New Features
•
Added the FTP download node.
•
Made the FTP download node capable of returning an array of files, including status information.
•
Made it possible to specify the cron string directly in the Inject node.
•
Introduced the TDE node concurrency limit.
Miscellaneous Improvements
•
Exposed the advanced options for FTP and SFTP nodes.
•
Added support for custom URLs passed in on the message object for the TDE node.
•
Introduced the ability to use dynamic msg credentials for FTP upload and download nodes.
•
Rewrote the Indy node.
•
Rewrote the API config node.
•
Rewrote the Template node.
•
Rewrote the TDE template node.
•
Enabled the use of defaultZone instead of making listzone calls.
Bug Fixes
•
Fixed an issue where the Mongo node would show invalid configuration when first deployed.
•
Corrected an issue where the EventDispatcher would attempt to use the non-existent credentials.authToken.
•
Fixed a bug where the http-in node assumed it was running in the USA.
•
Fixed an issue where the new API config node would assume credentials.dataCentre was always set.
2.7
New Features
•
Added Databus node.
Miscellaneous Improvements
•
Made Databus node UI improvements.
•
Add the ability to filter in “Find all” for the Mongo node.
•
Updated Mongo node to use streaming.
•
Added Update All and Delete All to the Mongo node.
•
Updated the Call and Return nodes to handle expected values and errors more gracefully.
•
Made it possible to remove the row limit from the Indy node.
Bug Fixes
•
Corrected a bug where the Route API node would fail to retrieve the task status.
•
Fixed a concurrency issue with the TDE node.
•
Fixed a bug that caused the TDE template to poll too frequently and default to zero between polling attempts.
•
Fixed an issue with the node red wrapper timezone setting.
•
Fixed the Revision editor to show an accurate difference between the two files.
2.6
Miscellaneous Improvements
•
Stopped Indy node old session credentials causing re-authentication twice.
•
Added logging on query time/size to the Mongo node.
•
Removed the ability for users to modify Production Flows while viewing them.
•
Updated TDE node configuration default to Preview instead of Production.
Bug Fixes
•
Fixed a bug where the TDE node would fail to authenticate for EU customers.
•
Fixed a bug that caused Indy backup-cache to fallback incorrectly.
•
Corrected a bug that caused the Upload node to hang.
•
Fixed a Mongo query bug that would sometimes cause an infinite loop.
•
Corrected an issue where some flows would fail to deduplicate multiple events that were received with the same event ID.
2.5
New features and enhancements in this version of Flows include:
NodeJS Version Updated
Updated the Flows node red wrapper to Node version 6.0.0. This update delivers significant improvements to performance, reliability and security.
Miscellaneous Improvements
•
Implemented a concurrency header to prevent the rejection of requests, and enabled retry logic.
•
Improved the Mongo node by adding support for streaming and promises, and by adding an msg output to match the behavior of other nodes (such as TDE).
•
Improved the API node by adding useful error messages if no credentials have been supplied.
•
Updated the API node to automatically clear old configuration data when using msg credentials, and to write authentication tokens to local disk. Previously, the token was stored only in memory.
•
Improved the quality of various error messages by increasing translation coverage.
Bug Fixes
•
Fixed a fault that could stop nodes re-authenticating when initially supplied an expired or invalid authentication token.
•
Corrected a bug that prevented adequate handling of socket timeouts, and that could result in the Flows system freezing.
•
Fixed a bug that prevented FTP input nodes validating regular expressions when manually typed in.
•
Fixed a bug that caused the TDE template node to display 404 errors (template not found) rather than appropriate 500 errors.
•
Corrected poor labeling of text on the API config node.
•
Fixed a fault that could stop the Route API node from correctly displaying build request errors.
2.4
New features and enhancements in this version of Flows include:
Explicit Interface Definitions
Added explicit interface definitions to Call and Return nodes, to ensure that returned arguments use the correct data type. These definitions are configured on the edit panel by selecting the new 'Define interface?' checkbox, and then specifying the sub-property the definition applies to (for example payload.dog to validate all instances of 'dog' within the msg.payload), the message data type, and whether it is mandatory or optional.
TDE Queue Timeouts
Updated the TDE REST and TDE template nodes to drop queued job requests after a user-specified wait period is exceeded. This value is specified in the node config, using the new 'Queue timeout (ms)' field.
Upload Directory Creation
Updated the upload node to automatically create a new, empty, directory at the file path location if one does not exist already.
Miscellaneous Improvements
•
Improved the Call node, allowing it to function globally, without the need to also add a function node to the editor panel.
•
Updated the http-in node to allow end points that start with '/admin/...'. Previously, using this endpoint name would prevent the flow from functioning.
•
Added logging of unexpected exits, and updated the grafana dashboard to display these new crash metrics.
Bug Fixes
•
Corrected a security problem that could allow customers who had not been re-authenticated to continue using cached sessions.
•
Fixed an error that could cause the Winston logging library to throw an exception when reading an empty file.
•
Corrected a bug that could result in the e-mail node repeatedly sending the same email to the same recipient.
•
Fixed a labeling fault in the debug node.
•
Fixed a bug that caused the http request node to fail when passed an unsupported method (for example get with a head method using msg.url).
•
Corrected a fault in the indy node when a limit (max rows returned) was specified as part of the SQL query that could override any system-specified limit.
•
Fixed a fault that stopped [VALID].includes methods from being accepted as valid functions.
•
Fixed a bug that could clear valid node credentials when a flow was updated.
•
Corrected a fault in the ftp archiver node that stopped the 'Name' value being used when the node was shown on the flow editor screen.
•
Fixed a problem that could stop the api node clearing the authentication token when the user was changed
2.3
New features and enhancements in this version of Flows include:
Updated Node-Red Version
The node-red version used by Flows has been updated from 0.15.3 to 0.16.2. See here for more information about the changes found in this update.
FTP Custom Filtering
Custom filtering has been added to the FTP download node. This feature is useful when exact file name matches and regular expressions do not provide the required level of granularity. Use the new filter function to specify which files to download from a pool of available files on a server; for example only a specified number of the oldest or newest files, or only files of a specified type. See the FTP node's info panel for function formatting and property details.
CORS Requests Added
Support for Cross Origin HTTP Requests (CORS) has been added to Flows to simplify integration of new flows that expose a front end UI within the Verizon Connect Platform (that is, for requests originating from *.platform.telogis.com).
Wormhole Node Deprecated
The wormhole node has been deprecated in this release of Flows. Developers should replace these with the existing link-in and link-out nodes, which provide identical functionality.
Geocode Method Added to Spatial Node
Added a geocode method to the Spatial node. The method allows you to geocode an address for a given query string. The method returns locations matching the query, including latitude, longitude, and other relevant properties.
Miscellaneous Improvements
•
Added support for streaming to the Indy node, reducing memory load. These are streamed in batches of 100 results, and include support for keep alive functionality.
•
Added time stamps to logs.
•
Added a new 'save' keyboard shortcut to the fullscreen editor (Ctrl+S).
•
Added the ability to see which function nodes a return call is being used by. This is now displayed in the node's edit dialog.
•
Added function rejection functionality to the return call block.
•
Added a timeout option to the HTTP request node; set from the node dialog.
•
Updated the fullscreen editor's node list to display nodes in alphabetical order.
•
Updated the formatting of Indy node errors. Previously these were shown as HTML, now only the title is displayed.
Bug Fixes
•
Fixed a fault that could cause a flow to restart when streaming.
•
Corrected a misleading loggly warning message following the normalization of priorities to match syslog (inverting the numerical order of priorities).
•
Moved log files to a more secure location to ensure they were not lost in the event of a Flows system failure.
•
Updated logging to note when a TDE node reaches its concurrency limit, and the length of the resulting wait time.
•
Updated server behavior to automatically return an HTTP status of 302 Found when a long running task is still underway.
•
Added short lived memory caches for session validation to the HTTP node.
•
Fixed a fault that stopped the upload and download nodes from disconnecting after their queues has been processed.
•
Corrected an authentication problem when using several nodes on a single pane that resulted in only one of the endpoints being enabled for basic authentication.
•
Fixed a fault that could cause a node to remain in query status mode if the target database was unavailable.
•
Corrected a number of errors and faults generated when attempting to use the upload node over SFTP.
•
Fixed a fault that could cause SFTP connections to freeze indefinitely.
•
Fixed a problem that stopped the Insert metric working correctly on the Function node
2.2
New features and enhancements in this version of Flows include:
Embedding Flows in the Platform
Flows that serve web pages can now be embedded within the Verizon Connect platform using the Flows management console page, and displayed to platform users as standard tabbed pages with corresponding menu items. This system includes seamless session validation using the Verizon Connect Auth server. The new management page is accessed from the Tasks section of the platform's main menu, and requires the customer option HasFlows.
Spatial Node Added
The new Spatial node is now supported. This node allows flows users access to Verizon Connect GeoBase Client functionality. Currently, the spatial node supports a single method, getCorrectedLocation. This method allows an address and map coordinates for a location to be passed in; it then adjusts the supplied location so it is on the correct side of the street and the appropriate distance from the road.
Session Expiration Notifications
Users without authentication due the expiration of their session will now be presented with a notification of this fact, and informed that they must log in if they wish to continue. This notification includes a link to a login interface.
Concurrency Limits Added to S/FTP Download Nodes
Users will now be able to limit the maximum number of parallel downloads permitted when using the S/FTP node. This concurrent download limit is configured via the Node Editor, and defaults to unlimited when no numerical value is specified.
TDE REST Node Improvements
The message counting behavior of long-running nodes has been updated to correct a potential failure point. Previously, multiple messages received in parallel using the TDE REST node would result in an equal number of node.keepAlive HTTP requests, with each new request overriding the previous request if it was still being processed. This could result in premature closure of the socket. This will no longer occur.
2.0
Verizon Connect® Flows™ 2.0 contains several exciting new features and enhancements, and it greatly improves system stability and performance.
Development Flows vs. Production Flows
Flows are now separated into two categories in the Developer Console, Development flows and Production flows:
•
The Development flows section contains any flows currently under development. Each developer can have up to three active (running) Development flows at a time. Only Development flows can be edited using the Flow Editor. Note that these flows may be stopped during an upgrade, and the flow may require a manual restart.
•
The Production flows section contains flows that are live and actively serving end users or clients. These flows cannot be edited using the Flow Editor. If a Production flow is stopped for some reason, then it is automatically restarted.
Before editing a Production flow, it must be changed back to a Development flow. You can move flows from one section to the other with the Change environment option.
Flow Lifetime
Flows no longer run all the time. They now only run when needed, so that each flow has access to more memory and more resources. For more information about a flow's lifetime and how to keep it alive, see Keeping flows alive.
Flow Naming and Endpoints
Each flow is now given a unique ID that is used in the flow’s endpoint URL. For example: https://9768c6ae-bc2d-4cb8-8c28-a4e1fbdbb72b.flows.telogis.com/admin/.
You can customize the endpoint name if needed. For example, if your flow serves webpages that users may visit, consider renaming the endpoint to something with more meaning.
Developer Accounts
Flow Administrators can now create Developer accounts from the Developer Console. For more information, see Managing user accounts.
Flow Sharing
Flows can now be shared across a company account. By default, when a developer creates a new flow, it’s private - only that developer can see it. To change the privacy level of a flow, select the Edit sharing option from the flow’s Admin menu in the Developer Console. When sharing is enabled, any developers in that account can access and edit the flow. Shared flows are marked with a share icon followed by the owner’s name. Only the owner can change a flow’s sharing permissions or delete the flow.
Secure FTP
The way in which FTP users are managed has changed in this release. Developers can now create Secure FTP (SFTP) users. Once created, SFTP users can be assigned to a flow. When an SFTP user is assigned, any file uploads from that user’s credentials are watched by any ftp input nodes in the flow.
Note that while multiple SFTP users can be assigned to a single flow, each SFTP user can only be assigned to one flow at a time.
Base settings are defined through a settings editor node that can be added to a flow. The settings configured from this node define the default values to use for the flow. Out-of-the-box, these include logging and timezone settings, but you can add additional settings as needed that can be used as variables throughout the flow.
•
Runtime settings are editable from the Developer Console: select Edit settings from the flow's Admin menu. These settings override any settings defined in the flow’s settings editor node. Editing runtime settings can be useful, for example, if you have multiple instances of the same flow and you want to preserve the base settings but alter the values for one instance of the flow.
Flow Metrics
Robust metrics are now available for each flow. In the Developer Console, at a quick glance you can view the flow status, the git status, how many times the flow has been run, the number of errors encountered, and other relevant information.
In addition, each flow now has an Influx database and access to a default set of metrics in Grafana. To view these metrics, select View metrics from the flow’s Admin menu. Developers can add additional metrics to this page using either the custom metric node or by adding a metric({measurement: string, tags: any, fields: any}) method to the function node.
Flow Revision Control
By default, creating a new flow now automatically creates a private GitLab repository for the flow. Developers can manage the repository directly within Flows using an integrated Revision Editor that is available in the Flow Editor, or they can use their Flows credentials to access the repository directly through GitLab. For more information, see Version controlling flows using git.
Flow Debugger
You can now debug flows as you work on them. To begin debugging, click the ≡Menu button at the top right of the Flow Editor, and select Start debug-mode. After the top bar of the Editor turns red, which indicates that debug-mode is enabled, open the ≡ Menu again and select Open debugger.
From the Debug window that opens, you can insert breakpoints and step through the code.
TDE Template Builder
The tde template node now includes an option to edit templates using a full screen TDE Template Builder, so that it is easier to edit and test templates as they are developed.
Indy SQL Builder
The indy node, used to query data from the Verizon Connect Analytics server, now includes an option to edit SQL queries using a full screen SQL Builder, from which you can test SQL statements as you work.
Fullscreen Editor
A fullscreen editor is now available that makes it easier to edit and validate code while you work. By default, you can use the fullscreen editor to edit content in the tde template, function, template, indy, and static-file nodes. However, you can also extend the editor, so that you can edit content from other nodes if needed.
To open the editor, click the ≡Menu button at the top right of the screen, and select Open fullscreen editor.
The Flow Editor node palette has been reorganized to better categorize the nodes that are available. If you have trouble finding a node, use the search bar to filter the list.