myContactCenterManual

Extended nodes

Setting variables, making decisions with script code and branches, calculating, sending emails and starting timers.

The extended nodes are available in all types of flows.

Set Variables

Sets variables to fixed values. Under Assignments, you use “+” to define a Variable and an Expression for each Assignment; the node processes them in order.

Type of the variable Expression
text is taken over literally, without placeholders
number a number in the notation of the computer running the Routing Service — on German systems, for example, 1,5
yes/no true or false
point in time a date such as 05.12.2026 08:00:00 or a C# expression, for example DateTime.Now.AddHours(2) — it is recalculated on every pass
time span a duration such as 01:30:00 or a C# expression

The node sets a value that does not match the type to 0, “no” or the earliest point in time, without any message. Use Basic Math or Script code for calculations.

Typical use: setting a flag, for example Menuewahl to 2; setting the callback time for the virtual queue to DateTime.Now.AddHours(2).

Script code

Runs C# code and continues at the output whose Display text the code returns. Initially, there is one output, “Output 1”; you add more under Outputs with “+” and give them a Display text. How to write the code is described in Code in flows.

  • If the returned text does not match any connected output, the path ends.
  • If the code throws an error, the error behavior of the flow applies.

Typical use: multi-way decisions — return AvailableAgents() > 0 ? "Frei" : "Besetzt"; — and calculating values and writing them to variables.

Branch

Branches on a condition. The Expression is a C# condition; “…” opens the code editor. If it is true, the flow continues via True, otherwise via False.

Expression Checks
IsOpen() whether the skill of the conversation is open
AvailableAgents() > 0 whether an agent is free
SenderCountryCode == 49 whether the caller has a German phone number
Position > 10 whether more than ten are waiting ahead of the caller
IsDialIn whether it is a dial-in
Subject.Contains("Rechnung") whether the subject of an email contains “Rechnung”

If the expression throws an error, the error behavior of the flow applies.

Basic Math

Calculates with two numbers and writes the result to a variable.

Property Meaning Default
Term 1, Term 2 a number or a variable containing a number empty
Operation +, -, * or / +
Result the variable for the result, a number No Variable

A result for a whole-number variable is rounded commercially, with halves rounded away from zero. A division by 0 results in 0.

Typical use: incrementing a counter — Term 1 %Versuche%, Operation +, Term 2 1, Result Versuche — for example to leave a menu after three attempts.

Send Email

Sends an email with a boilerplate, for example a notification to a specialist department.

Property Meaning
External recipient the addresses, separated by commas
Subject the subject
Boilerplate the content of the email
  • The boilerplate is used in the language of the conversation, with all placeholders — variables, system variables and attached data, see Placeholders. If that language is missing, myContactCenter translates the boilerplate; without the AI key, it uses the first available language.
  • The sender is determined by the SMTP settings of the server and of the skill of the conversation, see Email system.
  • For calls and chats, myContactCenter stores a copy in the myContactCenter-Sent folder of the mailbox that is assigned to the skill for outgoing emails.
  • The node always continues via Output, even if sending fails. Only the administrators learn about the error, as Email / fax Error.

Typical use: sending a summary in the End Event; informing the team after a voicemail.

Start Timer

Starts one or more timers. Under Timer, you use “+” to define for each timer:

Property Meaning Default
Name the name under which the timer appears in the Timer Elapsed Event; unique within the flow empty
Timeout after how long it expires 10 seconds
Repeat It restarts after each expiry. off

The node does not wait; the flow continues immediately via Output. What happens when a timer expires is described in Timers.

Typical use: In the State Change Event, Waiting starts a timer “Position” with 30 seconds and Repeat; in the Timer Elapsed Event, Text To Speech says “You are in position %Position%”, then Wait for termination.

    ↑ ↓ select · Enter open · Esc close