Robotask Manual
Robotask Manual
Robotask Manual
2024
I RoboTask User's Guide
Table of Contents
Part I Quick Start Guide 1
1 Features
................................................................................................................................... 2
2 Getting...................................................................................................................................
Started in the RoboTask Window 3
3 Create ...................................................................................................................................
Tasks 5
4 Run Tasks
................................................................................................................................... 6
5 Edit Tasks
................................................................................................................................... 6
6 Customize
...................................................................................................................................
RoboTask 6
7 Purchasing
................................................................................................................................... 6
8 License...................................................................................................................................
Agreement 7
9 Trademarks
...................................................................................................................................
and Copyrights 8
9 Errors...................................................................................................................................
handling 42
10 Control
...................................................................................................................................
of RoboTask through network 43
Netw ork Server
.......................................................................................................................................................... 44
Netw ork Client
.......................................................................................................................................................... 45
Connect to......................................................................................................................................................... 45
Define connections
......................................................................................................................................................... 45
Netw ork Com..........................................................................................................................................................
m and utility 46
11 Runtime
...................................................................................................................................
module 47
12 Useful...................................................................................................................................
Utilities in RoboTask Package 50
II
III RoboTask User's Guide
5 Help ................................................................................................................................... 79
Help - Help Topics
.......................................................................................................................................................... 79
Help - Send Bug
..........................................................................................................................................................
Report 79
Help - Technical
..........................................................................................................................................................
support 80
Help - Check for
..........................................................................................................................................................
updates 80
Help - About .......................................................................................................................................................... 80
Part IV Actions 81
1 General
................................................................................................................................... 82
Run Program /Open
..........................................................................................................................................................
Docum ent 82
Run Console Application
.......................................................................................................................................................... 83
Print Docum ent.......................................................................................................................................................... 87
Send Keystrokes.......................................................................................................................................................... 89
Shift Keys State
.......................................................................................................................................................... 93
Log Off .......................................................................................................................................................... 94
Pause .......................................................................................................................................................... 95
SQL Query .......................................................................................................................................................... 96
Wait for Process
..........................................................................................................................................................
Finish 98
Wait for Process
..........................................................................................................................................................
Start 99
Term inate Process
.......................................................................................................................................................... 100
Com m ent .......................................................................................................................................................... 101
2 Dialogs
...................................................................................................................................
and Notifications 101
Show Message/Play
..........................................................................................................................................................
Sound 102
Question Dialog
.......................................................................................................................................................... 104
Open Dialog .......................................................................................................................................................... 105
Save Dialog .......................................................................................................................................................... 107
Brow se for Folders
.......................................................................................................................................................... 108
Brow se for Com
..........................................................................................................................................................
puters 110
Input Box .......................................................................................................................................................... 111
Show Notification
.......................................................................................................................................................... 111
Choice Dialog.......................................................................................................................................................... 114
Multichoice Dialog
.......................................................................................................................................................... 116
Show Text .......................................................................................................................................................... 118
Custom Input ..........................................................................................................................................................
Dialog 119
Log Dialog .......................................................................................................................................................... 122
3 Files...................................................................................................................................
and Folders 122
Copy/Move File.......................................................................................................................................................... 122
Renam e File .......................................................................................................................................................... 124
Delete File .......................................................................................................................................................... 125
Write Text File
.......................................................................................................................................................... 127
Search for Files
.......................................................................................................................................................... 128
Set Current Folder
.......................................................................................................................................................... 134
Create Folder .......................................................................................................................................................... 134
Renam e Folder.......................................................................................................................................................... 135
Rem ove Folder.......................................................................................................................................................... 135
Synchronize ..........................................................................................................................................................
Folders 136
Wait for file .......................................................................................................................................................... 140
Sort Text .......................................................................................................................................................... 142
Unique File Nam
..........................................................................................................................................................
e 143
File Attributes
.......................................................................................................................................................... 144
File Date and..........................................................................................................................................................
Tim e 145
Em pty Recycle..........................................................................................................................................................
Bin 146
IV
V RoboTask User's Guide
Window Com..........................................................................................................................................................
m and 257
Check for Window
.......................................................................................................................................................... 258
Wait for Window
.......................................................................................................................................................... 260
Window Set Size
..........................................................................................................................................................
and Position 263
Window Elem..........................................................................................................................................................
ents Loop 266
Window Get ..........................................................................................................................................................
Size and Position 269
15 System
...................................................................................................................................
Functions 274
Start Service.......................................................................................................................................................... 274
Stop Service.......................................................................................................................................................... 275
Service status
.......................................................................................................................................................... 276
Lock Workstation
.......................................................................................................................................................... 277
Run Program..........................................................................................................................................................
as User 277
Write to Event
..........................................................................................................................................................
Log 279
16 RoboTask
...................................................................................................................................
Commands 280
Minim ize RoboTask
.......................................................................................................................................................... 280
Restore RoboTask
.......................................................................................................................................................... 280
Exit RoboTask
.......................................................................................................................................................... 280
Enable Autom..........................................................................................................................................................
ation 280
Disable Autom
..........................................................................................................................................................
ation 280
Log Message .......................................................................................................................................................... 280
Restart RoboTask
.......................................................................................................................................................... 281
Set Task Log..........................................................................................................................................................
Level 282
17 Clipboard
................................................................................................................................... 282
Cut to Clipboard
.......................................................................................................................................................... 282
Copy to Clipboard
.......................................................................................................................................................... 283
Paste from Clipboard
.......................................................................................................................................................... 283
Clear Clipboard
.......................................................................................................................................................... 284
Get Text from..........................................................................................................................................................
Clipboard 284
Put Text to Clipboard
.......................................................................................................................................................... 285
Save Im age from
..........................................................................................................................................................
Clipboard 285
Put Im age from
..........................................................................................................................................................
File to Clipboard 286
18 Mouse
................................................................................................................................... 287
Move Mouse..........................................................................................................................................................
To An Object 287
Mouse Click .......................................................................................................................................................... 289
Mouse Move.......................................................................................................................................................... 290
Move Mouse..........................................................................................................................................................
to Im age 290
19 Registry
................................................................................................................................... 293
Add Registry..........................................................................................................................................................
Key 293
Delete Registry
..........................................................................................................................................................
Key 294
Renam e Registry
..........................................................................................................................................................
Key 294
Read Registry..........................................................................................................................................................
Value 295
Write Registry
..........................................................................................................................................................
Value 296
Delete Registry
..........................................................................................................................................................
Value 297
Renam e Registry
..........................................................................................................................................................
Value 298
Export from Registry
.......................................................................................................................................................... 299
Im port to Registry
.......................................................................................................................................................... 300
Registry loop.......................................................................................................................................................... 301
20 Network
................................................................................................................................... 302
Send Com m and
.......................................................................................................................................................... 302
Send Netw ork
..........................................................................................................................................................
Message 303
Check TCP port
.......................................................................................................................................................... 304
Netw ork Plugin
..........................................................................................................................................................
settings 305
VI
VII RoboTask User's Guide
21 Email................................................................................................................................... 306
OAuth param..........................................................................................................................................................
eters editor 306
POP3 Open .......................................................................................................................................................... 309
POP3 Close .......................................................................................................................................................... 311
POP3 Mail Loop
.......................................................................................................................................................... 311
POP3 Dow nload
..........................................................................................................................................................
Em ail 314
POP3 Delete ..........................................................................................................................................................
Em ail 316
POP3 Messages..........................................................................................................................................................
Count 316
Parse Em ail .......................................................................................................................................................... 317
IMAP Open .......................................................................................................................................................... 321
IMAP Close .......................................................................................................................................................... 324
IMAP Select Mail
..........................................................................................................................................................
Folder 324
IMAP Mail loop
.......................................................................................................................................................... 325
IMAP Dow nload
..........................................................................................................................................................
Message 329
IMAP Get Message
..........................................................................................................................................................
Flags 330
IMAP Set Message
..........................................................................................................................................................
Flags 331
IMAP Delete ..........................................................................................................................................................
Marked Messages 331
IMAP Copy Message
.......................................................................................................................................................... 332
IMAP Folder ..........................................................................................................................................................
Info 332
IMAP Folder ..........................................................................................................................................................
List 333
POP3 Check ..........................................................................................................................................................
for Em ail 334
SMTP Send Em ..........................................................................................................................................................
ail 337
22 Strings
................................................................................................................................... 343
STR Replace .......................................................................................................................................................... 343
STR Trim .......................................................................................................................................................... 344
STR Delete .......................................................................................................................................................... 345
STR Insert .......................................................................................................................................................... 346
STR Extract .......................................................................................................................................................... 347
STR Pos .......................................................................................................................................................... 347
STR Betw een.......................................................................................................................................................... 348
STR Length .......................................................................................................................................................... 350
STR form at CSV
..........................................................................................................................................................
line 351
TXT Num ber ..........................................................................................................................................................
of Lines 352
TXT Extract Line
.......................................................................................................................................................... 353
TXT Delete line
.......................................................................................................................................................... 354
TXT Insert line
.......................................................................................................................................................... 355
TXT Com m a-Text
..........................................................................................................................................................
Conversion 356
TXT UTF-8 Conversion
.......................................................................................................................................................... 358
Operations on..........................................................................................................................................................
lists 359
23 Embedded
...................................................................................................................................
Chromium Browser 361
Brow ser Fill ..........................................................................................................................................................
Web Form 362
Add or Edit.........................................................................................................................................................
Web Form Parameter dialog 367
Brow ser Web ..........................................................................................................................................................
Page Inform ation 369
Brow ser Click..........................................................................................................................................................
Link 373
Brow ser Wait ..........................................................................................................................................................
for Done 377
Brow ser Page ..........................................................................................................................................................
Snapshot 380
Brow ser Window
..........................................................................................................................................................
Size 382
Brow ser Run..........................................................................................................................................................
Javascript 383
24 Regular
...................................................................................................................................
Expressions 384
RegExp Loop.......................................................................................................................................................... 385
RegExp Replace
.......................................................................................................................................................... 387
RegExp Match
.......................................................................................................................................................... 391
RegExp COM..........................................................................................................................................................
object 393
25 Screenshot
................................................................................................................................... 396
Window Snapshot
.......................................................................................................................................................... 396
Window Pixel.......................................................................................................................................................... 401
Screenshot .......................................................................................................................................................... 403
Screen Pixel.......................................................................................................................................................... 404
Color Com pliance
.......................................................................................................................................................... 405
Wait for Pixels
.......................................................................................................................................................... 406
Find Pixel on..........................................................................................................................................................
Im age 412
Check pixels.......................................................................................................................................................... 414
26 INI files
................................................................................................................................... 419
INI read value.......................................................................................................................................................... 420
INI w rite value
.......................................................................................................................................................... 421
INI delete value
.......................................................................................................................................................... 423
INI delete section
.......................................................................................................................................................... 424
INI loop .......................................................................................................................................................... 425
27 XML ...................................................................................................................................
Documents 426
XML Create Node
.......................................................................................................................................................... 427
XML Add Childnode
.......................................................................................................................................................... 428
XML Loop .......................................................................................................................................................... 429
XML Save .......................................................................................................................................................... 432
XML Get Single
..........................................................................................................................................................
Node 433
28 Script...................................................................................................................................
tools 438
Python Script.......................................................................................................................................................... 438
RoboTask.........................................................................................................................................................
object for Python 442
JavaScript/Node.js
..........................................................................................................................................................
script 445
RoboTask.........................................................................................................................................................
object for node.js 449
Pow erShell script
.......................................................................................................................................................... 452
Script extesions
.......................................................................................................................................................... 456
JS script .......................................................................................................................................................... 457
JS Evaluate .......................................................................................................................................................... 460
VB Script .......................................................................................................................................................... 462
VB Evaluate .......................................................................................................................................................... 465
29 Excel................................................................................................................................... 467
Excel Open Docum
..........................................................................................................................................................
ent 467
Excel Get Cells
.......................................................................................................................................................... 468
Excel Set Cells
.......................................................................................................................................................... 469
Excel Cell Form
..........................................................................................................................................................
at 470
Excel Run Macro
.......................................................................................................................................................... 472
Excel Save Docum
..........................................................................................................................................................
ent 473
Excel Save As.......................................................................................................................................................... 473
Excel Close .......................................................................................................................................................... 474
30 Sound
...................................................................................................................................
Volume 474
Set Sound Volum
..........................................................................................................................................................
e 475
Get Sound Volum
..........................................................................................................................................................
e 475
Set Mute Status
.......................................................................................................................................................... 475
Get Mute Status
.......................................................................................................................................................... 476
Sound Volum..........................................................................................................................................................
e Up 476
Sound Volum..........................................................................................................................................................
e Dow n 477
31 DataBase
................................................................................................................................... 477
DB Open .......................................................................................................................................................... 477
DB Close .......................................................................................................................................................... 478
DB Exec SQL .......................................................................................................................................................... 478
VIII
IX RoboTask User's Guide
X
XI RoboTask User's Guide
2 Command
...................................................................................................................................
Line Parameters 614
3 RoboTaskApp
...................................................................................................................................
object 615
Index 623
I
Quick Start Guide
2 RoboTask User's Guide
1.1 Features
RoboTask can easily automate any series of tasks on your computer system, whether you are a
novice or advanced user. You don't even have to know how to program—use RoboTask to build
your own automated solutions quickly and easily. Yes RoboTask is powerful.
For example, RoboTask can help you avoid losing important data when you create a backup task
for placing files on a remote server.
The software can manage and trigger a wide variety of repetitive tasks to save your valuable
time. With RoboTask, you don't need complicated batch files or scripts.
RoboTask can be used for an unlimited number of tasks. When creating a task, you decide what
the task needs to do and when. Every task has two parts:
1. Actions
2. Triggering events
Actions
First, you must decide what actions you want to accomplish. You can select built-in actions in
RoboTask to accomplish the following:
· Run applications.
· Open or print documents.
· Emulate your keystrokes.
· File and folder processing (copy, move, delete, rename, synchronize folders).
· Work with FTP servers (download, upload, rename, delete).
· Work with e-mail (check for e-mail, send e-mail).
· Work with ZIP files (pack files, extract files).
· Work with windows (focus, maximize, minimize, restore, close, hide, unhide).
· Flow control (if-then, file loop, text loop, dataset loop, and so forth).
Triggering events
Practically anything that happens on your computer can trigger RoboTask to perform an action.
An example would be when RoboTask automatically updates a log and uploads it to a website
whenever you receive an email with a subject that is a particular string of words or contains a
word such as "Important".
Folder Pane
Displays a tree of the task folders. This is useful for organizing your
tasks.
Task pane
New Task
Allows you to add a new task. You can select actions and triggering events.
Edit Task
Allows you to modify a task. You can edit the settings for actions and triggering events.
Delete Task
Removes the task that you select in the main window.
Run Task
Starts the task that you select in the main window.
Stop Task
Stops the task that you select in the main window.
Show/Hide Task Tree
Displays or hides the task tree at the left of the main window.
Connect button
Connect to remote instance of RoboTask
Settings
Allows you to set preferences for RoboTask.
Search task
Find task by name
New Folder
Allows you to create a new folder and enter the name.
Remove Folder
Removes the task folder that you select.
Rename Folder
Allows you to rename the selected task folder.
Collapse All
Hides the folders in the tree and displays only the top level folder.
Expand All
Displays all the folders in the tree.
Shortcut Menus
If you select a task in the Task Name column and right-click, the following commands appear
on the shortcut menu:
· Enabled - Allows the task to start automatically when a triggering event in the task occurs.
· New - Creates a new task.
· Edit - Modifies the task that you select.
· Delete - Removes a task.
· Run - Starts a task.
· Stop - Ends a task.
· Duplicate - Copies a task. This is useful if you want to create a new task quickly and then
modify it.
· Create Shortcut - Adds a shortcut to the task on your desktop. This is useful if you want
to quickly start a task without opening RoboTask.
If you point to the Log pane and right-click, the following commands appear on the shortcut
menu:
· Clear Log - Removes all messages from the Log pane.
· Copy Selected to Clipboard - Copies the lines that you have selected in the Log pane and
places them on the Windows Clipboard.
· Open current log in text editor -You can open the current log in a text editor for analysis
and searching of records. You will be prompted to choose a text editor. The default is the
system NOTEPAD.EXE.
· Select All - Selects all the lines in the Log pane so that you can quickly copy them.
Tip
Some actions or triggering events do not have specific settings that you can enter.
Tip
· You can run a task without opening RoboTask. Select a task in the RoboTask window and click
Task > Create Shortcut on Desktop. This adds a shortcut to that task on your desktop.
You can double-click the task to start it.
Tip
· To remove a task from the list in the RoboTask window, select a task and click Task >
Delete.
1.7 Purchasing
Click Help > Purchase. Also you may purchase full version of RoboTask from official web site.
1. All copyrights to RoboTask are exclusively owned by the author - Neowise Software.
2. Anyone may use this software during an evaluation period of 30 days. Following this
evaluation period of 30 days or less, if you wish to continue to use RoboTask, you must
purchase it.
3. Once purchased, the user is granted a non-exclusive license to use RoboTask on one
computer, for any legal purpose, at a time:
· Personal license entitles you to use RoboTask only on a single computer at home for
personal purposes.
· Business license entitles you to use RoboTask on server or workstation by employees
of your company or organization at single location.
· If you need to use RoboTask on a few computers (servers or workstations) you must
purchase corresponding amount of licenses.
· The user can install and run runtime module to perform pre-made tasks on a separate
computer without an additional license.
4. Registered user is granted free upgrades of RoboTask within one year period since
purchasing of RoboTask. In order to prolong the period of free upgrades, user must purchase
new registration code with discount.
5. The licensed RoboTask software may not be rented or leased, but may be permanently
transferred, if the person receiving it agrees to terms of this license. If the software is an
update, the transfer must include the update and all previous versions.
6. The trial version of RoboTask may be freely distributed, provided the distribution package is
not modified. No person or company may charge a fee for the distribution trial version of
RoboTask without written permission from the copyright holder.
8. You may not use, copy, emulate, clone, rent, lease, sell, modify, decompile, disassemble,
otherwise reverse engineer, or transfer the licensed program, or any subset of the licensed
program, except as provided for in this agreement. Any such unauthorized use shall result in
immediate and automatic termination of this license and may result in criminal and/or civil
prosecution. All rights not expressly granted here are reserved by Neowise Software.
9. Installing and using RoboTask signifies acceptance of these terms and conditions of the
license.
10. If you do not agree with the terms of this license you must remove RoboTask files from
your storage devices and cease to use the product.
Neowise Software
www.robotask.com
Microsoft, the Windows logo, Windows, and Windows NT are registered trademarks of Microsoft
Corporation. All other brands and product names are trademarks or registered trademarks of
their respective owners.
II
Several practical recommendations
10 RoboTask User's Guide
For building complex automation schemes, RoboTask provides two types of variables that you
can use in actions and triggering events:
· System variables that are pre-defined.
· User variables that you can define yourself.
When you insert a variable name as a parameter or part of a parameter in an action or triggering
event, the variable content is processed, instead of the variable name.
For example, if you want to show a message containing the day of the week, you should use
the {DayOfWeek} variable.
When you run the task that contains the {DayOfWeek} variable, the variable is replaced by the
name of current week day. If you insert this variable in a Show Message action that includes
the message defined as "Today {DayOfWeek}!", when you run this task on Wednesday, the
following message displays: "Today Wednesday!".
You can use as many variables as you need in an event or action. Any time that you define the
same parameter many times, you should use a variable. This allows you to change the variable
in one place and all your tasks that contain the variable update automatically.
You can even use variables within other variables; this is useful if you want to specify a value
of a variable for other variables. For example, you can define a variable with a name
{Yesterday}. {Yesterday} contains another variable with a value {MonthIncDays(-1)}/
{IncDays(-1)}/{YearIncDays(-1)}. When you use the {Yesterday} variable, it returns
yesterday's date.
Arrays
To make your tasks even more powerful, you can use variables as arrays. This means you can
specify more than one values separated with commas. To access the first value, use index 0:
{MyVar(0)}. To access the second value, use index 1: {MyVar(1)}. And so on.
For example, if to add a variable with name {MyArray} and value One, Two, Three, you can use
that variable as shown below:
Another example:
You can view system variables 608 in the RoboTask variables dialog box (the Options | Variables
menu). The list is divided into categories. Each variable in the list has a brief description. Thus,
it will not be difficult to study the set of variables 608 and we will not describe them here.
There are more than 80 system variables available now. Actually they are functions that are
executed at the moment of line generation.
You should specify the full name of the file as the parameter of this variable. For example:
{ExtractFileNameNoExt(C:\Folder\File.ext)}
In this case, RoboTask will find {MyFileName} first and then use the found string as a
parameter.
This rule applies to all system variables that require a parameter.
RoboTask allows you to save intermediate data in users variables. There is also a whole set of
actions that cannot work without user variables. For instance, loops. While using variables, you
should remember about some peculiarities.
Tip
If you use variables that are not supposed to be used in other tasks, use special prefixes of
this task in the names of these variables.
For example:
TSK1_Counter, TSK1_CurrentFile, etc.
Also you may simply declare necessary variables as local. See Local variables 12 topic
Tip
Insert actions removing unnecessary variables at the end of tasks.
When you use local variables, you do not have to worry that they will be changed by another
task. And vice versa: the use of local variables guarantees that the values of variables will be
preserved while the task is running.
If several tasks that can change one and the same variable are running simultaneously, the
result may be unpredictable. Suppose we have two similar tasks that go through files in a loop,
but they do it in different folders. Both tasks assign the name of the current file to the
CurrentFile variable. If these tasks are running simultaneously, we may end up with quite a few
problems. It is easy to avoid it if you declare the CurrentFile variable as local in both tasks.
Such a situation is not a rare one, especially if you have several hundreds of tasks. You can
also create new tasks by copying an existing one and changing a few steps in it.
LineCount
FileToUpload
CurrentFile
etc.
To assign an initial value, specify this value after the "=" character. For example, like this
LineCount = 0
FileToUpload = c:\incoming\list.txt
CurrentFile = note.txt
etc.
You can assign initial values not to all variables. By default, local variables contain an empty
value (an empty string).
By default, the list of local variables is empty. It means that all variables that are used in a task
will be processed as global ones when you run the task.
Using the methods of the RoboTaskApp 615 object: ExpandText, SetUserVariable, etc.
The rules according to which RoboTask processes local variables are very simple:
Once a variable is called, RoboTask first tries to find it among the local variables of the task.
Calling a variable means any call: assigning a new value or calculating the variables value when
macro insertions with the help of variables are substituted.
If the local variable is declared, further operations (reading or assigning the value) will be
applied to the local variable. Otherwise, RoboTask will process the variable as a global one.
Thus, if we declare a local variable that has the same name as a global variable, the local
variable will completely override the global variable. The running task will not simply see the
global variable.
It is better to declare all internal variables as local ones for most tasks. As a rule, these
variables are used in a loop or to pass data from one step in the task to another. When you use
local variables, you need not worry that the new task will mess up data from other tasks. And
vice versa – that some other task running simultaneously changes the data of the current task.
On the other hand, if you need to pass some data to another task, you should make sure that
the necessary variables are absent in the list of local variables.
Tip
In the Initial Value edit box, you can also type the names of other variables to define a
variable.
1. When you create a task, on the Edit Task dialog box, select an action or triggering event.
2. When you do this, some actions or triggering events display a dialog box in which you can
enter specific settings for the action or event. On this dialog box, select a field and click the
{V} button.
3. On the RoboTask Variables dialog box, select a variable in the list and click the Select
button.
4. The variable appears in the field that you selected on the dialog box for the action or
triggering event.
By default, RoboTask tries to expand all variables in the specified expression. Then it
recursively reiterates the attempt to expand variables in resultant expression until all variables
are expanded. However, sometimes it is necessary to protect a text from expanding variables.
These can be some technical texts for automated processing. These texts aren’t directly
related to RoboTask. They can contain inserts coinciding with the variables of RoboTask. The
use of braces is quite a widespread method of inserting some macros when texts are
processed automatically.
You have to process this text in a cycle together with other files by means of RoboTask. For
example, add HTML tags and save it as HTML file preserving all the file contents without
changing. It is easy to see that if we try to write the file contents into a variable by means of
a system variable {TextFile(file_name)}, expressions {Date} and {Time} will be replaced
with current meanings of date and time.
To save a text to a variable without changing, you have to use the symbol # after the
opening brace: {#TextFile(file_name)}. In this case RoboTask doesn’t try to expand all
variables in the text recursively, but only returns the contents of the text file without
changing. Naturally, you also have to use the variable containing the text with the symbol #,
in order to prevent from expanding expressions in text. For example: {#CurrentText}.
Context prefix
A context prefix can have 2 values: local or global
A prefix precedes the name of a variable and ends with the "@" symbol. It is not case-
sensitive.
For example:
local@MyVar
global@userinfo
When a context prefix is not specified, the general rules of visibility described in the chapter
"Rules for Using Variables in Expressions 15 " (see "The rule of visibility") apply.
Protocol prefix
Only one protocol, JSON, is currently used. A protocol prefix ends with a colon ":"
For example:
json:userinfo.name.firstname
If a protocol prefix is not used, this means that we are using the value of the variable entirely
as it is. We either extract it while reading or write the specified value.
A json prefix means that the userinfo variable should be processed as a JSON object and
the value at the name.firstname destination should be extracted from it.
If you use this expression to write to a variable, RoboTask will accordingly write to the
userinfo variable the value specified at the name.firstname destination as to a JSON
object.
If you attempt to read just the value of the userinfo variable without prefixes, RoboTask
will return the JSON object entirely in the form of a string.
For example:
{"name":{"firstname":"John","surname":"Dou"},"address":"New
York, 5-th ave,125"}
Please note that the path to the value in the JSON object is case-sensitive. This is a JSON
standard. In other words, the expressions
json:userinfo.name.firstname
and
json:userinfo.Name.Firstname
are different expressions that can contain different values.
In this way, the JSON format allows storing structured data and arrays of values.
We will skip the format description. For more information, go to the article:
https://en.wikipedia.org/wiki/JSON
Use of Prefixes
Prefixes can be used in any sequence in front of the name of a variable. Both prefixes can be
used at the same time.
For example, the expressions
local@json:userinfo.name.firstname
and
json:[email protected]
have the same meaning.
If you specify a wrong prefix, RoboTask will treat this sequence of characters as a part of the
variable name and you will most probably get an error message.
How it works.
When any action works the RoboTask tries to expand insets of variables in the expression. In
other words, it replaces the variable name with the variable value in the expression.
The algorithm is easy:
At first, the program scans the source line for expressions which are put in braces;
If such expressions are found, the RoboTask tries to find the variable value using the variable
name and parameters (if the parameters are specified);
If the variable exists, the RoboTask replaces the expression in braces with the found value;
If such variable doesn't exist, the RoboTask leaves the source expression without any
changes.
What happens if you specify braces in the variable name (that is, do insets of other variables
in the expression):
· The RoboTask computes the final expression which is the variable name. In other words,
it replaces expressions in braces with variable values.
· After that, it checks if it is permissible to use the got name as a variable name.
Otherwise, the RoboTask generates warning and skips the operation of assigning value.
· Only after checking, the RoboTask assigns the specified value to the variable with such
name.
Note: The usage of such compound names allows to get more flexibility when writing a
task in some cases. But if this method is hard to understand, it is better to avoid it. It is
necessary only to specify the variable name explicitly without any braces.
RoboTask has powerful tools of interactive automation, such as «Send Keystroke» operations
and the mouse actions (Move, Move to object, Click). However, it is obviously not convenient
to create an incremental task that implies mouse shortcuts. Sometimes several operations need
to be performed as a single block.
For example:
· Activate the contextual menu;
· Select the menu item;
· Click on the needed element of the pop-up dialog.
buttons on the required window elements) and click on stop recording button .
· When the recording is over Macro Recorder will recover the task editor window and insert
the recorded shortcuts into the editor.
As a rule, the recorded macro is ready to use. However, it is strongly recommended to edit the
created steps manually. Macro Recorder records the actions properties exactly as they were
made, and that is not always useful for the task creation.
For example, in such action as «Move to Object 287 » it is almost always needed to replace the
full title bar with the specific title bar fragment. It should be done because the Windows
application windows almost always change their title according to the window contents or the
context. If the window properties are left unchanged, during the operation flow RoboTask may
not find the window according to the properties. In this case, the task will be stopped with an
error.
It is also useful to edit the pauses between the operations. As a rule, they can be significantly
reduced to speed up the task execution. However, it is not recommended to remove the pauses
at all, because you should wait a certain period of time until the application can respond to the
mouse shortcut (e. g. load some data or open a new window).
You can open the settings dialog of macro recorder by pressing the button
Record Mouse
If you want to record actions of a mouse, switch on this option.
Each task runs in the background mode independently of other tasks. You can effectively use
this feature while scheduling your tasks. Suppose you need to pack several independent folders
into different archive files. You can create the following task:
In this case, the task will pack Folder1, Folder2 and Folder3 one by one. That is, each next
folder will be processed only after the previous one is packed.
The use of background processes would be more effective. In this case you need to create
three different tasks and each of them will pack the corresponding folder. In this case, the main
task will look like this:
Running such a task will be the same as running three tasks "Pack folder1", "Pack folder2" and
"Pack folder3". Each of these tasks will run independently of the others and the total time of
packing all three files will be a bit shorter than in case with successive processing.
In this chapter we will consider some recommendations (guidelines) concerning the debugging of
the generated task. If the task consists of 3-5 sequential steps, there is no need for debugging
as a rule. But if there are more than 30 steps with loops and branching in the task (if .. then ..
else 249 ), then there are surely hidden mistakes in it, that aren't visible ex facte.
Output of values of variables into the log file or into the screen.
The task often works incorrectly because there is the wrong value in the variable: the empty
value or the incorrect one.
In order to make sure the variables are filled in correctly it is possible to verify the values of
variables before the implementation of the key actions. It can be done in the process of
performing the task by several means:
· Output of values of required variables into the screen before the implementation of the
necessary action. You can use the action "Show message" for it.
· Output of variable values or expressions into log of the task. Use the action "Log
message".
Also you can output the whole expression if you use the composite value consisting of some
variables. For example:
"{CurrentUser}" <{CurrentEmail}>
Let us try to make the task described in the previous section a bit more complicated. Suppose
you need to pack three folders in three different files and then write them to a CD. As you
remember, we have started three different tasks to pack the folders. It means that we must
wait until all three tasks are finished before we can write the archives to a CD.
The "Wait for Task" action is used for that. Let us modify our task in the following way:
Thus, we start three simultaneous processes in order to pack the necessary data and after all
three processes are sure to be finished, we write the archive files to a CD.
variables in RoboTask, as well as other tasks. The installation file also includes some sample
uses.
Almost anyone can learn how to write small procedures in script languages. The use scripts in
tasks extends available actions beyond the set of RoboTask actions. Experienced users can use
Windows APIs and third-party COM objects in their procedures written in VBscript or JavaScript
without any limitations.
several users work on one server in the mode RDC (Remote Desktop Connection). Every
instance of RoboTask will work independently from others and not interfering with others.
RoboTask service keeps tasks in its folder in Program Files. To make RoboTask perform
necessary actions in the service mode, it is not enough to simply install the service. It is
necessary to import or create required tasks for the service as well.
Different sets of tasks allow the application and the service to work simultaneously and
independently.
Application mode
After the installing, RoboTask is ready to work in the application mode. By default, RoboTask
runs automatically every time when a user opens a user session (log on to Windows).
Advantages
· Additional settings are not necessary; RoboTask is ready to work immediately after installing.
· Easy access to the main window and to the settings of RoboTask.
· The work of RoboTask in the user session allows to get access to the same resources which
are available to the user (for example, network folders and disks, windows of other
applications, etc.). This is inheritance of a user session environment.
Disadvantages
· In order that RoboTask may begin to work, it is necessary to log on.
· Logging off the session RoboTask also turns off as all other user applications. No tasks are
performed after that.
· In operation system Vista and further ones, the system UAC (User Access Control) demotes
the privileges of the started applications. It is done to increase security against malware and
viruses.
Problems connected with the UAC manifest themselves in a possible error “Access Denied”
during some operations. In case of starting certain applications with elevating of privileges (for
example, by means of the utility RG.EXE from the package RoboTask) you have to confirm
running of programs manually.
The problems of the UAC can be solved in two ways:
· Turning off the UAC. In this case all the applications in the session will work with user
privileges. This mode is possible but not recommended because the security of the
system against malware decreases
To install RoboTask service you can use the utility "RoboTask Service Manager" 28 from the
package RoboTask. The utility allows to install, delete, start or stop the service. Also the
utility allows to specify initial common settings of RoboTask for working in the service mode.
The usage of RoboTask as a system service has unquestionable advantages, but it causes
some inconveniences as well.
Advantages
· RoboTask service begins the work when the system starts. There is no need to log on. It is
enough just to turn on the computer.
· By default, all the tasks of RoboTask work with system privileges.
Disadvantages
· As a rule, the system service works in a hidden mode. In the system Windows Vista and
further systems all interactive services work in a separate system session. A user cannot
see the main window of RoboTask without additional manipulations. That complicates manual
control of RoboTask.
· By default, services working with the privileges LocalSystem do not have access to network
recourses (i.e. the network folders on remote computers)
· It is necessary to avoid any interactive actions in service tasks: moving a mouse, pressing
mouse keys, sending keystrokes or calling any dialogs.
The first two items cause some inconvenience, but these problems can be solved. See below
how to do it.
The last rule is to be fulfilled for the following reasons:
· The system ignores moving the mouse and pressings the keys inside of a locked session. This
is done for security of the system. For this reason, the simulation of mouse and keyboard
actions will not work if the user session is locked. The user session is locked by default,
when screensaver is activated .
· As a rule, a user does not have a direct access to windows of RoboTask in the system
service mode. All the dialog windows require to press OK or Cancel. If the user does not do
it, the task comes to a stop and waits for a user action endlessly.
Summary
Both modes have their own advantages and disadvantages. You can use RoboTask as an
application and as a service simultaneously. Thereby, you can fulfill the whole circle of tasks
that can be solved by means of RoboTask.
How you will manage the process of automation on your computer or in a local network
depends only on your needs.
· As a regular application
· As an NT service
An NT service is started together with the operating system and runs even if you are not logged
on. If you correctly create your tasks and configure triggering events, it will be enough just to
switch on the computer for RoboTask to start doing what it is supposed to do. This mode is
important for those computers that are used as servers in your office.
The NT service mode is not available on the Windows 9x/Me platform. The NT service mode is
not installed by default. In order to install the RoboTask service, you should use RoboTask
Service Manager 28 utility.
RoboTask Service Manager allows to start, stop RoboTask service, and make the initial
adjustment of the service.
If you access various network resources in your tasks, we recommend that you use UNC (UNC -
Universal Naming Convention) names.
For example, instead of the path
z:\documents\report.doc
I.e. you should use the name of the server and the name of the resource instead of the disk
name ("z:").
What benefits you get:
· A UNC name is always valid within your local area network and does not depend on how
network drives are mapped on a particular computer.
· You can use UNC names to access network resources even if you have no connected
(mapped) network devices. It is simply necessary in the NT service mode when there are no
mapped drives for RoboTask in principle.
When RoboTask is running in the NT service mode, it does not see network resources by
default. It happens because in this case RoboTask has not the rights of your session account,
but the rights of the virtual "SYSTEM" account despite the fact that you can see the green icon
in the tray and can manually control the program. To allow the program to log on to the
network, you should specify authentication parameters. These settings make sense and are
available only in the NT service mode. Open the Settings dialog box (Options | Settings) and
switch to the "NT Service" tab.
Also RoboTask Service Manager 30 allows you to make this adjustment too.
Domain Name.
Specify the domain name where the user is registered. If the user is registered on the local
computer, enter a dot (.) instead of the domain name.
User Name.
Specify the username.
Password.
Specify the password for the specified user.
Try to Logon
To test the authentication parameters and log RoboTask manually, click this button. RoboTask
will try to log on using the specified parameters and you will see either "Log on successful" or
"Log on failed".
Service Setup
The functions of installing, starting and stopping of a service are located on this tab. It is also
possible to change system settings of the service and to get access to the main window of
the service here.
Update Status.
Updates displaying of service status in the window.
Service configuration
You can perform system settings of the service here as well as in the system Service Manager
(Control Panel => Administrative tools => Services). For ease of operation, the settings of the
RoboTask Service are included into this utility.
This option does not prevent RoboTask service from working. The service starts and works
normally in any case. But if the option is off, you cannot get any access to the main window
of the RoboTask service. If interactive services are not allowed, you will get an error when
starting Interactive Service Detection.
To allow interactive services in the system it is enough just to switch on this checkbox.
This option is not available on Windows 10 and later
General Settings
You can find general settings for the service on this tab:
· Location of tasks and logs.
· The maximum length of log-files (in lines).
· Switching on and off the automatic work of tasks.
You can also find these settings in the dialog Settings on the General tab 71 .
Logon Parameters
Domain Name
Enter the name of the domain or server whose account database contains the specified
UserName account.
User Name
Enter the name of the user account to log on to.
Password
Enter the password of the user account.
Bind to IP
By default this field is empty. This means that the network server is bound to all available
addresses on the computer. The address 0.0.0.0 has the same effect. You can specify
particular address. This is useful if the computer/server has several IP addresses.
Also you can specify local host address 127.0.0.1. In this case you can connect to server from
local computer only.
Port
This is the number of a port, on which the server accepts connections. By default, it is 5500.
If you use more than one instance of RoboTask at your computer, apply different ports to
avoid conflicts.
For example: 5500 is for an application, 5501 is for a Service.
Encrypt data
This is the mode of traffic encryption. By default, it is on. The mode of ciphering is specified
by server. A client is tuned on the mode of encryption automatically. RoboTask provides the
traffic encryption with dynamic keys using CryptoAPI system functions.
Compress data
This is the mode of traffic compression. By default, it is on. The mode of traffic compression
can be useful when connection is slow (for example, DialUp or GPRS). The mode of traffic
compression (packing) is specified by server. A client is tuned on the mode of compression
automatically.
User Rights
This is the check mode of user’s rights at connection. It is possible to choose between two
modes of user checking:
· Use Internal list. When you press the button “Edit Internal List of Users” in this mode,
you can define users, who have the right of connect to the server. This is just text in
the form USERNAME=PASSWORD on every line.
For example:
admin=1234567890
At the checking of a user, the server inspects presence of the user in a list and
correctness of a password.
· System Administrators. In this mode the server checks presence of administrator’s rights
on a local computer when a client connects.
If the user isn’t checked, the server returns an error and closes the connection.
By default, the System Administrators mode is on.
Plugin parameters
The form is the same as the settings of the Network plugin 305 .
Backup folder
Select a folder to save the backup files. The default folder is in the user profile:
C:\Users\<User_Name>\RoboTaskBackup
If necessary, you can select another folder. The selected folder is saved for future work
sessions.
The archive file name is generated automatically using the current date and time:
RoboTask- Service-Tasks-YYYYMMDD-hhmm.zip
where YYYYMMDD – date in "YYYYMMDD" format
For users of a domain structure, there is a similar editor for group security policies.
· The system service automatically loses SYSTEM rights, which are comparable to
administrative rights.
You only need to run this command line once. For example, when starting the RoboTask
service.
You can run this command line using the actions Run Program/Open Document or Run Console
Application.
You can insert this command line into the first line of a batch file BAT or CMD. Running this
command again will not cause an error.
In this chapter we will consider the base differences between the two modes of RoboTask:
· The general application
· System Service
RoboTask is designed so that the application and the service could work at the same time, not
preventing each other. When installing RoboTask Service interaction with the desktop is allowed
by default. Sometimes this mode of the service tangles understanding.
2.8.7.1 The visual differences between the work in ordinary application mode and in the system
service mode
· The RoboTask Service has a green icon in the system tray. The ordinary application has a blue
one.
· The main window title of RoboTask terminates in the line "(NT Service)". For example:
RoboTask 3.5 (NT Service). The tool tip of the green icon also contains the substring "(NT
Service)".
· RoboTask in application mode has another set of tasks than RoboTask Service. The tasks for
the application mode are in the local folder of the user's profile (by default). The concrete
name of the folder depends on the operating system and on the user name. The tasks for the
service mode are in the subfolder <RoboTask_Folder>\Tasks (by default "C:\Program
Files\RoboTask\Tasks").
You can see and change the path to the task folder in the settings of RoboTask (the menu
Options | Settings)
In RDC (Remote Desktop Connection) mode you can't see the green icon. The system prohibits
the interaction of service with desktop in RDC regardless of the settings of service. You can see
the green icon and the main window of RoboTask only in the local session (i. e. from the local
terminal).
But Windows 2003 Server gives an opportunity to intercept the local session for RDC. It is
necessary for it to start up the client RDC with the parameter /admin.
To know about the possible parameters you should implement the command:
%SystemRoot%\system32\mstsc.exe /?
As we know Windows Vista+ operating systems prohibits the interaction with service
applications by default.
You can close close RoboTask service manager and open main window of RoboTask
application.
Choose menu Remote->Connect to...
You can see new Root folder in the task tree: localhost:5501
You can select it and edit remote tasks (also you can import, run interactively and remove
tasks)
- You can see RoboTask window in the system session. Configure tasks interactively (or import
prepared tasks) and press Return Now button on system dialog.
If there is an error occurs in any step during a task, RoboTask records an error message to the
task log and stops the task by default. You can change this behavior. To do it, you should
select the "Advanced" tab in the task editor and set the "If Error Occurred" parameter to
"Continue Execution". In this case, the task will not be stopped in case of an error.
The system variable {IsError} is used to analyze if there was an error in the previous step.
This variable contains "True" if there was an error in the previous step and "False" if there was
no error in the previous step.
Another method of the error handling is the starting up of another task when an error is raised.
For this purpose you need to tune the task like this:
· Open task editor and go to the tab "Advanced 57 "
· Choose the point "Run the Error Handling Task" of parameter "If Error Occurred"
· Choose the task in a drop-down list "Error Handling Task".
If an error was raised in any step when you perform the task, RoboTask starts up the handler-
task and stops the main task. At the start of the error handler RoboTask passes the next
parameters:
· LastErrorTaskID – the internal ID of the task, in which an error was raised. It is a formal
identifier of the task like a number.
This set of parameters is enough to definitely identify the error and to undertake any actions.
For example:
· Send an email message with the notice and description of error;
· Make an record into text log file;
and etc.
The variables LastErrorCode and LastErrorDescription can be used in the task in which the
error occurred.
The conditions of the using are similar to the variable IsError: it is necessary to set the
parameter If Error Occurred into the value Continue Execution, to not interrupt the performing
of the task when an error appears.
RoboTask has the feature of the controlling over tasks through network. This opportunity is
available to owners of the Business License. The operation of major components of Client-
Server is also available in trial mode for a testing.
The control of remote RoboTask is necessary in the next cases:
· The control of a local RoboTask service. Beginning with Windows Vista, the system forbids
interaction between a service and a desktop within a user session. Therefore the control of
tasks is related with certain inconveniences (see the chapter Peculiarities of work RoboTask
Service under OS Vista/ Windows 7/ Windows 2008 Server 37 ). The mode Client-Server
permits to edit on-the-fly, to add, to delete, and to start service tasks, and also to view the
tasks logs without calling at a system console.
· The control of RoboTask installed at the other network computers. RoboTask in client mode
can connect to several instances of RoboTask simultaneously. It allows to view and to edit
tasks at the other computers in the main window of RoboTask without using RDC (Remote
Desktop Connection) or similar tools.
Notice: At startup of a task at a remote RoboTask the task is performed in the session in
which the RoboTask server is working. It can be tracked only on a client the course of
performing by the task log. If the task demands some interaction with the program (for
example, dialog windows) it can’t be done from a client.
The server doesn’t contain any visual interactive elements and serves only for authorization
and handling of client requests. The server must be active if you want to control this copy of
RoboTask remotely
All tunings of the server are in the dialog window of Connection manager 64 (menu Options |
Settings) on the tab "Network Server 65 ".
Port
This is the number of a port, on which the server accepts connections. By default, it is 5500.
If you use more than one instance of RoboTask at your computer, apply different ports to
avoid conflicts.
For example: 5500 is for an application, 5501 is for a Service.
Encrypt data
This is the mode of traffic encryption. By default, it is on. The mode of ciphering is specified
by server. A client is tuned on the mode of encryption automatically. RoboTask provides the
traffic encryption with dynamic keys using CryptoAPI system functions.
Compress data
This is the mode of traffic compression. By default, it is on. The mode of traffic compression
can be useful when connection is slow (for example, DialUp or GPRS). The mode of traffic
compression (packing) is specified by server. A client is tuned on the mode of compression
automatically.
User Rights
This is the check mode of user’s rights at connection. It is possible to choose between two
modes of user checking:
· Use Internal list. When you press the button “Edit Internal List of Users” in this mode, you
can define users, who have the right of connect to the server. This is just text in the form
USERNAME=PASSWORD on every line.
For example:
admin=1234567890
At the checking of a user, the server inspects presence of the user in a list and correctness
of a password.
· System Administrators. In this mode the server checks presence of administrator’s rights on
a local computer when a client connects.
If the user isn’t checked, the server returns an error and closes the connection.
By default, the System Administrators mode is on.
Start Server
It starts the server.
Stop Server
It stops the server. At that rate, all opened connections are closed.
View/Edit connections
Here it is possible to view all opened connections and to close selected connections.
Network Client is integrated into the main window of RoboTask. At connection to remote
RoboTask, a new branch, fitted to the service tasks, is added on the tree of tasks.
Subsequent work with network tasks is completely "transparent". That is, you can trigger,
edit, and delete tasks, just as if you would work with local tasks.
RoboTask can open several connections at the same time: one connection on each server. All
connections are visible at the tree of tasks.
2.10.2.1 Connect to
Choose the menu item Remote | Connect to 67 for fast connecting to a server. For
connecting it is necessary to specify following parameters:
· Computer Name or IP address. It can be also the global network name (for example:
www.mydomain.com), if the server is in a global Internet network. One can use the name
localhost or the address 127.0.0.1 for access to a local computer (for example, to connect
to a local service).
· Port. For example, the port number which is specified on the server. By default, 5500.
· Domain. This parameter is necessary if only the mode of authorization System
Administrators is specified on the server. Specify a domain name or "." (Point) for a local user
on the server.
· User Name
· Password
If you need to constantly control the group of servers, you can create predefined
connections. At that rate, corresponding items of menu Remote appear and then you can
connect to the server “in one click.”
Choose the menu item Remote | Connection manager 64 for creating/editing of predefined
connections.
To create a define connection, you need to specify a name of connection for a menu item and
then to specify parameters of connection.
If you not switch on the CheckBox "Save Password", RoboTask doesn’t save a password for
the next sessions. In this case, when trying to connect, a network client will request a
password.
Interactive parameters
If run the utility without any parameters, the dialog window of parameters will load.
Port
Specify the port the command should be sent to. By default, the "Listener" listens to port
5254. The port number can be changed to any other number (see Plugin settings).
Access Password
Specify the password for connecting to remote RoboTask. If the Listener on remote RoboTask
is configured to work without a password, leave this field blank.
Command
Specify the string (command) that should be sent to remote RoboTask. It can be any string.
The "Listener" triggering event on the remote computer will analyze the string.
Help
Shows description of command-line parameters
Usage:
NetWorkCommand.exe srv=ServerName cmd="any string" [psw=password]
[port=PortNumber] [silent=yes|no]
Parameters:
srv - Host Name or IP Address. Specify the Host Name or IP address of the computer where
you need to send the command. The Host Name can be either similar to www.mydomain.com
for the Internet or just the name of the necessary computer for the local area network.
port - Specify the port the command should be sent to. By default, the "Listener" listens to
port 5254. The port number can be changed to any other number (see Plugin settings). By
default port=5254.
psw - Access Password. Specify the password for connecting to remote listener. If the
Listener on remote server is configured to work without a password, leave this field blank.
cmd - Specify the string (command) that should be sent to remote listener. It can be any
string. The "Listener" triggering event on the remote computer will analyze the string. If the
command contains spaces you should include the string between quotas. For example:
cmd="Some random string".
silent - By default is Yes. Specify "No" if you want to see error messages or final dialog box.
Also you may specify such values: Yes/No, Y/N, True/False, T/F, 1/0
The application executes the task and exits during normal operation. When an error occurs,
the application does not finish automatically and offers to read the task execution log.
Command line:
RoboTaskRuntime.exe <Task_File_Name> [/stop|/nonstop] [/out:<full_file_name>]
[/taskparam:<task_parameters>]
Parameter Task_file_name
The task file name may contain spaces. Simply enclose the file name in double quotes.
Parameter /out
The file name in the /out parameter may contain spaces. In this case, just enclose the file
name in double quotes. For example:
/out:"c:\folder name\file name with spaces.log"
In this case, the system will treat the entire string as a single parameter, and the file name will
be passed to the application correctly.
Parameter /taskparam
Dealing with this parameter is a bit more complex. Task parameters consist of multi-line text.
Each line is represented as an equality (as in the actions Start Task 218 or Start Remote
Task 227 ).
ParameterName=ParameterValue
A line break signifies the end of the command line. If a parameter contains quotes, they must
be escaped to avoid confusion.
Just mask prohibited characters as in an HTTP request:
· Space – %20
· Quote char – %22
· Line break – %0A
You can simplify this by enclosing the expression in quotes. However, you need to replace line
break and quote characters in parameters with %10 and %22, respectively.
For example:
/taskparam:"Param1=Hello world!%0AParam2=simple string with spaces%0Aparam3=string with
%22quotes%22"
Note:
To automatically encode text, you can use the "HTTP encode/decode" 557 action. Let's assume
we need to pass the following parameters:
Param1=Hello world!
Param2=simple string with spaces and "quotes"
"HTTP encode/decode" 557 will encode this text into a string strictly following the encoding
rules:
Param1%3DHello+world!%0D%0AParam2%3Dsimple+string+with+spaces+and+%22quotes%22
You can use this string in the parameter line without any changes:
/taskparam:Param1%3DHello+world!%0D%0AParam2%3Dsimple+string+with+spaces+and+%
22quotes%22
The Runtime module will expand the variables before executing the task, and the result will be
the same in both cases.
Passing parameters allows you to perform the same task simultaneously, for example,
processing different files using the same algorithm.
It should be remembered that the runtime module guarantees the correct execution of
autonomous tasks. That is, there are some restrictions:
· The runtime module does not have access to other RoboTask tasks. Accordingly, it
cannot perform actions with other tasks: launch, enumerate, check the status, etc.
· The runtime module does not have access to RoboTask global variables.
· The runtime module does not process the task triggers. The task can only be started
from the command line.
To install the engine only with runtime module on separate computer use the command line of
setup program:
RobotaskSetup.exe /COMPONENTS=engine
By default setup application installs all modules and components. To force install all
components, use the following command line:
RobotasSetup.exe /TYPE=full
InputRegKey.exe
Provides activation of the license key on the computer.
NetWorkCommand.exe
A standalone utility for sending a command to a Listener trigger 597 from a remote computer.
So you can run the task remotely from any computer, as long as a network connection to the
RoboTask instance is possible.
This utility is described in detail in the "Network Command utility 46 " chapter.
The utility is completely self-contained and does not require activation.
RTServiceMGR.exe
The RoboTask Service Manager is a separate utility within the installation package of
RoboTask. The RoboTask Service Manager allows to install the RoboTask Service and perform
the necessary initial settings of the service. Read more here 28
RG.exe
Allows you to run the command line with administrator privileges. Please note that you will
need manual confirmation to allow the operation, if UAC (User Access Control) is enabled in the
system and the current user is not an administrator. UAC is enabled by default.
Usage:
RG.exe [/p] <command_line>
/p - RG waits when the command will be finished
RoboTaskRuntime.exe
The runtime module is designed to run a prepared task without the main RoboTask application.
However, the Runtime module uses the entire engine to run the task.
Usage:
RoboTaskRuntime.exe <Task_File_Name> [/stop|/nonstop] [/out:<full_file_name>]
[/taskparam:<task_parameters>]
/stop - (optional) if you want to stop the application before exiting anyway
to read the log
/nonstop - (optional) the application is forced to continue running and exit
even if the task stops with an error. In this case, it is better to write the
log to a file (see the /out: parameter)
/out - (optional) output task execution log to a file
/taskparam - (optional) task parameters
III
Menus
Menus 53
3 Menus
3.1 Task
3.1.1 Task - New
Allows you to add a new task. After you select the command, the Add Task dialog box displays,
allowing you to select the following tabs to create a task:
· Actions tab 54
· Triggers tab 56
· Settings tab 57
· Variables tab 59
· Notes tab 60
Actions tab
Cancel
Close the task editor without saving.
Save
Save the task. Then you can continue editing.
Move Step Up
Select an action in the Action List and click to move the action up in the list. This
ensures the action runs earlier in the process when the task runs.
Select an action in the Action List and click to move the action down in the list. This
ensures the action runs later in the process when the task runs.
Record a macro
In order to record mouse actions "as is" click this button . Macro recorder 18 catches
mouse actions and saves them as a sequence of task actions.
Task name
Enter the name of task
Active
If the check box is cleared, the task is disabled and you must run it manually by double-
clicking the task in the RoboTask window.
Tip
To change the Active setting, select a task in the RoboTask window and right-click.
Available actions
List of available actions that you can use in the task.
Task steps
Displays a list of the actions you have selected for the task you are creating or modifying.
To add step select the action from available actions and click the add button . You can
also drag the desired action to the list of steps.
Select an action in the task steps and click the configure button to modify the action
parameters.
To remove step select the step from task steps and click the remove button . You can
also drag the desired step back to action list.
When you start the current task, the actions run in the order in which they appear in this list.
Click the & buttons to move an action up or down in the order listed.
Triggers tab
Available triggers
List of available triggers that you can attach to the task.
Task triggers
Displays a list of the events you have selected for the task you are creating or modifying. The
order in which events appear in the list does not matter.
To add trigger select trigger from available triggers and click add button .
Select trigger in the task triggers and click the configure button to modify the trigger
parameters.
To remove trigger select the step from task triggers and click the remove button .
Settings tab
Log Level
Select the status messages you want to record in the log file:
· Nothing
· Errors Only
· Errors and Warnings
· All Messages
If Error Occurred
Here you can define the behavior of a task when an error is raised in any step. You can choose
from 3 variants:
· Stop Task – the default action. When an error is raised, performance of a task is stopping.
· Continue Execution – when an error is raised, performance of a task is going on. In other
words – it is ignoring of the error. We recommend to use this mode only if it is really
necessary.
External Name
You can define an external name by hand. External Name is, per se, an alternative identifier of
a task, which can help you to refer to a task (see object RoboTaskApp 615 ). RoboTask controls
the uniqueness of the External Name and, in case of name clash, resets it to the default value.
The default value looks like TaskNNNN, where NNNN – is just an ordinal number.
Variables tab
You can declare local variables on the "Local variables" tab of the task editor. There are two
ways to declare them:
Enumerate the names of the variables;
Assign initial values to them.
If you enumerate them, just fill the list of names for local variables: one variables per line. For
example, like this:
LineCount
FileToUpload
CurrentFile
and so on.
To assign an initial value, specify this value after the "=" character. For example, like this
LineCount = 0
FileToUpload = c:\incoming\list.txt
CurrentFile = note.txt
etc.
You can assign initial values not to all variables. By default, local variables contain an empty
value (an empty string).
By default, the list of local variables is empty. It means that all variables that are used in a task
will be processed as global ones when you run the task.
See more information about local variables 12 .
Notes tab
Allows you to edit a task. After you select the command, the Edit Task dialog box displays,
allowing you to select the following items to edit the task:
· Actions tab 54
· Triggers tab 56
· Settings tab 57
· Variables tab 59
· Notes tab 60
Removes a task from the RoboTask and deletes its associated file.
Starts the task that you selected in the RoboTask window. This is useful for testing your task
to ensure it runs correctly.
Allows you to stop the task that you are running in the RoboTask window.
Note: Pay attention that the imported tasks are always disabled after importing. You have to
enable it manually.
Copies the task that you have selected in the RoboTask window. This is useful if you want to
quickly create several tasks and then edit them.
For example, if you select a task named "Hello, World!" and click this command, a shortcut called
"Hello, World!" appears on your desktop.
3.2 Remote
The actions for working with remote RoboTask are collected in this group.
Connection manager allows you define connection parameters for network client and
parameters of internal network server.
Predefined connections
To connect to the necessary server of the RoboTask quickly, you can specify the connect
parameters in advance.
On this tab you can set up server parameters of RoboTask. Read more about client-server
mode here 43 .
Bind to IP
By default this field is empty. This means that the network server is bound to all available
addresses on the computer. The address 0.0.0.0 has the same effect. You can specify
particular address. This is useful if the computer/server has several IP addresses.
Also you can specify local host address 127.0.0.1. In this case you can connect to server from
local computer only.
Port
This is the number of a port, on which the server accepts connections. By default, it is 5500.
If you use more than one instance of RoboTask at your computer, apply different ports to
avoid conflicts.
For example: 5500 is for an application, 5501 is for a Service.
Encrypt data
This is the mode of traffic encryption. By default, it is on. The mode of ciphering is specified
by server. A client is tuned on the mode of encryption automatically. RoboTask provides the
traffic encryption with dynamic keys using CryptoAPI system functions.
Compress data
This is the mode of traffic compression. By default, it is on. The mode of traffic compression
can be useful when connection is slow (for example, DialUp or GPRS). The mode of traffic
compression (packing) is specified by server. A client is tuned on the mode of compression
automatically.
User Rights
This is the check mode of user’s rights at connection. It is possible to choose between two
modes of user checking:
· Use Internal list. When you press the button “Edit Internal List of Users” in this mode, you
can define users, who have the right of connect to the server. This is just text in the form
USERNAME=PASSWORD
on every line.
For example:
admin=1234567890
At the checking of a user, the server inspects presence of the user in a list and correctness
of a password.
· System Administrators. In this mode the server checks presence of administrator’s rights on
a local computer when a client connects.
If the user isn’t checked, the server returns an error and closes the connection.
By default, the System Administrators mode is on.
Start Server
It starts the server.
Stop Server
It stops the server. At that rate, all opened connections are closed.
View/Edit connections
Here it is possible to view all opened connections and to close selected connections.
Port
The port for connection. On default, the port of the RoboTask server is 5500 for the RoboTask
application and 5501 for the RoboTask system service.
Domain
The name of a user domain for authorization. It is used if the network server of RoboTask uses
a system authorization. It is necessary to specify the domain name of the server or a dot (.) if
a local user of the server is specified.
User Name
Password
The parameters of connecting should correspond to the parameters of the RoboTask network
server (see the Server Settings 65 )
Remote Variables
You can edit the list of the global variables of the remote RoboTask on the tab of global
variables.
Global settings
Domain Name
A domain name or a dot (.) if the local user of the remote computer is specified.
User Name
Password
3.3 Options
3.3.1 Options - View Log
Displays or hides the log window at the bottom of the RoboTask window. The log window shows
the results of the task that you run and any errors that occur.
Displays or hides the buttons at the top of the RoboTask window. These buttons allow you to
add, edit, run, and stop tasks.
Allows you to set preferences for RoboTask. You can set preferences for how RoboTask starts,
plug-ins, or service mode.
· General tab 71
· Plug-ins tab 72
General tab
Minimize on Run
Click this check box so that RoboTask is minimized when you run the software.
Run As Administrator
This parameter is available only when the RoboTask is used in application mode in the
operating systems using the UAC (User Access Control). That is in Windows Vista and the
following versions.
If a user has the administrator’s rights on the given computer, the UAC, by default, demotes
the rights of started applications in the session. Due to this, an error Access Denied is possible
during some operations that demand entire rights. For example, when attempting to start or
stop the system services, write down a value in a system register into the branch
HKEY_LOCAL_MACHINE\SOFTWARE, etc.
Switch on this flag if you want the RoboTask to run with entire rights. In this case you have
to confirm running the RoboTask manually when the UAC requests confirmation.
Close as Minimize
If this option is selected, when you click the X button on the main window caption, RoboTask
will minimize. This is useful for preventing of casual closing of RoboTask.
Task Folder
Set the folder where you want to save tasks that you create. You can click the browse
button to select a folder.
Log Folder
Enter a folder where you want to save log files. You can click the browse button to select a
folder.
Plug-ins tab
Configure
Select a plug-in from the List of Active Plug-ins box and click Configure to enter settings.
Information
Displays a list of components for the plug-in that you have selected in the List of Active
Plug-ins box.
About
Displays information about the company or authors of the plug-in that you have selected in
the List of Active Plug-ins box.
Allows you to define variables for RoboTask. This command also displays a list of system
variables available in RoboTask.
· System Variables tab 74
· User's Variables tab 75
Variables are strings that contain information such as drive, path, or file name. Variables can
control the behavior of various processes. For example, the {TEMPDIR} system variable
specifies the location where processes, such as tasks or programs, place temporary files.
You can not modify System variables, but can add, modify, or remove your own variables on the
User Variables tab.
Categories
Displays a list of all the system variables and their values. You can click [All] to see a complete
list or click one of the following categories:
· Date & Time
· Files & Folders
· System Info
· Window
· etc...
Variables
Displays the system variable names and their descriptions.
Name
Displays the name of the user variables that you create.
Value
Lists the value of the user variables that you set when you create or modify the variable.
Add
Allows you to create a new user variable to use in many tasks.
Edit
Allows you to edit the value of a variable.
Remove
Allows you to remove the selected variable.
3.4 Tools
3.4.1 Tools - Enable Automation
If this option is cleared, the tasks will not run automatically, i.e. all your tasks are disabled. You
may run tasks only manually.
Enables all tasks that are listed in the current task folder. To enable one task, double-click it
and, in the appeared dialog window, select the Active check box and click OK.
Disables all tasks that are listed in the current task folder. To disable one task, double-click it
and, in the appeared dialog window, clear the Enabled check box and click OK.
permanently delete them or restore them to the current task folder. This function works for
both local tasks and network connections to another instance of RoboTask.
Please note that RoboTask does not save empty tasks. It does not make sense
The list consists of three columns: File name, Task name, Last changes. You can sort the list
by any column.
Backup folder
Select a folder to save the backup files. The default folder is in the user profile:
C:\Users\<User_Name>\RoboTaskBackup
If necessary, you can select another folder. The selected folder is saved for future work
sessions.
The archive file name is generated automatically using the current date and time:
RoboTask-App-Tasks-YYYYMMDD-hhmm.zip
where YYYYMMDD – date in "YYYYMMDD" format
3.5 Help
3.5.1 Help - Help Topics
Displays a dialog window which allows to send a report about a bug you found to the developers
of RoboTask. Enter information about a problem and then click the Submit button.
IV
Actions
82 RoboTask User's Guide
4 Actions
4.1 General
4.1.1 Run Program/Open Document
Use this action to run the application or open a document that you specify. If a document is
specified, the application associated with the document opens it.
Run Program/Open Document is one of the most commonly-used actions in RoboTask and
one of the most powerful. The most common usage is to start an application or open a
document and then send keystrokes or perform other interactive actions. For example, you can
use this action to open a log file in Notepad immediately after you back up your files.
Parameters
Enter the parameters, if any. If the Program or Document File Name box specifies an
executable file, you can specify the parameters to be passed to the application. The format of
this parameter is determined by the application. If Program or Document File Name box
specifies a document file, the information in the Parameters box is ignored.
Default Folder
Specifies the default folder to start the task in. If not specified, the folder of the application is
used.
Window
Specifies how an application is displayed when it is opened.
Wait Options
There are three choices:
· Don't wait - the next action executes immediately after the program starts.
· Wait until the application is ready for input - the next action executes only after the
program started and is ready for input. This option is useful when you want to perform any
interactive actions like Send Keystrokes 89 .
· Wait untill the application exits - the next action executes only after the program exits.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
General
Program Name
Specify the file name of an/the utility. Unlike the action Run Program/Open Document Parameters, it is
prohibited specifying of a document file in this field. Only the name of the executed document must be
specified here.
You can specify the parameters of a command line here. For convenience, it is possible to type each parameter
on a new line. When executing the action, the RoboTask forms the common parameter line from multi-line text.
Default Folder
Specify the folder name, which will be current when the utility starts.
Some utilities output a text with non-latin symbols in OEM format (or in the format DOS). In
this case switch on this checkbox for automatically transformation of the string in ANSI
coding.
Environment variables
Specify the environment variables that you want to replace or add. The variables are shown
as text, and each line looks like the following:
variable_name=value
Timeout
Use this action to print one or more document files, such as Microsoft Word .Doc files, to the
default printer. For example, you can use this action to automatically print daily backup logs.
To print a document, the Print Document action uses a default application for the specified
kind of documents. For example, for a Word document (DOC file) it is usually the MS Word from
the MS Office package, for a PDF file it is the Acrobat Reader, etc.
The action can direct a document to any printer registered in the system. Of course, the
default application is supposed to support printing on the specified printer. As a rule, all the
basic applications support this function.
Files to Print
Enter the files that you want to print. This is a required option. Wildcards are allowed. Click
the Plus button to add files to the list. To clear the list, click the X button.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
To printer
· Default printer – direct a document to a default printer;
· This printer – direct a document to the specified printer. When you select a printer you
can pick out the one from a dropdown list or write the name of the printer in the entry
field. When writing the name of a printer, variables can be used. For example,
{PrinterName}.
Wait options
This parameter defines the timeout in seconds to wait until the document is being printed. You
can also specify an infinite timeout.
If the timeout is over, the action stops the printing application.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Sends keystrokes to a window that you specify or the window that is currently in focus. After you have opened
an application programmatically, you can use this action to access menu commands using shortcut, or hot,
keys, such as ALT + F to open the File menu. Send Keystrokes is one of the most powerful actions for
manipulating applications.
Target
Specifies the window to send the keystrokes to. There are two choices:
· Current Window - the keystrokes are sent to the currently focused window.
· Specified Window - the specified window will be focused and the keystrokes are sent to it.
Fixed Window
Click this check box when you want to prevent a user from switching windows during the time that the action
runs.
Keystrokes
Specifies the keystrokes that the action sends to the window. For the alpha-numeric characters, type these
keys on the keyboard. For the special keys, such as Esc, F11, Left Arrow Key, and Ctrl+Alt+A, click the
Insert a Key button.
Insert a Key
Click this button to insert special keys such as Esc, F11, Left Arrow Key, and Ctrl+Alt+A. You can also
insert a pause between keystrokes to give time for program operations, such as opening a file.
Send Kind
You can send keystroke in two ways: Emulate Keypresses or As Simple Text. The question is
that different programs response on the simulation of keystroke differently.
· Emulate Keypresses –RoboTask emulates a hardware keystroke in this mode. It is
possible to send keys combinations with Ctrl, Alt, Shift in this mode. Please note, that
symbols ^, %, +, #, {, }, (, ) are used for recording keys combinations. These symbols
are reserved for this mode. How to simulate sending of these keys is shown below.
· Send As Simple Text – simulation of a simple typesetting is produced in this mode. The
text is sent as is, without using combinations. Pay attention that the sending of key
presses is sensitive to the current Keyboard Locale.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Key combinations
Action
Select a necessary action:
· Release selected keys – forced release of specified keys.
· Hold down selected keys – pressing of specified keys and holding them in pressed
condition, until you see the action Release of Keys. Please note that all Shift-keys will be
released, if you switch on the parameter "Forced release of Shift-keys 89 " when Send
Keystrokes are in use.
Keys
Mark necessary keys in any combination.
For example, you can use this action to automatically shut down a computer every night after
your defragger program finishes cleaning up your hard drive.
Action
Select one of the following values:
· Shut down the computer
· Shut down the computer and power off
· Restart the computer
· Log Off
· Suspend - sleep mode
· Hibernate - hibernate computer if it's possible.
4.1.7 Pause
Waits for a specified number of milliseconds and then continues executing tasks. This action is
useful when you want to perform extensive operations that require a delay between actions.
For example, you might want to create a pause between printing a document and closing it to
prevent a printer error. This pause allows time for the document to spool.
Pause
Enter the pause. You can specify the dimension as:
· Milliseconds
· Seconds
· Minutes
Executes an SQL query. This action is useful when you want to update a database. If you want
to SELECT from a database, use the Dataset Loop 240 action instead.
Connection String
A string with attribute/value pairs for information required to log on to a database and point to a
specific database. Click the browse button to open the Microsoft Data Link Properties dialog
box. You can press F1 to access Help about this dialog box.
SQL Query
Enter the query string in SQL syntax.
SQL parameters
Sometimes using of parameters of a query is more convenient instead of generation of the
query by means of variables. For example, when the variable value contains quotes or another
special symbols. If you use variables (or macro substitution) when forming SQL inquiry,
availability such symbols can "break" the syntax of the query and you will get a runtime error.
Parameters SQL are designated in the inquiry by means of colon (:) before the parameter
name.
For example:
Select * from employee where hiredate > :dt and salary >= :amount
:dt and :amount are parameters of the query.
Add
Add a parameter manually. You will be proposed to type or select from the list the parameter
name, select the parameter type and input an expression as the parameter value.
Using of variables in a parameter name and in its value is allowed. The RoboTask will substitute
variable values instead of variables before performing the SQL.
Edit
Edit the properties of the selected parameter.
Delete
If you specify the parameter which is absent in the query, the action ignores this parameter
when performing and writes the proper warning in the log of the task.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Pauses the task and waits until the selected process (processes) is finished. After the
monitored process is finished, the task is resumed. If the specified process is not in the memory
at the moment when the action is due, the task is not paused.
This action is necessary to synchronize your task with an external application. For example, you
may need to wait until the packing program finishes its work before you can copy the packed
file to the Backup folder.
Process
You can either select the process from the list of processes that are currently running or type
its name manually. You do not have to write the full path to the EXE file if it does not matter
where this application was launched from.
· Wait for Oldest - wait until the process launched first from the matching group is
finished;
· Wait for Newest - wait until the process launched last from the matching group is
finished;
· Wait for All - wait until all matching processes are finished.
Waiting
This parameter defines the timeout in seconds to wait until the process is finished. You can also
specify an infinite timeout.
If the timeout is over, but the process is not finished, you can specify an action:
· Raise Timeout error - this is default option
· Set True or False to variable - in this case the task will continue work without error.
Pauses the task and waits until the selected process is started. Unlike action "Wait for Process
Finish 98 ", this one waits for the appearance of the specified process in memory. If that process
is there already, there is no waiting, and control is passed to the next step of a task.
Process
Specify or select from the list the name of the process that needs waiting for. You can use
variables.
If you specify the name of EXE-file with a full path, RoboTask will look for the process in
memory by its full name. If the path is not specified, RoboTask will look for the process only by
the name of the EXE-file without a path.
Waiting
Specify the timeout, during which you need to wait for an appearance of the process. You can
specify a timeout in seconds or select the value "Infinity".
If the process does not appear in memory during specified time you can specify an action:
· Raise Timeout error - this is default option
· Set True or False to variable - in this case the task will continue work without error.
Forces the specified process to be terminated. This method is not a normal way to exit Windows
applications. To exit some application normally, you will have to close the main window of this
application. (see the operation Window command).
Note:
When you force a process to be terminated, you may lose data (for example, a process is
terminated when a file is being saved) or system resources occupied by the process may
remain occupied. In this case, multiple process termination may result in very unpleasant
consequences. Although quite often it is a safe procedure.
Process.
Enter the name of the process that should be terminated. If the process already exists in
memory, you can select it from the drop-down list. The name of the process coincides with the
name of its EXE file. There is no need to specify the full path in the process name. If you do not
specify the full path, RoboTask will search for the specified process without taking into account
its path. Also, you can use variables when specifying the name of the process.
4.1.12 Comment
This action does nothing and is used only as a visual comment for the task.
Displays a message box that displays custom text or plays a sound file. For example, you can
use this action to display a message and play a sound every time your backup finishes archiving
the files.
Tip
· The message box displayed by this action has an OK button. You can display a message box
with a Yes and No button with the Question Dialog 104 action.
Show Message
Click this check box to display the message box.
Message Text
Enter the text for the message box.
Message Icon
Select the style of the icon for the message box:
· Exclamation
· Information
· Question
· Error
Play Sound
Click this check box to play a sound. When you click the check box, you can click the browse
button to select a .wav file on the computer.
Test
Click this button to ensure that the parameters for the current action work.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Displays a message box with specified text and two buttons: OK&Cancel or Yes&No. For
example, after your system is backed up, you can use this action to display a message asking
you if you want to open the log file.
Question Text
Enter the text for the message box.
Buttons
Click to set the style of buttons that appear on the message box.
· OK & Cancel
· Yes & No
Action
Select an option to specify an action when user clicks a button:
· Stop task
· Assign variable
Stop Task On
Select an option to specify when the task stops when the user clicks a button on the message
box:
· Cancel/No
· OK/Yes
Auto Choice
Click an option to specify when the task continue or stops if a user does not select a button on
the message box.
· None
· Cancel/No
· OK/Yes
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Test
Click this button to ensure that the parameters for the current action work.
Displays a dialog box that allows you to open file. You can set the title of the dialog box, the
initial folder, and the type of files a user can open.
For example, you can use this action in a task in which you might want to select file for
uploading to FTP server.
Dialog Caption
Enter the caption of the dialog box. For example, you could enter a caption "Open Log Files" for
the dialog box.
Initial Folder
Set the folder that you want as the starting folder for the dialog box. For example, you could
enter "My Documents" or "Daily Backups." Click the browse button to select a folder.
Filter
Enter the criteria for including file types that you want the dialog box to open. These types
appear in options for opening files on the dialog box, such as Files of Type. Click the ... button
to add types with the Filter Editor dialog box. You can click a field in this dialog box and add
file type extensions and a name for the file type.
Specify the name of variable where the action saves the result. If you select several files then
the result will be a text: one file name in each line.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Opens a dialog box that allows users to save a file. You can specify the title of the dialog box,
the start folder, and which types of files a user can save. For example, you might want to use
this action that copies a file and you want to specify where to copy the file.
Dialog Caption
Enter the caption of the dialog box. For example, you could enter a caption "Save Log Files" for
the dialog box.
Initial Folder
Set the folder that you want as the starting folder for the dialog box. For example, you could
enter "My Documents" or "Daily Backups." Click the browse button to select a folder.
Filter
Enter the criteria for including file types that you want the dialog box to save. These types
appear in options on the dialog box, such as Files of Type. Click the ... button to add types
with the Filter Editor dialog box. You can click a field in this dialog box and add file type
extensions and a name for the file type.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Displays a dialog box that allows users to browse folders on a local or remote drives. You can
set the title of the dialog box, the start folder, and what type of files a user can select. For
example, if you create a task that downloads files from Internet, you can display this dialog box
so you can select where to save the downloaded files.
Dialog Caption
Enter the caption of the dialog box. For example, you could enter a caption "Select Destination
Folder" for the dialog box.
Initial Folder
Set the folder that you want as the starting folder for the dialog box. For example, you could
enter "My Documents" or "Daily Backups." Click the browse button to select a folder.
Filter
This option is not available for this action.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Displays a dialog box that allows a user to select computers on the local network. You can set
the title of the dialog box and other settings. For example, in a task that sends a network
message, you can select a computer to send a message to.
Dialog Caption
Enter the caption of the dialog box. For example, you could enter a caption "Browse Backup
Server" for the dialog box.
Initial Folder
This option is not available for the Browse for Computers action.
Filter
This option is not available for the Browse for Computers action.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Displays an input dialog box that lets the user enter a string and assigns the entered value to a
specified variable.
Prompt String
Specify the text that prompts the user to enter input in the edit box.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Test
Click this button to ensure that the parameters for the current action work.
General
Title
The title of a message. The usage of variables is allowed.
Message
The body of a message. The usage of variables is allowed.
Icon kind
Select a message icon. Available variants are:
· Information
· Exclamation
· Error
· Default
Alert Kind
Select the kind of a message:
Duration
The duration of a message display. At the end of this time, the message disappears from the
screen automatically. It is possible to change the duration of the message from 2 to 20
seconds. By default, it is 5 seconds.
Alert Parameters
Additional parameters, available for the message display mode “Desktop Alert” only.
Width
The width of the message window. On default, it is 330 pixels. This is enough for the majority
of short messages. When specifying the width of the window the usage of variables is allowed.
Height
The height of the message window. On default, it is 76 pixels. This is enough for the majority
of short messages. When specifying the height of the window the usage of variables is
allowed.
Position
Select one of the four screen corners where the message will appear. On default, it is the right
lower screen corner, i.e. where the system tray is.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
General options
Dialog Title
Advanced options
Auto choice
If the user does not perform any action within the specified timeout, then the action will
perform the selection automatically and store the specified value in a variable.
The Multi Choice Dialog allows to select alternatives in any combination. The RoboTask saves
the values of a choice into separate variables for each option (True or False)
Dialog Title
Specify the title for a choice menu.
Items
The list of menu items for a choice. Each item is related to a variable into which the value of a
choice of the item is saved. True or False.
Title
Input dialog title. The action put this into the caption of dialog window
You can read the value of a separate element using the JSON prefix. For example:
{json:DialogResult.attachment}
{json:DialogResult.subject}
Note that the JSON structure is case-sensitive. The element name must be specified exactly
as it appears in the structure, including case.
More information about prefixes can be found in the chapter "Prefixes used with variables".
Each field type has a mandatory parameter - Field name. This parameter cannot be empty and
must be unique within the dialog.
If the user cancels the selection (by clicking the Cancel button), the action can either
interrupt task execution or save the specified value to a variable.
Input Fields
A list of input fields. The input fields in the dialog will be in the order specified in the list. The
sequence can be changed using the move item buttons.
To add a field to the dialog, click the "+" button and select the field type. To delete a selected
item, select the item in the list and click the "-" button.
Field Properties
Each input field type has its own set of parameters. All field types have common parameters:
· Field Name - a required parameter that serves as the identifier for the field in the dialog;
· Caption - a comment for the input field.
Test Dialog
You can see what the dialog looks like when performing a task.
Window Caption
Enter the caption for the dialog window.
If Cancel Pressed
If the user declines to input, there are two possible actions:
· Abort task execution.
· Save the user's value to a variable as the execution result. An empty value is allowed.
Appearance
Parameters for creating the appearance of the dialog.
Window Size
Enter the size of the screen window. Use the Test Dialog button to find the most appropriate
option.
Send text
Enter the text that needs to be sent for display. You can use variables.
Copies or moves one or more files that you specify. You can set the source and the destination.
Wildcards are allowed. For example, you can use this action to copy backup archives from your
computer to another computer on the network.
Files
Enter the files you want to copy or move. Wildcards are allowed. Use the Plus buttons to add
files to the list. To clear the list, click the X button.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
Destination Folder
Enter the folder to which you want to move or copy the files. You can click the browse button
to find folders.
If you want to change the original name of file you should turn on this checkbox and specify
new file name or the mask of new name in the field below. This option allows you to copy the
file to new filename in the same folder.
If File Exists
Specify the action to take if a file already exists in the destination location.
· Overwrite - replaces the destination file with the file you are copying or moving.
· Rename - renames the source file when you copy or move it to the new location.
· Skip - the action does nothing and skip the file.
Recurse to Subfolders
Copies or moves all the files in the subfolders of the current directory.
Move
Deletes the original files after you copy or move them to a new location.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Renames one or more specified files. Wildcards are allowed. For example, you can copy the files
to another folder and automatically rename them using this action.
Files
Enter the files you want to rename. Use the Plus buttons to add files or folders to the list. To
clear the list, click the X button.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
Rename To
Enter the name or partial name for the new filename. You can use a wildcard if you want to
rename part of the filename.
Recurse to Subfolders
Renames the files in the subfolders of the current directory.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Deletes one or more files you specify. Wildcards are allowed. For example, you can use this
action to automatically delete cookies from your Internet cache every day to protect your
privacy and computer security.
Files
Enter the files you want to delete. Use the Plus buttons to add files or folders to the list. To
clear the list, click the X button.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
Recurse to subfolders
Deletes the files in the subfolders of the current directory.
Delete Folders
Removes the subfolders. This option works only with wildcards.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
Creates a text file with the specified text. For example, you can write a text file listing which
user is logged into a computer at a particular time.
Text File
Enter the name of the text file to save. You can click the browse button to select a file.
Text
Enter the text that you want saved in the file.
Text Encoding
The action can provide the following coding:
· ANSI text
· UTF-8 text
· Unicode text
If File Exists
Specify the action to take if a file already exists in the destination location.
· Overwrite - replaces the destination file with the new file.
· Append - append specified text at the end of existing text file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Looks for files and creates a file list as multi-line text. Each file name on new line of text. This
action is useful with pre-defined variables, such as {TextFile(file_name)}. You can create a file
list, such as a list of all .Png files, and then use this in a list of actions, such as copying,
moving, or deleting files.
General tab
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
C:\incoming\files*.*
This means that all files starting from the folder "c:\incoming\files" will be excluded from
the search.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· *.txt - all the files with the .txt extension.
· mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· *.tmp, *.$$$, *.bak - all the files with the .tmp, .$$$ and .bak extensions.
· {bakext} - file mask(s) from the {bakext} variable.
Recurse to Subfolders
Searches the files in the subfolders of the specified folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
All Files
Select this option to search all files.
How to sort
There are four sorting modes:
· By file name
· By file time
· By file size
· By depth of nested folders
Sort order
There are two modes: ascending or descending ordering
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Allows you to the change the current folder. This is useful if you need to set the current folder
during a series of actions or tasks. This action is useful with other file actions like copy, move.
Folder Name
Enter the name of the destination folder. You can click the browse button to select a folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Makes a new folder on a local or remote drive. For example, you could automatically create a
new folder for your backups based on the current date.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
Renames a existing folder. For example, if you have copied a folder with files, you can rename
the original folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Deletes a existing folder. For example, if you have archived your company financial reports every
week for the past year, you can create a task that automatically deletes folders that are more
than a year old.
Folder Name
Enter the name of the folder that will be removed.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Synchronizes the two folders that you specify. The synchronization method may be bi-
directional or uni-directional. For example, if you travel a lot, you might want to create a task
that synchronizes data in a folder on your laptop computer and a folder on your desktop
computer.
General tab
Folder 1
Enter the first folder that you want to synchronize. You can click the browse button to select
a folder.
Folder 2
Enter the second folder that you want to synchronize.
Swap Folders
Click to place the folder listed in Folder 2 in the Folder 1 box and the folder in Folder 1 in the
Folder 2 box.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· *.txt - all the files with the .txt extension.
· mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· *.tmp, *.$$$, *.bak - all the files with the .tmp, .$$$ and .bak extensions.
· {bakext} - file mask(s) from the {bakext} variable.
Exclude Masks
Enter one or more masks separated with commas to specify which files to skip in the
synchronization. You can specify one or more masks separated by commas; for example, *.bak,
*.old, *.$$$.
How to Synchronize
Select one of the following options:
· Folder 1 <=> Folder 2 (Bi-directional) - new or newer files that are available in Folder 1
are copied to Folder 1, and vice versa.
· Folder 1 ==> Folder 2 (Uni-directional) - only new or newer files that are available in the
Folder 1 are copied to Folder 2; the contents of Folder 2 does not affect the contents of
Folder 1.
Include Subfolders
Click this check box to synchronize all files in the subfolders.
Advanced options
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Pauses the task and waits until the selected file will be available. After the monitored file is been
available, the task is resumed. If the specified file is not opened in another process at the
moment when the action is due, the task is not paused.
Waiting mode
There are two modes of waiting
· Wait for Accessibility of the file
· Wait for Appearance of the fle
· Wait for removal of the file
Waiting timeout
This parameter defines the timeout in seconds to wait until the process is finished. You can also
specify an infinite timeout.
If the timeout is over you can specify an action:
· Raise Timeout error - this is default option
· Set True or False to variable - in this case the task will continue work without error.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
This action is used to sort strings in a text or in a text file in the ascending or descending order.
It is possible to assign the sorted text to a variable for further processing (e.g. in "Text Loop")
or save it to a file. You can specify the source text explicitly using variables or read it from an
external file.
Source
You can select the source for the source text in this group of parameters: specify an external
file or specify the text explicitly.
File Name – specify the full file name either manually or using the Open File dialog box by
clicking the button to the right from the field. It is possible to use RoboTask variables.
This text – if you want to specify the text explicitly, fill the text field manually. It is possible
to use variables in the text. RoboTask will replace them with variable values during the
action.
Sort Mode
You can specify the string sorting mode in this group
· Ascending or Descending
· Case Sensitive
· Remove duplicates - this allows to keep only unique lines in the text.
Destination
Select at least one of the variants (or both at once) :
Assign text to Variable – specify the name of the custom variable the sorted text will be
assigned to. It is impossible to use variables.
Save text to File – specify the full file name either manually or using the Open File dialog
box. It is possible to use RoboTask variables.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
The action generates unique file name in specified folder by the mask. Sometimes it's necessary
to create the file with unique name where you need to store some temporary data. Next, the
file name have to be saved into variable.
Folder Name
Specify the folder where you want to create the file. You can click the browse button to select
a folder. The using of variables are allowed.
File Mask
It is the ordinary file mask with using characters "*" and "?". Action replaces "*" with 8 random
characters and "?" with single random character.
You have to specify the mask of file name only. The path portion of the file name will be
ignored. The using of variables are allowed.
For example:
tmp*.txt
{Hours}{Minutes}-*.dat
FileList-???.txt
Without Path
If you want to save the file name only without path, check this checkbox.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Attributes
Specify the attributes, which you want to set or to remove. This action can control 4
attributes:
· Archive
· Hidden
· Read Only
· System
Process Files
Switch on this checkbox if you want to process the files corresponding to the list.
Process Folders
Switch on this checkbox if you want to process the folders corresponding to the list.
At least one of two options “Process Files” or “Process Folders” has to be on. It is possible to
switch on both options at the same time.
File Name
Specify the file name. You can use variables. You can also select a file interactively
Metadata Properties
The list of necessary properties. The value of each metadata property will be stored in a
separate variable for the next processing.
Text file
Specify the name of text file to read.
the hash of a file. This action allows you to use the most popular algorithms for calculating the
hash.
File name
Enter or select file name.
Hash algorithm
Choose the algorithm. The are:
· CRC32
· MD5
· SHA1
· SHA256
· SHA512
4.4 Zip
4.4.1 Zip Pack Files
Creates and adds files to zip files. You can use this action to back up your files. For example,
you can use this action to create a task that automatically zips weekly status reports files so
that they can be copied to the central server for company summary reports every month.
Files to Zip
Enter the files you want to add to a zip file. Wildcards are allowed. Use the Plus buttons to add
files or folders to the list. To clear the list, click the X button.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
Destination File
Enter the filename for the resulting .zip archive.
Action
Select one of the following actions for creating or adding to the zip file:
· Add and replace files - add all files to the archive.
· Freshen existing files - add only changed files to the archive.
· Move files - add files to the archive and remove them from the local folder.
· Update and add files - add only changed or new files to the archive.
Compress
Select one of the items on the dropdown list to determine the level of compression, or size, of
the archive file:
· Maximum - creates the smallest zip file possible, while requiring the most time to create the
archive.
· Normal - creates a slightly compressed zip file taking the usual amount of time to create the
zip file.
· Fast - produces slightly less compression than Normal.
· Super Fast - produces an archive with even less compression than Fast and Normal.
· None - produces an archive file that is not compressed. This level of compression is the
fastest.
Folders
Include Subfolders
Click this check box to include the subfolders in the archive. Files are archived with the paths
stored in the archive file.
Password
Enter a password that is required to unzip the archive, if you want to protect the file.
Comment
Enter a memo note for the zip file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Extracts files from an existing ZIP file to the folder that you specify. For example, you can
create a task that automatically unzips files when you download .zip files to your hard drive.
File to Unzip
Enter the name of the zip file to extract files from.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· *.txt - all the files with the .txt extension.
· mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· *.tmp, *.$$$, *.bak - all the files with the .tmp, .$$$ and .bak extensions.
· {bakext} - file mask(s) from the {bakext} variable.
Destination Folder
Enter the destination folder where you want to extract files.
Files to Extract
Enter the names of the files to unzip from the zip file, separated by commas. If left blank, all
files are unzipped.
Password
Enter the password for the zip file, if the zip file is password-protected.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
4.5 Internet
4.5.1 Download Files
Downloads one or more files through the Internet from specific Web or FTP sites. For example, if
you are participating in a beta test program for new software, you can automatically download
updates to the beta software on a daily basis so that you stay up-to-date.
Important
· Wildcards are not supported.
Files to Download
Enter the http, https or ftp URLs that you want to download.
Save in Folder
Enter the path of the folder in which you want to save the files.
If File Exists
Click an option to determine whether to overwrite existing files with the downloaded file or
rename the downloaded file.
· Rename
· Overwrite
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Allows you to send a ping message to a host. This action sends Internet Control Message
Protocol (ICMP) Echo Request messages to verify IP-level connectivity to another TCP/IP
computer. The action receives a receipt of corresponding Echo Reply messages, along with the
round-trip times. Ping Host is based on the Ping command, the primary TCP/IP command used
to troubleshoot connectivity, reachability, and name resolution.
For example, in a backup task, you can use this action to check to see if a host is up before
you start a process to copy files to that host.
Host Name
Enter the name or IP address of the host.
Timeout (Msec)
Indicates the amount of time, in milliseconds, for the action to wait for the Echo Reply message
that corresponds to a given Echo Request message to be received. If the Echo Reply message is
not received within the time-out, the "Request timed out" error message is displayed.
Enter a value to assign if the host does not respond to the Ping message.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
General tab
URL
Specify the HTTP address of the checked click link. For example: http://www.robotask.com/
You can specify addresses with parameters: http://www.robotask.com/forum/viewtopic.php?
f=4&t=1441
It is also allowed the usage of the Secure HTTP (HTTPS) addresses. For example:
https://www.google.com/search?q=robotask
The address must begin from the http:// or https://
Handle redirections
Switch on this option if you want the action to process the redirection of the query
automatically. But you should remember that you will get the response from the final URL.
Referrer
Specify a referrer for a query. Referrer is the URL from which this HTTP query was performed.
Many sites use this parameter of query to form a response.
Request headers
You can define the user captions of the request on this tab. You can add captions on a list,
edit or remove the selected caption.
Response headers
If you need to save values of certain captions into variables, you should use this tab.
To add a caption on a list, it is necessary to specify the caption of the response and the name
of the variable into which you need to save the value of the caption. If the specified caption
does not exist, the action saves empty value.
Host
The name of the computer or an IP address. You can specify both an exact address (for
example, 192.168.1.36) and a broadcast address (for example, 192.168.1.255).
In the mode of one segment of a local network it is permitted even not to specify any exact
address of a sub-network and to do a broadcast request to all computers of the segment (for
example, 255.255.255.255).
Port
The port of recipient. On default, it is 9. You can specify any port if you use the local network
without firewall. If a target computer is in a segment of the network closed with firewall, you
should tune a port forwarding to the signal can get the target.
MAC address
This is a hardware address of a network interface (a physical address). To retrieve it, it is
necessary to specify the command in the command line:
ipconfig /all
You can see a MAC address through the control panel:
Control Panel -> Network and Sharing Center
Then, you should click the link Local Area Connection (or another connection) and open the
window "Details".
MAC address is important parameter. The function Wake-On-LAN works only if the specified
address coincides with a hardware one. Otherwise, the target computer just ignores the
command. Therefore, in the local network it is possibly only to send a broadcast request,
because the computer reacts only when MAC address coincides. The rest of computers of the
segment just ignore the request.
Request
Request parameters
URL
WEB address of the service. The address must start with the protocol: HTTP:// or HTTPS://
Method
Request method. Select the desired option from the list.
Available methods are:
· GET
· POST
· PUT
· DELETE
· PATCH
· HEAD
· CONNECT
· OPTIONS
· TRACE
Accept
The value of the request header "accept". You can choose from the list or write your own.
Custom headers
If you need to specify additional headers, you can specify them in this field
Header format:
<header_name>: <header_value>
Response
The response value can be written to a variable or to a file. Select the desired value and enter
the variable name or file name respectively.
The value of a variable or file name, may be empty. In this case, the value will not be stored.
Body
Filling in these parameters is possible if the request method is POST, PUT or PATCH.
The remaining methods do not require a request body.
Content type
Select a product from the list or enter your own option.
Body
There is no single format or rule for how to form a request body. This should be specified in
the web service documentation.
Advanced
HTTP authentication
If the web service requires authorization, then enable this checkbox and enter a username and
password.
Timeout
Enter the response timeout. The default value is 180 seconds.
4.6 FTP
4.6.1 FTP Log On
Allows you to log on to an Ftp site, or remote server. For example, you can create a task to
automatically Ftp updated daily reports from a co-worker's computer every day.
Host
Enter the name of the remote host that you want to log into.
Port
Enter the number of the port that you want to use. The default port is 21.
Authentication
Connect as Anonymous
Click this check box if the remote server allows anonymous logins.
Username
Enter the name of the log in account.
Password
Enter the password of the log in account.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Tip
· Click the {V} button to insert a variable that holds the name of the local file or the remote
folder.
Remote File
Enter the name of the remote file that you want to copy to the local computer.
Local Folder
Enter the path and name of the local directory to which you want to copy the remote file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Tip
· Click the {V} button to insert a variable that holds the name of the local file or the remote
folder.
Local File
Enter the name of the local file that you want to copy to the remote server.
Remote Folder
Enter the path and name of the directory on the remote server.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Tip
· Click the {V} button to insert a variable that holds the new file name or the old file name.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote File
Enter the path and file name that you want to delete on the remote server. Click the {V}
button to insert a variable that holds the path and name of the file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to switch to. Click the {V}
button to insert a variable that holds the name of the folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to create. Click the {V}
button to insert a variable that holds the name of the folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to remove. Click the {V}
button to insert a variable that holds the name of the folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Transfer Type
Select whether you want to transfer the files as ASCII or binary during an FTP session. You
should select ASCII when you want to transfer files that contain text strings, such as
.html, .txt, or .xml. You should use Binary when transferring executable files, such as Office
documents, .Exe files, and so forth. In binary mode, files are transferred in one-byte units.
Command
Enter the name of the command that you want to execute.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
General tab
Loop Kind
Select the items you want to perform actions on: folders only, or files only.
Remote Folder
Enter the path or folder name on the remote server.
Save Results
Enter information about how you want to save the result of the file loop.
All Files
Click this option to include all files in the file loop.
· Between – You can specify two dates explicitly selecting them from a calendar. Or you
can specify the expression using variables. This expression should contain the date in the
format set on your computer.
· Newer Than ___ Months
· Newer Than ___ Days
· Newer Than ___ Minutes
· Older Than ___ Months
· Older Than ___ Days
· Older Than ___ Minutes
Sorting parameters
Parameters of internal sorting of the file list
How to sort
There are four sorting modes:
· By file name
· By file time
· By file size
· By depth of nested folders
Sort order
There are two modes: ascending or descending ordering
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Local Folder.
The local folder for synchronization. You can specify the path to the folder manually or you can
use the folder selection button to the right from the input field. Also, you can use variables in
the path to the folder.
Remote Folder.
The folder on the FTP server for synchronization. You can use variables in the path to the
folder.
Include Mask.
The list of file masks that you need to synchronize. You should separate file masks with a
comma. All files are specified by default ("*.*").
Exclude Mask
The list of comma-separated file masks that should be excluded from synchronization. For
example, you can specify *.* in the Include mask option and *.txt in the Exclude mask option.
It will mean that all files except *.txt should be synchronized.
Synchronization mode.
There are 3 options to choose from:
Local => Remote – newer files from the local folder will be copied to the FTP server
Local <= Remote – the reverse operation, i.e. copying new files from the server to the local
folder.
Local <=> Remote – bidirectional synchronization. Downloading newer files from the FTP
server and uploading new files to the server.
Include Subfolders.
Select this checkbox if you want to include all subfolders in the specified folders to be included
in the synchronization process.
Exact copy.
This option works only when the synchronization is one-directional. It does not make sense in
case of bidirectional synchronization and so it is unavailable. If you want to get the exact copy
of the initial folder, select this checkbox.
Note that the "Exact Copy" mode first copies newer files from the source folder to the target
folder and then removes all files from the target folder that are absent in the source
folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
General
Host
Enter the name of the remote host that you want to log into.
Port
Enter the number of the port that you want to use. The default port is 21.
Authentication:
Connect as Anonymous
Click this check box if the remote server allows anonymous logins.
Username
Enter the name of the log in account.
Password
Enter the password of the log in account.
SSL/TLS Settings
TLS – Transport Layer Security.
TLS mode
Two separate methods were developed to invoke client security for use with FTP clients:
Explicit or Implicit. The explicit method is a legacy compatible implementation where FTPS
aware clients can invoke security with an FTPS aware server without breaking overall FTP
functionality with non-FTPS aware clients. The implicit method requires that all clients of the
FTPS server be aware that SSL is to be used on the session, and thus is incompatible with
non-FTPS aware clients.
· None – plain FTP without encryption. SSL mode is OFF.
· Implicit – Negotiation is not allowed with implicit FTPS configurations. A client is
immediately expected to challenge the FTPS server with a TLS/SSL ClientHello message.
If such a message is not received by the FTPS server, the server should drop the
connection.
· Explicit – In explicit mode (also known as FTPES), an FTPS client must "explicitly request"
security from an FTPS server and then step-up to a mutually agreed encryption method.
If a client does not request security, the FTPS server can either allow the client to
continue insecure or refuse/limit the connection.
· Auto – it is auto-detection of a mode. Please note, that not all types of servers allow
auto-detection of a mode.
TLS Flags
Specifies modes of using SSL versions. It is usually enough only to turn on the flag Use TLS.
· Use SSL2
· Use SSL3
· Use TLS 1.0
· Use TLS 1.1
Proxy Settings
Use proxy
If it is necessary to use PROXY, turn on this flag and full in the parameters below. The
parameters PROXY can be learned from the documentation for your PROXY or from your
network administrator.
Proxy Type
It is necessary to choose the type of PROXY.
· Send command USER user@hostname - Sends the command USER user@hostname to the
firewall/proxy. This method is used by many programs like Wingate. The fields 'user name'
and 'password' must be left empty.
· Send command SITE (with logon) - First send the user name and password to the proxy
(if given), then the command 'SITE machine name'. The fields 'user name' and 'password'
are usually needed for this type of proxy.
· Send command OPEN - First send the user name and password to the proxy (if given),
then the command 'OPEN machine name'. The fields 'user name' and 'password' are
sometimes not needed for this type of proxy.
· USER user@firewalluser@hostname / PASS pass@firewallpass - Use these two commands
to logon.
· Transparent - First use the USER and PASS command with the firewall username and
password, and then with the target host username and password.
· USER user@hostname firewalluser PASS pass ACCT firewallpass - Use these three
commands to logon.
Proxy Host
An IP address or a computer name in the network.
Proxy Port
The number of a port.
Proxy User
A username for the authorization in PROXY.
ProxyPassword
The password for the authorization in PROXY.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Tip
· Click the {V} button to insert a variable that holds the name of the local file or the remote
folder.
Remote File
Enter the name of the remote file that you want to copy to the local computer.
Local Folder
Enter the path and name of the local directory to which you want to copy the remote file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Tip
· Click the {V} button to insert a variable that holds the name of the local file or the remote
folder.
Local File
Enter the name of the local file that you want to copy to the remote server.
Remote Folder
Enter the path and name of the directory on the remote server.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Tip
· Click the {V} button to insert a variable that holds the new file name or the old file name.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote File
Enter the path and file name that you want to delete on the remote server. Click the {V}
button to insert a variable that holds the path and name of the file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to switch to. Click the {V}
button to insert a variable that holds the name of the folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to create. Click the {V}
button to insert a variable that holds the name of the folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to remove. Click the {V}
button to insert a variable that holds the name of the folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Transfer Type
Select whether you want to transfer the files as ASCII or binary during an FTP session. You
should select ASCII when you want to transfer files that contain text strings, such as
.html, .txt, or .xml. You should use Binary when transferring executable files, such as Office
documents, .Exe files, and so forth. In binary mode, files are transferred in one-byte units.
General tab
Loop Kind
Select the items you want to perform actions on: folders only, or files only.
Remote Folder
Enter the path or folder name on the remote server.
Save Results
Enter information about how you want to save the result of the file loop.
Switch on this checkbox and enter the name of the variable into which it is necessary to save
the size of the file. This allows to use the file size data in other actions or tasks.
All Files
Click this option to include all files in the file loop.
Sorting parameters
Parameters of internal sorting of the file list
How to sort
There are four sorting modes:
· By file name
· By file time
· By file size
· By depth of nested folders
Sort order
There are two modes: ascending or descending ordering
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Local Folder.
The local folder for synchronization. You can specify the path to the folder manually or you can
use the folder selection button to the right from the input field. Also, you can use variables in
the path to the folder.
Remote Folder.
The folder on the FTP server for synchronization. You can use variables in the path to the
folder.
Include Mask.
The list of file masks that you need to synchronize. You should separate file masks with a
comma. All files are specified by default ("*.*").
Exclude Mask
The list of comma-separated file masks that should be excluded from synchronization. For
example, you can specify *.* in the Include mask option and *.txt in the Exclude mask option.
It will mean that all files except *.txt should be synchronized.
Synchronization mode.
There are 3 options to choose from:
Local => Remote – newer files from the local folder will be copied to the FTP server
Local <= Remote – the reverse operation, i.e. copying new files from the server to the local
folder.
Local <=> Remote – bidirectional synchronization. Downloading newer files from the FTP
server and uploading new files to the server.
Include Subfolders.
Select this checkbox if you want to include all subfolders in the specified folders to be included
in the synchronization process.
Exact copy.
This option works only when the synchronization is one-directional. It does not make sense in
case of bidirectional synchronization and so it is unavailable. If you want to get the exact copy
of the initial folder, select this checkbox.
Note that the "Exact Copy" mode first copies newer files from the source folder to the target
folder and then removes all files from the target folder that are absent in the source
folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Host
The name or IP-address of the SFTP server. The usage of variables is allowed.
Port
The number of a server port. It is 22 by default. The usage of variables is allowed.
User Name
The name of a user. The usage of variables is allowed.
Password
The password of a user. The usage of variables is allowed.
Additional settings of a connection (for example, the usage of a proxy) can be done in a
connection profile PUTTY. It is necessary to install PUTTY packet, to do necessary settings
and then to save them into the separate profile. This profile can be used when connecting to
the server.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Local folder
Specify the folder on a local disc or in a local network where is necessary to download a file or
a folder from a server.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Specify a folder on SFTP server where it is necessary to upload the file or the folder from a
local disc.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Usage:
It is possible to rename separate files/folders:
OldFile.txt -> NewFile.txt
OldFile.txt -> SubFolder/NewFile.txt
It is possible to move one or several files to another folder. For this it is necessary to specify
the file names separated by a space and, in the capacity of a new file name, the name of the
folder which the files have to be moved into.
File1.txt File2.txt -> /home/user/newfolder
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote file
Specify the name of the file that has to be deleted. The usage of a mask is allowed. It is also
possible to specify several files separated by a space.
For example:
file.dat
file1.txt file2.txt
*.txt
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote folder
Specify a new work folder. It is possible to specify the folder from the root or current folder.
For example:
/home/user/test
test/subfolder
It is possible to get the current folder during (as a result of) the action SFTP PWD 198 .
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Specify new folder name.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Remote Folder
Enter the path or folder name on the remote server that you want to remove.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
General tab
Loop Kind
Select the items you want to perform actions on: folders only, or files only.
Remote Folder
Enter the path or folder name on the remote server.
Include Subfolders
Switch on this checkbox if you want to perform the cycle through all the files, including all
nested folders.
Save Results
Enter information about how you want to save the result of the file loop.
All Files
Click this option to include all files in the file loop.
Sorting parameters
Sorting parameters
Parameters of internal sorting of the file list
How to sort
There are four sorting modes:
· By file name
· By file time
· By file size
· By depth of nested folders
Sort order
There are two modes: ascending or descending ordering.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Local Folder.
The local folder for synchronization. You can specify the path to the folder manually or you
can use the folder selection button to the right from the input field. Also, you can use
variables in the path to the folder.
Remote Folder.
The folder on the FTP server for synchronization. You can use variables in the path to the
folder.
Include Mask.
The list of file masks that you need to synchronize. You should separate file masks with a
comma. All files are specified by default ("*.*").
Exclude Mask.
The list of comma-separated file masks that should be excluded from synchronization. For
example, you can specify *.* in the Include mask option and *.txt in the Exclude mask option.
It will mean that all files except *.txt should be synchronized.
Synchronization mode.
There are 3 options to choose from:
· Local => Remote – newer files from the local folder will be copied to the FTP server
· Local <= Remote – the reverse operation, i.e. copying new files from the server to the
local folder.
· Local <=> Remote – bidirectional synchronization. Downloading newer files from the FTP
server and uploading new files to the server.
Include Subfolders.
Select this checkbox if you want to include all subfolders in the specified folders to be included
in the synchronization process.
Exact copy.
This option works only when the synchronization is one-directional. It does not make sense in
case of bidirectional synchronization and so it is unavailable. If you want to get the exact
copy of the initial folder, select this checkbox.
Note that the "Exact Copy" mode first copies newer files from the source folder to the target
folder and then removes all files from the target folder that are absent in the source folder.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
The file permissions on the SFTP server are assigned like in the UNIX systems. Every file or folder has 3 groups
of permissions:
· Owner permissions;
· Group permissions. That is, the permissions of users of the group, which the file owner belong to.
· Public permissions. That is, the permissions for all the rest users.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
SFTP command
Specify any SFTP command. For example, the command help.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Specify remote file name to check. You can specify file path from root folder or from current
folder.
4.9 Dial-Up
The actions Dial-Up can be used for such Internet connections as these:
· Connection by the use of an usual telephone modem;
· VPN of connections;
· Connections to Internet through mobile net by means of a mobile modem.
These connections use the same system interface.
Dial-up Connection
Select the name of the dial-up connection that you want to connect or disconnect. You create
this connection in the Windows Control Panel.
Connection Parameters
Enter the following optional parameters to establish a connection:
· Domain
· Username
· Password
· Callback Number
· Number of Attempts
Dial-Up connection
Select the connection you need from the list.
4.10 Variables
4.10.1 Create Variable
Creates a new variable when you run a task. If you create a variable and then use it in several
different tasks, you can change the variable once and update every task at the same time.
The action allows to create both a global variable and a local one within a task. Local variables
can also be generated by means of creating a list of local variables (see Local variables tab 59
of task editor).
Variable Name
Enter the name of the variable you want to set the value of.
Variable Kind
· Global variable (for all tasks) – in this case a global variable will be created. If the
variable already exists, a specified value will be assigned to it.
· Local variable (for this task only) – in this case a local variable will be created within a
task. The local variable will be deleted from the memory automatically when the task is
finished. See the chapter Local Variables 12 for details about local variables.
Variable Value
Enter the value that you want to set for the variable.
Variable Name
Enter the name of the variable you want to set the value of.
Variable Value
Enter the value that you want to set for the variable.
Deletes a variable when you run a task. This ensures that all variables are cleared from memory
if a new task starts.
Variable Name
Enter the name of the variable you want to delete.
Variable Name
Specify a variable name you want to increment or decrement
Increment by
Enter a positive or negative value
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
String to process
Specify the string to process. You can use variables.
Delimiters
Select which delimiters should be processed. You can select one or several delimiters.
Quote Char
Specify the character that should be interpreted as quotation marks.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Result Format
You can select in which units to get the result:
· Seconds
· Minutes
· Hours
· Days
· Compound format dd:hh:mm:ss
Source string
The string in which to count the number of elements. Available formats:
· Standard comma-separated string
· JSON array
Enables a task. Disabled tasks cannot run automatically, i.e. their triggering events are disabled.
Specified Task
Tasks can be defined in three ways:
· Explicitly – You explicitly select the task from the list of available tasks.
· By Task ID – You can specify the task ID explicitly or through a variable. You can also
select the task from the list of available tasks. The Task ID is a formal number assigned to
the task upon creation or import. You cannot change it.
· By external name – You can specify the External name of the task explicitly or through a
variable. You can also select the task from the list of available tasks. The External name is
an alternative ID for the task. You can change it at your discretion in the task editor.
The "By Task ID" and "By external name" modes are convenient for batch processing tasks in
a loop (e.g., starting and stopping a group of tasks, checking the status, etc.).
Current task
If you want to enable this task without selection choose this option.
Disables a task. Disabled tasks cannot run automatically, i.e. their triggering events are
disabled.
Specified Task
Tasks can be defined in three ways:
· Explicitly – You explicitly select the task from the list of available tasks.
· By Task ID – You can specify the task ID explicitly or through a variable. You can also
select the task from the list of available tasks. The Task ID is a formal number assigned to
the task upon creation or import. You cannot change it.
· By external name – You can specify the External name of the task explicitly or through a
variable. You can also select the task from the list of available tasks. The External name is
an alternative ID for the task. You can change it at your discretion in the task editor.
The "By Task ID" and "By external name" modes are convenient for batch processing tasks in
a loop (e.g., starting and stopping a group of tasks, checking the status, etc.).
Current task
If you want to enable this task without selection choose this option.
Runs a task. This action is useful if you want to run several tasks in a series. For example, you
can create several different tasks in a series based on certain conditions that are detected in
the following order:
1. A task that connects to the Internet and checks the e-mail server,
2. A task that logs off if no e-mail is present,
3. A task that displays a message box if you have received e-mail.
Task
Tasks can be defined in three ways:
· Explicitly – You explicitly select the task from the list of available tasks.
· By Task ID – You can specify the task ID explicitly or through a variable. You can also
select the task from the list of available tasks. The Task ID is a formal number assigned to
the task upon creation or import. You cannot change it.
· By external name – You can specify the External name of the task explicitly or through a
variable. You can also select the task from the list of available tasks. The External name is
an alternative ID for the task. You can change it at your discretion in the task editor.
The "By Task ID" and "By external name" modes are convenient for batch processing tasks in
a loop (e.g., starting and stopping a group of tasks, checking the status, etc.).
Parameters
You can pass some parameters into started task. By default, the list of parameters is empty.
You need write down parameters like the text, each line should be like:
ParameterName=ParameterValue
· ParameterName – the name of parameter, any word consisting of letters and numbers;
· ParameterValue – value of parameter like any set of symbols.
You can refer to these parameters in the task as the local variables of the task. You don't
need declare them in the task. Appropriate variables will appear automatically when the task is
started.
Pass of parameters of a task is used when you handle errors. In this case the fixed set of
parameters is passing into the task:
· LastErrorTaskID – the internal ID of the task, in which an error was raised. It is a formal
identifier of a task like a number.
· LastErrorTaskName - the name of the task, in which an error was raised.
· LastErrorTaskExternalName –the External Name of the task, in which an error was raised.
· LastErrorStep – the number of the step (starting from 1), in which an error was raised.
· LastErrorCode – code of the error. There is the particular set of error codes for any type
of actions (see description of actions). By default – 0.
· LastErrorDescription – the description of the error. It depends on a type of action. By
default, it is the line "General error".
Required start
This parameter guarantees the start of a task. The problem is that the task can be working
when you try to start it. In the most cases that doesn't matter because you need only to
start the task at the appointed moment. In this case the action just sent the signal to start
the task. If the task is idling, it will be started. If the task is already started, the RoboTask
ignores the signal of a start because the task works by now.
But a task can be started with parameters and fulfill different actions against parameter
values. Switch on this parameter if you need to ensure start up of a task when each effort to
start a task. In this case the action will do efforts to start the task until a successful result.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Specified Task
Tasks can be defined in three ways:
· Explicitly – You explicitly select the task from the list of available tasks.
· By Task ID – You can specify the task ID explicitly or through a variable. You can also
select the task from the list of available tasks. The Task ID is a formal number assigned to
the task upon creation or import. You cannot change it.
· By external name – You can specify the External name of the task explicitly or through a
variable. You can also select the task from the list of available tasks. The External name is
an alternative ID for the task. You can change it at your discretion in the task editor.
The "By Task ID" and "By external name" modes are convenient for batch processing tasks in
a loop (e.g., starting and stopping a group of tasks, checking the status, etc.).
Current task
If you want to enable this task without selection choose this option.
Waits until the selected task is finished. This actions pauses the current task until the selected
task is finished. If the selected task in not running at the moment when the action is due, the
current task is not paused.
If the selected task is not finished during the specified timeout, the "Timeout is over" error is
generated.
Task
Tasks can be defined in three ways:
· Explicitly – You explicitly select the task from the list of available tasks.
· By Task ID – You can specify the task ID explicitly or through a variable. You can also
select the task from the list of available tasks. The Task ID is a formal number assigned to
the task upon creation or import. You cannot change it.
· By external name – You can specify the External name of the task explicitly or through a
variable. You can also select the task from the list of available tasks. The External name is
an alternative ID for the task. You can change it at your discretion in the task editor.
The "By Task ID" and "By external name" modes are convenient for batch processing tasks in
a loop (e.g., starting and stopping a group of tasks, checking the status, etc.).
Waiting
Specify the timeout in seconds to wait for the task to be finished. You can also specify an
infinite timeout.
If the timeout is over you can specify an action:
· Raise Timeout error - this is default option
· Set True or False to variable - in this case the task will continue work without error.
· Idle – (1). A task is in the idle mode and has active triggers. It is possible both running
manual and automatically when trigger starts the task.
· Disabled – (2). A task is busy, it is in the edit mode. The task cannot be started.
· Running – (3). The task is in progress. A restart is possible only after the task is
completed.
· Stopping – (4). A task has got the signal to stop and is waiting for the end of the active
step. The task will be stopped only after the end of the active step.
Task to Check
Tasks can be defined in three ways:
· Explicitly – You explicitly select the task from the list of available tasks.
· By Task ID – You can specify the task ID explicitly or through a variable. You can also
select the task from the list of available tasks. The Task ID is a formal number assigned to
the task upon creation or import. You cannot change it.
· By external name – You can specify the External name of the task explicitly or through a
variable. You can also select the task from the list of available tasks. The External name is
an alternative ID for the task. You can change it at your discretion in the task editor.
The "By Task ID" and "By external name" modes are convenient for batch processing tasks in
a loop (e.g., starting and stopping a group of tasks, checking the status, etc.).
Save status as
Host
Port
The port number to connect. By default, the application port is 5500, the service port is 5501.
But when configuring the RoboTask network server, the numbers can be changed to any
others.
Authorization mode
Two authorization modes are available
· Explicit: user name and password. - This mode uses classic authorization using a
username and password. Variables are allowed.
· User data - use an encrypted string that contains encrypted authorization parameters.
This data can be obtained in the Active Connections Loop 232 . The data contains the
authorization parameters of the currently open connections from the main RoboTask
window.
Domain
Domain name. Used only if the server is configured for NT authorization. The dot (.) if using
the local computer user.
Username
Name of registered user
Password
Password. This field has a "secure" mode for entering a password. But if you are using
variables for the password, then you can click the "Show password" button so that you can
edit this field in normal mode.
Test connection
If you have specified the connection and authorization parameters explicitly, you can check
the correctness of the parameters by clicking this button.
Show password
You can see the password explicitly or edit the password if you use variables.
Action
There are two options to choose from
· Enable - "enables" the task. In other words, it starts all connected task triggers.
· Disable - stops all task triggers. In this case, the task will not start automatically.
The title of this field changes depending on the value of the task selection mode. Specify the
External Name or TaskID, respectively. Variables can be used.
Waiting
Standby mode. There are two options to choose from:
· Timeout - specify the time in seconds. If the task does not complete during the
timeout, the action will generate an error.
Status value as
The value can be either an integer or a string:
· Integer value - is a status as an integer number from 0 to 4.
· String value - is a status as a string: Manual, Idle, Disabled, Running, Stopping
Allows a task to iterate through the results of a file search. For example, you can create a task
that searches all the employee status reports and identifies all status report files for the first of
the month.
General tab
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· C:\Text Files\*.txt - all the files with the .txt extension in the C:\Text Files folder.
· C:\Doc Files\mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· {bakext} - file mask(s) from the {bakext} variable.
List masks that need to be excluded from the search separated by commas. If you are using
the search mode with nested folders, you can exclude individual folders from the search. To do
this, specify the mask along with the path.
For example:
C:\incoming\files*.*
This means that all files starting from the folder "c:\incoming\files" will be excluded from
the search.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· *.txt - all the files with the .txt extension.
· mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· *.tmp, *.$$$, *.bak - all the files with the .tmp, .$$$ and .bak extensions.
· {bakext} - file mask(s) from the {bakext} variable.
Recurse to Subfolders
Click this check box to include subfolders in the loop.
All Files
Click this option to include all files in the file loop.
Sorting parameters
How to sort
There are four sorting modes:
· By file name
· By file time
· By file size
· By depth of nested folders
Sort order
There are two modes: ascending or descending ordering
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Allows a task to iterate through all lines of the text that you specify. You can enter text in the
parameters of the action or you can refer to a text file.
General
Specified Text
Advanced
By default, the Text Loop processes the text line by line as regular multi-line text.
Delimiter
By default, newline characters are used as separators. In this case, the action treats the text
as regular multi-line text.
If you choose a different separator, you have the option to select the CSV text format. In this
case, the Text Loop treats the text as a delimiter-separated string (CSV).
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Allows a task to iterate through the values of the results of an SQL query. For example, you
might create a task that connects to the company human resources database and queries for
all records of employee sick leave reports every month and saves a report to a file.
Important
· You must be familiar with SQL syntax to use this action.
Connection String
A string with attribute/value pairs for information required to log on to a database and point to a
specific database. Click the browse button to open the Microsoft Data Link Properties dialog
box. You can press F1 to access Help about this dialog box.
SQL Query
Enter the query string in SQL syntax.
Test SQL
Allows you to test the SQL syntax of your query.
SQL parameters
Sometimes using of parameters of a query is more convenient instead of generation of the
query by means of variables. For example, when the variable value contains quotes or another
special symbols. If you use variables (or macro substitution) when forming SQL inquiry,
availability such symbols can "break" the syntax of the query and you will get a runtime error.
Parameters SQL are designated in the inquiry by means of colon (:) before the parameter
name.
For example:
Select * from employee where hiredate > :dt and salary >= :amount
:dt and :amount are parameters of the query.
Add
Add a parameter manually. You will be proposed to type or select from the list the parameter
name, select the parameter type and input an expression as the parameter value.
Using of variables in a parameter name and in its value is allowed. The RoboTask will substitute
variable values instead of variables before performing the SQL.
Edit
Edit the properties of the selected parameter.
Delete
Delete the selected parameter from the list.
If you specify the parameter which is absent in the query, the action ignores this parameter
when performing and writes the proper warning in the log of the task.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Enumerates windows existing in the system and allows you to assign their parameters to
variables. You can use these values inside the loop.
General
Window Filters
Window caption
You can use this parameter to apply a filter to the captions of windows. Either select the
caption you need from the list or type it manually.
Window class
You can use this parameter to apply a filter to the classes of windows. Either select the class
you need from the list or type it manually.
The "Window caption" and "Window class" lists depend on the "Process Hidden Windows" and
"Process Child Windows" checkboxes.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Start From
Enter the number at which to start the loop.
To
Enter the number at which to end the loop.
Destination Variable
Stores the current value of the loop. For example, if you enter 1 in the Start From box and 5 in
the To box, then, in the first iteration, the destination variable contains 1. In the second
iteration, the destination variable contains 2, and so forth.
The While loop is used if the number of iterations is unknown, but you know the condition that
should be met for the loop to continue. The settings of this action are similar to the If.. then
action and it has similar parameters.
Attention: it is possible to make an infinite loop with While Loop if you specify the condition
incorrectly. So, be careful while creating a task if you do not intend to make an infinite loop, of
course.
Compare Values As
Select the type of data for the expressions that you want to compare.
· As String - compares two values with alphanumeric characters.
· As Number - compares two integer values.
· As Date and Time - compares two date/time values.
· As Boolean - checks for a true/false or yes/no condition. If you select this option, the If
Value Is option appears, allowing you to select the condition of the Boolean.
If Value Is
Appears if you select As Boolean in the Compare Values As area. This option allows you to
set the value of the Boolean check. You can select false for certain actions to occur if a
condition does not exist. You can select true for certain actions to occur if a condition does
exist.
First Operand
Enter the value of the first expression you want to compare.
Comparison Type
Select the operator for the comparison from the following:
· = Equal to
· <> Not equal
· >= More than or equal to
· > More
· <= Less than or equal to
· < Less than
Case Sensitive
Click to make the comparison dependent on whether upper case or lower case characters are
used in the expressions.
Second Operand
Enter the value of the second expression you want to compare.
It is possible to use a combination from several conditions in the actions If..Then 249 ,
ElseIf..Then 252 and While Loop. To add a condition, press the button Add Another Condition.
You will see the similar dialog of editing of the comparison condition.
If you use more than one condition, you will see the list of conditions instead of parameters of
conditions.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Process Mask
Specify the name of the EXE file. An empty string is equivalent to a mask *. *. You can
specify the module name explicitly.
Sort Options
The list of processes can be sorted if necessary. Available options:
· Without sorting
· By process ID (PID)
· By process Name
· Direction of sorting – Ascending or Descending
Indicates the end of the loop block. Any loop, including a file loop, simple loop, and so forth,
must contain the corresponding End Loop action.
4.13.9 Break
Stops the execution of the current loop so that the task can continue executing the actions
after the End Loop action. The Break action is often used in conjunction with the If Then
action.
4.13.10 Continue
Skips all the actions between it and the End Loop action and begins a new iteration. No
specific settings are associated with this action. The Continue action is used in conjunction
with the If Then action.
4.13.11 If Then
Allows a task to make a comparison of several conditions and execute actions based on that
comparison. You can use this action to run a specific statement or a block of statements,
depending on the value of a condition. If...Then...Else statements can be nested to as many
levels as you need.
Important
· The If Then action must be used in conjunction with the End If action.
Compare Values As
Select the type of data for the expressions that you want to compare.
· As String - compares two values with alphanumeric characters.
If Value Is
Appears if you select As Boolean in the Compare Values As area. This option allows you to
set the value of the Boolean check. You can select false for certain actions to occur if a
condition does not exist. You can select true for certain actions to occur if a condition does
exist.
First Operand
Enter the value of the first expression you want to compare.
Comparison Type
Select the operator for the comparison from the following:
· = Equal to
· <> Not equal
· >= More than or equal to
· > More
· <= Less than or equal to
· < Less than
Case Sensitive
Click to make the comparison dependent on whether upper case or lower case characters are
used in the expressions.
Second Operand
Enter the value of the second expression you want to compare.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
4.13.12 Else
Allows a task to execute an action if certain conditions are not met. This action is used in
conjunction with the If Then action. You can use this action to run a specific statement or a
block of statements, depending on the value of a condition. If...Then...Else statements can be
nested to as many levels as you need. No specific settings are associated with this action.
4.13.13 End If
This action allows to build a construction of a complex selection with several conditions. For
example:
If <condition1> then
DoSomething1
ElseIf <condition2> then
DoSomething2
ElseIf <condition3> then
DoSomething3
.........
Else
DoSomethingN
End if
This action can be put in the block "If Then - EndIf" (between If..Then 249 and End If 251 ).
Such construction works in the following way:
· RoboTask checks the condition <Condition1>. If the condition is fulfilled (the logical value
true) then RoboTask performs the steps DoSomething1.
· Otherwise, RoboTask checks the next condition <Condition2>. If the condition is fulfilled
(the logical value True) then RoboTask performs the steps DoSomething2
· Otherwise, RoboTask checks the next condition <Condition3>. And so on.
· If none of enumerated conditions is fulfilled, the performing of the task moves to the
block Else and then RoboTask performs the steps DoSomethingN.
Of course, it is possible to realize this algorithm by means of actions If..Then, Else, and End If.
But apparently such construction is less convenient and less demonstrable. An algorithm with
three conditions will look like this:
If <condition1> then
DoSomething1
Else
If <condition2> then
DoSomething2
Else
If <condition3> then
DoSomething3
Else
DoSomethingN
End If
End If
End if
The parameter editing dialog of the action ElseIf Then is completely identical to the window of
configuration for the action If Then.
Compare Values As
Select the type of data for the expressions that you want to compare.
· As String - compares two values with alphanumeric characters.
· As Number - compares two integer values.
· As Date and Time - compares two date/time values.
· As Boolean - checks for a true/false or yes/no condition. If you select this option, the If
Value Is option appears, allowing you to select the condition of the Boolean.
If Value Is
Appears if you select As Boolean in the Compare Values As area. This option allows you to
set the value of the Boolean check. You can select false for certain actions to occur if a
condition does not exist. You can select true for certain actions to occur if a condition does
exist.
First Operand
Enter the value of the first expression you want to compare.
Comparison Type
Select the operator for the comparison from the following:
· = Equal to
· <> Not equal
· >= More than or equal to
· > More
· <= Less than or equal to
· < Less than
Case Sensitive
Click to make the comparison dependent on whether upper case or lower case characters are
used in the expressions.
Second Operand
Enter the value of the second expression you want to compare.
It is possible to use a combination from several conditions in the actions If..Then 249 ,
ElseIf..Then and While Loop 245 . To add a condition, press the button Add Another Condition.
You will see the similar dialog of editing of the comparison condition.
If you use more than one condition, you will see the list of conditions instead of parameters of
conditions.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
4.13.15 Exit
This action makes an immediate exit from the current task. The action allows to raise an error
if it's necessary.
4.13.16 GoTo
This action provides an unconditional transition of task execution to the specified step.
We do not recommend using the GoTo action, despite its simplicity. You can easily break your
algorithm and make it non-functional. It is better to look towards conditional transitions and
loops 233 .
because the action will locate the desired label regardless of its position in the task. You
can select the label from a dropdown list or enter it manually. Variables can be used as
well. This method works in conjunction with the Label action.
4.13.17 Label
This action does nothing by itself. It serves solely as a marker for the GoTo action 255 .
Label Name
The label name must be unique within the task. When adding a label, the editor automatically
generates a name, but you can change it to your own value.
4.14 Window
4.14.1 Window Command
Window Caption
Enter or select the caption of the window that you want to manipulate with the action you
select in the Action list. You can enter part of a window caption.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Action
Select the action for manipulating the window.
· Focus - makes the window active.
· Minimize - reduces the window to an icon on the Windows taskbar.
· Maximize - restores the window to fill the entire screen.
· Restore - restores the window to its previous state.
· Close - closes the window.
· Hide - hides the window from view on the screen and Windows taskbar.
· Unhide - displays the hidden window.
Checks to see if a window exists or is active. For example, you might want to create a task that
starts your HotSync Manager for your Palm PDA every day and synchronizes the Palm device
data with Outlook. You might want to check for the existence of the HotSync Manager window
to ensure that it has started.
Window Caption
Select the name of the window from the dropdown list. The contents of this list vary with the
applications currently launched on your computer.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Watch hidden windows – select this checkbox if you want the action to monitor hidden
windows.
Watch child windows – select this checkbox if you want the action to monitor child windows.
As a rule, these windows are dialog boxes and secondary windows opened by Windows
applications.
Check For
Select one of the following options to check for existing windows or windows that are open.
· Window Exist
· Window Active
Abort Task If
Stops task executing according with selected option:
· Window Not Exists/Active - stops the task if the window does not exist or is not active.
· Window Exist/Active - stops the task if the window exists or is active.
General tab
Window Caption – Window caption. You can specify only the distinctive part of the caption if
the window has no constant caption. You can select the window you need from the list if you
click the button to the right from the input field.
Caption must match exactly – If you need the window caption to match the specified string
exactly, select this checkbox.
Window class – Window class (or window type). You should either type the window class
manually or select the window you need from the list by clicking the button to the left from
the input field. You can type part of the window class as well.
Class name must match exactly – If you need the window class to match the specified
string exactly, select this checkbox. The class of a window does not change all the time the
window exists. So, as a rule, you have to enable this option.
Advanced tab
Watch hidden windows – select this checkbox if you want the action to monitor hidden
windows.
Watch child windows – select this checkbox if you want the action to monitor child windows.
As a rule, these windows are dialog boxes and secondary windows opened by Windows
applications.
Assign window handle to variable – if you want to save the HANDLE (or the system
number) of a window to a variable, type the name of this variable in the field. Otherwise leave
the field empty. The HANDLE of a window is a unique window identifier. And you can use it
later in the Window command action or in Basic script while using it in the script of system API
functions.
Common settings
Watch for – select the window operation to wait for. There are 4 options to choose from:
· Window activated;
· Window created;
· Window destroyed;
· Window deactivated;
· Window changed caption.
Waiting – specify the timeout in seconds or select the Infinity option.
If the timeout is over you can specify an action:
· Raise Timeout error - this is default option
· Set True or False to variable - in this case the task will continue work without error.
Window Caption
Enter or select the caption of the window that you want to manipulate with the action you
select in the Action list. You can enter part of a window caption.
manipulate windows that contain only part of the window caption entered in the Window
Caption box. For example, you can enter <notepad> for the window with a caption <Untitled -
Notepad>.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Change position
Switch on this checkbox if you want to change a window position. After that, fill in parameters
X and Y.
X – Specify the horizontal position of the left window edge. The usage of variables is allowed.
The result of the expression must be an integer. Otherwise, the action uses default value,
which is 0.
Y – Specify the upright position of the upper window edge. The usage of variables is allowed.
The result of the expression must be an integer. Otherwise, the action uses default value,
which is 0.
Change size
Switch on this checkbox if you want to change a window size. After that, fill in parameters H
and W.
H – Specify a new height of the window. The usage of variables is allowed. The result of the
expression must be an integer. Otherwise, the action uses default value, which is 480.
W - Specify a new width of the window. The usage of variables is allowed. The result of the
expression must be an integer. Otherwise, the action uses default value, which is 640.
Window Caption.
If you want to search for a window by means of its caption, switch on this checkbox and input
the expected window caption. You can input only part of the caption. In this case the action
will check availability of the input part in the window caption.
Caption Must Match Exactly.
If you need the exact coincidence of a window caption, switch on this checkbox.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Window Handle.
Input the expression containing a window handle. This parameter is used for the mode Use
Window Handle. A window handle is just a number, identifier of a window in a current session
of system work.
Window Caption.
If you want to search for a window by means of its caption, switch on this checkbox and input
the expected window caption. You can input only part of the caption. In this case the action
will check availability of the input part in the window caption.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Window Handle.
Input the expression containing a window handle. This parameter is used for the mode Use
Window Handle. A window handle is just a number, identifier of a window in a current session
of system work.
Important
· This action is not available on Windows 9x/Me.
Starts a service already installed on the local or remote NT server or workstation. A service is a
special process that can be launched during operating system boot. The most important feature
of a service is that you do not have to log on to the computer.
A service is started in the Local System account. You can start an existing service or a service
that you created. Examples of services include FTP/HTTP servers, print spoolers, file sharing,
and so forth.
Usually, Windows services do have not a user interface, but are managed through the Services
applet of the Windows Control Panel, or a separate application or applet. Using the standard
Services applet, you can start, stop, pause, or continue a previously installed service. The
common way for a service to report a warning or error is recording an event into the system
event log. You can review the log using the Event Viewer from Administrative Tools in
Windows.
Computer Name
Enter the remote computer name. If you want to start a service on the local computer, use
{ComputerName}. You can click the browse button to select a computer from the local area
network.
Service
Select a service that you want to stop from the dropdown list. The items on this list depend on
which services are present on the computer.
Parameters
Specify optional parameters for the service that you want to start.
Refresh
Click this button to refresh the Service list.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Important
· This action is not available on Windows 9x/Me.
Stops a service already installed and started on the local or remote server or workstation. For
more information, see Start Service. 274
Computer Name
Enter the remote computer name. If you want to start a service on the local computer, use
{ComputerName}. You can click the browse button to select a computer from the local area
network.
Service
Select a service that you want to stop from the dropdown list. The items on this list depend on
which services are present on the local computer.
Refresh
Click this button to refresh the Service list.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Important
· This action is not available on Windows 9x/Me.
This action allows to read the status of a specified system service and to assign a value to a
variable.
The value of a service status can be assigned as a line or a number. The values correspond to
the Microsoft documentation. There are 7 statuses:
· SERVICE_STOPPED = 1 – The service is not running.
· SERVICE_START_PENDING = 2 – The service is starting
· SERVICE_STOP_PENDING = 3 – The service is stopping.
· SERVICE_RUNNING = 4 – The service is running.
· SERVICE_CONTINUE_PENDING = 5 – The service continue is pending.
· SERVICE_PAUSE_PENDING = 6 – The service pause is pending.
· SERVICE_PAUSED = 7 – The service is paused
Computer Name
Specify the computer name of a local network. The usage of variables is allowed. For example,
{ComputerName}. If the name of computer is not specified (an empty line), a local computer is exploited.
Service
Specify the name of a service. The name can be typed or selected from a dropdown list.
Usage of variables in the name of a service is allowed.
Status Value as
Specify the form of the value which is necessary to get.
· Integer value – the number from 1 to 7.
· String value – one of possible values:
SERVICE_STOPPED,
SERVICE_START_PENDING,
SERVICE_STOP_PENDING,
SERVICE_RUNNING,
SERVICE_CONTINUE_PENDING,
SERVICE_PAUSE_PENDING,
SERVICE_PAUSED
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
This action submits a request to lock the workstation's display. Locking a workstation protects it
from unauthorized use.
This action allows running some application with rights of another user. It is especially useful for
the system service mode because the application (a spawned process) is implemented by
default with the rights of SYSTEM account. Sometimes it can cause some problems. For
example, the launched application needs the access into the network with certain rights, or it
needs some user settings.
Program name
Enter the program name into this field. You can type the text manually or select a file via dialog.
You can also specify the document name in this field. In this case the document is opened by
the default program according to the system settings.
Parameters
Enter the parameters of the program.
Current folder
The name of the current folder when the program is started. You can leave this field empty. In
this case the folder is specified automatically.
Domain
The domain name. If you want to use the username of a local computer, write the dot symbol
(.)
User Name
The name of user.
Password
The password of user.
If you want to save the exit code of the program, turn on this flag and write the variable name
below. It is possible to save the code of the program completion only if the idle mode of the
program completion is on.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Message Kind
Select the message text from the drop-down list:
· Information message
· Warning message
· Error message
Message Text
Enter the text of the message text as a multi-line text. You can use RoboTask variables in the
text.
Collapses the RoboTask window and displays the RoboTask icon on the Windows Taskbar. No
specific settings are associated with this action.
This action is useful if you do not want RoboTask to appear on the computer while the task
runs.
Activates RoboTask and displays the RoboTask window on the computer screen. No specific
settings are associated with this action.
This action is useful for system administrators who want to troubleshoot a process. For
example, if a "critical error" occurs, you can use the Disable Automation action, trap an error
message with the message box, and then use the Restore RoboTask action.
Enables task triggering. If task triggering is disabled, the tasks will not run automatically, i.e. all
your tasks are disabled. You may run tasks only manually.
Disables task triggering. If task triggering is disabled, the tasks will not run automatically, i.e. all
your tasks are disabled. You may run tasks only manually.
Records a message to the task's log. This action is a powerful tool for recording the results of
actions when they occur in a log text file. This action is useful for system administrators who
want to troubleshoot a process.
The log filename is based on the internal unique ID number of the task. Each task has an
internal unique ID number and its filename is NNNNNNNN.tsk where NNNNNNNN is its ID number.
The log file name is NNNNNNNN.log.
Important
· You can set options for logging on the Advanced tab 57 of the Add Task dialog box or the
Edit Task dialog box.
Message Text
Enter the text that you want to appear in the message.
Message Type
Select a type, such as Information, Warning, etc. The type determines the style of log
message:
· Information - a blue text and "i" icon appears.
· Warning - an olive text and "!" icon.
· Error - a red text and "X" icon.
· Neutral (user message) - black text without icon. This kind of message can't be hidden
even if you specify "Nothing" in "Log Level" parameter of the task.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
4.17 Clipboard
4.17.1 Cut to Clipboard
Cuts the selected text fragment (image) into the system clipboard from the active Windows
application.
Do it by…
There are two ways to cut a fragment:
1. by sending a Windows message to the corresponding edit element
2. by emulating the key combination
It is recommended to use the second method because it is a universal mechanism for any
application and any data type.
Copies the selected text fragment (image) into the system clipboard from the active Windows
application.
Do it by…
There are two ways to copy a fragment:
1. by sending a Windows message to the corresponding edit element
2. by emulating the key combination
It is recommended to use the second method because it is a universal mechanism for any
application and any data type.
Pastes the copied fragment from the system clipboard to the current Windows application.
Do it by…
There are two ways to paste a fragment:
1. by sending a Windows message to the corresponding edit element
2. by emulating the key combination
It is recommended to use the second method because it is a universal mechanism for any
application and any data type.
Assigns the text from the system clipboard to a variable. If the clipboard contains a graphic
object or an object of some other type that cannot be converted into text, an empty string will
be assigned to the variable.
Copies the specified text into the system clipboard. You can take text from a file or type it
directly in the "Specified text" field. User and system RoboTask variables can be used.
Specified Text
Type the fragment that should be copied into the clipboard.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Picture format
There are four formats available:
· BMP – standard Windows bitmap;
· Jpeg – Joint Photographic Experts Group format;
· PNG – portable network graphics format
· GIF – Graphics Interchange Format
File name
Input the file name where you want to save the image. Variables are allowed.
File name
Input the file name of the image. You can use these kinds of images:
BMP - windows bitmap
JPEG - Jpeg files. Such files may have the extension JPG or JPEG
PNG - portable network graphics
GIF - Graphics Interchange Format
ICO - system icon file
4.18 Mouse
Actions for simulation of mouse movements and clicks.
Moves the mouse pointer to the specified object. You can select a control element in a window
(button, menu, toolbar, etc.) or a window as an object.
To make editing this parameter more comfortable, you can press "Select window and
element manually" button and select the object you need. While you are moving the mouse
pointer, elements recognized by RoboTask are highlighted with a frame. To select press CTRL
key, to cancel operation press ESC key.
When you selected the object all the parameters are specified automatically depending on the
position of the mouse pointer. After that you can edit the parameter manually if necessary.
Window caption
Specify the window caption completely or any part of it. If the caption does not matter, leave
the field blank.
Window class
Specify the window class completely. If the class does not matter, leave the field blank.
Control Text
Control class
Specify the control class completely. If the class does not matter, leave the field blank.
Control position
Specify the coordinates of the control element. The values are specified relatively to the
window. The coordinates of the control are necessary in order to identify the control element
because the window may contain several elements with the same Control Text and Control
Class.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Button
Select the mouse button:
· Left Button
· Right Button
· Middle Button.
Action
Select the action. There are 4 variants to choose from:
· Click
· Double Click
· Button Down
· Button release
Moves the mouse pointer the specified distance away from the current position or to the
specified point.
Coordinates mode
Coordinates: absolute or relative.
· Absolute coordinate - the absolute coordinates of a point on the screen will be specified
in the next parameter.
· Relative coordinates - the coordinates of a point on the screen relative to the current
position of the mouse pointer will be specified in the next parameter.
In order to set the coordinates interactively, you should drag the text in the upper part of the
dialog box to the necessary point on the screen. The coordinate values will be specified
automatically.
with another window or is outside the desktop. In this case, to correct the situation, it is
necessary to use the actions Window Command 257 and/or Window Set Size and position 263 , to
make the necessary element visible.
General tab
less time it takes to search for it. Generally speaking, the initial position can be any. If the
element is on the screen, the action finds it, but the searching can take several seconds.
Additional parameters
Tolerance
Match accuracy. The smaller the value, the more accurate the match. You need to choose
the optimal value. The tolerance must always be greater than zero due to the inaccuracy of
displaying the elements on the screen.
4.19 Registry
4.19.1 Add Registry Key
Key Name
Name of the key to be added. You can use the dialog box to select the key interactively; to
open it click the button to the right of the text box.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Deletes the specified key (branch) from the registry. The specified key will be deleted together
with all its subkeys and entries.
Key Name
Name of the key to be deleted. You can use the dialog box to select the key interactively; to
open it click the button to the right of the text box.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Key Name
Name of the key to be renamed. You can use the dialog box to select the key interactively; to
open it click the button to the right of the text box.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Read the specified value from the registry and assign it to the user variable. This action allows
reading values of String and Integer types only.
Key Name
Full path to the value you want to read. You can use the dialog box to select the key and value
interactively; to open it click the button to the right of the text box. When you click the OK
button, the "Key Name" and "Value Name" fields will be filled, if you have selected the necessary
value.
Value Name
Name of the value to be read. If you leave Value Name empty, RoboTask will read the default
value of the key.
Assign to Variable
Name of the user variable that should be assigned the value we have read.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Write the value to the specified key in the registry. This action allows writing values of String
and Integer types only.
Key Name
Full path to the value you'd like to write. You can use the dialog box to select the key and value
interactively; to open it click the button to the right of the text box. When you click the OK
button, the "Key Name" and "Value Name" fields will be filled, if you have selected the necessary
value.
Value Name
Name of the value to be written.
Value Type
Select the type of value to be written: String or Integer.
Value
The value to be written.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Key Name
Full path to the value you'd like to delete. You can use the dialog box to select the key and
value interactively; to open it click the button to the right of the text box. When you click the
OK button, the "Key Name" and "Value Name" fields will be filled, if you have selected the
necessary value.
Value Name
Name of the value to be deleted.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Key Name
Full path to the value you'd like to rename. You can use the dialog box to select the key and
value interactively; to open it click the button to the right of the text box. When you click the
OK button, the "Key Name" and "Value Name" fields will be filled, if you have selected the
necessary value.
Value Name
Name of the value to be renamed.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Exports the specified registry branch to the specified file. The saved file has a format
compatible with the REGEDIT.EXE system utility. This operation is useful when you make a
backup copy of some information or move settings to another computer. You can easily import
the export file using REGEDIT or the Import 300 action of RoboTask.
Registry Key
The key (branch) of the registry that should be exported to a file. You can use the dialog box to
select the key interactively; to open it click the button to the right of the text box.
File Name
Name of the file where information should be exported.
File Format
Choose the export file format.
· Registration file (current format) - current default format for the installed operating
system. For Windows 2000 and higher the format is Unicode text.
· Win9/NT4 Registration File - old format that provides compatibility with Windows 9x/NT4.
This format has a structure of a regular text file.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Imports the export file to the registry. The export file should be prepared with the
REGEDIT.EXE system utility or the Export 299 action.
File Name.
Name of the file to be imported.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Key name
The start key name. You can use the dialog box to select the key interactively. To open it
click the button to the right of the text box.
With subkeys
If you want to process all sub-keys recursively switch on this checkbox
Loop kind
There are two options
· Loop by registry values
· Loops by keys only
Save values as
You can save values of the loop in separate variables or in one variable as JSON
4.20 Network
4.20.1 Send Command
Allows you to send a string to a copy of RoboTask on another computer. This action works
together with the "Listener" triggering event 597 . The Listener event receives the string and can
start some task according to its settings. Thus, you can synchronize several copies of RoboTask
working on the local area network of your office or via the Intranet/Internet.
For example, it may be a command to pack IIS log files on the server and send the packed file
by e-mail.
Specify the Host Name or IP address of the computer where you need to send the command.
The Host Name can be either similar to www.mydomain.com for the Internet or just the name
of the necessary computer for the local area network.
Port
Specify the port the command should be sent to. By default, the "Listener" listens to port 5254.
The port number can be changed to any other number (see Plugin settings).
Access Password
Specify the password for connecting to remote RoboTask. If the Listener on remote RoboTask is
configured to work without a password, leave this field blank.
Command
Specify the string (command) that should be sent to remote RoboTask. It can be any string.
The "Listener" triggering event on the remote computer will analyze the string.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Sends a text message using a local network area (LAN) connection to the specified computer.
For example, you can use this action to display a message every time you receive an e-mail
from a special customer when you are logged into a different computer on your network and
cannot check your e-mail.
Computer Name
Enter the name of the computer or domain name that the message should be sent to. When the
"*" symbol (without quotes) is specified, the message is broadcast to every computer in the
primary domain of the system.
Important
If the Windows Messenger service is not running on the target computer, the message will not
be received.
Message Text
Specifies the text of the message to be sent.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Server
Enter IP address or server name
Port
Enter port number
The settings of the Network plugin are related to the "Listener 597 " triggering event and set the
global parameters of the "Listener 597 ".
Listener port
Specify the port the "Listener" will listen to. The default is 5254, but it can be changed for any
other available port.
Encryption Required
Select this checkbox if you want to encrypt information when it is transferred between the
computers. An 128-bit asymmetric encryption key is used for that. The key is generated
randomly for each session.
IP Filter
You can use this tab to configure filtering requests by IP addresses. By default, the Listener is
available for all IP addresses.
4.21 Email
This plugin contains email action which work with POP3 and IMAP protocols.
Record Name
The name of the parameter set. The name must be unique. In actions, the parameter set is
identified by this name.
Client Account
The username of the account. Typically, the user is identified by an email address. For Google
and Microsoft accounts, this is the email address linked to the account.
Client ID
This is a string (ID) that you receive when setting up OAuth authorization with the
corresponding provider.
Client Secret
The secret key that you also receive when setting up the account. Microsoft personal
accounts prohibit the use of a Client Secret for authorization. In this case, you should leave
this field empty.
Refresh Token
This is a string used for authorization. The Refresh Token can only be obtained interactively by
clicking the "Get Refresh Token" button.
Authorization Endpoint
The HTTP address for user authorization and for forming the request to obtain the Refresh
Token.
Scope
The list of provider services that require access. The format and composition should be
specified in the provider's documentation.
Opens a connection with the POP3 server. This action should be performed before you perform
the "POP3 Mail Loop 311 ", "POP3 Download Email 314 " and "POP3 Delete Email 316 " actions. There
can be only one open connection with the POP3 server within a task. If you need to process
several mail servers one by one, you should close the previous connection before opening the
next one (see the "POP3 close 311 " action).
General
Host
IP-address or Host Name of the POP3 server.
Port
Port of the POP3 server. By default it's 110.
Use SSL
Select this checkbox if you want to use SSL connection.
SSL/TLS Flags
Specifies modes of using SSL versions. It is usually enough only to turn on the flag Use SSL.
· Use SSL2
· Use SSL3
· Use TLS 1.0
· Use TLS 1.1
· Use TLS 1.2
Authorization
Username / Password
Enter the username and password explicitly or using variables.
OAuth Authorization
OAuth authorization parameters are shared for all email actions. In the action editor, simply
select the desired set by name. Using variables to form the name is allowed.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Closes the open connection with the POP3 server. It doesn't require any additional parameters.
When a task is finished, the opened server connection closes automatically.
Allows processing messages on the POP3 server one by one in a loop. This action also allows
parsing main parameters of a message without downloading the complete message from the
server. You can assign parameters of each message to a user variable and perform initial parse
within a loop.
Order Number
This loop parameter is compulsory as the current order number of a message serves as its
identifier on the POP3 server. The numbering of messages starts with 1. The variable that
contains the number of a message should be used in the loop in "POP3 Download Email 314 " and
"POP3 Delete Email 316 " actions.
Subject
Optional parameter. Allows saving the message subject to a variable and parsing it in the loop.
Sender (FROM)
Optional parameter. Allows saving the sender address to a variable and using it within the loop.
Receipt (TO)
Optional parameter. Allows saving the recipient address to a variable as a string and using it
within the loop.
Optional parameter. Allows saving the address of the recipient (or recipients) of a message copy
to a variable as a string and use it within the loop.
Message Size
Optional parameter. Allows saving the message size in bytes to a variable and using it within the
loop.
Note:
Addresses in the message can be written in form of:
· E-mail address only. For example:
[email protected]
· Recipient's name and address. For example:
John Smith <[email protected]>
· Several recipients separated with a semicolon. For example:
John Smith <[email protected]>; Melissa Carver <[email protected]>
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
It is used to count the number and total size of messages on the incoming mail server (POP3
server). To use this action, you should establish a connection with the POP3 server using the
"POP3 Open" action 309 . You can save the number and total size of messages to custom
variables to process them later in a task.
While editing the step, you should specify at least one variable.
Parses message in the file. It separates the message into its main parts:
· Message subject (the SUBJECT field);
· Sender (the FROM field);
· Recipient (the TO field);
· Recipient of a copy (the CC field);
· Message body (the text);
· Attachments.
File Name
Specify the filename of the message you want to parse. Such files usually have EML extension.
General tab
Subject
Specify the name of variable where the message subject should be saved.
Sender (FROM)
Specify the name of variable where the sender's address should be saved.
Recipient (TO)
Specify the name of variable where the recipient's address should be saved. This field can
contain several addresses separated with a comma or a semicolon.
Prefer
Specify the format that should be preferred if the message body contains both message
formats. The message body can contain the following formats:
· Plain Text
· HTML Text
If the message body contains one format only, this message text will be assigned to the variable
no matter what value the Prefer parameter has.
Attachments tab
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Note:
Addresses in the message can be written in form of:
General
Server
The name or the IP address of a server.
Port
The number of a port for connection. On default, the port of the IMAP is 143 for a simple
connection and 993 for the SSL connection.
Use SSL
Need for using the SSL (Secure Socket Layer)
SSL/TLS Flags
Specifies modes of using SSL versions. It is usually enough only to turn on the flag Use SSL.
· Use SSL2
· Use SSL3
· Use TLS 1.0
· Use TLS 1.1
· Use TLS 1.2
Authorization
Username / Password
Enter the username and password explicitly or using variables.
OAuth Authorization
OAuth authorization parameters are shared for all email actions. In the action editor, simply
select the desired set by name. Using variables to form the name is allowed.
Specify the name of a folder of the IMAP server. The folder name can be typed manually
explicitly or using variables. Also the folder name can be selected from the list pressing the
button on the right of entry field.
Order Number
Specify the name of the variable into which it is necessary to save the ordinal number of the
current message. Next actions with messages will execute according to the number of the
message in the folder (for example, IMAP Download Message 329 , IMAP Set Message Flags 331 ,
etc).
Subject
To save the subject of the current message, switch on this checkbox and specify the variable
name.
Sender (FROM)
To save the address and the sender name of the current message, switch on this checkbox
and specify the variable name.
Recipient (TO)
To save the list of recipients of the current message, switch on this checkbox and specify the
variable name.
Message Date
To save the date and time of sending of the current message, switch on this checkbox and
specify the variable name.
Message Size
To save the size in bytes of the current message, switch on this checkbox and specify the
variable name.
Message Flags
To save flags (attributes) of the current message, switch on this checkbox and specify the
variable name. Flags of the message will be saved as string. Every letter corresponds to
existence of a flag of the message.
· A - Answered
· F - Flagged
· D - Deleted
· S - Seen
· T - Draft
· R - Recent
For example,
AS - means that the message is answered and seen.
R – recent message.
Message Number
The ordinal number of the message in the current server folder.
Message Flags
Set up new message flags by means of checkboxes. There are 6 checkboxes which correspond
to the message flags:
· Answered
· Flagged
· Deleted
· Seen
· Draft
· Recent
Notice, that to mark the message for deletion, it is enough to mark it with the flag Deleted.
After all necessary messages are marked, the action IMAP Delete Marked Messages needs to
be performed.
Message Number
The number of a message in the current folder. The numbers begin from 1. It is allowed to use
variables.
To extract the parameter value, it is necessary to switch on the appropriate checkbox and to
input the variable name.
General
POP3 Server
Enter the POP3 server for e-mail.
Port
Enter the port number. The default port number is 110.
Use SSL
Select this checkbox if you want to use SSL connection.
Authorization
Username / Password
Enter the username and password explicitly or using variables.
OAuth Authorization
OAuth authorization parameters are shared for all email actions. In the action editor, simply
select the desired set by name. Using variables to form the name is allowed.
Assign variable
Specify the name of the variable to store TRUE or FALSE
Sends email through the specified SMTP server. Messages can have attachment files. For
example, you can create a task that automatically e-mails monthly invoices to a specific
customer outlining the sales charges for that month.
Message tab
From
Enter the e-mail address of the person sending the e-mail.
Reply to
If the reply-to address is different from the sender's address, you can provide an alternate
email address for replies in this field. You can leave this field blank.
To
Enter the e-mail address to which you are sending the e-mail.
CC
Enter the address of any people to which you want to send a courtesy copy.
Subj
Enter the subject of the e-mail.
Encoding
The character set of the message. RoboTask doesn't convert specified text of the message, but
you have to specify character set if the message contains non-latin characters.
Message Text
Enter the text that you want to send. If you enter .html tags, click the Is HTML check box.
Tip
· You can cut and paste .html code from Notepad into this window with the CTRL+V keys.
Is HTML
Click this check box if you have entered .html tags in the Message Text box.
Attachment tab
Attachments
Attachments list is the list of file names, one file name per line.
Click the plus button to add attachments to the e-mail. You can add more than one
attachment. Click the X button to remove attachments from the list.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Host
Enter the name of the host to which you want to send the e-mail using SMTP (simple mail
transfer protocol).
Port
Enter the port number to use.
SSL/TLS mode
You can set SSL/TLS mode of the connection. There are three options:
· None
· SSL
· TLS
Authorization tab
Username / Password
Enter the username and password explicitly or using variables.
OAuth Authorization
OAuth authorization parameters are shared for all email actions. In the action editor, simply
select the desired set by name. Using variables to form the name is allowed.
To edit authorization parameters, open the OAuth account editor 306 . This same editor is
opened when editing plugin settings.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
4.22 Strings
4.22.1 STR Replace
This action finds and replaces the specified string with the one you need. There are three
replacement modes:
· All Entries;
· First entry;
· Last Entry.
The result is assigned to a user variable.
Source String
The source string to search and replace in. It is possible to use variables.
Find Substring
The substring that should be found and replaced. It is possible to use variables.
Replacement
The substring to replace the found substring with. It is possible to use variables.
Replace mode
Replacement mode. 3 options are possible:
· All Entries – all found substrings will be replaced;
· First Entry – only the first found substring will be replaced;
· Last Entry – only the last found substring will be replaced;
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Source String
The source string to perform the action in. It is possible to use variables.
What to Trim
The characters to trim.
· Spaces
· Tabs
· EOL symbols – end-of-line characters
· Custom symbol - you may specify any symbol
You can select the options independently of each other. It is enough to select at least one
option.
How to Trim
2 options are possible:
· Lead Symbols
· Trailing Symbols
You can select the options independently of each other. It is enough to select at least one
option.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Source String
The source string to delete the characters in. It is possible to use variables.
From Position
Specify the position to start deleting characters from. The value must be a positive integer. The
positions of characters in a string start from 1. It is possible to use variables.
Amount of Chars
Specify the number of characters that should be deleted starting from the specified position.
The value must be a positive integer. It is possible to use variables.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Source String
The source string to insert the substring to. It is possible to use variables.
Substring to Insert
The substring to insert to the source string. It is possible to use variables.
Into Position
Insertion position. The positions of characters in a string start from 1. If you specify a position
less than 1, the substring will be inserted at the beginning. If the position of the insertion is
greater than the number of characters in the source string, the substring will be added to the
end of the source string. It is possible to use variables.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Source String
The source string to cut the substring from. It is possible to use variables.
From Position
Specify the position to start cutting characters from. The value must be a positive integer. The
positions of characters in a string start from 1. If the position is less than 1, the substring will
be cut from the beginning of the source string. It is possible to use variables.
Amount of Chars
Specify the number of characters that should be extracted starting from the specified position.
The value must be a positive integer. It is possible to use variables.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Source String
The source string to find the substring in. It is possible to use variables.
Substring to Search
The substring to search for. It is possible to use variables.
From Position
The position to start searching from. Position 1 corresponds to the beginning of the string. It is
possible to use variables.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
We need to cut the meaningful string out, i.e. the string between the HTML tags. It is easy with
the STR Between action. To do it, you should create the limiting sequences of characters:
Start - <h3><b>
End - </h3></b>
The action cuts the string between the start and end marks out and assigns the result to a
custom variable for further processing. If at least one mark is not found in the source string, the
action will return an empty string.
Source String
Specify the source string to be processed. It is possible to use variables.
Begin Mark
The start mark of the substring. It is possible to use variables
End Mark
The end mark of the substring. It is possible to use variables
Case Sensitive
You can make the search for the substring case-sensitive. By default, the search for the
substring is case-insensitive.
Start Position
The position of the character the search will be started from. Number 1 corresponds to the
beginning of the string. If the number is greater than the length of the string, the action will
return en empty result. It is possible to use variables.
It is necessary, for example, in order to get all substrings meeting the specified criteria in the
source string.
Suppose we need to get all substrings enclosed by parentheses in the following string:
Just (a few minutes) with RoboTask will give you (plenty of ideas) of how you can (increase)
your productivity
You can easily do it using a loop. See the following example: "[DEMO] STR Between - extract
all entries"
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Custom format
Select delimiter and quote char
Source string
Enter source string to transform.
Direction
Select the conversion direction: standard to custom or backwards
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Line Number
Specify the number of a line which is necessary to extract from a text. Using variables is
possible. If non-numeric value is specified, the action generates a run-time error.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Line number
Enter the number of the line to be removed from the text. The line number starts at 1. If the
line is less than 1 or greater than the number of lines, then the action writes a warning to the
task log.
Line number
Enter the number of the line where you want to insert string. The line number starts at 1. If
the line is less than 1 or greater than the number of lines, then the action writes a warning to
the task log and appends the string to the end of the text.
This action is designed for conversion of a comma-separated string in a multiline text and vice
versa.
Often data for machine processing is given as comma-separated string. At the same time a
multiline text is easier for processing.
· Processing of strings in the cycle (Text Loop)
· Calculation of quantity of strings and extraction of a string by its number.
· etc.
Conversion kind
Select one of two conversion options
· Comma-Separated String ==> Multiline Text
· Multiline Text ==> Comma-Separated String
CSV format
You can use more than just the standard CSV string format.
Choose Custom format if you want to use non-standard CSV. Then select delimiter and Quote
char
Conversion kind
The direction of conversion
· Text ==> UTF-8 Text
· UTF-8 Text ==> Text
Operation
There are four operations:
· Intersection - elements that are in both lists
· Union - all elements from both lists
· Subtraction - elements from the 1st list and missing from the 2nd list (1-st list minus 2-nd
list)
· Symmetric difference - the union minus intersection
Remove duplicates
The action removers duplicate elements from result
Case Sensitive
By default, the action is case-insensitive when comparing elements.
This action is destined for automation of filling web forms. Of course you can automate filling
forms by "Send Keystrokes" and mouse actions. But unfortunately, this is much more difficult
and unreliable, because RoboTask tries to influence your external application (your web
browser) and can’t control the reaction of the program to this influence completely.
"Fill Web Form" works differently. It loads the web page with a form under its control, waits for
a full loading of the page and can fill a form on the inside. If auto-submit is performed, the
action will be waiting for the end of the resultant page loading. Thereby it is guaranteed that
the task can pass to the next step only after the end of the page loading.
After filling the form you can keep on interactive working with the site (see the action "CEF
Wait For Done 377 ") or close embedded Web browser.
The embedded web browser will be in of memory only during the work of a task. RoboTask will
unload the object "embedded web browser" out of memory after the end of the task or in case
an error appears.
Genearal options
Web Address
Fill the web address of the page which needs loading. You can leave its field empty if you
want to use the page which was loaded in the previous steps of the task. You can use
variables.
On the right of the field there is the "Load" button. When you press it, the specified address
will be opened in embedded web browser. After loading, there will be available the lists of
forms, elements of a form and the lists of item values kind of "Select" and "Multiselect".
After the form loading into embedded web browser, all the visual elements of all forms at the
page will have pop-up hints, where the next information will be specified:
· The name of a form
· The name of the field
· The common ordinal number of the field
· The type of the edit field
Use Frame
Specify frame number (from 0) . "-1" corresponds to the page. The action uses any non-
numeric string as "-1". If you input invalid number then you will get the error "Frame not
found".
Form to Fill
The name of a form that you should fill. You can choose the name of a form from the drop-
down list if you have loaded the page. You can also fill the name of the form manually. You
can use variables.
There may be nameless forms on any pages. This is allowed by the HTML standard. In this
case you can refer to the form according to an ordinal number in the list beginning from 0. In
other words, the first form on the page will have the number 0, the second – 1, and so on.
Autologon
You can specify parameters of automatic authorization on this tab if WEB browser demands
authorization for access to resource. This way of automatic authorization works only with
Basic and Digest authorization modes. In this case browser demands to input a user name and
a password into the pop-up system window. If you specified parameters of automatic
authorization, the action puts the parameters automatically when browser demands
authorization.
If it is necessary to input the authorization parameters into the form on a page, then it is the
so-called cookie authorization. In this case you should use the automatic filling of WEB form.
Autologon Mode
There are three options
· Keep previous settings
· No autologin (manual login) - user have to login manually when web browser ask
username and password
· Enable autologin. Set username and password.
User name
A name of a user for authorization. Variables can be used.
Password
Auto-download mode
There are two options
· Keep previous settings
· Change download options - set the folder name and overwrite parameter.
Default download folder is %temp%\cefdownloads
Download Folder
Specify the folder in which the file will be downloaded automatically. It will be downloaded with
the file name by default. Default value is %temp%\cefdownloads
Overwrite File If Exists.
Switch on this checkbox if you want the action to overwrite a file, on condition there is a file
with the same name in this folder. Otherwise the downloaded file will be renamed. Default
value id OFF
Field Name
The name of the field that needs filling with a new value. You can input the name manually or
choose it from dropdown list. Pay attention that the dropdown list will be filled only if you have
loaded the web-form into embedded web browser. Also you can specify field order number.
Field Number
HTML standard allows of presence of several fields with the same name on a form. In this
case, you need to specify the field number among the fields with the same name. Numeration
begins from 0. If fields on the form have unique names the number of each field will be 0. This
parameter is ignored if you specify field number as field name.
Field Type
For right filling a field you need to specify its type. It is supported seven types in all;
· Edit – a simple single-line string field;
· Memo – multi-line text;
· Select – choice one option among the several from the proposed list;
· Multiselect – choice several options from the proposed list;
· Check – usually checkbox;
· Radio – radio button;
· Hidden – a hidden field of a form. This field is recommended to change only if you imagine
clear, why you need to change values. As a rule, hidden fields are necessary for keeping
various service information of a field.
· Password - as edit field but the field value is hidden from user
Field Type will take the necessary value automatically when you choose the name of a field
from a list (see the Field Name)
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
General options
Web Address
The address of a web page which is necessary to download. If the address is not specified,
the action uses the current page which has been downloaded in the previous steps.
Autologon
You can specify parameters of automatic authorization on this tab if WEB browser demands
authorization for access to resource. This way of automatic authorization works only with
Basic and Digest authorization modes. In this case browser demands to input a user name and
a password into the pop-up system window. If you specified parameters of automatic
authorization, the action puts the parameters automatically when browser demands
authorization.
If it is necessary to input the authorization parameters into the form on a page, then it is the
so-called cookie authorization. In this case you should use the automatic filling of WEB form.
Autologon Mode
There are three options
· Keep previous settings
· No autologin (manual login) - user have to login manually when web browser ask
username and password
· Enable autologin. Set username and password.
User name
A name of a user for authorization. Variables can be used.
Password
A password for authorization. Variables can be used.
Auto-download mode
There are two options
· Keep previous settings
· Change download options - set the folder name and overwrite parameter.
Default download folder is %temp%\cefdownloads
Download Folder
Specify the folder in which the file will be downloaded automatically. It will be downloaded with
the file name by default. Default value is %temp%\cefdownloads
Overwrite File If Exists.
Switch on this checkbox if you want the action to overwrite a file, on condition there is a file
with the same name in this folder. Otherwise the downloaded file will be renamed. Default
value id OFF
Web Address
Fill the web address of the page which needs loading. You can leave its field empty if you
want to use the page which was loaded in the previous steps of the task. You can use
variables.
Load
On the right of the field there is the "Load" button. When you press it, the specified address
will be opened in embedded web browser. After the page (or a blank page) is loaded, you can
manage the page interactively: click on the links, fill in the input fields, click on the form
buttons, or enter a new address in the address line.
Refresh button
Updates the list of links from the current page, because the current loaded page may differ
from the original page
Link address
Enter the address of the link (or part of the address) to search. You can select a link and a
text from the list by clicking the "Select Link from the List" button.
You can leave the field blank. In this case, the address will not be taken into account when
searching (any address). You can also use variables.
Exact address
Switch on this checkbox if you need to search for an address by exact match. In most cases,
it is enough to specify a part of the address to search.
Link Text
Enter the text of the link (or part of text) to search. You can select a link and a text from the
list by clicking the "Select Link from the List" button.
You can leave the field blank. In this case, the address will not be taken into account when
searching (any address). You can also use variables.
Exact Text
Switch on this checkbox if you need to search for a text by exact match. In most cases, it is
enough to specify a part of the text to search.
Case sensitive
Switch on this checkbox if you need to consider case when searching. In most cases, this is
not necessary.
Autologon
You can specify parameters of automatic authorization on this tab if WEB browser demands
authorization for access to resource. This way of automatic authorization works only with
Basic and Digest authorization modes. In this case browser demands to input a user name and
a password into the pop-up system window. If you specified parameters of automatic
authorization, the action puts the parameters automatically when browser demands
authorization.
If it is necessary to input the authorization parameters into the form on a page, then it is the
so-called cookie authorization. In this case you should use the automatic filling of WEB form.
Autologon Mode
There are three options
User name
A name of a user for authorization. Variables can be used.
Password
A password for authorization. Variables can be used.
Auto-download mode
There are two options
· Keep previous settings
· Change download options - set the folder name and overwrite parameter.
Default download folder is %temp%\cefdownloads
Download Folder
Specify the folder in which the file will be downloaded automatically. It will be downloaded with
the file name by default. Default value is %temp%\cefdownloads
Overwrite File If Exists.
Switch on this checkbox if you want the action to overwrite a file, on condition there is a file
with the same name in this folder. Otherwise the downloaded file will be renamed. Default
value id OFF
This action is destined for free work with a web page. The action stops work of task until a user
presses the button "Done" in the window Embedded Web Browser.
During of work of the action, buttons of navigation "Go Back" and "Go Forward" and button
"Done" appear in the window Embedded Web Browser. The action is useful when the
interactive interference of a user is needed. For example, to fill the value of CAPTCHA. Any
interactive work with a web page is allowed: click on links, filling and submit of forms, etc.
After finishing the interactive work it is necessary to press the button "Done".
General options
Web Address
Fill the web address of the page that need loading. You can leave a field empty if you want to
use the current page that has been loaded during the previous steps of the task. You can use
variables.
Autologon
You can specify parameters of automatic authorization on this tab if WEB browser demands
authorization for access to resource. This way of automatic authorization works only with
Basic and Digest authorization modes. In this case browser demands to input a user name and
a password into the pop-up system window. If you specified parameters of automatic
authorization, the action puts the parameters automatically when browser demands
authorization.
If it is necessary to input the authorization parameters into the form on a page, then it is the
so-called cookie authorization. In this case you should use the automatic filling of WEB form.
Autologon Mode
There are three options
· Keep previous settings
· No autologin (manual login) - user have to login manually when web browser ask
username and password
· Enable autologin. Set username and password.
User name
A name of a user for authorization. Variables can be used.
Password
A password for authorization. Variables can be used.
Auto-download mode
There are two options
· Keep previous settings
· Change download options - set the folder name and overwrite parameter.
Default download folder is %temp%\cefdownloads
Download Folder
Specify the folder in which the file will be downloaded automatically. It will be downloaded with
the file name by default. Default value is %temp%\cefdownloads
Overwrite File If Exists.
Switch on this checkbox if you want the action to overwrite a file, on condition there is a file
with the same name in this folder. Otherwise the downloaded file will be renamed. Default
value id OFF
General tab
Web Address
Fill the web address of the page which needs loading. You can leave its field empty if you
want to use the page which was loaded in the previous steps of the task. You can use
variables.
Picture Format
Screenshot is a graphic image. It can be saved in the different formats:
· BMP – standard Windows bitmap;
· Jpeg – Joint Photographic Experts Group format;
· PNG – portable network graphics format
· GIF – Graphics Interchange Format
If File Exists
Action if the specified file exists:
· Rename - saves the file under a different name by adding the number to the file name.
Thus the existing file will be left unchanged.
· Overwrite - overwrites the specified file.
Use necessary parameters if you want to change browser window size before taking a
snapshot.
Keep current size - the window size will not change
Maximize window - action maximizes the browser window before taking a picture (default
value)
Set specified size - specify necessary size of the window
Show full page - the browser calculates the full height of the page and displays the entire
page using the current width
Return to original window size - the action returns previous size of the window after
operation
Load script from file - load Javascript from external text file
Use this text - type the text of script here in text editor
Save result to variable - assign the value of result variable into some user variable. Of
course you have to assign necessary value in the script.
Search of a substring (or of a symbol combination) in a text is the simplest example of using
regular expressions.
General
External Text
Input the name of the text file in which the search will be implemented. Variables can be used.
Specified Text
In this field specify the text in explicit form on which you want to search. You can use
variables.
Pattern (Regular Expression)
Input a regular expression (a phrase mask) for the search in a text. You can find description of
regular expression syntax and manuals on the site http://www.regular-expressions.info/
Save Found Expression to Variable
Input the name of a variable in which you want to save the search result. If the search-for
phrase is found, the search result will be saved in the variable like a standard comma-
separated string. To extract a separate element you need to refer to the variable as an array.
For example:
{MyVar(0)}
{MyVar(1)}
Etc.
The zero element of array is always the search-for phrase as a whole.
The next array elements are sub-expressions in the search-for phrase which are highlighted in
the regular expression by parenthesis (certainly, if there are such). If you didn’t specify any
sub-expressions in the regular expression, the resultant array would consist of a single
element, which is zero element.
Additional options
Case Insensitive
Tries to match the regex without paying attention to case. If set, 'Bye' will match 'Bye', 'bye',
'BYE' and even 'byE', 'bYe', etc. Otherwise, only 'Bye' will be matched. Equivalent to (?i)
modifier. The modifier (?-i) switches off the mode case insensitive.
MultiLine
The ^ (beginning of string) and $ (ending of string) regex operators will also match right after
and right before a newline in the Subject string. This effectively treats one string with
multiple lines as multiple strings. Equivalent to Perl's (?m) modifier. The modifier (?-m)
switches off the mode multiline.
Single Line
Normally, dot (.) matches anything but a newline (\n). With Single Line mode, dot (.) will
match anything, including newlines. This allows a multiline string to be regarded as a single
entity. Equivalent to Perl's (?s) modifier. The modifier (?-s) switches off the mode single line.
Note that MultiLine and Single Line can be used together.
Extended Style
Allow regex to contain extra whitespace, newlines and Perl-style comments, all of which will be
filtered out. This is sometimes called "free-spacing mode".
Anchored
Allows the regex to match only at the start of the subject or right after the previous match.
Ungreedy
Repeat operators (+, *, ?) are not greedy by default (i.e. they try to match the minimum
number of characters instead of the maximum).
No Autocapture
Is a non-capturing group, only named groups will be captured.
Save Offsets to Variables
If you want to determine positions of found expressions from the beginning of a text switch on
this flag and input a variable name, the positions will be saved as a comma-separated string. A
zero element - this is a position of a whole expression. The next elements are positions of
subexpressions. The beginning of a text corresponds to the position 1.
Save Lengths to Variables
If you want to determine the lengths of found expressions (by symbols), switch on this flag
and input the variable name. The lengths will be saved as a comma-separated string. A zero
element is a length of a whole expression. The next elements are lengths of subexpressions.
Text
External Text
Input the name of the text file in which the search will be implemented. Variables can be used.
Specified Text
In this field specify the text in explicit form on which you want to search. You can use
variables.
Replace Mode
· All entries - all matched entries will be replaced
· First entry - the action make replacement only at first entry
· Last Entry - the action make replacement only at last entry
Save Result to Variable
Input a variable name in which you want to put a text after performed replacements.
Additional options
Case Insensitive
Tries to match the regex without paying attention to case. If set, 'Bye' will match 'Bye', 'bye',
'BYE' and even 'byE', 'bYe', etc. Otherwise, only 'Bye' will be matched. Equivalent to (?i)
modifier. The modifier (?-i) switches off the mode case insensitive.
MultiLine
The ^ (beginning of string) and $ (ending of string) regex operators will also match right after
and right before a newline in the Subject string. This effectively treats one string with
multiple lines as multiple strings. Equivalent to Perl's (?m) modifier. The modifier (?-m)
switches off the mode multiline.
Single Line
Normally, dot (.) matches anything but a newline (\n). With Single Line mode, dot (.) will
match anything, including newlines. This allows a multiline string to be regarded as a single
entity. Equivalent to Perl's (?s) modifier. The modifier (?-s) switches off the mode single line.
Note that MultiLine and Single Line can be used together.
Extended Style
Allow regex to contain extra whitespace, newlines and Perl-style comments, all of which will be
filtered out. This is sometimes called "free-spacing mode".
Anchored
Allows the regex to match only at the start of the subject or right after the previous match.
Ungreedy
Repeat operators (+, *, ?) are not greedy by default (i.e. they try to match the minimum
number of characters instead of the maximum).
No Autocapture
This action is in fact a simplified version of RegExp Loop. By means of this action it is possible
to determine if a string (or a text) corresponds to the specified regular expression and also to
extract the first or the last entry.
General
External Text
Input the name of the text file in which the search will be implemented. Variables can be used.
Specified Text
In this field specify the text in explicit form on which you want to search. You can use
variables.
Pattern (Regular Expression)
Input a regular expression (a phrase mask) for the search in a text. You can find description of
regular expression syntax and manuals on the site http://www.regular-expressions.info/
Save TRUE or FALSE to variable
Input the variable name in which you want to save the check result.
Additional options
Case Insensitive
Tries to match the regex without paying attention to case. If set, 'Bye' will match 'Bye', 'bye',
'BYE' and even 'byE', 'bYe', etc. Otherwise, only 'Bye' will be matched. Equivalent to (?i)
modifier. The modifier (?-i) switches off the mode case insensitive.
MultiLine
The ^ (beginning of string) and $ (ending of string) regex operators will also match right after
and right before a newline in the Subject string. This effectively treats one string with
multiple lines as multiple strings. Equivalent to Perl's (?m) modifier. The modifier (?-m)
switches off the mode multiline.
Single Line
Normally, dot (.) matches anything but a newline (\n). With Single Line mode, dot (.) will
match anything, including newlines. This allows a multiline string to be regarded as a single
entity. Equivalent to Perl's (?s) modifier. The modifier (?-s) switches off the mode single line.
Note that MultiLine and Single Line can be used together.
Extended Style
Allow regex to contain extra whitespace, newlines and Perl-style comments, all of which will be
filtered out. This is sometimes called "free-spacing mode".
Anchored
Allows the regex to match only at the start of the subject or right after the previous match.
Ungreedy
Repeat operators (+, *, ?) are not greedy by default (i.e. they try to match the minimum
number of characters instead of the maximum).
No Autocapture
Is a non-capturing group, only named groups will be captured.
Save Found Subexpressions
If you need to save a found expression in a variable, switch on this checkbox and then fill in
the saving parameters. You can save either the first entry or the last one. The found
expression with its subexpressions will be saved as a comma-separated string. A zero element
is the whole expression. The next elements are subexpressions in order.
Example of using
Below is an example of using RegExp COM object in Basic script
Sub Main
obj.Subject = RoboTaskApp.ExpandText("{txt}")
obj.RegExp = RoboTaskApp.ExpandText("{regex}")
res = obj.Match
While res
cnt = obj.SubExpressionCount
s = ""
For i = 0 To cnt
s = s + obj.SubExpression( i ) + Chr(10)
Next i
MsgBox( s )
res = obj.MatchAgain
Wend
End Sub
Also you can make permanent link to RegExpCOM Library in the script. In this case you should
declare the object so:
Members of object
Anchored
Read-Write property, type – Boolean
Get or set anchored mode of object.
Caseless
Read-Write property, type – Boolean
Get or set case insensitive mode of object.
Extended
Read-Write property, type – Boolean
Get or set extended mode of object.
Match
Read-only property, type – Boolean
Find first match. Returns TRUE if expression was found.
MatchAgain
Read-only property, type – Boolean
Find next match. Returns TRUE if expression was found.
Multiline
Read-Write property, type – Boolean
Get or set multiline mode of object.
NoAutoCapture
Read-Write property, type – Boolean
Get or set NoAutoCapture mode
RegExp
Read-Write property, type – String
Get or set regular expression.
Replace
ReplaceAll
Read-only property, type – Long
Replace all matches. Returns the number of replacements.
Replacement
Read-Write property, type – String
The replacement string. Used in Replace and ReplaceAll.
SingleLine
Read-Write property, type – Boolean
Get or set single line mode of object.
SubExpressionCount
Read-only property, type- Long
Returns the number of sub-expressions.
This property can be used only after successful Match or MatchAgain.
Subject
Read-Write property, type – String
Ungreedy
Read-Write property, type – Boolean
Get or set un-greedy mode of object.
4.25 Screenshot
This plug-in unites actions of taking a screenshots, snapshots of necessary window or color of
pixel on the screen or in the window.
Window parameters.
This action allows to use three modes of window selection to take a snapshot:
· Use Window Parameters – search of a window according to parameters (Window
Caption, Window class);
· Use Windows Handle – according to the Handle of the window. Each window in a
system has its unique Handle. It can be got in the loop Window Loop. For example, the
following task can be done: to take all snapshots of windows which have the word
Notepad in their captions.
· Use Current window – to use the current active window.
When using the mode Use Window Parameters, the parameters of the window for a search are
available to the user.
An alternative method is that the application cuts a window image from a desktop snapshot.
But please note that this method cannot get the correct image if the desired window (or part
of the window) is covered by another window or goes beyond the desktop.
You need to ensure the visibility of the window before taking a snapshot.
Window Caption
Switch on this checkbox if you want to use the Window Caption to search a window. Then fill
in the field for the search of the Window Caption. The field can be filled in automatically when
you select the window from the window list. You need to click the button to the right of the
entry field. The usage of variables is allowed.
Window Class
Switch on this checkbox if you want to use the Window Class for a search of a window. Then,
fill in the field for the search of the Window Class. The field can be filled in automatically when
you select the window from the window list. You need to click the button to the right of the
entry field. The usage of variables is allowed.
Window Handle
When using of the mode Use Window Handle, this parameter is available to the user. The
Window Handle identifies the window explicitly. It is convenient to use this mode in the
Window Loop. The loop allows to perform the selection of windows according to necessary
criteria and save the window handle into a variable. By means of the window handle it is
possible to take a snapshot
Capture mode
The action allows to take snapshot of the whole window or of a part of him.
Full Window.
Select this point if you want to take the screenshot of the whole window.
Window Region.
If you want to take the screenshot only of a part of a window, select this point and input the
position data of a rectangular region of the window: Left, Top, Height, Width. You can also
specify the rectangular region on a screenshot interactive clicking the button Select Region on Window
Snapshot.
Picture Format
Snapshot of a window is a graphic image. It can be saved in the different formats:
· BMP – standard Windows bitmap;
· Jpeg – Joint Photographic Experts Group format;
· PNG – portable network graphics format
· GIF – Graphics Interchange Format
· Use Window Handle – according the Window Handle. Each window in a system has the
unique Handle. It can be got in the loop Window Loop. For example, the following task
can be made: to take all screenshots, which have the word Notepad in their captions.
· Use Current window – use the current active window.
Window Caption
Switch on this checkbox if you want to use the Window Caption for a search of a window.
Then, fill in the field for the search of the Window Caption. The field can be filled in
automatically when you select the window from the window list. You need to click the button
to the right of the entry field. The usage of variables is allowed.
Window Class
Switch on this checkbox if you want to use the Window Class for a search of a window. Then,
fill in the field for the search of the Window Class. The field can be filled in automatically when
you select the window from the window list. You need to click the button to the right of the
entry field. The usage of variables is allowed.
Window Handle
When using of the mode Use Window Handle, this parameter is available to the user. The
Window Handle identifies the window explicitly. It is convenient to use this mode in the
Window Loop. The loop allows to perform the selection of windows according to necessary
criteria and save the window handle into a variable. By means of the window handle it is
possible to take a snapshot
Coordinates
Specify the coordinates of a pixel from the top left corner of a window snapshot. The usage of
variables in the expression is allowed. You can specify the coordinates interactive clicking the
button Select Point.
4.25.3 Screenshot
The action allows to take a snapshot of the whole screen (or of a part of it) and save it into a
file.
Select monitor
There are two options
Use primary monitor - take a snapshot from primary monitor
Monitor number - specify the number of monitor (from 0)
Full screen
Select this option if you need to take the snapshot of a whole screen.
Screen region
Select this option if it is necessary to save the snapshot of a rectangular region of the
screen.
Determine the coordinates of the region: Left, Top, Height, Width.
You can determine the coordinates of a rectangular region interactive clicking the button
"Select Region on Screenshot".
Picture Format
Screenshot is a graphic image. It can be saved in the different formats:
· BMP – standard Windows bitmap;
· Jpeg – Joint Photographic Experts Group format;
· PNG – portable network graphics format
· GIF – Graphics Interchange Format
Coordinates
Specify the coordinates of a pixel. The usage of variables is allowed. You can specify the
coordinates interactive in the picture clicking the button "Select Point on the screen".
Tolerance
Specify the necessary tolerance to compare two colors. On default, it is16. 0 corresponds to
the exactly coincidence.
255 is the maximum value. When a value is maximum the result of comparing of any two colors
is TRUE.
Source tab
When you determine parameters of an action, at first you need to specify the source of a
picture:
· Window - This is a separate window. All coordinates of pixels will be determined
concerning the upper left corner of this window. If you have selected the window as a
source, you need to specify the window parameters.
· Entire screen - This is a screen with all visible windows.
The window parameters are similar to the parameters in the actions Window Snapshot 396 ,
Window Command 257 , Window Size and Position 263 , Window Elements loop 266 .
· Use Window parameters - Use the Window Caption and the Window Class to look for
the necessary window.
· Use Window Handle - This is a search for a window by a handle. The handle can be got
in the loop Window Loop, from the trigger Wait for Window or some other way.
· Use current window - This is a current window in a moment of the executing of the
action. This mode does not require any additional parameters.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Class Name Must Match Exactly.
If you need the exact coincidence of a window class, switch on this checkbox. Usually it is
worthwhile to search by the whole class name, because a window class is permanent and does
not change its value during the "life" of the window, unlike a caption.
Window Handle.
Input the expression containing a window handle. This parameter is used for the mode Use
Window Handle. A window handle is just a number, identifier of a window in a current session
of system work.
Pixels tab
You need to specify the pixel set for checking on this tab.
What to expect
· Wait for pixels to appear (default) – the action will wait for the appearance of pixels listed
below. If the required pixels are already present and the condition is met, then no waiting
occurs, and the task execution proceeds to the next step.
· Wait for pixels to disappear – the action will wait for the disappearance of the listed pixels.
If the required pixels are already absent, then the waiting is not performed.
List of pixels
You can edit a list using the buttons Add, Edit and Remove.
By means of an edit window you can change pixel parameters both manually and by means of
interactive instruments.
Pixel parameters:
X, Y - It is coordinates of a pixel from the left corner. If a source of a picture is a window,
coordinates are determined from the upper left corner of the screen window.
Pattern color - This is a pattern of the color with which the action will compare the color of a
pixel. Color is just a number. For comfort it is written in hexadecimal.
For example, $0066FF00 or $66FF00.
In hexadecimal you can write color using 6 symbols (as RGB): the first couple (younger) is red,
the second couple is green, the third couple (elder) is blue color.
Tolerance - This is an accuracy of color coincidence. The error can be changed from 0 to 255
(in hex from 00 to FF). When it is 0, it is exact color coincidence. When it is 255, it is a
coincidence with any color.
Tolerance is an acceptable difference between two colors for any component RGB (Red –
Green - Blue). Every component of the color can be changed from 0 to 255 (from 00 to FF in
hexadecimal).
On default, the tolerance is 16.
Waiting
There are two options:
· Timeout - It is waiting time in seconds. On default, it is 60 seconds.
If the timeout is over you can specify an action:
o Raise Timeout error - this is default option
o Set True or False to variable - in this case the task will continue work without
error.
· Infinity - This is not limited waiting time. Pay attention, if you specify an illegal condition
of the checking of pixels, the task can "hang down" and it can be finished by means of
the function "Kill task" only.
Source image
You can choose
· From screen - you must specify coordinates of area on your desktop. Also you can select
area interactively, just press "Select area from screen" button.
· From clipboard - in this case system clipboard must contain an image. Otherwise the
action will throw an error.
· From file - the action load the image from file.
Find color
Specify the necessary color. You can specify the color as an ordinary number or in a
hexadecimal look (beginning from the symbol $). The color can be selected from a palette or
from any point of a screen clicking the button to the right of the edit field. The usage of
variables is allowed.
Tolerance
Specify the necessary tolerance to compare two colors. On default, it is 16. 0 corresponds to
the exactly coincidence.
255 is the maximum value. When a value is maximum the result of comparing of any two colors
is TRUE.
If the required window has not been found to the moment of a start of a task, the action
generates the error "Window is not found"
Source tab
When you determine parameters of an action, at first you need to specify the source of a
picture:
· Window - This is a separate window. All coordinates of pixels will be determined
concerning the upper left corner of this window. If you have selected the window as a
source, you need to specify the window parameters.
· Entire screen - This is a screen with all visible windows.
The window parameters are similar to the parameters in the actions Window Snapshot 396 ,
Window Command 257 , Window Size and Position 263 , Window Elements loop 266 .
· Use current window - This is a current window in a moment of the executing of the
action. This mode does not require any additional parameters.
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Class Name Must Match Exactly.
If you need the exact coincidence of a window class, switch on this checkbox. Usually it is
worthwhile to search by the whole class name, because a window class is permanent and does
not change its value during the "life" of the window, unlike a caption.
Window Handle.
Input the expression containing a window handle. This parameter is used for the mode Use
Window Handle. A window handle is just a number, identifier of a window in a current session
of system work.
Pixels tab
You need to specify the pixel set for checking on this tab.
List of pixels
You can edit a list using the buttons Add, Edit and Remove.
By means of an edit window you can change pixel parameters both manually and by means of
interactive instruments.
Pixel parameters:
X, Y - It is coordinates of a pixel from the left corner. If a source of a picture is a window,
coordinates are determined from the upper left corner of the screen window.
Pattern color - This is a pattern of the color with which the action will compare the color of a
pixel. Color is just a number. For comfort it is written in hexadecimal.
For example, $0066FF00 or $66FF00.
In hexadecimal you can write color using 6 symbols (as RGB): the first couple (younger) is red,
the second couple is green, the third couple (elder) is blue color.
Tolerance - This is an accuracy of color coincidence. The error can be changed from 0 to 255
(in hex from 00 to FF). When it is 0, it is exact color coincidence. When it is 255, it is a
coincidence with any color.
Tolerance is an acceptable difference between two colors for any component RGB (Red –
Green - Blue). Every component of the color can be changed from 0 to 255 (from 00 to FF in
hexadecimal).
On default, the tolerance is 16.
[section1]
var1=value1
var2=value2
[section2]
var1=value1
var2=value2
[section3]
var1=
var2=
The file consists of sections, which are enclosed in square brackets. The section names must
be unique and must not be repeated. Each section contains parameters that consist of a name
and a value and are separated by an "=" (equal) character. Parameter names must be unique
within their section. Values can be empty, i.e. a blank line after the "equal" character.
Section names, parameter names and parameter values must be single-line. Multiline values
can be combined into a single line by using a delimiter line when saving. During reading such
values can be restored to multiline values again. For example, string1{eol}string2{eol}string3,
where {eol} is the separator.
It is still common practice to use INI files to save/read local configurations, which (in contrast
with the registry) can be copied and moved around.
General
INI section
The name of a section. If absolute path is given in file name and file exists, can be selected
existing name from dropdown list.
Value name
Parameter name. If absolute path is given in file name and file exists, can be selected existing
name from dropdown list.
Default value
The default value that will be saved in a variable, if the specified parameter does not exist.
Advanced
The INI file name, INI section, Value name fields can contain both absolute values and
variables that will be replaced by its value when the action is performed.
General
INI section
The name of a section. If absolute path is given in file name and file exists, can be selected
existing name from dropdown list.
Value name
Parameter name. If absolute path is given in file name and file exists, can be selected existing
name from dropdown list.
Write value
Enter the value to write.
Advanced
The INI file name, INI section, Value name fields can contain both absolute values and
variables that will be replaced by its value when the action is performed.
INI section
The name of a section. If absolute path is given in file name and file exists, can be selected
existing name from dropdown list.
Value name
Parameter name. If absolute path is given in file name and file exists, can be selected existing
name from dropdown list.
INI section
The name of a section. If absolute path is given in file name and file exists, can be selected
existing name from dropdown list.
Section name
Specify the name of the section where you want to list the values
Name
The name of a node. This is an identifier of the node. It can contain Latin symbols and
numbers without any whitespace or another delimiters.
Text
This is a value of a node. Every node can contain either some value or inserted nodes.
Attributes
Attributes of a node. Every identifier has the name and the value. The composition of
attributes depends on purpose of a documents and defined tasks. The order of attributes does
no matter. A node can be without any attributes.
Enter the name of a variable into which created node will be saved. The node will be saved as
a text in the XML format.
Also the node can be specified by means of the variable in which the node is written down. For
example:
{record}
Specify the child node which is necessary to add into parent node. The node can be also
specified as a XML text or by means of variables.
General parameters
XML File
Read XML from file. This option is recommended if XML contain encoded strings. When the
action reads it from file it decodes all encoded strings automatically.
The most popular UTF-8 encoding. XML file should have corresponding header. For example:
<?xml version="1.0" encoding="utf-8"?>
XML
Specify the XML text which you want to analyze. The text can be specified explicitly or with
using of variables.
With Subfolders
If you want to enumerate all nodes including nested nodes, switch on this checkbox.
On this tab one can specify the attributes which values are necessary to be saved into
variables. It is necessary to specify parameters for every attribute:
· Name - The attribute name
· Variable - The name of the variable in which it is necessary to save the attribute value.
· Default value - The value which is written into a variable if the attribute is absent.
XML
Specify the text of the XML document which you want to save. The text can be specified
explicitly or with using of variables.
File Name
Specify the name of the file into which is necessary to save the XML document.
If File Exists
The action if the specified file exists already:
· Rename - The file will be saved under a different name
· Overwrite - The file will be overwritten.
· Raise an Error - The action generates the error File Already Exists.
General parameters
XML File
Read XML from file. This option is recommended if XML contain encoded strings. When the
action reads it from file it decodes all encoded strings automatically.
The most popular UTF-8 encoding. XML file should have corresponding header. For example:
<?xml version="1.0" encoding="utf-8"?>
XML
Specify the XML text which you want to analyze. The text can be specified explicitly or with
using of variables.
Order number
Enter the order number of node. Default is 0 (first node). XML file can contain nodes with the
same names. Like records in database table. By default the action returns first matched
element but you can specify another ordinal.
On this tab one can specify the attributes which values are necessary to be saved into
variables. It is necessary to specify parameters for every attribute:
· Name - The attribute name
· Variable - The name of the variable in which it is necessary to save the attribute value.
· Default value - The value which is written into a variable if the attribute is absent.
Toolbar buttons
Save and Exit - saves task settings and closes the editor
Cancel - closes the editor without saving
Open - opens the script text from the external text file and places it into the script text
editor.
Save as - saves the script text to an external file.
Add var - calls the variable selection window and places the variable call at the current cursor
position.
Script Mode
Expand variables
Check this box if you want to expand RoboTask variables in the script body before running the
script. With variables, you can create dynamic text depending on different conditions.
Script
In "Execute inline script" mode, it is a script text editor.
In "Execute External script" mode, it is a field to enter the file name and a file selection button.
Options
Python interpreter
· Use Embedded Python - use the default Python engine that comes with RoboTask.
· Use Specified Python - use your Python package. You can have several Python packages
configured for different tasks.
RoboTask object is similar in functionality to the built-in COM object RoboTaskApp 615 , but
there are major differences. Please note that Python 438 is case-sensitive.
Here is an example of how to use the object:
The basic Python package doesn't contain a Windows COM object support module. However,
you can use your Python with pywin32 support (see here) and use the RoboTaskApp 615 object
directly. Code example:
RoboTask()
Constructor.
Creates RoboTask object.
Use:
rt = RoboTask()
version
Property.
task_count
Property.
Returns the number of registered tasks in RoboTask.
expand_text(text)
Method.
Expands a string containing RoboTask variables and returns it.
For example, expression
rt.expand_text('Date and time now: {DateTimeToFormat({DateTime},yyyyy-mm-dd
hh:nn:ss)}')
Will return a value like this:
Date and time now: 2021-04-01 17:57:35
log(text)
Method.
Outputs the specified text to the task log in user message mode.
log_info(text)
Method.
Outputs the specified text in the log in system message mode.
log_warning(text)
Method.
Outputs the specified text in the log in warning mode.
log_error(text)
Method.
Outputs the specified text to the task log in error message mode
add_user_var(name, value)
Method.
Creates RoboTask variable with NAME name and VALUE value.
set_user_var(name, value)
Method.
Sets the VALUE to RoboTask variable with name NAME.
del_user_var(name)
Method.
Deletes RoboTask variable named NAME.
task_info(num)
Method.
Returns task information by number or name (external name).
Method returns dictionary with fields:
· name - task name (title).
· ext_name - external name. You can use this name to refer to the task in the script
· enabled - True or False
· state - task state. Can have 5 values:
manual - the task has no triggering events, or its triggering events are disabled (see
the enabled property). It waits to be run manually or from another task;
idle - the task has some enabled triggering events. It waits to be run automatically,
disabled - the task is disabled while editing,
running - the task is started and in progress,
stopped - the task received the stop command, but it is yet running. After the task is
completely stopped, its status becomes either "manual" or "idle".
current_task()
Method.
Returns information about the current task.
The result is exactly the same as task_info method except that it returns information about
the current task.
stop_task(ext_name)
Method.
Stops task with a specified number or External Name
Note that RoboTask only sends a signal to stop the task. The task will stop when the step
that is currently in progress is completed.
enable_task(ext_name)
Method.
Changes task state by number or External Name to "enabled" and starts all "enabled" task
triggers.
disable_task(ext_name)
Method
Changes task state by number or External Name to "disabled" and stops all active task
triggers.
service_mode
Property
Returns logical value.
True - RoboTask is running in service mode.
False - RoboTask is running in normal app mode.
window_handle
Property
Returns the RoboTask's window handle that receives system messages.
Toolbar buttons
Save and Exit - saves task settings and closes the editor
Cancel - closes the editor without saving
Open - opens the script text from the external text file and places it into the script text
editor.
Save as - saves the script text to an external file.
Add var - calls the variable selection window and places the variable call at the current cursor
position.
Script Mode
Expand variables
Check this box if you want to expand RoboTask variables in the script body before running the
script. With variables, you can create dynamic text depending on different conditions.
Script
In "Execute inline script" mode, it is a script text editor.
In "Execute External script" mode, it is a field to enter the file name and a file selection button.
Options
Node.js interpreter
· Use Embedded Node.js - use the default Node.js engine that comes with RoboTask.
· Use Specified Node.js - use your Node.js package. You can have several Node.js
packages configured for different tasks.
The RoboTask object for node.js is similar in functionality to the built-in COM object
RoboTaskApp 615 , but there are major differences. Note that the JavaScript/node.js language is
case-sensitive.
Example of the object usage:
The basic JavaScript/Node.js package also doesn't support Windows COM objects. You can
use your node.js package with win32ole installed. In this case, you will be able to use the
built-in RoboTask.App 615 object directly.
RoboTask()
Constructor.
Creates RoboTask object.
Use:
rt = RoboTask()
autoDisconnect
Read-write property
Timeout in seconds. Timeout of automatic disconnection from RoboTask.
0 means permanent connection. In this case, the script won't finish until disconnect() is
executed. The default is 3 seconds.
When calling methods or properties of the RoboTask object, the connection is automatic.
connect()
Method.
Connecting to the RoboTask
disconnect()
Method.
Disconnecting from RoboTask
connected
Read-only property
Returns RoboTask connection status: True or False
log(text)
Method.
Outputs the specified text to the task log in user message mode.
logInfo(text)
Method.
Outputs the specified text in the log in system message mode.
logWarning(text)
Method.
Outputs the specified text in the log in warning mode.
logError(text)
Method.
Outputs the specified text to the task log in error message mode
expandText(text)
Method.
Expands a string containing RoboTask variables and returns it.
For example, expression
rt.expand_text('Date and time now: {DateTimeToFormat({DateTime},yyyyy-mm-dd
hh:nn:ss)}')
Will return a value like this:
Date and time now: 2021-04-08 16:33:21
addUserVar(name, value)
Method.
Creates RoboTask variable with NAME name and VALUE value.
setUserVar(name, value)
Method.
Sets the VALUE to RoboTask variable with name NAME.
delUserVar(name)
Method.
Deletes RoboTask variable named NAME.
version
Property.
Returns dictionary with fields:
plain - RoboTask text version. For example, "8.3"
major - major version (8)
minor - minor version (3)
taskCount
Property.
Returns the number of registered tasks in RoboTask.
taskInfo(num)
Method.
Returns task information by number or name (external name).
Method returns dictionary with fields:
· name - task name (title).
· ext_name - external name. You can use this name to refer to the task in the script
· enabled - True or False
· state - task state. Can have 5 values:
manual - the task has no triggering events, or its triggering events are disabled (see
the enabled property). It waits to be run manually or from another task;
idle - the task has some enabled triggering events. It waits to be run automatically,
disabled - the task is disabled while editing,
running - the task is started and in progress,
stopped - the task received the stop command, but it is yet running. After the task is
completely stopped, its status becomes either "manual" or "idle".
currentTask
Property.
Returns information about the current task.
The result is exactly the same as taskInfo method except that it returns information about the
current task.
startTask(ext_name, params)
Method.
Start task by number or External Name.
Parameters
· ext_name - task number or external name
· params - parameters of the task to be launched. Empty string by default. Parameters
can be set as text, one parameter per line :
parameter_name=parameter_value
runTask
Alias of startTask method
stopTask(ext_name)
Method.
Stops task with a specified number or External Name
Note that RoboTask only sends a signal to stop the task. The task will stop when the step
that is currently in progress is completed.
enableTask(ext_name)
Method.
Changes task state by number or External Name to "enabled" and starts all "enabled" task
triggers.
disableTask(ext_name)
Method
Changes task state by number or External Name to "disabled" and stops all active task
triggers.
serviceMode
Property
Returns logical value.
True - RoboTask is running in service mode.
False - RoboTask is running in normal app mode.
windowHandle
Property
Returns the RoboTask's window handle that receives system messages.
You can use the built-in RoboTaskApp COM object 615 to communicate with RoboTask. For
example:
For a PowerShell script, the current ThreadId of the task is passed through the
ROBOTASK_SCRIPT_ID environment variable.
Example of the script:
Toolbar buttons
Save and Exit - saves task settings and closes the editor
Cancel - closes the editor without saving
Open - opens the script text from the external text file and places it into the script text
editor.
Save as - saves the script text to an external file.
Add var - calls the variable selection window and places the variable call at the current cursor
position.
Script Mode
There are two options
· Execute inline script - execute the script you have written in the script editor. In this
case, you will see the text editor.
Expand variables
Check this box if you want to expand RoboTask variables in the script body before running the
script. With variables, you can create dynamic text depending on different conditions.
Script
In "Execute inline script" mode, it is a script text editor.
In "Execute External script" mode, it is a field to enter the file name and a file selection button.
Options
Enter the variable name to save the script exit code. By default, the exit code is 0, but it can
be changed in the script.
PowerShell
Path to PowerShell - empty by default. This means tan you use system default PowerShell
utility. But you can use alternate PowerShell and specify path to it. (for example PWSH.EXE)
function LogMessage(AMessage)
The function outputs a message to a log. In edit mode of a script, the function outputs a
message to the log of the editor. When a task works, a message is output to a log of the task
in the mode User Message.
AMessage - the string to output
function include(ScriptFileName)
This function returns the text of specified script file.
ScriptFileName – The name of file which is necessary to load.
You can execute this text in your script. Just put these into you script:
for VB Script 462 action use
execute include("d:\myscripts\script.txt")
function Pause(AMilliseconds)
Pauses and stops execution of the script for the specified time.
AMilliseconds - pause time in milliseconds.
function Messagebox(AMessage)
Displays a dialog box with the specified message
AMessage - the message as a string
function RoboTaskApp()
This function returns the COM object RoboTask. This object allows to use some functions of
the RoboTask directly from a script. The description of the object is in the chapter
"RoboTaskApp Object" 615 .
4.28.5 JS script
This action allows to perform a program, which is written in JavaScript. Notice that the
languages Java and JavaScript are not the same, although they are very alike. The
documentation for the language can be read on the Microsoft site:
http://msdn.microsoft.com/en-us/library/hbxc2t98(v=vs.84).aspx
The action editor is a specialize text editor adapted for editing a program code.
Popup proposals.
When pressing the Ctrl-Space, a popup menu with some functions and objects of JavaScript
shows up on the screen. One can choose a necessary point from the list and then the editor
will insert a proper line/string into a text.
If you began to enter a function name and pressed the Ctrl-Space, only alternatives
corresponding to the input line will be left in the popup menu.
Autocomplete.
This function allows to insert standard language constructions into a text automatically. For
this you need to enter 2-5 key constructions (identifier of construction) and press the
combination Ctrl-J. The editor inserts the whole construction instead of the key word.
The editor supports the next constructions:
Interface
Additional options
Expand Variables in the script - If to switch on this mode, the RoboTask expands all inserts of
variables in a text before running of the script.
Save Final script into variable – If it is necessary to monitor the final text of the script, switch
on this checkbox and enter the variable name. This mode is need only for control and
checkout. The fact of the matter is that the substitution of variable values can break down
the syntax of a script text. By means of this mode it is possible to get the final script and
analyze it if it is necessary.
The field of a log is under the editor. The messages about runtime errors of the script are
output into this field. Also the text of messages LogMessage is output here.
Run script
Running of a script from the editor to test. If a runtime error arises, you can see a message
about the error in the field of the edit log.
Help
Activation of a help system.
4.28.6 JS Evaluate
This action allows to calculate an expression value and then save it into a variable. The
expression has to be written according to the syntax of JS language. The documentation for
the language can be read on the Microsoft site: http://msdn.microsoft.com/en-
us/library/hbxc2t98(v=vs.84).aspx
The action also allows to connect the function library from an external file or directly in an
additional script.
For example, try to calculate the expression
sum(5,6) + multi(3,4)
And we get the error. The JavaScript language doesn't contain functions sum and multi.
To solve this, it is possible to specify a little library of user functions:
function sum(a, b)
{
return a+b;
}
function multi(a, b)
{
return a*b;
}
In this case the action calculates the result without any troubles. The given example is too
simple and is cited for the demonstration solely.
Another example. Calculate the factorial of a number. Such function is absent in JavaScript.
But it is easy to evade. It takes only to create the simply function:
function factorial(a)
{
if (a>30)
{ //this is synthetic limitation
General Tab
Expression To Evaluate
Write down the expression whose value needs to be calculated. The expression has to be
made according to the syntax of JavaScript.
Additional Functions
4.28.7 VB Script
This action allows to perform a program, which is written in VB Script. Notice that the
languages Visial Basic and VB Script are not the same, although they are very alike. The
documentation for the language can be read on the Microsoft site:
http://msdn.microsoft.com/en-us/library/t0aew7h6(v=vs.84).aspx
The action editor is a specialize text editor adapted for editing a program code.
Popup proposals.
When pressing the Ctrl-Space, a popup menu with some functions and objects of VB Script
shows up on the screen. One can choose a necessary point from the list and then the editor
will insert a proper line/string into a text.
If you began to enter a function name and pressed the Ctrl-Space, only alternatives
corresponding to the input line will be left in the popup menu.
Autocomplete.
This function allows to insert standard language constructions into a text automatically. For
this you need to enter 2-5 key constructions (identifier of construction) and press the
combination Ctrl-J. The editor inserts the whole construction instead of the key word.
The editor supports the next statements:
Identifier Description Insert statement
do "do" loop do
loop |
next
for Simple "for" loop for i=0 to | step 1
next
func Function declaration function |()
template
end Function
if Simple "IF" if | then
end if
ife IF .. Else stetement if | then
else
end if
select Select case statement select case |
case
case
case
end select
sub Sub procedure sub |()
declaration
end sub
while "While" loop while |
wend
with "With" statement with |
end with
Interface
Additional options
Expand Variables in the script - If to switch on this mode, the RoboTask expands all inserts of
variables in a text before running of the script.
Save Final script into variable – If it is necessary to monitor the final text of the script, switch
on this checkbox and enter the variable name. This mode is need only for control and
checkout. The fact of the matter is that the substitution of variable values can break down
the syntax of a script text. By means of this mode it is possible to get the final script and
analyze it if it is necessary.
The field of a log is under the editor. The messages about runtime errors of the script are
output into this field. Also the text of messages LogMessage is output here.
Run script
Running of a script from the editor to test. If a runtime error arises, you can see a message
about the error in the field of the edit log.
Help
Activation of a help system.
4.28.8 VB Evaluate
This action allows to calculate an expression value and then save it into a variable. The
expression has to be written according to the syntax of VB script language. The
documentation for the language can be read on the Microsoft site:
http://msdn.microsoft.com/en-us/library/t0aew7h6(v=vs.84).aspx
The action also allows to connect the function library from an external file or directly in an
additional script.
For example, try to calculate the expression
sum(5,6) + multi(3,4)
And we get the error. The VB Script language doesn't contain functions sum and multi.
To solve this, it is possible to specify a little library of user functions:
function sum(a, b)
sum = a + b
end Function
function multi(a, b)
multi = a * b
end function
In this case the action calculates the result without any troubles. The given example is too
simple and is cited for the demonstration solely.
Another example. Calculate the factorial of a number. Such function is absent in VB Script. But
it is easy to evade. It takes only to create the simply function:
function factorial(a)
if a > 30 then
'this is synthetic limitation
err.raise 1, , "Parameter more than 30"
end if
res = 1
for i = 1 to a
res = res * i
next
factorial = res
end function
Expression To Evaluate
Write down the expression whose value needs to be calculated. The expression has to be
made according to the syntax of VB Script.
4.29 Excel
This group of actions is for working with MS Excel documents. All actions ensure the work by
means of application MS Excel. Thereby, the MS Office package must have been installed on
your computer.
File Name
Specify the file name. Usage of variables is permitted.
Worksheet
Specify the name or the number of a worksheet of a document. The ordinal number begins
from 1.
List of Cells
The list of cells and variables. The coordinates of every cell can be specified with two ways:
· In a style A1, that is an address of a column is written with letters but an address of a
row is written with numbers. For example: C3, D5, BD15.
The next column after Z is the column AA, AB, etc.
· In a style R1C1. After the letter R is the number of a row beginning from 1, after the
letter C is the number of a column beginning from 1.
Each cell corresponds to the variable name in which the action saves the cell value. The
variable name can be specified in an explicit form or by using of another variables.
Worksheet
Specify the name or the number of a document worksheet. The ordinal number begins from 1.
List of Cells
The list of cells and variables. The coordinates of every cell can be specified with two ways:
· In a style A1, that is an address of a column is written with letters but an address of a
row is written with numbers. For example: C3, D5, BD15.
The next column after Z is the column AA, etc.
· In a style R1C1. After the letter R is the number of a row beginning from 1, after the
letter C is the number of a column beginning from 1.
Each cell corresponds to the expression which will be written into the cell. The expression is a
string which can be written explicitly or by using of variables.
Format mode
When writing a value to an Excel Spreadsheet cell, the action can change the format of the
cell
· General Format (auto) - automatic default format
· Do not change cell format - keep cell format unchanged
· Set value as text - change the cell format to text
The form for editing of parameters is similar to action editor Excel Get Cells 468 and Excel Set
Cells 469 .
Worksheet
Specify the name or the number of a document worksheet. The ordinal number begins from 1.
List of Cells
The list of cells and format strings. The coordinates of every cell can be specified with two
ways:
· In a style A1, that is an address of a column is written with letters but an address of a
row is written with numbers. For example: C3, D5, BD15. The next column after Z is the
column AA, etc.
· In a style R1C1. After the letter R is the number of a row beginning from 1, after the
letter C is the number of a column beginning from 1.
Each cell corresponds to the format string. The format string is a string which can be written
explicitly or by using of variables.
· Then select the Custom in the list Category. The cursor will point to a current format
string in the field Type (see screenshot).
Macro Name
Specify the name of the macro which is necessary to run. You can use variables.
For example:
TestMacro
If you need to pass some cell value to the macros use Evaluate function with cell
address.
For example:
'TestMacro(evaluate("$A$1"))'
or
'TestMacro evaluate("$A$1")'
File Format
There are two variants available:
· Keep format the same
· Save as CSV
If File Exists
The action if such file exists already:
· Rename – saves under the different name, adds a number to the file name.
· Overwrite – overwrites the file if it is possible.
Mode
· Set mute ON – turn off the sound
· Set mute OFF – turn on the sound
· Toggle mute status – switch the mute status
·
4.31 DataBase
The actions for working with a database are collected in this group. In contrast to actions SQL
Query 96 и Dataset Loop 240 , all these actions work in one session. At first you have to open a
database (DB Open 477 ), perform necessary actions and then close the database (DB Close 478 ).
Thereby, you can execute a complex sequence of actions with a database as a single block.
The actions SQL Query 96 and Dataset Loop 240 open their session for processing query and
serve to perform single queries.
The group of actions DataBase works on basis of the mechanism ADO (ActiveX Data Objects)
and can work with any database if the system has a proper driver.
4.31.1 DB Open
The action opens a database. All actions with a database must begin from opening the
database. If you try to process any actions with the database without its opening , you will
get the error Database Is Not Opened.
Every task permits only one opened database (DB). If you need open another DB, you should
close the previous session.
If you try to open the DB when the session is opened, the action will give the warning
Database Connection Is Already Opened and ignores the operation of opening.
Connection String
Input a connection string to connect to a database. You can use a system constructor
pressing the button on the right of the entry field.
User ID
Input a new user name.
Password
Input a password.
4.31.2 DB Close
Closes the currently work session with the database. Any additional parameters are not
required.
General
SQL Query
Input an SQL query according to syntax. You can use parameters. It is necessary to put the
colon (:) in front of the parameter name.
For example:
Select * from dept where city = :citypmt
citypmt is a parameter of the query.
SQL Parameters
Sometimes using of parameters of a query is more convenient instead of generation of the
query by means of variables. For example, when the variable value contains quotes or another
special symbols. If you use variables (or macro substitution) when forming SQL inquiry,
availability such symbols can "break" the syntax of the query and you will get a runtime error.
Parameters SQL are designated in the inquiry by means of colon (:) before the parameter
name.
For example:
Select * from employee where hiredate > :dt and salary >= :amount
:dt and :amount are parameters of the query.
Parameters can be several types:
· String – any string
· Integer – an integer number
· Float – a real number or the number with a floating dot.
Add
Add a parameter manually. You will be proposed to type or select from the list the parameter
name, select the parameter type and input an expression as the parameter value.
Using of variables in a parameter name and in its value is allowed. The RoboTask will substitute
variable values instead of variables before performing the SQL.
Edit
Edit the properties of the selected parameter.
Delete
Delete the selected parameter from the list.
If you specify the parameter which is absent in the query, the action ignores this parameter
when performing and writes the proper warning in the log of the task.
Timeout
There you can change the time of waiting of a query process. On default, timeout is 60
seconds. But in case of need, it is possible to change this parameter.
4.31.4 DB Loop
This action is similar to the Dataset Loop 240 . The difference is that the action works within
already open session.
You need to use as a query the expressions which return a set of records or strings. For
instance, queries SELECT. DB Loop sorts out the whole set of records in a loop sequentially.
Important
You must be familiar with SQL syntax to use this action.
General
SQL Query
Enter the query string in SQL syntax.
SQL parameters
Sometimes using of parameters of a query is more convenient instead of generation of the
query by means of variables. For example, when the variable value contains quotes or another
special symbols. If you use variables (or macro substitution) when forming SQL inquiry,
availability such symbols can "break" the syntax of the query and you will get a runtime error.
Parameters SQL are designated in the inquiry by means of colon (:) before the parameter
name.
For example:
Select * from employee where hiredate > :dt and salary >= :amount
:dt and :amount are parameters of the query.
Add
Add a parameter manually. You will be proposed to type or select from the list the parameter
name, select the parameter type and input an expression as the parameter value.
Using of variables in a parameter name and in its value is allowed. The RoboTask will substitute
variable values instead of variables before performing the SQL.
Edit
Edit the properties of the selected parameter.
Delete
Delete the selected parameter from the list.
If you specify the parameter which is absent in the query, the action ignores this parameter
when performing and writes the proper warning in the log of the task.
Large fields
You can tune up the saving of the field value to file on this tab. As a rule, the necessity of
export to file exists for large fields (BLOB, CLOB, Memo). These fields do not have a fixed size
and can contain unexpectedly big information content. The BLOB field can contain a binary
massive which cannot be saved to RoboTask variable.
The action also allows you to save to a text file a value of any type, not only large fields.
Timeout
There you can change the time of waiting of a query process. On default, timeout is 60
seconds. But in case of need, it is possible to change this parameter.
4.31.6 DB Commit
The action saves all changes of a data base from the beginning of a transaction. Other users
of the data base can see all the changes
The action do not require any additional parameters.
4.31.7 DB Rollback
The action cancels all changes of a data base from the beginning of a transaction.
The action do not require any additional parameters.
CSV data
CSV source
There are two options to choose from:
· File: Read data from a file. Specify the file name below and select the encoding format.
The most popular encodings are available for selection.
· Text: Load data directly from the specified text. You can provide the text explicitly or
using variables.
If CSV data has been loaded previously in the previous task steps, the data will be
overwritten. You can only use one set of CSV data within one task.
Source Format
General
Enter the variable names to store the data. Fields can be left empty. In that case, the
information will not be saved.
Source
CSV Source
There are three options to choose from:
· Previous CSV actions - use the data opened in previous actions. If you need to load new
CSV data, select the File or Text options.
· File - read data from a file. Specify the file name below and select the encoding format.
The most popular encodings are available for selection.
· Text - load data directly from the specified text. You can provide the text explicitly or
using variables.
Note that if you choose File or Text as the source and CSV data has been loaded previously in
the previous task steps, the data will be overwritten. You can only use one set of CSV data
within one task.
Source Format
Editing the CSV format for loading is available if File or Text is selected as the source.
General
Action
Column addition mode:
· Append column - add the column at the end.
· Insert column - insert the column at the specified position. Note that the column
numbering starts from 1. If the specified position is less than 1 or greater than the number
of columns, the column will be added at the end.
Column name
Enter the name of the new column.
Fill mode
Fill mode for the new column. Three options are available:
· Empty value
· Sequence number - the action fills the field with the row number, starting from 1.
· Static value - the action fills all entries of the new field with the specified value.
General
General
Sort by column
Specify the column number to sort the data by.
Sort direction
Select the sorting direction: ascending or descending.
Sort Mode
Comparison mode for sorting: as strings or as numbers.
Case Sensitive
Enable this toggle if you want to compare strings in a case-sensitive manner.
General
Column number
Specify the column number to be moved. Column numbers start from 1.
Move to
Specify the new position for the column.
General
Cells list
This is a list of fields in the data array that need to be read, specified by their coordinates
(row, column). For each cell, you should indicate the variable in which the read value should
be stored. The row and column numbers start from 1.
General
Cells list
This is a list of fields in which new values should be written, specified by their coordinates
(row, column). For each cell, you should indicate the value to be written. The row and column
numbers start from 1.
Data to add
CSV source
There are two options to choose from:
· File: Read data from a file. Specify the file name below and select the encoding format.
The most popular encodings are available for selection.
· Text: Load data directly from the specified text. You can provide the text explicitly or
using variables.
If CSV data has been loaded previously in the previous task steps, the data will be
overwritten. You can only use one set of CSV data within one task.
Specify how many lines need to be ignored from the beginning of the text.
Advanced
Merge mode
There are four modes:
· Intersection - elements that are in both lists
· Union - all elements from both lists. Default option
· Subtraction - elements from the 1st list and missing from the 2nd list (1-st list minus 2-nd
list)
· Symmetric difference - the union minus intersection
General
Filter options
Filter mode:
Choose the condition combination mode: AND (all listed conditions must be met) or OR (at
least one condition must be met).
Filter list
· Each condition corresponds to a specific column.
· Substring or regular expression - The condition string. By default, the action checks for
the presence of the specified substring in the field value. You can indicate that the action
should use this expression as a regular expression. Regular expressions are more flexible for
defining conditions but require some skills.
· Case sensitive - yes or no
· Regular expression - yes or no. How to use condition string: as regular expression (yes) or
as substring (no)
General
Filter options
Filter mode:
Choose the condition combination mode: AND (all listed conditions must be met) or OR (at
least one condition must be met).
Filter list
General
Case sensitive
Enable this checkbox for case-sensitive comparison.
General
Save to variable
Turn this switch on and specify the variable name to save the CSV text.
Save to file
Turn this switch on and specify the file name to save the CSV text. Also, specify the text
encoding if needed.
Note that UTF-8 is a universal format for any language.
By default, the action suggests keeping the CSV text formatting (delimiter, quotes, etc.). But
you can choose a different format. Simply turn this switch off and specify the new format on
the CSV Format tab.
CSV format
Dataset
Connection string
The database connection string. You can either manually write the connection string or
generate it using the system dialog.
Show password
Show the password in plain text for ease of editing, as the entered string may contain
RoboTask variables.
SQL query
The SQL query text. Please note that the syntax may vary slightly depending on the type of
database.
Query timeout
Timeout for executing an SQL query. The default is 60 seconds. However, sometimes a query
requires more time to execute.
SQL Paramaters
Sometimes it's more convenient to use query parameters instead of generating a query using
variables. For example, when the value of a variable contains quotes or other special
characters. If you use variables (or macro substitution) when forming a SQL query, the
presence of such characters can "break" the syntax of the query and you will get a run-time
error.
Parameters SQL are designated in the inquiry by means of colon (:) before the parameter
name.
For example:
Select * from employee where hiredate > :dt and salary >= :amount
:dt and :amount are parameters of the query.
Parameters can be several types:
· String – any string
· Integer – an integer number
· Float – a real number or the number with a floating dot.
· Boolean – a logical value True or False.
· DateTime – a date and time. The value of such parameter must be defined in current
system format of date and time (see the system regional settings). Notice that using of
date-time can have its own characteristics for different databases. For example, it is
better specify such parameters for the MySQL as a string parameter in the format YYYY-
MM-DD or YYYY-MM-DD hh:nn:ss.
Add
Add a parameter manually. You will be proposed to type or select from the list the parameter
name, select the parameter type and input an expression as the parameter value.
Using of variables in a parameter name and in its value is allowed. The RoboTask will substitute
variable values instead of variables before performing the SQL.
Edit
Edit the properties of the selected parameter.
Delete
Delete the selected parameter from the list.
If you specify the parameter which is absent in the query, the action ignores this parameter
when performing and writes the proper warning in the log of the task.
File name
The name of the CSV file.
Encoding
Choose the desired file encoding. The following popular encodings are available for selection:
· Default – Use the system encoding.
· UTF-7
· UTF-8
· Unicode
· ASCII
· ANSI
CSV format
More details about the structure of the system log can be found in the Microsoft
documentation:
https://learn.microsoft.com/en-us/previous-versions/windows/desktop/eventlogprov/win32-
ntlogevent
GGG: deviation of the time zone from GMT (Greenwich Mean Time) in minutes.
Log file
The source of the log. There are 3 options to choose from:
· Application
· Security – note that administrator privileges are required to read this log. Otherwise, you
will get an empty list.
· System
Additional conditions
You can use additional conditions. Conditions must be in the format of SQL query conditions.
All log fields can be used in the condition. You can also use RoboTask variables in the
condition.
For example:
(SourceName like "RoboTask%") and
(TimeGenerated > "{DateTimeToFormat({DateIncDays(-7)},yyyymmdd)}000000.000000-000")
Events related to RoboTask for the last 7 days.
Or
EventCode = 4004 and
(TimeGenerated > "{DateTimeToFormat({DateIncDays(-40)},yyyymmdd)}000000.000000-000")
When using a field of type datetime in the condition, you must adhere to the string format. For
example, as indicated in the provided examples.
Conditions can be as complex as needed. The main thing is to adhere to the SQL syntax.
Failure to comply with the syntax will result in an "Invalid query" error.
Save to variable
Turn this switch on and specify the variable name to save the CSV text.
Save to file
Turn this switch on and specify the file name to save the CSV text. Also, specify the text
encoding if needed.
Note that UTF-8 is a universal format for any language.
More detailed information about the structure of process information can be found in the
Microsoft documentation:
https://learn.microsoft.com/en-us/windows/win32/cimwin32prov/win32-process
Since there are many fields, you can choose which fields to display. By default, 9 fields are
suggested, which are most commonly used in work:
· CommandLine: The full command line used to launch the application.
· CreationDate: The time when the process was started.
· ExecutablePath: The full path of the process executable file.
Fields
All 45 available fields are listed. Each field can be individually included.
Below the list, there are two buttons:
· Select all: Automatically selects all fields.
· Reset to default: Selects only the default fields.
Additional conditions
For example:
(Name like 'RoboTask%') or ((Name like 'RT%'))
Select processes where the Name field starts with RoboTask or RT.
Save to variable
Turn this switch on and specify the variable name to save the CSV text.
Save to file
Turn this switch on and specify the file name to save the CSV text. Also, specify the text
encoding if needed.
Note that UTF-8 is a universal format for any language.
4.33 Graphics
This set of actions is intended for batch processing of images. In order to process the image in
any way, you need to first open the image 523 , process it, and save this image. If you attempt
to process the image without opening it, you will get an execution error message.
Source
You can choose the image source:
· File
· Clipboard
ImageFile
Specify a file name when a file has been chosen as the image source.
If the file or clipboard does not contain an image, you will get an execution error message.
Destination
Choose the file save destination:
· File
· Clipboard
Image File
Enter the file name if you choose to save to file.
Image Format
When saving to file, choose the file format. When saving to clipboard, this parameter is
omitted.
Calculate method
Two image size recalculation methods are available:
· Width & Height – in this mode, the horizontal size (Width) and the vertical size (Height)
are specified.
· Long side & Short Side – the long side and the short side are used in this case, since the
image can have either album or portrait orientation.
Top = 10px
Right = -10px
Bottom = -10px
The use of variables is allowed.
Action
Select an action to be performed on the image:
· Rotate
· Flip Horizontal
· Flip Vertical
Angle (degrees)
Enter an angle in degrees by which you want to rotate the image. A positive number means
clockwise rotation. A negative number means counterclockwise rotation. This parameter is
omitted during mirroring.
Text
Type the text that you want apply to the image.
Font
You can choose a font, font style, and size.
Horizontal position
Choose one of the options
· Left
· Center
· Right
· Custom – specify the position in pixels in this case
Vertical position
Choose one of the options
· Top
· Center
· Bottom
· Custom – specify the position in pixels in this case
Image file
Enter or choose the file name of the image that you want to insert.
Horizontal position
Choose one of the options
· Left
· Center
· Right
· Custom – specify the position of the left edge in pixels in this case
Vertical position
Choose one of the options
· Top
· Center
· Bottom
· Custom – specify the position of the top edge in pixels in this case
Opacity
Specify the image opacity in percentage points.
100 – the image is fully non-transparent
0 – fully transparent.
Color
Choose the field fill color.
Text
Enter the text you want to encode in the QR
Save to
Choose the target: file or system clipboard.
Save to file
Enter the file name if you want to save imege to file
Encoding
Choose character encoding. If it's hard for you to choose, choose Auto or UTF-8 with BOM.
This is suitable for most cases.
Quet zone
The size of border of QR code
Size (pixels)
Size of the result image in pixels
Color
Choose the color of QR blocks.
4.34 WebSockets
WebSocket is a TCP communication protocol designed to exchange messages between
applications in real time. Most browsers support the protocol, including Google Chrome,
Microsoft Edge, Internet Explorer, Firefox, Safari and Opera. You can read more about this
protocol here.
This plugin enables RoboTask communication with other applications that use WebSocket
protocol or with other RoboTask instances.
The WebSocket protocol mechanism requires a permanent client-server connection and the
capability to exchange messages asynchronously. The source of the message can be either
the client or the server. If the client loses connection for some reason, by default it tries to
re-establish the connection.
To get started, create the required set of Websocket Servers and Clients. All actions and
triggers of this plugin work with this set of servers and clients in one way or another. Their
combination and parameters depend on your requirements.
To define WS Servers and WS Clients, use WS Connection Manager 534 .
Note: This feature is available for Business license only
Servers
You can create a list of required WebSocket Servers and define required parameters for each
server separately.
Active
Tick this checkbox if you want this server to be active when RoboTask is loaded and when
parameters are saved.
General
Name
Server name. When selecting a server in the actions and triggers editor, you can specify any
string for visualization.
Bindings
Binding to IP address and port. Binding to multiple IP addresses and ports is supported. The
binding is specified in <IP_address>:<port> format
If you specify 0.0.0.0 as the address, the server will bind to all available computer addresses
of the specified port.
If you specify local address of 127.0.0.1, the server will only accept local connections within
the local computer
TLS
TLS (transport layer security) – traffic encryption mode.
If you access WS Server via the wide area network, it is recommended to use traffic
encryption. To do this, you need to specify the certificate and the private key for encryption.
You can use paid or free certificates (for example, here).
You can also create the so-called "self-signed" certificates. You can make self-signed
certificates using OpenSSL or Powershell package. Read how to do it here or here
If you intend to use Websocket locally on your computer or in the office LAN, traffic
encryption is not necessary.
If you specify that the server needs to encrypt traffic, you must also specify the encryption
certificate and the private key of the certificate. These are text files in PEM format. They can
have any extensions, but as a rule, PEM or CRT extensions are used for the certificate. PEM or
KEY extensions are used for the key.
HTTP Server
Websocket server can act as a simple HTTP server.
Empty Response
A default option. WS Server sends an empty response to the HTTP request.
HTML page
WS Server returns the specified HTML page when it receives the HTTP request.
Authentication
URL Authentication
This authorization method is mainly used in scripts. In this case, the username and password
are passed via the query string:
wss://<host>:<port>/auth/<username>/<password>
When configuring WS Client in RoboTask, you need to specify the following string in the
Parameters field
/auth/<username>/<password>
User rights
Defining a list of users for authorization
· System Administrators – in this case, the system check of user rights is used.
Authentication is considered successful, if the authentication parameters are correct and
the user belongs to the Administrators system group.
· Custom User list – in this case, you need to define the user as text. Every string should
look like:
Username=Password
Advanced
ID
WS server ID. By default, WS_SERVER_N string, where N is a number (ordinal number), is
assigned as the identifier.
The identifier must consist of letters, numbers and an underscore and must begin with a letter
or an underscore. Other characters are not allowed.
The identifier is case insensitive.
When editing a network task you must know the WebSocket server ID and specify it explicitly,
because you won't be able to choose the desired server from the list.
Clients
Here you can create a list of required WebSocket clients, and define required parameters for
each Client separately.
Active
Tick this checkbox, if you want this client to be active when RoboTask is loaded and when
parameters are saved.
Test connection
When clicking this button, the client settings are saved and an attempt is made to connect
with the current client parameters. After the operation is complete, you will see a message
about the result of the connection attempt.
Connection
General parameters of client connection
Name
The client name for visualization. Enter any name that is easy to understand.
This function allows to fill in the joining parameters automatically, if you know full URL of the
Websocket server.
URL starts with ws:// or wss:// prefix
For example:
wss://myhost.com:12345/auth/user/psw
ws://myhost.com/report?info=common&date=20201201
Host
Websocket server name or IP address
Port
Websocket sercer port. By default, the ports used are the same as those of HTTP server:
· 80 – without using TLS/SSL
· 443 – when using TLS/SSL.
Use TLS
Tick this checkbox, if you want to use encryption. Please note that the encryption mode is
determined by the WS server. If the client's encryption mode does not match the server
setting, the client will not be able to connect.
Parameters
A string of the path and URL parameters. For example:
/auth/user/psw
/report?info=common&date=20201201
Authentication
Username
A user name.
Password
An explicit password.
Advanced
ID
WS Client ID. By default, WS_CLIENT_N string, where N is a number, is assigned as the
identifier.
The identifier must consist of letters, numbers and an underscore and must begin with a letter
or an underscore. Other characters are not allowed.
The identifier is case insensitive.
When editing a network task you must know the Websocket client ID and specify it explicitly,
as you won't be able to choose the desired server from the list.
Interval (ping)
Specify the check interval.
Interval (reconnect)
Specify the interval of connection attempts
Send message to
Two options are possible
· One client – this option works, if the WebSocket Server On Message trigger is connected
to the task. When this trigger is activated, the specified WS server sends a message
only to the client, from which it received the message that activated the trigger.
· All connected clients – the specified WS server sends a message to all connected
clients.
WebSocket server.
Choose the required WebSocket server from the list. Please note that you cannot choose the
server when editing a network task. Instead, you must enter the server ID. You must know
the server ID in advance (see WS Connection manager->Servers->Advanced). If an invalid ID
is specified, an "Invalid WS Server ID" error is returned when executing.
Text message
Enter the text of the message you want to send. You can use variables.
WS Server Manager
You can view or edit lists of registered Websocket servers and clients (see WS Connection
Manager 534 ).
WebSocket Client
Choose the WebSocket client from the list. If you edit a network task, the list is not available
and you have to enter the client ID manually (see WS Connection manager->Clients-
>Advanced). If the client ID is incorrect, the action will get an "Invalid WS Client ID" run-time
error.
Text message
The text message you want to send
WS Client Manager
You can view or edit lists of registered Websocket servers and clients (see WS Connection
Manager 534 ).
Content type
Choose a content type from the list or enter your own option.
Response
There are three options to choose from:
· Text/HTML – in this case, enter the response text as the plain text or HTML text
· File – choose the file to send to the client
· Redirect – redirect the request to another URL
WebSocket server.
Choose the required Websocket server from the list. Please note that you cannot choose the
server when editing a network task. Instead, you must enter the server ID. You must know
the server ID in advance (see WS Connection manager->Servers->Advanced). If an invalid ID
is specified, an "Invalid WS Server ID" error is returned when executing.
WS Server Manager
You can view or edit lists of registered Websocket servers and clients (see WS Connection
Manager 534 ).
Action
Choose the action:
· Start Server
· Stop server
WebSocket Client
Choose the Websocket client from the list. If you edit a network task, the list is not available
and you have to enter the client ID manually (see WS Connection manager->Clients-
>Advanced). If the client ID is incorrect, the action will get an "Invalid WS Client ID" run-time
error.
WS Client Manager
You can view or edit lists of registered Websocket servers and clients (see WS Connection
Manager 534 ).
Action
Choose the action:
· Connect Client
· Disconnect Client
In addition, some console utilities don't allow I/O to be intercepted in interactive mode, which
makes such automation impossible.
General
Application name
This is the full name of the application to run. The default suggested expression is
{EnvironmentVar(ComSpec)}. This is the full path to the system command prompt CMD.EXE
Parameters
Parameters are given as text. When the application starts, all line breaks will be replaced with
spaces.
Default Folder
When you start an application, you can indicate the folder that will be active for the launched
application. An empty value corresponds to the current RoboTask folder.
Environment variables
Specify the environment variables that you want to replace or add. The variables are shown
as text, and each line looks like the following:
variable_name=value
Write to application
Specify the command as a string.
Timeout in seconds
Specify the timeout in seconds. If a specified value cannot be converted to an integer; the
default value is set to 20 seconds.
4.36 Converter
4.36.1 Value converter
This action is designed to convert numbers from one unit of measurement to another. All
available units of measurement are grouped into categories. Conversions are possible within a
single group.
The original value should be a number, either an integer or a floating-point number in the
current system format.
The result will also be a number.
Conversion families
Currently, 8 groups of units of measurement are registered in the action:
· Distance
· Area
· Volume
· Mass
· Temperature
· Time
· FileSize
· Speed
From unit
Select the unit of measurement for the original value.
To unit
Select the unit of measurement for the result.
Convert value
Enter the original value. The value should be a number, either an integer or a floating-point
number. Variables can also be used.
Format group
Value
Select the type of the original value.
Format
Select the format for the value.
Reverse conversion
Enable this checkbox if you want to obtain a number from a formatted string.
Such encoding is also useful when using the Runtime Module 47 to pass parameters to a
running task.
The encoding principle is quite simple:
Invalid characters are encoded with the combination %NN, where NN is the character code in
hexadecimal form.
The % character is encoded as %%.
When encoding, you will get a string without spaces and other invalid characters. When
decoding, you will get the original string (or multiline text).
Source text
Enter the source text to be processed
Direction
Encoding direction:
· Encode
· Decode
Drive number
This is device number. Numbering starts from zero. Variables can be used. If an incorrect drive
number is entered, the action will return an "Incorrect drive number" error.
CSV format
Save to variable
Enable this checkbox and enter the variable name.
Save to file
Enable this checkbox and enter or select the file name for saving.
As you can notice, RoboCopy has quite a large and complex set of parameters. This action
allows you to construct and execute the command line interactively.
Each action parameter corresponds to a RoboCopy command-line parameter. The name of the
command-line option is indicated in the header of each parameter.
General
Advanced
Copy options
V
Task Triggers
Task Triggers 569
5 Task Triggers
Triggers for automation of your tasks.
5.1 Scheduler
Executes a task at a given time or interval. For example, you can use this triggering event to
ensure your backup runs every day at midnight.
Time List
Displays a list of times that you add with the Plus button.
The Magnifier button displays the Add Time Wizard.
To remove a time, select a time in the Time List and click the Minus button. To clear the list,
click the X button.
Note:
Your system must have "Allow wake timers" enabled if you want to use this
feature. This parameter is disabled by default in system installed on notebook.
See here how to enable it 570
Time Period
Enter whether you want the action to start every day, week, or month.
Start
Select the date that you want the event starts to execute a task.
Executes a task that should be started manually. You can set up a combination of hot keys,
such as CTRL + ALT + F. For example, you could set up a combination of hot keys to start
Internet Explorer from your keyboard every time you want to browse the Internet.
Tip
· The Tray Icon triggering event also allows you start processes manually.
Hot Keys
Place your cursor in the box and press the keys you want on the keyboard. For example, press
the ALT key to see "Alt" appear in the box.
Already in use
You can check which combinations are already used in RoboTask in other tasks.
Executes a task when you double-click a specific icon in the system tray of the Windows
Taskbar. This is useful when you want a specific action to start, such as checking e-mail.
Tip
· The Tray Icon triggering event also allows you start processes manually.
Icon
File Name
Enter the name and path of an .Exe or .Dll file to select an icon from. You can click the browse
button to select a file.
Current Icon
Displays icons available from the file that you select in the File Name box.
One can define the popup menu items for an icon on this tab. In this case the ordinal number
(beginning from 1) of selected will be passed into a/the task as a parameter.
Items
The list of menu items. This list can be edited with buttons Add, Edit and Delete. Also it is
possible to change the order of options using buttons Move Up and Move Down.
To select Default Menu Item use the button Set Default.
Pass Item Number as Parameter
Specify the name of parameter in which the number of menu item must to be passed. On
double click on the icon, the default item number of menu will be passed.
If the menu is empty, the parameter is 0 always.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
5.4 Cyclic
Executes a task at the interval in seconds that you specify. This is useful if you want to repeat
a series of actions at a specific interval. For example, you can ping your web site every two
minutes or check for new e-mails every five minutes.
Interval (Sec)
Enter the number of seconds that you want the task or actions to wait between loops.
Do not start immediately at the activation of the trigger
By default Cyclic trigger starts the task immediately when the trigger is being started. switch
ON this checkbox if you want to prohibit the first running of the task. In most cases this
doesn't matter, but may be helpful sometimes.
Wait for
· Process start - waiting for start the specified process.
· Process finish - waiting for completion of the specified process
General tab
Folders
Select the folders that are monitored. Each folder can be monitored with subfolders. When you
click the Plus button, the Add Folder for Watch dialog box appears.
Tip
You can also use wildcards in this option. Some examples of wildcards are the following:
· *.txt - all the files with the .txt extension.
· mydoc?.doc - mydoc1.doc, mydoc2.doc, mydocA.doc, and so forth.
· *.tmp, *.$$$, *.bak - all the files with the .tmp, .$$$ and .bak extensions.
· {bakext} - file mask(s) from the {bakext} variable.
Filter Condition
Select one or more check boxes to specify which changes in files you want to monitor:
· Watch for New Files
· Watch for Deleted Files
· Watch for Changed Files
· Time Changed
· Size Changed
· Attributes Changed
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Save Changes
Click the check box to enable the task to save changes to files during the file monitoring
session in a log.
Click the check box to enable the task to save changes to file during the file monitoring
session to several different logs based on the criteria you select.
Tip
· You can click a browse button next to each of the following options to select a file on the
local system.
Variable Name
Variable name for common list of files
Advanced tab
If this option is on, then the trigger will track the state of files only from the moment the
application is launched.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Executes a task when the computer completes or terminates a specific dial-up connection. You
can specify that RoboTask check for a connection at a specific interval; for example, you can
specify that RoboTask check for a dial-up connection every 300 seconds, or every five minutes.
Dial-up Connection
Select a connection in the dropdown list. The items on the list are the names of the Internet
connections for dial-up modems that you create in Windows with Network Connections in the
Control Panel.
Interval (sec)
Enter the number of seconds that you want the task to wait between checks.
What to Check
Click one of the following options to tell the task to check if the connection is active or
disconnected:
· Disconnect
· Connect
Expression to Monitor
Input any expression using necessary variables. Notice that only global variables can be used.
Case Sensitive
Expression Monitor is insensitive to a register By default. If it is important to take into account
the register, switch on this checkbox.
Runs the task when you perform some actions with windows. This task can respond to creation,
destruction, activation and deactivation of a window with specified parameters. Such task can
be useful if you want to introduce automatic corrective actions that respond to an error
message.
General
Window Caption
Specify the window title that should be traced. You can specify a specific part of the title if it
shouldn't match completely. For example:
· - Microsoft Internet Explorer
· Notepad
You can select a title from the list of windows present in the system by clicking the button to
the right of the text box. When captions are compared, the case is not taken into account.
Window class
Specify the window class that should be traced. You can select a window class from the list of
classes present in the system by clicking the button on the right of the text box.
When strings are compared, the case is not taken into account.
Advanced
Watch For
Click one of the following window states:
· Window Activated. The event is triggered when a new or existing window is activated.
For example, a window activates when a user presses ALT+Tab on the keyboard.
· Window Destroyed. The event is triggered when the window is closed.
· Window Created. The event is triggered when a new window is created.
· Window Deactivated. The event is triggered when a new or existing window is
deactivated. For example, a window deactivates when a user presses ALT+Tab on the
keyboard.
· Window changed caption. The event is triggered when an existing window has changed
own caption.
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Executes a task when the computer system time changes. No specific settings are associated
with this triggering event.
When power supply is restored, this trigger goes to the initial waiting status.
Executes a task when the printer spooler has changed. For example, you can use this triggering
event to display a message if a particular document is sent to a printer. No specific settings are
associated with this triggering event.
Runs the task when a device (for example, CD or Flash Drive) is changed. The device name can
be saved to a variable and used in the task.
Device Kind
Specify a type of device that triggers the task.
· All (Logical Volume & Port) - any type of device;
· Logical Volume - a logical volume mounted dynamically (CD, Flash Drive, etc.);
· Port - a COM or LPT port.
Change Kind
Specify a type of change that triggers the task.
· All (Arrival & Remove). Any type of event;
· Arrival. A device (drive) appears in the system. For example, you have inserted a new
CD;
· Remove. A device is removed from the system. For example, you have pressed the eject
button of the CD drive.
Switch on this checkbox and specify a name of parameter which will be passed into the task at
starting.
Executes a task when the display palette, or colors on the computer screen, for Windows
changes. This can happen when you switch between an MS-DOS application and a Windows-
based application. No specific settings are associated with this triggering event.
Executes a task when the display on the computer screen changes. No specific settings are
associated with this triggering event.
Executes a task when a user logs off or the computer shuts down. No specific settings are
associated with this triggering event.
5.17 On Idle
Executes a task when the computer has been idle for a specified period of time.
Trigger mode
Run task after timeout - normal mode;
Run task when exiting idle mode - the trigger is activated after the specified timeout and fires
when the keyboard or mouse is touched.
5.18 On Resume
This trigger starts a task when the computer "awakes" out of the Sleep Or Hibernate mode. It
does not demand any additional settings.
Trigger mode
Enable one or more events for the trigger to respond:
· Console connect
· Console disconnect
· Remote connect
· Remote disconnect
· Session logon
· Session logoff
· Session lock
· Session unlock
· user_name
· hres
· vres
· color_depth
Clipboard formats
Specify the format to be tracked. Two formats are available: Text and Image.
Choose at least one format or two formats at once.
Text
Choose the text tracking mode. This parameter is omitted when images are tracked.
· Is any string – the trigger is activated when clipboard contains any text
· Starts with – the trigger is activated when the text in clipboard begins with the string
specified in the "String" parameter
· Contains – the trigger is activated when the text in clipboard contains the string
specified in the "String" parameter
· Is exact string – the trigger is activated when the text in clipboard fully matches the
string specified in the "String" parameter
String
Enter a string for text tracking.
Case sensitive
Select this checkbox if an exact match (case-sensitive) is needed.
General
Registry key
Value names
Specify the names of values to monitor, separated by commas. You can use value masks with
"?" and "*" characters. An empty field value means "all values."
With subkeys
If you want to monitor changes throughout the subtree starting from the specified branch,
enable this checkbox. Please note that you should not monitor excessively large parts of the
registry, as it can slow down the trigger's operation.
Save changes
All changes are saved in variables as multiline text. Typically, multiple values can change at
once. Therefore, you should process these variables as multiline text, for example, using a
Text Loop 238 . If no variable name is specified (empty input field), no saving occurs.
For "Removed keys" and "Added keys" each line saves the full key path.
For values (Removed values, Changes values, Added values), each line contains a comma-
separated string with two elements:
· The zeroth element contains the full key name.
Removed keys
The variable name in which the list of removed keys is saved.
Added keys
The variable name in which the list of added keys is saved.
Removed values
The variable name in which the list of removed values is saved.
Changes values
The variable name in which the list of changed values is saved.
Added values
The variable name in which the list of added values is saved.
5.26 Listener
Allows you to start a task when a command from another computer is received. Works together
with the Send Command action 302 . Performs the primary analysis of the received string and
starts the corresponding task if the received string meets the specified conditions.
· Any string. Any received string will start the task. For example, it is convenient if you
exchange messages that should be just recorded to the log.
· Beginning of String. The received string should start with the key substring.
· Substring. The key substring can be in any position of the received string.
· Exact String. The received string must exactly match the key string.
Case Sensitive
Select this checkbox if strings should be compared with their letter case taken into account.
The simplest sample use is message exchange: the Listener receives a string, assigns it to a
variable and starts the task. The task displays this variable as an informational message.
Plugin settings
You can set up parameters of Network plugin 305 .
Variable
Allows you to add a variable to the action or triggering event that you selected. You must
place the cursor in a edit box in the settings dialog window of the action or event and then
click the {V} button.
Source tab
When defining parameters, at first you need to specify the source of an image:
· Window - This is a separate window. All coordinates of pixels will be determined
concerning this window. If you have selected the window as a source, you need to
specify the window parameters.
· Entire screen - This is a screen with all visible windows.
The window parameters are similar to the parameters in the actions Window Snapshot 396 ,
Window Command 257 , Window Size and Position 263 , and Window Elements loop 266 .
Window Class.
If you want to search the window by a window class, switch on this checkbox and input the
expected name of the window class. You can input only part of the name. In this case the
action will check availability of the input line in the name of the window class.
Class Name Must Match Exactly.
If you need the exact coincidence of a window class, switch on this checkbox. Usually it is
worthwhile to search by the whole class name, because a window class is permanent and does
not change its value during the "life" of the window, unlike a caption.
Window Handle.
Input the expression containing a window handle. This parameter is used for the mode Use
Window Handle. A window handle is just a number, identifier of a window in a current session
of system work.
Pixels tab
You need to specify the pixel set for checking on this tab.
Comparison mode
· Match ALL of the following pixels (AND)
· Match ANY of the following pixels (OR)
List of pixels
You can edit a list using the buttons Add, Edit and Remove.
By means of an edit window you can change pixel parameters both manually and by means of
interactive instruments.
Pixel parameters:
X, Y - It is coordinates of a pixel from the left corner. If a source of a picture is a window,
coordinates are determined from the upper left corner of the screen window.
Pattern color - This is a pattern of the color with which the action will compare the color of a
pixel. Color is just a number. For comfort it is written in hexadecimal.
For example, $0066FF00 or $66FF00.
In hexadecimal you can write color using 6 symbols (as RGB): the first couple (younger) is red,
the second couple is green, the third couple (elder) is blue color.
Tolerance - This is an accuracy of color coincidence. The error can be changed from 0 to 255
(in hex from 00 to FF). When it is 0, it is exact color coincidence. When it is 255, it is a
coincidence with any color.
Tolerance is an acceptable difference between two colors for any component RGB (Red –
Green - Blue). Every component of the color can ,be changed from 0 to 255 (FF in
hexadecimal).
On default, the tolerance is 16.
WebSocket server.
Choose the required Websocket server from the list. Please note that you cannot choose the
server when editing a network task. Instead, you must enter the server ID. You must know
the server ID in advance (see WS Connection manager->Servers->Advanced). If an invalid ID
is specified, an "Invalid WS Server ID" error is returned when executing.
WS Server Manager
You can view or edit lists of registered WebSocket servers and clients (see WS Connection
Manager 534 ).
Message…
Several options for analyzing the message received are supported
· Is any string – in this case, the trigger launches the task when any string is received;
· Starts with – the message must start with the string specified in the String field;
· Contains – the message must contain the string specified in the String field
· Is exact string – the message must exactly match the specified string.
String
Enter the string to compare it with the message
Case Sensitive
If you need the case-sensitive comparison, then tick this checkbox.
WebSocket Client
Choose the WebSocket client from the list. If you edit a network task, the list is not available
and you have to enter the client ID manually (see WS Connection manager->Clients-
>Advanced). If the client ID is incorrect, the action will get an "Invalid WS Client ID" run-time
error.
WS Client Manager
You can view or edit lists of registered WebSocket servers and clients (see WS Connection
Manager 534 ).
Message…
Several options for analyzing the message received are supported
· Is any string – in this case, the trigger launches the task when any string is received;
· Starts with – the message must start with the string specified in the String field;
· Contains – the message must contain the string specified in the String field
· Is exact string – the message must exactly match the specified string.
String
Enter the string to compare it with the message
Case Sensitive
If you need the case-sensitive comparison, then tick this checkbox.
WebSocket server.
Choose the required WebSocket server from the list. Please note that you cannot choose the
server when editing a network task. Instead, you must enter the server ID. You must know
the server ID in advance (see WS Connection manager->Servers->Advanced). If an invalid ID
is specified, an "Invalid WS Server ID" error is returned when executing.
WS Server Manager
You can view or edit lists of registered Websocket servers and clients (see WS Connection
Manager 534 ).
VI
Appendix
608 RoboTask User's Guide
6 Appendix
(**) The following variables can accept a date-time parameter in the current system
format
If the parameter is not specified, then the current date and time is assumed.
Day
DayOfWeek
DayOfWeekNo
Hours
Minutes
MonthName
MonthNo
Seconds
ShortDayOfWeek
ShortMonthName
ShortYear
Time
Year
For example, if you need to determine the day of the week 3 days ago, then use the
expression: {DayOfWeek({DateIncDays(-3)})}
/ASADMIN
Start RoboTask with full rights. For operating systems with UAC (i.e. Windows Vista and
later).
/REGSERVER
Register built-in COM server in your system.
/UNREGSERVER
Unregister built-in COM server from your system.
/INSTALL
Install RoboTask service
/UNINSTALL
Remove RoboTask service
activate <your_actual_license_key>
Silent activation if no error. Otherwise it shows the alert with error message.
The runtime module is designed to run a prepared task without the main RoboTask application.
However, the Runtime module uses the entire engine to run the task.
Usage:
RoboTaskRuntime.exe <Task_File_Name> [/stop|/nonstop] [/out:<full_file_name>]
[/taskparam:<task_parameters>]
There is no need to create the RoboTaskApp object when you are running or editing the script.
It is created before you run the script and is available as a global object inside the script.
You can use it in external scripts by using the name RoboTask.App. For example:
For VB script
set obj = CreateObject("RoboTask.App")
For JS Script
var obj = new ActiveXObject("RoboTask.App");
RoboTaskApp.Automation
Read-Write property, type - boolean
It is available for reading and writing. It contains the value of the RoboTask automation mode.
RoboTaskApp.Close
Method
Exits RoboTask.
Method.
Shows desktop alert or balloon of tray icon with specified text
Title - [in] Title of the alert
Msg - [in] Message of the alert
IconKind - [in] The number of icon
0 - Information
1 - Warning (Exclamation)
2 - Error
3 - Default icon. When IconKind contains incorrect number the method shows default
icon
AlertKind - [in] 0 - Alert window; 1 - Tray icon balloon.
Duration - [in] Duration in seconds
Width - [in] Width in pixels. If the value less that 330 the method uses default value (330).
This parameter is being ignored if AlertKind=1
Height - [in] Width in pixels. If the value less that 76 the method uses default value (76). This
parameter is being ignored if AlertKind=1
Corner - [in] The corner of alert window (This parameter is being ignored if AlertKind=1):
0 - top-left
1 - top-right
2 - bottom-left
3 - bottom right
Sub Main
Dim extName As String
extName = RoboTaskApp.ExternalName(RoboTaskApp.ThreadID)
MsgBox("External name is "+ extName)
End Sub
RoboTaskApp.Minimize
Method.
Minimizes RoboTask into the tray icon.
RoboTaskApp.Restore
Method.
Restores the RoboTask window from the tray icon.
RoboTaskApp.ServiceMode
Read-only property. It contains a Boolean value: "True" if RoboTask is running as an NT service;
"False" if RoboTask is running as a regular Windows application.
If you want to run an external script using the Run Console Application 83 or Run Program/Open Document 82
actions, you can obtain the task's ThreadID using the {Task ThreadId} variable and pass this value as a
parameter via environment variable, parameter, or file.
ID - Task thread ID
RoboTaskApp.TaskCount
Method.
The read-only attribute of the numerical type. Returns the number of tasks registered in
RoboTask.
For example:
RoboTaskApp.TaskEnabled("Check_email") = False
cnt = RoboTaskApp.TaskCount
RoboTaskApp.WriteToLog(1,"Total "+Str(cnt)+" tasks",RoboTaskApp.ThreadID)
For i = 0 To cnt - 1
extNam = RoboTaskApp.TaskInfoExtName(i)
nam = RoboTaskApp.TaskInfoName(i)
id = RoboTaskApp.TaskInfoID(i)
RoboTaskApp.WriteToLog(3,extNam+"; "+nam+"; "+Str(id),RoboTaskApp.ThreadID)
Next
End Sub
RoboTaskApp.ThreadID
Read-only property, type - Long
Returns the thread ID of the task. This value is required in the ExternalName property and
WriteToLog method.
RoboTaskApp.Version
A read-only property of the string type. Contains the version number of RoboTask in it.
RoboTaskApp.WHandle
A read-only property of the Long type. Contains the Handle of the main RoboTask window. This
value is necessary for some Windows API functions to work properly (for example,
SendMessage, PostMessage).
Sub Main
Dim thr As Long
thr = RoboTaskApp.ThreadID
RoboTaskApp.WriteToLog(3, "Hello World", thr)
End Sub
Deprecated methods
These methods are not preferred, because they are not supported by scripting languages:
Javascript and VB Script.
Sub Main
Dim cnt As Long
Dim nam As String
Dim extNam As String
Dim id As Long
Dim i As Long
cnt = RoboTaskApp.TaskCount
RoboTaskApp.WriteToLog(1,"Total "+Str(cnt)+" tasks",RoboTaskApp.ThreadID)
For i = 0 To cnt - 1
RoboTaskApp.TaskInfo(i,extNam,nam,id)
RoboTaskApp.WriteToLog(3,extNam+"; "+nam+"; "+Str(id),RoboTaskApp.ThreadID)
Next
RoboTaskApp.WriteToLog(3,"Total " + Str(cnt) + " tasks",RoboTaskApp.ThreadID)
End Sub
Actions Battery
Start Service 274 AC power restored 591
Start Task 218 Switching to battery 590
Stop Service 275 battery power
Stop Task 221 triggering event 586
Synchronize Folders 136 beginning
Task status 222 RoboTask 3
Terminate Process 100 Break 249
Text Loop 238 breaking
Time difference 214 loops 249
Transfer Type 167 browse dialog box
TXT Comma-Text Conversion 356 displaying 108, 110
Unique File Name 143 bugs
Wait for File 140 reporting 79
Wait for pixel 406 buying
wait for process finish 98 RoboTask 6
wait for process startfinish 99
Wait for Task 221
Window Command 257 -C-
Window Loop 243
Catch the output text 83
Window Pixel 401
Change Folder 197
Window position 263
changing 134
Window size 263
directories 134
Window snapshot 396
folders 134
Write Text File 127
Check connection 209
Write to Event Log 279
Check email 316
Write Value 296
checking
administrative commands 280 e-mail 334
alarm clock 569 for windows 258
archiving pixels 414
files 148
choice 114, 572
Array elements 216
Clear Clipboard 284
Ascending 142
Click the button 289
assistance
Client-Server 43
getting 79
Clipboard 594
automation copy 283
disabling 280
Cut 282
enabling 76, 280
get 284
monitor 569
-B- paste
put
283
285
Backup Put Image 286
application tasks 78 Save Image 285
service tasks 28 Clipoard
Basic clear 284
RoboTaskApp object 615 Close session 550
script 615 closing
Basic script 393 windows 257
IMAP 321, 324, 325, 329, 330, 331, 332 sending 89, 93
close connection 324
delete marked messages 331
download message 329 -L-
folder info 332
Label 255, 256
get flags 330
LastErrorCode 42
mail folder 324
LastErrorDescription 42
mail loop 325
LastErrorStep 42
move message 332
LastErrorTaskExternalName 42
open connection 321
LastErrorTaskID 42
set flags 331
Legal notice 7
Import Registry 300
Link click 373
Incoming email 309, 311, 314, 316, 317
listener 597
increment 213
Lists
INI Files 419, 420, 421, 423, 425 Operations 359
Input box 111
local variables 12, 21
Input dialog 119
locking
Intersection 359 computers 277
introduction 2
Log Dialog 122
IsError 42
Log message 282
log off 193
-J- ftp 163
triggering event 588
Java script 445 Log on 191
Javascript 383, 457, 460, 615 ftp 162
jobs 217 logging
adding variables 14 messages 280
creating 5, 53 logging off
creating shortcuts 63 computers 94
deleting 61 logoff 94
disabling 76, 217 logs
duplicating 63 viewing 70
editing 6, 61 Loop 311
running 6, 61 on connections 232
starting 216, 280 on registry 301
stopping 61, 217, 280 looping 240
JS Evaluate 460 datasets 240
JSON 16 files 233
JSON array 216 queries 240
simple 244
text 238
-K- Window 243
loops 245
keyboard
breaking 249
hold down keys 93
continuing 249
release keys 93
ending 248
strokes for 89
iterating 168
keystrokes
-M- -O-
Macro recorder 18 OAUTH 306
Mail loop 316 open dialog box
maximizing displaying 105
windows 257 Open session 548
Memory Load options
events 589 customizing 6
messages setting 70
displaying 102 overview 2
logging 280
sending 303
Messages count 316 -P-
minimizing
packing
RoboTask 280
Zip files 150
windows 257
Page snapshot 380
Mouse 18
palette
click 289
triggering event 588
move pointer 290
Parse 317
move to object 287
Paste 283
Move mouse pointer 290
pinging
Move pointer to object 287 hosts 153
Move to Object 287
Pixel 412
moving
Pop3 Server 309, 311, 314, 316, 317
files 122
port 304
Multichoice 116
PowerShell 452
practical recommendations 22
-N- custom variables
Debugging 21
12
-X-
XML Document 427, 428, 429, 432
-Z-
Zip files
creating 148
extracting 150