Last Updated: Mar 8, 2023


What is enables the automation of entire complex business processes and empowers your teams to do what they do best - innovate, but faster. uses bots to automate repetitive tasks and schedules the tasks to run at a specific time with minimum or no human intervention. It is an advanced robotic process automation (RPA) web-based solution with integration of Artificial Intelligence (AI), Machine Learning (ML), Natural Language Processing (NLP), Analytics, and cognitive automation capabilities with Human-in-the-loop (HITL).

What is a Bot?

A Bot is equivalent to a full-time employee. Once started on a machine, it performs any number of tasks assigned to it. Technically, it is the Service that runs on a Windows machine to manage all the executions at the Client side. This assists in executing the tasks involving User Interface (UI) applications like Web, Desktops, SAP, Mainframe, Excel, Java, PuTTY applications, and few non-UI tasks like email, document processing, etc.
The communication happens between the bot and core server using gRPC with SSL/TLS (Secure Sockets Layer/Transport Layer Security) which ensures communication security over a network. gRPC is a Remote Procedure Call developed by Google. It enables client and server applications to communicate transparently and makes it easier to build connected systems.

How does Work? Components

The Bots establish a connection between the Client and the Server and execute the tasks. The database stores all the crucial information like the bot execution results, bot tasks/scripts, a repository of UI elements, and reusable components.

The Browser acts as an interface for the user to design, execute, and view the automation processes. Google Chrome is the supported/recommended browser for Server is installed in a Linux environment for hosting the application files, logs, and folders. The following are the key components of Server:

  • Core server: The Core engine enables automation across various applications. The Core module is used for designing and executing the tasks. The Execution engine in the Core server handles the task execution. It allows the designer to schedule the tasks to execute at a specific time. The user can define the Bot Clusters within the core to execute the task. Each block of steps inside a task could be picked by any of the bots in the bot cluster. This enables huge scalability and robustness in case of bot failures. It contains the execution details that include input, output, and a screen capture of each step (node) in the task execution. During the task design, the user may need to record the UI elements on the application to be automated. For this, the UILearn module is used. The familiarised/recorded UI element controls are stored in the database.
  • Cognitive server: It enables the bots to do self-learning using historical data that is captured dynamically. It uses technologies such as natural language processing, image processing, pattern recognition, and most importantly contextual analyses (to make more intuitive perceptions and judgments). For example, during document processing, the critical information from the PDFs is identified and extracted automatically by the application of ML (Machine Learning) models.
  • Analytics engine: It handles data visualization and processing. It allows the users to create Presentations. A Presentation is a graphical representation of data for the business user as per the requirement. Windows Client application is installed in the client machine (Windows desktop/Windows server/VDI). client includes Bot Manager and two types of bots namely Developer bots and Execution bots.

  • Developer bot: It is started from Bot Manager using username and password. Developer bots allow familiarization of any application using the floating window of UILearn and execute the tasks from the design canvas (Trial Run). Multiple bots cannot run at the same time from the same user.
  • Execution bot: uses the IP address and the available port to create execution bots based on the Windows machine name. Multiple execution bots can be run at the same time.
  • Bot Manager: The Jiffy Bot Manager is used to manage the developer bot in a machine.
  • Secure Vault: Used to store sensitive information which needs to be provided during the task execution process. All secure data is stored in the Vault as keys. Vault encrypts these keys before writing them to persistent storage. Secure vault variables are also maintained at an App level and the scope is limited to an App.

The Database is the most critical component which stores the information like the bot execution results, bot tasks/scripts, a repository of UI elements, and reusable components. has its own instance of MongoDB and PostgresDB which enables the processing of high-volume data required for cognitive/ML processing. Information is not stored in the bot machine or on the designer machines but only in the database.

Did you find what you were looking for?