Automation Anywhere - IQ BOT

05/03/2019 Automation Anywhere IQ Bot     Automation Anywhere - Contents  Contents IQ Bot Release Notes Version 6.0.

Views 324 Downloads 2 File size 6MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

05/03/2019

Automation Anywhere IQ Bot

    Automation Anywhere - Contents 

Contents IQ Bot Release Notes Version 6.0....................................................................................................................................5 New Features..............................................................................................................................................................5 Changed Features..................................................................................................................................................... 6 Bug Fixes......................................................................................................................................................................6 Upgrade Considerations..........................................................................................................................................6 Known Limitations..................................................................................................................................................... 7 IQ Bot architecture overview........................................................................................................................................... 8 Architecture diagram................................................................................................................................................8 Communication diagram........................................................................................................................................ 8 Protocol specifications............................................................................................................................................ 9 Ports and services................................................................................................................................................... 10 Logs for IQ Bot components...............................................................................................................................11 Credentials................................................................................................................................................................. 12 Using IQ Bot..........................................................................................................................................................................13 Log onto IQ Bot portal..........................................................................................................................................15 Dashboard..................................................................................................................................................................16 My Totals Area.............................................................................................................................................16 My Learning Instances Area.....................................................................................................................16 Performance Report Page........................................................................................................................17 Instance Totals and Processing Results............................................................................................... 18 Classification Results..................................................................................................................................19 Accuracy Results......................................................................................................................................... 19 Validation Results........................................................................................................................................ 19 Learning Instances..................................................................................................................................................20 Learning Instance: View Details Page...................................................................................................21 Summary Tab............................................................................................................................................... 21 Groups Tab...................................................................................................................................................23 Learning Instance Work flow.................................................................................................................. 23 Tasks Performed in the Learning Instances Page............................................................................. 25 Upload Documents to a Learning Instance....................................................................................... 30 Download a Document from a Learning Instance...........................................................................33 Bots............................................................................................................................................................................. 34 Start Training in Designer..................................................................................................................................... 37 Left Panel in Designer.............................................................................................................................. 38 Resizing Selected Mapping Area............................................................................................................38 Map a Document Group......................................................................................................................... 39 Map a Field...................................................................................................................................................39 Map a Table................................................................................................................................................. 39 Validate...........................................................................................................................................................41 Preview Extracted Data............................................................................................................................ 48 Common Fields Across Multiple Document Groups.......................................................................49 Next Group.................................................................................................................................................. 50 Document Validation............................................................................................................................................. 50 Open the Validation Page....................................................................................................................... 50 Launch the Validator Window.................................................................................................................51 Validate a Document with Errors...........................................................................................................51 Mark a Document as Invalid................................................................................................................... 53 Edit File Name and Contents of IQ Bot Archive (IQBA) File.......................................................... 53 User roles and permissions..................................................................................................................... 53

©

2019 Automation Anywhere. All rights reserved.    ii

    Automation Anywhere - Contents  Using IQ Bot Frequently Asked Questions...................................................................................................... 54 Validator FAQs.............................................................................................................................................59 Classifier FAQs............................................................................................................................................ 60 Tips and Tricks......................................................................................................................................................... 61 Export and Import Learning Instances Using Migration Utility...................................................................63 Export a Learning Instance......................................................................................................................63 Import a Learning Instance..................................................................................................................... 64 Import Options............................................................................................................................................65 Incompatible Learning Instance Detected..........................................................................................68 Edit File Name and Contents of IQ Bot Archive (IQBA) File.......................................................... 68 Validator Audit Logs............................................................................................................................................... 69 Improve Output Quality Using OCR Confidence......................................................................................... 69 Prevent Automatic Copying of Documents to Staging............................................................................... 70 Adding multi-language support...........................................................................................................................70 Errors Generated While Editing Learning Instances...................................................................................... 73 IQ Bot Use Cases....................................................................................................................................................73 Installing IQ Bot....................................................................................................................................................................81 IQ Bot installation prerequisites.......................................................................................................................... 81 Installing IQ Bot in express mode..................................................................................................................... 83 Installing IQ Bot in custom mode..................................................................................................................... 85 Installing IQ Bot in cluster mode.......................................................................................................................88 Installing IQ Bot in the cluster mode on Amazon EC2...............................................................................90 Registering IQ Bot with Control Room........................................................................................................... 90 Generate Authorization Token............................................................................................................................ 91 Upgrading and downgrading IQ Bot................................................................................................................ 92 Uninstalling IQ Bot................................................................................................................................................. 92 Frequently asked questions..................................................................................................................................93 Healthcheck API response in case RabbitMQ fails to start.........................................................................94 Configuring IQ Bot with HTTP and HTTPS................................................................................................... 95 Creating a user with an IQBotValidator, IQBotServices,and IQBotAdmin role in Enterprise Control Room.................................................................................................................................................... 97 Re-installing HTTPS SSL certificate for secure communication when it expires...................................98 Creating a self-signed certificate with Subject Alternative Name (SAN).................................................. 99 Databases................................................................................................................................................................ 100 User roles and permissions................................................................................................................................ 101 IQ Bot Use Cases................................................................................................................................................. 102 Troubleshooting IQ Bot................................................................................................................................................... 110 IQ Bot Trial quick start guide.........................................................................................................................................128 Registering as an IQ Bot user........................................................................................................................... 128 Prerequisites for using IQ Bot...........................................................................................................................128 Creating a learning instance with English invoices..................................................................................... 129 Training groups in a learning instance........................................................................................................... 130 Adding a new table field..................................................................................................................................... 131 Exporting data to a CSV file.............................................................................................................................. 132 Useful tips................................................................................................................................................................ 132 FAQs.......................................................................................................................................................................... 133 IQ Bot Community Edition Quick Start Guide..........................................................................................................138 Get started with IQ Bot...................................................................................................................................... 138 Register to use the Community Edition.........................................................................................................138 Create a learning instance................................................................................................................................. 138 Train your learning instance.............................................................................................................................. 139 Export data to a CSV file....................................................................................................................................140 Set learning instance to production................................................................................................................140

©

2019 Automation Anywhere. All rights reserved.    iii

Use IQ Bot in RPA................................................................................................................................................140 FAQs for Community Edition............................................................................................................................ 142 Index...................................................................................................................................................................................... 146

    Automation Anywhere - IQ Bot Release Notes Version 6.0

IQ Bot Release Notes Version 6.0 This Release Notes for IQ Bot 6.0 describes new features, enhancements, and bug fixes, and known limitations resolved in this release. Related reference New Features Changed Features Bug Fixes Upgrade Considerations Known Limitations

New Features •

• •



Enterprise Control Room Version 11.3.1.1, compared with Version 11.3.1, has an updated SDK dependency. IQ Bot 6.0.1 has an updated SDK to be compatible with Enterprise Control Room Version 11.3.1.1. Wizard for Learning instance Training: improved user interface facilitates users to train bots sequentially in the order of document group importance. Web-based Designer: simplifies the process of training bots on sample documents, mapping field labels and values (such as: Invoice Date: 2018/11/30), and testing other sample documents in the group that the bots had not seen yet. Extraction Preview: simulates the results of document data extraction so users can verify whether trained bots addressed the use case.



Web-based Validator: handles error exceptions faster and in a seamless manner from a web application through Robotics Process Automation (RPA) that uploads documents to IQ Bot.



IQ Bot Registration with AAE Control Room 11.3: leverages stronger security features, as IQ Bot 6.0 and AAE Control Room 11.x are integrated.



Control Room Single Sign-on integration and authentication: helps you to open the IQ Bot Portal directly if you are already logged into AAE Control Room using Single Sign-on. IQ Bot users can now be authenticated by AAE Control Room, leveraging its user management, roles, and permissions.



Administrator Access to the Domain Management Utility: uses this utility to take downloads of new domains from the Bot Store, and allows quick import of these new domains into IQ Bot. Reduces setup time for new use cases.

Related concepts IQ Bot Release Notes Version 6.0 This Release Notes for IQ Bot 6.0 describes new features, enhancements, and bug fixes, and known limitations resolved in this release. Related reference Changed Features Bug Fixes Upgrade Considerations Known Limitations

©

2019 Automation Anywhere. All rights reserved.     5

    Automation Anywhere - IQ Bot Release Notes Version 6.0

Changed Features • •

Admin Access to the Migration Utility: Migration Utility is now exclusive to administrators and can be accessed from the Administration tab. Auto-correction in Validator: The auto-correction of values in Validator using machine learning is discontinued in IQ Bot 6.0. An enhanced feature replacing this feature is planned in a future release.

Related concepts IQ Bot Release Notes Version 6.0 This Release Notes for IQ Bot 6.0 describes new features, enhancements, and bug fixes, and known limitations resolved in this release. Related reference New Features Bug Fixes Upgrade Considerations Known Limitations

Bug Fixes •

Text segmentation: Blue boxes that enclose text on documents are generated the same in staging and production environments. For example, the blue boxes generated around System Identified Regions (SIRs).

Related concepts IQ Bot Release Notes Version 6.0 This Release Notes for IQ Bot 6.0 describes new features, enhancements, and bug fixes, and known limitations resolved in this release. Related reference New Features Changed Features Upgrade Considerations Known Limitations

Upgrade Considerations •

RabbitMQ port conflict occurs while upgrading from AAE Control Room 10.x to 11.3 and IQ Bot from 5.3 to 6.0: While upgrading IQ Bot 5.3 to 6.0, the port used by RabbitMQ in IQ Bot 5.3 may conflict with AAE Control Room 11.3, as 11.3 uses message queue with the same port. As a workaround, first install IQ Bot 6.0 and then install AAE Control Room 11.3.

Related concepts IQ Bot Release Notes Version 6.0 This Release Notes for IQ Bot 6.0 describes new features, enhancements, and bug fixes, and known limitations resolved in this release. Related reference New Features Changed Features

©

2019 Automation Anywhere. All rights reserved.     6

    Automation Anywhere - IQ Bot Release Notes Version 6.0 Bug Fixes Known Limitations

Known Limitations • •

• •

• • • •

Browser compatibility: IQ Bot 6.0 currently works on Chrome browser only. Minimum configuration: IQ Bot works slowly with the minimal configuration of Quad core, 16 GB. Workaround: Use the optimum configuration of Octa core, 16 GB RAM machine because Bot Insight services on AAE Control Room 11.3 consume a lot of memory, require a lot of CPU cycles, and slow down IQ Bot. HTTPS installations: Integration of AAE Control Room with IQ Bot requires additional manual steps for HTTPS installations. Missing application registration message using HTTP and HTTPS: The error message to register IQ Bot application is not displayed and a blank screen is displayed when you try to access IQ Bot by entering /IQBot after the Control Room URL. For example, https:// Event Viewer > Windows Logs.

©

“****” Random string generated by installer at runtime.

2019 Automation Anywhere. All rights reserved.     11

    Automation Anywhere -  IQ Bot architecture overview FileManager Service

FileManager.log

%public%/ Documents \Automation Anywhere IQBot Platform\Logs

Project Service

ProjectService.log %public%/ Documents \Automation Anywhere IQBot Platform\Logs

Report Service

Reports.log

%public%/ Documents \Automation Anywhere IQBot Platform\Logs

Validator Service

Validator.log

%public%/ Documents \Automation Anywhere IQBot Platform\Logs

VisionBotEngine Service

VisionBotWorker.log%public%/ Documents \Automation Anywhere IQBot Platform\Logs

VisionBot Manager

VisionbotService.log %public%/ Documents \Automation Anywhere IQBot Platform\Logs

Machine Learning

• •

%public%/ MLTranslationService.log MLWebService.log Documents \Automation Anywhere IQBot Platform\Logs

Credentials IQ Bot relies on Control Room authentication and does not store any user credentials. All the credentials stored by IQ Bot are encrypted with AES256 encryption algorithm

©

2019 Automation Anywhere. All rights reserved.     12

    Automation Anywhere - Using IQ Bot

Using IQ Bot IQ Bot automates business processes that rely on semi-structured or unstructured data hidden in electronic documents, images, emails, and more. IQ Bot leverages computer vision and multiple AI techniques to intelligently digitize and extract data.

Overview Traditional automation cannot access the majority of company data and information. Knowledge workers struggle to find the right information to feed business processes. Large variations in document formats and the highly unstructured nature of communications, like emails and instant messages, pose challenges for automation. IQ Bot is cognitive automation that can be taught by humans to uncover and transform required but hidden or 'dark' data that is used to automate business processes faster and more efficiently while simultaneously eliminating human error.

IQ Bot continues to learn from human corrections, effectively becoming smarter and more accurate over time.

Who uses it? People who create and configure automation tasks and deploy task bots also create IQ Bot learning instances, deploy the learning instances from staging to production environments, and then correct documents with exceptions. A services user is an automation expert who creates automation tasks, and creates and deploys task bots. A validator is a type of user who uses a visual interface to manually verify and/or fix data extraction from a document. These are the primary user roles for IQ Bot.

©

2019 Automation Anywhere. All rights reserved.     13

    Automation Anywhere - Using IQ Bot Users should also have a working knowledge of: • • • • • • •

Common administrative tasks of Automation Anywhere Control Room Differences between structured, semi-structured, and unstructured documents Standard fields in an semi-structured or unstructured document, such as Invoice Number, Invoice Date, and others General automation commands in Automation Anywhere Enterprise Internet information services How to start and stop web services How to block and unblock ports

How does it work? 1.

Create learning instance and upload sample documents.

2.

Once the documents are uploaded and analyzed, a report shows you important insights about your sample documents like which ones are similar and can be grouped together, which of the groups are likely to return all required fields, and which groups you should use to create and train bots.

3.

After the sample documents are analyzed, you train a bot by mapping required fields and setting validation rules for a document in a group that best reflects the documents in that group. When the bot is deployed in production, it processes all documents that are identified to be a part of this group.

4.

After bot training, set the learning instance as ready for production, and then use the bot command to upload documents to production environment for processing.

5.

Any documents that do not complete straight-through processing because of field extraction or rule related issues require human validation.

6.

Throughout the process, you use the dashboard to monitor the progress of the production instances.

Bots share domain configurations to save time during design phase. You improve IQ Bot accuracy during a pre-production training phase, when you check overall bot accuracy, and improve bot design. Corrections you make in the training phase teach the learning system so that similar errors are avoided in the future.

Features and Benefits • •

Simplifies the process of training the learning instance using the wizard for learning instance training in a sequence of importance on the web-based Designer. Helps you to easily download new domains from the Bot Store and reduces set up time for new use cases using the Domain Management utility.

©

2019 Automation Anywhere. All rights reserved.     14

    Automation Anywhere - Using IQ Bot • • • • •

Helps you to open the IQ Bot Portal directly if you are already logged on to Control Room with the Single Sign-on feature. Leverages stronger security features of Enterprise Platform as part of integration with IQ Bot 6.0. Handles exceptions faster and seamlessly using the web-based validator. Helps verify whether training provided to the learning instance is correct using the preview of the results of data extraction. Analyzes data using semantic analysis and automated classification through learning algorithms to extract data accurately and to categorize document types and formats, such as invoices, purchase orders, and bills • • • •

• •

Auto-detection of field values after field mapping Ability to auto-correct exceptions based on human expertise Built-in mechanism to flag exceptions based on confidence levels Cross-field mapping rules and field collision resolution

Leverages the latest computer vision technology to more accurately digitize documents than traditional OCR technology. More the 25 languages supported including English, French, German, Italian, and Spanish.

Related concepts Dashboard View IQ Bot performance report in real-time on dashboard. Learning Instances View a summary of all Learning Instances and their details in a tabular format on the My Learning Instances page. Bots The Bots page of the IQ Bot Portal lists the bots for an instance and allows you to perform tasks, such as run, change the status, or launch the IQ Bot Designer for the bot. Related tasks Registering IQ Bot with Control Room Find out how to register IQ Bot with Control Room.

Log onto IQ Bot portal Learn how to log into the portal, where you access your dashboard, and manage IQ Bots and learning instances through an easy-to-use interface. IQ Bot must be registered with Control Room. IQ Bot becomes accessible only when the registration is successfully completed. The Single Sign-on feature also helps you to log into IQ Bot. 1.

2.

Enter the IQ Bot URL in your browser window: http(s)://IQBotURL/. Alternatively, access IQ Bot using this URL: https://ControlRoom-URL/IQBot/. The Control Room login screen is displayed. Enter your valid IQ Bot credentials. The user is redirected to the IQ Bot URL: http://IQBoturl after successful authentication. Using the Single Sign-on feature, you can open the IQ Bot Portal without logging into IQ Bot again if you are already logged on to Control Room. Note: An authorization token is required to perform any task on IQ Bot. For more information on generating an authorization token, see Generate Authorization Token.

©

2019 Automation Anywhere. All rights reserved.     15

    Automation Anywhere - Using IQ Bot

Dashboard View IQ Bot performance report in real-time on dashboard. The report displays when you log in to IQ Bot Portal. It graphically summarizes the performance report and provides document processing information, such as document classification, straight-through processing (STP), accuracy, and human validation to inform actions for a specific Learning Instance so that you can focus on the areas that needs your attention. The IQ Bot Portal dashboard is divided into two areas, My Totals and My Learning Instances.

My Totals Area This area of the dashboard displays the state of all Learning Instances in the production environment.

You can view the following information for Learning Instances that are in the My Totals area. • • •

Files Processed: is the total number of files uploaded against a learning instance, which are in the production environment. Straight-through processing (STP): is the percentage of total number of uploaded files that have been successfully processed without manual intervention. Accuracy: is the field accuracy, which is a percentage value of fields that have been accurately identified (fields whose Optical Character Recognition confidence levels exceed the confidence threshold that you set).

My Learning Instances Area This area of the dashboard displays detailed information for all Learning Instances, which are in the Staging and Production environment.

©

2019 Automation Anywhere. All rights reserved.     16

    Automation Anywhere - Using IQ Bot

You can view the following information for Learning Instances that are in the Staging environment. • • • •

The name of the Learning Instance. The domain or type of documents, such as invoices and receipts. The number of documents in the Learning Instance. A graphical representation showing in detail the percentage of trained documents.

In addition to the above, you can also view the following information for Learning Instances that are in the Production environment. • • •

The number of files processed. Straight-Through Processing (STP), which is the percentage of files that have been successfully processed without manual intervention. The Field accuracy in percentage.

Performance Report Page The Performance report page displays the details of an Instance in the production environment. To view the Performance Report page, click the Production button for Instances in the production environment. This is displayed in the following figure. Note: The Performance Report page is not available for Learning Instances that are in the Staging environment.

©

2019 Automation Anywhere. All rights reserved.     17

    Automation Anywhere - Using IQ Bot

The top right corner of the Performance Report page displays the percentage of bots trained for the Learning Instance. Cathy has uploaded 10 documents and has created three bots for the Learning Instance – Bot1, Bot2, and Bot3. Of these, three documents are a part of Bot1, four documents of Bot2, and three documents of Bot 3. When Cathy sets Bot1 into the Production environment, the label displays 33% as the percentage of bots trained for the Learning Instance, which means that 3 out the 10 (33%) uploaded documents (for Bot1) have been trained.

Instance Totals and Processing Results The Instance Totals and Processing Results area display the following information for the Learning Instance. • • • • • •

The number of files uploaded for the Learning Instance – that is, the total number of files uploaded and candidate to be processed. The number of files processed for the Learning Instance - that is, the number of files that were processed by a bot. The number of files successfully processed for the Instance – that is, files that were successfully processed by a bot without human intervention. The number of files sent to validation for the Learning Instance – that is, the files flagged with one or more errors that need human intervention for review. The number of files validated for the Instance – that is, the number of files that were human-reviewed and have been saved. The number of files marked as invalid for the Learning Instance – that is, the number of files that were human-reviewed and marked as invalid.

©

2019 Automation Anywhere. All rights reserved.     18

    Automation Anywhere - Using IQ Bot

Classification Results The Classification area gives a statistical representation of the type of fields that have been identified in a graphical manner. As an example, in the following figure, the Invoice number field was successfully found in 60% of the documents for the Learning Instance.

Accuracy Results The Accuracy area gives a statistical representation on the accuracy of the type of fields identified in a graphical manner. As an example, in the following figure, the Invoice number field was accurately found in more than 80% of the documents for the Learning Instance.

Validation Results The Validation area provides the following information. •

A statistical representation of the corrections made to individual fields during the process of validating a document. As an example, in the following figure, about 2% of Invoice Number fields were corrected by a human.



" A statistical representation of the average time spent to validate a group. As an example, in the following figure, about 6.5 minutes were spent in correcting a document in the Group_26 group.

©

2019 Automation Anywhere. All rights reserved.     19

    Automation Anywhere - Using IQ Bot

Learning Instances View a summary of all Learning Instances and their details in a tabular format on the My Learning Instances page. Click on any Learning Instance or the icon to view a summary of all learning instances and their details in the Summary tab. The Groups tab shows the learning instance group(s), the documents are categorized into.

The Instances table displays the following details created for each Learning Instance. Note: If a Learning Instance is in the staging environment, the details of the training are displayed. If a Learning Instance is in the production environment, the details from the production are displayed. • • • • • • • •

Instance Name: The name of the learning instance. # of IQ bots: The number of IQ Bots created for the Learning Instance. # of Files: The number of files/documents uploaded for the Instance. Accuracy %: Displays the percentage of fields that have been accurately identified across all bots in the learning instance. Training %: Displays the percentage of files trained by bots. Actions button: Allows you to change the environment of the Learning Instance from Production to Staging and vice versa. View learning instance details Icon: Takes you to the Summary tab and displays learning instance details. Launch Validator Icon: Launches the Validator window so that you can fix any issues that a bot could not automatically resolve. For more information, see Document Validation.

Note:

©

2019 Automation Anywhere. All rights reserved.     20

    Automation Anywhere - Using IQ Bot 1.

When you log into IQ Bot for the first time, the No current learning instances message is displayed. Click Create One Now button to create your first Learning Instance.

2.

If you have created bots in a prior version of IQ Bot, such as: version 5.2 or 5.3, uninstalled, and then installed IQ Bot version 6.0, all the bots from your previous IQ Bot version are displayed in your updated IQ Bot version.

Related reference Learning Instance: View Details Page Summary Tab Groups Tab Learning Instance Work flow Tasks Performed in the Learning Instances Page Upload Documents to a Learning Instance Download a Document from a Learning Instance

Learning Instance: View Details Page When you click the View Details page displays as follows:

icon in the Learning Instances page, the Learning Instances details

The [Learning Instance Name] > View Details is divided into the following areas. • •

Summary tab Groups tab

Related reference Summary Tab Groups Tab

Summary Tab To view the summary of a Learning Instance, click the name of a Learning Instance from the Instances table, as shown in the following screenshot:

©

2019 Automation Anywhere. All rights reserved.     21

    Automation Anywhere - Using IQ Bot

The Learning Instance area displays the name of the learning instance with a label displaying its current environment. General section displays the following information: • • • •

Environment: Whether the Learning Instance is in the staging or production environment. Domain: The domain of the Learning Instance, such as Invoices, Purchase Order, Claims, or Bills. Language: The primary language of the Learning Instance, such as English, Italian, or German. Last modified: The last modification time for the Learning Instance.

Staging Results section displays the following information: • • • • • • • •

Groups found: The number of groups found for the Learning Instance. Tested Files: The number of tested files in percentage. Bots created: The number of bots created for the Learning Instance. Success: The count of successfully tested files in the Staging environment. Documents Unclassified: The number of unclassified documents. Failed: The count of files tested in the Staging environment. Accuracy: Percentage of fields that are accurate and not flagged as an error in the Learning Instance. STP: Straight Through Processing is the percentage of uploaded files that have been successfully processed without manual intervention.

Production Results section displays the following information: • • • • • • • • •

Groups found: The number of groups found in the staging environment. Processed Files: The number of documents successfully processed in the production environment for the Learning Instance in percentage. Bots in Production: The number of bots sent to the production environment. Success: The count of successfully processed in the production environment for the Learning Instance. Documents Unclassified: The number of documents not classified into a group. Invalid: The number of documents in production whose data extraction is reviewed by humans and marked as invalid. Pending review: The count of the number of files pending for review. Accuracy: Displays the combined OCR accuracy of the Learning Instance in percentage. This is calculated based on each Bot processing. STP: Straight Through Processing is the percentage of uploaded files that have been successfully processed without manual intervention.

©

2019 Automation Anywhere. All rights reserved.     22

    Automation Anywhere - Using IQ Bot

Groups Tab The Groups tab displays a list of the document classification groups for the learning Instance in a tabular format. When you create an Learning Instance and upload files, the files are categorized based on their content and classified accordingly. These are termed as classification groups.

You can view the following details for a Learning Instance: • • • • •

Name: Name of the group. In use by: Name of the user. # of Training Files:Number of files in the group. Training Success: Successfully processed on a bot to run during the staging state of the bot. Training Unprocessed: Number of unprocessed (or unclassified) documents for the group. Note: Unique case in which a document in production leads to a new group, and that new group had no document from staging.

• • • •

# of Production Files: Number of files in the production environment for the group. Production Success: Number of files successfully processed to the production environment. Production Unprocessed: Number of unprocessed (or unclassified) documents to the production environment. Priority: Priority of the group. This allows you to choose which classification group is more important, so that you can train a bot for the group first. The groups are classified using a priority value, that is calculated using the number of documents and the percentage of fields found in each document. Tip: Move your mouse over an item in the Priority column to view a quick summary of the individual percentages of fields found across documents classified within that group.



IQ Bot: Allows you to create and train a bot or edit an existing bot for the group.

Learning Instance Work flow The work flow of a Learning Instance is divided into two environments – Staging and Production.

©

2019 Automation Anywhere. All rights reserved.     23

    Automation Anywhere - Using IQ Bot

Related reference Summary Tab Groups Tab

Staging Environment Staging is a demo environment which gives you the opportunity to gain hands-on experience of the IQ Bot Portal work flow. Staging lets you test and improve the accuracy before it is deployed in the production environment. Data in the staging environment is not displayed in the Production Dashboard. The following are primary purpose of staging environment: • •

provides a high-level view before you go-live with bots, giving the opportunity to make improvements along the way before commiting your training to the production environment contains reporting data into a working-area (staging environment) so it does not interfere with reporting data that are in the production environment

Perform the following tasks in the Staging Environment: •

Classify/Analyze The sample documents uploaded at the time of creating a Learning Instance are analyzed in this phase. Besides this, the different types of documents are clustered into separate groups based on their similarities. This stage also allows you to identify the most significant groups so that you can focus on creating Bots. The significance of a group is not only based on the number of documents but also on the capability of the system to find the defined fields and the quality of the document.



Design/Create Bots



Design Bots for the most significant groups, based on the fields defined at the time of creating an Instance. Train Bots



Each Bot is trained on a single document and evaluated on other documents from the same group. Train the Bot to extract the correct field data from the document sets, and run the bot against all available sample documents to determine the STP and accuracy to gauge if the training has been effective. Make Bots Production-ready

©

2019 Automation Anywhere. All rights reserved.     24

    Automation Anywhere - Using IQ Bot Once you are satisfied that the required bots have been created (to process the targeted groups) and think that the Learning Instance is now ready to process the actual larger sets of documents, move the Learning Instance to the Production environment.

Production Environment This is a live environment where an Learning Instance is set into operation with actual business documents uploaded from a bot. Here, the Learning Instance uses the same bots that were created in the Staging environment, but is executed on actual business documents uploaded against it from a task bot Perform the following tasks in the Production environment: 1.

Upload documents from Automation Anywhere Enterprise to IQ Bot.

2.

IQ Bot processes documents, which can result in successful processing end to end, or unclassified processing.

3.

A person can validate these documents that are automatically flagged with error exceptions or mark the document as invalid and later export the output to CSV.

4.

Humans can leverage their structured CSV output from IQ Bot for the next part of their automation process.

Tasks Performed in the Learning Instances Page You can perform the following tasks in the Learning Instances page. • • • • • • • •

Create a Learning Instance View details of a Learning Instance Train a Learning Instance Edit a Learning Instance Delete a Learning Instance Create and edit bots Set a Learning Instance from Staging to Production Search for a Learning Instance

Related reference Create a Learning Instance View Details of a Learning Instance Train a Learning Instance Edit a Learning Instance Delete a Learning Instance Create and Edit Bots via Learning Instance Summary Tab Set a Learning Instance from Staging to Production Search for a Learning Instance

Create a Learning Instance To create a new learning Instance, perform the following steps. 1.

Click the New Instance button. The Create new learning instance page appears.

©

2019 Automation Anywhere. All rights reserved.     25

    Automation Anywhere - Using IQ Bot

2.

On the Create new Learning Instance page, do the following. • • •



Instance name: Type a name for the Learning Instance. Description(optional): Type a description for the Learning Instance. Domain: Select the document type – the options available are Invoices, Claims, Purchase Orders, Billing Statement, Contract, Automobile Insurance Claim, Health Insurance Claim (1500), Health Insurance Claim (UB04), and Other. When you select a document type, a pre-defined set of form fields and table fields for the document are displayed. As an example, the Invoices option is selected in the following figure and the standard forms and tables of an invoice are displayed. Upload files from: Click the Browse button to upload the documents you want to classify and train for the instance. Note: You can upload a file of maximum 150 MB size when creating a Learning Instance. You can add other documents even after the Learning Instance is created.



Primary language of files: Select the language of the Learning Instance from the drop-down menu. Note: Multi-language aliases in IQ Bot Portal come as a template. If you want more aliases added to the taxonomy for your installation, it must be customized depending on your specifications. Please contact Services for customized work. In the Standard form fields and Standard table fields sections, you can add these standard fields.

3.

To add additional fields, type the name of the field in Other fields (Optional) and click the Add As Form button or the Add As Table button.

©

2019 Automation Anywhere. All rights reserved.     26

    Automation Anywhere - Using IQ Bot Note: You must follow the following naming conventions when you type the name of the field in the Other fields (Optional) field: • • •

Field Name can only start with alphabets (A-Z and a-z). Field Name can only include Numbers and alphabets and spaces. Field Name cannot end with a space.

Note: Adding duplicate fields through custom fields is not allowed. 4.

Click the Create instance and analyze button to create the Learning Instance. The system analyses the Learning Instance and displays the details in the Learning Instance > Summary tab. Your next step would be to begin training the Learning Instance you just created.

Tip: Besides image formats, such as TIFF, JPG, and PNG files, you can also upload PDF, Vector, Raster, and Hybrid (Vector and Raster) documents for classification and analysis. When analyzing the Learning Instance, the system performs the following tasks: • • • • •

Document classification Semantic analysis Alias learning Pattern Recognition Data Extraction

Note: Once an Learning Instance is created, you cannot add, remove, fields but can change the status of fields to Required or Optional. As soon as you create a new Learning Instance, it enters the staging environment and the View Details page appears. You are now ready to train the IQ Bot.

View Details of a Learning Instance View details of a learning instance, from the Learning Instance screen in any of the following ways: • •

Click the learning instance to display details in the Summary tab Click the View Instance details icon next to a learning instance of your choice to display details in the Summary tab

Train a Learning Instance To begin training bots to digitize and extract data from documents in a Learning Instance, click the Start Training button.

©

2019 Automation Anywhere. All rights reserved.     27

    Automation Anywhere - Using IQ Bot

The IQ Bot Designer displays each document group for you to train and in the order of importance. When you click on a field in the training area to the left, the mapped field and its value displays. You can validate the field and its value in the document displayed to the right of your screen. The highlighted fields in the screenshot below displays this. If the mapped field value is non-empty, the Designer displays a green check next to the mapped field in the training area.

Edit a Learning Instance After creating a Learning Instance, you might want to change the description or add additional training documents to the learning instance or include additional fields for extraction. Note: You can only edit Learning Instances, which are in the staging environment. To edit instances in the production environment, set the Learning Instance to the staging environment first. To edit a learning instance: 1.

On the Learning Instances page, click a Learning Instance of your choice and click the View instance details

icon . The View Details page is displayed.

2.

Click the Edit icon, the Learning Instance is now editable.

3.

Make changes to the description field (optional).

4.

Click the Browse button, select additional training documents (optional).

©

2019 Automation Anywhere. All rights reserved.     28

    Automation Anywhere - Using IQ Bot 5.

Select additional fields/table columns that you wish to add to the learning instance for extraction (optional).

6.

Once done, click the Save icon. A confirmation message is displayed to confirm if any field/table column is added.

7.

Click Yes, Proceed with Filed addition. The selected training documents (if any) are uploaded, analyzed, classified and added to the existing Learning Instance.

After you successfully edit a learning instance to add additional fields for extraction, these fields become available in all the bots, as optional fields. The bots need to be retrained to successfully extract these fields. The classification of documents of a Learning Instance remain unaffected by the newly added fields. To refer to the errors generated while editing learning instances, see Errors Generated While Editing Learning Instances.

Delete a Learning Instance After creating a Learning Instance, you can use the Learning Instances page to delete a Learning Instance from the View Details page. Note: You cannot delete a Learning Instance that is in the production environment. 1.

On the Learning Instances page, click the name of the Learning Instance or click the View Instance Details Icon

to display the Summary tab.

2.

On the details page, click the Edit

3.

To delete the learning instance, click the Delete Instance button. A confirmation message is displayed to confirm.

4.

Type the name of the Learning Instance in the field and click the I understand, please delete button to delete it.

icon. The Learning Instance is available for editing.

Important: Once you delete a Learning Instance: • • •

It is permanently deleted and cannot be restored. All the bots associated to it are deleted and cannot be used again. You will not be able to create a new Learning Instance with a similar name as the deleted learning instance.

Create and Edit Bots via Learning Instance Summary Tab After creating a Learning Instance, you can use the Learning Instances page to create and edit bots for the Learning Instance using the View Details page. Perform the following: 1.

On the Learning Instance.

1.

On the My Learning Instances page, click an instance or the View Instance Details icon to display the instance details in the Summary and Groups tabs.

©

2019 Automation Anywhere. All rights reserved.     29

    Automation Anywhere - Using IQ Bot 2.

On the details page, do the following. • •

Click Start Training button to begin training a Learning Instance. Click Edit icon to edit a Bot for a document group in a Learning Instance.

Clicking the Edit icon lets you upload additional documents and add additional Standard form and table fields. Clicking the Start Training button opens the Designer window and lets you begin training the bot.

Set a Learning Instance from Staging to Production To move the relevant Learning Instance to the Production environment, click the Set instance to production toggle button. When you move a learning instance to the production environment, a confirmation message is displayed. To confirm, click Yes, send to production. When you set a Learning Instance to production, a Production label is displayed next to the name of the Learning Instance. Tip: You can also use the My Learning Instances page to move a Learning Instance to the Production environment.

Search for a Learning Instance The Search area of the Learning Instance page allows you search for learning instances based on the following criteria. • • •

All Fields Environment Instance Name

To search for a Learning Instance, do the following: 1.

In the Search area, select a field of your choice from the All Fields drop-down – All Fields, Environment, or Instance Name.

2.

In the Search field, type the name of the Learning Instance you want to search.

3.

Press Enter. The search results are displayed in the Instances area.

Upload Documents to a Learning Instance You can upload documents to IQ Bot using any of the following methods: • • •

When you create a new learning instance. See Create a Learning Instance. When you edit a learning instance in the staging environment. See Edit a Learning Instance. In the production environment using Automation Anywhere Enterprise Client using IQ Bot lite command.

©

2019 Automation Anywhere. All rights reserved.     30

    Automation Anywhere - Using IQ Bot

Upload documents using Automation Anywhere Enterprise Client 1.

Click File > New in the Automation Anywhere Enterprise Client window, to display the Automate dialog box.

2.

Click Workbench to display the window.

3.

From the Commands panel, select the IQ Bot command and move it to the Task Actions List panel using drag-and-drop. The IQ Bot Upload dialog box displays.

4.

In the IQ Bot Upload dialog box, do one of the following, • •

Name: Select the Learning Instance to upload your document. File Path: Click the browse button to select the learning instance file you want to upload. •

• •

5.

The Output Path area is populated with the name of the learning instance files and path.

Success: This is the physical location on the IQ Bot server where the successfully extracted csv files are stored. Click the Copy button to copy the path to your clipboard. Invalid: This is the physical location on the IQ Bot server where the invalid source files are stored. Click the Copy button to copy the path to your clipboard.

Click Save. The command is added to the Task Action List panel as displayed in the following figure.

Tip: To upload multiple files from a folder, use the Each File In A Folder loop command along with the IQ Bot command and add it to the Task Actions List panel. An example of this task is described in the next section.

©

2019 Automation Anywhere. All rights reserved.     31

    Automation Anywhere - Using IQ Bot 6.

Related reference Upload Multiple Files in a Folder to a Learning Instance

Upload Multiple Files in a Folder to a Learning Instance The following example uses the IQ Bot command along with the Each File In a Folder loop command to upload multiple documents from a local folder to the IQ Bot server. 1.

Move the IQ Bot command from the Commands list to the Task Actions List panel using drag-anddrop. The IQ Bot dialog box is displayed.

2.

Select the Learning Instance to upload your document and click the browse button to select the file you want to upload.

3.

Click the Save button. The IQ Bot command is added to the Task Actions List panel.

4.

For the Source File, the file path can be browsed, or it can contain variables such as: $CurrentDirectory$\$FileName$.$Extension$. Tip: Use the Variable Manager to define the extended parameters.

5.

Move the Each File in A Folder loop command to the Task Actions List using drag-and-drop. The Loop dialog box is displayed.

6.

Click the Browse button, select the folder of your choice, and click the Save button. The Loop command is added to the Task Actions List panel.

©

2019 Automation Anywhere. All rights reserved.     32

    Automation Anywhere - Using IQ Bot 7.

Delete the existing file path item in the File Path field and press the F2 and Fn buttons on a Windows machine. The Insert Variable dialog box displays.

Download a Document from a Learning Instance After you have uploaded documents to a learning instance, some files will be processed while others will not be processed successfully. For documents that process but enter Validator for human review, you have the option to mark the document digitization and extraction as Invalid. Depending on the scenario, you may want to download and and remove these files from the Learning Instance. Copy the paths displayed in the Success and Invalid label of the IQ Bot dialog box to your clipboard.

Use the copied output path for scenarios, such as a variable in the Task Editor. The paths are formatted as follows: Success: \Learning Instance Name>\Success Invalid: \Learning Instance Name>\Invalid Default path: C:\Users\Public\Documents\Automation Anywhere IQBot Platform\Output Note: The following additional folders will get created in the Output Path depending on the processing state of the documents: • •

Not Processed: Files which fall into groups which do not have a bot associated become available in Not Processed folder. Unclassified: Files which could not get classified (due to a variety of reasons) become available in Unclassified folder.

Related reference Read A Successfully Digitized Document using Taskbot

Read A Successfully Digitized Document using Taskbot The following example uses the Read From CSV/Text command along with the loop command to read digitized documents (in csv format) from the IQ Bot Success path. (For various IQ Bot platform output paths, see previous section) 1.

On the Automation Anywhere Enterprise Client Editor UI, drag and drop the Read From CSV/Text command from the Commands list to the Task Actions List panel.

2.

Do the following.

©

2019 Automation Anywhere. All rights reserved.     33

    Automation Anywhere - Using IQ Bot

3.

a.

Select File: Select the file that you want to read

b.

Delimiter, Header and Trim modes: Select as appropriate.

Encoding: Select UTF-8 encoding to ensure all the special characters from different foreign languages are displayed correctly. Click Save. The command is added to the Task Action List panel as displayed in the following figure.

4.

Use $Filedata Column$ variable to specify the CSV column to extract.

Example: $Filedata Column(1)$ will return value of first column $Filedata Column(2)$ will return value of second column The Loop will iterate through each record in the CSV file and return you the values for first and second column. Use these values for further automation as required. Note: After upgrading from previous IQ Bot version to IQ Bot 6.0, if you are using a Taskbot to read the output CSVs, the Encoding in the "Read from CSV command" in the Taskbot must be changed to "UTF-8".

Bots The Bots page of the IQ Bot Portal lists the bots for an instance and allows you to perform tasks, such as run, change the status, or launch the IQ Bot Designer for the bot. As an Automation Manager, you can effectively monitor the progress and statuses of all the bots created for an Instance. It also allows service personnel to set the status of a bot from Staging to Production environment.

©

2019 Automation Anywhere. All rights reserved.     34

    Automation Anywhere - Using IQ Bot

The Bots table displays the following for each bot group: •



Bot: The group of the bot. Tip: Click the Bot column title to sort the items of this column in ascending or descending order.



Instance: The name of the Learning Instance to which this bot belongs to. Tip: Click the Instance column title to sort the items of this column in ascending or descending order.



Status: The status of the bot – this can be active, training, or ready. Tip: Click the Status column title to sort the items of this column in ascending or descending order

• • •

Success: Denotes the successful training of a document group. Validation: Displays number of documents validated. Actions: You can perform the following actions on a bot in the Bots page. Icon

Description

Click this icon to send the bot from the staging to production environment and vice versa.

©

2019 Automation Anywhere. All rights reserved.     35

    Automation Anywhere - Using IQ Bot Icon

Description

Click this icon to test the bot against all available staging documents. Note: You can only test a bot if it is in the staging environment. Testing a bot: verifies if that bot can reach the desired accuracy based on the training provided. Runs it against all the sample documents associated with that category or group and benchmarks document and field accuracy. Note: View the updated document and field accuracy, refresh the Bots page and click the name of the bot. The updated document and field accuracy is displayed on the Bot details area. Click this icon to launch the IQ Bot designer and make changes to the bot. For more information, refer IQ Bot Designer

©

2019 Automation Anywhere. All rights reserved.     36

    Automation Anywhere - Using IQ Bot

Start Training in Designer After creating a Learning Instance, you can map the standard and table fields in the displayed document class. To open the IQ Bot Designer and train a Bot, click the Start Training button on the Learning Instance details page to display the Designer window. Note: You can train bots in the Staging environment only. The Designer window displays with a loaded document with mapped fields. The Designer view displays the document class name in the following format: •

Group Name > Document Class Name [File name].

The right pane displays the Document requiring the training, while the left pane displays the training panel with fields and table headers of the newly added document class. The center pane displays the auto-mapped values and lets you select/verify the mapped value. The following screenshot displays the Designer window:

Note: If you’re inactive in the designer for 20 minutes, the system logs you off and you are redirected to the login page. At any time, a bot can be accessed by a single user. If a bot is in use by a different user, then the ‘open bot’ option is disabled. The Designer lets you access documents from unlocked bots only. Tip: If the name of a document is too long, move your mouse over the partial name. The full name of the document is displayed as a tool tip. Use the Zoom in, Zoom out, or Fit to screen icons at the bottom of the document pane to adjust the display size of the document in training. You can use the pagination arrows to move to a different page of the document. Related tasks Resizing Selected Mapping Area

©

2019 Automation Anywhere. All rights reserved.     37

    Automation Anywhere - Using IQ Bot Related reference Left Panel in Designer Map a Document Group Map a Field Map a Table Validate IQ Bot Designer allows you to validate a field and/or table column against a set of predefined parameters so that you can be warned if any mismatch is found during data digitization process. Preview Extracted Data Common Fields Across Multiple Document Groups Next Group

Left Panel in Designer The left panel displays the default document that loads automatically, with auto-mapped fields/table columns, and lets you edit fields and add tables to a Bot. This panel also displays the Field Listing Header showing the name, format, and requirement. Note: By default, the field panel is selected in the left pane. When you click a field in the design pane, the training pane displays the selected field and its value in the document. If the mapping is correct, then you would see a green check icon to the top of the panel. Using the draw icon, you can select/reselect the appropriate value with the System Identified Regions (SIR) in the document. You can also directly select a blue-box text segment [System Identified Region (SIR)] directly in the document. You can create a design for a Bot by adding and defining columns and tables you want to extract from the documents. In Designer, do the following for tables: • •

Move one or more table fields from one table to another table to train extraction. See multiple tables and their extracted values to validate extraction.

Note: The extent of auto mapping depends on OCR quality of the fields as well as depth of taxonomy related to the underlying domain for that Learning Instance. Additionally, it also depends on the algorithm's decision-making logic, and on the text (that does not conflict with another. For example: two occurrences of Total can conflict with each other).

Resizing Selected Mapping Area 1.

In Designer, select a blue-box segment on a training document for a field value. A box of the same size on top is highlighted and has boundary handles.

2.

Drag these boundary handles in vertical, horizontal, or diagonal directions to resize that selected area.

3.

Make the selected area larger than a segment box to extract text in the selected area.

4.

Make the selected area larger than a blue-box segment on a training document. The size of that selected area is carried over to subsequent documents in that group.

5.

Make the selected area smaller than a segment box.

©

2019 Automation Anywhere. All rights reserved.     38

    Automation Anywhere - Using IQ Bot If the selected area touches the segment box, the full value of that segment box gets extracted.

Map a Document Group Once the document class has been added, you can map the data in it with fields/table columns defined at the time of creating the learning instance. 1.

Select a SIR on the document. Clicking the Date field – a SIR of the document – shows its preview in the Inspection pane.

2.

Click the Type drop-down to select the type of mapping – Field, or Table Column.

Map a Field For mapping a SIR as a field, perform the following steps: 1. 2.

For a selected SIR, select the type from the Type drop-down menu. Map the field label and field value separately by clicking the Draw icon next to the Label and Value fields and drawing a rectangle around the label and value. The value is auto-detected in the validation pane. Note: If a mapped field has multiple System Identified Regions (SIRs), then select any one of the SIR and add the whole key words in the Label field. For example, if you have two SIRs, “Invoice” and “Number”, then add the whole key words “Invoice Number” in the Label field.

3.

Click Save and close. Note: When you accept, and map the automatically detects value region for a field, the value stays floating relative of the field. Sometimes, in a different document type, even if the value of the field appears in another location, it will be detected.

4.

Click Validation Options to validate the field against a set of pre-defined parameters. Note: For Validation, you can only type the Start with, End with, and Pattern fields when mapping document groups. Additionally, you also have the option of using List Validation if the field data type is Text.

5.

Click Save to confirm your changes. Note: It is mandatory to map all the required fields and table columns defined at the time of creating the Learning Instance. If any of the required fields is not mapped, a greyed out check icon displays next to the document class. It continues to display until you finish mapping all the required fields and table columns.

Map a Table For mapping a SIR as a Table, perform the following steps: 1.

For a selected SIR from a table in the document class, select the Type a Table Column. Some examples of a SIR in a table include columns, such as Description, Unit Price, Quantity, and Amount.

©

2019 Automation Anywhere. All rights reserved.     39

    Automation Anywhere - Using IQ Bot 2.

Select the table name and name of column for the selected area from the drop down.

3.

In Mapping Options, the Label is auto-generated.

4.

Click Select to map the header of the selected table column to identify it as a SIR in the document.

5.

Type the validation options if you haven't done so while defining Design. Note: For Validation, type only the Start with/End with items and Pattern during Document Class Mapping.

6.

Click Save to confirm the values.

Once you finish mapping the table columns, the selected SIR region on the document gets highlighted in yellow for easy identification. After mapping the table columns, assign the Reference Column and Footer for the table. The Reference Column is auto detected and can be viewed in the inspection panel (right side) of the Designer window. Ensure the reference column does not contain multiple lines or is empty. Other columns are extracted in reference to this column. If the reference column has 5 rows, then the user can expect a maximum of up to 5 rows to be extracted from the other columns. The Footer is the end-point of the table. Type the name of the first field that occurs where a table ends. This could be fields such as: Total, Grand Total etc. To assign Reference Column and Footer, perform the following steps: 1.

In the left panel, select the Table for which you want to assign Reference Column.

2.

As soon as you select the table, the updated center panel displays.

3.

Select the Reference Column from the list of defined Table Columns and input the Footer value. You must add the first 'Field' that occurs after a table as the 'Footer' value. Note: It is mandatory to define a Reference column for a table. If you do not define one, a warning icon is displayed next to the document group.

4.

Click Save to confirm the values. For ease of identification, the Reference Column for a table is marked with the letter R.

Related tasks Add Multiple Tables in Designer You can add multiple tables in Designer at once.

Add Multiple Tables in Designer You can add multiple tables in Designer at once. 1.

You should have created a new Learning Instance, or may be editing one.

2.

You would click Start Training button to begin training the document groups.

You can add multiple tables in Designer to extract their values and validate them. You can move one or more table fields from one table to another table to train extraction. Additionally, you can see multiple tables and their extracted values to validate extraction. To add tables do the following: 1. 2.

Navigate to Learning Instance > Start Training > Designer window. Click the Add Table link.

©

2019 Automation Anywhere. All rights reserved.     40

    Automation Anywhere - Using IQ Bot

3.

Add columns to the new table by selecting the columns from the Available columns list and click the arrow to add to the new table column list.

4.

Map the field label, such as: column header and specify the footer. This provides the bot with a header and footer parameter and informs it to extract rows in-between them.You can use the Draw icon option or directly select a blue box segment on the document for a field label/field value. Click Save and close. To delete a table, just click the Delete Table link. When a field is removed from a table that is used as a reference column, the system reassigns the first field of this table as a reference column.

5. 6.

Once you've completed adding or removing tables and mapping field labels for the columns, you can do any of the following: • •

Click Next group. Save and close Designer to return to Learning Instance.

Validate IQ Bot Designer allows you to validate a field and/or table column against a set of predefined parameters so that you can be warned if any mismatch is found during data digitization process.

Validating a Field or Table You can validate a field or table column against the following predefined parameters of validation options: • • •

Start With / End With Pattern Lists

Tip: You can set validations while defining the design of any field and or table column during training.

©

2019 Automation Anywhere. All rights reserved.     41

    Automation Anywhere - Using IQ Bot Related reference Sample Document Groups Start With and End With Pattern Text Date Number Lists

Sample Document Groups Consider the following different sample documents. Each document has a different structural layout, which is easily identifiable.

Start With and End With While all validations can be set at the time of Design definition, you can only set Start with/End with and Pattern validations during training. To validate whether data in a field starts or ends with a certain value, you can use the Start With and End With validation option fields. While defining the design of a field or table column, you can specify whether the data is part of the selected field. • •

Starts with a certain value using a Start With field Ends with a certain value using an End with field

For Example: Start With value is "IN" and extracted value is "1N7646464", then validation fails. Similarly, if End With value is 2017 and the extracted date value is 10-Aug-2017, the validation passes.

©

2019 Automation Anywhere. All rights reserved.     42

    Automation Anywhere - Using IQ Bot

Pattern You can also validate data in your field and/or table column against a specific pattern. While defining the field or column in the Design View, you can specify a pattern of the data in the selected field. A pattern helps define an acceptable format for data. The following table illustrates a few pattern validation examples. Refer to the following table to select pattern for date and number fields. Based on the data types such as: Text, Date, and Number, you can have different patterns.

Text Specify any regular expression in the Text data type. The following table lists some of the common examples: Field

Pattern

Notes

Description

Email

^([a-z0-9_ \.-]+)@([\da-z \.-]+)\.([a-z\.] {2,6})$

This regular expression The Email field validates emails like supports regular [email protected]. expressions.

Phone Number

^(\(?\+?[0-9]* \)?)?[0-9_\\(\)]*$

This regular expression The Phone Number validates phone field supports regular numbers like (+64) 38 expressions. 3235393.

Website

^([a-zAZ0-9]+(\.[a-zAZ0-9]+)+.*)$

This regular expression The Website field validates websites like supports regular www.domain.com. expressions.

Number string

^[0-9]{1,45}$

This regular expression The Number string validates a string with field supports regular numbers 0 - 9 and limit expressions. length to 45.

Alpha-numeric

^[A-Za-z0-9_@./ #&+-]*$

This regular expression validates a string containing alphanumeric values like INV-001.

The Alpha-numeric field supports regular expressions.

Date You can specify any regular expression and special patterns in the Date data type. The following table lists some common examples:

©

2019 Automation Anywhere. All rights reserved.     43

    Automation Anywhere - Using IQ Bot Field

Pattern

Notes

Date

• • • • • • •

Supported date separators include /(forward slash), – (dash), space, .(dot), and , (comma).

d-m-yy dd-mm-yy mm-dd-yy dd-mm-yyyy mm-dd-yyyy dd-mmm-yyyy mmmm dd, yyyy

Here, •



• • •



d - Numeric day of the month, from 1 through 31 (eg. 5, 15 etc.) dd - Numeric day of the month, from 01 through 31 (eg. 05, 15 etc.) m - Numeric month (eg. 1 for January) mm - Numeric month (eg. 01 for January) mmm - First 3 letters of the month (eg. NOV for November) mmmm - Full name of the month (eg. June)

The following table lists some date examples and it’s corresponding valid patterns: Date

Pattern

01-31-18

mm-dd-yy

Jan-31-2018

mmm-dd-yyyy

January 31, 2018

mmmm dd, yyyy

January 9, 2018

Mmmm d, yyyy

9 5 15

D M YY

9 11 15

D MM YY

7 MAR 15

D MMM YY

7 MARCH 15

D MMMM YY

5 05 2018

M DD YYYY

5/05/18

D/MM/YY

9/5/15

M/D/YY

05 / 9 / 2018

DD / M / YYYY

MAR / 05 / 18

MMM / DD / YY

09-APRIL-18

D-MMMM-YY

5-5-18

M-D-YY

11-5-18

MM-D-YY

NOV-13-2018

MMM-DD-YYYY

©

2019 Automation Anywhere. All rights reserved.     44

    Automation Anywhere - Using IQ Bot Date

Pattern

13 - 5 – 2019

DD - M - YYYY

OCTOBER - 05 – 18

MMMM - DD - YY

05.APRIL.2018

D.MMMM.YYYY

APRIL.05.2018

MMMM.DD.YYYY

5 . 5 . 18

D . M . YY

5 . 05 . 18

D . MM . YY

05 . JUL . 18

DD . MMM . YY

5 . 11 . 2018

M . DD . YYYY

MAY . 13 . 13

MMMM . DD . YY

2018-01-27

YYYY-MM-DD

2017/07/27

YYYY/MM/DD

Number Specify two types of number patterns: • •

Regular expression Special patterns

Regular Expression The following table provides an example of the numeric regular expression. Field

Pattern

Notes

Description

Number string

^[0-9]{1,45}$

This regular expression The Number string validates a string with field supports regular numbers 0 - 9 and limit expressions. length to 45.

Special Patterns A Pattern consists of a Prefix, a Number Pattern, and a Suffix. • • •

Prefix: Any symbol or a text string that is appended before the Number Pattern. Suffix: Any symbol or a text string that is appended after the Number Pattern. Number Pattern: Number pattern has two parts: •

Integer-part: They are represented by nines (9s). The 9s in the integer part represents integer pattern and separators such as commas, spaces, and so on.



Fractional part They are represented by zeros.

©

2019 Automation Anywhere. All rights reserved.     45

    Automation Anywhere - Using IQ Bot If you need two fractional number, then it will be represented by two zeros. Specifying fractional part is optional. Format of numbers defined for validating numeric data.

Field

Pattern

Notes

Numeric

Supported patterns

Supported format for numeric patterns: • • • • • •

Description

The Numeric field supports special patterns Decimal (India) (system recognized Decimal (US, UK, patterns) and regular Australia and others) expressions. Number (India) Number (US, UK, Australia and others) Normal Decimal Normal Number

9,999,999.00

2,597.23

9.999.999,00

7.562.597,23

9 999 999.00

2 597.23

9 999 999,00

7 562 597,23

9999999,00

2597,23

9999999.00

7562597.23

99,99,999.00

75,26,569.56

$ 9.999.999,00

$ 7.562.597,23

$9 999 999.00

$7 562 597.23

9 999 999,00 $

2 597,23 $

€ 9999999,00

€ 7562597,23

€9999999.00

€7562597.23

99,99,999.00 €

75,62,597.23€

EUR 9,999,999.00

EUR 7,562,597.23

EUR9 999 999.00

EUR7 562 597.23

9999999,00 EUR

62597,23 EUR

9.999.999.00

62.986.51

9, 999, 999. 00

232, 510. 68

IQ Bot supports prefixes and suffixes to make processing and validation of data easier. Specifying a suffix and prefix in the pattern and in the numeric fields is optional. Even if you do not specify the suffix or prefix, IQ Bot auto corrects and includes the required currency symbols and units of measurements for the numeric fields as a prefix or a suffix. If you specify the currency symbols and units of measurements

©

2019 Automation Anywhere. All rights reserved.     46

    Automation Anywhere - Using IQ Bot in the pattern and in the numeric data, IQ Bot deletes the currency symbol and unit of measurement from the data. Note: IQ Bot automatically recognizes these currency symbols: $, ¥, £, ₹, €, Rs, USD, EUR, CAD, AUD, GBP, and INR. It is recommended that you specify valid currency symbols in the data. Auto Correction: This is one of the inbuilt features of IQ Bot for DATE and NUMBER format types. It performs automatic validation and correction based on the pattern that you have defined, even when the date/number in the scanned document is incorrect. Note: Auto correction is only supported for special patterns. The following table illustrates the auto-correction of an incorrect date and numbers by IQ Bot.

DATE

Incorrect OCR value

Pattern

Auto-Correction

Description

12 F3B 2 0 1 5

dd mmm yyyy

12 FEB 2015

15 10-2015

dd-mm-yyyy

15-10-2015

In the first example, IQ Bot auto corrects incorrect OCR “F3B” to “FEB”. In the second example, IQ Bot auto corrects “15 10-2015” to“15-10-2015”.

NUMBER

123 4567

9999999

1234567

12.34,S67.12

99,99,999.00

1234567.12

In the first example, the extra space between “3” and “4” is deleted after validation against the pattern. In the second example, the alphabet “S” is corrected as “5”.

Note: English language numeric value with at least one digit to the left and 2 consecutive digits to the right (e.g. 1.23) gets auto corrected in case there is any space found between the decimal and the digits. i.e. values 1 . 23 or 1. 23 or 1 .23 get auto corrected to 1.23. To use this feature, simply add Pattern (in Validation Options) to the selected Date and Number format fields as shown in the following figure.

©

2019 Automation Anywhere. All rights reserved.     47

    Automation Anywhere - Using IQ Bot

Lists While defining a field or table column in the Design view, you can specify a list as part of validation option for a selected field or table column. The extracted value of the field is validated against this predefined list at the time of Preview and Test Run. Note: You can only specify list validation when format of field and/or table column is "Text". If the list look-up returns multiple values for a word, the value is not auto-corrected and the validation fails. To specify list validation, perform the following steps. 1.

Select the validation type as List from the Validate drop-down menu.

2.

Type a predefined list and click Define to save. Tip: Each value in the list should be in a separate line.

If the extracted value does not match any value in the predefined list, the field is considered to have failed the validation.

Preview Extracted Data Once you've completed field and table mapping, use the Preview button to view OCR and extracted results to verify the accuracy of the training. Preview mode displays all information that the Validator view would display and lets you do the following: • •

See the listed fields and values. Display an indication if value was successfully extracted, if there was a validation error, or lack of OCR confidence. See all table headers and the values for each row, also indicating if there was an error on validation or lack of confidence.

©

2019 Automation Anywhere. All rights reserved.     48

    Automation Anywhere - Using IQ Bot

At this point, you have the option to export the preview data to a CSV file for further analysis by clicking on the Export to CSV link at the top right header area. Or you may click Back to Training button to continue with the training. Once all fields and tables complete the training and pass validation, you can see a green check mark next to the group title in the middle pane. Important: A training document can pass in spite of an error flagged by the validation pattern. Sometimes we want a validation pattern to flag an error, so that at a later stage in production, it would not pass specific documents; but enter them in the manual validation queue instead. After you complete training the documents groups, choose to Save and close the Designer window. You have the option to do the following: • • •

Choose Cancel to stay on the current training. Choose Save to save the training. Choose Save and send to production to send the Learning Instance to the Production environment

You can preview during or after completing mapping for each document group. The preview button is available for a current document. At this point, you can see the preview window with the mapped fields and table columns. You would also see errors, if any, highlighted within a red box. Hover on the error to know more about the error. You have the option to correct the errors. To close the preview area, click the Back to Training button. Tip: Move your mouse over lengthy values to display the complete value.

Common Fields Across Multiple Document Groups 1.

Create an IQ Bot with a single Document Group. Pick any good document from your list of documents.

2.

Create Design and map all the fields as dynamic floating fields.

3.

Add aliases to the mapped field labels using "|", if the values are different across various documents. For Example, Invoice header mapped in the document could have values such as, Invoice#, Invoice No., Document No and so on in other documents.

©

2019 Automation Anywhere. All rights reserved.     49

    Automation Anywhere - Using IQ Bot Note: "|" stands for the term, "or". For example: Invoice Total | Invoice Amount tells the bot to find the label - if equal to Invoice Total or Invoice Amount.

Tip: Test and refine the aliases as required.

Next Group After launching the Designer to start training your bot, you begin training all loaded document groups for that Learning Instance. Use the Next Group button, at the bottom of the center panel, to move to the next document group in queue. The Designer loads the next document group and displays the name in the header as: Bot Name > Document Group Name (File name). The header reflects the next document group along with the fields and table headers. Tip: In case a document name is too long, simply hover over the partial name to get a tool tip that displays the complete document name.

Document Validation Validation takes away the complexity to validate and fix any bot issues, requires less time to fix bot issues, and requires minimal human intervention. Documents that fail automated processing rules or have field values failing due to low OCR confidence are pushed into a folder to be reviewed and fixed later manually. Manual review is time-consuming and complex as it requires navigating to the correct folder and scripting knowledge (done in a .csv file) to fix the document. Note: To know more about how field level OCR confidence can be used to improve the quality of STP output, see Improve output quality using OCR confidence. Related reference Open the Validation Page Launch the Validator Window Validate a Document with Errors Mark a Document as Invalid Edit File Name and Contents of IQ Bot Archive (IQBA) File User roles and permissions Find out the roles and associated permissions for each IQ Bot user to know the role to which you need access.

Open the Validation Page The Validator window helps validate the uploaded and processed documents for an Instance. Uploading documents occurs quickly via Automation Anywhere Enterprise. But after that, processing documents takes longer using IQ Bot. To open the Validator user interface, navigate to http:/// > Learning Instances and click Launch validator icon on your Web browser.

©

2019 Automation Anywhere. All rights reserved.     50

    Automation Anywhere - Using IQ Bot Note: Only users with an assigned Validator role using Automation Anywhere Enterprise Control Room can view the Validation page. For more information, see User roles and permissions and Automation Anywhere Control Room User Guide.

Launch the Validator Window Launch the Validator window from the Learning Instances page. Launch the Validator in either of the following ways: • •

Click the Launch validator icon for an Instance. Click the Validate button from the Summary or Groups tab.

The Validator launches displaying the first file from the validation list with the document image shown on the right side of the application with Fit Screen attribute applied.

Note: The user sees an empty page and a message: There are no documents available for validation, you will be redirected to the Learning Instance page: • • •

If no files are available in the validation queue. If a file doesn't exist in the validation queue. If another user is in the remaining file in the validation queue.

Validate a Document with Errors Once the Validator window displays, the data that needs to be validated are marked in fonts and boxes colored in red. To validate a document with errors using the Validator window, perform the following steps: 1.

Press the Tab button or click the mouse on the field that needs to be validated (marked in red). The associated field value of the document is highlighted so that it is visible and focused.

©

2019 Automation Anywhere. All rights reserved.     51

    Automation Anywhere - Using IQ Bot 2.

Validate the fields by entering the correct information.

When you try to save a document without validating all the errors in the document, an error message is displayed. Related concepts Add or Delete a Row for a Table in Validator To insert or delete rows while validating a document, hover your mouse over the ellipses to display icons to let you add or delete rows for a table. Skip to Next File in Validator If you want to skip a file without correcting its errors, you can click the Skip to next file option at the bottom of the validator window. Validation Queue You can see all information about the validation queue in the validator screen. This appears as a sub title as shown in the screenshot.

Add or Delete a Row for a Table in Validator To insert or delete rows while validating a document, hover your mouse over the ellipses to display icons to let you add or delete rows for a table.

Skip to Next File in Validator If you want to skip a file without correcting its errors, you can click the Skip to next file option at the bottom of the validator window.

Validation Queue You can see all information about the validation queue in the validator screen. This appears as a sub title as shown in the screenshot.

©

2019 Automation Anywhere. All rights reserved.     52

    Automation Anywhere - Using IQ Bot The sub title displays the number of files to be validated, name of current file, and group of current file.

Mark a Document as Invalid As a Validator, you may want to flag a certain document as invalid. There are certain reasons for this. •

The document validation conditions are not met, and it needs to be re-trained.

Documents which cannot be processed due to reasons (listed below) can be marked as invalid. To mark documents as invalid, click the Mark as Invalid button in the Validator window. Select the appropriate reason in the confirmation window, as follows: • • •

Fields Missing Tables Missing Wrong Values

Note: To view and access the documents marked as invalid, open the Invalid folder located in the Output folder of your server. 1.

After successfully validating the fields and tables, click the Save Current Document button.

2.

Click the Skip to next file button to scroll to the next document in the queue.

Edit File Name and Contents of IQ Bot Archive (IQBA) File When you rename the IQBA file name or update the contents of the file, an error message is displayed at the end of the sentence. The user is unable to classify documents from one learning instance, hence, simultaneously imports another learning instance. With validation, the validator (human) performs a manual check and updates text extracted from the digital document. Once fixed and saved, the updated document moves back to the successful queue where it can be picked up by an upstream automation task.

User roles and permissions Find out the roles and associated permissions for each IQ Bot user to know the role to which you need access. Your permission to access certain areas in IQ Bot are defined depending on your role or persona. For example, as a Validator, you will not have permissions to access the Audit Trial Log page because only Automation Managers have access to the tasks on this page.

©

2019 Automation Anywhere. All rights reserved.     53

    Automation Anywhere - Using IQ Bot All roles and permissions for the IQ Bot are defined in Control Room. For more information on creating these roles, see Control Room User Guide. The permissions and areas of IQ Bot that can be accessed by users based on their roles are described in the following table. Table 1: Roles and permissions for IQ Bot The following table describes the different IQ Bot roles and the associated permissions: Roles/Personas

Default IQ Bot Permissions

Access to Tabs

AAE_IQ Bot Admin

All IQ Bot permissions

• • • • •

Dashboard Learning Instances Bots Domains Administration - Migration utility can be accessed using this tab.

AAE_IQ Bot Services

All permissions available as per View my learning instances

• • •

Dashboard Learning Instances Bots

AAE_IQ Bot Validator

Launch Validator permission available as per View my learning instances

Learning Instances

If both services and administration roles are allocated to a user, IQ Bot displays the following five tabs: • • • • •

Dashboard Learning Instances Bots Domains Administration

Using IQ Bot Frequently Asked Questions Refer to Frequently Asked Questions (FAQs) to know more about IQ Bot. 1.

I have pay stubs, which type of scanner is recommended to convert to PDF? Pick a leading brand which supports a resolution 300 dpi.

2.

What is a Learning Instance? A Learning Instance is the basic building block of IQ Bot Platform. It is domain specific and has capability to learn from documents classified and processed by it. This learning is translated to tangible benefits like improved Straight Through Processing (STP) and Accuracy figures for the Instance over a period.

3.

What should I do before I start creating a Learning Instance in IQ Bot? Before you start creating new Learning Instances, you need to know what information you want to extract from the documents you would be processing.

©

2019 Automation Anywhere. All rights reserved.     54

    Automation Anywhere - Using IQ Bot The best practice is to have a few sample documents in training, representative of the larger batch of documents that you eventually want to process automatically in production, which you can take as reference to decide for the items you want to extract. You can then use them as the first set of documents to train against the newly created Learning Instance. 4.

How are Staging and Production modes of a Learning Instance different? The differences are listed in the following table. Staging

Production

Processing Mode based on presence of any human

Attended processing during Bot Training

Unattended processing

Role of human user



Manual check, verify, and fix failed documents during Validation



How many documents can be processed in a single run

Multiple documents

Continuous processing

When to use



Process documents in unattended/headless mode.



5.

Create and Train Learning Instances Provide corrective training to Learning Instances against processed document, if any required.

Train New Learning Instances Retrain Existing Learning Instances

Dashboard

Basic Information

Detailed information

Document Upload

Using IQ Bot Platform Web UI.

Using IQ Bot Lite command in a Task bot.

Can IQ Bot automatically identify and merge the uploaded tiff or PDF files into multi page documents? No. You will need to merge those individual tiff/PDF files into the respective multi page documents before uploading them. Note: AAE RPA has functional capability to merge these files.

6.

What file types are supported by IQ Bot? • • • •

7.

PDF (Vector PDF, Raster PDF or Hybrid PDF) TIF OR TIFF JPG OR JPEG PNG

Does IQ Bot support hand written documents? No.

8.

Does IQ Bot support a fully qualified domain name?

©

2019 Automation Anywhere. All rights reserved.     55

    Automation Anywhere - Using IQ Bot Yes, IQ Bot supports a fully qualified domain name and you can specify this during the installation process. This way, even if the IP address – of the computer on which IQ Bot is installed – is changed, the IQ Bot platform continues to run. 9.

Does IQ Bot support tabular data extraction? Yes.

10. How many tables can I configure to extract in a Bot? Virtually unlimited. 11. Does IQ Bot support documents with multiple color text? Yes, but only for darker shades of colors. 12. What are the various kinds/types of field validation available in IQ Bot and how and when to use it? • • •

Date patterns for date fields Number for number fields – you can apply Starts With, End With patterns, regular expressions, number patterns Text for text field – you can apply Starts With, End With, List validation

13. My document contains more than one table, is it possible to create two or more tables? Yes. Just add additional tables in design and move the fields from the first table to the newer ones as desired. 14. What is the purpose of List Data and how do I use it? The list data provides a set of possible values for any field. It also puts a validation that the field can only have values from the specified ones. For example: If a field's OCR value (such as: 100001) vs. each list value (such as: 100001, 100011) exceeds 66% character match. The field's OCR value is replaced by the list value (100001) with the higher percent match (100001 matches 83% or 5/6 of characters, while 100011 matches 66% or 4/6 of characters). 15. Does IQ Bot support documents other than invoices? Yes, it supports other domains such as: Purchase Orders, Billing Statements, Contracts Claims, Automobile Insurance Claims, Health Insurance claims (1500 and UB 04), and Custom formats. You can select the desired domain when you create a Learning Instance. 16. What if my scanned document is not correctly oriented – the document is rotated to some angle or is inverted vertically or horizontally? Using its processing logic, the Learning Instance automatically rotates/orients the document to a correct vertical position. 17. Can I stop Document analysis or processing in between? No 18. What should I do if I see the extracted value of an OCR is incorrect? For example, instead of an “S” it shows a “$” symbol. If the document and section dpi is 300, then not much can be done. A "Starts With" or "Ends With" validation pattern can be considered. We expect to have a new OCR engine to improve such issues in a future release of IQ Bot. 19. If the date on a document is “01-02-2015”, will it be considered 1st of February or 2nd of January? Can I configure this? Please view more of your sample invoices to gauge the Date format. Specify date pattern for more control over date format validation. 20. Is it possible to export the extracted date in a specific format?

©

2019 Automation Anywhere. All rights reserved.     56

    Automation Anywhere - Using IQ Bot No 21. Can I specify the character separator for the CSV file? No 22. Where can I access the files that are not processed by IQ Bot, which do not have a Learning Instance associated with it? These files are stored in either of these folders: • •

Not Processed folder: original documents that went unclassified output to this folder. The Not Processed folder is located in the Output folder of your server. Invalid folder: if documents classify but enter Validation, and users mark the documents as invalid in Validator, the original documents output to this folder.

23. Why am I unable to see data of my Vendor list (or any other list) across all Learning Instances? List data are stored specific to each IQ Bot and not shared across Bots 24. Can I specify more than one Label value for any form field? If yes how? •

Yes. Each Label value must be separated by a pipe symbol ("|"). For example, Invoice number; invoice # etc.

25. What is the maximum number of Learning Instances I can create? What is the maximum number of Learning Instances that can simultaneously exist in the system at a given time? There is no limit to the number of IQ Bots you can create or that can simultaneously exist in the system at a given time 26. Does IQ Bot support cursive type of fonts? No 27. Is there a restriction to the number of characters for naming a Learning Instance? 50 characters 28. Does IQ Bot support processing of password-protected PDF files? No 29. What is the average time to process one single page document? Is the time dependent on the page complexity? There is no fixed time for processing a single page document as this depends on: • • • •

CPU strength and availability Available free RAM Page clarity OR noise level Data on page

30. Which license is required for IQ Bots? You require Automation Anywhere Enterprise with an activated IQ Bots feature. This license is installed from the Control Room. 31. Can IQ Bot capture document image as field value? It is not possible to capture a document image as field value as it is not possible to segment, OCR. 32. I have an invoice with the client name as Brett Crocitto. Why is it always captured as Bren Crocitto? •

A document resolution of 300 dpi and document type of PNG is recommended.

©

2019 Automation Anywhere. All rights reserved.     57

    Automation Anywhere - Using IQ Bot •

• • • •

In this example, we have a document of 300 dpi, and the PDF is generated by a popular printer/ fax machine, which has as driver with CCITTFaxDecode filter and hence the document output is a lossy PDF. Data in invoice: Brett Crocitto Data captured: Bren Crocitto Reason: tt – two “t” are joined with no space and OCR is getting misled and interpreting as “n” Note: Text should never be encoded with CCITTFaxDecode – this filter is useful only for monochrome images.

33. How many templates do I have to train the Learning Instances on before it "learns" OR the amount of training that a Learning Instance has to go through to be ready for use on a format / layout OR number of hours of training that it should be put through? Each bot can be trained on one representative sample document, which can be previewed on another representative sample document from the same group. If these document results are acceptable, then your bot is ready for a larger batch of similar documents in production. The training requirement has been kept minimal. In most cases, you should be able to get the desired value in a single pass. 34. What are the languages supported by IQ Bots? IQ Bot supports the following languages out of box: • • • • • • • • • • • • • • • • • •

Afrikaans Belgian Catalan Czech Danish Dutch Flemish Hungarian Indonesian Malay Norwegian Polish Portuguese Romanian Slovakian Swedish Turkish Latin

In addition to these, the following languages have limited (beta) support for machine readable PDFs. Scanned PDFs and images may not return satisfactory results. Note: Contact Automation Anywhere services team if you need to use any of these languages. • • • • • • •

Bulgarian Chinese-simplified Chinese-traditional Greek Japanese Korean Russian

©

2019 Automation Anywhere. All rights reserved.     58

    Automation Anywhere - Using IQ Bot •

Serbian

35. I have added a custom domain but the documents that I add to this custom domain are getting unclassified. Why is this so? To classify a document accurately, the classifier must find at least one field from the uploaded document. For Example: If your custom domain has a single field named: Invoice Number, but the OCR is Invoice Number, the classifier would not be able to find that field. 36. What is the accuracy rate of IQ Bots? It is dependent on the field capture requirements and the document quality. As an example, it has been observed that if a customer captures one to two fields across a Grade A document quality, an accuracy of 86% is achieved. A customer that captures 11 differentially weighted fields across highly varying document quality will see lower accuracy. 37. When I move a Learning Instance from Production to a Staging environment and create a bot for a group of that Learning Instance, the following error message displays: "Staging documents are not available for this category. Please upload the following documents in staging." This happens when a new untrained classification group is created for a Learning Instance in the Production environment. When you move the Instance to staging and try to train this new classification group, the Bot is unable to find any sample documents that it expects from staging, hence displays the message. In this scenario, edit the Learning Instance and add (upload) some sample documents similar to the examples in the Production environment, as displayed in the message. 38. Can I install IQ Bot using Windows Authentication for SQL Server? The current version of IQ Bot does not support Windows Authentication for the database. 39. Why IQ Bot does not support Windows Authentication? IQ Bot uses an ML component to directly access the database, a different technology than the rest of the system. While it is still possible to implement the authentication for this component based on other priorities, and as we will replace this component for release version 6.1, we didn’t include the Windows Authentication for the current release. This will be available soon. 40. For security reasons we don’t use SQL authentication. How do we install IQ Bot? You can create a dedicated database for IQ Bot and allow this specific database to have SQL authentication. Related reference Validator FAQs View FAQs related to Validator. Classifier FAQs View FAQs related to the Claissifier.

Validator FAQs View FAQs related to Validator. 1.

Why do I need Validation? •

IQ Bot processes a document before it can be viewed in the Validator, and flags an error with one or more fields in that document. The user has the option to fix the flagged fields and/or verify the unflagged fields in Validator.

©

2019 Automation Anywhere. All rights reserved.     59

    Automation Anywhere - Using IQ Bot •

2.

Once fixed and saved, the updated document won’t count as STP but still moves to the successful queue where it can be picked up by an upstream automation task.

Can I perform a Validation task when designing an IQ Bot? Yes, if the Learning Instance is in the production environment but the concerned bot is in the staging environment. You can still perform Validation of failed documents in the production environment.

3.

What happens after I manually correct and submit a document using Validation interface? After the failed documents are manually corrected and submitted using the Validation interface, it moves to a “Success” folder from where it can be picked up by an upstream automation task.

4.

What happens to the documents, which I choose not to correct using the Validation interface? You can simply mark them as invalid. These documents will be moved to an Invalid folder on the output path. You can collect these documents from this Invalid folder for further action.

5.

Do I need a special license to enable Validation? No. You just need an IQ Bot license to enable validation. However, you do need a Validator role assigned to you by the Administrator. If you have an IQBotServices role assigned to you, you can access validator from Learning Instance listing.

6.

Can I use the Validation interface to open regular excel or CSV files? No. You cannot use the Validation interface to open regular Excel or CSV files.

7.

Is it possible to have multiple Validators validate a common Learning Instance? Yes, different Validator users can view different documents from each other simultaneously. However, with the smart queue management feature, a document will be exclusively available to only one Validator at a time for View or Edit.

Classifier FAQs View FAQs related to the Claissifier. 1.

What happens when the Classifier is unable to classify one or more documents? If the Learning Instance is in the Staging environment, the documents will be placed in a separate group called Not Classified; and for the Production environment, the documents will be placed in a separate group called Unprocessed. Note: To view and access the unclassifiable documents, open the Non Classified/Unprocessed folder located in the Output folder of your server.

2.

Why are some documents getting unclassified? Some reasons for this behavior could be unacceptable document quality, poor DPI, minimum fields required for classification criteria not being met, or documents not related to the selected domain. A document gets unclassified due to minimal field identification rule. This rule helps to maintain the quality of classification vis-a-vis the quality of a document. It dictates the classifier to classify a document only when a certain minimal number of Keys/Fields related to a domain are found in that document. This minimal number depends on the number of fields selected while creating a learning instance for a desired domain. As per this rule, •

If you selected six or more fields from a default or uploaded domain for extraction while creating a learning instance, the classifier expects to find at least six fields (any six, not particularly the selected ones) related to the selected domain in the document. If it is unable to do so, the

©

2019 Automation Anywhere. All rights reserved.     60

    Automation Anywhere - Using IQ Bot





document gets unclassified. A person can also classify by entering a limited number of custom fields. If you selected 5 domain fields for extraction while creating a learning instance, the classifier expects to find at least 5 fields (any 5, not particularly the selected ones) related to the selected domain in the document. If it is unable to do so, the document gets unclassified. If you selected 4 or less domain fields for extraction while creating a learning instance, the classifier expects to find at least 4 fields (again, any 4 and not particularly the selected ones) related to the selected domain in the document. If it is unable to do so, the document gets unclassified. Note: When the document quality is not so good, it negatively affects the number of Keys/Fields related to a domain detected in that document.

If the document quality is good and yet the document is getting unclassified, there is a good chance that the domain dictionary doesn't contain the fields/aliases that are representative of that document.

Tips and Tricks Use tips and tricks to make working on IQ Bot tasks easy and save time using shortcuts.

Generic • • •

Use a document, which has a resolution of at least 300 dpi. A lesser resolution may not give desirable results. Document supported by VisionBot are PDF (raster and vector), TIF or TIFF, JPG or JPEG, PNG. If multiple documents are present in a single PDF, we recommend splitting the PDF into separate documents beforehand. Tip: You can use Automation Anywhere PDF command or Acrobat editor to split into separate documents

Designer • •



Make sure you define all the fields and tables that you wish to extract from the document(s) in design. Mark a field Optional in case the value in a field has the possibility of appearing in certain documents while not in others. By default, fields are marked as Required unless a field is added after creating the learning instance. In this case, the field is Optional by default. You can also default the missing value to a pre-determined value if needed, if field type is 'Optional'. Insert the 'Default Value' in the field which appears on selection of 'Optional' in the field type.

If Tax is calculated in one document but not in another, you could mark this field as optional and provide a default value of 2% .

©

2019 Automation Anywhere. All rights reserved.     61

    Automation Anywhere - Using IQ Bot

Validation •

• •

Setting validations while defining any field and/or table column while mapping the document class helps validate a field and/or table column against predefined parameters so that you can be warned if any mismatch is found during data digitization process. Use validation (Patterns / Lists) where ever possible. These will flag any discrepancies in extracted data and can help prevent incorrect data to go in the upstream process. You can use List Validation to improve the accuracy of a text format field. Make sure each value in the list is input in a separate line. • •

It validates extracted value of field and/or table column against this pre-defined list and warns if any mismatch is found during Preview and Test Run. Besides validating it also helps auto-correct extracted values. For Example: If List Validation Value is Adam and extracted value is Adem, the extracted value will be auto corrected to Adam. In this case, 75% of characters (3 out of 4) match. Adam and Adem match on at least 66% of characters, which is the threshold.

• •



Errors in validation are marked with red border and can be seen in Preview mode. Move your mouse on the error to know about the error type. When a Date Format Pattern is explicitly specified, the date is auto corrected to a certain extent. Incorrect OCR Data

Pattern

Auto-Correction

12 F3B 2 0 1 5

dd mm yyyy

12 FEB 2015

15 10-2015

dd-mm-yyyy

15-10-2015

When a Number Format Pattern is explicitly specified, the number gets auto corrected to a certain extent. See following example: Incorrect OCR Data

Pattern

Auto-Correction

123 4567

9999999

1234567

12.34,S67.12

99,999,999.00

1234567.12

Pipe "|" Symbol • • • •

Use the special character " | " to add multiple alias to extract similar fields and table columns across multiple Document Classes. Using alias can help you create generic IQ Bots. When you resize any value region or create your own value region using select, its position gets fixed relative to the field label. The value for that field will always be searched in that relative region. You can also reset fixed field region defined by user in the auto-detected mode by clicking on the close button at the top right corner of the field. It is mandatory to map all the required fields/table columns. •

• •

In case any of them is pending to be mapped, you will see a warning icon against the concerned document class.

Define Reference Column and Footer (Footer is optional, and doesn't always yield a message) for a table, otherwise you would see a warning icon against the concerned document class. Hover over the lengthy values to see the complete value.

©

2019 Automation Anywhere. All rights reserved.     62

    Automation Anywhere - Using IQ Bot

Preview You can evaluate documents in Preview mode, which replaces IQ Test.

Export and Import Learning Instances Using Migration Utility Use IQ Bot Migration Utility feature to export and import learning instances between different IQ Bot installations to avoid re-creating similar learning instances. This makes the life cycle management of a learning instance and associated bots easier. Groups, bots, and learning associated with a learning instance are exported. Training documents used to train the bots during staging are also exported. However, production documents are not exported. Note: • • • •

Export the learning instances to create a backup of each of them. Ensure you back up your database before importing learning instances. Select the right import option to avoid losing information. If migration is related to a custom domain and bot store domain, talk to Automation Anywhere support first or refer to a specific guide.

To launch the migration utility, browse to Migration from the Administration tab. Note: You must have the administrator role and log in to IQ Bot portal to access migration utility from the Administration tab. The Migration Utility displays a list of all learning instances available in this IQ Bot Portal.

Export a Learning Instance Export a learning instance using the Migration Utility. To export a learning instance using the Migration Utility: 1.

Select Administration tab > Migration from the left panel to open that web page.

2.

Select one or more learning instances as per your requirement and click Export.

3.

Enter the desired name for the IQBA data file if you want to and/or click on to begin the export process. Note: Name of the backup file is appended with timestamp to make it unique.

4.

Wait for the Export to finish. Once done, the exported data file with .iqba extension becomes available in ‘BackupData’ folder within IQ Bot output directory. Note: Since export is a CPU intensive activity, limited user interaction with the IQ Bot portal is allowed when an export process is in progress.

©

2019 Automation Anywhere. All rights reserved.     63

    Automation Anywhere - Using IQ Bot

Import a Learning Instance Import a learning instance using the Migration Utility. Note: Before initiating import, take a backup of your IQ Bot database as a proactive measure. To import learning instances using the Migration Utility: 1.

Copy the exported data file in BackupData folder within the output directory of the IQ Bot installation where you want to perform import.

2.

Click on Import and select the IQBA backup data file to import.

3.

Select the required learning instance and click on Import... You will then be asked to select from different import options. The import options are explained in the following table: Import Options

Description

When to use

Option 1: Append imported groups and trained bots to duplicate existing learning instances

Merges new groups and trainings (bots) in existing learning instance(s).

When you want to append newer groups and training (bots) to an existing learning instance of an IQ Bot installation, without impacting the processing (dashboard data) done by that learning instance so far.





Appends any new learning instances found in import data file. Retains validator learning of existing learning instances.

Note: During import with this option, an existing group without a bot will get a bot if it is available in the import data file. Option 2: Import learning Appends only new learning instances, ignoring duplicate instance(s). existing learning instances

©

When you want to import only new learning instances (and bots) on an IQ Bot installation while keeping the existing learning instances intact.

2019 Automation Anywhere. All rights reserved.     64

    Automation Anywhere - Using IQ Bot Import Options

Description

When to use

Option 3: Overwrite duplicate existing learning instances with imported learning instances

Overwrites existing learning instance(s) including all groups and training of bots.

When you want to replace all groups, trainings (bots) and learnings of an existing learning instance of an IQ Bot installation, without impacting the processing (dashboard data) done by that learning instance so far.





Appends any new learning instances found in import data file. Replaces validator learning of existing learning instances.

Note: During import with this option, any new group if found will be retained to preserve the associated documents. Option 4: Remove all existing learning instances and replace with imported learning instances

Deletes all existing learning instances before importing the new instances.

This is also the only option to update an existing learning instance which has been edited to include additional fields/table column.

When you want to start afresh and don’t mind loosing all the work done so far on an IQ Bot installation.

4.

Select an import option that you need. Click on Import. You will be asked to confirm the import.

5.

Click on Yes Import to begin the import process.

6.

Once import finishes, you will be taken back to the Migration Utility home page with the list of Learning Instances. If Import is successful, Last Migration status COMPLETE is displayed along with the timestamp. If, for some reason import fails, Last Migration status FAILED is displayed along with the timestamp. Note: The imported learning instance retains its environment state and the state of all the associated Bots.

Import Options Explains import options and their impact on the learning instances, groups, documents, and bots. The following table provides a summary of import options. Only the impact on the learning instances is explained while using the four import options. L1 = Learning Instance 1, L2 = Learning Instance 2,. . .

©

2019 Automation Anywhere. All rights reserved.     65

    Automation Anywhere - Using IQ Bot System before import file (usually Production)

Import file (usually Staging)

System after import file (usually Production)

Import learning instances, ignoring duplicate existing learning instances

Append imported groups and trained bots to duplicate existing learning instances

Overwrite duplicate existing learning instances with imported learning instances

Remove all existing learning instances and replace with imported learning instances

L1

L1

L1

L1 + L1

L1 + L1

L1

L2

L2

L2

L2 + L2

L2 + L2

L2

L3

L3

L3

L4

L4

L4

L4

L4

L5

L5

L5

L5

L5

L3

The following table explains the import options in detail. The impact on the learning instances, groups, documents, and bots is explained while using the four import options. Learning Instance = LI, Group = G, Files = F, Bots = B

©

2019 Automation Anywhere. All rights reserved.     66

F5, F6

G4

G5

F4

G2

F7, F8, B5 F9

B2

F1, F2, B1 F3

G1

G6

F13, F14

F5

F11, F12

G3 G4

F4, F10

B6

B3

F1, F2, B1 F3

G2

G1

G5

G4

G2

G1 B2

F7, F8, B5 F9

F5, F6

F4

F1, F2, B1 F3

BOT

©

G6

G5

G4

G3

G2

G1

BOT

B3

B2

F13, F14

B6

F7, F8, B5 F9

F5, F6

F11, F12

F4, F10

F1, F2, B1 F3

GROUP FILES

GROUP FILES

GROUPFILES

GROUP FILES

Append imported groups and trained bots to duplicate existing learning instances, LI1

Import learning instances, ignoring duplicate existing learning instances, LI1 BOT

Learning Instance 1 (LI1)

Learning Instance 1 (LI1)

Learning Instance 1 (LI1)

Learning Instance 1 (LI1)

BOT

System after importing IQBA file (usually Production)

System before importing Import IQBA file (usually IQBA file (usually Staging) Production)

G6

G5

G4

G3

G2

G1

BOT

F13, F14

F7, F8, F9

F5, F6

F11, F12

F4, F10

B6

B3

F1, F2, B1 F3

GROUP FILES

Overwrite duplicate existing learning instances with imported learning instances, LI1

Learning Instance 1 (LI1)

G6

G4

G3

G2

G1

BOT

F13, F14

F5

F11, F12

F4, F10

B6

B3

F1, F2, B1 F3

GROUP FILES

Remove all existing learning instances and replace with imported learning instances, LI1

Learning Instance 1 (LI1)

    Automation Anywhere - Using IQ Bot

2019 Automation Anywhere. All rights reserved.     67

    Automation Anywhere - Using IQ Bot

Incompatible learning instance detected When you try to import an incompatible learning instance IQBA file, the system displays an error message. For example, try to import a learning instance of 5.2.x version. Troubleshooting Tip: Export an IQBA file from an IQ Bot platform whose version is compatible with the IQ Bot platform where this IQBA file is going to be imported.

Editing File name and Contents of IQBA File When you rename the IQBA file name or update the contents of the file, an error message displays. If you classify documents across groups within learning instance A in the system, an error message is displayed while importing learning instance B from IQBA and the import fails.

Ongoing training at the time of Import/Export While initiating import or export, if any learning instance is in training (Designer is open), an error message displays and suggests that you close training for all bots before trying again.

Incompatible Learning Instance Detected When you try to import an incompatible learning instance IQ Bot Archive (IQBA) file, the system displays an error message. For example: try importing a Learning Instance from IQ Bot 5.2 to IQ Bot 6.0. Troubleshooting Tip: Export an IQBA file from an IQ Bot platform whose version is compatible with the IQ Bot platform where this IQBA file is going to be imported. If you export an IQBA file from IQ Bot 6.0, then you would be able to import the IQBA file to IQ Bot 6.0 only.

Edit File Name and Contents of IQ Bot Archive (IQBA) File When you rename the IQBA file name or update the contents of the file, an error message is displayed at the end of the sentence. The user is unable to classify documents from one learning instance, hence, simultaneously imports another learning instance. With validation, the validator (human) performs a manual check and updates text extracted from the digital document. Once fixed and saved, the updated document moves back to the successful queue where it can be picked up by an upstream automation task.

©

2019 Automation Anywhere. All rights reserved.     68

    Automation Anywhere - Using IQ Bot

Validator Audit Logs All events related to validation are stored in a log file, which can be found in the Windows Public folder. The logs are stored in a validator.events file and the location of the folder is %Public%\Documents \Automation Anywhere IQ Bot Platform\Logs\Audit. The following events are stored in the log file. • • • •

Name of the platform Computer name Time stamp Whether a document was validated successfully or not

Note: The logs stored in the validator.events file are updated asynchronously.

Improve Output Quality Using OCR Confidence Improve the output quality of IQ Bot Platform by using the SIR (System Identified Region) character level OCR confidence by having it compared to a pre-defined threshold. Having this confidence-based validation is especially helpful for a text type field which doesn’t have a robust validation mechanism as compared to other field types like Date or Number. For Date or Number fields too, the confidence-based validation can help to route a document having contentious values for a human to view even though the fields may satisfy the set validation criteria.

How to enable OCR confidence-based validation This feature is disabled by default. To enable this feature, open Settings.txt configuration file available in \Configurations\ and set the desired threshold value in the ConfidenceThreshold property. In this example, the threshold value is set to 99, ConfidenceThreshold=99 . When this feature is disabled, default value is set to 0, signifying that the feature is disabled. Note: The confidence threshold value is uniformly applicable across all the learning instances.

How does OCR confidence based validation work If, in a document, a field’s SIR character level confidence level is lower than that of the set confidence threshold, then the validation for that field fails, resulting in the failure of that document. Note: If a field’s value fails due to any other validation rule (for example, "Invalid Number Format") other than OCR confidence validation failure, you see that tooltip rather than the "Low confidence" tooltip. While you are training a document, the confidence-based validation failure against a field appears in an orange box during preview if no other validation errors exist for that field. Other validation errors take precedence over OCR character-level confidence validation. During Validation, the confidence-based validation failure is displayed. When you correct the field, this validation error is not displayed.

©

2019 Automation Anywhere. All rights reserved.     69

    Automation Anywhere - Using IQ Bot On the other hand, if the field having confidence-based validation failure does not require any correction, you can go ahead and submit the document. You are asked to reconfirm the document submission. Validator UI doesn’t stop users from saving a document which has only OCR confidence-based validation failures (unlike other validation rule failures). Once saved, the document is considered as successfully processed though not successful STP.

Prevent Automatic Copying of Documents to Staging Prevent automatic copying of production documents to staging for bot training. This helps in keeping training and production data separate to meet information security compliance requirements. To prevent automatic copying of production documents into staging: 1.

Open the Settings.txt file from %PROGRAMFILES(X86)%/Automation Anywhere IQ Bot 6.0/ Configurations folder.

2.

Assign False to the CopyProductionFiles property.

3.

Restart the Automation Anywhere Cognitive File Manager service from the service console.

Now, if you click on any Create Bot link, the IQ Bot Designer opens and the following message is displayed: There are no training docments available for this Bot. Upload some training documents for the associated learning instance and try again. Note: After making this change, to train Bots for the groups created in production, you need to manually upload sample documents resembling the production documents in staging for this learning instance.

Adding multi-language support Add support for multiple languages on IQ Bot Platform using the Domain Import REST API. • • • • • • • • • • • • • • • • • •

Afrikaans Belgian Catalan Czech Danish Dutch Flemish Hungarian Indonesian Malay Norwegian Polish Portuguese Romanian Slovakian Swedish Turkish Latin

©

2019 Automation Anywhere. All rights reserved.     70

    Automation Anywhere - Using IQ Bot In addition to above, the following languages have limited (beta) support for machine readable PDFs. Scanned PDFs and images may not return satisfactory results. Please contact Automation Anywhere services team if you need to use any of these languages. • • • • • • • •

Bulgarian Chinese-simplified Chinese-traditional Greek Japanese Korean Russian Serbian

Note: Before creating a domain, ensure that you have generated an authorization token. An authorization token is required to perform any task on IQ Bot. For more information on generating an authorization token, see Generate Authorization Token. To add support for multiple languages, perform the following steps: 1.

Create the Domain JSON structure that you need to pass to the Domain Import REST API. Note: Please contact Automation Anywhere services team to get JSON structure specific to the domain that you intend to use.

2.

Upload the JSON structure by using the Domain Import REST API endpoint to create the domain. Domain Import REST API HTTP POST URL: http://localhost:8100/domains/import Request Headers: Content-Type=application/json; charset=utf-8 ; xauthorization=authentication token POST Payload: Domain Metadata JSON Structure Response Payload (on success): none. Response Payload (on error): Default Error Response. Response HTTP Status Codes Code

Reason

Description

200

OK

Successful response.

400

Bad Input

The provided JSON Domain Metadata could not be parsed because the JSON was malformed or did not satisfy one of the Consistency Assertions

403

Forbidden

User is not allowed to access this API. Only users with "AAE_IQ Bot Admin" role can access this API.

©

2019 Automation Anywhere. All rights reserved.     71

    Automation Anywhere - Using IQ Bot Code

Reason

Description

409

Conflict

The Domain name already exists in the system or there was some other constraint violation while attempting to insert the data into the database

500

Internal Server Error

There was an unexpected exception while processing the domain import

Note: • • •

Call the Domain Import REST API on the same machine on which you have installed IQ Bot platform. The domain name used must be unique. It should not conflict with any of the existing domain names on the IQ Bot platform (based on a case insensitive comparison). Take a backup of your IQ Bot database before beginning to create custom domains in case at a later stage, you decide to go back to the default domain state.

You can use tools such as Postman to call Domain Import REST API to upload Domain JSON structure. An example of a request and response using Postman is provided in the following screen capture: Request

Success response Status: 200 OK Time: 228 ms The status 200 OK indicates that the domain is now successfully created. 3.

After creating the domain, log out and log back into the IQ Bot platform. You now have a domain with targeted languages available on the IQ Bot Platform when you create a learning instance.

©

2019 Automation Anywhere. All rights reserved.     72

    Automation Anywhere - Using IQ Bot Note: For a selected Domain, only those languages that have one or more aliases available, appear in the Primary language of files drop-down list.

Errors Generated While Editing Learning Instances Use case scenarios and error messages generated while editing a learning instance are explained in this topic. Case

Details

Message

Bot in training

Learning instance is in use due to ongoing bot training and you edit the same instance A) User 2 is editing the same learning Instance, or

Case 1: Simultaneous editing of Steps for case 1: same learning instance Same user or two users add Case 2: new fields to the same learning instance simultaneously. Adding a field and uploading a document to the same learning Steps for case 1: instance User 1 uploads a document to the same learning instance. User 2 adds a field while editing the same learning instance. Run and edit the same bot

Run the bot and then edit the same bot using the same user login or two different user logins.

IQ Bot Use Cases IQ Bot use cases, issues, and procedures to overcome these issues are explained in this topic.

IQ Bot Application Registration Use Cases IQ Bot user with admin privileges can register IQ Bot with Control Room.

©

2019 Automation Anywhere. All rights reserved.     73

    Automation Anywhere - Using IQ Bot Use Case

Description

IQ Bot is not registered with Control Room

If IQ Bot is not registered with Control Room, then this error message is displayed: IQ Bot is not registered with Automation Anywhere Enterprise Control Room. For more information see Registering IQ Bot with Control Room.

Control Room URL changes after IQ Bot application registration

You need to update the Control Room URL when the URL changes in the new installation of Control Room as a result of uninstallation and installation of Control Room. Update the Control Room URL from the Control Room Administration > Settings > General Settings.

IQ Bot URL changes after IQ Bot application registration

You need to update the IQ Bot URL when the URL changes in the new installation of IQ Bot as a result of uninstallation and installation. Update the IQ URL from the Administration > Settings > IQ Bot.

Authentication Use Cases IQ Bot User: Active Control Room 11 user with valid IQ Bot license (Developer or Bot Runner) and appropriate IQ Bot role Use Case

Description

1. When an authenticated IQ Bot user tries to access an IQ Bot URL

Prerequisites: • •

IQ Bot platform is successfully registered with Control Room 11 IQ Bot user exists in Control Room 11.

Steps: 1.

Log into IQ Bot URL: http(s)://IQ Boturl in a browser.

2.

Enter valid IQ Bot login credentials. The control is redirected to the IQ Bot URL: http(s)://IQ Boturl after successful authentication.

©

2019 Automation Anywhere. All rights reserved.     74

    Automation Anywhere - Using IQ Bot Use Case

Description

2. When the user having IQ Bot session tries to access an IQ Bot URL in another tab

Prerequisites: • •

IQ Bot platform is successfully registered with Control Room 11. An IQ Bot user is logged into IQ Bot Portal in a supported browser.

Steps: 1.

Open IQ Bot URL http(s)://IQBoturl in another tab in the same browser.

2.

The control is redirected to the exact IQ Bot URL http(s)://IQBoturl.

3. IQ Bot User signs in to Control Room 11 first Prerequisites: and then tries to access IQ Bot URL in the same • IQ Bot platform is successfully registered browser with Control Room 11. • IQ Bot user exists in Control Room 11. • This user has not logged in to IQ Bot portal. Steps: 1.

Log into Control Room 11.

2.

Open the IQ Bot portal URL in another tab or instance of the same browser.

You are successfully logged into IQ Bot portal and the IQ Bot URL opens. 4. When user sign out from Control Room

Prerequisites: • • •

IQ Bot platform is successfully registered with Control Room 11. IQ Bot User is currently logged in to Control Room 11. An IQ Bot session of the same user exists in another tab/instance of the same browser.

Steps: 1.

Sign out from Control Room 11.

2.

Open the IQ Bot session.

You are also signed out from the IQ Bot session.

©

2019 Automation Anywhere. All rights reserved.     75

    Automation Anywhere - Using IQ Bot Use Case

Description

5 a. User tries to log into IQ Bot portal with Incorrect User credentials

Prerequisites:

• 5 b. User with Account Disabled tries to log in to IQ Bot portal • • 5 c. Unexpected problem during login

IQ Bot platform is successfully registered with Control Room 11. User has incorrect user credentials OR User has account disabled

Steps: 1.

Enter your IQ Bot login credentials on the login page.

2.

If a user has incorrect user credentials or account disabled, one of the following error message (1 or 2) is displayed, In certain cases, for unexpected problem during login, error message 3 displays.

Error message 1: For incorrect credentials

Error message 2: Existing Control Room 11 message for disabled user

©

2019 Automation Anywhere. All rights reserved.     76

    Automation Anywhere - Using IQ Bot Use Case

Description

Error message 3: Error message for unexpected problem during login.

6. When user gets idled out of IQ Bot session

Prerequisites: • •

IQ Bot platform is successfully registered with Control Room 11 IQ Bot user is currently logged in to IQ Bot portal.

Steps: 1.

When no activity is performed on the IQ Bot portal UI for 20 minutes.

2.

After 20 minutes, when you view the IQ Bot portal UI, you are signed out of IQ Bot portal and the session expired notification is displayed.

3.

When you log into IQ Bot portal again, IQ Bot displays the in-progress activity. There is no interruption to the activity when the session becomes idle.

IQ Bot / Control Room value for idle timeout.

©

2019 Automation Anywhere. All rights reserved.     77

    Automation Anywhere - Using IQ Bot Use Case

Description

7. a) When a user does not have IQ Bot license (Developer/Bot Runner)

Prerequisites: •

OR b) When user has a license which is not IQ Bot Enabled.



OR c) User has a valid IQ Bot license but not a relevant IQ Bot Role

IQ Bot platform is successfully registered with Control Room 11. User does not have IQ Bot license (Developer/Bot runner) OR b) User has a license which is not IQ Bot enabled ORb) User has a valid IQ Bot license but not a relevant IQ Bot role.

Steps: 1.

Open the IQ Bot URL in a browser. The Control Room Login page is displayed.

2.

Log into IQ Bot using your IQ Bot login credentials. The following message is displayed on the browser if the user doesn't have an IQ Bot license or doesn't have an enabled license: "You are not authorized to log into IQ Bot Platform. Please contact your administrator for access." Note: If you are already logged into Control Room 11 in the same browser session, steps 1, 2, and 3 are skipped, this message is displayed.

3.

Click Go to Control Room.

4.

You are taken to the Control Room 11 login URL. If you are already logged into Control Room in the same browser session, you are automatically logged into Control Room 11.

©

2019 Automation Anywhere. All rights reserved.     78

    Automation Anywhere - Using IQ Bot Use Case

Description

8. Until the registration happens, the IQ Bot platform keeps prompting the user to go to Control Room to register.

Prerequisites: •

IQ Bot platform is not registered with Control Room 11

Description: 1.

Log into IQ Bot using the IQ Bot login URL in a browser or click on the IQ Bot shortcut on the desktop. The following message is displayed on the browser if the prerequisite is true:

2.

Click Go to Control Room. The Control Room 11 login page is displayed.

Note: If you are already logged into Control Room in the same browser session, you get automatically logged into Control Room 11. 9. User tries to access a URL which is not relevant to the role that he/she has.

Prerequisites: •

example: Validator user trying to access Services pages or • Services user trying to access Admin pages.

IQ Bot platform is successfully registered with Control Room 11 IQ Bot User is currently logged into IQ Bot portal with the Validator role.

Description: You try to access services work flow specific URL directly in the browser. URL examples: http://myiqbot:3000/learninginstances http://myiqbot:3000/learninginstances/ etc. You are denied access and an error message is displayed: Opps, you can't access that page. Clicking Back on the error message takes you back to resource which you were accessing earlier.

©

2019 Automation Anywhere. All rights reserved.     79

    Automation Anywhere - Using IQ Bot Use Case

Description

10. When a user who has an existing IQ Bot session logs into IQ Bot portal in another browser

Prerequisites: • •

IQ Bot platform is successfully registered with Control Room 11 An IQ Bot user is logged into IQ Bot portal in a supported browser A.

Description: 1.

Open IQ Bot URL https://IQBoturl in another browser or incognito tab in the same browser. You are redirected to the login page.

2.

Log into IQ Bot with your IQ Bot login credentials. After login, you are redirected to the IQ Bot portal or exact IQ Bot URL http(s):// IQBoturl.

When you try to perform any further action on the IQ Bot portal in browser A, you are logged off and the following message is displayed.

Note: You can continue working in browser B. This behaviour is similar to Control Room 11 session behaviour in Chrome browsers.

©

2019 Automation Anywhere. All rights reserved.     80

    Automation Anywhere - Installing IQ Bot

Installing IQ Bot A step-by-step guide to installing Automation Anywhere IQ Bot.

IQ Bot installation prerequisites Determine whether you have the required hardware and software prerequisites to install Automation Anywhere IQ Bot by verifying the IQ Bot installation prerequisites. This chapter helps you verify whether you have the required hardware and software to install Automation Anywhere IQ Bot. Before installing the software, verify that your environment supports the requirements mentioned in the following sections. Important: 1.

Do not install IQ Bot with a roaming profile. Install IQ Bot as a Windows Administrator.

2.

IQ Bot supports only SQL authentication. Windows authentication is not supported.

Supported operating systems IQ Bot Platform • • • • •

Windows Server 2008 R2 Standard (Recommended) Windows Server 2012 R2 Standard/Data Center (Recommended) Windows Server 2016 R2 Standard/Data Center (Recommended) Windows 8.1 Pro/Enterprise Windows 10 Pro/Enterprise

Hardware requirements IQ Bot Platform Minimum requirements

• • •

16 GB RAM Quad Core Processor 200 GB hard disk space* Ensure C: drive has 100 GB plus hard disk space.

Optimum requirements

• • •

32 GB RAM Octa Core Processor 500 GB hard disk space* Ensure C: drive has 100 GB plus hard disk space.

©

2019 Automation Anywhere. All rights reserved.     81

    Automation Anywhere - Installing IQ Bot If you have a two servers with 16 GB RAM, then we recommend you to install IQ Bot 6.0.1 and Enterprise Control Room 11.3.1.0 and Version 11.3.1.2 on separate servers. If you have a single server with 32 GB RAM, then we recommend you to install IQ Bot 6.0.1 and Enterprise Control Room 11.3.1.0 and Version 11.3.1.2 on same server. *Assuming the Data Management System (DMS) is installed on the same machine as IQ Bot. If DMS is installed on a separate machine, provision similar hard disk space on that machine.

Software requirements The following software are required for IQ Bot installation. Software

Details

Data Management System

Microsoft SQL Server 2012, 2014, 2016, 2017 (Express or Standard or Enterprise or later).

Automation Anywhere Enterprise Control Room Automation Anywhere Enterprise Control Room v 11.3. Refer to Automation Anywhere Enterprise Control Room to know the exact requirements. Web Browsers

The following Web browsers are supported: Chrome (version 69 or later)

Dependencies

Automation Anywhere IQ Bot is dependent on the following software. These are automatically installed during the installation process. • • • • •

Erlang v19.2 RabbitMQ v3.6.6 NodeJS v6.10.2 SQL Server Native Client v11.0 Microsoft .NET Framework 4.6

Note: 1.

You must have database administrator privileges (SYSADMIN) for the SQL database account being used during installation to create databases and to run the BULK INSERT statement.

2.

Keep the HTTPS certificate file (in PFX format) ready to enable HTTPS.

3.

The following ports used by IQ Bot services must be open: • • • • •

4.

Application access port (configurable): 3000 Database access port (configurable): 1433 Internal application services ports (fixed): 8100, 9002, 9991, 9992, 9995, 9996, 9997, 9998, 9999 Ignite cache ports to communicate with Control Room from backend: 47500 to 47600 and 47100 to 47200 RabbitMQ port: 5673

IQ Bot 6.0 ships and uses a portable version of Java 1.8.

©

2019 Automation Anywhere. All rights reserved.     82

    Automation Anywhere - Installing IQ Bot

Automation Anywhere Enterprise Control Room IQ Bot is integrated with Control Room for user management. When installing IQ Bot: •

• •

Enterprise Control Room Version 11.3.1.1, compared with Version 11.3.1, has an updated SDK dependency. IQ Bot Version 6.0.1 has an updated SDK to be compatible with Enterprise Control Room. For express installation: Automation Anywhere Version 11.3.1.1 and Version 11.3.1.2 can be installed in express mode before installing IQ Bot. For custom installation: Automation Anywhere Version 11.3.1.1 and Version 11.3.1.2 can be installed in custom mode before installing IQ Bot.

Note: •

Make a note of the database credentials used for Control Room installation as you will need them for IQ Bot installation in case you want to use the same database.

Compatibility The following table contains a list of IQ Bot versions that are compatible with Enterprise Control Room versions.

IQ Bot versions and Automation Anywhere compatibility matrix IQ Bot Version

Automation Anywhere Enterprise Control Room 10.4

10.5.2

10.5.5

Version 11.3

Version 11.3.1 and Version 11.3.1.1

Version 11.3.1 and Version 11.3.1.2

5.0

Y

N

N

N

N

N

5.1.x

N

Y

Y

N

N

N

5.2.x

N

N

Y

N

N

N

5.3

N

N

Y

N

N

N

5.3.x

N

N

Y

N

N

Y

6.0

N

N

N

Y

N

Y

6.0.1 N

N

N

Y

Y

Y

N

N

N

Y

Y

Y

6.1

Installing IQ Bot in express mode Install IQ Bot in express mode if you want to install it with the default settings. Use the Automation_Anywhere_IQ_BOT_.exe file to install Automation Anywhere IQ Bot.

©

2019 Automation Anywhere. All rights reserved.     83

    Automation Anywhere - Installing IQ Bot The setup wizard will guide you to install Automation Anywhere IQ Bot in either express mode or custom mode. During the process of installation, the software dependencies or any prerequisites that might be missing are also installed.

Configuring prerequisites for IQ Bot express installation 1.

Enable SQL authentication, for example, the TCP protocol should be enabled on the SQL server and should listen to the local host at port 1433.

2.

Set SQL server instance name to AACRSQLEXPRESS.

3.

Create a user with aaadmin user name and sysadmin privileges and password aabots@123.

Installing Automation Anywhere IQ Bot in express mode Perform the following steps to install Automation Anywhere IQ Bot in express mode. 1.

Double click on the Automation_Anywhere_IQ_BOT_.exefile. The Automation Anywhere IQ Bot setup wizard is displayed.

2.

Click Yes and then click Next.

3.

Click Next. The Prerequisites page is displayed. Note: Automation Anywhere Enterprise Control Room v 11.3 must be pre-installed on the target machine in express mode. This is needed for communication with Enterprise Control Room using default settings.

4.

Review the prerequisites carefully and click Next. The License Agreement page is displayed.

5.

Read the license agreement, accept the agreement, and click Next. The Installation Type page is displayed: Express and Custom. Note: Express installation results in HTTP based IQ Bot without Active Directory support.

6.

Select Express and click Next. The Ready to Install The Program page is displayed. Note: In case Automation Anywhere Enterprise Control Room v 11.3 is not preinstalled on the target machine in express mode or the installer is unable to communicate with the Control Room/SQL Express, the unable to proceed with installation error is displayed after clicking Next. If you want to review or change the installation settings, click Back. If you want to exit the setup wizard, click Cancel.

7.

Click Install. The express installation begins. Note: If you click Cancel at any point, a confirmation dialog box is displayed. • •

Click Yes to exit the Setup Wizard. This rolls back all the changes. Click No to resume.

©

2019 Automation Anywhere. All rights reserved.     84

    Automation Anywhere - Installing IQ Bot 8.

The system displays the Finished page after a few minutes. This indicates a successful installation of the IQ Bot.

If you want to launch the IQ Bot, double-click on the IQ Bot shortcut on the desktop. Note: In express mode, IQ Bot is installed with the following default settings: •

Security Type: None (HTTP)



Web configuration:



Database configuration: (user: aaadmin ; Authentication: SQL)



Host Gateway: (SSL Offloading: No)



Output Path: C:\Users\Public\Documents\Automation Anywhere IQBot Platform \Output



Logging Path: C:\Users\Public\Documents\Automation Anywhere IQBot Platform\Logs



Installation Path: C:\Program Files (x86)\Automation Anywhere IQ Bot

Installing IQ Bot in custom mode Install IQ Bot in custom mode if you want to install a customized IQ Bot by entering configuration details. The custom mode installation allows you to enter configuration details such as security, connect to MS SQL database, specify load balancer for scaling, define output folder for your processed documents and the installation folder. Perform the following steps to install Automation Anywhere IQ Bot in custom mode: 1.

Run the Automation_Anywhere_IQ_BOT_.exe file, select the Custom option on the Automation Anywhere IQ Bot setup wizard and click Next.

2.

Enter the following database server details on the Database Configuration page and click Next. • •

Hostname or IP: Enter the Hostname or IP address of the MS SQL database server. Port: Enter the port number of the MS SQL database server. Tip: Hostname is auto-populated as localhost and Port as 1433 in case a SQL Express database server is installed locally on the target machine.

• •

Username: Enter the username of the of the MS SQL database server. Password: Enter the password of the MS SQL database server. Note: Unable to connect to the SQL server with given configuration. error message is displayed if: • • •

you do not enter the correct Hostname/IP address and port number you do not enter the correct MS SQL server credentials, or the database user has insufficient privilege to connect to the MS SQL server.

You must have database administrator privileges (SYSADMIN) for the SQL database account that is used during installation so that databases can be created.

©

2019 Automation Anywhere. All rights reserved.     85

    Automation Anywhere - Installing IQ Bot Note: When IQ Bot and the database instance already exists and IQ Bot is installed again, IQ Bot takes the default database instance during installation and an error message is not displayed. 3.

Enter the following details on the IQ Bot Portal Configuration page and click Next. •



IQ Bot Portal Security: Select the security type - HTTPS or HTTP. For HTTPS, ensure that you have a valid PFX certificate file, which you browse and select. You are also required to type the certificate passphrase. IQ Bot configuration: •

Hostname or IP address: Enter the Hostname or IP address of IQ Bot. Note: This is auto-populated by default using the Fully Qualified Domain Name (FQDN) of the machine on which you are installing IQ Bot.



Port: Type the port number. Note: Auto-populated as 3000 by default and recommended.

Note: When using an HTTPS certificate with alias name which is different from machine's hostname (FQDN - fully qualified domain name), enter the alias name as hostname. For information on configuring IQ Bot to support HTTPS and TLS 1.2, see Confirming successful installation. In case you have installed Enterprise Control Room in HTTPS and need to install IQ Bot in HTTP mode, see Configuring IQ Bot with HTTP and HTTPS. In case you need to re-install HTTPS SSL Certificate for Secure Communication when it expires, refer to Re-installing HTTPS SSL certificate for secure communication when it expires section. To create a self-signed certificate with Subject Alternative Name (SAN), refer to Creating a self-signed certificate with Subject Alternative Name (SAN) section. Note: IQ Bot can horizontally scale in cluster mode to support higher throughput if needed. For more information, see Installing IQ Bot in cluster mode. 4.

On the Load Balancer Configuration page, do the following: •

Use same as IQ Bot: Keep the same configuration values for load balancer as specified on IQ Bot page earlier. By default, it is selected. Keep this option selected, if: • •



You are installing the IQ Bot on a single machine or You intend to keep load balancer configuration same as IQ Bot page.

If the configuration values for load balancer are different from IQ Bot page, clear the Use same as IQ Bot Portal check box and do the following: • •

Load Balancer Hostname: Enter the Hostname or IP address of the load balancer. Load Balancer Port: Enter the port number of the load balancer.

Note: a.

When installing on AWS, replace the Host Gateway name with the Public DNS to access IQ Bot server from an external location.

b.

During re-installation, the hostname of the load balancer and port are automatically detected by the installer based on the previous installation details stored in Enterprise Control Room.

©

2019 Automation Anywhere. All rights reserved.     86

    Automation Anywhere - Installing IQ Bot Change them as needed. This is especially helpful when you install multiple instances of IQ Bot for scalability. You need not remember the details from one instance to another. For more information on Cluster mode configuration, see Installing IQ Bot in cluster mode. c.

When using an HTTPS certificate in load balancer, with alias name which is different from machine's hostname (FQDN - fully qualified domain name), enter the alias name as hostname.

d.

The installer takes the value from the previous page (IQ Bot Portal Configuration) but shows the pre-fetched values in the disabled text boxes from Control Room.

Note: While performing load balancer configuration, SSL offloading is disabled by default if the security mode in the previous step (IQ Bot Portal Configuration screen) is set as HTTPS. To enable SSL offloading for load balancer, set the security mode in the previous mode as HTTP. 5.

Check Load Balancer can handle SSL Offloading check box if your load balancer has such a capability and click Next.

6.

On the Destination Folder page, do the following: •

Installation Path: If required, select a different path where you want to install IQ Bot. Default and recommended installation path is -



C:\Program Files(x86)\Automation Anywhere IQ Bot \ Output Path: Select the output path where the output is stored. Default output path is C:\Users\Public\Documents\Automation Anywhere IQBot Platform\Output Note: • •

Output path can also be a network shared path. During re-installation, the Output Path is automatically detected by the installer based on previous installation details stored in Enterprise Control Room. Change it as needed.

7.

Make changes to the destination folders according to your preferences and click Next.

8.

Verify and review your installation settings on the Ready to Install the Program and click Install to start the installation. The installation starts and In Progress page is displayed. Note: • •

9.

During the installation process, Windows Security alert might prompt you to allow the installer to install Erlang. When prompted, click Allow access. Sometimes, this Windows Security Alert window might not be visible and it might be hidden behind other active windows. Using the Alt + TAB key combination, double check that the Windows Security Alert window is not hidden behind other visible windows.

Click Allow access and allow the installation to complete and click Finish on the Installation Successful page. An IQ Bot icon is created on the desktop.

©

2019 Automation Anywhere. All rights reserved.     87

    Automation Anywhere - Installing IQ Bot

Installing IQ Bot in cluster mode Install IQ Bot in cluster mode if you want improved throughput.

Installing IQ Bot in cluster mode Note: IQ Bot supports clustering of upto five IQ Bot installations. 1.

Install IQ Bot on the target machines in custom mode. During installation, on the Load Balancer Configuration screen, enter the load balancer host name and port.

2.

Select the Load Balancer can handle SSL Offloading option if the load balancer supports it to enable SSL offloading.

3.

Provide shared output path on the Destination Folder screen.

4.

Ensure that you use same database server details during installation on all the nodes.

Post installation steps 1.

Get the hostname of primary node, that is, Server 1. The primary node is the node where IQ Bot was installed first.

2.

Open the command prompt with the administrative privilege.

3.

Navigate to the folder.

4.

Run messagequeue_cluster_configuration.bat and pass the hostname of primary node: C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations> messagequeue_cluster_configuration.bat Server1

Only if you have IQ Bot already installed, before installing it in the cluster mode, you need to uninstall IQ Bot, stop RabbitMQ service, clean existing RabbitMQ cookies.

©

2019 Automation Anywhere. All rights reserved.     88

    Automation Anywhere - Installing IQ Bot

Installation process for machines with IQ Bot installed • •

Open ports 4369 and 25672 and add the inbound firewall rules to allow traffic to these ports on each target machine. RabbitMQ cookies must be in sync to run any RabbitMQ commands to add nodes to the cluster. If IQ Bot is already installed on the target machine, the existing cookies must be cleaned up. Perform the following clean up steps before setting up a cluster.

• •

1.

Uninstall IQ Bot from Program and Features.

2.

Stop the RabbitMQ service, by running this command: net stop RabbitMQ /yes

3.

Uninstall RabbitMQ from %Programfiles%\RabbitMQ Server\uninstall.

4.

Stop the epmd.exe and its descendants by running this command: Taskkill /IM epmd.exe /F

5.

Stop erl.exe and erlsrv.exe and its descendants by running the following commands: a.

Taskkill /IM erl.exe /F

b.

Taskkill /IM erlsrv.exe /F

6.

Uninstall Erlang from %Programfiles%\erl8.2\Uninstall.

7.

Remove the following folders if they are not removed from uninstall: %Programfiles%\Rabbit MQ Server and%Programfiles%\erl8.2 folder if it is not removed from uninstall.

8.

Remove the following folders: %appdata%\RabbitMQ, %WINDIR%\.erlang.cookie, %USERPROFILE%\.erlang.cookie folders.

The load balancer details are available, that is, name of the load balancer, port and type of security used, for example, HTTP or HTTPs. Share a folder for configuring the output path. Ensure to provide the access rights to the user who is installing IQ Bot.

Removing node from cluster before uninstalling the IQ Bot If you want to remove an IQ Bot installation from a cluster, run the following script. 1.

Open the command prompt with the administrative privilege.

2.

Run messagequeue_remove_node.bat file from the installation folder using the following command: C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations> messagequeue_remove_node.bat

Related reference Installing IQ Bot in the cluster mode on Amazon EC2

©

2019 Automation Anywhere. All rights reserved.     89

    Automation Anywhere - Installing IQ Bot Install IQ Bot in the cluster mode on Amazon Elastic Compute Cloud (Amazon EC2).

Installing IQ Bot in the cluster mode on Amazon EC2 Install IQ Bot in the cluster mode on Amazon Elastic Compute Cloud (Amazon EC2). If you need to install IQ Bot in the cluster mode on Amazon EC2, make a note of the following details. 1.

The name for the Amazon EC2 RabbitMQ cluster is in this format: rabbit@ip-XXX-XXX-XX-XX.

2.

Connecting to a node works if both the nodes are in the same local network, but if you need to connect to a cluster outside local Amazon EC2 network, configure the host file of node 2.

3.

Add entry in the host file where AA.AA.AAA.AAA is public IP of node 1. AA.AA.AAA.AAA ip-XXX-XX-XX-XX

Note: If all the IQ Bot instances in a cluster are not a part of the same domain, ensure that the following services are running using the Administrator user login on each instance. • • •

Automation Anywhere Cognitive Projects Automation Anywhere Cognitive Validator Automation Anywhere Cognitive File Manager

To run a service using the Administrator user login, perform the following procedure. 1.

Click Task Manager > Services > Open Services.

2.

Right-click on the target service, for example, Automation Anywhere Cognitive Projects and click Properties.

3.

On the Properties dialog box, select This account and enter the credentials for the Administrator user.

4.

Click OK and restart this service. Repeat these steps for the remaining services on this instance and all the other IQ Bot instances in the cluster.

Registering IQ Bot with Control Room Find out how to register IQ Bot with Control Room. IQ Bot must be installed successfully before registering it with Enterprise Control Room. Note: Before registering the IQ Bot, restart the Automation Anywhere Cognitive Console service. IQ Bot can be accessed only if you register it with Control Room. 1.

Log into Control Room as an administrator. Note: If you had already logged into Control Room in the same browser session, you are logged into IQ Bot automatically.

2.

Click on Administration > Settings > IQ Bot.

3.

Click Edit... in the IQ Bot section. A text box is displayed.

4.

Enter the URL for IQ Bot and click Save changes.

©

2019 Automation Anywhere. All rights reserved.     90

    Automation Anywhere - Installing IQ Bot If you want to test whether IQ Bot is registered successfully, log into IQ Bot with a valid IQ Bot role. If the application registration fails, try unregistering and registering the application again.

Generate Authorization Token Before performing an IQ Bot task, get authorization using an authorization token. Follow the steps to generate an authorization token: Pass the user credentials in body of the POST request using the authentication REST API endpoint. HTTP POST URL: http://localhost:8100/authentication Request Headers: Content-Type=application/json POST Payload: {"username": "{{Username}}", "password": "{{Password}}"} Response Payload (on success): none Response Payload (on error): Default Error Response Success response Status: 200 OK The status 200 OK indicates that the authorization token is now successfully generated.

©

2019 Automation Anywhere. All rights reserved.     91

    Automation Anywhere - Installing IQ Bot

Upgrading and downgrading IQ Bot Uninstall and install a higher version to upgrade. Uninstall and install a lower version of IQ Bot to downgrade. To upgrade IQ Bot, perform the following procedure. 1.

Create a new folder in any location and take a backup of the Settings.txt for your reference from the folder to this new folder.

2.

Take a backup of the existing IQ Bot databases before starting the upgrade.

3.

Follow the uninstallation process. For more information, see Uninstalling IQ Bot.

4.

Copy a higher version of IQ Bot installable file from to your local system.

5.

Follow the installation process. For more information, see Installing IQ Bot in express mode, and

Note: • •

Refer to the settings from the Settings.txt file to enter the configuration values while you are installing a higher version of the product. Take a back up of your database. If you have a back up, you can restore it in case of an issue or you can downgrade to a desired IQ Bot version. For more information on IQ Bot databases, see Databases.

To downgrade IQ Bot, perform the following procedure. 1.

Uninstall the higher version of IQ Bot. For example, IQ Bot 6.0.

2.

Take a backup of the current databases. For example, databases of IQ Bot 6.0.

3.

Remove the backup of the current databases. For example, databases of IQ Bot 6.0.

4.

Restore the database backup of the lower version of IQ Bot. For example, IQ Bot 5.3.

5.

Install the lower version of IQ Bot. For example, IQ Bot 5.3.

If you have any queries related to the compatible versions of IQ Bot and database, see the Compatibility section.

Uninstalling IQ Bot Uninstall IQ Bot and its dependencies.

Uninstalling Automation Anywhere IQ Bot using IQ Bot installer To uninstall Automation Anywhere IQ Bot: 1.

Double-click on the Automation_Anywhere_IQ_BOT_.exe installer file. The Automation Anywhere IQ Bot - wizard is displayed.

2.

Enter administrative privileges in the User Access Control dialog box if a dialog box is displayed. Note: Make sure to close all existing browser instances running IQ Bot before you begin uninstallation.

©

2019 Automation Anywhere. All rights reserved.     92

    Automation Anywhere - Installing IQ Bot 3.

Click Next. The Ready to Remove page is displayed.

4.

Click Remove. The uninstallation of IQ Bot begins. Note: During the uninstallation process, the following setup information might be displayed. Click OK to continue. If you click Cancel, the uninstallation is aborted. For more information, see Frequently asked questions.

5.

Once the backup files are removed, the Finished page is displayed. Click Finish to complete the uninstallation.

Note: Uninstalling IQ Bot does not result in deletion of IQ Bot database. You must manually uninstall the following dependencies from Windows Control Panel: • • • •

Erlang v19.2 RabbitMQ v3.6.6 NodeJS v6.10.2 SQL Server Native Client v11.0

Frequently asked questions Find answers to frequently asked questions related to IQ Bot. 1.

I am unable to access the Cognitive Solutions Console Web page after installing Automation Anywhere IQ Bot. What should I do? Ensure that the status of the Automation Anywhere Cognitive Console service is started and its Status is set to Running in the Windows Services window. Tip: To open the Windows Services window, click Start Run and enter services.msc in the Run dialog box and press the Enter key.

2.

Why is the following message displayed when I try to uninstall Automation Anywhere IQ Bot? What services and files must be updated when I try to uninstall Automation Anywhere IQ Bot? “The setup must update files or services that cannot be updated while the system is running. If you choose to continue, a reboot will be required to complete the setup” This message is automatically given by Windows Installer if it detects that some resources of the program you want to uninstall are still in use. Click OK to resume installation and restart the machine once installation is completed.

3.

Why am I unable to see the list of learning instances in the IQ Bot command? How do I resolve this? The issue could be because of the following reasons: • •

4.

If IQ Bot application registration is not completed successfully in Automation Anywhere Enterprise Control Room, the list of learning instances is not displayed. If you have not created any learning instance on the IQ Bot, the list in the IQ Bot command in Automation Anywhere is empty.

When I run the installer, the following error message is displayed after the Database Configuration page of installation wizard:

©

2019 Automation Anywhere. All rights reserved.     93

    Automation Anywhere - Installing IQ Bot “The given database user doesn't have necessary administration privileges. Please make the necessary change and try again.” Ensure that you allocate the correct administration privileges to proceed with the installation. 5.

How do I determine the build number of my IQ Bot installation? In Windows Explorer, navigate to the installation path of your IQ Bot. By default, this is C:\Program Files (x86)\Automation Anywhere IQ Bot . Here, open the ProductReleaseInfo.xml file. The tag holds the version number of your IQ Bot installation.

Healthcheck API response in case RabbitMQ fails to start Check the status of each IQ Bot service using the Healthcheck API when RabbitMQ fails to start. The Healthcheck response for RabbitMQ start up failure is different in case of FileManager, Project, Validator, VisionBot as described in the following table. Service Name

Healthcheck Response

Reason for failure

FileManager

Failure 1:

Failure 1

http:// :/ healthcheck

localhost refused to connect



Failure 2: localhost refused to connect

RabbitMQ node/service went down while Filemanager service was running.

Failure 2 •

RabbitMQ node/service was already down when the Filemanager service started.

Projectttp:// :/ healthcheck

Failure:

Failure

localhost refused to connect



Validatorttp:// :/ healthcheck

Failure:

Failure

localhost refused to connect



VisionBotManagerttp:// :/ healthcheck

Failure:

Failure

localhost refused to connect



©

RabbitMQ node/service is down.

RabbitMQ node/service is down.

RabbitMQ node/service is down.

2019 Automation Anywhere. All rights reserved.     94

    Automation Anywhere - Installing IQ Bot Service Name

Healthcheck Response

Reason for failure

Gateway-2 servicehttp:// :8100/ healthcheck

Application: gateway-2

Reason for Failure No. 1:

Failure 1:

Port is blocked. Gateway-2 service is running.

localhost refused to connect Failure 2: localhost refused to connect

Reason for Failure No. 2: Gateway-2 service is not running.

Configuring IQ Bot with HTTP and HTTPS Configure IQ Bot with HTTP and HTTPS to access IQ Bot using HTTPS and HTTP in the IQ Bot URL.

Configuring IQ Bot with HTTPS and HTTP Prerequisites: The following certificate files are required: • • •

PFX file CA Bundled Certificate from Enterprise Control Room (with all intermediate certificate information) Public Certificate from Enterprise Control Room

Note: If you have set up Enterprise Control Room or IQ Bot with HTTPS, then configure IQ Bot with HTTPS before registering IQ Bot. For more information see Registering IQ Bot with Control Room.

Configuring IQ Bot with HTTPS when Enterprise Control Room is configured with HTTPS 1.

Setup IQ Bot using PFX file with HTTPS configuration during installation.

2.

Put bundled certificate of Control Room into IQ Bot folder after IQ Bot installation. Folder location: C:\Program Files (x86)\Automation Anywhere IQ Bot \Portal \keys Note: File name should be Ca.crt

3.

Add certificate to keystore for IQ Bot by running the following command in administrator mode: "JRE location" -import -alias cr -keystore "cacerts location of iq bot" file "public certificate file" For Example: C:\Program Files (x86)\Automation Anywhere IQ Bot \JRE \1.8.0_161\bin\keytool.exe" -import -alias cr -keystore "C:\Program Files (x86)\Automation Anywhere IQ Bot \JRE\1.8.0_161\lib \security\cacerts" -file "C:\Certificate\Publiccertificate.crt Note: This is a public certificate of Enterprise Control Room

©

2019 Automation Anywhere. All rights reserved.     95

    Automation Anywhere - Installing IQ Bot

Importing public certificate into Enterprise Control Room To import public certificate into Enterprise Control Room, run the following command in administrator mode from the AAE Installation path, for example, from the C:\Program Files\Automation Anywhere\Enterprise: jre\bin\java -jar certmgr.jar -appDir "C:\Program Files \Automation Anywhere\Enterprise" -importTrustCert "C:\Certificate\Ca.crt" Note: This is the IQ Bot certificate.

Configuring IQ Bot with HTTPS when Enterprise Control Room is configured with HTTP 1.

Set up IQ Bot using PFX file with HTTPS configuration during installation.

2.

Copy bundled certificate of Automation Anywhere Enterprise Control Room into IQ Bot Portal folder after IQ Bot installation: \Portal\keys. Note: File name should be Ca.crt.

Importing public certificate into Enterprise Control Room To import public certificate into Control Room, run the following command in administrator mode from AAE installation path, for example, from : For Example: jre\bin\java -jar certmgr.jar -appDir "C:\Program Files\Automation Anywhere \Enterprise" -importTrustCert "C:\Certificate\Ca.crt" Note: This is the IQ Bot certificate.

Configuring IQ Bot with HTTP when Enterprise Control Room is configured with HTTPS 1.

Copy bundled Control Room certificate into IQ Bot folder after installing IQ Bot: \Portal\keys. Note: File name should be Ca.crt.

2.

Add certificate to keystore for IQ Bot by running the following command in the administrator mode: "JRE location" -import -alias cr -keystore "cacerts location of iq bot" file "public certificate file". For example: "C:\Program Files (x86)\Automation Anywhere IQ Bot \JRE \1.8.0_161\bin\keytool.exe" -import -alias cr -keystore "C:\Program Files (x86)\Automation Anywhere IQ Bot \JRE\1.8.0_161\lib \security\cacerts" -file "C:\Certificate\Publiccertificate.crt" Note: This is a public certificate of Control Room.

©

2019 Automation Anywhere. All rights reserved.     96

    Automation Anywhere - Installing IQ Bot

Creating a user with an IQBotValidator, IQBotServices,and IQBotAdmin role in Enterprise Control Room Create users in Enterprise Control Room to access the IQ Bot to perform the role of an administrator, bot creator, and a validator. You can create an administrator, services, and validator IQ Bot users with Windows credentials using these roles: IQBotAdmin, IQBotServices, and IQBotValidator in Enterprise Control Room. Note: IQ Bot supports a maximum of five concurrent users. Tip: Active Directory users are authenticated with their Active Directory credentials and Non-Active Directory Users are authenticated with credentials that are stored in the Enterprise Control Room database. Users in Enterprise Control Room are created depending on the type of user configured during installation. To create a user: 1.

Click on the Create User link. The Create User page is displayed.

2.

Enter the required information on the Create User page. Note: • • •

3.

The First name and Last name fields are optional. If you decide to have a First name and Last name, you can also use Numbers, Spaces ( ), Period (.), Hyphen (-), and Underscore (_). For a Non-Active Directory User, you must provide information in each field. Enter the password if you do not want to configure the Outgoing Mail Server settings.

Select a license to be allocated to the user from the Allocate a device license to user area. Note: An alert message is displayed if license slots are not available for a role.

4.

Click Save to allocate the license to the user.

Note: To switch a user type from Development to Runtime or vice versa depending on the automation requirements of your organization, you can update the license type from the License Management page in Enterprise Control Room. Once a Validator or a Services user is created, an email is sent to the user. The user is asked to: • •

Verify the email ID and set the Enterprise Control Roomaccess password, if the Enterprise Control Room is configured for Non-Active Directory users. Verify the email ID, if the Enterprise Control Room is configured for Active Directory users.

For information on creating users, see Enterprise Control Room User Guide. For information on IQ Bot specific user roles and permissions, see User roles and permissions.

©

2019 Automation Anywhere. All rights reserved.     97

    Automation Anywhere - Installing IQ Bot

Re-installing HTTPS SSL certificate for secure communication when it expires Re-install HTTPs SSL certificate when your HTTPS SSL certificate expires. The HTTPS SSL certificate is required for secure and encrypted communication between your browser and IQ Bot to protect highly confidential online transactions such as online financial and shopping transactions. The padlock icon on your browser indicates that you have an active secure connection. To enable a secure connection, you need the HTTPS SSL certificate. 1.

Go to %installation_dir%\Configurations and as an administrator, and run stopanduninstallallservices.bat.

2.

Go to %installation_dir%\Portal\keys and take a backup of both cert.crt, key.key, and ca.cert file.

3.

Convert .pfx of IQ Bot certificate in .crt format and .key by running the following commands: •

Fetch an encrypted key from pfx. openssl.exe pkcs12 -in "path_to_cert\example.pfx" -nocerts -out "path_to_cert\example encp.key"



Convert an encrypted key to a readable format. openssl.exe rsa -in "path_to_cert\example encp.key" -out "path_to_cert \key.key". This command converts encrypted key to a readable format.



Convert .pfx to .crt format. openssl.exe pkcs12 -in "path_to_cert\example.pfx" -clcerts -nokeys -out "path_to_cert\cert.crt".



Fetch the CA.cert file from Control Room certifcate (.pfx) file only if the Control Room certificate also expires. openssl pkcs12 -in -cacerts -nokeys -chain -out

4.

Copy or replace cert.crt, key.key, and ca.cert on location “%installation_dir%\Portal\keys”.

5.

Go to %installation_dir%\Configurations and as administrator, run installandstartervices.bat

Related information https://www.instantssl.com/ssl-certificate-products/https.html https://www.websecurity.symantec.com/security-topics/what-is-ssl-tls-https

©

2019 Automation Anywhere. All rights reserved.     98

    Automation Anywhere - Installing IQ Bot

Creating a self-signed certificate with Subject Alternative Name (SAN) Create a self-signed certificate with Subject Alternative Name (SAN) when you want to use an SSL certificate for multiple domains. 1.

Create a file with the name domain.cnf and add the following configuration as per your requirement. [req] default_bits = 2048 prompt = no default_md = sha256 x509_extensions = v3_req distinguished_name = dn [dn] C = ES ST = MyState L = MyCity O = MyOrg emailAddress = [email protected] (Any email address) CN = sss-laptop136.aaspl-brd.com (CR FQDN Url Name) [v3_req] subjectAltName = @alt_names [alt_names] DNS.1 = sss-laptop136.aaspl-brd.com (CR FQDN Url Name) DNS.2 = sss-laptop151.aaspl-brd.com (IQBOT URL FQDN Name)

2.

Download Openssl utility.

3.

Create the certificate either on Windows or on Linux: •

Run the following command to create the certificate on Windows: openssl.exe req -new -x509 -newkey rsa:2048 -sha256 -nodes -keyout "D:\ssc\ssc\key.key" -days 3560 -out "D:\ssc\ssc\cert.crt" -config "D:\ssc\ssc\domain.cnf"



Run the following command to create the certificate on Linux: openssl req -new -x509 -newkey rsa:2048 -sha256 -nodes -keyout /tmp/ cert/key.key -days 3560 -out /tmp/cert/cert.crt -config /tmp/cert/domain.cnf

4.

Create the .pfx file from cert and key file:

©

2019 Automation Anywhere. All rights reserved.     99

    Automation Anywhere - Installing IQ Bot •

Run the following command if you want to create the .pfx file from cert and key file on Windows: openssl.exe pkcs12 -export -out "D:\ssc\ssc\sss-aspl.pfx" -inkey "D: \ssc\ssc\key.key" -in "D:\ssc\ssc\cert.crt"



Run the following command if you want to create the .pfx file from cert and key file on Linux: openssl.exe pkcs12 -export -out /tmp/cert/sss-aspl.pfx -inkey /tmp/ cert/key.key -in /tmp/cert/cert.crt"

5.

Import the .pfx file in IIS. Note: Use the same .pfx file with installation of IQ Bot.

6.

Run the following command to import the certificate in the Java keystore: keytool.exe -import -alias dev -keystore "C:\Program Files (x86)\Java\jre1.8.0_91\lib\security\cacerts" -file "D:\cert\xyz.com.crt" Note: If the certificate is not imported in the Java keystore, then Enterprise Control Room displays the following error message Java security certificate path validator signature check failed.

7.

Go to %installation_dir%\Configurations and run stopanduninstallallservices.bat as an administrator.

8.

Go to %installation_dir%\Configurations and run installandstartervices.bat as an administrator.

9.

Import the cert.crt file to the Trusted Root using the Microsoft Management Console (MMC).

Databases Find out which databases and tables are created after installation of IQ Bot. Log into the database using the and to check the names of the databases and tables using , and . The system creates the following databases: •

• • • •

AliasData: This is the master database that stores data about different aliases related to a field in the system for different document types. This database also has the information about the languages and different document types supported by the IQ Bot system. ClassifierData: This database has the data related to classification output for both layout and content classification. Configurations: This database stores data about the configurations used while installing IQ Bot, for example, Control Room URL, output path, and so on. FileManager: This database stores data related to learning instances, files uploaded related to learning instances, and vision bots. MLData: This database stores the training data used by Machine Learning (ML) system in IQ Bot.

©

2019 Automation Anywhere. All rights reserved.     100

    Automation Anywhere - Installing IQ Bot

User roles and permissions Find out the roles and associated permissions for each IQ Bot user to know the role to which you need access. Your permission to access certain areas in IQ Bot are defined depending on your role or persona. For example, as a Validator, you will not have permissions to access the Audit Trial Log page because only Automation Managers have access to the tasks on this page. All roles and permissions for the IQ Bot are defined in Control Room. For more information on creating these roles, see Control Room User Guide. The permissions and areas of IQ Bot that can be accessed by users based on their roles are described in the following table. Table 2: Roles and permissions for IQ Bot The following table describes the different IQ Bot roles and the associated permissions: Roles/Personas

Default IQ Bot Permissions

Access to Tabs

AAE_IQ Bot Admin

All IQ Bot permissions

• • • • •

Dashboard Learning Instances Bots Domains Administration - Migration utility can be accessed using this tab.

AAE_IQ Bot Services

All permissions available as per View my learning instances

• • •

Dashboard Learning Instances Bots

AAE_IQ Bot Validator

Launch Validator permission available as per View my learning instances

Learning Instances

If both services and administration roles are allocated to a user, IQ Bot displays the following five tabs: • • • • •

Dashboard Learning Instances Bots Domains Administration

©

2019 Automation Anywhere. All rights reserved.     101

    Automation Anywhere - Installing IQ Bot

IQ Bot Use Cases IQ Bot use cases, issues, and procedures to overcome these issues are explained in this topic.

IQ Bot Application Registration Use Cases IQ Bot user with admin privileges can register IQ Bot with Control Room. Use Case

Description

IQ Bot is not registered with Control Room

If IQ Bot is not registered with Control Room, then this error message is displayed: IQ Bot is not registered with Automation Anywhere Enterprise Control Room. For more information see Registering IQ Bot with Control Room.

Control Room URL changes after IQ Bot application registration

You need to update the Control Room URL when the URL changes in the new installation of Control Room as a result of uninstallation and installation of Control Room. Update the Control Room URL from the Control Room Administration > Settings > General Settings.

IQ Bot URL changes after IQ Bot application registration

You need to update the IQ Bot URL when the URL changes in the new installation of IQ Bot as a result of uninstallation and installation. Update the IQ URL from the Administration > Settings > IQ Bot.

Authentication Use Cases IQ Bot User: Active Control Room 11 user with valid IQ Bot license (Developer or Bot Runner) and appropriate IQ Bot role

©

2019 Automation Anywhere. All rights reserved.     102

    Automation Anywhere - Installing IQ Bot Use Case

Description

1. When an authenticated IQ Bot user tries to access an IQ Bot URL

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11 IQ Bot user exists in Control Room 11.



Steps: 1.

Log into IQ Bot URL: http(s)://IQ Boturl in a browser.

2.

Enter valid IQ Bot login credentials. The control is redirected to the IQ Bot URL: http(s)://IQ Boturl after successful authentication.

2. When the user having IQ Bot session tries to access an IQ Bot URL in another tab

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11. An IQ Bot user is logged into IQ Bot Portal in a supported browser.



Steps: 1.

Open IQ Bot URL http(s)://IQBoturl in another tab in the same browser.

2.

The control is redirected to the exact IQ Bot URL http(s)://IQBoturl.

3. IQ Bot User signs in to Control Room 11 first Prerequisites: and then tries to access IQ Bot URL in the same • IQ Bot platform is successfully registered browser with Control Room 11. • IQ Bot user exists in Control Room 11. • This user has not logged in to IQ Bot portal. Steps: 1.

Log into Control Room 11.

2.

Open the IQ Bot portal URL in another tab or instance of the same browser.

You are successfully logged into IQ Bot portal and the IQ Bot URL opens.

©

2019 Automation Anywhere. All rights reserved.     103

    Automation Anywhere - Installing IQ Bot Use Case

Description

4. When user sign out from Control Room

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11. IQ Bot User is currently logged in to Control Room 11. An IQ Bot session of the same user exists in another tab/instance of the same browser.

• •

Steps: 1.

Sign out from Control Room 11.

2.

Open the IQ Bot session.

You are also signed out from the IQ Bot session. 5 a. User tries to log into IQ Bot portal with Incorrect User credentials

Prerequisites:

• 5 b. User with Account Disabled tries to log in to IQ Bot portal • • 5 c. Unexpected problem during login

IQ Bot platform is successfully registered with Control Room 11. User has incorrect user credentials OR User has account disabled

Steps: 1.

Enter your IQ Bot login credentials on the login page.

2.

If a user has incorrect user credentials or account disabled, one of the following error message (1 or 2) is displayed, In certain cases, for unexpected problem during login, error message 3 displays.

Error message 1: For incorrect credentials

©

2019 Automation Anywhere. All rights reserved.     104

    Automation Anywhere - Installing IQ Bot Use Case

Description

Error message 2: Existing Control Room 11 message for disabled user

Error message 3: Error message for unexpected problem during login.

©

2019 Automation Anywhere. All rights reserved.     105

    Automation Anywhere - Installing IQ Bot Use Case

Description

6. When user gets idled out of IQ Bot session

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11 IQ Bot user is currently logged in to IQ Bot portal.



Steps: 1.

When no activity is performed on the IQ Bot portal UI for 20 minutes.

2.

After 20 minutes, when you view the IQ Bot portal UI, you are signed out of IQ Bot portal and the session expired notification is displayed.

3.

When you log into IQ Bot portal again, IQ Bot displays the in-progress activity. There is no interruption to the activity when the session becomes idle.

IQ Bot / Control Room value for idle timeout.

©

2019 Automation Anywhere. All rights reserved.     106

    Automation Anywhere - Installing IQ Bot Use Case

Description

7. a) When a user does not have IQ Bot license (Developer/Bot Runner)

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11. User does not have IQ Bot license (Developer/Bot runner) OR b) User has a license which is not IQ Bot enabled ORb) User has a valid IQ Bot license but not a relevant IQ Bot role.

OR b) When user has a license which is not IQ Bot Enabled.



OR c) User has a valid IQ Bot license but not a relevant IQ Bot Role

Steps: 1.

Open the IQ Bot URL in a browser. The Control Room Login page is displayed.

2.

Log into IQ Bot using your IQ Bot login credentials. The following message is displayed on the browser if the user doesn't have an IQ Bot license or doesn't have an enabled license: "You are not authorized to log into IQ Bot Platform. Please contact your administrator for access." Note: If you are already logged into Control Room 11 in the same browser session, steps 1, 2, and 3 are skipped, this message is displayed.

3.

Click Go to Control Room.

4.

You are taken to the Control Room 11 login URL. If you are already logged into Control Room in the same browser session, you are automatically logged into Control Room 11.

©

2019 Automation Anywhere. All rights reserved.     107

    Automation Anywhere - Installing IQ Bot Use Case

Description

8. Until the registration happens, the IQ Bot platform keeps prompting the user to go to Control Room to register.

Prerequisites: •

IQ Bot platform is not registered with Control Room 11

Description: 1.

Log into IQ Bot using the IQ Bot login URL in a browser or click on the IQ Bot shortcut on the desktop. The following message is displayed on the browser if the prerequisite is true:

2.

Click Go to Control Room. The Control Room 11 login page is displayed.

Note: If you are already logged into Control Room in the same browser session, you get automatically logged into Control Room 11. 9. User tries to access a URL which is not relevant to the role that he/she has.

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11 IQ Bot User is currently logged into IQ Bot portal with the Validator role.

example: Validator user trying to access Services pages or • Services user trying to access Admin pages.

Description: You try to access services work flow specific URL directly in the browser. URL examples: http://myiqbot:3000/learninginstances http://myiqbot:3000/learninginstances/ etc. You are denied access and an error message is displayed: Opps, you can't access that page. Clicking Back on the error message takes you back to resource which you were accessing earlier.

©

2019 Automation Anywhere. All rights reserved.     108

    Automation Anywhere - Installing IQ Bot Use Case

Description

10. When a user who has an existing IQ Bot session logs into IQ Bot portal in another browser

Prerequisites: •

IQ Bot platform is successfully registered with Control Room 11 An IQ Bot user is logged into IQ Bot portal in a supported browser A.



Description: 1.

Open IQ Bot URL https://IQBoturl in another browser or incognito tab in the same browser. You are redirected to the login page.

2.

Log into IQ Bot with your IQ Bot login credentials. After login, you are redirected to the IQ Bot portal or exact IQ Bot URL http(s):// IQBoturl.

When you try to perform any further action on the IQ Bot portal in browser A, you are logged off and the following message is displayed.

Note: You can continue working in browser B. This behaviour is similar to Control Room 11 session behaviour in Chrome browsers.

©

2019 Automation Anywhere. All rights reserved.     109

    Automation Anywhere - Troubleshooting IQ Bot

Troubleshooting IQ Bot Use following information to troubleshoot your IQ Bot application. Table 3: IQ Bot Installer database connection failure error on configuration screen Issue

Installer displays a connection failure error message on database configuration screen

Symptoms

An error message is displayed. Unable to connect to the SQL server with given configuration.

Causes

The configuration information you entered is invalid, you have insufficient authorization to connect to the database, or the network connectivity is down.

Solution

Check the following: • • • • • •

A connection to the network is available and accessible through a ping command MS-SQL Server service is running in the Task Manager Server Name contains a valid database server name entry Port field contains the valid port number of 1433 Username field contains a valid database user with server role permissions for public and sysadmin Password field contains a valid password for the SQL Server database user

Table 4: IQ Bot installation error on output path configuration screen Issue

Installer returns an error message on output path configuration screen.

Symptoms

When the user clicks the Next button on the Destination Folders screen, an error message is displayed that the output path does not have sufficient read/write/delete permissions.

Cause

Insufficient permissions to access folder.

Solution

Ensure that the output folder has read/write permission.

Table 5: Classification stalls after IQ Bot installation Issue

Classification stalls after IQ Bot installation.

Symptoms

When user uploads documents, the status on IQ Bot Portal shows Yet to be Classified indefinitely and timer continues to spin.

Cause

RabbitMQ cluster/Rabbit MQ setup (standalone)

©

2019 Automation Anywhere. All rights reserved.     110

    Automation Anywhere - Troubleshooting IQ Bot Solution

Check the following: •







Run the rabbitmqctl cluster_status command for status on all the nodes in your cluster as follows: “C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.6\sbin\rabbitmqctl.bat” cluster_status. If no errors occur, then RabbitMQ is running as expected. Authentication failure error is displayed if the cookie in the %WINDIR% \.erlang.cookie and %USERPROFILE%\.erlang.cookie does not match. mnesia database related errors are generated if the folders in the %appdata%\RabbitMQ\db are corrupted, try to remove the folder and restart the node. Verify RabbitMQ user creation: If you are still unable to find the status of RabbitMQ installation, then run the following commands and then enable the rabbitmq_management plugin on all the rabbitmq cluster nodes. • •





rabbitmq-plugins enable rabbitmq_management Run this command: rabbitmqctl set_user_tags messagequeue administrator to grant access to the messagequeue user to login through console. Verify whether you can log into the IQ Bot portal using the messagequeue/passmessage credentials to http:// localhost:15672. If you are not able to log into the IQ Bot Portal, it is an issue with creation of the RabbitMQ user. Run the following commands to create a messagequeue user in RabbitMQ: • • • • • • •

rabbitmqctl stop_app rabbitmqctl reset rabbitmqctl start_app Rabbitmqctl add_user messagequeue passmessage Rabbitmqctl add_vhost test rabbitmqctl set_permissions -p test messagequeue "." "." ".*" rabbitmqctl set_user_tags messagequeue administrator

Reinstall IQ Bot after the RabbitMQ installation is successful.

Table 6: No learning instance is available to select in IQ Bot command in Client Issue

No learning instance is available to select in IQ Bot command in Automation Anywhere Enterprise (AAE) Client

Symptoms

In AAE Client, open the IQ Bot command in the task, and click on the Select Learning Instance drop-down list to select the learning instance. The Name field does not display any learning instances.

©

2019 Automation Anywhere. All rights reserved.     111

    Automation Anywhere - Troubleshooting IQ Bot Cause

The cause could be one of the following: • • •

Solution

IQ Bot Portal is not registered with Control Room. A learning instance is not created. IQ Bot Project service is not working.

Check the following: •



IQ Bot Portal is not registered with Control Room: Ensure that the IQ Bot URL exists in the Amdinistration > Settings > IQ Bot page of Control Room. A learning instance is not created Perform the following steps if a learning instance is not created: • • • •





Ensure that you have created at least one learning instance on the connected IQ Bot platform. Verify that the Host Gateway path is correct in the centralized database configuration, and if necessary: Log on to the machine on which the Control Room database is installed. Open the SQL Server Management Console, log on to the Control Room database (CRDB) and browse to the database table entry CRDB Tables dbo.centralizedconfiguration. In the results tab on the right pane, ensure that the CognitivePlatformHost key value for the IQ Bot category is of the format http://myiqbotserver: or https:// myiqbotserver: (when using HTTPS). is IQ Bot Portal port specified during installation. Note: If load balancer is used, is the port of load balancer. After updating the key, refresh the Learning Instance listing in the IQ Bot Command. You should now be able to view the list of learning instance in IQ Bot command.

Table 7: When opening IQ Bot web application after stopping and starting an AWS instance, the documents in the learning instance remain in “Yet to be Classified” status Issue

When opening IQ Bot web application after stopping and restarting an AWS instance (that is working based on Dynamic IP), the documents in the learning instance remain in “Yet to be Classified” status

Symptoms

All the documents are classified as “Yet to be Classified”.

Cause

Dynamic IP of AWS causes this issue, which is specific to a stand-alone machine.

©

2019 Automation Anywhere. All rights reserved.     112

    Automation Anywhere - Troubleshooting IQ Bot Solution

Replace the old internal IP with the localhost and reinstall all the services as follows: 1.

Run the command C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations \stopanduninstallallservices.bat:.

2.

Replace all instances of the internal IP with localhost by modifying the CognitiveServiceConfiguration.json file located in the following locations:

3.

a.

C:\Program Files (x86)\Automation Anywhere IQ Bot 6.0\Workers\Classifier

b.

C:\Program Files (x86)\Automation Anywhere IQ Bot \Workers\VisionBotEngine

c.

C:\Program Files (x86)\Automation Anywhere IQ Bot \ML\translationsvc

d.

C:\Program Files (x86)\Automation Anywhere IQ Bot \ML\webservice

Run the command C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations \installandstartallservices.bat:.

Table 8: IQ Bot web application does not load after stopping and starting an AWS instance Issue

IQ Bot web application does not load after stopping and restarting an AWS instance (that is working based on Dynamic IP).

Symptoms

This site cannot be reached.

Cause

Dynamic IP of AWS causes this issue, which is specific to a stand-alone machine.

©

2019 Automation Anywhere. All rights reserved.     113

    Automation Anywhere - Troubleshooting IQ Bot Solution

1.

Run the command C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations \stopanduninstallallservices.bat:.

2.

Replace all instances of the internal IP with localhost by modifying the CognitiveServiceConfiguration.json file located in the following locations:

3.

a.

C:\Program Files (x86)\Automation Anywhere IQ Bot \Workers\Classifier

b.

C:\Program Files (x86)\Automation Anywhere IQ Bot \Workers\VisionBotEngine

c.

C:\Program Files (x86)\Automation Anywhere IQ Bot \ML\translationsvc

d.

C:\Program Files (x86)\Automation Anywhere IQ Bot \ML\webservice

Replace the Internal IP with a fully qualified domain name. For this, modify the file located at C:\Program Files (x86)\Automation Anywhere IQ Bot \Portal\www\js \main..js •

Search for :3000 and then replace the Internal IP with a fully qualified domain name. An example of this would be replacing http::3000 to http://:3000

Run the command C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations \installandstartallservices.bat: This URL of the IQ Bot web application is successfully changed to “http:// :3000” Table 9: For an HTTPS-enabled IQ Bot installation, when users try to upload 20 or more files larger than 2-3 MB to a learning instance, the files are not uploaded and the “Updating instance and uploading files” message is displayed indefinitely Issue

For an HTTPS-enabled IQ Bot installation, when users try to upload multiple files (20 or greater) or with file sizes larger than 2-3 MB to a learning instance, the files are not uploaded and the Updating instance and uploading files message is displayed indefinitely.

Symptoms

• • • •

The file upload request continuously stays with the Updating instance and uploading files message displayed indefinitely. Unable to upload files with large sizes or multiple files together. This happens with file sizes of 2-3 MB or 20-30 files of 50+ KB The file upload wait icon is continuously displayed and the page is never refreshed. The request returns in ERR_CONNECTION_RESET message in network sniffers.

©

2019 Automation Anywhere. All rights reserved.     114

    Automation Anywhere - Troubleshooting IQ Bot Cause

This issue is encountered when Intrusion Prevention Systems (IPS) in the network are set up behind a firewall.

Solution

1.

2.

Ensure that the computer from which you are accessing the browser, and the server on which IQ Bot is installed are on the same subnet. For this, perform the following steps. a.

Run the ipconfig command on the Windows command prompt as an administrator in both the computer and the server.

b.

Note the IP address of the computer and server.

c.

Involve your IT team for assistance and verification.

Consult your IT team and check whether the machines are in DMZ and the Intrusion Prevention Systems (IPS) in the network are set up behind a firewall. For more information on Intrusion Prevention Systems, refer to https:// en.wikipedia.org/wiki/Intrusion_detection_system.

3.

If yes, coordinate with your IT team to filter the signature-based detection on IPS or disable it for the specific server from where you are trying to upload the documents. This ensures that the network traffic does not consider the uploaded documents as malicious packets.

4.

Check with your IT team if there is any other policy that blocks the traffic or drops the network packets.

Table 10: IQ Bot Platform doesn’t distribute document processing load in Clustered environment Issue

IQ Bot installation does not run in RabbitMQ cluster mode

Symptoms

After uploading multiple files, all instances do not participate in the classification process. This can be observed by degradation of performance in overall classification and through observing CPU utilization of each cluster node.

©

2019 Automation Anywhere. All rights reserved.     115

    Automation Anywhere - Troubleshooting IQ Bot Solution

1.

All the nodes in your cluster must be running. Run the rabbitmqctl cluster_status command to get the status of all the nodes in your cluster as follows: C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.6\sbin\rabbitmqctl.bat” cluster_status If the rabbitmqctl cluster_status command returns the status of all the cluster nodes as running.

2.

If authentication failure error occurs while attaching a node to a cluster, it means that the nodes do not share the same erlang cookie.

3.

If authentication failure error occurs while running rabbitmqctl status on a node, it means that the erlang cookie is out of sync in %WINDIR% \.erlang.cookie and %USERPROFILE%\.erlang.cookie.

4.

a.

Make the cookies in both the locations same.

b.

Check if there is any environment variable set. "RABBITMQ_SERVER_ERL_ARGS", remove that also if the node is not in cluster.

c.

Remove cookie from environment variables.

mnesia DB related errors occur if the folders in the %appdata% \RabbitMQ\db path are corrupted. Solution: a.

Go to these RabbitMQ database folders by entering %appdata% \RabbitMQ\db in Run window.

b.

Delete the folders from this path and restart the node.

5.

To set permission to see rabbitmq console for the user, run the following commands:sbin> rabbitmqctl set_permissions p test messagequeue ".*" ".*" ".*"sbin> rabbitmqctl set_user_tags messagequeue administrator

6.

Log into the rabbit mq management console http:// localhost:15672 using credentials messagequeue/passmessage, go to the overview node and check if the all the nodes are available or not, else check for errors.

Note: All the nodes should have rabbitmq_management plugin enabled to get the correct status of nodes.

Table 11: IQ Bot Platform HTTPS SSL certificate expired Issue

IQ Bot Platform HTTPS SSL certificate expired

Symptoms

In your browser window, the HTTPS entry is crossed out and displays as not secure.

Cause

HTTPS certificate has expired.

©

2019 Automation Anywhere. All rights reserved.     116

    Automation Anywhere - Troubleshooting IQ Bot Solution

Reinstall the HTTPS SSL certificate as follows: 1.

Open %installation_dir%\Configurations as an administrator and run stopanduninstallallservices.bat.

2.

Open %installation_dir%\Portal\keys and take a backup of both cert.crt and key.key file.

3.

Convert .pfx certificate in .crt format and .key by running the following commands a.

openssl.exe pkcs12 -in "path_to_cert\example.pfx" -nocerts -out "path_to_cert\example encp.key" This command fetches an encrypted key from pfx.

b.

openssl.exe rsa -in "path_to_cert\example encp.key" -out "path_to_cert\key.key". This command converts encrypted key to a readable format.

c.

openssl.exe pkcs12 -in "path_to_cert\example.pfx " -clcerts -nokeys -out "path_to_cert\cert.crt". This command converts from .pfx to .crt format.

4.

Copy or replace cert.crt and key.key on location “%installation_dir%\Portal\keys”.

5.

Go to “%installation_dir%\Configurations” and run installandstartervices.bat as an administrator.

For more information on the need for HTTPS Certificate, see https:// www.instantssl.com/ssl-certificate-products/https.html and to know about HTTPS SSL certificate in detail, see https://www.websecurity.symantec.com/ security-topics/what-is-ssl-tls-https.

Table 12: IQ Bot login: Control Room returns the Certificate path validator signature check failed error Issue

Control Room returns the Certificate path validator signature check failed error

Symptom

When a user tries to log in to IQ Bot platform, a certificate path validation error message is displayed.

Cause

Signature check failed, because the self-signed SSL certificate does not exist for Control Room.

Solution

Run the following command to import the SSL certificate of Control Room into the Java keystore of IQ Bot: keytool.exe -import -alias dev keystore installation path\Java\jre1.8.0_161\lib\security \cacerts" -file "D:\cert\xyz.com.crt" Note: The Control Room SSL certificate gets synched automatically once you run this command.

©

2019 Automation Anywhere. All rights reserved.     117

    Automation Anywhere - Troubleshooting IQ Bot Table 13: Connect ECONNREFUSED error during IQ Bot login Issue

Connect ENCONNREFUSED error message appears during login

Symptom

When a user tries to log in to IQ Bot Platform, the Connect ECONNREFUSED error message appears.

Cause

Connection error occurred, because Automation Anywhere Gateway-2 service is not running.

Solution

Start the Automation Anywhere Gateway-2 service.

Table 14: Unable to install IQ Bot in Express Mode Issue

Unable to install IQ Bot in the Express Mode

Symptom

IQ Bot returns the Enterprise Control Room and database compatibility error while installing IQ Bot in the Express Mode.

Cause

Control Room is not installed in Express Mode

Solution

Ensure: • •

Control Room 10.5.x is installed in the Express Mode using the recommended/provided SQL Server version. Control Room version is compatible with the version of IQ Bot. To check the version compatibility, see the Installation Guide.

Table 15: Error during uninstall of IQ Bot Platform Issue

Error during uninstall of IQ Bot Platform

Symptom

When you attempt to uninstall IQ Bot, error message Error 1601. Could not access network location appears.

Cause

This error message occurs when the shared drive location is used as an output path and is unavailable during uninstallation.

Solution

1.

Open the registry editor.

2.

Search for the output folder path used during installation or displayed exactly on the error message dialog box. For example, search should navigate to one of the registry entry such as "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Installer\UserData\S-1-5-18\Components \B89B12C85959B9D4B85FD9D07CC9FBC0" where the ID can vary depending on server name.

3.

Check for the value which stores output folder path and replace it with the local accessible folder. It does not delete that folder, however, its recommended to use temp folder.

4.

Uninstall again.

©

2019 Automation Anywhere. All rights reserved.     118

    Automation Anywhere - Troubleshooting IQ Bot Table 16: IQ Bot command lists no learning instances and does not return specific errors when IQ Bot is configured in cluster mode Issue

IQ Bot command displays no list of learning instances and does not return any specific errors when IQ Bot is configured in cluster mode.

Symptom

Some users are unable to view learning instance listing.

Cause

This is a distributed cache synchronization issue due to disabled network multicast.

Solution

1.

Ensure that Control Room is configured with multiple nodes and the distributed cache is synchronized properly.

2.

By default, the Control Room Distributed Caching Service gets installed with the multicast mode. Check with your IT/Networking team that the multicast is enabled on all Control Room Servers.

3.

Run the Control Room Distributed Caching Service in the Console Mode instead of the Windows service to verify whether multicast is enabled on all Control Room Servers.

Table 17: Your connection is not private error is displayed on IQ Bot portal Issue

Your connection is not private error is displayed on IQ Bot portal.

Symptom

IQ Bot shows error message Your connection is not private.

Cause

Either the HTTPS certificate used is not a Certifying Authority (CA) certificate or it has expired.

©

2019 Automation Anywhere. All rights reserved.     119

    Automation Anywhere - Troubleshooting IQ Bot Solution

Update the certificate as follows: 1.

Run the following command as an administrator C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations\stopanduninstallallservices.bat

2.

Go to %installation_dir%\Portal\keys and take a backup of both cert.crt and key.key files.

3.

Convert .pfx certificate in .crt format and .key. Run the following commands to convert the .pfx certificate into the .crt format: a.

openssl.exe pkcs12 -in "path_to_cert\example.pfx" -nocerts -out "path_to_cert\example encp.key". This command fetches encrypted key from .pfx.

b.

openssl.exe rsa -in "path_to_cert\example encp.key" -out "path_to_cert\key.key". This command converts encrypted key to a readable format.

c.

openssl.exe pkcs12 -in "path_to_cert\example.pfx " -clcerts -nokeys -out "path_to_cert\cert.crt". This command converts .pfx certificate to the .crt format.

4.

Copy or replace cert.crt and key.key on location “%installation_dir%\Portal\keys”.

5.

Go to “%installation_dir%\Configurations” and run the following command as an administrator C:\Program Files (x86)\Automation Anywhere IQ Bot \Configurations\installandstartervices.bat

Table 18: Classifier service stalls, and timer continues to spin after restarting IQ Bot services Issue

Classifier service runs longer than expected, and timer continues to spin after restarting IQ Bot services

Symptom

Timer continues to spin for an unusually long time after restarting IQ Bot services.

Cause

IQ Bot exhibits this behaviour when cognitive services stop, resulting in interruption of classification of documents.

Solution

Use the following REST API to process the Yet to be Classified documents and reclassify these documents: localhost:9996/organizations/1/projects/ /reclassify Note: This API is available only on the local server where IQ Bot is installed.

©

2019 Automation Anywhere. All rights reserved.     120

    Automation Anywhere - Troubleshooting IQ Bot Table 19: IQ Bot Designer becomes unresponsive while drawing a User-Defined Region (UDR) Issue

Designer becomes unresponsive while drawing a User-Defined Region (UDR)

Symptom

IQ Bot Designer window turns grey and you cannot select any elements.

Solution

Restart the Designer and resume your work.

Table 20: Installer is unable to create IQ Bot database tables Issue

Installer is unable to create IQ Bot database tables

Symptoms

1. User is unable to find any learning instance after logging into the IQ Bot. 2. User is unable to see any listing of fields to select while creating a new learning instance.

Cause

Missing IQ Bot database tables

Solution

Installation User Administrative Access Rights •

User installing the IQ Bot must be a local administrator of system.

Database User Access Rights •

Ensure the SQL user has sysadmin access rights which is required to create databases and tables.

Table 21: Classification stalls on training documents in IQ Bot Issue

Classification stalls while training documents.

Symptom

Training documents remain in status Yet to be classified and classification of documents appears to have stalled.

Cause

• • •

Documents are corrupted OCR of documents has not been done successfully New fields added are not found in the document

Solution

• • •

Upload valid documents Perform the OCR of documents again Match the new fields with the document and ensure that fields exist in the document

Table 22: Export process does not complete while creating IQ Bot learning instances Issue

Export process appears to run continuously, but never completes.

©

2019 Automation Anywhere. All rights reserved.     121

    Automation Anywhere - Troubleshooting IQ Bot Symptom

During the creation of a learning instance, the export processes longer than expected time to export the data. The timer continues to spin for an unusually long time. There is at least one learning instance in the selected list of learning instances to be exported that did not have any classification groups.

Cause

The learning instance must have at least one classification group. This could happen if user has created a learning instance when the file manager service has stopped. See also Error message “Error creating learning instance”.

Solution

1.

Restart project service on server.

2.

Avoid selecting empty learning instances for export process.

Table 23: Documents are not classified after migration of IQ Bot learning instance Issue

Documents are not classified after importing learning instance to a new machine with a custom domain.

Symptom

User applies migration utility to import a learning instance file on a new machine with a custom domain. After the import, the documents cannot be classified.

Cause

AliasData database does not exist on the new machine.

Solution

1.

Use the migration utility to take the backup from the database of AliasData from the machine where the learning instance was exported.

2.

Use the overwrite option to restore the AliasData database to the new machine using the backup file you generated.

3.

If you are unable to do this, you can select the option to close existing and initiate restore in the destination database.

4.

Restart all services using restart.bat file from .\configuration \restart.bat.

The learning instance related to the newlyimported archive can be used for further work.

Table 24: IQ Bot 6.0 installer error 1334 Issue

IQ Bot 6.0 installation error 1334, file cannot be installed

Symptom

When you launch IQBot 6.0 installation, you see error 1334, and installation cannot be completed.

©

2019 Automation Anywhere. All rights reserved.     122

    Automation Anywhere - Troubleshooting IQ Bot Cause

Error could be caused by any of the following: • • • •

Solution

Installation file was not completely downloaded Installation file is corrupt Network error Error reading installation file

Download the installation file again, and install IQ Bot 6.0.

Table 25: Access denied: You are not authorized to log into IQ Bot Issue

You are not authorized to log into IQ Bot. Please contact your administrator for access.

Symptom

When you log into IQ Bot, you see a message that access is denied, because you do not have authorization.

Cause

User does not have a valid IQ Bot role.

Solution

Assign the user a valid IQ Bot role, such as AAE_IQ Bot Services, AAE_IQ Bot Validator, or AAE_IQ Bot Admin.

Table 26: IQ Bot installation fails while installing RabbitMQ Issue

The installation of IQ Bot fails while installing RabbitMQ.

Symptom

While installing RabbitMQ, you see a message that installation failed.

Cause

Error codes in batch scripts are not propagated to the installer. Possible causes could be that RabbitMQ is not installed properly, or you do not have access to the RabbitMQ folder.

Solution

Note: First check whether RabbitMQ is installed. If you do not find the RabbitMQ Server folder in the C:\Program Files\, then it means RabbitMQ is not installed successfully. Also, you must have full access to RabbitMQ Server folder. Check the status of RabbitMQ installation: check whether RabbitMQ is installed by checking for a RabbitMQ Server folder in C:\Program Files directory: •



To check RabbitMQ installation status on cluster environment, run the command from C:\Program Files\RabbitMQ Server \rabbitmq_server-3.6.6\sbin\ directory: rabbitmqctl cluster_status command and run rabbitmqctl status command to get the status of all the nodes in your cluster. If it does not return any error, then RabbitMQ is up and running fine. To check RabbitMQ installation status on standalone environment, run the rabbitmqctl status command. If it does not return any error, then RabbitMQ is up and running fine.

©

2019 Automation Anywhere. All rights reserved.     123

    Automation Anywhere - Troubleshooting IQ Bot One of the following errors might be generated after you check the status of RabbitMQ installation. Contact the Automation Anywhere support team if any other error is returned. •

• •

Authentication failure errors: Authentication failure error is displayed if the cookie in the %WINDIR%\.erlang.cookie and %USERPROFILE%\.erlang.cookie does not match, then copy the .erlang.cookie from %USERPROFILE%\.erlang.cookie to %WINDIR%\.erlang.cookie and restart the RabbitMQ service. Verify RabbitMQ installation status by running either of these commands: rabbitmqctl cluster_status command and run rabbitmqctl status command. mnesia database errors are generated due to corruption of the folders in the %appdata%\RabbitMQ\db, delete the folder and restart the node. Verify RabbitMQ Installation Status using RabbitMQ portal: If you are still unable to find the status of RabbitMQ installation, then run the following commands and then enable the rabbitmq_management plugin on all the rabbitmq cluster nodes to get more detailed error information. •

Enable RabbitMQ management plugin: •



Grant access to the messagequeue user: •



Run this command: rabbitmq-plugins enable rabbitmq_management Run this command: rabbitmqctl set_user_tags messagequeue administrator to grant access to the messagequeue user to login through console.

Verify whether you can log into the IQ Bot: •

Log into the IQ Bot using the messagequeue/passmessage credentials to http://localhost:15672.

Table 27: IQ Bot installation error: Unable to use the required port (5672) because it is already assigned Issue

Cannot upgrade from IQ Bot 5.3 on Control Room 10.7 to IQ Bot 6.0 on Control Room 11.3

Symptom

During installation of Control Room 11.3, you see the following message: Unable to use the required port (5672) because it is already assigned.

Cause

RabbitMQ port conflict, because RabbitMQ in IQ Bot 5.3 uses port 5672, which is used by Control Room 11.3 Active MQ.

©

2019 Automation Anywhere. All rights reserved.     124

    Automation Anywhere - Troubleshooting IQ Bot Solution

To fix this issue, you can either change the installation sequence or modify the RabbitMQ port as the following describes. •



Change the installation sequence by installing IQ Bot 6.0 first, and then install Control Room 11.3. This ensures that the port of RabbitMQ is changed to 5673. Run the following commands to modify the RabbitMQ port to 5673 before installing Control Room 11.3: 1.

Go to %appdata%/RabbitMQ.

2.

Open file rabbitmq.config.

3.

Add this code to the config file: [{rabbit, [{tcp_listeners, [5673]} ]}].

4.

Save the file.

5.

Restart RabbitMQ services.

6.

Install Control Room 11.3.

Table 28: During roll-back process of IQ Bot 6.0 Installer, services are not getting uninstalled Issue

All services remain installed inspite of IQ Bot 6.0 roll-back.

Symptom

Perform the following steps to reproduce the issue: 1.

Run installer of IQBot 6.0.

2.

Once installing services process is complete, abort/cancel installer for IQ Bot 6.0. , which will force IQ Bot 6.0 installation roll-back.

3.

After roll-back, all services are not in running state and not uninstalled. List of Automation Anywhere services that do not get uninstalled even after uninstalling IQ Bot: • • • • •

Solution

Automation Anywhere Auto Login Service Automation Anywhere Client Service Automation Anywhere Scheduler Service Automation Anywhere Web Socket Server Service Automation Anywhere Transfer Service

To fix this issue, removing the jar file is not enough, you must also unregister the registered services. Also, when reinstalling Automation Anywhere Cognitive Console after aborting install midway, service needs to be restarted.

©

2019 Automation Anywhere. All rights reserved.     125

    Automation Anywhere - Troubleshooting IQ Bot

Output folder path change from local to shared drive Table 29: Output folder: path change from local drive to shared drive Issue

After changing the path, when user tries to save a document in Validator, the following error message is displays:

Symptom

Validator service does not have read/write permissions to the shared folder with the default user role (Generally it’s Local System). See screenshot:

Prerequisite

Share drive should be accessible by validator service.

Solution

Solution 1 1.

Find the local system user and authorize read/write permissions to the shared folder.

Solution 2 Change the service user from Local System, to the user with read/write permissions to the shared folder. Follow the steps to make the change: 1.

Open Services.

2.

Select Automation Anywhere Cognitive Validator service. Right-click and choose Properties.

3.

Select This Account radio button and click Browse.

4.

Find your user and click Check Names. Ensure your username displays along with the domain name.

5.

Click Ok.

6.

Enter a password (for the user you selected in the step before), and confirm it.

7.

Click Ok.

8.

User will get a message to restart validator services, as the validator is running with a different user.

9.

Restart the validator service.

©

2019 Automation Anywhere. All rights reserved.     126

    Automation Anywhere - Troubleshooting IQ Bot Limitation

Mapping a drive is not supported. We recommend using full shared path.

©

2019 Automation Anywhere. All rights reserved.     127

    Automation Anywhere - IQ Bot Trial quick start guide

IQ Bot Trial quick start guide IQ Bot stores images and documents uploaded by users or Remote Process Automation (RPA) tasks and extracts structured data from those images and documents such as Tiffs, PNG, and JPG images and PDF documents. You can build your IQ Bot and experience the ease of using cognitive automation on the IQ Bot trials site.

Get started with IQ Bot To use the IQ Bot trials site, you need to first register for the IQ Bot trial, then login with credentials from the welcome email you receive. On the IQ Bot trials site, you can: • • • •

Create a learning instance Upload invoice documents to the learning instance Train an invoice document, and Export data to a CSV file

What happens when you upload a document to IQ Bot? 1.

IQ Bot takes structured data such as invoice documents in the learning instances.

2.

Categorizes documents similar in content layout and content in an IQ Bot for invoice documents in one or multiple groups.

3.

Trains IQ Bots and extracts data from documents to a CSV file.

Registering as an IQ Bot user Register as an IQ Bot user on the IQ Bot trials portal. To register as a new user on the IQ Bot trials portal: 1. 2.

Click on Register to register as a new IQ Bot user. The login credentials and a link to the IQ Bot portal URL are sent to you in an email. Check your registered email account for credential and use it to log into the IQ Bot portal.

Prerequisites for using IQ Bot The following prerequites are required prior to using IQ Bot. • •

Ensure you have installed IQ Bot trial and have already watched the IQ Bot trial informational videos. Ensure you have unzipped the bank statements and invoice documents on your desktop.

©

2019 Automation Anywhere. All rights reserved.     128

    Automation Anywhere - IQ Bot Trial quick start guide

Creating a learning instance with English invoices You need to create a learning instance to get your learning instance trained from the different documents uploaded to your learning instance. For example, learning instance created for different types of invoice documents for banks, insurance companies, and pharmacies. Based on the training provided to the learning instance and its documents, the accuracy of extracted data is improved. Note: You can use different invoices in TIFF, JPEG, PNG, and PDF, and other format to train your learning instance. To create a new learning instance with English invoices: 1.

Open the IQ Bot portal.

2.

Click LEARNING INSTANCES > New Instance.

3.

Enter the following information: • • • • •

Instance name: Type a name for the Instance. For example, enter Learning Instance Invoice. Domain: Select Invoices, that is, the domain for the documents you are going to upload. Primary language of files: Select the language of the instance from the drop-down list. For example, select English for uploading invoices in English. Description(optional): Type a description for the Learning Instance. Upload files from: Click the Browse button and select all the English Invoices from the folder where you had downloaded them on your desktop and click Open. Tip: Besides image formats, such as TIFF, JPG, and PNG files, you can also upload both types of PDF documents, vector and raster documents for classification and analysis. Note: You can upload a file of maximum 12 MB size during creating and editing learning instances.

4.

Select the standard form and table fields that you want to add from Standard form fields and Standard table fields sections.

©

2019 Automation Anywhere. All rights reserved.     129

    Automation Anywhere - IQ Bot Trial quick start guide

5.

Enter names of the form fields in the text box in Other Fields (Optional) section and click Add as form to add customized form fields. Similarly, you can add new table fields and click Add as table.

6.

Click Create instance and analyze to create the instance. The process of classification of invoice documents begins where the invoices are grouped together and analysed. IQ Bot categorizes invoice documents similar in content layout and content in one or multiple groups. You can now train your IQ Bot for this learning instance.

Training groups in a learning instance Train the groups created in your learning instance so that when you extract data from documents to a CSV file, extracted data is more accurate. Note: The Field Auto-Mapping feature reduces the time and effort it takes to train the invoice document. Pre-requisites • •

Created a learning instance with English invoices Logged into IQ Bot portal.

1.

Click LEARNING INSTANCES from the left pane.

2.

Click on the learning instance you created.

3.

Click Start Training on the learning instances page. Note: Fields and corresponding values are mapped automatically. If they are not mapped automatically, then map the fields again.

4.

Select a field name from the left pane.

5.

Click on the corresponding label name for the field on the document. For example, click on Invoice Number. The value of invoice number is populated. Note: The value of only auto-mapped fields is populated automatically.

6.

Repeat steps 2 and 3 for each form and table field to map the fields again.

©

2019 Automation Anywhere. All rights reserved.     130

    Automation Anywhere - IQ Bot Trial quick start guide 7.

Click on the icon next to the field name from the left pane and drag and click on the correct label name on the document to correct incorrect field mappings. Similarly, map the value of the field by clicking on the

icon .

8.

Click on Table Settings in the left pane.

9.

Select the End of Table Indicator text box in the left pane.

10. Select the last label or any label after the end of your table on the document to mark the end of the table. The lable is populated in the text box. Note: You can enter mutiple lables in the End of table indicator field in this format, for example, Subtotal | Tax (USD) along with the | pipe symbol to separate the labels. If your document has a note immediately following the table, you can enter the note in the End of table indicator field. A group is now trained and IQ Bot brings the next group in line to train. Train all the groups in your learning instance.

Adding a new table field When your document has new fields, you might need to define new table fields to your learning instance. 1.

Click LEARNING INSTANCES from the left pane.

2. 3. 4.

Click on the learning instance you created. Click Edit. To add a new field, either select the check box next to the table field name or enter the field name in the Other fields (Optional) and click Add as table.

©

2019 Automation Anywhere. All rights reserved.     131

    Automation Anywhere - IQ Bot Trial quick start guide

5. 6.

Click Save. Click Yes, Proceed with Field addition. The table field is added to the learning instance.

Exporting data to a CSV file When you wan to see the exported data to a CSV file, you might need to perform this procedure. 1. 2.

On the Training page, click Preview at the end of the left pane. Click Export to CSV.

The CSV file is downloaded with the data extracted from the document.

Useful tips Find useful information that will assist you during your participation in the IQ Bot trials in this topic.

Correcting incorrect field mappings Click on the Draw icon next to the field name from the left pane and drag and click on the correct label name on the document to correct incorrect field mappings. Similarly, map and correct the value of the field by clicking on the Draw icon.

©

2019 Automation Anywhere. All rights reserved.     132

    Automation Anywhere - IQ Bot Trial quick start guide

Make sure to define the best column for row detection and end of table indicator for a table. The data extraction fails if you do not define them.

FAQs This topic answers frequently asked questions about the IQ Bot trials.

Overview IQ Bot is a purpose-built cognitive automation that you can train to automate business processes to work faster and efficiently while simultaneously eliminating human error. Use IQ Bot, and Automation Anywhere in conjunction to automate your business processes that rely on semi-structured or unstructured data hidden in electronic documents, images, emails, and other such areas. IQ Bot leverages computer vision and multiple Artificial Intelligence (AI) techniques to intelligently digitize and extract data to make your Robotic Process Automation (RPA) and Optical Character recognition (OCR) technology even more effective. Using this approach IQ Bot can adapt its data extraction from specific domains or document types, and quickly learn from the environment to

©

2019 Automation Anywhere. All rights reserved.     133

    Automation Anywhere - IQ Bot Trial quick start guide improve the results. For the trial version, we have made five domains available for use such as: Invoices, Purchase Orders, Bank Statement, Pay Stubs, and Electricity Bills. IQ Bot uses the OCR technology to extract information from a document. However, while OCR tools measure results based on accuracy, IQ Bot uses the Straight Through Processing (STP) technique to measure how many documents can be processed end-to-end without human intervention.

Basic Concepts 1.

How does IQ Bot work? IQ Bot leverages computer vision and multiple AI techniques to intelligently digitize and extract data to make your RPA more effective. IQ Bot uses OCR as one of the underlying technologies used to extract information from a document. This approach allows IQ Bot to adapt the data extraction from specific domains and document types, and quickly learn from the environment to improve results.

2.

What is a learning instance? You would create a learning instance for a specific use case that an IQ Bot can learn from. It is domain-specific and has the capability to learn from documents classified and processed by it, and validation corrections performed by humans. This learning is translated to tangible benefits such as: improved STP and accuracy figures for the instance over a period.

3.

What is the difference between bots and learning instance? A learning instance consists of training for the business process around a specific document type. Bots contain training files that were classified by IQ Bot in different groups based on content. You can activate or deactivate a bot in a learning instance to improve its training; while the learning instances would process documents that match the active bots as others remain in a queue, until that group is trained.

4.

What is the accuracy rate of IQ Bot? The most primary metric for IQ Bot is STP. It is dependent on the accuracy of field capture. Field accuracy impacts STP directly. For example, if a customer captures one to two fields across a Grade A quality document, an accuracy of 86% is achieved. A customer who captures 11 differentially weighted fields across highlyvarying document quality would see lower accuracy.

5.

How does the dashboard help? The dashboard displays all production information and results that helps us identify how we could improve the training. Note: The production information is not available for the trial version.

6.

What is percent (%) training? The percent (%) training helps us estimate the STP that is calculated based on the number of bots trained and active bots.

Using IQ Bot trial 1.

What are the limitations of the trial version? Flow Limitations: You can use IQ Bot for training only, as production mode and batch processing is not available.

©

2019 Automation Anywhere. All rights reserved.     134

    Automation Anywhere - IQ Bot Trial quick start guide Processing Limitations: The user can create upto five learning instances and upload upto 10 documents for each learning instance. Each document is limited to a single page only. 2.

I have trained the learning instance but cannot see the output. For each trained group, you can select Preview > Export CSV to see the output.

3.

I cannot edit a group as the Edit Bot link is disabled. The Edit Bot link appears disabled when the group is in production or when it is in training in another tab. Go to the Bots tab and send that bot back to staging.

4.

I have completed processing and want to process files in batch mode. How can I do that? IQ Bot can process files in batch mode when connected to RPA. This feature is not available in the trial version.

5.

I want to add a new domain that is available in the Bot Store. Importing domains is not available for the trial version.

6.

I cannot see the results on the dashboard. The dashboard displays information of processed files that are in production. This option is not available in the trial version.

7.

What is the prerequisite step to creating a learning instance in IQ Bot? Before you start creating a new learning instance, you must know what information you want to extract from the documents you would be processing. It is best practice is to have some sample documents, which you can use as reference to decide on the items you want to extract. Use them as the first set of documents to train against the new learning instance.

8.

How would I perform validation in the trial? Validation is available for production processes only. In the trial version, you can validate using Preview.

9.

How many simultaneous documents can be loaded into IQ Bot? In the trial version, IQ Bot accepts upto a limit of 10 documents for each learning instance. The full license would support millions of documents per year that can be uploaded in a queue.

10. What is the license requirement for IQ Bot? You require Automation Anywhere Enterprise with an activated IQ Bot feature. This license is installed from the Control Room. 11. How many tables can I configure to extract in a Bot? You can configure unlimited number of tables for extraction. 12. Can I test a document different than that used for training? Yes, you can. Use the Preview option to navigate to other documents to verify if training was effective.

Learning 1.

Does IQ Bot learn from user inputs? IQ Bot learns from the user inputs over time.

©

2019 Automation Anywhere. All rights reserved.     135

    Automation Anywhere - IQ Bot Trial quick start guide For example: If a date is extracted often with an extra character such as spaces and dots between numbers, and the user corrects it a dozen times, IQ Bot would automatically correct the error when it encounters a similar problem the next time. 2.

How does IQ Bot differ from OCR solutions? OCR is one of the underlying technologies in IQ Bot but is used only as a first step. IQ Bot is designed for business users, so anyone can start training an IQ Bot after a 3-hour training. The setup costs are 10x lower. Automation Anywhere is the only vendor that combines the best of RPA solution with cognitive automation to significantly reduce the cost and complexity in automating document-centric processes.

3.

How many templates do I have to train the IQ Bots on before it is ready for use? The training requirement has been kept to a minimum, and in most cases, you should be able to get the desired value in just one pass.

Capabilities 1.

What are supported file types for IQ Bot? The following are supported file types: • • • •

2.

PDF (Vector PDF, Raster PDF or Hybrid PDF) TIF or TIFF JPG or JPEG PNG

Does IQ Bot support handwritten documents? No, not yet. Processing handwritten document to achieve high STP is a challenge, but it is part of our roadmap.

3.

Does IQ Bot support tabular data extraction? Yes, it does. IQ Bot has advanced table extraction features to support complex use cases such as: Explanation of Benefits.

4.

What are supported languages for IQ Bots? IQ Bot supports the following languages out of box: • • • • • •

5.

English Spanish French German Italian Additionally, it also supports over 25+ languages including all Latin scripts.

Does IQ Bot support documents other than invoices? Yes, IQ Bot supports a variety of domains, and you can also easily add new domains. The following domains are available in the trial version: • • •

Invoices Purchase orders Bank statements

©

2019 Automation Anywhere. All rights reserved.     136

    Automation Anywhere - IQ Bot Trial quick start guide • •

Pay stubs Electricity bills

Note: You can select the desired domain when you create a learning instance. 6.

Does IQ Bot support documents with multiple color text? Yes, but this is true for darker shades of color only.

7.

Can I remove the default (pre-loaded) sample document for training and replace it with another from the group in a Bot? Yes. If the default training document on the Train tab reflects all documents in that group, you can remove that document from the Train tab and upload a different one from the same group, and train it.

8.

Can I stop document analysis or processing in between? No, you cannot stop a document analysis or processing mid-way.

9.

What is the maximum number of bots I can create? What is the maximum number of IQ Bots that can simultaneously exist in the system at once? There is no limit to the number of IQ Bots you can create or that can exist simultaneously in the system at a time.

10. Is there a restriction to the number of characters for naming a learning instance? You cannot exceed 50 characters when naming a learning instance. 11. What is the average time to process a single page document? Is the time dependent on the complexity of the page? There is no fixed time for processing a single page document as this depends on the following factors: • • • •

CPU strength and availability Available free RAM Page clarity OR noise level Data on page

12. Can I process MS Excel invoices using IQ Bot? If the invoices have a standard format, they can be processed using RPA tasks. In case the Excel formats vary, they need to be converted to PDFs, so they can be processed in IQ Bot.

©

2019 Automation Anywhere. All rights reserved.     137

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide

IQ Bot Community Edition Quick Start Guide IQ Bot processes semi-structured or unstructured information and converts it into structured data that is used by Robotic Process Automation (RPA) bots for end-to-end automation. This lets you train the computer system to autonomously capture and understand unstructured information within a known domain and convert it into actual data. We'll walk you through the entire process to show how easy it is to use cognitive automation. Note: We recommend using the Chrome browser.

Get started with IQ Bot Register to use the IQ Bot Community Edition, then login with credentials from the welcome email you receive. We will walk you through the entire process of: • • •

creating a learning instance and uploading sample documents training and reviewing your learning instance sending your learning instance to production

Register to use the Community Edition Sign up for a free trial of the Automation Anywhere Community Edition and register as a new user. 1.

2. 3. 4.

Click on Register to register as a new user. You will receive an email providing you with login credentials and a link to the IQ Bot Community Edition. The email provides other helpful information as well. Check your registered email account for your credentials and use them to log into the IQ Bot Community Edition portal. On the Enterprise Control Room home page, choose COGNITIVE AUTOMATION > Explore now. The IQ Bot Community Edition Home page displays in a new window.

Create a learning instance IQ Bot leverages machine learning for continuous enhancement through user training. Let's begin by creating a learning instance. A learning instance defines the type of document you need to process, the language of documents, and a list of data fields you want captured from each document. Note: Use documents in various formats such as: TIFF, JPEG, PNG, and PDF, to train your learning instance. 1.

On the IQ Bot Home page, click the Start processing your documents button to display the Create new learning instance page.

©

2019 Automation Anywhere. All rights reserved.     138

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide 2.

3. 4.

5. 6. 7. 8.

Define a name for the new learning instance, select the domain or the document type, and the language from the drop-down list. The description field is optional. Click the Browse button and upload documents you want to train. You can download and use the sample documents as well. To use the sample documents, click the Download sample documents button, unzip the folder, and save the sample files to your local drive. Then click the Browse button and upload documents you want to train. In the Fields to extract section, select fields from where you want the data to be extracted. For additional fields, expand the Additional form fields section and select additional fields. Select common table fields and additional table fields, as required. Next, click the Create Learning Instance button. The system analyzes and sorts the training documents into logical groups based on field identification.

Next, train the documents, and review field mappings.

Train your learning instance IQ Bot analyzes documents, and groups them based on similar content, structure, and layout. IQ Bot performs an initial field mapping based on existing knowledge from any pretrained document types. When the first group is created, you can start reviewing the results of the initial mapping, and train the learning instance by making corrections. There are three panels in the training window: • • • 1. 2.

3. 4. 5.

left panel displaying a list of fields center panel displaying field label, value, and parameter for each selected field right panel displaying the document in training Select each field in the left panel to verify that the value and label in the center panel are correctly identified, and are the same as the document in the right panel. Additionally, you can click on the Draw icon next to the field name in the center panel, and draw around the correct label name in the document (in the right panel), to correct any incorrect field mappings. In addition to individual fields, IQ Bot captures data from tables; hence check the mapping for table columns as well. Ensure each table field has a correct corresponding column name. In the Table settings, select the best column for row detection, as well as an optional end of table indicator which tells IQ Bot that anything that comes after it will not be considered as a line item. You can enter the value manually in the End of Table Indicator field, in the center panel. You can enter multiple labels in the End of Table Indicator field in the following format: •

Subtotal | Tax (USD)

The | pipe symbol separates the labels. If your document has a note immediately following the table, you can enter the note in the End of Table Indicator field. Once you complete training the current document, click the See Extraction Results button to review the extracted fields as well as the table line items on the left, and compare them to the document on the right. You can review other documents in this group. Since IQ Bot grouped similar documents, it can train one document and process others in the group in the same way.

©

2019 Automation Anywhere. All rights reserved.     139

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide

Export data to a CSV file In the See Extraction Results view, you have the option to export the extracted data to a CSV file for ease of review. Export data to a CSV file: 1. 2.

During training when you click on the See Extraction Results button, you can view the correct/ incorrect data extraction for the current training document. In this view, you have the option to export the data to a CSV file for further review.

3.

Click the Export to CSV option to export data and view it in a spreadsheet. The CSV file is downloaded with the data extracted from the document.

4.

Click the > next to the document name at the top to see each of the documents in the group. This allows you to download the data extracted from each document Click the arrow next to the document to see each document in the group. You can download the data extracted from each document.

Set learning instance to production Once the training and data extraction review process is complete, set your learning instance to production. Use this learning instance to run on documents (belonging to the same document type) hence automating the data extraction process. 1. 2. 3. 4.

In the My Learning Instances window, click your learning instance. Then click the Set to production icon. Confirm the message that comes up and choose Yes, send to production button. The production label displays next to the learning instance name. To edit your learning instance, go to the LEARNING INSTANCES tab, select your learning instance, and click Set to staging button to set it back to staging. You can edit your learning instance at any time, but have to set it to staging first before you can edit.

Use IQ Bot in RPA IQ Bot can process files in batches, when connected to RPA.

Create a TaskBot to upload documents to IQ Bot Follow the steps to process files in batches in RPA: 1.

In the Automation Anywhere Enterprise client window, click File > New, to display the Automate dialog box.

2.

Click on Workbench to display the window.

3.

From the Commands panel select the loop command (Each File In A Folder) and drag-and-drop it to the Task Actions List panel.

4.

The loop dialog box displays.

©

2019 Automation Anywhere. All rights reserved.     140

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide 5.

Enter folder name (Production document folder) and click Save.

6.

Inside this loop command, from the Commands panel, select the IQ Bot command and move it to the Task Actions List panel via drag-and-drop.

7.

The IQ Bot Upload dialog box displays.

8.

In the IQ Bot Upload dialog box, do any one of the following: • •

Name: Select the learning instance. File Path: Click the browse button to upload multiple documents using the following variables: a.

$CurrentDirectory$ - This system variable will identify current directory (selected in the loop command).

b.

$FileName$.$Extension$ - These system variables will get file names and extensions from the current directory.

Note: See example below. For Example:

9.

a.

Start Loop Each File In Folder C:\IQBotSampleDocs\Bank Statements.

b.

Comment: Please enter your commands to loop. Use $filename$.$extension$ variable for each file name in the loop.

c.

IQ Bot Upload: from $CurrentDirectory$\$FileName$.$Extension$ using Learning Instance bb85e7ec-3815-4721-8493-79d8d89be669.

d.

End loop.

Click Save to add the command to the Task Actions List panel.

Note: For the Community Edition, you do not have access to the local folder. To download extraction results, follow instructions given below.

Download extraction results Follow the steps to run a TaskBot to download extracted results 1.

Right click on My Tasks in the Automation Anywhere Enterprise client window and choose Open Folder.

2.

Follow the link: https://s3-us-west-1.amazonaws.com/iqbot-trial/ Download_IQ_Bot_Extraction_Results.atmx to download a TaskBot and copy the file to the opened folder.

3.

A new task appears in the My Tasks list.

4.

Choose this task and click Run.

5.

Enter the following information: • •

6.

Server URL and credentials (you can find them in a registration email message). Name of the learning instance (the one that was used during document upload).

The TaskBot opens a folder with the extraction results.

©

2019 Automation Anywhere. All rights reserved.     141

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide

FAQs for Community Edition This topic answers frequently asked questions about the IQ Bot Community Edition.

Overview IQ Bot is a purpose-built cognitive automation that you can train to automate business processes to work faster and efficiently while simultaneously eliminating human error. Use IQ Bot, and Automation Anywhere in conjunction to automate your business processes that rely on semi-structured or unstructured data hidden in electronic documents, images, emails, and other such areas. IQ Bot leverages computer vision and multiple Artificial Intelligence (AI) techniques to intelligently digitize and extract data to make your Robotic Process Automation (RPA) and Optical Character recognition (OCR) technology even more effective. Using this approach IQ Bot can adapt its data extraction from specific domains or document types, and quickly learn from the environment to improve the results. For the Community Edition, we have made five domains available for use such as: Invoices, Purchase Orders, Bank Statement, Pay Stubs, and Electricity Bills. IQ Bot uses the OCR technology to extract information from a document. However, while OCR tools measure results based on accuracy, IQ Bot uses the Straight Through Processing (STP) technique to measure how many documents can be processed end-to-end without human intervention.

Basic Concepts 1.

How does IQ Bot work? IQ Bot leverages computer vision and multiple AI techniques to intelligently digitize and extract data to make your RPA more effective. IQ Bot uses OCR as one of the underlying technologies used to extract information from a document. This approach allows IQ Bot to adapt the data extraction from specific domains and document types, and quickly learn from the environment to improve results.

2.

What is a learning instance? You would create a learning instance for a specific use case that an IQ Bot can learn from. It is domain-specific and has the capability to learn from documents classified and processed by it, and validation corrections performed by humans. This learning is translated to tangible benefits such as: improved STP and accuracy figures for the instance over a period.

3.

What is the difference between bots and learning instance? A learning instance consists of training for the business process around a specific document type. Bots contain training files that were classified by IQ Bot in different groups based on content. You can activate or deactivate a bot in a learning instance to improve its training; while the learning instances would process documents that match the active bots as others remain in a queue, until that group is trained.

4.

What is the accuracy rate of IQ Bot? The most primary metric for IQ Bot is STP. It is dependent on the accuracy of field capture. Field accuracy impacts STP directly. For example, if a customer captures one to two fields across a Grade A quality document, an accuracy of 86% is achieved. A customer who captures 11 differentially weighted fields across highlyvarying document quality would see lower accuracy.

5.

How does the dashboard help?

©

2019 Automation Anywhere. All rights reserved.     142

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide The dashboard displays all production information and results that helps us identify how we could improve the training. Note: The production information is not available for the Community Edition. 6.

What is percent (%) training? The percent (%) training helps us estimate the STP that is calculated based on the number of bots trained and active bots.

Using IQ Bot Community Edition 1.

What are the limitations of the Community Edition? Processing Limitations: The user can create upto five learning instances and upload upto 100 documents for each learning instance.

2.

I have trained the learning instance but cannot see the output. For each trained group, you can select See Extraction Results > Export CSV to see the output.

3.

I cannot edit a group as the Edit Bot link is disabled. The Edit Bot link appears disabled when the group is in production or when it is in training in another tab. Go to the Bots tab and send that bot back to staging.

4.

I have completed processing and want to process files in batch mode. How can I do that? IQ Bot can process files in batch mode when connected to RPA.

5.

I want to add a new domain that is available in the Bot Store. Importing domains is not available for the Community Edition.

6.

I cannot see the results on the dashboard. The dashboard displays information of processed files that are in production. This option is not available in the Community Edition.

7.

What is the prerequisite step to creating a learning instance in IQ Bot? Before you start creating a new learning instance, you must know what information you want to extract from the documents you would be processing. It is best practice is to have some sample documents, which you can use as reference to decide on the items you want to extract. Use them as the first set of documents to train against the new learning instance.

8.

How many simultaneous documents can be loaded into IQ Bot? In the Community Edition, IQ Bot accepts upto a limit of 100 documents for each learning instance. The full license would support millions of documents per year that can be uploaded in a queue.

9.

What is the license requirement for IQ Bot? You require Automation Anywhere Enterprise with an activated IQ Bot feature. This license is installed from the Control Room.

10. How many tables can I configure to extract in a Bot? You can configure unlimited number of tables for extraction. 11. Can I test a document different than that used for training?

©

2019 Automation Anywhere. All rights reserved.     143

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide Yes, you can. Use the Preview option to navigate to other documents to verify if training was effective.

Learning 1.

Does IQ Bot learn from user inputs? IQ Bot learns from the user inputs over time. For example: If a date is extracted often with an extra character such as spaces and dots between numbers, and the user corrects it a dozen times, IQ Bot would automatically correct the error when it encounters a similar problem the next time.

2.

How does IQ Bot differ from OCR solutions? OCR is one of the underlying technologies in IQ Bot but is used only as a first step. IQ Bot is designed for business users, so anyone can start training an IQ Bot after a 3-hour training. The setup costs are 10x lower. Automation Anywhere is the only vendor that combines the best of RPA solution with cognitive automation to significantly reduce the cost and complexity in automating document-centric processes.

3.

How many templates do I have to train the IQ Bots on before it is ready for use? The training requirement has been kept to a minimum, and in most cases, you should be able to get the desired value in just one pass.

Capabilities 1.

What are supported file types for IQ Bot? The following are supported file types: • • • •

2.

PDF (Vector PDF, Raster PDF or Hybrid PDF) TIF or TIFF JPG or JPEG PNG

Does IQ Bot support handwritten documents? No, not yet. Processing handwritten document to achieve high STP is a challenge, but it is part of our roadmap.

3.

Does IQ Bot support tabular data extraction? Yes, it does. IQ Bot has advanced table extraction features to support complex use cases such as: Explanation of Benefits.

4.

What are supported languages for IQ Bots? IQ Bot supports the following languages out of box: • • • • •

English Spanish French German Italian

©

2019 Automation Anywhere. All rights reserved.     144

    Automation Anywhere - IQ Bot Community Edition Quick Start Guide • 5.

Additionally, it also supports over 25+ languages including all Latin scripts.

Does IQ Bot support documents other than invoices? Yes, IQ Bot supports a variety of domains, and you can also easily add new domains. The following domains are available in the Community Edition: • • • • •

Invoices Purchase orders Bank statements Pay stubs Electricity bills

Note: You can select the desired domain when you create a learning instance. 6.

Does IQ Bot support documents with multiple color text? Yes, but this is true for darker shades of color only.

7.

Can I remove the default (pre-loaded) sample document for training and replace it with another from the group in a Bot? Yes. If the default training document on the Train tab reflects all documents in that group, you can remove that document from the Train tab and upload a different one from the same group, and train it.

8.

Can I stop document analysis or processing in between? No, you cannot stop a document analysis or processing mid-way.

9.

What is the maximum number of bots I can create? What is the maximum number of IQ Bots that can simultaneously exist in the system at once? There is no limit to the number of IQ Bots you can create or that can exist simultaneously in the system at a time.

10. Is there a restriction to the number of characters for naming a learning instance? You cannot exceed 50 characters when naming a learning instance. 11. What is the average time to process a single page document? Is the time dependent on the complexity of the page? There is no fixed time for processing a single page document as this depends on the following factors: • • • •

CPU strength and availability Available free RAM Page clarity OR noise level Data on page

12. Can I process MS Excel invoices using IQ Bot? If the invoices have a standard format, they can be processed using RPA tasks. In case the Excel formats vary, they need to be converted to PDFs, so they can be processed in IQ Bot.

©

2019 Automation Anywhere. All rights reserved.     145

    Automation Anywhere Index

Index A

S

audit logs 69

staging server 70

B

T

bot training 37 bug fixes 5

troubleshooting IQ Bot 110

C changed features 5 cluster mode 88 configuring Control Room with HTTPS 95 configuring IQ Bot with HTTP 95

D

U uninstalling IQ Bot 92 uninstalling platform 92 upgrade considerations 5

V validator audit logs 69

deprecated features 5

E error messages learning instances 73

H healthcheck api response 94

I Install IQ Bot 81 Installing IQ Bot 81 installing IQ Bot Platform 88 IQ Bot database 100 IQ Bot use cases 73, 102

M multi-language support 70

N new features 5

P prerequisites 5 prevent automatic copying of documents 70

R Rabbit MQ startup failure 94

©

2019 Automation Anywhere. All rights reserved.    146