Robin, an open source (soon) RPA language

Discuss Robotics Process Automation. RPA is a rapidly growing field with 6 figure incomes and an extreme workforce shortage. This sub forum will be used to discuss aspects of RPA as it relates to both scripting languages and RPA software such as UIPath or Automation Anywhere
Post Reply
burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Robin, an open source (soon) RPA language

Post by burque505 » 24 Oct 2019, 15:32

Try Robin here. Helpful forum administrators, but the documentation is still a work-in-progress and the source code and SDK are not yet up.
So far, it at least works great for me in scraping tables straight to Excel (I've barely scratched the surface, downloaded it 3 days ago). Both Web automation and UI automation require creating an 'AppMask', which grabs 'screens'. For each Screen, you have to create a Control for each control you want (or might want) to use. It sounds tedious, but once you've created an AppMask for an application or a site it's easy to reuse.

The language is apparently the brainchild of Softomotive, the creators of WinAutomation, which has a small but respectable share of the RPA pie. The next generation of WinAutomation should be Robin-based, so if you use that platform at work it might be worth getting a jump start on it with Robin.

Definitely worth a look. And the price is right (free).
Regards,
burque505
Robin..PNG
Robin..PNG (3.52 KiB) Viewed 14217 times

blue83
Posts: 157
Joined: 11 Apr 2018, 06:38

Re: Robin, an open source (soon) RPA language

Post by blue83 » 25 Oct 2019, 15:57

Looks interesting.. but Question is will Robin stay free?

burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Re: Robin, an open source (soon) RPA language

Post by burque505 » 25 Oct 2019, 16:17

Hi blu83, good to see you back. I get the impression that it will indeed remain free. I was told today that the project is migrating to dotnet-core, which should be a good thing as it will be better for cross-platform support. The source code should be available on Github once the transition is complete (or so I'm told).

So far I haven't seen anything to complain about, really -- it's in development, so a number of "Activities" (in the usual RPA sense, "Actions" in Robin perhaps), are missing. There are Outlook "Actions", but no IMAP/POP "Actions". "Actions" for working with Google's suite are there for enterprise-level things such as Google Cloud Vision Services, but nothing so far for Google Sheets or gmail. There are no Word "Actions" yet, nor Powerpoint, and no AHK "Actions". But there are "RunDOSCommand", "RunVBScript", and "RunJavaScript". These missing "Actions" will come, I'll bet, as Softomotive will need them for their flagship product, which reportedly will use Robin in the next iteration .

I inquired about the SDK and found out it gets installed with Robin, which I take to mean that all the required DLLs are already there. Missing (at least for me) is a template or example for creating new Actions or modules, and I also don't know whether the resulting DLLs will need to be installed in a plugin directory or directly in the program directory.

Once the source code is available, with instructions on how to create new modules or actions, I expect there will be many new capabilities.

Regards,
burque505

blue83
Posts: 157
Joined: 11 Apr 2018, 06:38

Re: Robin, an open source (soon) RPA language

Post by blue83 » 26 Oct 2019, 01:45

Thank you burque505, for me always nice to "see" familirar faces-nicknames :)

Yes, I am always here and always reading new posts, but also busy with my work with automation.
Dont know how people was working before AHK and me arrived :)

So, you know for that I like using Robin (at least my first robot, later maybe other stuff) and this could be an advice for everyone, it is for browser and scraping web automation, because AHK doesnt supprort Chrome and Mozilla, I mean on proper way like supporting IE.

I see that you are good in that, so can you please share some code or tutorial how to automate stuff on web with Robin?

It would be great if Robin code can be compiled into .exe file, so ahk can trigger Robin web automation where our process demand that.

Am I on right track?

burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Re: Robin, an open source (soon) RPA language

Post by burque505 » 26 Oct 2019, 08:13

Hi blue83, there isn't a guide yet but I can recommend the forum, where there are at least a few examples and some code I posted. (Let me know if you can't find the code there and I'll send some to you.)

Scraping tables was a mystery to me at first, but the forum administrator (@jpap) is very helpful. You will easily find his table-scraping guide.

As far as compiling to .exe, I don't believe it's possible yet, but there is a command-line tool, 'robin.exe'. You can just use AHK to run the executable, triggering it any way you want. It works great.
Here's some screenshots of the help.
Robin..PNG
Robin..PNG (3.52 KiB) Viewed 14121 times
help-run.PNG
help-run.PNG (4.74 KiB) Viewed 14121 times
check-help.PNG
check-help.PNG (5.67 KiB) Viewed 14121 times
If you want a good framework for "orchestrating" your robots, I can recommend Wexflow, which is REALLY well documented. Make sure you get the dotnet-core version (it may be the only one available now). You can also create robots with it, but I think maybe it's best at scheduling. You can run Python scripts and AutoHotkey scripts for sure. It has other functionality I haven't even come close to tapping. You can run anything that would run from the command line, so you can run Robin scripts too.

Just as an aside, every single RPA platform I have tried either a) already does benefit from AutoHotkey, or b) could if there were a plugin for it.

Best regards,
burque505

blue83
Posts: 157
Joined: 11 Apr 2018, 06:38

Re: Robin, an open source (soon) RPA language

Post by blue83 » 28 Oct 2019, 12:06

Thank you burque505 on your effort, that really looks great and detailed.

I will try that and thank you for recommend me wexflow, it has great potential.

One question at the end is it worth to learn Robin for web automation or you think that in some short period of time Ahk creator like Lexikos (or someone else) will create plugin for Chrome or Mozilla that is official supported like COM in IE?

Because i am satisfied with Ahk and only reason that I am maybe in doubt is that IE in the future will stop supporting more and more webpages or the other way to be precise :roll:

Thank you,
blue83

burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Re: Robin, an open source (soon) RPA language

Post by burque505 » 28 Oct 2019, 12:15

blue83, I'm satisfied with AutoHotkey too, but the IE issue is troubling. If Robin keeps developing, I'm sure it will be worth the effort.

Maybe I'm wrong (I hope so) but an AutoHotkey extension for the browsers may be quite a ways off. But maybe not - maybe using SharpAHK in developing a plugin might work, for example.

Best regards,
burque505

blue83
Posts: 157
Joined: 11 Apr 2018, 06:38

Re: Robin, an open source (soon) RPA language

Post by blue83 » 19 Mar 2020, 02:40

Hi @burque505 ,

Do you know can Robin be a portable app?

I do not have admin rights on computer, so it is impossible to install it.

Blue

burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Re: Robin, an open source (soon) RPA language

Post by burque505 » 19 Mar 2020, 08:29

Hi @blue83, as far as I know administrative rights are required.

By the way, I have posted an experimental Robin module for AHK on github. It does not yet have all the functionality of my sharpAHK fork, which it uses, but I will add more in the coming weeks.

EDIT: They are hosting a webinar at 14:30 UTC today, which is just a few minutes from the time I'm posting this. Webinar link.

Regards,
burque505

burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Re: Robin, an open source (soon) RPA language

Post by burque505 » 28 Mar 2020, 15:09

I've created a Custom Module for Robin (W.I.P. and likely to stay that way for a while) available as a VS solution here.
Posted a demo on the Robin forum here if anyone is interested. It's not tough to create custom modules for Robin, the docs are really pretty good, and their VSIX add-in for VS is a smooth install.

The sample script uses @berban's great FindClick() . (All it does is cycle through the tabs of the app three times and then bails.)

As with most RPA platforms I've tried to use anything based on AutoHotkey.dll with, it's easier for me to use functions than anything else. The code's written this way so it can run standalone or just be used for the function by Robin.
Spoiler
In the demo I used the MyCRM.exe sample app that UiPath uses (used?) in their training. It was actually created by Bart Farmer at RatchetSoft, and I don't think he even knew they were using it. Anyway, thanks Bart!

Robin script with the custom module being called is below. The Action 'Ahk.LoadFile' creates an instance of AutoHotkeyEngine using a modded sharpAHK, loads the AHK code below, and calls the function. It waits until the AHK code is done, then terminates the AHK singleton and hands control back to Robin.
find_image_robin.PNG
find_image_robin.PNG (5.03 KiB) Viewed 8937 times
Animated GIF (not very big):
crm_demo.gif
crm_demo.gif (138.15 KiB) Viewed 8937 times
Regards,
burque505

SOTE
Posts: 1426
Joined: 15 Jun 2015, 06:21

Re: Robin, an open source (soon) RPA language

Post by SOTE » 28 Mar 2020, 15:58

Looks great, good work.

I'm interested in if you could one day compare Robin to OpenRPA. I was able to automate using AutoHotkey in the OpenRPA tool as well. Probably the most intriguing interconnectivity issue would be passing variables/arguments between sequences/workflows. Of course one way would be to pass them off to a file on disk or the clipboard, but if they could share memory more directly (like DllCall), it means that building sequences in an external scripting language would be almost as good as using the native activities of the RPA tool. Can this be done in Robin?
Last edited by SOTE on 28 Mar 2020, 18:51, edited 1 time in total.

burque505
Posts: 1731
Joined: 22 Jan 2017, 19:37

Re: Robin, an open source (soon) RPA language

Post by burque505 » 28 Mar 2020, 16:15

Hi @SOTE, I was encouraged to find that you can indeed pass variables and arguments to/from AHK with Robin inside the boundaries of a single Robin script. (OpenRPA can actually do this pretty seamlessly too.) It is done in memory, you don't necessarily have to write to disk.

In fact, I've been able to create an instance of the AutoHotkey.Interop.AutoHotkey engine itself with the custom module and pass it around inside a Robin script (in memory). You're not just limited to passing strings back and forth.

There are ways to 'chain' scripts in Robin, but it's not that straightforward. I have not been successful getting two Robin scripts to run simultaneously.

As does OpenRPA, the module I created uses sharpAHK, so there are many overlaps.

It's tough to compare OpenRPA with Robin, because the former is based (as are many platforms) on a re-hosted workflow designer, and latter is a language, not a platform.

WinAutomation (which is definitely a platform) will purportedly be based on Robin once it reaches 1.0, which (before COVID-19 really smacked us, at least) was scheduled for roughly May of this year.

Regards,
burque505

blue83
Posts: 157
Joined: 11 Apr 2018, 06:38

Re: Robin, an open source (soon) RPA language

Post by blue83 » 29 Mar 2020, 11:29

Hi @SOTE @burque505 ,

I am connecting to SOTE question and my question is which programing languague can pass variables to Autohotkey and from Ahk to that languague.

I am running Ahk script than need to do some stuff in other languague and than continue Ahk script.

I am interestet in Python, C++ and C#.

Do you know some code for that examples.

Thanks,
blue

Post Reply

Return to “RPA”