Status and versions

April 2020. Valid for ProCall Enterprise 6.x and 7.x

ProCall Enterprise allows administrators to centrally configure, distribute and roll out content such as contacts for favorites and monitor for users via UCServer groups or UCServer profiles.

This article explains how you, as an administrator of a ProCall Enterprise system, can set global defaults for users as to which contacts/content should be visible in the client's monitor and favorites.

This gives you the ability to ensure compliance with company policies and also makes it easier to set up the software on the client side.

Basically, ProCall Enterprise provides the following options for administrative defaults:

Profile settings on the UCServer

  • Profile settings in UCServer administration

Client content XML file

  • Administrative rollout of a client content XML file

Central administrative XML files

  • Can be additionally loaded by the client

Best Practice

The approach described in the best practice procedure requires detailed IT expertise in configuration and administration.

XML ( eXtensible Markup Language) may be used to customize content. To create or edit XML files, you should be familiar with XML syntax.

Editor for creating/editing XML files

For creating/editing the XML file you can use a text editor or XML editor that can save the files in UTF-8 format (without BOM).

Only lowercase SIP addresses are used in the UCServer.

Specify content via the UCServer administrator

The simplest way to make contacts administratively available to users in the monitor is to make the appropriate settings in the user administration of the UCServer.
This allows a display group of ProCall Enterprise users to be shown in the UCClient monitor of the users, which contains appropriate contacts depending on the setting level.
Activation can take place on two levels: Globally or at group level.

Procedure

The settings of administrative contents in the ProCall client monitor or the favorites are possible in the UCServer administration by activating the corresponding option.
The following restrictions must be observed:

  • Only UCServer users can be specified in the monitors.

In this case, the possibilities are limited and the system can pass to the client either all contact data or only the contact data organized in the user groups. There is no dedicated selection.
The approach is suitable for the needs of smaller organizations that do not require complicated configuration to administratively provide users with content for monitor and favorites.

Activate globally

In the UCServer administration under General – User administration – Global settings

the option All users have all users available in the monitor is available. If the checkmark is set, all UCServer users are displayed in the above monitor group. This is useful to provide ProCall Enterprise users with an initial entry point from which they can further customize the monitor according to their own preferences.

Activate at group level

To save resources and keep a better overview in the monitor, the user defaults can also be activated via group settings. Activation at the group level varies depending on the ProCall version.

Activate at the group level with ProCall 6 Enterprise

In the UCServer administration, in the Properties of a group, under Services  Default for user monitors, the option Users of the group are displayed in the members' monitor can be activated.
This will automatically show each member of the group the other members of the group in the "ProCall Users" group of the monitor.
If a user is included in more than one such group, the contacts displayed in the monitor group are added together (multiple contacts are filtered).
This can be used, for example, by creating so-called "display user groups" in User Management. The above-mentioned flag is only set for such groups. This ensures that users are only members of the necessary groups (ideally only one).

Activate at group level with ProCall 7 Enterprise

As of ProCall 7 Enterprise, the option Users of the group are displayed in the members' monitor no longer exists.

In the UCServer administration in the Properties of a group, so-called monitor groups and buttons are now available as tabs.
This allows you to configure which administrative groups the members of the edited group should have configured in their favorites and in the monitor. 
There are options for the groups to appear in the monitor, favorites, or both.

For the user, the administrative groups are marked with a lock icon and cannot be individually filled with content.

For buttons, there is the same functionality described above.

Preset content through client content XML file

A flexible way to provide users with content for favorites and the monitor is given by the possibility of customizing the client content files stored by the UCClient on the UCServer.

Procedure

The method presented here to preset contents for monitor and favorites for the user is relatively easy to apply due to the comfortable editor as the initial configuration.
Please note that the user's own configuration will be lost, as it is not possible to merge with already configured content.
The user can still edit its contents, so that the default can be changed if not restored regularly, for example, by nightly overwriting.

Therefore, this procedure is only recommended if you want to specify a changeable initial configuration for new users.

Background

Each UCClient stores the contents of the favorites and monitor on the UCServer. The data is stored there as XML files in the file system. The data is saved after each change of the content (position of contacts or their addition or deletion) within approximately five seconds after the last change.
These files are loaded by the client as soon as a rebuild of the content is necessary (restart or "reset layout") or after the reestablishment of the connection to the UCServer.

The client content XML file

The client content files are located in the installation directory of the UCServer in the subdirectory config/users.
A file is created for each user. The filename follows the pattern <username>_clientcontent.xml.
This file contains the contents of the favorites/monitor. No layout information is stored (position of the monitor on the screen, window size, etc.). This information is specific to the respective client and is therefore stored accordingly on the client-side.
Please note that these files must be saved in UTF-8 format (without BOM) to be able to decode special characters correctly again if necessary.

Recommended procedure for presetting the configuration for a user:

Use the configuration of a client as the master configuration.
Then copy the <username>_clientcontent.xml file and rename this copy with the appropriate username.

Please make sure that the client of the corresponding user is not started at this time.

In the XML file for the XML element "content", the attribute "revision" must be deleted if the content is to be taken over in the client.

The attributes "iseditable" and "lastwriter" are possible, but do not have to be changed/entered at this point.

"iseditable"is intended for a future extension where the entire content can be locked for modification by the user. This is currently not implemented yet.
"lastwriter" is only written by the UCServer and contains the ID of the client that last modified the contents.
"grouplist" Grouplist with name "Favorites" and ID 100 stands for the favorite content.
Grouplist with name "Contacts" stands for the monitor content.

If "contact" XML elements are created manually (i.e. not via the UCClient Editor), it must be ensured that the corresponding "item" XML elements are available under "group", "grouplist". Otherwise, the specified favorite and monitor content will not be displayed in the UCClient.

When the corresponding user now starts his client, he will see the content that you have administratively set up.

Preset content via centrally administered XML data

This solution is also based on an XML file that must be created administratively. The content of this file is easier to understand and is added in addition to the client content file ("merge"). As an administrator, you have additional options here to restrict or allow user access to the content.

Procedure

With the XML file, it is possible to define the content of the monitor and favorites for users in an extremely flexible way. The file can be created relatively easily using scripts or programs from other data sources (e.g. using PowerShell from an AD).
Together with the possibility to set the location of the file by means of group policy, this allows centralized management to be implemented.

Central administrative according to current status only with the ProCall client for Windows.
Clients for macOS and mobile apps cannot reload these files.

Procedure

Create a corresponding XML file and make it accessible either via a network share or via a web or FTP server.

Now the storage location (http, ftp or file share) of the XML file must be made known according to one of the following options:

Via the policy URL for additional monitor content specified by the administrator in the Group Policy – Monitor subfolder

Via the profiles in the UCServer administration in the "Monitor" group via the URL element for additional monitor content specified by the administrator.

By manually manipulating the registry

HKEY_CURRENT_USER\Software\ESTOS\UCServer4\CtiMain\MonitorAdminContentURL (REG_SZ) 

However, this option should be used only for automations and should be performed only by experienced administrators. Otherwise, this method is not recommended.

Example

http://mywebserver.company.com/somepath/admincontent.xml

If the user now starts the client, the XML file is loaded and displayed in the monitor in addition to the user's own configuration.

Test XML file

To be able to test the file easily, it can also be placed in "%APPDATA%\estos\ProCall" under the name "AdminMonitorContent.xml" on the user's computer.

After restarting the client this file is loaded.

Please make sure that the UCClient monitor is switched on.


Creating the XML file


Example

The following example shows the structure of the file in a simple variant

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<content iseditable="1" version="2" lastwriter="">
<grouplist iseditable="0" persistent="0" id="32768" name="Test Team">
<group id="G:Untergruppe1" name="Untergruppe 1">
<item id="sip:frisch@estos.de" />
<item id="sip:bohm@estos.de" />
<item id="sip:neumann@estos.de" />
<item id="sip:lang@estos.de" />
</group>
</grouplist>
</content>
XML
The above example is displayed in the monitor in a corresponding test environment as follows:

Further example for favorite contacts

Example for presetting Favorite contacts

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<content iseditable="1" version="2" lastwriter="">
	<grouplist iseditable="1" persistent="1" id="100" name="Favoriten">
		<group iseditable="0" persistent="0" expanded="1" id="G:TestTeam1" name="Test Team 1">
			<item id="sip:frisch@estos.de"/>
			<item id="sip:bohm@estos.de"/>
		</group>
		<group iseditable="0" persistent="0" expanded="1" id="G:TestTeam2" name="Test Team 2">
			<item id="sip:neumann@estos.de"/>
			<item id="sip:lang@estos.de"/>
		</group>
	</grouplist>
</content>
XML

Please note the settings for <grouplist persistent="1" id="100" name="Favorites">. The favorites group must be set persistently, otherwise, no manual changes of the user will be saved, and the administrative default will always be used after startup.

You can define the individual groups according to your requirements. In the example above, the groups would no longer appear in the favorites if the administrator stopped distributing the additional content.


Tag description

Name

Description

content

The so-called document root tag must contain at least one grouplist.
Attribute:
"version": File version.
0: ProCall 3.0 Enterprise; Other values cause ProCall 3.0 Enterprise not to read the content.
1: ProCall 4.0 Enterprise
2: ProCall 4+ Enterprise, ProCall 5 Enterprise, ProCall 6 Enterprise,  ProCall 7 Enterprise

grouplist

Describes a group list and must contain at least one group.
Attribute:
"iseditable" (optional): Indicates whether all elements within the grouplist can be edited by the user. With "0" the elements can only be copied, with "1" also deleted or moved.
"persistent": Should always be "0" in the administrative case. This way the elements are not stored in the client content file of the UCClient.
"id": Required; a number that must be unique per grouplist, starting with 32768.
"name": Required; contains the display name of the group.

group

Describes the list of contacts to be displayed. The list usually contains at least one item, otherwise only an empty group is displayed.
Attribute:
"id": Required; Arbitrary text that must start with "G:". Must be unique across all group elements in the client content file that the client stores on the server, the IDs are realized with counters. So when using symbolic names no overlap can occur.
"name": Required; display name when subgroups are made visible. Normally not visible in the client.

item

Defines a contact from the UCServer to be displayed.
Attribute:
"id": Required; the so-called ContactID of the user.
ProCall 3: This is simply formed from the LoginName with a preceding "u:".
ProCall 4, 4+,5, 6, 7: The identity of the user from the user management.
Example:
"sip:heinz.mustermann@estos.de"


The specified item IDs were resolved at the UCServer and the corresponding data was transferred to the UCClient. This allows the user to use all functions as with other favorites/monitor contacts.
If you want to display several groups in the monitor, define several grouplist elements in the XML file within the content with the respective group and the items. Among other things, care must be taken to ensure that the IDs of the group elements remain unique throughout the entire file!