Automagica
AI-powered Smart Robotic Process Automation 🤖
Install / Use
/learn @automagica/AutomagicaREADME

Automagica
The Automagica project began in 2018 with a focus on creating open source software to ensure that Robotic Process Automation technologies were accessible to all.
With subsequent releases of Automagica, more advanced features such as Wand and the Portal required a service infrastructure to deliver more resilient robots, advanced services, and management and control.
As use of these services has increased, the costs for hosting and maintaining the service layer have correspondingly increased.
In order to drive the next phase of development for these important services, today, 13th October 2020, we are pleased to announce that Netcall plc, a leading provider of low-code, customer engagement, and contact centre software, has acquired Oakwood Technologies BV (trading as ‘Automagica’).
Netcall will integrate Automagica’s RPA into its Liberty platform, providing a powerful combination of RPA, Low-code, and Customer Engagement solutions.
The Automagica Robot is no longer be available under the terms of the AGPL3 licence.
We’re not stopping the use of the services for robots already deployed. These will continue to operate with Wand and OCR, free of charge, for three months from today (13 Oct 20).
Existing users of the Automagica Portal will also be able to access, free of charge, for three months, during which time users will be offered options to migrate to a commercial service.
We wish to thank all contributors to the project.

Components
The Automagica suite consists of the following components:
- Automagica Bot: runtime/agent responsible for performing the automated tasks.
- Automagica Flow: a visual flow designer to build automations quickly with full support for Python code.
- Automagica Wand: UI element picker powered by AI.
- Automagica Lab: Notebook-style automation development environment based on Jupyter Notebooks (requires Jupyter to be installed).
- Automagica Portal: management of bots, credentials, automations, logs, ...

Example
Browser working with Excel:

Activities
An overview of all official Automagica activities:
Process | Description ------- | ----------- Cryptography | <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/key-solid.svg" width="20"> Random key | Generate random Fernet key. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/lock-solid.svg" width="20"> Encrypt text | Encrypt text with (Fernet) key, <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/lock-open-solid.svg" width="20"> Decrypt text | Dexrypt bytes-like object to string with (Fernet) key <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/lock-solid.svg" width="20"> Encrypt file | Encrypt file with (Fernet) key. Note that file will be unusable unless unlocked with the same key. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/lock-open-solid.svg" width="20"> Decrypt file | Decrypts file with (Fernet) key <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/lock-solid.svg" width="20"> Key from password | Generate key based on password and salt. If both password and salt are known the key can be regenerated. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/fingerprint-solid.svg" width="20"> Hash from file | Generate hash from file <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/fingerprint-solid.svg" width="20"> Hash from text | Generate hash from text. Keep in mind that MD5 is not cryptographically secure. Random | <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/dice-solid.svg" width="20"> Random number | Random numbers can be integers (not a fractional number) or a float (fractional number). <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/digital-tachograph-solid.svg" width="20"> Random data | Generates all kinds of random data. Specifying locale changes format for some options <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/coins-solid.svg" width="20"> Random boolean | Generates a random boolean (True or False) <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/user-tag-solid.svg" width="20"> Random name | Generates a random name. Adding a locale adds a more common name in the specified locale. Provides first name and last name. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/comment-solid.svg" width="20"> Random words | Generates a random sentence. Specifying locale changes language and content based on locale. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/map-marker-solid.svg" width="20"> Random address | Generates a random address. Specifying locale changes random locations and streetnames based on locale. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/volume-up-solid.svg" width="20"> Random beep | Generates a random beep, only works on Windows <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/calendar-solid.svg" width="20"> Random date | Generates a random date. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/calendar-solid.svg" width="20"> Today's date | Generates today's date. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/random-solid.svg" width="20"> Generate unique identifier | Generates a random UUID4 (universally unique identifier). Output | <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/tv-solid.svg" width="20"> Display overlay message | Display custom OSD (on-screen display) message. Can be used to display a message for a limited amount of time. Can be used for illustration, debugging or as OSD. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/tv-solid.svg" width="20"> Print message in console | Print message in console. Can be used to display data in the Automagica Flow console Browser | <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/chrome.svg" width="20"> Chrome | Open Chrome Browser <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/images-solid.svg" width="20"> Save all images | Save all images on current page in the Browser <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/chrome.svg" width="20"> Browse to URL | Browse to URL. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/align-center-solid.svg" width="20"> Find elements by text | Find all elements by their text. Text does not need to match exactly, part of text is enough. <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/window-restore-solid.svg" width="20"> Find all links | Find all links on a webpage in the browser <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/window-restore-solid.svg" width="20"> Find first link on a webpage | Find first link on a webpage <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/window-restore-solid.svg" width="20"> Get all text on webpage | Get all the raw body text from current webpage <img src="https://cdn.jsdelivr.net/npm/line-awesome@1.3.0/svg/highlighter-solid.svg" width="20"> [Highlight element](https://automagica.readthedocs.io/activities.html#automagica.activities
