Today’s platform update brings a popular Losant feature to our Edge Compute functionality. This release also exposes some monthly usage statistics for Jupyter notebooks.
Custom Nodes on the Edge
It’s been five years since we first introduced Custom Nodes, bringing a new layer of reusability and customizability to Losant’s Visual Workflow Engine. Before now, Custom Nodes could only be used in workflows executing in Losant’s cloud environment; today’s release brings that same power to Edge Workflows.
Current users of “Application Custom Nodes” (as we’ll refer to Custom Nodes that execute in Application and Experience Workflows) will find that “Edge Custom Nodes” are built, tested, and utilized in much the same way.
Building Edge Custom Nodes
Edge Custom Nodes are built by combining first-class nodes (and other Edge Custom Nodes) into a self-contained, reusable, configurable unit of functionality that can then be utilized in one or more Edge Workflows. They accept inputs from the outer workflow where they are utilized, which can then be referenced in the node. And their behavior can be configured to return results and/or branch a workflow’s path.
In other words, they’re just like Losant’s existing, cloud-based Custom Nodes—but on the edge.
Like Edge Workflows, Edge Custom Nodes must specify a minimum Gateway Edge Agent version. This determines which nodes and operations are available within the node. As Losant introduces new nodes and extends the functionality of existing nodes, users must upgrade their hardware’s GEA version to take advantage of these enhancements. Doing so allows for targeting newer GEA versions in your Edge Custom Nodes.
Testing Edge Custom Nodes
We recently introduced some improvements to Edge Workflow development, allowing the deployment of a workflow’s “develop” version to a single test device. Not only did these changes eliminate a lot of overhead from the Edge Workflow development process; they also paved the way for today’s release, as these updates allow users to also deploy the standalone “develop” version of an Edge Custom Node for testing on their hardware.
Using a Virtual Button to trigger executions of the node directly, developers can provide various combinations of inputs to the node in their test environment without having to create new Edge Custom Node versions and deploy new Edge Workflows with every change. This makes developing and testing Edge Custom Nodes as quick and easy as developing Application Custom Nodes.
Utilizing Edge Custom Nodes
Just like Application Custom Nodes, all of your application’s Edge Custom Nodes appear in the workflow node palette and can be added, connected, and configured like any other workflow node. Once added to an Edge Workflow, users may select which version of the Edge Custom Node to use; configure the values needed to execute the node by referencing the containing workflow’s payload; and connect the node to the rest of the workflow through its inputs and outputs.
Edge Custom Nodes do require creating static versions for production use; in other words, the “develop” version of an Edge Custom Node cannot be used in an Edge Workflow.
Porting Application Custom Nodes to the Edge
While an Application Custom Node cannot be directly used in an Edge Workflow, it may be possible to export the existing node and re-import it as an Edge Custom Node, so long as all the inner nodes and configurations applied to the existing Custom Node are available in Edge Workflows.
We’re excited to finally bring the power of Custom Nodes to our Edge Compute developers, and we can’t wait to see what Losant users do with this extension of our IoT platform’s functionality!
Monthly Notebook Usage Statistics
Over the past couple releases, we have also improved visibility over resource usage within an organization, including a breakdown of that usage per application. Today’s update extends that visibility to include monthly Jupyter notebook minute consumption.
Users who take advantage of Losant’s notebook environment to do deep data analysis and custom report generation are aware that notebook usage is limited to a fixed number of “execution minutes” per month, and that any attempt to execute a notebook when their account is over that limit will lead to request failures. Before today, hitting that limit would come as a surprise to most users as there was no exposure of an organization’s notebook minute consumption within the Losant interface.
Now, we have a full page dedicated to an organization’s monthly notebook usage statistics, showing a breakdown of consumed minutes per day and allowing for month-over-month usage comparisons, which can help identify runaway notebook usage and stem it before exhausting your organization’s limit.
We are not done with these resource usage visibility improvements yet; expect additional changes over the rest of the year to expose payload, notebook, and resource consumption at more granular and descriptive levels.
As always, this release comes with a number of smaller feature improvements, including:
- The Redis Node now accepts a custom CA certificate when authenticating requests over TLS. This enables the use of self-signed SSL certificates when connecting to some Redis instances.
- The Array Node now supports a “Deduplicate” operation, which reduces all items in an array to just the unique values.
- The Times Series and Gauge Query Nodes now support returning data for multiple attributes in a single request. This rounds out some improvements to those nodes we made in our last release, bringing the functionality of these nodes more in line with the Data: Times Series Query and Data: Last Value Query API endpoints.
- We’ve published a new Devices: Get Composite State endpoint, which can be used to retrieve the last reported value of one or more attributes for a collection of devices - similar to the existing Device: Get Composite State endpoint, which can only query one device per request.
- The Switch Node is now available in Embedded Workflows. As our Embedded Edge Agent has been installed in a growing number of low-power devices, the Switch Node has emerged as the most requested addition.
With every new release, we listen to your feedback. By combining your suggestions with our roadmap, we can continue to improve the platform while maintaining its ease of use. Let us know what you think in the Losant Forums.