Function Builder
The Function Builder (FB) is used to build up the action that will be performed when a user interacts with the script, or the controls on a screen. Featuring an intuitive drag and drop interface allows you to build these actions without needing to have knowledge of programming. Still you can perform tasks such as moving to a different screen, checking the user has entered data, and interact with the database tables.
Function Builder is based on the Blockly framework which is rendered in a browser. Still, scripts that have been built with Infinity v4.4 (and are not updated to the new FB) are still running in v4.5 through the old Function Builder.
Functions accept a number of “command” objects that take a number of parameters. The parameters will either be a screen control, database field, script variable or free text, and by using a number of command objects you are able to build actions that guide the user through the script.
Note: For a full reference of the available commands see Commands. |
The main screen of the Function Builder contains the following areas:

The menu bar along the top of the Function Builder contains the following icons:
Icon | Description |
---|---|
![]() |
Update your function |
– | Save the function and close it |
![]() |
Clear your current function |
![]() |
Undo the last changes made to the function Note: This icon is only available for the scripts built with the old version of Function Builder. |
![]() |
Allows you to add a comment to the function that can be output in the script documentation |
![]() |
Allows you to run your function, providing dummy values to ensure it runs as expected |
![]() ![]() |
Basic level of functions knowledge: A basic set of functions is displayed in the toolbox when this icon is coloured. |
![]() ![]() |
Advanced level of functions knowledge: A more advanced set of functions is displayed in the toolbox when this icon is coloured. |
![]() ![]() |
Export level of functions knowledge: All the available functions are displayed in the toolbox when this icon is coloured. |

The Toolbox contains the colour-coded groups of commands that can be used for Build Functions:
Command Group | Description |
---|---|
Controls for performing various “actions”. |
|
Commands for changing the call outcome options |
|
Block commands for performing IF, SELECT and LOOP operations |
|
Constants | These are predefined script variables |
Objects for referencing controls that are on the screen |
|
Commands for interacting with the CTI Toolbar |
|
Commands for interacting with the database |
|
Commands for accessing the main database fields for your project |
|
Commands for performing workflow/ script level operations |
|
Events | Objects that represent the events raised by Infinity Scripts, Screen and Controls and host functions to be triggered accordingly |
Functions for manipulating data values |
|
Groups | This command group allows you to group commands in blocks that can be easily moved or reused |
Commands that can be used in conditions |
|
Commands for interacting with the Recorder Toolbar |
|
Variables | Containers that hold values to be used in various functions |
Clicking a command group shows its sections and commands.

Due to the large number of available commands, it is possible to search for a command by typing a part of its text.
Clicking the option in the toolbox opens a pop-up dialog to type your command text. Click the OK button to perform your search. To search again, click the grey "Results for..." label next to the search option.

The Command Panel can be found underneath the Toolbox and the Search Box next to the Toolbox. It shows the commands that are part of the group or section selected in the Toolbox. Click and drag a command into the Function panel for building a function.
For some groups their commands are further grouped in sections.
Depending on the level of functions knowledge as defined through the numbered buttons of the toolbar, a right-pointing triangle denotes that a command group can be further expanded to sections when clicked.
When you click a group that contains sections, the command panel to the right displays the group's most common commands from all its sections for quicker access.

The Function Panel is located on the right hand side of the screen and is where the commands are placed in order to Build Functions.

Backpack area acts as a clipboard allowing you to copy and paste blocks of commands across functions (within the same script).
- To copy a block of commands right-click it and select 'Add to backpack' on the context menu. Multiple blocks can be added.
- To paste a block of functions to a function click the Backpack label in the toolbox, then click and drag the block to the function.
The Function Builder also allows you to handle Supported Events.