New updates and improvements to Robomotion

All Announcements

Robomotion v23.2.0 is out! 🚀

We are excited to announce the release of our latest version, which includes several improvements and updates that will enhance the multi-branch flow development experience.


We are now very close to reaching general availability (GA) for Bot Console and Robomotion Assistant. We will soon be sharing documentation and usage videos to help you get started.


We believe that these products will significantly improve the way users interact with the robots. So stay tuned for more updates. ✌️


and here is the Changelog for this release:


⚡️ [Fixed] Debug node was only able to display "String" typed variables, now you can select all the available variables.


Screenshot from 2023-02-14 22-44-50


⚡️ [Fixed] Function node's Local Variable type selection.


Screenshot from 2023-02-14 22-42-45


⚡️ [Fixed] After the Browser nodes' Inspect action with the browser extension, the node property was not being updated with the returned XPath but only after clicking to another node and then clicking back to the inspected node.


⚡️ [Added] global.lock() / unlock(), flow.lock() / unlock(), local.lock() / unlock() methods to the Function node. It was not possible to keep the variable updates without race conditions before these methods in a multi-branched flow. You need to get the variable, update the value, and set the variable back. But between these steps, any other Function may be doing the same thing which will result in race conditions.




By using lock() and unlock() regions, you will make sure there will be no race conditions between multi-branch executions.


⚡️ [Added] The "Wait Group" package to the default robot packages. Wait Group allows synchronizing the stop logic of the multiple branches. Before the "Wait Group" package, you need to somehow track all the branches and understand when all finishes, then you could Stop your flow. This would require managing variables, and constantly checking the variables to understand if all branches finished their tasks. Now with the "WG Create" node, you create a Wait Group, by using the "WG Add" node you define how many operations are to be completed, by using the "WG Done" node you signal that one operation has ended. The "WG Wait" node only continues if all the operations are completed.


Screenshot from 2023-02-14 23-05-26


⚡️ [Added] "Fork Branch" node under the default Flow package. Before this node, there was a pattern for the "For Each" node to create multiple branches, which was cumbersome and not easy to manage and understand. The "Fork Branch" node uses the new "Wait Group" building blocks internally. There are 2 output ports of this node. The top port will be executed n times for each forked branch, and when all branches end, the "Fork Branch" node continues from the bottom port. You can use the "WG Done" node to signal the completion of a branch.


Screenshot from 2023-02-14 23-09-06


⚡️ [Improved] Bot Console UI which is not publicly available yet, but is used in our private projects. Bot Console is soon to be generally available.


⚡️ [Added] Robomotion Assistant package to create assistant flows with ease. Here is a quick preview of the Assistant: