To open a composition diagram, double-click on the composition’s icon in the SIS View composition list. Below is an example of a freshly created composition diagram, plus details on the composition start and end, service, variable manipulators, condition (branching), halt,and parallel block elements.

The control flow:

  • starts at the composition start. From here you connect to other elements (Condition, Service, Assign, and so on) using the connect link from the palette. The connect link defines a next statement relation. You use it to specify the sequence of script statements in the composition.

  • ends at the composition end element.

Composition diagram

Below is an example of a freshly created composition. It includes a start node (top-left) and an end node (bottom-right).


Composition start and end

The composition start and composition end represent the entry and exit points of the composition from the perspective of an incoming initial message from the network. Composition start and end points may also include a signalling interceptor (the triangle on the start/end element).



Composition start

Composition end

The composition input interceptor lets you manipulate the composition environment (setting variables, invoking extensions, and so on) before executing any of the composition’s service invocations or combining logic. The composition output interceptor can be used to perform manipulations after the composition’s service execution logic.

Tip To configure either of these interceptors, double-click the white arrow in its symbol.
The interceptors content opens in a new Editor tab.

Service element

The Service element specifies how to invoke a service (either local or external). The element does not name the service directly — it uses one of the service reference names (which in turn refers to either a local SLEE service or an external platform). As well as service reference name, you can configure other parameters (such as the timeout period and behaviour on timeout).

Tip To change the service invocation parameters, double-click the area at the centre of the Service icon, containing the service reference name.
A dialog with service parameters displays.

Each service:

  • can (optionally) have associated failure settings, specifying the response to send to the network if service invocation times out

  • contains an input and output signalling interceptor, to allow modification before or after service invocation; these are empty by default, and can be opened in a separate diagram by double-clicking the white arrows at top or bottom.

Variable manipulator elements (assign, delete)

Through the assign element, a variable can be set to:

  • a specific value,

  • the value of any other existing variable

  • a complex variable type (such as a CalledPartyNumber)

  • the result of a string-manipulation function (such as a substring or string-length).

Through the the delete element, an existing variable can be "unset".


Condition (branching) element

The Condition element represents a conditional selection within the composition’s flow chart logic. It has two outgoing connections:

  • <true> — followed if the condition evaluates to true (created using the if-true link from the palette)

  • <false> — followed if the condition evaluates to false (created using the if-false link from the palette)

Note A Condition statement must always have both, a <true> and <false> connection.
Tip To edit a Condition, double-click anywhere on the icon (which contains the condition’s textual representation at its centre).
The Condition Editor opens in a new Editor tab.

Halt element

Halt elements allow you to stop the composition at any point during the script run. After encountering a halt, the SIS will evaluate no more composition instructions and proceed to the composition end.

For SIP, a halt element can be configured with a failure response, indicating what shall be sent to the network.

Note Halt elements cannot have an outgoing connection to another diagram element as they represent terminals of the invocation chain.

Parallel block element

A parallel block allows you to define a set of services that should run in parallel, and meet at a synchronization point.

Note Each parallel block has input and output signalling interceptor elements, to modification of signalling before any service runs, or after all included parallel services have run.
Tip To add a new parallel service to a block, use the Service tool from the Palette, to drop a new service into the Parallel Block compartment. (Configure parameters and interceptors for these services the same way as "normal" services).
Warning Each parallel service has to connect directly to the parallel block’s output interceptor, and cannot connect to another parallel service. In other words, you cannot run two parallel services in a row. (May be supported in future version of SIS.)
Tip Each parallel block has individual timeout and timeout-handling parameters (similar to a service generally). To change them, double-click the parallel block background.
A popup dialog, similar to the one for configuring services, displays.
Previous page Next page