Component Operation

Table of Contents

Description

A multifunctional component that provides a variety of service methods to realize the impact on the system.

Table 1. System Characteristics

Index

219

Short title

operation

Types of scenarios

svc

Starter module

r_script_component_operation_ivr

Mode

Asynchronous

Icon

219

Branching pattern

Branching, closing

Properties

Table 2. Properties
Specification Description

Title: Transaction type
Code: type
Visibility: no
Default: `CRUD in the domain'

Select a transaction category.
Possible values:

  • CRUD in domain (crud, 0) - Group operation on entities domains (read, create, modify, delete). The operation is only possible over classes managed by the domain center (mdc, sdc roles). Available in API via endpoints other than /rest/v1/model/…​

  • Domain Data Model (dms, 8) - A group of operations on dynamic domain data model entities (reading, creating, modifying, deleting, clearing, working with attachments). The operation is only possible over classes managed by the data model server (dms role). Available in API via endpoints /rest/v1/model/…​

  • Registrar (registrar,5) - Data from the registrar.

  • Bindings (bindings, 1) - Putting a label in context to the current call. The special feature of the label is that it moves from one call to another during switches (SIP REFER).

  • Alert Acknowledgment (approve, 2) - Registers the status of a successful alert result in the channel for the alerts service].

  • Callmanager (callmanager, 3) - A group of logical call and conference management operations.

  • Download Conversation Record (records, 4) - Downloads a conversation record from the record repository and places it in the script’s temporary directory, writing the special file path to the result variable.

Title: Domain
Code: crudDestTD
Visibility: yes
Default: `Script'

Select the domain in which the transaction is performed.
Applies to operations of the CRUD category in the domain.
Possible values:

  • Scenario (same, 0) - The domain of the current scenario.

  • Other (specified, 1) - Specify the domain.

Title: Domain Name
Code: crudDomain
Visibility: yes
Default: — 

An argument containing the name of the domain to perform the operation on entities. Only domains from the child tree can be specified.
Applies to operations of the CRUD category in the domain.

Title: User Login
Code: crudUser
Visibility: yes
Default: — 

Argument containing the user’s domain login.
Applies to operations of the CRUD category in the domain.

Title: Essence Type
Code: crudObject
Visibility: yes
Default: — 

An argument containing the name of the entity class.
Applies to operations of the CRUD category in the domain.

Title: Method
Code: crudOperation
Visibility: yes
Default: `Create'

Operation Selection.
Possible values:

  • Create (create, 0) - Create an entity.

  • Get (read, 1) - Get a set of entities.

  • Update (update, 2) - Change the entity.

  • Delete (delete, 3) - Deletes an entity.

Applies to operations of the CRUD category in the domain.

Title: Data
Code: crudData
Visibility: yes
Default: — 

Applies to operations of the CRUD category in the domain.

Title: Filter
Code: crudFilter
Visibility: yes
Default: — 

Search filter for the operation of retrieving entities of category CRUD in a domain.
Specified as a JSON structure containing the object. Order of specification and application (parameter filter).

Example 1 (general REST format)
["&&",["like",["property","phonenumber"],"1*"], ["like",["property","login"],"sip*"]]
Example 2 (domain center format)
{"phonenumber": "1%", "login": "sip%"}

Title: Sorting
Code: crudSort
Visibility: yes
Default: — 

Sorting mode for the operation to retrieve entities of category CRUD in the domain.
Specified as a JSON structure containing an array. How to specify and apply (parameter order).

Example 1
"phonenumber"
Example 2
["phonenumber", "login"]
Example 3
[{"phonenumber": "asc"}, {"login":"desc"}]

Title: Additional Parameters
Code: crudParam
Visibility: yes
Default: — 

Additional parameters for the CRUD category data fetch operation in the domain.
Additional fields: offset, limit, etc. How to specify and apply them.

Example 1
{"offset": 3}
Example 2
[{"offset": 3}, {"limit": 2}, {"flat": true}]

Title: Fields
Code: crudFields
Visibility: yes
Default: — 

Object issue mask (field) for the CRUD category entities retrieval operation in the domain.
Specified as a string listing the field names separated by commas. How to specify and apply (parameter mask).

Example
id, login, phonenumber, opts

Title: Domain
Code: dmsDestTD
Visibility: yes
Default: `Script'

Select the domain in which the transaction is performed.
Applies to operations of the Data Model in Domain category.
Possible values:

  • Scenario (same, 0) - The domain of the current scenario.

  • Other (specified, 1) - Specify the domain.

Title: Domain Name
Code: dmsDomain
Visibility: yes
Default: — 

An argument containing the name of the domain to perform the operation on entities. Only domains from the child tree can be specified.
Applies to operations of the Data Model in Domain category.

Title: User Login
Code: dmsUser
Visibility: yes
Default: — 

Argument containing the user’s domain login.
Applies to operations of the Data Model in Domain category.

Title: Class Name
Code: dmsObject
Visibility: yes
Default: — 

Argument containing the name of the dynamic data model class (classname field in collection instances classes).
Applies to operations of the Data Model in Domain category.

Example
email/Accounts

Title: Method
Code: dmsOperation
Visibility: yes
Default: `Create'

Operation Selection.
Possible values:

  • Read Collection (read_collection, 0) - Returns arbitrary elements with filter, sort, mask, limit and shift applied.

  • Aggregation (read_aggr, 1) - Returns aggregated data on a collection. Allows selection of arbitrary (including complex, superposition) bases and aggregation functions. Returns a set consisting of only the specified fields.

  • `lookup (lookup, 2) - Retrieves a set of entities. Allows you to discover entity identifiers by the values of their lookup fields.

  • Read Entity (read_entity, 3) - Returns the specified entity. Allows masking to be applied.

  • Create Entity (create, 4) - Creates an entity in the collection.

  • Replace Entity (replace, 5) - Replaces an entity in the collection with a new one. Unmentioned fields are cleared.

  • Modify Entity (update, 6) - Modifies an entity in the collection. Unmentioned fields remain untouched.

  • Delete Entity (delete, 7) - Deletes an entity from the collection.

  • Clear Collection (clear, 8) - Clears the entire collection.

  • Download attachment (get_attach, 9) - Downloads an attachment to a temporary file and saves the path to it in the result. Requires specifying a property name with attachment type. If the field is a list field, it also requires the name of the file.

  • Place attachment (put_attach, 10) - Places an attachment from the specified file into the entity-bound repository. Requires specifying a property name with type attachment.

  • Delete attachment (delete_attach, 11) - Deletes an attachment from the repository and detaches it from the entity. Requires specifying a property name with the attachment type. If the field is a list field, it also requires the filename to be specified.

  • List attachments (list_attaches, 12) - Returns a list of attachments within a specific property of a specific entity - objects with name, size, modification time, hash. Requires the property name with attachment type to be specified, which must necessarily be a list.

  • Clear attachments (clear_attaches, 13) - Clears the list of attachments within a specific property of a specific entity. Requires the property name with attachment type to be specified, which must be a list property.

Applies to operations of the Data Model in Domain category.

Title: The Path (date/datetime)
Code: dmsPrepath
Visibility: yes
Default: — 

An argument containing the path to the entity (for collections of type history and transactionlog. Date or date/time corresponding to the value from the field specified in the class.opts.partition_property).
Applies to operations of the Data Model in Domain category with respect to collections of types history and transactionlog.

Title: Essence Id
Code: dmsId
Visibility: yes
Default: — 

Argument containing the entity identifier (string representation of the UUID).
Applies to operations of the Data Model in Domain category.

Example
12345678-90ab-cdef-1234-567890abcdef

Title: Property Name
Code: dmsProperty
Visibility: yes
Default: — 

An argument containing the name of the property containing the target attachment.
Applies to operations of the Data Model in Domain category.

Title: File Name (multi)
Code: dmsSubId
Visibility: yes
Default: — 

An argument containing the accounting name of a specific attachment file in case the property is of list type.
Applies to operations of the Data Model in Domain category.

Title: Begin of interval (date/datetime)
Code: dmsIntervalFrom
Visibility: yes
Default: — 

Argument containing the date/time of the start of the interval for sampling objects from collections with type history and transactionlog.
Applies to operations of the Data Model in Domain category.

Title: End of Interval (date/datetime)
Code: dmsIntervalTo
Visibility: yes
Default: — 

Argument containing the date/time of the end of the interval for sampling objects from collections with the type history and transactionlog.
Applies to operations of the Data Model in Domain category.

Title: Filter (json)
Code: dmsFilter
Visibility: yes
Default: — 

Argument containing a json list of filter descriptions for selecting collection items.
Applies to operations of the Data Model in Domain category.

Example
["&&",["like",["property","phonenumber"],"1*"], ["like",["property","login"],"sip*"]]

Title: Sorting (json)
Code: dmsOrder
Visibility: yes
Default: — 

An argument containing a json list describing the sorting sequence of the collection items.
Applies to operations of the Data Model in Domain category.

Specified as JSON value - field, list of fields, list of objects with sorting direction. Order of specification and application (parameter order).

Example 1
"phonenumber"
Example 2
["phonenumber", "login"]
Example 3
[{"phonenumber": "asc"}, {"login":"desc"}]

Title: Mask (json)
Code: dmsMask
Visibility: yes
Default: — 

An argument containing a json list of the fields to be sampled.
Applies to operations of the Data Model in Domain category.

Specified as a JSON list of strings - field names. How to specify and apply (parameter mask).

Example
["id", "name", "description"]

Title: Shift
Code: dmsOffset
Visibility: yes
Default: — 

An argument containing the numeric shift value in the sample.
Applies to operations of the Data Model in Domain category.

Title: Quantity
Code: dmsLimit
Visibility: yes
Default: — 

An argument containing a numeric measure of the number of elements in the sample. Any collection is forcibly bounded from above by a finite value.
Applies to operations of the Data Model in Domain category.

Title: Grouping fields (json)
Code: dmsGroupBy
Visibility: yes
Default: — 

An argument containing a json object from the aggregation fields. Element values are lists representing the function to calculate the aggregation base.
Applies to operations of the Data Model in Domain category.

Title: Aggregation Fields (json)
Code: dmsAggr
Visibility: yes
Default: — 

An argument containing a json object from the aggregation fields. Element values are lists representing the aggregation function. Superposition can be applied to calculate complex aggregation metrics.
Applies to operations of the Data Model in Domain category.

Title: Content (json)
Code: dmsContent
Visibility: yes
Default: — 

An argument containing a json object with field values when the entity is saved.
Applies to operations of the Data Model in Domain category.

Title: File path (string)
Code: `dmsFromPath

Visibility: yes
Default: — 

An argument containing the categorized path to the file to be uploaded as an attachment.
Applies to operations of the Data Model in Domain category.

Title: Essence Type
Code: regType
Visibility: yes
Default: — 

Select from the list of types of entities to be registered".
Possible values:

  • Users (user, 1) - User connection registrations.

  • SIP-users (sipuser, 2) - SIP device connection registrations.

Applies to operations of the Registrar category.

Title: Method
Code: regOperationU
Visibility: yes
Default: `Get connection websocket'

Operation selection.
Possible values:

  • Get websocket connections (read_user_websock_connections, 1) - Get an array of data about websocket connections in the form of JSON.

  • Get registrations (read_user_registrations, 2) - Receive an array of data about registrations via HTTP in the form of JSON.

Applies to operations of category Registrar for the selected entity type Users`.

Title: Method
Code: regOperationSU
Visibility: yes
Default: `Get Registrations'

Operation Selection.
Possible values:

  • Get registrations (read_user_registrations, 1) - Get an array of data about device registrations.

Applies to operations of the Registrar category for the selected entity type SIP users`.

Title: Account
Code: regAccU
Visibility: yes
Default: — 

An argument containing the login or entity ID. If the value is empty, all records will be returned.
Applies to operations of category Registrar for the selected entity type Users`.

Title: Account
Code: regAccSU
Visibility: yes
Default: — 

An argument containing the login or entity ID. If the value is empty, all records will be returned.
Applies to operations of the Registrar category for the selected entity type SIP users`.

Title: Filter
Code: regFilter
Visibility: yes
Default: — 

Search filter for the operation of retrieving entities of the Registrar category.
Specified as a JSON structure containing the object. Order of specification and application (parameter filter).

Title: Sorting
Code: regSort
Visibility: yes
Default: — 

Sorting mode for the operation of retrieving entities of the Registrar category.
Specified as a JSON structure containing an array. How to specify and apply (parameter order).

Title: Fields
Code: regFields
Visibility: yes
Default: — 

Object issue mask (field) for the Registrar' category entity retrieval operation.
Specified as a JSON structure containing the object. Order of specification and application (parameter mask).

Title: Additional Parameters
Code: regParam
Visibility: yes
Default: — 

Additional parameters of the Register category selection operation.
Additional fields: offset, limit, etc. How to specify and apply them.

Title: Method
Code: bindingOperation
Visibility: yes
Default: Add

Selects the operation with call context labels.
Applies to operations of the Call Binding' category.
Possible values:

  • Add (add, 0) - Adds a label.

  • Remove (remove, 1) - Deletes the label.

  • Change (setx, 2) - Replaces the label with a new one.

  • Clear (cleanup, 3) - Clears the label.

  • Check (contains, 4) - Checks for the presence of the specified label and returns 1 or 0.

  • Get (get, 5) - Returns the label.

Title: Mark
Code: bindingLabel
Visibility: yes
Default: — 

An argument containing the text content of the label.
Applies to operations of the Call Binding' category.

Title: Method
Code: callmanagerOperation
Visibility: yes
Default: `Call Search'

Selects the operation to control the call.
Applies to operations in the Call control category.
Possible options:

  • Lookupcall (lookupcall, 9) - Returns the call ID (DialogId) by one of the key values: DialogId, InviteId, CallId of one of the shoulders, URI of one of the shoulders in <sip:Username@Domain> format, etc.

  • Conference Search (lookupconf, 10) - Returns the conference identifier (ConfId) by one of the key values: ConfId, room number, conference URI.

  • Listcalls (listcalls, 11) - Returns a list of calls in the domain.

  • Listconfs (listconfs, 12) - Returns the list of conferences identifiers (ConfId) in the domain.

  • Call Information (getcall, 13) - Returns information about the call.

  • Conference Information (getconf, 14) - Returns conference information.

  • Outgoing call (`invite, 0) - Initiates a new call from one subscriber to another. It is made by the IVR service, which first calls one subscriber and then switches it to another subscriber by means of a SIP request REFER.

  • Outgoing call from IVR (invitebyivr, 18) - Initiates a new call and connects it to the specified IVR script. Is made immediately by the IVR service. The subscriber can be specified either through a number or an account.

  • Call Completion (bye, 1) - Ends the specified call or set of calls on the specified call URI.

  • Notify (notify, 17) - Sends a NOTIFY request to the device with the event type specified in the event parameter (For example, BroadSoft extension for device management). The callid parameter specifies the shoulder behind which a particular device is located. The command is executed only if, in accordance with RFC3265, the device has reported support for the specified event type (extension). Optional parameters: body and contenttype.

  • Transfer to number (refer, 2) - Performs transfer of the subscriber of the specified call to the specified number. It is performed by IVR service, which swaps the shoulder (SIP request INVITE+Replaces) and sends a SIP request REFER.

  • Transfer to IVR (refertoivr, 19) - Performs transfer of the subscriber of the specified call to the specified IVR script. It is performed immediately by the IVR service, which substitutes the shoulder (SIP-request INVITE+Replaces).

  • Connection (referreplaces, 3) - Performs connection of subscribers of two different calls, beating off the remaining subscribers. It is performed by IVR service, which swaps the shoulder (SIP-request INVITE+Replaces), then transfers to another subscriber using SIP-request REFER+Replaces.

  • Transfer to Conference (referconf, 8) - Switches one of the subscribers of the specified call to the specified conference. If the other party has the conference on hold, he/she only has to press HOLD.

  • Conversion to Conference (switchconf, 4) - Performs the transfer of both call parties to a shared conference. Performed by IVR services, each swapping a separate shoulder with an INVITE+Replaces SIP request, and then transferring to a conference room number with a SIP request REFER.

  • Stop Conference (stopconf, 5) - Terminates the specified conference with automatic disconnection of all participants.

  • Attendee List (getparticipants, 15) - Returns a list of conference attendees.

  • Participant Information (getparticipant, 16) - Returns information about a conference participant.

  • Attachparticipant (attachparticipant, 6) - Makes an outgoing call from the specified conference to the specified number.

  • Disconnect Participant (detachparticipant, 7) - Disconnects a participant from the conference.

Title: Parameters (JSON)
Code: callmanagerParams
Visibility: yes
Default: — 

Parameters for the call control operation.
The value for each method is a JSON structure in the form of an object with content corresponding to the management APIs calls and conferences.
Applies to operations in the Call control category.

Title: Method
Code: sipuserOperation
Visibility: yes
Default: `Set huntblock'

Operation selection.
Possible values:

  • Install huntblock (huntblock, 0) - Installation huntblock.

Applies to an operation of the Management category sipuser.

Title: Login or Id
Code: sipuserLoginOrId
Visibility: yes
Default: — 

Argument containing the login or id of the sipuser entity in the domain.
Applies to an operation of the Management category sipuser.

Title: Timeout Type
Code: sipuserHBStrat
Visibility: yes
Default: `Replace'

Operation selection.
Possible values:

  • Replace (single_newexpire, 1) - Replaces a single state with another of the same state with a new autoexpire timer set.

  • Maximum (single_maxexpire, 2) - Replacing a single state with another of the same state with setting the autoexpire timer to a time equal to max(remainder, new time).

Applies to an operation of the Management category sipuser.

Title: Timeout, sec.
Code: sipuserTTLSec
Visibility: yes
Default: — 

The blocking time of the specified sipuser for huntq queues in seconds.

Applies to an operation of the Management category sipuser.

Title: Commentary
Code: sipuserComment
Visibility: yes
Default: — 

Comment blocking the specified sipuser for queues huntq.

Applies to an operation of the Management category sipuser.

Title: Key/link to record
Code: recLink
Visibility: yes
Default: — 

An argument containing the path to the storage record file.
Applies to an operation in the Download call recording category.

The key is generated in the events class callevents. Stored in the call center collection /callcenter/connections/ArchiveConnections.
Possible key formats:

  • 'sk:StorageKey:RecPath'

  • 's3:RecPath'

  • 'fs:RecStorageId:RecPath'

Title: Storage ID
Code: recStorageId
Visibility: yes
Default: — 

OBSOLETE. Left to support previously created scripts.
An argument containing the storage identifier/code.
Applies to an operation in the Download call recording category.

Title: Path to Vault Entry
Code: recPath
Visibility: yes
Default: — 

OBSOLETE. Left to support previously created scripts.
An argument containing the path to the storage record file.
Applies to an operation in the Download call recording category.

Title: Result to variable
Code: resultVariable
Visibility: no
Default: — 

Variable to save the result of the operation.

Title: Transition
Code: transfer``
Visibility: no
Default: — 

The component to which control is passed on successful completion of the operation.

Title: Transition, Time
Code: transferTimeout
Visibility: no
Default: — 

The component to which control is passed after the operation result timeout expires.

Title: Transition, Error
Code: transferError
Visibility: no
Default: — 

The component to which control is passed if an error occurs.

See also