Reference8:Concept Operator

From innovaphone wiki
Jump to navigation Jump to search
There are also other versions of this article available: Reference8 (this version) | Reference9

Applies To

This information applies to

  • innovaphone Operator V8
  • innovaphone PBX V8
  • Microsoft .NET 3.0 framework

Tested with

  • MS Vista
  • MS Windows XP SP3
    • (.NET CLR: 2.0.50727.3082. That is, .NET 3.0 SP3 was installed.)
  • MS Windows 7 Professional 32bit/64bit
  • MS Windows 8 Developer Preview (see Installation Under Windows 8)

More Information

The innovaphone Operator is an operator console application for the innovaphone V8 PBX.

It targets the MS .NET 3.0 framework and is implemented as a WPF (Windows Presentation Foundation) application.


screenshot depicting the active calls area (top), search area (middle), waiting calls area (bottom)


  • Busy-lamp field (divided into groups)
  • Support for Master/Slave scenarios
  • Call transfer with consultation
  • Call transfer without consultation (blind-transfer)
  • Reverse LDAP lookup (name resolution) of incoming PSTN numbers
  • Searching for PBX users. Results inform about:
    • Live display of busy status
    • Current calls
    • PBX presence status
    • Permanent diversion
  • Search by group
  • Searching within an LDAP directory.
  • Keyboard operability
  • Possibility to send instant messages
  • Drag & Drop
  • Call journal
  • Waiting Queue monitoring
  • Nightswitch (de: Nachtschaltung)
  • Monitoring of blind-transferred calls
  • Parking and unparking of calls
  • Audio greeting solution (see Recording-/Greeting Function below)
  • Audio recording solution (see Recording-/Greeting Function below)
  • Editing of diversions (CFU,CFNR) per user
  • Editing of presence information (activity, textual note) per user
  • Inline Help
  • Localized versions available (currently en, de, it, nl)



This section is for administrators.

The application installs in the start menu under Start/Programs/innovaphone AG/Operator.

  • Start the application. The configuration dialog should be displayed which is otherwise accessible under File/Configuration.
  • Proceed to the tab General
    • Enter the IP address of the PBX, the long name of the operator user and a few other settings. Help is available by pressing on the help-expander.
    • Enter the long name of the Query User( Abfragebenutzer). The Query User must be existing on all PBXs. It is used to establish a separate SOAP session to control the visibility of groups & users. Further hints, see #Reference Thoughts, Recommendations.
  • LDAP support was tested against an ESTOS Meta Directory. Useful default settings are accessible within the configuration dialog tab LDAP, if you pressed on the help-expander.
    • Just click on the "here"-button to configure default settings.
    • Modify the server's IP address according to your needs (Note: The Estos Meta Directory runs on port 712 by default).
  • Proceed to to the tab LDAP Location
    • Expand the help by clicking the help-expander.
    • Click on the "here"-button.
    • Modifiy the default settings according to your needs.

Location for Configuration and Application Data

The application stores its data within the directory C:\Users\<your user directory>\AppData\Roaming\innovaphone AG\innovaphone Operator\.

  • swconfig.xml: configuration settings. This file may be copied to other installations, in order to distribute e.g. the LDAP settings ( User/Password settings must be adapted then ).
  • swguistate.xml: various settings for window width, height, column widths
  • swjournal.xml: The call journal's entries will be stored here
  • swexceptions.txt: A supportive error text file. It is going to be created if errors occured and the user clicked on the Save option within the "Confirm Alarms" button.
  • swwarnings.txt: A supportive text file. It is going to be created if warings occured and the user clicked on the Save option within the "Confirm Warnings" button.

Reference Thoughts, Recommendations

Query User

It is recommended to configure File/Configuration/General/Query User. Readers being familar with the innovaphone Tapi Service Provider (TSP) may know the following scenario.

  • A user object _TAPI_ is to be created on all PBXs within a PBX network.
  • The user _TAPI_ is an active member of a group tapi.
  • All other users that shall be SOAP-visible[1] to the user _TAPI_ become a non-active member in the tapi group.

The user _TAPI_ is offered as default for File/Configuration/General/Query User. This makes sense in most installations where a TSP is already existing.

  • Either: If the user object _TAPI_ is not existing: Create the user object and configure a group as outlined above (User _TAPI_ as active member of group tapi. Other users as non-active member of group tapi).
    • That user _TAPI_ must be present on all PBXs within a PBX network.
  • Or: Empty the field File/Configuration/General/Query User. The application will then work internally with the user configured under File/Configuration/General/Name Of Operator.

Waiting Queue

Please, don't register the telephone of the operator directly at Waiting Queue (WQ). The operator should team-up with a WQ as follows:

  • A waiting queue wq-reception may exist.
  • The WQ is an active member of a group reception.
  • The operator user is a non-active member of the group reception.

Calls for the WQ are from now on also signalled towards the operator.


The nightswitch is a front-end for the PBX Boolean object[2]. Its actual purpose is to provide a means for a diversion. A diversion that leads callers into an out-of-business-hour announcement. Here is the idea behind:

  • A waiting queue wq-reception may exist and is configured under File/Configuration/WQ/WQ.
  • Enter the number (55 in this example) towards the out-of-business-hour announcement under File/Configuration/WQ/Diversion. It may be the number of a dedicated voicemail object.
  • Configure the time definitions for the regular business hours.
    • 1st: Start 9:00, End 17:00, Mon-Fri
    • 2nd: Start 0:00, End 0:00, Sat-Sun
  • As Mode select Automatic

Note: The automatic mode may be overridden by selecting Manual On or Manual Off as mode. Manual On causes the CFU (see below) to become active immediately and permanently.

What happens behind the curtain is as follows:

  • A new boolean object wq-reception-nightswitch will be created automatically by the operator app'.
  • The boolean object is configured with the time definitions from above.
  • A CFU is configured at the WQ wq-reception.
    • The CFU will have the number 55 from above as destination.
    • The CFU references the Boolean object wq-reception-nightswitch from above.

The mode selector for the boolean object will be available for the user. Watch out for the WQ calls list.

Out-Of-Office Diversion By CFB

If you want to reroute a call to Voicemail if no Operator is in office, this approach might be less complicated than the Nightswitch-approach:

  • Configure the waiting queue object with a CFB to voicemail.
  • Every operator has to be in the waiting queue group.(dynamic in/dynamic out)
  • Configure a function key on every operator phone to switch in and out of the group.
  • Configure the Max Call/Operator(%) above 100%.

Configuration of the Phone's Conference Facility (Recording-/Greeting Function)

Every innovaphone telephone offers a tiny conference function. Besides its apparent use, the conference function may be utilized to realize audio recording. The corresponding configuration page can be found within the phone's web UI under Configuration/RegistrationX/Recording.

Within the context of the innovaphone Operator it may also be used to provide the means for a personal audio greeting. A greeting that is about to played right after an incoming call was connected. For each incoming call over the course of a working-day.

Both scenarios require a voicemail script.

Note: Only one of the two possibilities can be configured. Either the audio recording or the greeting function. The two cannot be used concurrently.

The following two sub-sections are going to explain the required configuration steps for both scenarios.

Recording Function

This functionality is actually a reuse of a solution being available since firmware version 6. Please read through the following article:

All that's needed to be configured within the innovaphone Operator can be found underneath File/Configuration/Misc..

  • Assignment of the Recording-function: Choose Recording
  • Destination Number: Enter the number that was configured in the phone's web UI underneath Configuration/RegistrationX/Recording.

A recording button will then be offered on-top of the list of incoming calls. The button allows to start/stop recording and serves as an indicator lamp.

Greeting Function

A few assumptions are taken into consideration.

  • The PBX box offers a CF-card that is up and running.
  • A voicemail object is going to listen on number 77.

Deploy the following voicemail script (audio menu in english)

At the PBX create a new voicemail object

Configure the recording function at the operator user's telephone

  • Proceed to Configuration/RegistrationX/Recording
  • Select manual as Mode
  • Enter 77 as Number

Within the innovaphone Operator proceed to File/Configuration/Misc.

  • Assignment of the Recording-function: Choose Greeting
  • Destination Number: Enter the number (77 in this example) that was configured in the phone's web UI underneath Configuration/RegistrationX/Recording.

The audio greeting will start automatically for incoming external calls. The decision which calls are treated as external calls is based on the configuration of File/Configuration/LDAP Location/External Line (Mostly 0). A button will be displayed on-top of the list of incoming calls, if an audio greeting is played. The button allows to stop the greeting.

The audio greeting won't be started for:

  • a fallback call, i.e. a call that was blind-transferred, but never connected.
  • a call that was unparked
  • a call that was refetched from the list of blind-transferred calls
  • internal calls

In order to record a new audio greeting

  • Just dial the number of the voicemail object (77 in this example).
  • The script will prompt for a key press on the telephone
  • Record the new greeting and stop the recording with another key press on the telephone
  • You will be prompted with the new greeting
  • End the call (on-hook) - the new greeting will be active from now on.


HTTPS support was built-in. However, currently it must be activated manually within the operator's configuration file.

  • Terminate the operator.
  • Open C:\Users\<your user directory>\AppData\Roaming\innovaphone AG\innovaphone Operator\swconfig.xml within a text editor.
  • Replace http:// by https:// and save the file.
  • Restart the app'. A status-bar symbol informs about the HTTPS configuration.

All incoming X.509 certificates will be accepted. I.e. HTTPS may only serve as a means for encryption.

Suppress Call Display

A privacy list may be administrated manually within the operator's configuration file. The purpose is to provide a means for privacy, such that call details won't visible from within the application.

  • Terminate the operator.
  • Open C:\Users\<your user directory>\AppData\Roaming\innovaphone AG\innovaphone Operator\swconfig.xml within a text editor.
  • Enter the list as in the following excerpt (name=".." corresponds to the user's short name)
<?xml version="1.0" encoding="UTF-8"?>
	   <hide name="mst"/>
  • It's also possible to add all objects to a privacy list by adapting the config part as below:
<?xml version="1.0" encoding="UTF-8"?>
	   <hide hide-all="true"/>
  • Restart the app'.

Installation Under Windows 8

The following information was gathered with

  • Windows 8 Developer Preview Build 8102 32-bit
  • innovaphone Operator 8 hotfix2 Build 8104

The installation went as follows:

  • Switch to Desktop.
  • Download the *.msi installation package for the Operator 8 as usual.
  • Start the installation.
  • The Operator installation will inform by a Yes/No dialog that .NET 3 is missing. Click on No.
    • (Windows Update is going to perform the required steps)
  • The Windows Installer now informs about a missing requirement: .NET Framework 3.5.1.
  • A Yes/No dialog requests the Ok for Windows Update to modify the Windows Features. Click on Yes.
  • Windows Update is now going to download the missing framework and informs afterwards:
    .NET 3.5.1 installation finished
  • Again start the Operator installation.
  • The Operator application can now be started by switching to the Start screen:
    Operator icon on Windows 8 Start screen

Occasional Pitfalls

Call Waiting

The following relation must be payed attention to. Otherwise may parked calls not be unparkable, fall-back calls may not be signalled towards the operator,.. .

  • Don't disable Call Waiting at a phone, serving as the operator's phone.
  • Don't configure the Busy on...calls setting within the operator's PBX user object.

Recall Timeout

The value PBX/Configuration/Recall Timeout should be set to a value greater than 0 seconds. Blind-transferred calls will then show up in the list of transferred calls.


After configuration, please consult the inline help by pressing on the '?' in the upper right header or press F1.

The inline help explains common procedures.


This section features topics beyond the scope of the inline help.

ALT+Key Handling

When pressing the ALT-key one can see text labels going to underline one single character serving as an ALT-destination. E.g. ALT+F sets the input focus into the file menu (en-version).

  • Keyboard-only editing of diversions (en-version)
    • A PBX user has been searched for, is selected and its details window is visible.
    • ALT+D jumps to Diversion(CFU).
      • An additional single D jumps to Diversion(CFNR)
    • ENTER activates the text edit field. The diversion can now be edited.
    • ENTER writes the new diversion into the PBX.

  • Keyboard-only editing of presence activity (en-version)
    • A PBX user has been searched for, is selected and it's details window is visible.
    • ALT+P jumps to Presence Activity.
    • ENTER activates the text selection list.
    • Select an activity by means of alphabetic characters or by UP,DOWN.
    • ENTER writes the new activity into the PBX.
    • The presence note field will be shown.

  • Keyboard-only editing of presence note (en-version)
    • A PBX user's presence activity has just been edited (see above). The presence note field became visible.
    • ALT+N jumps to the presence note edit field.
    • ENTER activates the text edit field. The presence note can now be edited.
    • ENTER writes the new note into the PBX.

Popup Lists

The PBX search edit field must not be left, in order to select a PBX and a group for search filtering.

  • Keyboard-only searching by group (en-version)
    • The search edit field is empty and has focus (ESCAPE leads to this state)
    • Enter a dot. A popup list shows up with all available PBXs.
    • Select a PBX by means of alphabetic characters or by UP,DOWN and press ENTER.
    • The search edit field has now focus again.
    • Enter a second dot. A popup list shows up with all available groups.
    • Select a group by means of alphabetic characters or by UP,DOWN and press ENTER.
    • The search edit field has now focus again. The first few group members will be shown.
    • Search results can be browsed by means UP,DOWN or PAGE-UP,PAGE-DOWN.
    • A group user may now be searched for explicitely.

Business Card Tooltip

Detail informations are available for calls with a successful reverse LDAP lookup. Wherever such an active call is displayed, a business card like tooltip reveals further details.

Prepared Dial

Below the search edit field (PBX- or LDAP search) is a dial target preview displaying the number that's about to be dialled. The dial target preview is editable. Either by mouse click or by pressing TAB and then ENTER.

Searching Autonomous PBXs

An autonomously administrated PBX is thought to be registered at a PBX object hannover within the master.

  • Method 1
    • Search for hann. Search results should show the targeted object.
    • A new entry hannover should appear in the PBX-list on-top of the search edit field. Nothing is selected in that list.
    • Select hannover by means of the DOWN key.
    • Press the RIGHT key.
    • The entry hannover is now the selected entry in the PBX-list. The search edit field is empty.
    • Search for entries. This next search is now directed to the hannover PBX.

  • Method 2
    • The entry hannover is already present in the PBX-list on-top of the search edit field.
    • The search field is empty. The input caret is at the beginning of the search edit field.
    • Press '.' (period/dot).
    • A popup list appears, allowing to select a known PBX.
    • Press ENTER.
    • The entry hannover is now the selected entry in the PBX-list. The search edit field is empty.
    • Search for entries. This next search is now directed to the hannover PBX.

Transfer 2x Outgoing Calls

Simply by Drag&Drop.

  • Drag one outgoing call and let it drop on the other outgoing call.

Note: Both calls must be in the connected state.

Retrieve Badly Blind-Transferred Call

An incoming call is connected and a transfer destination has been searched for. The call shall be transferred without consultation.

  • The dial target preview displays the (thought-of) correct number.
  • Press CTRL+ENTER.
  • The call is now blind-transferred and appears in the list of transferred calls. As long as the transfer destination didn't connect the call.
  • Then it's been realized that the destination was wrong.
  • Double-Click on the call to retrieve.

Send Instant Message About Missed Call To Absent User

An incoming call is connected and a transfer destination has been searched for. The destined user is unavailable and may have set its presence activity to Presentation.

  • Press CTRL-M, in order to send an instant message.
  • The Send Message window appears.
    • If a reverse LDAP lookup succeeded for the caller, the message will already be prepared with a short text. The prepared text contains the caller's name and company.
    • The callback number field will be prepared with the caller's number.
  • Press ENTER. The instant message is going to be sent. The dialogue closes, the search edit field empties.

Occasional Users

The application's header buttons (menu-header, right-most) feature a button Minimize to tray notification area. In this mode an incoming call is displayed as popup in the monitor's lower right for a few seconds. The popup contains caller detail informations and is clickable. If clicked on, the app' reappears and the incoming call is connected.

Restart A Disconnected Session

The network connection to the PBX may get lost (reboot or other failure). The session indicator in the lower right of the status-bar will then turn reddish and display as Op8-session-disc.png. Just click on the button (with the white triangle), in order to restart the connection.

Known Issues

Windows 2000

The software does not run under Windows 2000 and descendents.

Application Won't Start On Windows XP

The application proved to run on a .NET CLR (Common Language Runtime[3]) of version 2.0.50727.3082. If you experience the following error content on startup, telling the CLR 2.0.50727.1433 is older, you should have a look into what Windows Update offers as optional components. If there's a cumulative update for .NET 2.0/3.0/3.5 you're asked to install said update (addendum: The update may also show up as .NET 3.5 SP1[4]). That update is going to upgrade the CLR onto the required version. Please note that the following excerpt also implies the need for a prior update to Service Pack 3 as mentioned in the requirements section.

31.07.2009 16:40:46,innovaphone Operator,

OS: Microsoft Windows NT 5.1.2600 Service Pack 2
CLR:    2.0.50727.1433 

An internal error occurred 

Exception, date=31.07.2009 16:40:45, info=unhandled exception
'System.Windows.Controls.ToolTip' value cannot be assigned to property 'Value' of object 'System.Windows.Setter'.
'System.Windows.Controls.ToolTip' is not a valid value for 'Setter.Value'; 
values derived from Visual or ContentElement are not supported.  
Error at object 'System.Windows.Controls.ToolTip' in markup file 'operator;component/activecallsincontrol.xaml'.
at System.Windows.Markup.XamlParseException.ThrowException(String message, Exception innerException, Int32 lineNumber, Int32 linePosition, Uri baseUri, XamlObjectIds currentXamlObjectIds, XamlObjectIds contextXamlObjectIds, Type objectType)

Blind-Transferred Calls Don't Show Up in List of "Transferred Calls"

Calls that were blind-transferred by the Operator application may probably not appear in the respective call list.


  • Within the PBX the field Administration/PBX/Recall Timeout is presumably empty.


  • Enter something useful in seconds (30 or 60). A blind-transferred call is going to fall-back after that amount of seconds if not accepted in-between.

Blind-Transferred Calls Don't Fall Back

Calls that were blind-transferred by the Operator application don't fall-back to the operator.

Application cannot Initialize at PBX

The application may fail to initialize at a PBX.


  • The application repeatedly prompts a red-colored error message onto the status line
info='PBX Setup Completed:', error='Initialize failed!'


  • The Windows proxy settings interfere


  • Alter the proxy configuration within Internet Options/Connections(/LAN Settings). Those are accessible either via the Windows System Settings or from within the IE. Ensure that either the proxy-configuration is correct or deactivate it completely. It has been reported that the checkmark-activation of Internet Options/Connections/LAN-Settings/Bypass proxy server for local addresses also helped to solve the proxy-related problem.

Operator Freezes On Startup

The operator application was reported to get stuck on startup. The user interface turned white and did not respond to any input.


The application window looks as follows

Operator freezes on startup



This symptom can occur due to a corruption of the framework's font cache data file. Try the workaround:

  • Start/Run of services.msc
  • Stop the service Windows Presentation Foundation Font Cache Presentation Foundation-Schriftartcache
  • Now delete the system file FontCache3.0.0.0.dat
The file likely resides under Windows XP in
%systemdrive%\Documents and Settings\LocalService\Local Settings\Application Data

The file likely resides under Windows Vista/7 in
  • Reboot the machine


If you are involved or intend to assist in localizing the innovaphone Operator to a new language the following article might be of interest:


  1. SOAP-visible shall mean, that the _TAPI_ user gets SOAP UserInformation messages for other users, whenever a user object changes, cf. the SOAP reference.
  2. Boolean object: See Administration/PBX/Objects/Boolean
  3. CLR, see:
  4. .Net 3.5 SP1: