0% found this document useful (0 votes)
48 views

Workforce Optimization Suite: Generic - ASI - Agent Synch Interface Guide

Uploaded by

Jin Zoong
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

Workforce Optimization Suite: Generic - ASI - Agent Synch Interface Guide

Uploaded by

Jin Zoong
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

Workforce Optimization Suite

Generic – ASI – Agent Synch Interface Guide

Release 7.6
October 2005
© 2005 Witness Systems, Inc.
Confidential and Proprietary Information of Witness Systems, Inc.
All rights reserved, worldwide.

All materials (regardless of form, and including, without limitation, software applications,
documentation, and any other information relating to Witness Systems, its products or services) are
the exclusive property of Witness Systems, Inc. Only expressly authorized individuals under
obligations of confidentiality are permitted to review materials in this document. By reviewing
these materials, you agree to not disclose these materials to any third party unless expressly
authorized by Witness Systems, and to protect the materials as confidential and trade secret
information. Any unauthorized review, retransmission, dissemination or other use of these
materials is strictly prohibited. If you are not authorized to review these materials, please return
these materials (and any copies) from where they were obtained. All materials found herein are
provided “AS IS” and without warranty of any kind. Witness, the Witness logo, Impact 360, the
Impact 360 logo, and Improve Everything are each trademarks (registered or otherwise) of Witness
Systems, Inc. Other brand and product names may be registered trademarks or trademarks of their
respective holders.
The Witness Systems, Inc. products are protected by one or more of the following U.S., European
or international patents: 5,790,798; 6,278,978; 6,370,574; 6,404,857; 6,510,220; 6,757,361;
6,782,093; European patent 0 833 489. Other U.S. and international patents pending. In addition,
these products are protected by U.S. and international copyright laws, and other intellectual
property laws and treaties. Unauthorized use, duplication, publication and distribution of all or any
portion of a product is expressly prohibited and will be prosecuted to the maximum extent provided
by law. Your rights in a Witness Systems, Inc. product (if any) are limited to the license rights
granted under the license agreement executed by you in hardcopy form (or if none, by acceptance
of the clickwrap terms included with the product). If needed, please contact your vendor for an
additional copy of those terms. All other rights, title and interest are expressly restricted and
retained by Witness Systems, Inc. and its licensors. .
Generic – ASI – Agent Synch Interface Guide
Table of Contents

Preface
Master the Complexities of Forecasting and Scheduling 6
Select Functionality that Meets Your Needs 6
Receive Guidance from World-Class Consultants 10
About This Guide 10
In This Section 11
Comments? 11
If You Need Help 12
Technical Support 13
Before You Contact Technical Support 13
Contacting Technical Support 14
Related Documents 14
Conventions 15
15

1 Generic – ASI – Agent Synch Interface


Related Documents 17
Prerequisites 17
Hardware 17
Software 17
Configuration 18
Adding the Interface Package to the Integration Server 18
Configuring the Generic Agent Sync Adapter Component 18
Importing Files 20
Reference Materials: The XSD and XML Files 21
XSD File 22
XML File 31
The Root Element 31
Employee Information 31
LookupKey 33
AdditionalInfo 35
Skill Information 41
Migrating XML from Previous Versions 41
Version Changes and Limitations 42

3
Sample XML File 43
Trouble Shooting 47

4
Preface

Welcome to the Witness Workforce Management Solution.


Witness Systems Workforce Management combines proven
Workforce Management functionality with insightful performance
management and actionable learning capabilities. Comprised of an
easy to use set of software and services, it simplifies the complex
task of forecasting and scheduling, enabling your contact center to
capitalize on the unique skills and proficiencies of each agent. As a
result, you can reduce costs by staffing appropriately to meet your
workload, drive business growth, and improve employee
effectiveness and retention.
With Witness Systems Workforce Optimization you can:
„ Create optimal schedules easily to reduce costs, while reflecting
each agent's unique skills, proficiencies and preferences
„ Increase forecasting accuracy by factoring in a variety of
methods and historical patterns
„ Heighten employee satisfaction, with online shift swapping,
optimal shift bidding, time-off requests, and more
„ Monitor adherence, intra-day trends, and other key contact
center metrics in real time
„ Schedule and manage single, multiple, and virtual contact center
sites across time zones

5
Master the Complexities of Forecasting and Scheduling
In today's contact center, customer call volumes are moving
targets. And when you factor in multiple sites, expanded media
options, agent proficiencies and preferences, and customer
expectations, the task of forecasting and scheduling becomes
difficult to manage without sophisticated analysis.
That's why Witness Systems offers Workforce Management, a
proven, easy-to-use set of software and services that simplifies the
complex task of forecasting and scheduling while enabling contact
centers to capitalize on the unique skills and proficiencies of every
agent. With Witness Systems’ Workforce Management, you can
reduce costs by staffing appropriately to meet your workload, drive
business growth, and improve employee effectiveness and
turnover.
Workforce Management is part of a portfolio of solutions from
Witness Systems. Long recognized for our browser-based,
multimedia quality monitoring, customer interaction recording
and compliance functionality, Witness Systems now includes the
proven Workforce Management solutions of Blue Pumpkin, a
Witness Systems Company. Thousands of users around the world
rely on our solutions each day to help them optimize their
performance and capture customer intelligence.

Select Functionality that Meets Your Needs


To meet the needs of a broad spectrum of contact centers,
Workforce Management is available in packages that deliver
different levels of functionality. Whether you're an international
organization, a small- to medium-sized business, or something in
between, Witness Systems has foundation-level and strategic
offerings that can help you receive extended business value.
Depending on your business needs today and in the future, you can
invest in the full Operational Series Workforce Management
Package, which is comprised of functionality designed to optimize
agent performance, reduce risk, and automate quality assurance.
Our Advanced Series Workforce Management Package builds on
Operational Series functionality and focuses on optimizing contact
center performance through such business drivers as first call

6
resolution, up-selling, cross-selling, and contact center customer
satisfaction. Although the specific features of the Operational and
Advanced packages differ, they include some or all of the following:
„ Forecasting and Scheduling—Accurate forecasting is the
critical first step in managing your workforce. Witness Systems’
Workforce Management integrates with your ACD and uploads
historical data directly from your ACD's database. Since call
volumes vary depending on marketing campaigns, seasons,
holidays, and other events, Operational Workforce Management
allows you to select, combine, and alter historical data to predict
future call volume and handle time. You can also set up profiles
to model call volume behavior for different events and
circumstances.
Unlike other forecasting and scheduling applications, Workforce
Management's patented skills-based engine incorporates the
unique skills and proficiency levels of each agent. It produces
optimal schedules down to the quarter hour by balancing the
defined shift rules, work patterns, breaks, off-phone times,
agent preferences, agent skills, and targeted service level goals.
By matching the right agents with the right customers,
productivity increases–and so do agent and customer
satisfaction. And when your staffing levels precisely match your
contact volumes, costs go down. For example, you can:
– Schedule single, multiple, or virtual contact centers across all
time zones
– Accommodate a dedicated, blended, or task-switching work
environment
– Schedule meetings or training without impacting service levels
– Automate compliance with government and union regulations
through a comprehensive set of work rules
– Create schedules based on skill priorities that align with your
call routing strategy
– Evaluate different “what if” scenarios, such as full-time versus
part-time, to ensure that you have the right resources to meet
the expected demand
– Create and schedule teams as a unit to support training and
accommodate employee concerns, such as carpooling or
childcare arrangements

7
„ Adherence—To help you manage and fine-tune your service
levels throughout the day, Operational Workforce Management
monitors adherence to schedule and shows you who's on the
phone and who's not, so you can take corrective action right
away. The intraday “Pulse” feature provides a real-time,
graphical view of forecasted, actual, and predicted call volume,
handle time, service level statistics, and other critical
information. You can configure alerts to notify users of
deviations from plan and use trends to reforecast, reschedule,
and proactively take appropriate staffing corrective actions.
Advanced Workforce Management goes a step further by
providing a complete view of adherence that shows all agent
activities, including front- and back-office tasks such as fax and
paper mail. Your supervisors receive instant alerts for out-of-
adherence states, enabling them to correct problems right away
while receiving a true picture of shrinkage in your contact
center.
„ Contact Center Monitoring and Management—No matter
how carefully you plan, change is a constant in the contact
center. To help you continuously fine-tune your operations,
Witness Systems Workforce Management’s intraday “Pulse”
feature provides a graphical view of contact volume, handle
times, service level statistics, agent adherence levels, and other
critical information. With Pulse, you can:
– Monitor key metrics that get updated with each fresh batch of
data from the ACD
– Track and compare actual, forecasted, and required statistics
by individual queue or combined queue
– View deviations of key contact center metrics in percentages or
absolute numbers
– View intraday trends and historical data
Our Advanced Workforce Management solutions provide a
complete view of all agent activities, including front- and back-
office tasks, such as handling faxes and traditional mail. Your
supervisors receive instant alerts for out-of-adherence states,
enabling them to correct problems right away while receiving a
true picture of shrinkage in your contact center. Better still,

8
intraday management capabilities display trends, enabling you
to reforecast and reschedule for the remainder of the day.
Witness Systems’ Workforce Management includes role-
appropriate scorecards that display actual employee
performance metrics. Our advanced solutions include an
extensive set of predefined key performance indicators (KPIs),
enabling your contact center staff to see how they're performing
against their goals. This visibility into performance can motivate
your staff to improve while enabling managers to identify trends
and take the appropriate action.
„ Web-based Agent Self-Service—Witness Systems
Workforce Management lets agents easily manage and
contribute to their own schedules without impacting service
levels. By bringing Workforce Management to the agent
desktop, you can build agent morale and retention while
enabling your managers to focus on more critical areas, such as
coaching and performance-related tasks.
Using any Web browser, agents can securely:
– Request vacations and other types of time off, even down to
portions of a day. (This applies to centers that use seniority or
rank as part of their scheduling practices.)
– Set preferences for days off and start times. Agents indicate
their first, second, and third choices for start times for each
day of the week. The scheduling algorithm balances these
preferences and then develops a schedule that optimizes
center and agent requirements.
– Swap shifts. Agents can post, negotiate, and request shift
swaps via an online Swap Board. Swap requests are screened
by Workforce Management's conflict checker and forwarded
to managers for quick and easy processing.
– View schedule and time-off information. With just a glance,
agents can get a summary of their schedules for the week and
the status of their shift swap, time off, and vacation requests.
„ Actionable Learning—To help your agents develop their
skills and career paths, Witness Systems Workforce
Management enables you to produce your own library of best
practices from recorded customer interactions. By leveraging
your finest examples of customer service, you can help your

9
agents learn valuable skills and procedures. A browser-based
interface allows agents to take training right at their desktops, in
a classroom, or remotely.
Supervisors select the appropriate training sessions from a
library of courseware, assign the training to agents, monitor
completion, and track the effectiveness of the training over time.
A flexible system of access rights enables supervisors to browse
through course completion reports and subsequent agent
performance records for individual students, teams, or contact
centers. This enables you to determine areas for individual or
group improvement and take action. It's an efficient, consistent
way to handle training across your entire enterprise.

Receive Guidance from World-Class Consultants


The Witness Systems’ Workforce Management packages include
implementation services. We also offer business consulting
services that can help you get the most from your investment.
These services are delivered by Witness Systems’ seasoned
consultants, who have years of experience with contact centers of
all sizes, types and industries from around the globe. Our goal is to
partner with you and to provide world-class services that offer
measurable results and a rapid return on investment. From
implementation to consulting to technical support and training
services, you can be confident that Witness Systems services are
delivered by people who understand business practices and contact
center operations-and care about your success.

About This Guide


This guide is intended for use by Witness Workforce Optimization
Suite administrators. It guides you through the steps to configure
the Generic – ASI – Agent Synch Interface adapter.

For information on installing any of the Workforce Optimization Suite


components discussed in this guide, please consult the online
documentation available through Witness Systems’s eSupport site:

http://www.witness.com/support

10
This guide is not intended to teach the basics of computer or
software operation or use, and does not contain tutorial
information. It is assumed that you are experienced in working
with contact center equipment and software applications as well as
PC workstation hardware and software.
Please note that this document is intended primarily for
viewing on-line. However, the format of the document is based
on that of a printed manual, to support customers who print all or
portions of the document. For similar reasons, entries in the Table
of Contents and cross references refer to page numbers. Those
same entries function as hyperlinks for ease of use when the
document is viewed electronically.

Colors may not print legibly on black and white printers. If you are using
a non-color printer, select the option to print colors as black.

In addition, please note that the screen shots used in this


guide are for illustrative purposes only. There may be some
differences between what you see in the product and these
screenshots, but those differences should not be significant or
affect the accuracy of the information contained in this guide.

In This Section
This section contains the following information:
„ How to send Witness Systems comments about this document.
See page 11.
„ How to get help. See page 12.
„ How to contact Witness Systems Technical Support. See page
13.
„ Related Documents. See page 14.
„ Conventions used in this manual. See page 15.

Comments?
Witness Systems, Inc. believes that the documentation for a
product is an integral part of the product itself. We know that the
quality of this document can affect the overall quality and usability

11
of the Witness Systems product which it documents. Therefore, we
are continuously looking for ways to improve our product
documentation. Your comments are valuable and will be carefully
considered before publishing the next release of this document. If
you find any errors, or have suggestions for improvements to this
document, please contact Witness Systems at:
http://www.witness.com/support

When calling with comments about this manual, please provide


your company name, your name and job title, and how you can be
contacted. Please provide as much of the following information as
possible.
Please rate this manual Excellent Good Average Fair Poor

Information accessible?

Manual well organized?

Information complete?

Illustrations adequate?

Text easy to understand?

Is anything in the manual confusing or difficult to understand? If so, what


and how?

What could we do to improve the manual?

Other comments. Please include page numbers and section titles where
appropriate.

If You Need Help


Witness Systems is a strong believer in customer satisfaction. Our
products are designed to provide you with the best performance for
your money and we want to make sure you get what you paid for.
One way of doing this is to provide you with the best support,
including the following resources:

12
Witness Systems, Inc.’s World-Wide-Web site: This facility
allows users world wide fast access to product information,
marketing and sales information, information about the company,
technical documentation, support case management, and support
solutions information.
Direct Internet FTP: This facility greatly speeds up transfer of
new and upgraded software to all Witness Systems customers.

Technical Support
Help from Technical Support is as near as your keyboard or your
telephone. However, before you contact us, please read the
following section. We can provide faster and better service if you
have certain information available when you contact us.

Before You Contact Technical Support


Many problems can be quickly solved with the information in the
on-line help system or in this manual. When running the product,
you can select the Help button in the upper right portion of the
window to get help for the active window or dialog box.
If you are unable to solve a problem by using the on-line help or
this manual and need help from Technical Support, please do the
following before you contact Technical Support:
1 Write down the exact problem and any details which may help
us solve the problem. If you can consistently reproduce the
problem, please list the steps to reproduce it.
2 Have at least the following information available when you
contact Technical Support.
– Product name and version number
– Server and client operating systems and service pack version
numbers
– Supporting files and screenshots (if available)
– ACD type and reporting package (for ACD related issues)
– The wording of any error messages from the product and/or
operating system.

13
– Has this problem occurred previously? If it is new, did you
change your system configuration recently?
3 Log on to the Technical Support eSupport web page at
http//www.witness.com/support.

Contacting Technical Support


Witness Systems provides a range of support options:
„ Online via the eSupport web site, including e-mail contact.
„ Telephone support is available, based on your maintenance
contract.

If using telephone support, please call from a phone near your


computer. We may need you to access information or run the program
while you are on the phone.

Europe/Middle East/
Americas
Africa/Asia Pacific

http//www.witness.com/support
(If you are reading this manual on-line, click on the URL above to
activate your web browser and go to the eSupport page.

+1 800 4 WITNESS (USA toll-free) Europe/Middle East/Africa


+1 770 754 1870 +0800 496 1111
+44 (0)1372 869 570
Hong Kong/Asia Pacific
+852 8103 0104
Australia
1 800 600 806
New Zealand
+61 2 8223 9493
Japan
+81 (0)3 5919 1875

Related Documents
For further information about the Witness Workforce
Optimization Suite, see the following Witness Systems document:
„ Witness Workforce Optimization Suite Administration Guide

14
Conventions
The following table shows the conventions that are used in this
manual.
Convention How Used

blue Notes in this document are in blue and are indicated by the
following symbol:

Apart from notes, references to other sections and pages in


this document are also in blue. You can click on the blue text
to go to the referenced section or page.
bold Bold text in a sentence shows commands or menu choices
that you are to select, or text or commands that you are to
enter. It is also used to highlight the first use of a new term.
This term may be defined in the Glossary or described in the
text where the word is introduced.
gold Tips in this document are in gold and are indicated by the
following symbol:

italics Text in italics is used to call attention to important


information.
red Cautions and warnings in this document are in red. Cautions
are indicated by the following symbol:

Warnings are indicated by the following symbol:

user entry Bold text in an example shows text or commands that you
should enter. It also distinguishes software function terms and
commands, library names, file names, and directory path
names.
Example: Type a:\install.
user variable Italic and bold screen text shows a variable that you are to
replace with an actual value, such as a number or name.
Example: enter C:\<directory name>

15
16
Generic – ASI – Agent Synch Interface

The Generic – ASI – Agent Synch Interface is a batch process that


extracts employee and skills information from an XML file and
imports them into the database. The synch process can be done
manually or triggered by a timer.

Related Documents
The following documents contain information that may be helpful
when using this interface.
„ Witness Workforce Optimization Suite Administration Guide

Prerequisites
This section contains information you should know and directions
you must follow before using the Generic – ASI – Agent Synch
Interface software.

Hardware The system requirements for Witness Integration Server are


adequate for the interface.

Software Before you use the Generic – ASI – Agent Synch Interface, ensure
that the following software application is already installed on its
own server.
„ Witness Workforce Optimization Suite version 7.6.

17
Configuration
To configure the Generic – ASI – Agent Synch Interface, you add
the package to your Integration Server configuration, and complete
the tabs that are associated with its components.
For more information about how to add an integration package to
your Integration Server, refer to the Witness Workforce
Optimization Suite Administration Guide.

Adding the Interface Package to the Integration Server


To add the package to Witness Integration Server:
1 Log into the Suite as an administrator.
2 In the General Setup module, go to the Integration section.
3 Select the integration server and click Edit Configuration.
4 Select the topmost entry in the Integration Packages pane,
Integration Server [Root].

5 Click the Workflow tab.


6 Select the Generic – ASI – Agent Synch Interface package from
the list of available packages and click to move the package
to the list of selected packages.
7 Click Save.
The screen refreshes. You should now be able to see the Generic
– ASI – Agent Synch Interface package listed in the leftmost
pane, Integration Packages.

Configuring the Generic Agent Sync Adapter Component


To configure the Generic Agent Sync Adapter component:
1 Click the Generic Agent Sync Adapter component in the left
pane (expand the package if necessary so that its components
are displayed) as shown below.

18
The following table lists the configuration parameters and briefly
describes each of them:
Parameter Description
Input File Path The path of the file to import.
If the path is not in UNC format, the drive location is
assumed to be on the Integration Server server.
The user account running the Integration Server
service must have read privileges to this path.
Input File Extension The file name extension. Only file names ending with
this extension are selected for import.
Organization Name The name of the organization with which the
employees are to be synched. This parameter is used
only if the organization name is missing from the input
XML file.

The interface also has a set of configuration parameters that are


related to performance and internal operations. These parameters
are available in the Advanced Configuration container, as shown
below:

19
The following table describes the advanced configuration
parameters for this interface:
Parameter Description
MAX_EMPLOYEE_END_DATE If the employee element in the xml file does
not contain an end date, the value of this
parameter is used for the end date. The
format is fixed: yyyy-MM-dd HH:mm:ss
where the time is in 24-hr format.
ARCHIVE_DIR The path of the folder in which to archive the
imported files. If the path is left blank, the
files are archived in the folder
Input File Path\archive
where Input File Path is the path specified
by the Input File Path parameter.
DAYS_TO_ARCHIVE The number of daysto keep the archive files
in the ARCHIVE_DIR folder. Files older than
the specified number of days are deleted.
GENERIC_SYNC The java class that implements the agent
synch.
GENERIC_SYNC_READER The java class that implements the agent
synch.

Importing Files
The interface can import files on demand or by when triggered by a
timer. You can import the files by clicking the Import Now button
on the Monitor tab of the interface, or by configuring the timer
component, as shown in the graphics below:

20
Import Now:

Timer Component:

Reference Materials: The XSD and XML Files


For your ease of reference, the XSD and XML files used with this
interface are listed below.

21
XSD File
The structure of the XML file is specified in an xml schema file,
which is located in:
Install
Dir\FusionExchange\Plugins\OrgSync\config\orgsync_5_0.xsd

Example contents are:


<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:jm="http://ispsoft.de/namespaces/jaxme/schema"
elementFormDefault="qualified"
attributeFormDefault="unqualified"
xml:lang="EN">
<xs:annotation>
<xs:documentation>XML schema for 7.6.x Agent Sync.</
xs:documentation>
<xs:appinfo>
<jm:defaults
package="com.bluepumpkin.Plugins.OrgSync.generated"
accessors="true"/>
</xs:appinfo>
</xs:annotation>

<xs:element name="SyncMethod">
<xs:annotation>
<xs:appinfo>
<jm:javasource class="ClsSyncMethod">
public com.bluepumpkin.Plugins.OrgSync.SyncMode
convert()
{
if( this.getCreate() != null ) return
com.bluepumpkin.Plugins.OrgSync.SyncMode.CREATE;
if( this.getDelete() != null ) return
com.bluepumpkin.Plugins.OrgSync.SyncMode.DELETE;
if( this.getUpdate() != null ) return
com.bluepumpkin.Plugins.OrgSync.SyncMode.UPDATE;
if( this.getSnapshot() != null ) return
com.bluepumpkin.Plugins.OrgSync.SyncMode.SNAPSHOT;
if( this.getSnapshot_without_delete() != null ) return
com.bluepumpkin.Plugins.OrgSync.SyncMode.SNAPSHOT_WITHOUT
_DELETE;

return
com.bluepumpkin.Plugins.OrgSync.SyncMode.CREATE;
}

22
</jm:javasource>
</xs:appinfo>
</xs:annotation>

<xs:complexType>
<xs:choice>
<xs:element name="create" type="xs:string"/>
<xs:element name="update" type="xs:string"/>
<xs:element name="delete" type="xs:string"/>
<xs:element name="snapshot" type="xs:string"/>
<xs:element name="snapshot_without_delete"
type="xs:string"/>
</xs:choice>
</xs:complexType>
</xs:element>

<xs:element name="key">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="nameQualifier" type="xs:string"
minOccurs="0" />
<xs:element name="value" type="xs:string"
minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="LookupKey">
<xs:complexType>
<xs:sequence>
<xs:element ref="key" minOccurs="1"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeSupervisor">

<xs:annotation>FirstName,LastName,EmployeeNumber,SocialSecuri
ty and Badge are the key names supported for supervisor lookup</
xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="key" minOccurs="1"
maxOccurs="unbounded"/>

23
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="Scope">
<xs:complexType>
<xs:choice>
<xs:element name="Organization" type="xs:string"/>
<xs:element name="Campaign" type="xs:string"/>
</xs:choice>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeRole">
<xs:complexType>
<xs:sequence>
<xs:element name="UserName" type="xs:string"/>
<xs:element name="Role" minOccurs="0"
maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element ref="Scope" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="RateType">
<xs:complexType>
<xs:choice>
<xs:element name="hourly" type="xs:boolean"/>
<xs:element name="monthly" type="xs:boolean"/>
</xs:choice>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeWage">
<xs:complexType>
<xs:sequence>
<xs:element name="Wage" type="xs:double"/>
<xs:element name="CurrencyCode" type="xs:string" />

24
<xs:element ref="RateType" />
<xs:element name="StartDate" type="xs:date"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeUserProperty">
<xs:complexType>
<xs:sequence>
<xs:element name="User1" type="xs:string"
minOccurs="0"/>
<xs:element name="User2" type="xs:string"
minOccurs="0"/>
<xs:element name="User3" type="xs:string" minOccurs="0"/>
<xs:element name="User4" type="xs:string" minOccurs="0"/>
<xs:element name="User5" type="xs:string" minOccurs="0"/>
<xs:element name="User6" type="xs:string" minOccurs="0"/>
<xs:element name="User7" type="xs:string" minOccurs="0"/>
<xs:element name="User8" type="xs:string" minOccurs="0"/>
<xs:element name="User9" type="xs:string" minOccurs="0"/>
<xs:element name="User10" type="xs:string" minOccurs="0"/>

</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeJobTitle">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string" />
<xs:element name="StartDate" type="xs:date" />
<xs:element name="EndDate" type="xs:date"
minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeTimeOff">
<xs:complexType>
<xs:sequence>
<xs:element name="ActivityName" type="xs:string"/>
<xs:element name="HoursPerDay" type="xs:double"/>
<xs:element name="HoursPerWeek" type="xs:double"/>
<xs:element name="HoursPerYear" minOccurs="0"
maxOccurs="unbounded">

25
<xs:complexType>
<xs:sequence>
<xs:element name="Hours" type="xs:double" />
<xs:element name="Year" type="xs:integer" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeDataSource">
<xs:complexType>
<xs:sequence>
<xs:element name="DataSourceName" type="xs:string" />
<xs:element name="ExternalEmpIdent" type="xs:string"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="PersonAddress">
<xs:complexType>
<xs:sequence>
<xs:element name="AddressLine1" type="xs:string"
minOccurs="0"/>
<xs:element name="AddressLine2" type="xs:string"
minOccurs="0"/>
<xs:element name="AddressLine3" type="xs:string"
minOccurs="0"/>
<xs:element name="City" type="xs:string"
minOccurs="0"/>
<xs:element name="StateName" type="xs:string"
minOccurs="0"/>
<xs:element name="ZipCode" type="xs:string"
minOccurs="0"/>
<xs:element name="Country" type="xs:string"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="ContactType">
<xs:complexType>
<xs:choice>
<xs:element name="workphone" type="xs:boolean"/>

26
<xs:element name="mobilephone" type="xs:boolean"/>
<xs:element name="homephone" type="xs:boolean"/>
<xs:element name="phone" type="xs:boolean"/>
<xs:element name="email" type="xs:boolean"/>
</xs:choice>
</xs:complexType>
</xs:element>

<xs:element name="PersonContact">
<xs:complexType >
<xs:sequence>
<xs:element ref="ContactType" />
<xs:element name="Value" type="xs:string"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="Person">
<xs:complexType>
<xs:sequence>
<xs:element ref="PersonAddress" minOccurs="0"
maxOccurs="1"/>
<xs:element ref="PersonContact" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="Skill" >


<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Description" type="xs:string"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="SkillClassification">
<xs:complexType>
<xs:choice>
<xs:element name="primary" type="xs:boolean"/>
<xs:element name="reserve1" type="xs:boolean"/>
<xs:element name="reserve2" type="xs:boolean"/>

27
</xs:choice>
</xs:complexType>
</xs:element>

<xs:element name="SkillAssignment">
<xs:complexType>
<xs:sequence>
<xs:element name="Skill" type="xs:string"/>
<xs:element name="StartTime" type="xs:dateTime"/>
<xs:element name="EndTime" type="xs:dateTime"
minOccurs="0"/>
<xs:element name="Proficiency" type="xs:float"/>
<xs:element name="Priority" type="xs:integer"/>
<xs:element name="Reserve" type="xs:boolean"/>
<xs:element ref="SkillClassification"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="AdditionalInfo">
<xs:complexType >
<xs:sequence>
<xs:element ref="Person" minOccurs="0" />
<xs:element ref="EmployeeDataSource" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element ref="EmployeeTimeOff" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element ref="EmployeeUserProperty" minOccurs="0"/
>
<xs:element ref="EmployeeJobTitle" minOccurs="0" />
<xs:element ref="EmployeeWage" minOccurs="0" />
<xs:element ref="EmployeeSupervisor" minOccurs="0" />
<xs:element ref="EmployeeRole" minOccurs="0" />
<xs:element ref="SkillAssignment" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="Employee">
<xs:annotation>
<xs:appinfo>
<jm:javasource class="ClsEmployee">
public java.lang.String toString()
{

28
java.lang.StringBuffer buf = new
java.lang.StringBuffer();
buf.append( "[first=" );
buf.append( this.getFirstName() );
buf.append( ";last=" );
buf.append( this.getLastName() );
buf.append( ";" );
buf.append( this.getLastName() );
buf.append( ";ssn=" );
buf.append( this.getSocialSecurity() );
buf.append( ";empno=" );
buf.append( this.getEmployeeNumber() );
buf.append( "]" );

return buf.toString();
}
</jm:javasource>
</xs:appinfo>
</xs:annotation>

<xs:complexType >
<xs:sequence>
<xs:element name="FirstName" type="xs:string"/>
<xs:element name="LastName" type="xs:string"/>
<xs:element name="StartDate" type="xs:date"
minOccurs="0"/>
<xs:element name="IsSupervisor" type="xs:boolean"
minOccurs="0"/>
<xs:element name="MiddleInitial" type="xs:string"
minOccurs="0"/>
<xs:element name="Suffix" type="xs:string"
minOccurs="0"/>
<xs:element name="SocialSecurity" type="xs:string"
minOccurs="0"/>
<xs:element name="BirthDay" type="xs:date"
minOccurs="0"/>
<xs:element name="EndDate" type="xs:date"
minOccurs="0"/>
<xs:element name="Badge" type="xs:string"
minOccurs="0"/>
<xs:element name="Rank" type="xs:integer"
minOccurs="0"/>
<xs:element name="EmployeeNumber" type="xs:string"
minOccurs="0"/>
<xs:element name="EmployeeCallCenter" type="xs:string"
minOccurs="0"/>

29
<xs:element name="MinPaidHours" type="xs:double"
minOccurs="0"/>
<xs:element name="MaxPaidHours" type="xs:double"
minOccurs="0"/>
<xs:element ref="AdditionalInfo" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="SkillList">
<xs:complexType>
<xs:sequence>
<xs:element name="OrganizationName" type="xs:string"
minOccurs="0"/>
<xs:element ref="SyncMethod"/>
<xs:element ref="Skill" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="EmployeeList">

<xs:annotation>FirstName,LastName,EmployeeNumber,SocialSecuri
ty and Badge are the key names supported for employee lookup</
xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="OrganizationName" type="xs:string"
minOccurs="0"/>
<xs:element ref="SyncMethod"/>
<xs:element ref="LookupKey"/>
<xs:element ref="Employee" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element ref="SkillList" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element ref="EmployeeList" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>

30
</xs:schema>

XML File
The following section describes the XML elements that are synched
into the database. The specifications can be found in the XSD
mentioned previously.
Some points to note
„ Element names are case sensitive; they should have the same
case as specified in the XSD.
„ If there are any elements in the XML that are not defined in the
XSD, or if there is a case mismatch, the interface ignores them
silently.
„ The date elements in the XML have the format yyyy-mm-dd;
time has a 24-hr format HH:mm:ss.
„ Elements or attributes with Boolean data types can have values
true or false.

The Root Element The root node has two main elements namely
„ SkillList – List of all skills
„ EmployeeList – List of all employees
You can synch more than one of these elements; the XML is shown
below:
<root>
<SkillList></SkillList>
<SkillList></SkillList>

<EmployeeList></EmployeeList>
<EmployeeList></EmployeeList>
</root>

The XML must ensure that when you synch multiple elements they
do not cause any conflicts.
For example, one EmployeeList might create 10 employees and
another list could delete all 10 employees.

Employee The EmployeeList contains the following elements


Information „ OrganizationName – Name of the organization to which to
synch the employees.

31
„ SyncMethod – The synch mode.
„ LookupKey – A set of keys to use for looking up employees.
„ Employee – A list of employees to synch.

OrganizationName: The OrganizationName is an optional


element. If it is not specified or empty, the interface synchs all
employees to the organization specified in the GUI parameter
Organization Name.

If there are any employees in this list which belong to a different


organization they are automatically moved to the organization
specified above.

SyncMethod: The SyncMethod element specifies the mode in


which the synch takes place; this is a mandatory element. The
synch can happen in one of the following modes:
„ create – Create employees.
„ update – Update employees.
„ delete – Delete employees.
„ snapshot – The employees in the database are a snap shot of the
XML; additional employees are deleted from the database.
„ snapshot_without_delete – The employees in the database are
a snap shot of the XML; additional employees are not deleted
from the database.
In create mode, employees are created if they are not found in the
database. The create fails for existing employees, and the interface
logs an error.
The update mode updates employee information. The employees
must have been created earlier and must not be terminated.
The delete mode terminates employees. The EndDate for
employees is set to the current day.
The snapshot mode synchs all employees specified in the XML as
follows:
„ If employees are not found, they are created and the information
is synched.
„ If employees are found, the information is updated.

32
„ If the interface finds that there are more employees in the
database than those specified in the XML, the additional
employees are deleted.

This mode should be used with caution. If, for some reason, the
XML contains no employees, all employees in the database will
be deleted.

The snapshot_without_delete mode is similar to snapshot,


except that employees are not deleted.

LookupKey This is an important element that needs to be specified correctly.


Before synching any employees, the interface uses this key to look
up employees from the database. The employees are synched based
on this lookup and the synch mode. It is necessary that the lookup
always returns unique employee records for the synch to be
correct.
The LookupKey must have at least one element key. Each key
consists of:
„ name – name of the key to lookup
„ value – value of the key to lookup
The key names can be one of the following:
„ FirstName
„ LastName
„ MiddleInitial
„ SocialSecurity
„ EmployeeNumber

The value is optional. If it is specified, the interface will look for a


matching value. This is not particularly useful when performing
the employee lookup, because it restricts the lookup to a smaller
set of employees.
A sample XML element is shown below:
<LookupKey>
<key>
<name>FirstName</name>
</key>
<key>
<name>LastName</name>
</key>
</LookupKey>

33
In the above example, the interface does a lookup based on
FirstName and LastName of the employee. For each employee in
the database, it matches the FirstName and LastName from the
database with the one specified in the XML. See the specification of
the XML element Employee for FirstName and LastName.

Employee: This is the main element that contains all the employee
information. It is mandatory, and contains two sections:
„ basic – contains basic information such as Firstname,
LastName, etc.

„ AdditionalInfo – contains additional information, such as


phone number, etc.
A sample Employee XML element containing the basic information
is shown below:
<Employee>
<FirstName>utest_fname_1</FirstName>
<LastName>utest_lname_1</LastName>
<IsSupervisor>false</IsSupervisor>
<MiddleInitial>Y</MiddleInitial>
<Suffix>Jr.</Suffix>
<SocialSecurity>000-000-6789</SocialSecurity>
<BirthDay>1936-12-17</BirthDay>
<StartDate>2005-02-23 21:00:00</StartDate>
<EndDate>2025-12-17 21:00:00</EndDate>
<Badge>BD1</Badge>
<Rank>2</Rank>
<EmployeeNumber>EMP004</EmployeeNumber>
<MinPaidHours>7</MinPaidHours>
<MaxPaidHours>10</MaxPaidHours>
</Employee>

To synch all the information correctly, the following are pre-


requisites:
„ The FirstName and LastName are mandatory.
„ StartDate cannot be after EndDate.
„ MinPaidHours cannot be greater than MaxPaidHours.
To check if the information is synched, open the Profiles tab in the
People module, as shown below, and check that the employee
information was synched correctly.

34
AdditionalInfo The AdditionalInfo element consists of several subelements as
shown below, all of them optional.
< AdditionalInfo>
<EmployeeSupervisor/>
<EmployeeRole/>
<EmployeeWage/>
<EmployeeUserProperty/>
<EmployeeJobTitle/>
<EmployeeTimeOff/>
<EmployeeDataSource/>
<Person/>
<SkillAssignment/>
</AdditionalInfo>

Each of the elements is described below:


„ EmployeeSupervisor

This element updates the Employee's supervisor information. A


supervisor must exist before the supervisor can be assigned to
an employee.
The XML is shown below. To assign a supervisor, you need to
specify a lookup key (explained earlier). The value of the key is
the supervisor that is assigned to the employee. The possible
values for key names are same as that explained earlier.
<EmployeeSupervisor>
<key>
<name>FirstName</name>
<value>utest_first_sup</value>
</key>
<key>
<name>LastName</name>
<value>utest_last_sup</value>

35
</key>
</EmployeeSupervisor>

See the graphic of the Profiles tab on page 35 for the supervisor
that is assigned.
„ EmployeeRole

This element assigns roles to employees. The following are the


prerequisites before you can assign roles:
– A role/scope is associated with a user, who must exist.
– The roles and scope must exist.
The graphics shown below illustrate how users, roles, and scopes
are displayed in the user interface.

The XML for assigning the role is shown below:


<EmployeeRole>
<UserName>utest_user</UserName>
<Role>
<Name>Agent</Name>
<Scope>
<Organization>ta - O1</Organization>
</Scope>

36
</Role>
</EmployeeRole>

After synching, you can view the information as shown below

„ EmployeeWage

The employee wage information can be synched by the XML


shown below. Currently, only the USD option for CurrencyCode
is supported. Refer to the XSD for different values of RateType.
<EmployeeWage>
<Wage>100</Wage>
<StartDate>2005-02-23 21:00:00</StartDate>
<CurrencyCode>USD</CurrencyCode>
<RateType>
<hourly/>
</RateType>
</EmployeeWage>

You can see the wage information in the Profiles tab shown on
page 35.
„ EmployeeUserProperty

The user-defined fields for an employee can be assigned as


shown in the XML below. Values for up to ten fields can be
assigned to an employee.
<EmployeeUserProperty>
<User1>utest_user_1</User1>
<User2>utest_user_2</User2>
<User3>utest_user_3</User3>
<User4>utest_user_4</User4>
<User5>utest_user_5</User5>
<User6>utest_user_6</User6>
<User7>utest_user_7</User7>
<User8>utest_user_8</User8>
<User9>utest_user_9</User9>

37
<User10>utest_user_10</User10>
</EmployeeUserProperty>

The graphic below shows the location of the user-defined fields.


Note that if no user-defined fields have been defined in the
General section of the General Setup module, the information
cannot be synched.

„ EmployeeJobTitle

The job title information can be synched by the XML shown


below. The name of the job title must be the same as that defined
for the organization. See Organization Setup:General:Job
Titles for a list of available job titles.
<EmployeeJobTitle>
<Name>Job Title - 1</Name>
<StartDate>2005-02-23 21:00:00</StartDate>
<EndDate>2035-02-23 21:00:00</EndDate>
</EmployeeJobTitle>

After the synch, you can view this information in the Profiles tab
for the user.
„ EmployeeTimeOff

The employee's time off information can be synched using the


XML shown below. The following are prerequisites:
– The ActivityName should be one of the Time Off Type (see
screen shot below)
– The Year should be within the range current year - 1 and
current year + 3 (see screen shot below)
<EmployeeTimeOff>
<ActivityName>Vacation</ActivityName>
<HoursPerDay>1.0</HoursPerDay>
<HoursPerWeek>3.0</HoursPerWeek>
<HoursPerYear>
<Hours>120.2</Hours>
<Year>2005</Year>
</HoursPerYear>

38
</EmployeeTimeOff>

You can check that these values were synched correctly in the
Time Off tab of the People module:

„ EmployeeDataSource

To synch the employee data source, use the XML below. Note
that the value of the element DataSourceName should exist. See
the Data Sources section of the General Setup module if the data
source is configured.
<EmployeeDataSource>
<DataSourceName>avaya_cms</DataSourceName>
<ExternalEmpIdent>1234</ExternalEmpIdent>
</EmployeeDataSource>

The following graphic shows the employee's data source


assignment.

„ Person

Using the XML shown below, personal information, such as


phone number, address, etc., can be synched. See the XSD for
the different types of ContactType that are available for synch.
<Person>
<PersonContact>
<Value>(408)-830-5577</Value>
<ContactType>
<workphone/>
</ContactType>
</PersonContact>

39
<PersonContact>
<Value>(408)-123-3452</Value>
<ContactType>
<homephone/>
</ContactType>
</PersonContact>
<PersonContact>
<Value>(650)-546-1223</Value>
<ContactType>
<mobilephone/>
</ContactType>
</PersonContact>
<PersonContact>
<Value>[email protected]</Value>
<ContactType>
<email/>
</ContactType>
</PersonContact>
<PersonAddress>
<AddressLine1>addr 1</AddressLine1>
<AddressLine2>addr 2</AddressLine2>
<AddressLine3>addr 3</AddressLine3>
<City>santa clara</City>
<StateName>ca</StateName>
<ZipCode>911034</ZipCode>
<Country>u s a</Country>
</PersonAddress>
</Person>

The following graphic shows where an employee's personal


information is displayed in the user interface.

40
„ SkillAssignment

To assign the employee with different skills, use the XML shown
below. The value of the Skill element is the skill name. The skill
should exist; use Witness Forecasting and Scheduling to obtain
a list of available skills.
<SkillAssignment>
<Skill>async_skill_3</Skill>
<StartTime>2005-02-23 21:00:00</StartTime>
<EndTime>2035-02-23 21:00:00</EndTime>
<Proficiency>8</Proficiency>
<Priority>2</Priority>
<Reserve>true</Reserve>
<SkillClassification>
<reserve2/>
</SkillClassification>
</SkillAssignment>

Skill Information The XML shown below adds skills to the specified organization.
The OrganizationName should exist in order to synch successfully.
<SkillList>
<SyncMethod>
<snapshot/>
</SyncMethod>
<OrganizationName>Your Company Name</
OrganizationName>
<Skill>
<Name>async_skill_3</Name>
<Description>Agent sync test skill 3</Description>
</Skill>
</SkillList>

Migrating XML from Previous Versions


This section describes the configuration changes that need to be
done in order to convert files from previous versions of the Generic
– ASI – Agent Synch Interface’s XML.
In general, migration involves adding a batch process that does the
conversion, as described below:
1 Add a batch extender to the package as shown in the workflow
graphic below. You need to move the extender to the top using
the up arrow key.

41
2 To convert a 3.x version’s XML file to the XML used in 4.5.x,
enter the following text into the Command Line field of the
batch extender, making any path modifications necessary for
your situation.
java -cp ..\lib\xerces.jar;..\lib\xalan.jar
org.apache.xalan.xslt.Process -in
"plugins\OrgSync\config\XSLT\sampleIO\InputTest1.xml" -xsl
"Plugins\OrgSync\config\XSLT\AgentSync30to45.xsl" -out
"T:\temp\reports\async\cnv.xml"

The -in argument is the location of the input xml file; change it as
required for your situation.

The -out argument is the location of the converted file. Make sure the
directory is same as the Input File Path setting of the interface.

This converter can convert only one file with a fixed name. If there are
multiple files or files with a different name, they must be concatenated
and renamed to the path specified by the -in argument.

At this point, the 4.5.x XML is compatible with version 7.6, with
the caveat that any changes to the XML since version 4.5.x may
make your results different than expected. The following section
lists the changes implemented for the various versions; you can
manually edit your XML if desired to remove or add items to keep
your XML in synch with the interface.

Version Changes and Limitations


The following describes the changes between versions:

42
„ Version 4.5.0
The interface cannot synch terminated employees correctly. If
the input XML file contains a terminated employee, it creates a
new one instead of updating the terminated employee in the
database. This is because the lookup is done for the current day;
because the employee has been terminated, the lookup does not
return the terminated employee.
„ Version 4.6.1
The element EmployeeCallCenter in the Employee element is
deprecated. This was used to move employees from one
organization to another. In the 4.6.1 version, the EmployeeList
determines the employee's organization.
Added the snapshot_with_delete mode to the SyncMode
element.
„ Version 7.6
Added new element nameQualifier to the LookupKey.
Use this key to look up an employee assigned to a data source.
For example, using the data source Avaya CMS:
<LookupKey>
<key>
<name>DataSourceIdent</name>
<nameQualifier>Avaya CMS</nameQualifier>
</key>
</LookupKey>

The key name DataSourceIdent can be used for lookup in


addition to the existing list.

Sample XML File


An XML File with all elements explained above is shown below.
<?xml version="1.0" encoding="UTF-8"?>

<root xmlns:jm="http://ispsoft.de/namespaces/jaxme/schema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"

xsi:noNamespaceSchemaLocation="Plugins\OrgSync\config\orgsyn
c_5_0.xsd">

<SkillList>

43
<SyncMethod>
<snapshot/>
</SyncMethod>
<OrganizationName>Your Company Name</
OrganizationName>
<Skill>
<Name>async_skill_3</Name>
<Description>Agent sync test skill 3</Description>
</Skill>
</SkillList>
<EmployeeList>
<OrganizationName>Your Company Name</
OrganizationName>
<SyncMethod>
<snapshot_without_delete/>
</SyncMethod>
<LookupKey>
<key>
<name>FirstName</name>
</key>
<key>
<name>LastName</name>
</key>
</LookupKey>

<Employee>
<FirstName>utest_fname_1</FirstName>
<LastName>utest_lname_1</LastName>
<IsSupervisor>false</IsSupervisor>
<MiddleInitial>Y</MiddleInitial>
<Suffix>Jr.</Suffix>
<SocialSecurity>000-000-6789</SocialSecurity>
<BirthDay>1936-12-17</BirthDay>
<StartDate>2005-02-23 21:00:00</StartDate>
<EndDate>2025-12-17 21:00:00</EndDate>
<Badge>BD1</Badge>
<Rank>2</Rank>
<EmployeeNumber>EMP004</EmployeeNumber>
<MinPaidHours>7</MinPaidHours>
<MaxPaidHours>10</MaxPaidHours>
<AdditionalInfo>
<EmployeeSupervisor>
<key>
<name>FirstName</name>
<value>utest_first_sup</value>

44
</key>
<key>
<name>LastName</name>
<value>utest_last_sup</value>
</key>
</EmployeeSupervisor>

<EmployeeRole>
<UserName>utest_user</UserName>
<Role>
<Name>Agent</Name>
<Scope>
<Organization>Your Company
Name</Organization>
</Scope>
</Role>
</EmployeeRole>

<EmployeeWage>
<Wage>100</Wage>
<StartDate>2005-02-23 21:00:00</
StartDate>
<CurrencyCode>USD</CurrencyCode>
<RateType>
<hourly/>
</RateType>
</EmployeeWage>
<EmployeeUserProperty>
<User1>utest_user_1</User1>
<User2>utest_user_2</User2>
<User3>utest_user_3</User3>
<User4>utest_user_4</User4>
<User5>utest_user_5</User5>
<User6>utest_user_6</User6>
<User7>utest_user_7</User7>
<User8>utest_user_8</User8>
<User9>utest_user_9</User9>
<User10>utest_user_10</User10>
</EmployeeUserProperty>

<EmployeeJobTitle>
<Name>Job Title - 1</Name>
<StartDate>2005-02-23 21:00:00</
StartDate>
<EndDate>2035-02-23 21:00:00</EndDate>

45
</EmployeeJobTitle>

<EmployeeTimeOff>
<ActivityName>Vacation</ActivityName>
<HoursPerDay>1.0</HoursPerDay>
<HoursPerWeek>3.0</HoursPerWeek>
<HoursPerYear>
<Hours>120.2</Hours>
<Year>2005</Year>
</HoursPerYear>
</EmployeeTimeOff>
<EmployeeDataSource>
<DataSourceName>avaya_cms</
DataSourceName>
<ExternalEmpIdent>1234</
ExternalEmpIdent>
</EmployeeDataSource>
<Person>
<PersonContact>
<Value>(408)-830-5577</Value>
<ContactType>
<workphone/>
</ContactType>
</PersonContact>
<PersonContact>
<Value>(408)-123-3452</Value>
<ContactType>
<homephone/>
</ContactType>
</PersonContact>
<PersonContact>
<Value>(650)-546-1223</Value>
<ContactType>
<mobilephone/>
</ContactType>
</PersonContact>
<PersonContact>
<Value>[email protected]</Value>
<ContactType>
<email/>
</ContactType>
</PersonContact>
<PersonAddress>
<AddressLine1>addr 1</AddressLine1>
<AddressLine2>addr 2</AddressLine2>

46
<AddressLine3>addr 3</AddressLine3>
<City>santa clara</City>
<StateName>ca</StateName>
<ZipCode>911034</ZipCode>
<Country>u s a</Country>
</PersonAddress>
</Person>
<SkillAssignment>
<Skill>async_skill_3</Skill>
<StartTime>2005-02-23 21:00:00</
StartTime>
<EndTime>2035-02-23 21:00:00</EndTime>
<Proficiency>8</Proficiency>
<Priority>2</Priority>
<Reserve>true</Reserve>
<SkillClassification>
<reserve2/>
</SkillClassification>
</SkillAssignment>
</AdditionalInfo>
</Employee>
</EmployeeList>
</root>

Trouble Shooting
If the synch fails, it displays an error message in the status area of
the package’s Monitor tab.

47
48

You might also like