AI-powered Smart Robotic Process Automation ๐Ÿค–

Overview

https://automagica.com)

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.

Love Automagica Example

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, ...

Portal and Flow

Example

Browser working with Excel:

Excel Example Automagica

Activities

An overview of all official Automagica activities:

Process Description
Cryptography โ€Œโ€Œ
Random key Generate random Fernet key.
Encrypt text Encrypt text with (Fernet) key,
Decrypt text Dexrypt bytes-like object to string with (Fernet) key
Encrypt file Encrypt file with (Fernet) key. Note that file will be unusable unless unlocked with the same key.
Decrypt file Decrypts file with (Fernet) key
Key from password Generate key based on password and salt. If both password and salt are known the key can be regenerated.
Hash from file Generate hash from file
Hash from text Generate hash from text. Keep in mind that MD5 is not cryptographically secure.
Random โ€Œโ€Œ
Random number Random numbers can be integers (not a fractional number) or a float (fractional number).
Random data Generates all kinds of random data. Specifying locale changes format for some options
Random boolean Generates a random boolean (True or False)
Random name Generates a random name. Adding a locale adds a more common name in the specified locale. Provides first name and last name.
Random words Generates a random sentence. Specifying locale changes language and content based on locale.
Random address Generates a random address. Specifying locale changes random locations and streetnames based on locale.
Random beep Generates a random beep, only works on Windows
Random date Generates a random date.
Today's date Generates today's date.
Generate unique identifier Generates a random UUID4 (universally unique identifier).
Output โ€Œโ€Œ
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.
Print message in console Print message in console. Can be used to display data in the Automagica Flow console
Browser โ€Œโ€Œ
Chrome Open Chrome Browser
Save all images Save all images on current page in the Browser
Browse to URL Browse to URL.
Find elements by text Find all elements by their text. Text does not need to match exactly, part of text is enough.
Find all links Find all links on a webpage in the browser
Find first link on a webpage Find first link on a webpage
Get all text on webpage Get all the raw body text from current webpage
Highlight element Highlight elements in yellow in the browser
Exit the browser Quit the browser by exiting gracefully. One can also use the native 'quit' function
Find all XPaths Find all elements with specified xpath on a webpage in the the browser. Can also use native 'find_elements_by_xpath'
Find XPath in browser Find all element with specified xpath on a webpage in the the browser. Can also use native 'find_elements_by_xpath'
Find class in browser Find element with specified class on a webpage in the the browser. Can also use native 'find_element_by_class_name'
Find class in browser Find all elements with specified class on a webpage in the the browser. Can also use native 'find_elements_by_class_name' function
Find element in browser based on class and text Find all elements with specified class and text on a webpage in the the browser.
Find id in browser Find element with specified id on a webpage in the the browser. Can also use native 'find_element_by_id' function
Switch to iframe in browser Switch to an iframe in the browser
Credential Management โ€Œโ€Œ
Set credential Add a credential which stores credentials locally and securely. All parameters should be Unicode text.
Delete credential Delete a locally stored credential. All parameters should be Unicode text.
Get credential Get a locally stored redential. All parameters should be Unicode text.
FTP โ€Œโ€Œ
Create FTP connection (insecure) Can be used to automate activites for FTP
Download file Downloads a file from FTP server. Connection needs to be established first.
Upload file Upload file to FTP server
List FTP files Generate a list of all the files in the FTP directory
Check FTP directory Check if FTP directory exists
Create FTP directory Create a FTP directory. Note that sufficient permissions are present
Keyboard โ€Œโ€Œ
Press key Press and release an entered key. Make sure your keyboard is on US layout (standard QWERTY).If you are using this on Mac Os you might need to grant access to your terminal application.
Press key combination Press a combination of two or three keys simultaneously. Make sure your keyboard is on US layout (standard QWERTY).
Type text Simulate keystrokes. If an element ID is specified, text will be typed in a specific field or element based on the element ID (vision) by the recorder.
Mouse โ€Œโ€Œ
Get mouse coordinates Get the x and y pixel coordinates of current mouse position.
Display mouse position Displays mouse position in an overlay.
Mouse click Clicks on an element based on the element ID (vision)
Mouse click coordinates Clicks on an element based on pixel position determined by x and y coordinates. To find coordinates one could use display_mouse_position().
Double mouse click coordinates Double clicks on a pixel position determined by x and y coordinates.
Double mouse click Double clicks on an element based on the element ID (vision)
Right click Right clicks on an element based on the element ID (vision)
Right click coordinates Right clicks on an element based pixel position determined by x and y coordinates.
Move mouse Moves te pointer to an element based on the element ID (vision)
Move mouse coordinates Moves te pointer to an element based on the pixel position determined by x and y coordinates
Move mouse relative Moves the mouse an x- and y- distance relative to its current pixel position.
Drag mouse Drags mouse to an element based on pixel position determined by x and y coordinates
Drag mouse Drags mouse to an element based on the element ID (vision)
Image โ€Œโ€Œ
Random screen snippet Take a random square snippet from the current screen. Mainly for testing and/or development purposes.
Screenshot Take a screenshot of current screen.
Folder Operations โ€Œโ€Œ
List files in folder List all files in a folder (and subfolders)
Create folder Creates new folder at the given path.
Rename folder Rename a folder
Open a folder Open a folder with the default explorer.
Move a folder Moves a folder from one place to another.
Remove folder Remove a folder including all subfolders and files. For the function to work optimal, all files and subfolders in the main targetfolder should be closed.
Empty folder Remove all contents from a folderFor the function to work optimal, all files and subfolders in the main targetfolder should be closed.
Checks if folder exists Check whether folder exists or not, regardless if folder is empty or not.
Copy a folder Copies a folder from one place to another.
Zip Zip folder and its contents. Creates a .zip file.
Unzip Unzips a file or folder from a .zip file.
Return most recent file in directory Return most recent file in directory
Delay โ€Œโ€Œ
Wait Make the robot wait for a specified number of seconds. Note that this activity is blocking. This means that subsequent activities will not occur until the the specified waiting time has expired.
Wait for folder Waits until a folder exists.Note that this activity is blocking and will keep the system waiting.
Word Application โ€Œโ€Œ
Start Word Application For this activity to work, Microsoft Office Word needs to be installed on the system.
Save Save active Word document
Save As Save active Word document to a specific location
Append text Append text at end of Word document.
Replace text Can be used for example to replace arbitrary placeholder value. For example whenusing template document, using 'XXXX' as a placeholder. Take note that all strings are case sensitive.
Read all text Read all the text from a document
Export to PDF Export the document to PDF
Export to HTML Export to HTML
Set footers Set the footers of the document
Set headers Set the headers of the document
Quit Word This closes Word, make sure to use 'save' or 'save_as' if you would like to save before quitting.
Word File โ€Œโ€Œ
Read and Write Word files These activities can read, write and edit Word (docx) files without the need of having Word installed.
Read all text Read all the text from the document
Append text Append text at the end of the document
Save Save document
Save as Save file on specified path
Set headers Set headers of Word document
Replace all Replaces all occurences of a placeholder text in the document with a replacement text.
Outlook Application โ€Œโ€Œ
Start Outlook Application For this activity to work, Outlook needs to be installed on the system.
Send e-mail Send an e-mail using Outlook
Retrieve folders Retrieve list of folders from Outlook
Retrieve e-mails Retrieve list of messages from Outlook
Delete e-mails Deletes e-mail messages in a certain folder. Can be specified by searching on subject, body or sender e-mail.
Move e-mails Move e-mail messages in a certain folder. Can be specified by searching on subject, body or sender e-mail.
Save attachments Save all attachments from certain folder
Retrieve contacts Retrieve all contacts
Add a contact Add a contact to Outlook contacts
Quit Close the Outlook application
Excel Application โ€Œโ€Œ
Start Excel Application For this activity to work, Microsoft Office Excel needs to be installed on the system.
Add worksheet Adds a worksheet to the current workbook
Activate worksheet Activate a worksheet in the current Excel document by name
Save Save the current workbook. Defaults to homedir
Save as Save the current workbook to a specific path
Write cell Write to a specific cell in the currently active workbook and active worksheet
Read cell Read a cell from the currently active workbook and active worksheet
Write range Write to a specific range in the currently active worksheet in the active workbook
Read range Read a range of cells from the currently active worksheet in the active workbook
Run macro Run a macro by name from the currently active workbook
Get worksheet names Get names of all the worksheets in the currently active workbook
Get table Get table data from the currently active worksheet by name of the table
Activate range Activate a particular range in the currently active workbook
Activate first empty cell down Activates the first empty cell going down
Activate first empty cell right Activates the first empty cell going right
Activate first empty cell left Activates the first empty cell going left
Activate first empty cell up Activates the first empty cell going up
Write cell formula Write a formula to a particular cell
Read cell formula Read the formula from a particular cell
Insert empty row Inserts an empty row to the currently active worksheet
Insert empty column Inserts an empty column in the currently active worksheet. Existing columns will shift to the right.
Delete row in Excel Deletes a row from the currently active worksheet. Existing data will shift up.
Delete column Delete a column from the currently active worksheet. Existing columns will shift to the left.
Export to PDF Export to PDF
Insert data as table Insert list of dictionaries as a table in Excel
Read worksheet Read data from a worksheet as a list of lists
Quit Excel This closes Excel, make sure to use 'save' or 'save_as' if you would like to save before quitting.
Excel File โ€Œโ€Œ
Read and Write xlsx files. This activity can read, write and edit Excel (xlsx) files without the need of having Excel installed.
Export file to dataframe Export to pandas dataframe
Activate worksheet Activate a worksheet. By default the first worksheet is activated.
Save as Save file as
Save as Save file
Write cell Write a cell based on column and row
Read cell Read a cell based on column and row
Add worksheet Add a worksheet
Get worksheet names Get worksheet names
PowerPoint Application โ€Œโ€Œ
Start PowerPoint Application For this activity to work, PowerPoint needs to be installed on the system.
Save PowerPoint Save PowerPoint Slidedeck
Save PowerPoint Save PowerPoint Slidedeck
Close PowerPoint Application Close PowerPoint
Add PowerPoint Slides Adds slides to a presentation
Slide count Returns the number of slides
Text to slide Add text to a slide
Delete slide Delete a slide
Replace all occurences of text in PowerPoint slides Can be used for example to replace arbitrary placeholder value in a PowerPoint.
PowerPoint to PDF Export PowerPoint presentation to PDF file
Slides to images Export PowerPoint slides to seperate image files
Office 365 โ€Œโ€Œ
Send email Office Outlook 365 Send email Office Outlook 365
Salesforce โ€Œโ€Œ
Salesforce API Activity to make calls to Salesforce REST API.
E-mail (SMTP) โ€Œโ€Œ
Mail with SMTP This function lets you send emails with an e-mail address.
Windows OS โ€Œโ€Œ
Find window with specific title Find a specific window based on the name, either a perfect match or a partial match.
Login to Windows Remote Desktop Create a RDP and login to Windows Remote Desktop
Stop Windows Remote Desktop Stop Windows Remote Desktop
Set Windows password Sets the password for a Windows user.
Check Windows password Validates a Windows user password if it is correct
Lock Windows Locks Windows requiring login to continue.
Check if Windows logged in Checks if the current user is logged in and not on the lockscreen. Most automations do not work properly when the desktop is locked.
Check if Windows is locked Checks if the current user is locked out and on the lockscreen. Most automations do not work properly when the desktop is locked.
Get Windows username Get current logged in user's username
Set clipboard Set any text to the Windows clipboard.
Get clipboard Get the text currently in the Windows clipboard
Empty clipboard Empty text from clipboard. Getting clipboard data after this should return in None
Run VBSscript Run a VBScript file
Beep Make a beeping sound. Make sure your volume is up and you have hardware connected.
Get all network interface names Returns a list of all network interfaces of the current machine
Enable network interface Enables a network interface by its name.
Disable network interface Disables a network interface by its name.
Get default printer Returns the name of the printer selected as default
Set default printer Set the default printer.
Remove printer Removes a printer by its name
Get service status Returns the status of a service on the machine
Start a service Starts a Windows service
Stop a service Stops a Windows service
Set window to foreground Sets a window to foreground by its title.
Get foreground window title Retrieve the title of the current foreground window
Close window Closes a window by its title
Maximize window Maximizes a window by its title
Restore window Restore a window by its title
Minimize window Minimizes a window by its title
Resize window Resize a window by its title
Hide window Hides a window from the user desktop by using it's title
Terminal โ€Œโ€Œ
Run SSH command Runs a command over SSH (Secure Shell)
SNMP โ€Œโ€Œ
SNMP Get Retrieves data from an SNMP agent using SNMP (Simple Network Management Protocol)
Active Directory โ€Œโ€Œ
AD interface Interface to Windows Active Directory through ADSI. Connects to the AD domain to which the machine is joined by default.
Get AD object by name Interface to Windows Active Directory through ADSI
Utilities โ€Œโ€Œ
Get user home path Returns the current user's home path
Get desktop path Returns the current user's desktop path
Get downloads path Returns the current user's default download path
Open file Opens file with default programs
Set wallpaper Set Windows desktop wallpaper with the the specified image
Download file from a URL Download file from a URL
System โ€Œโ€Œ
Rename a file This activity will rename a file. If the the desired name already exists in the folder file will not be renamed. Make sure to add the exstention to specify filetype.
Move a file If the new location already contains a file with the same name.
Remove a file Remove a file
Check if file exists This function checks whether the file with the given path exists.
Wait until a file exists. Note that this activity is blocking and will keep the system waiting.
List to .txt Writes a list to a text (.txt) file.Every element of the entered list is written on a new line of the text file.
Read list from .txt file This activity reads the content of a .txt file to a list and returns that list.Every new line from the .txt file becomes a new element of the list. The activity willnot work if the entered path is not attached to a .txt file.
Read .txt file This activity reads a .txt file and returns the content
Append to .txt Append a text line to a file and creates the file if it does not exist yet.
Make text file Initialize text file
Read .txt file with newlines to list Read a text file to a Python list-object
Copy a file Copies a file from one place to another.If the new location already contains a file with the same name, a random 4 character uid is added to the name.
Get file extension Get extension of a file
Print Send file to default printer to priner. This activity sends a file to the printer. Make sure to have a default printer set up.
PDF โ€Œโ€Œ
Text from PDF Extracts the text from a PDF. This activity reads text from a pdf file. Can only read PDF files that contain a text layer.
Merge PDF Merges multiple PDFs into a single file
Extract page from PDF Extracts a particular range of a PDF to a separate file.
Extract images from PDF Save a specific page from a PDF as an image
Watermark a PDF Watermark a PDF
System Monitoring โ€Œโ€Œ
CPU load Get average CPU load for all cores.
Count CPU Get the number of CPU's in the current system.
CPU frequency Get frequency at which CPU currently operates.
CPU Stats Get CPU statistics
Memory statistics Get memory statistics
Disk stats Get disk statistics of main disk
Partition info Get disk partition info
Boot time Get most recent boot time
Uptime Get uptime since last boot
Image Processing โ€Œโ€Œ
Show image Displays an image specified by the path variable on the default imaging program.
Rotate image Rotate an image
Resize image Resizes the image specified by the path variable.
Get image width Get with of image
Get image height Get height of image
Crop image Crops the image specified by path to a region determined by the box variable.
Mirror image horizontally Mirrors an image with a given path horizontally from left to right.
Mirror image vertically Mirrors an image with a given path vertically from top to bottom.
Process โ€Œโ€Œ
Windows run Use Windows Run to boot a processNote this uses keyboard inputs which means this process can be disrupted by interfering inputs
Run process Use subprocess to open a windows process
Check if process is running Check if process is running. Validates if given process name (name) is currently running on the system.
Get running processes Get names of unique processes currently running on the system.
Kill process Kills a process forcefully
Optical Character Recognition (OCR) โ€Œโ€Œ
Get text with OCR This activity extracts all text from the current screen or an image if a path is specified.
Find text on screen with OCR This activity finds position (coordinates) of specified text on the current screen using OCR.
Click on text with OCR This activity clicks on position (coordinates) of specified text on the current screen using OCR.
Double click on text with OCR This activity double clicks on position (coordinates) of specified text on the current screen using OCR.
Right click on text with OCR This activity Right clicks on position (coordinates) of specified text on the current screen using OCR.
UiPath โ€Œโ€Œ
Execute a UiPath process This activity allows you to execute a process designed with the UiPath Studio. All console output from the Write Line activity will be printed as output.
AutoIt โ€Œโ€Œ
Execute a AutoIt script This activity allows you to run an AutoIt script. If you use the ConsoleWrite function, the output will be presented to you.
Alternative frameworks โ€Œโ€Œ
Execute a Robot Framework test case This activity allows you to run a Robot Framework test case. Console output of the test case will be printed.
Run a Blue Prism process This activity allows you to run a Blue Prism process.
Run an Automation Anywhere task This activity allows you to run an Automation Anywhere task.
General โ€Œโ€Œ
Raise exception Raises an exception
SAP GUI โ€Œโ€Œ
Quit SAP GUI Quits the SAP GUI completely and forcibly.
Log in to SAP GUI Logs in to an SAP system on SAP GUI.
Click on a SAP GUI element Clicks on an identifier in the SAP GUI.
Get text from a SAP GUI element Retrieves the text from a SAP GUI element.
Set text of a SAP GUI element Sets the text of a SAP GUI element.
Highlights a SAP GUI element Temporarily highlights a SAP GUI element
Portal โ€Œโ€Œ
Create a new job in the Automagica Portal This activity creates a new job in the Automagica Portal for a given process. The bot performing this activity needs to be in the same team as the process it creates a job for.
Get a credential from the Automagica Portal This activity retrieves a credential from the Automagica Portal.
Vision โ€Œโ€Œ
Check if element is visible on screen This activity can be used to check if a certain element is visible on the screen.Note that this uses Automagica Portal and uses some advanced an fuzzy matching algorithms for finding identical elements.
Wait for an element to appear Wait for an element that is defined the recorder
Wait Vanish This activity allows the bot to wait for an element to vanish.
Read Text with Automagica Wand This activity allows the bot to detect and read the text of an element by using the Automagica Portal API with a provided sample ID.
โ€Œโ€Œ

Licensing

Copyright and licensing

All source code and other files in this repository, unless stated otherwise, are copyright of Netcall plc.

Commercial license

For more information on licensing, trials and commercial use see this page

Comments
  • Jupyter doesn't open - cannot edit scripts

    Jupyter doesn't open - cannot edit scripts

    I have bot connected, I have assigned script to it, but I cannot edit. When I open the "edit" list and choose "Latest" there is CMD windows popping up with "Python" name, but after few seconds it disappears and nothing happens. Doesn't work with Firefox, Edge, Chrome or Brave. What can I do?

    I tried reinstalling, deleting Program Files folder, rebooting, deleting Python, installing again. But that doesn't help. I'm stuck here for 2 days now. I need to test your software for commercial use, but can't and if I can't - I cannot recommend it. :(

    opened by michcikk 21
  • All the magic has gone on 13.10.2020

    All the magic has gone on 13.10.2020

    All the libraries disappeared from GitHub. pip install automagica is still working, but you will stop it in 3 months, right? There is no open source RPA starting with 13.10.2020, right? Automagica has been built on top of other open source Python libraries and nothing left in one day. It feels like a scam, what does community think?

    opened by itsergiu 7
  • automagica installation problem (under both: pip & PyCharm)

    automagica installation problem (under both: pip & PyCharm)

    Maybe I am just missing an aspect here, but cannot resolve and no Google help found: Installation stops for both pip and PyCharm with issue regarding 'openssl/opensslv.h' when it tries to install cryptography-2.9.2 (although I have that installed already). Any ideas?

    opened by Dirk-2020 7
  • FileNotFoundError: [WinError 2] ็ณป็ปŸๆ‰พไธๅˆฐๆŒ‡ๅฎš็š„ๆ–‡ไปถใ€‚

    FileNotFoundError: [WinError 2] ็ณป็ปŸๆ‰พไธๅˆฐๆŒ‡ๅฎš็š„ๆ–‡ไปถใ€‚

    C:\code>python app_ocr.py Traceback (most recent call last): File "app_ocr.py", line 7, in text = ExtractTextFromImage('example.jpg') File "C:\Python37\lib\site-packages\automagica\activities.py", line 541, in ExtractTextFromImage return image_to_string(Image.open(filename)) File "C:\Python37\lib\site-packages\pytesseract\pytesseract.py", line 193, in image_to_string return run_and_get_output(image, 'txt', lang, config, nice) File "C:\Python37\lib\site-packages\pytesseract\pytesseract.py", line 140, in run_and_get_output run_tesseract(**kwargs) File "C:\Python37\lib\site-packages\pytesseract\pytesseract.py", line 111, in run_tesseract proc = subprocess.Popen(command, stderr=subprocess.PIPE) File "C:\Python37\lib\subprocess.py", line 769, in init restore_signals, start_new_session) File "C:\Python37\lib\subprocess.py", line 1172, in _execute_child startupinfo) FileNotFoundError: [WinError 2] ็ณป็ปŸๆ‰พไธๅˆฐๆŒ‡ๅฎš็š„ๆ–‡ไปถใ€‚

    opened by weiqiLee 6
  • Can't install on Mac OS X

    Can't install on Mac OS X

    On Mac OS X i had this error: Collecting sty==1.0.0b2 (from Automagica==0.3.1) Could not find a version that satisfies the requirement sty==1.0.0b2 (from Automagica==0.3.1) (from versions: ) No matching distribution found for sty==1.0.0b2 (from Automagica==0.3.1) Python version: 2.7.10 Pip version: 10.0.1

    opened by vladimireduardo 6
  • How can we check if a window exists?

    How can we check if a window exists?

    For example if we get a prompt pop up window such as "Are you really sure to save it?" or "do you want to overwrite existing file?"

    I would like to check whether such window popped up or not and take action accordingly

    opened by UmutAlihan 5
  • Bot Key error

    Bot Key error

    File "C:\Users\Dell\Desktop\testing_for_automagica\venv\lib\site-packages\automagica\utilities.py", line 17, in wrapper return func(*args, **kwargs) File "C:\Users\Dell\Desktop\testing_for_automagica\venv\lib\site-packages\automagica\activities.py", line 8490, in find_text_on_screen_ocr api_key = str(local_data['bot_secret']) # Your API key KeyError: 'bot_secret' (venv) PS C:\Users\Dell\Desktop\testing_for_automagica> automagica -f .\ocr_testing.py Traceback (most recent call last): File "c:\users\dell\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "c:\users\dell\appdata\local\programs\python\python37\lib\runpy.py", line 85, in run_code exec(code, run_globals) File "C:\Users\Dell\Desktop\testing_for_automagica\venv\Scripts\automagica.exe_main.py", line 7, in File "c:\users\dell\desktop\testing_for_automagica\venv\lib\site-packages\automagica\cli.py", line 652, in main app = Automagica() File "c:\users\dell\desktop\testing_for_automagica\venv\lib\site-packages\automagica\cli.py", line 139, in init exec(script, globals()) File "", line 5, in File "c:\users\dell\desktop\testing_for_automagica\venv\lib\site-packages\automagica\utilities.py", line 17, in wrapper return func(*args, **kwargs) File "c:\users\dell\desktop\testing_for_automagica\venv\lib\site-packages\automagica\activities.py", line 8490, in find_text_on_screen_ocr api_key = str(local_data['bot_secret']) # Your API key KeyError: 'bot_secret'

    @audieleon @ygxiao @tvturnhout @0xflotus @rtroncosogar can u guys help solving this problem .Every time when i work on OCR it gices me the Above error

    opened by sultan-sheriff 4
  • Can I somehow select a specific element from dropdown list on the browser Chrome

    Can I somehow select a specific element from dropdown list on the browser Chrome

    I have the following HTML code:

                                <select data-toggle="tooltip" data-placement="top" title="" data-placeholder="Rol" id="cmbRol" class=" form-control parsley-validated selection" data-original-title="Rol" style="display: none;">โ€จ
                                    <option value="Agent" data-i18n="ucontact.AGENT">Agente</option>
                                    <option value="Supervisor" data-i18n="ucontact.SUPERVISOR">Supervisor</option>
                                    โ€จ
                                </select>
    	<div class="chosen-container chosen-container-single chosen-container-single-nosearch" title="" id="cmbRol_chosen" style="width: 87px;">
    		<a class="chosen-single">
    			<span>Agente</span>
    			<div><b></b></div>
    		</a>
    	<div class="chosen-drop">
    	<div class="chosen-search">
    	<input class="chosen-search-input" type="text" autocomplete="off" readonly="">
    	</div>
    
    • Agente
    • Supervisor

    I did the following but without success

    element = browser.find_xpath('//*[@id="cmbRol"]/option[2]') element.click()

    I throw the following error:


    ElementNotInteractableException Traceback (most recent call last) in 1 element = browser.find_xpath('//*[@id="cmbRol"]/option[2]') ----> 2 element.click()

    ~\AppData\Local\Automagica\pkgs\selenium\webdriver\remote\webelement.py in click(self) 78 def click(self): 79 """Clicks the element.""" ---> 80 self._execute(Command.CLICK_ELEMENT) 81 82 def submit(self):

    ~\AppData\Local\Automagica\pkgs\selenium\webdriver\remote\webelement.py in _execute(self, command, params) 499 params = {} 500 params['id'] = self._id --> 501 return self._parent.execute(command, params) 502 503 def find_element(self, by=By.ID, value=None):

    ~\AppData\Local\Automagica\pkgs\selenium\webdriver\remote\webdriver.py in execute(self, driver_command, params) 306 response = self.command_executor.execute(driver_command, params) 307 if response: --> 308 self.error_handler.check_response(response) 309 response['value'] = self._unwrap_value( 310 response.get('value', None))

    ~\AppData\Local\Automagica\pkgs\selenium\webdriver\remote\errorhandler.py in check_response(self, response) 192 elif exception_class == UnexpectedAlertPresentException and 'alert' in value: 193 raise exception_class(message, screen, stacktrace, value['alert'].get('text')) --> 194 raise exception_class(message, screen, stacktrace) 195 196 def _value_or_default(self, obj, key, default):

    ElementNotInteractableException: Message: element not interactable: Element is not currently visible and may not be manipulated (Session info: chrome=80.0.3987.100)

    opened by digobo 4
  • Problem with robot scheduling

    Problem with robot scheduling

    Dear team,

    I've started to learn automagica software. I am trying to schedule my robot from my automagica account. I see in "triggers" that my robot starts, for example, at 3:35 pm as shown in the picture.

    Annotation 2019-12-26 153423

    But in one minute nothing happens. It is just rescheduled to the next day the same time. Please, see below.

    Annotation 2019-12-26 153423-2

    As you can see, there is no pending jobs.

    Please, could someone help me with this issue? Thank you in advance.

    opened by abarlukova 4
  • Having this error while pip install Automagica -U

    Having this error while pip install Automagica -U

    ERROR: Could not find a version that satisfies the requirement opencv-python==3.4.2.17 (from automagica) (from versions: 3.4.8.29, 4.1.2.30) ERROR: No matching distribution found for opencv-python==3.4.2.17 (from automagica)

    opened by andrewwoo0902 4
  • can't install on mac os

    can't install on mac os

    I got error on mac os when installing automagica using script:

    pip install https://github.com/OakwoodAI/automagica/tarball/master

    ERROR: Could not find a version that satisfies the requirement sty==1.0.0b2 (from Automagica==0.3.4) (from versions: none) ERROR: No matching distribution found for sty==1.0.0b2 (from Automagica==0.3.4)

    this problem is resolved?

    python:3.7 pip:19.1.1 mac os:10.14.5

    opened by lichoil 4
  • Issue running scheduled job

    Issue running scheduled job

    Apologies if a stupid question, this is first time I have tried automation, or used Automagica!

    I downloaded the package directly (windows 10) yesterday.

    I have successfully created a process in Automagica Flow, and tested and all working.
    I created a new process in portal and imported the .josn file created in Flow.
    I created a job to run the new process on a schedule. I ensured that the Bot was running locally on same machine, and is showing as online in Portal - and is part of same team.

    I tried to test the job by clicking on green arrow under the process, and it tries to run the job. When the job runs it I see Automagica receive the job, and immediately a connection error. If I look in the jobs, it remains running, but nothing is happening. I am guessing the connection error is either to the Bot, or to the Portal. I am unsure which it is or how to check further.

    For the Bot configuration I have tried with the user secret blank, and also with the user secret as a copy of the Bot Secret (as shown here - https://automagica.readthedocs.io/bot.html). I get the same error.

    What am I missing here?

    Many Thanks

    opened by Fats25 12
  • Doubt regarding excel activities in automagica

    Doubt regarding excel activities in automagica

    Hi,

    I had a doubt regarding the excel activities in automagica, there is get table activity what is use of this? is it simmilar to read range activity?

    opened by nived00015 0
  • in a container: on mouse.click() , Inappropriate ioctl for device error

    in a container: on mouse.click() , Inappropriate ioctl for device error

    I am having issue using mouse.click() for my automation

    I was able to run my container, view virtual desktop on localhost:8080/vnc.html and execute my script succesfully. However I receive the error below, when I need to click on screen with mouse ( import mouse; mouse.click() )

    Could you please help?

    image

    image

    opened by UmutAlihan 0
  • macOS installation error

    macOS installation error

    Hi, thanks a lot for the great tool! I am trying to run it (at least the flow) on macOS but got some errors.

    I did pip install . -e using the latest code, and got the following error:

    
       ERROR: Command errored out with exit status 1:
         command: /Users/huajun/miniconda3/envs/automagica2/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/Users/huajun/dev/external/automagica/setup.py'"'"'; __file__='"'"'/Users/huajun/dev/external/automagica/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps
             cwd: /Users/huajun/dev/external/automagica/
        Complete output (3 lines):
        Traceback (most recent call last):
          File "<string>", line 1, in <module>
        ModuleNotFoundError: No module named 'setuptools'
        ----------------------------------------
    ERROR: Command errored out with exit status 1: /Users/huajun/miniconda3/envs/automagica2/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/Users/huajun/dev/external/automagica/setup.py'"'"'; __file__='"'"'/Users/huajun/dev/external/automagica/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps Check the logs for full command output.
    

    What could be the problem?

    Thanks!

    opened by handsomezebra 0
  • Installation in Windows7 - help

    Installation in Windows7 - help

    Hi,

    Iยดve installed automagica in Windows 7 without error messages, but itยดs not opening using the desktop icon. The process ends without any error and I cannot find any detail to correct it.

    using windows 10 it works fine.

    Is Automagica not designed to Windows7?

    opened by gutompson 0
  • Owner
    Automagica
    Automate any UI
    Automagica
    Calido - Open Smart Thermostat and Smart Home Controller. Built on a Thingy:91 (nRF9160).

    Calido - Open Smart Thermostat and Smart Home Controller based on a Nordic Semiconductor Thingy:91 Project can be found here (Electromaker.io). A Make

    ticccco 3 Jun 25, 2022
    CQC (Charmed Quark Controller) a commercial grade, full featured, software based automation system. CQC is built on our CIDLib C++ development system, which is also available here on GitHub.

    The CQC Automation System What It Is CQC is a commercial quality, software based automation system, suitable for residential or commercial application

    Dean Roddey 60 Oct 2, 2022
    DIY LCD touchscreen for Home Automation

    HA SwitchPlate HASPone The HASPone is a DIY touchscreen controller you can mount into a standard North American work box. It connects to your home aut

    null 312 Nov 29, 2022
    Home automation light switch controller

    Home Automation Light Switch Controller Copyright 2019-2021 SuperHouse Automation Pty Ltd www.superhouse.tv A modular Light Switch Controller for DIY

    SuperHouse Automation 11 Mar 27, 2022
    Universal State Monitor software for home automation input devices

    Universal State Monitor Copyright 2019-2021 SuperHouse Automation Pty Ltd www.superhouse.tv A binary state monitor for DIY home automation projects. T

    SuperHouse Automation 3 Aug 24, 2021
    The C++ Automation Language

    Circle The C++ Automation Language 2021 Sean Baxter Download here Follow me on Twitter @seanbax for compiler updates. NEW CUDA NEW Pattern Matching NE

    Sean Baxter 1.5k Nov 29, 2022
    Native cross-platform system automation

    Native System Automation GET STARTED | DOCUMENTATION | API | COMMUNITY Introducing Robot for C++, a library aimed at facilitating the development of s

    Robot 198 Nov 10, 2022
    Contains firmware and software used for the bead sprite printer v2 robotic system

    Bead-Sprite-Printer-V2 Contains firmware and software used for the bead sprite printer v2 robotic system bead_fuser_arduino - this folder contains the

    null 3 Jun 23, 2022
    Arduino library for controlling the movements of a 2wd robotic car using a H-bridge motor driver L298P

    RoboticCar Arduino library for controlling the movements of a 2wd robotic car using a H-bridge motor driver L298P Install the library Download this re

    Josรฉ Augusto Cintra 1 Nov 21, 2021
    Control of 4 DOF robotic arm using Bluetooth HC-05 Sensor

    SERV-E -> "At your Service" Problem Statement With the current boom of technology where the whole world is running towards digitisation and automation

    Swarup Tripathy 2 Apr 27, 2022
    2D/3D Registration and system integration for image-based navigation of orthopedic robotic applications, inculding femoroplasty, osteonecrosis, etc.

    Registration and System Integration Software for Orthopedic Surgical Robotic System This repository contains software programs for image-based registr

    Cong Gao 15 Sep 3, 2022
    This package contains the common algorithms in robotic arm, and I have developed it based on universal robot. It will be continuously updateing.

    Robotic_Arm_Algorithms It contains the common algorithms in robotic arm, and will be recording the development as soon as I have completed the any one

    Mingshan-Beal 87 Nov 22, 2022
    Process Ghosting - a PE injection technique, similar to Process Doppelgรคnging, but using a delete-pending file instead of a transacted file

    Process Ghosting This is my implementation of the technique presented by Gabriel Landau: https://www.elastic.co/blog/process-ghosting-a-new-executable

    hasherezade 511 Nov 21, 2022
    EarlyBird process hollowing technique (BOF) - Spawns a process in a suspended state, inject shellcode, hijack main thread with APC, and execute shellcode

    HOLLOW - Cobalt Strike BOF Authors: Bobby Cooke (@0xBoku) Justin Hamilton (@JTHam0) Octavio Paguaga (@OakTree__) Matt Kingstone (@n00bRage) Beacon Obj

    Bobby Cooke 201 Nov 12, 2022
    AnalogWrite for ESP32 and ESP32-S2 with LEDC PWM. Includes PWM Phase Control, DAC and Smart GPIO resource management.

    analogWrite() ESP32 Installation Instructions This library was tested using using the ESP32 Arduino IDE Boards Manager installation method. Stable rel

    null 32 Nov 26, 2022
    Info & tools for reverse engineering the M6 smart fitness band

    m6-reveng This repo contains information and tools for reverse engineering the $7 M6 smart fitness band. Hardware The SoC (system-on-a-chip) is a Teli

    null 39 Dec 1, 2022
    PNPASSIST: A โ€œSMARTโ€ BUILD PLATFORM FOR MANUAL PCB ASSEMBLY

    PnPAssist Description The PnPAssist is an open source innovative CNC table that position the next SMT component with a proper orientation for you to m

    MakerStorage 37 Nov 18, 2022
    DIY Smart Blinds controller for ESP8266

    Window blinds to home assistant DIY window blinds controller software for ESP8266 (Wemos D1) to control existing window blinds using servos. The full

    Toni Korhonen 20 Nov 23, 2022
    Smart Robot that avoids obstacles and finds a way to move

    ObstacleAvoider Obstacle Avoider is an intelligent device which can automatically sense the obstacle in front of it and avoid them by turning itself.

    IEEE VIT Student Chapter 14 Oct 2, 2022