Corporate Website

Are you looking to programmatically control the mouse & keyboard?

admin 23rd, January, 2019
Are you looking to programmatically control the mouse & keyboard?

Automation is the buzz word these days, helping organizations save their resources and money spent on repetitive tasks, eventually leading to cost-effective operations and better resource utilization. In its simplest form of application, automation may be defined as the practical implementation of technology to control operating equipment and processes. In its advanced form, automation is a working technology that analyzes the input and acts accordingly to yield the desired output. The level of analysis and corresponding action identifies the extent of complexity involved which helps reaching out to a particular technology for making something Automated!

Python programming language is one of such technologies that can be used to automate rule-based tasks, which are repetitive in nature. PyAutoGUI, a Python based cross-platform module, helps developers to integrate different technologies for performing a rule-based task. Let’s have a look at the project handled by team recently. In brief lets discuss about the problem, solution & benefit to the client.

Problem Statement

Shipment downloading is a rule-based task which is normally performed using a dedicated group of human resources who first analyzes the shipment emails and then connects to client server to transfer concerned data from a pool of data resources. In modern business setups, vendors may receive such emails continuously from different clients at any time of the day: be it morning, evening, daytime or night, and instant action over these mails is a business necessity. Traditionally, employees need to read content of such emails and list out files, based on certain rules, to be downloaded using FTP. They then manually open the FTP and connect to the client server to download specific files. The anytime receipt of shipment emails results in a long list of emails queued up for processing by human resources during their working hours, thereby making it a resource intensive exercise.

Our client was also witnessing significant human resource utilization just to get the files transferred from the client server. These files were then forwarded to different business processes within the organization to carry on the actual processes they were involved in.

Solution using PyAutoGUI

We programmed a script in Outlook VBA which looks into all incoming emails with a specific subject. The script creates a text file of email contents and triggers a BOT which is developed using PyAutoGUI. BOT gets the list of files to be downloaded based on certain rules and automatically connects to client-server. After connection with client-server, BOT searches files to be downloaded and downloading starts in a specific folder at a given local machine. As these files are normally big in size (GBs), BOT creates multiple connections with the server to download multiple files at same time.

Technology Used:

  • Outlook – Microsoft Visual Basic for Applications
  • Python
  • Python Libraries
    • PyautoGUI
    • Pyinstaller
  • Flask – It is for the user interface for updating the information.
  • Mongo DB – Log all details for each process.

The BOT designed is successfully working and have brought this “downloading per the emails” activity completely under its ambit. This automation has saved resource time and effectiveness of delivery increased by 20%.

Would you like to increase your process effectiveness and efficiency? Please send us email on info.ssb@idsil.com , we are happy to help.

  • Client
  • Client
  • Client
  • Client
  • Client
  • Client