Você está na página 1de 232

Gplus Adapter 8.

for Siebel CRM

Developers Guide

The information contained herein is proprietary and confidential and cannot be disclosed or duplicated
without the prior written consent of Genesys Telecommunications Laboratories, Inc.
Copyright 20012012 Genesys Telecommunications Laboratories, Inc. All rights reserved.

About Genesys
Genesys is the world's leading provider of customer service and contact center software - with more than 4,000
customers in 80 countries. Drawing on its more than 20 years of customer service innovation and experience,
Genesys is uniquely positioned to help companies bring their people, insights and customer channels together to
effectively drive today's customer conversation. Genesys software directs more than 100 million interactions every day,
maximizing the value of customer engagement and differentiating the experience by driving personalization and multichannel customer service - and extending customer service across the enterprise to optimize processes and the
performance of customer-facing employees. Go to www.genesyslab.com for more information.
Each product has its own documentation for online viewing at the Genesys Technical Support website or on the
Documentation Library DVD, which is available from Genesys upon request. For more information, contact your sales
representative.

Notice
Although reasonable effort is made to ensure that the information in this document is complete and accurate at the
time of release, Genesys Telecommunications Laboratories, Inc., cannot assume responsibility for any existing errors.
Changes and/or corrections to the information contained in this document may be incorporated in future versions.

Your Responsibility for Your Systems Security


You are responsible for the security of your system. Product administration to prevent unauthorized use is your
responsibility. Your system administrator should read all documents provided with this product to fully understand the
features available that reduce your risk of incurring charges for unlicensed use of Genesys products.

Trademarks
Genesys and the Genesys logo are registered trademarks of Genesys Telecommunications Laboratories, Inc. All other
company names and logos may be trademarks or registered trademarks of their respective holders. 2012 Genesys
Telecommunications Laboratories, Inc. All rights reserved.
The Crystal monospace font is used by permission of Software Renovation Corporation,
www.SoftwareRenovation.com.

Technical Support from VARs


If you have purchased support from a value-added reseller (VAR), please contact the VAR for technical support.

Technical Support from Genesys


If you have purchased support directly from Genesys, please contact Genesys Technical Support. Before contacting
technical support, please refer to the Genesys Care Program Guide for complete contact information and
procedures.

Ordering and Licensing Information


Complete information on ordering and licensing Genesys products can be found in the Genesys Licensing Guide.

Released by
Genesys Telecommunications Laboratories, Inc. www.genesyslab.com
Document Version: 80gp_dev_slcrm_11-2012_v8.0.101.00

Table of Contents
List of
Procedures

................................................................................................................... 7

Preface

................................................................................................................... 9
About Gplus Adapter 8.0 for Siebel CRM................................................ 10
Intended Audience................................................................................... 10
Usage Guidelines .................................................................................... 11
Conditions of Use ............................................................................... 11
Making Comments on This Document .................................................... 12
Contacting Genesys Technical Support................................................... 13
Document Change History ...................................................................... 13
New in Document Version v8.0.100.00............................................... 13
New in Document Version v8.0.002.00............................................... 13

Chapter 1

Campaign Synchronization Component 8.0.0 ................................... 15


The Campaign Synchronization Data Flow ............................................. 16
Exporting the Siebel Campaign Lists to Genesys............................... 16
The Inbound XML Schema ................................................................. 23
The Campaign Synchronization Request Types................................. 26
The Campaign Synchronization Response ........................................ 31
The Outbound XML Schema .............................................................. 33
Configuring the List Import Functionality ................................................. 35
The Siebel Configuration Guidelines .................................................. 35
The Format Object Configuration Guidelines ..................................... 38
The Style Sheet Configuration Guidelines.......................................... 41
The Style Sheet Configuration Examples ........................................... 43
The Genesys Campaign Synchronization Business Service................... 47
Default Scenarios for the Campaign Synchronization ............................. 48
Using the Genesys Campaign Synchronization Business Service.......... 50
The Method Usage Guidelines ........................................................... 50
The Method Descriptions.................................................................... 51
The eScript Example .......................................................................... 56
Synchronization Summary Usage ........................................................... 59
The Synchronization Summary Format .............................................. 59

Gplus Adapter for Siebel CRMDevelopers Guide

Table of Contents

Using the Genesys Synch Summary Business Component ............... 61

Chapter 2

Campaign Synchronization Component 8.0.1 ................................... 65


The Solution Overview ............................................................................ 65
Campaign Synchronization Data Flow................................................ 65
Configuring the List Import Functionality ............................................ 66
The Genesys Campaign Synchronization Server API Representation ... 66
Frequently Used Input Parameters ..................................................... 68
Complex Type Parameters ................................................................. 68
Synchronizing the Campaign Data from Siebel to Genesys ............... 70
Querying the Updates (Deltas) for the Call Results and the Number
of Call Attempts ............................................................................ 108
The Siebel Campaign Synchronization API Representation ................. 121
The Business Services Overview ..................................................... 121
The Genesys CampSynch Campaign Business Service .................. 122
The Genesys CampSynch Request Executor Business Service...... 129
The Genesys CampSynch Call Result Business Service ................. 132
The Genesys CampSynch Event Handler Business Service ........... 137
The Genesys CampSynch Utils Business Service ........................... 144
The Genesys CampSynch Tools Business Service .......................... 148

Chapter 3

Media Routing Component Customization ...................................... 151


Overview................................................................................................ 152
Using the GplusMediaRouteIXN Business Service ............................... 153
The Route Method ............................................................................ 154
The StopWorkItem Method ............................................................... 159
Using the GplusMediaRoute Business Service ..................................... 164
The GetTopWorkItem Method........................................................... 165
The GetTopActiveItemInfo Method ................................................... 165
The MarkWorkItemDone Method...................................................... 165
The PullInteraction Method ............................................................... 169
The UpdateActivity Method............................................................... 171
The Applet Customization ..................................................................... 174
Invoking a MarkDoneMR Command................................................. 174
Routing Siebel Work Items .................................................................... 175
Creating Commands for Custom Media Types ................................. 175
Using the Route Method to Send a Routing Request ....................... 176
Creating an Event Handler ............................................................... 177

Chapter 4

iWD Routing Component Customization ......................................... 181


Overview................................................................................................ 182
Using the GplusMediaRouteiWD Business Service .............................. 183

Gplus Adapter 8.0

Table of Contents

The cancelTaskByCaptureId Method ................................................ 184


The completeTaskByCaptureId Method............................................ 188
The createTask Method .................................................................... 191
The getTaskByCaptureId Method ..................................................... 196
The holdTaskByCaptureId Method ................................................... 197
The ping Method ............................................................................... 200
The restartTaskByCaptureId Method ................................................ 201
The resumeTaskByCaptureId Method .............................................. 205
The updateTaskByCaptureId Method ............................................... 208
Using the GplusMediaRoute Business Service ..................................... 213
The Applet Customization ..................................................................... 213
Using the iWD Routing Component for Routing Siebel Work Items ...... 213
Creating Commands for Custom Media Types ................................. 213
Using the createtask Method to Send a createtask Request............ 214
Creating an Event Handler ............................................................... 215

Chapter 5

Using Siebel Data from the Genesys Universal Routing Solution. 219
Checking the Inbound Web Service ...................................................... 219
Using the Web Service .......................................................................... 221

Supplements

Related Documentation Resources ................................................... 225


Document Conventions ...................................................................... 227

Index

............................................................................................................... 229

Gplus Adapter for Siebel CRMDevelopers Guide

Table of Contents

Gplus Adapter 8.0

List of Procedures
Verifying that the Siebel fields transferred from the Siebel environment
to the Genesys environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Adding additional Outbound Contact Server fields to the
synchronization process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Creating an event handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Using the provided sample to route Siebel service request . . . . . . . . . 179
Creating an event handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Using the provided sample to route Siebel service request . . . . . . . . . 217
Managing the Siebel inbound web services on a Siebel client. . . . . . . 219

Gplus Adapter for Siebel CRMDevelopers Guide

List of Procedures

Gplus Adapter 8.0

Preface
Welcome to the Gplus Adapter 8.0 for Siebel CRM Developers Guide. In
general, this document addresses only the interactions of the Genesys Gplus
Adapter components with other Genesys systems and products. Developers
who are using the Siebel application development tools and services to
implement the Gplus Adapter should look at the Siebel documentation set for
more information.
The Gplus Adapter 8.0 for Siebel CRM Deployment Guide may contain
information that is useful for developers who need to customize the Gplus
Adapter 8.0 for Siebel CRM. You should have ready access to this document,
if only to understand the standard Gplus Adapter configurations that may
initially have been installed at your location.
In brief, you will find the following information in this guide:

An overview of the Media Routing Components interface and


customization options.

An overview of the iWD Routing Component's interface and


customization options.

This document is valid only for the 8.0 release of this product.
Note: For versions of this document created for other releases of this

product, visit the Genesys Technical Support website, or request the


Documentation Library DVD, which you can order by e-mail from
Genesys Order Management at orderman@genesyslab.com.
This preface contains the following sections:
About Gplus Adapter 8.0 for Siebel CRM, page 10
Intended Audience, page 10
Usage Guidelines, page 11
Making Comments on This Document, page 12
Contacting Genesys Technical Support, page 13
Document Change History, page 13

For information about the related resources and about the conventions that are
used in this document, see the supplementary material starting on page 225.

Gplus Adapter for Siebel CRMDevelopers Guide

Preface

About Gplus Adapter 8.0 for Siebel CRM

About Gplus Adapter 8.0 for Siebel CRM


The Gplus Adapter 8.0 for Siebel CRM is a software solution that provides
seamless integration between the Siebel CRM and Genesys 8.0 solutions. This
combination brings together Siebels leading software applications and
Genesys contact center solutions.
The Gplus Adapter provides a single point of access to the contact information.
The Adapter brings together multiple media and channels, and provides access
to the power of the Siebel software, promoting better contact relationships
overall.

Intended Audience
This guide is intended for developers who will customize the behavior of the
Gplus Adapter for Siebel CRM. The guide assumes that:

You are familiar with concepts related to the Siebel Enterprise Application
Integration (EAI) architecture.

You have a basic understanding of computer-telephony integration (CTI)


concepts, processes, terminology, and applications.

You have a good understanding of database systems, including the specific


database system that your application uses.

You have a basic understanding of network design and operation.

You are familiar with the network configurations used in your enterprises
computing environment.

You have a good knowledge of the Siebel application development


environment, including Siebel Tools and Siebel Workflow.

(If you will be modifying the style sheet file:) You understand .XSL syntax
and file structure.

You should also be familiar with the following Genesys solutions:

Framework

Universal Routing

Outbound Contact Solution

eServices (formerly Multimedia)

Note: Refer to the Genesys Interoperability Guide for further information

about the appropriate Genesys applications version numbers.

10

Gplus Adapter 8.0

Preface

Usage Guidelines

Usage Guidelines
The Genesys developer materials outlined in this document are intended to be
used for the following purposes:

Creation of contact-center agent desktop applications associated with the


Genesys software implementations.

Server-side integration between the Genesys software and the third-party


software.

Creation of a specialized client application specific to the customer needs.

The Genesys software functions available for development are clearly


documented. No undocumented functionality is to be utilized without
Genesys express written consent.

Conditions of Use
The following Conditions of Use apply in all cases for developers employing
the Genesys developer materials outlined in this document:
1. Possession of interface documentation does not imply a right to use by a
third party. The Genesys conditions for use, as outlined below or in the
Genesys Developer Program Guide, must be met.
2. This interface shall not be used unless the developer is a member in good
standing of the Genesys Interacts program or has a valid Master Software
License and Services Agreement with Genesys.
3. A developer shall not be entitled to use any licenses granted hereunder
unless the developer's organization has met or obtained all prerequisite
licensing and software as set out by Genesys.
4. A developer shall not be entitled to use any licenses granted hereunder if
the developer's organization is delinquent in any payments or amounts
owed to Genesys.
5. A developer shall not use the Genesys developer materials outlined in this
document for any general application development purposes that are not
associated with the above-mentioned intended purposes for the use of the
Genesys developer materials outlined in this document.
6. A developer shall disclose the developer materials outlined in this
document only to those employees who have a direct need to create, debug,
and/or test one or more participant-specific objects and/or software files
that access, communicate, or interoperate with the Genesys API.
7. The developed works and Genesys software running in conjunction with
one another (hereinafter referred to together as the integrated solutions)
should not compromise the data integrity. For example, if both the Genesys
software and the integrated solutions can modify the same data, then
modifications by either product must not circumvent the other product's

Gplus Adapter for Siebel CRMDevelopers Guide

11

Preface

Making Comments on This Document

data integrity rules. In addition, the integration should not cause duplicate
copies of data to exist in both the participant and Genesys databases, unless
it can be assured that the data modifications propagate all copies within the
time required by the typical users.
8. The integrated solutions shall not compromise data or application security,
access, or visibility restrictions that are enforced by either the Genesys
software or the developed works.
9. The integrated solutions shall conform to the design and implementation
guidelines and restrictions described in the Genesys Developer Program
Guide and the Genesys software documentation. For example:
a. The integration must use only published interfaces to access the
Genesys data.
b. The integration shall not modify data in the Genesys database tables
directly using SQL.
c. The integration shall not introduce the database triggers or stored
procedures that operate on the Genesys database tables.
Any schema extension to the Genesys database tables must be carried out
using the Genesys developer software through the documented methods and
features.
The Genesys developer materials outlined in this document are not intended to
be used for the creation of any product with a functionality comparable to any
Genesys products, including products similar or substantially similar to
Genesys's current general-availability, beta, and announced products.
Any attempt to use the Genesys developer materials outlined in this document
or any Genesys developer software contrary to this clause shall be deemed a
material breach with immediate termination of this addendum, and Genesys
shall be entitled to seek to protect its interests, including but not limited to,
preliminary and permanent injunctive relief, as well as money damages.

Making Comments on This Document


If you especially like or dislike anything about this document, feel free to
e-mail your comments to Techpubs.webadmin@genesyslab.com.
You can comment on what you regard as specific errors or omissions, and on
the accuracy, organization, subject matter, or completeness of this document.
Please limit your comments to the scope of this document only and to the way
in which the information is presented. Contact your Genesys Account
Representative or Genesys Technical Support if you have suggestions about
the product itself.
When you send us comments, you grant Genesys a nonexclusive right to use or
distribute your comments in any way it believes appropriate, without incurring
any obligation to you.

12

Gplus Adapter 8.0

Preface

Contacting Genesys Technical Support

Contacting Genesys Technical Support


If you have purchased support directly from Genesys, please contact Genesys
Technical Support.
Before contacting technical support, please refer to the Genesys Care Program
Guide for complete contact information and procedures.

Document Change History


This section lists content that is new or that has changed significantly since the
first release of this document. The most recent changes appear first.

New in Document Version v8.0.101.00


This document has been re-issued to support the Gplus Adapter for Siebel
CRM release 8.0.1. The following topics have been added or changed since the
previous release of the document:

The previously existing chapters, The Campaign Synchronization Flow,


Configuring the List Import Functionality, Using the Genesys
Campaign Synchronization Business Service, and Synchronization
Summary Usage have been combined under the following chapter,
Chapter 1, Campaign Synchronization Component 8.0.0, on page 15.

The following chapter is now included in this document:


Chapter 2, Campaign Synchronization Component 8.0.1, on page 65.

New in Document Version v8.0.002.00

Chapter 1, Campaign Synchronization Component 8.0.0, on page 15


now includes the following new sections:
The Campaign Synchronization Data Flow.
Configuring the List Import Functionality.
The Genesys Campaign Synchronization Business Service.
The Default Scenarios for the Campaign Synchronization.
Synchronization Summary Usage.

Gplus Adapter for Siebel CRMDevelopers Guide

13

Preface

14

Document Change History

Gplus Adapter 8.0

Chapter

Campaign Synchronization
Component 8.0.0
This chapter provides a developers overview of the Gplus Adapter for Siebel
CRM Campaign Synchronization Component, focusing on the customization
options and how to use them. The information contained herein is valid for the
Gplus Adapter for Siebel CRM Campaign Synchronization Component release
8.0.001.04 and higher, but only in the 8.0.0 stream.
Each topic in this chapter describes one aspect of the Component that you can
use to customize campaign synchronization between the Siebel and Genesys
environments. The following topics are included in this chapter:
The Campaign Synchronization Data Flow, page 16
Configuring the List Import Functionality, page 35
The Genesys Campaign Synchronization Business Service, page 47
Default Scenarios for the Campaign Synchronization, page 48
Using the Genesys Campaign Synchronization Business Service, page 50
Synchronization Summary Usage, page 59

Other chapters of this guide cover other Adapter components. For a functional
overview of the complete Gplus Adapter and its integration with Siebel
software, see the Gplus Adapter 8.0 for Siebel CRM Users Guide.
For a detailed description of the Siebel enterprise application architecture
(EAI), see your Siebel documentationespecially Integration Platform
Technologies: Siebel eBusiness Application Integration Volume II.

Gplus Adapter for Siebel CRMDevelopers Guide

15

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

The Campaign Synchronization Data Flow


This section provides a brief explanation of the data interaction between the
Siebel and Genesys portions of the Adapter. It describes all types of Adapter
messages including examples, and also contains a formal definition of the
inbound/outbound XML messages as well as the XML schemas.
This section contains the following subsections:
Exporting the Siebel Campaign Lists to Genesys, page 16
The Inbound XML Schema, page 23
The Campaign Synchronization Request Types, page 26
The Campaign Synchronization Response, page 31
The Outbound XML Schema, page 33

Exporting the Siebel Campaign Lists to Genesys


The main element of the data flow is the Campaign List (the Calling List in
Genesys). On the Siebel side, all of the Campaign Lists are contained within
one database table: Campaign List Contact (S_CAMP_CON). On the Genesys side,
all of the corresponding Calling Lists are contained within different tables. In
general, all of the Calling Lists exported from Siebel have the same table
format, which is contained in the Configuration Layer Environment (CLE),
which the Adapter then uses for table creation and updates. See Figure 1 on
page 17 for a diagram depicting the export of Siebel Campaign Lists to
Genesys.

16

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

Figure 1: Exporting Siebel Campaign Lists to Genesys

The major difference between a Siebel Campaign List and a Genesys Calling
List is that one record in Siebel transfers to one or many records in Genesys
depending on how many phone relative fields (contact_info) are exported
from one Siebel record.

Gplus Adapter for Siebel CRMDevelopers Guide

17

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

For examplethis scenario has a Siebel Campaign List containing a record as


shown below in Table 1:
Table 1: Sample Siebel Campaign List (One Record)
ID

Home Phone

Work Phone

Mobile Phone

Custom Field1

1-AABC

111-222-3301

222-333-4401

333-444-5501

Anything

After the synchronization with Genesys, this Siebel record transforms into
three records in a Genesys Calling List table as shown below in Table 2:
Table 2: Sample Campaign List Transformed into Genesys Calling List
chain_id chain_n

crm_camp
_con_id

contact_info contact_info_ cd_field1


type

cd_field2

11

1-AABC

111-222-3301

Anything

Home

11

1-AABC

222-333-4401

Anything

Other

11

1-AABC

333-444-5501

Anything

Other

In this example, assume that the customer has two custom fields (cd_field1
and cd_field2) in the Genesys Calling List records and adds Mobile Phone to
the synchronization list. Also, assume that the Genesys field (cd_field1)
corresponds to the Siebel field (Custom Field1) and that the value of cd_field2
equals Home for home phones, or Other for other phone types.
The detailed data flow is shown in Figure 2 on page 19 below.

18

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

Figure 2: Sample Scenario Data Flow

The Adapter makes a query of the Siebel database by using the Siebel
Integration object, Genesys - Campaign List Contact. This Integration object
is a key element for the List Import customization (for more information, see
Configuring the List Import Functionality on page 35). It defines which
Siebel Campaign List fields to use and how to transform given query results to
the appropriate Siebel property set (mapping between the Siebel field names
and the Genesys field names).

Gplus Adapter for Siebel CRMDevelopers Guide

19

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

Example 1, as shown below, describes how to obtain the property set:


Example 1

<PropertySet ...>
...
<ContactInfo
crm_camp_con_id="1-AABC"
phone_1="1112223301"
phone_2="2223334401"
phone_4="3334445501"
...
cd_field1="Anything">
</ContactInfo>
...
</PropertySet>

The result of the data transformation on the Siebel side is an XML-message.


Example 2 displays the resulting XML-message as shown below:
Example 2

<ContactInfo
crm_camp_con_id="1-AABC"
...
cd_field1="Anything">
<Record
contact_info="1112223301"
contact_info_type="1"
>
</Record>
<Record
contact_info="2223334401"
contact_info_type="2"
>
</Record>
<Record
contact_info="3334445501"
contact_info_type="4"
>
</Record>
...
</ContactInfo>

20

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

The key element of the Adapters XML-message is <ContactInfo>, which is


generated from the ContactInfo Property Set. The Adapter generates for each
phone_X attribute (where X is the value of contact_info_type), a new element,
<Record>, containing the following two attributes: contact_info and
contact_info_type. This element is intended to deliver specific field values for
any record in a chain. The attributes (records fields) with common values for
the entire chain may be put in the <ContactInfo> element (cd_field1 in this
example). The names of all attributes in the <Record> and <ContactInfo>
elements should be the same as the corresponding names of the Genesys
Outbound Calling List fields (the Format fields in the Genesys CLE).
The crm_camp_con_id attribute is a unique key for the element, <ContactInfo>
(a chain in Outbound Contact Server). For identification of the record in a
chain, there are three attributes that may be used: chain_n, contact_info_type,
or contact_info. The chain_n attribute is always used for identification when it
is included in the <Record> element. If the chain_n attribute is not included,
Genesys uses the contact_info_type attribute, if it is included in the <Record>
element, or otherwise, the contact_info attribute.
The last customization point is an XSL Transformations (XSLT), on the
Genesys side of the Adapter. You can create an XSL file that may be used by
the Adapter as a style sheet for the transformation of all inbound messages (for
more details, see The Style Sheet Configuration Guidelines on page 41).
Example 3 displays the different values that need to be set up for the cd_field2
field, depending on the phone type. After the XSL transformation, the
message should contain the <ContactInfo> element as shown below:
Example 3

<ContactInfo
crm_camp_con_id="1-AABC"
...
cd_field1="Anything">
<Record
contact_info="1112223301"
contact_info_type="1"

cd_field2=Home
>
</Record>
<Record
contact_info="2223334401"
contact_info_type="2"

cd_field2=Other
>
</Record>
<Record

Gplus Adapter for Siebel CRMDevelopers Guide

21

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

contact_info="3334445501"
contact_info_type="4"

cd_field2=Other
>
</Record>
...
</ContactInfo>

Example 4 displays an XSL file that can make this transformation:


Example 4

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="windows-1252"/>
<xsl:template match="/ | @* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@contact_info_type">
<xsl:attribute name="contact_info_type"><xsl:value-of
select="."/>
</xsl:attribute>
<xsl:attribute name="cd_field2">
<xsl:choose>
<xsl:when test=". = '1'">
<xsl:value-of select="Home"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="Other"/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:template>
</xsl:stylesheet>

After this point, customization is impossible. The Adapter transforms the XML
messages to internal List Record objects based on the assigned Format object in
Genesys CLE. The Adapter then generates the SQL statements and sends them
to the database used by Outbound Contact Server (OCS).
The structure of all the possible inbound messages has a formal definitionthe
Inbound XML Schema. You can use this schema for developing your own
application instead of using the Siebel part of the Adapter.

22

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

The Inbound XML Schema


Example 5 depicts the Campaign Synchronization XML schema of inbound
messages:
Example 5

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


<!-- Gplus Adapter 8.0. Campaign Synchronization.Schema of Inbound
Messages -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- definition of attributes -->
<xs:attribute name="Name" type="xs:string" />
<!-- the request type -->
<xs:attribute name="Id" type="xs:string" />
<xs:attribute name="TenantId" type="xs:string" />
<xs:attribute name="AdminLoginName" type="xs:string" />
<xs:attribute name="CampaignName" type="xs:string" />
<xs:attribute name="crm_camp_con_id" type="xs:string" />
<xs:attribute name="crm_campaign_id" type="xs:string" />
<xs:attribute name="contact_info" type="xs:string" />
<xs:attribute name="contact_info_type" type="xs:string" />
<xs:attribute name="FirstPage" type="xs:string" />
<xs:attribute name="LastPage" type="xs:string" />
<!-- *** -->
<!-- definition of elements -->
<xs:element name="Record">
<xs:complexType>
<xs:attribute ref="contact_info" use="required" />
<xs:attribute ref="contact_info_type" use="required" />
<!-- The name of all additional attributes should be matched to
valid field names from OCS table format. These fields may have specific
value for each record in a chain -->
<xs:anyAttribute />
</xs:complexType>
</xs:element>
<!-- used in DoNotCall request only -->
<xs:element name="CustomerId" type="xs:string" />
<xs:element name="Phone" type="xs:string" />
<xs:element name="RecordInfo">
<xs:complexType>
<xs:choice>
<xs:element ref="CustomerId" />
<xs:element ref="Phone" />
</xs:choice>
</xs:complexType>

Gplus Adapter for Siebel CRMDevelopers Guide

23

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

</xs:element>
<!-- *** -->
<xs:element name="ContactInfo">
<xs:complexType>
<xs:sequence>
<xs:element ref="Record" minOccurs="1" />
</xs:sequence>
<xs:attribute ref="crm_campaign_id" use="optional" />
<xs:attribute ref="crm_camp_con_id" use="required" />
<!-- The name of all additional attributes should be matched to valid
field names from OCS table format. These fields have common values for
all records in a chain -->
<xs:anyAttribute />
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="ListOfContactInfo">
<xs:complexType>
<xs:sequence>
<xs:element ref="ContactInfo" minOccurs="1"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="ListInfo">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="1">
<xs:element ref="ListOfContactInfo" />
</xs:sequence>
<xs:attribute ref="TenantId" use="required" />
<xs:attribute ref="AdminLoginName" use="required" />
<xs:attribute ref="CampaignName" use="optional" />
<xs:attribute ref="Name" use="required" />
<xs:attribute ref="FirstPage" use="optional" />
<xs:attribute ref="LastPage" use="optional" />
<xs:anyAttribute />
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="List">
<xs:complexType>
<xs:attribute ref="CampaignName" use="optional" />

24

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

<xs:attribute ref="Name" use="required" />


</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="CampaignLists">
<xs:complexType>
<xs:sequence>
<xs:element ref="List" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="CampaignInfo">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="1">
<xs:element ref="CampaignLists" />
</xs:sequence>
<xs:attribute ref="TenantId" use="required" />
<xs:attribute ref="AdminLoginName" use="required" />
<xs:attribute ref="CampaignName" use="required" />
<xs:anyAttribute />
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="SyncRequest">
<xs:complexType>
<xs:choice>
<xs:element ref="CampaignInfo" />
<xs:element ref="ListInfo" />
<xs:element ref="RecordInfo" />
</xs:choice>
<xs:attribute ref="Name" use="required" />
<xs:attribute ref="Id" use="required" />
<xs:anyAttribute />
</xs:complexType>
</xs:element>
<!-- *** -->
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

25

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

The Campaign Synchronization Request Types


The root element for all Adapter inbound messages is the SyncRequest
element. The SyncRequest element always contains only one child element
with the following three possible types:

CampaignInfo

ListInfo

RecordInfo

All requests can be divided into one of three types according to the type of this
child element. Each SyncRequest element has two mandatory attributes: Name
and Id. The Name attribute defines the name of the Genesys request and the type
of action, such as Genesys - Create Campaign. The second attribute, Id is
intended for identification purposes.

The CampaignInfo Requests and Attributes


Table 3 shows the Genesys CampaignInfo requests:
Table 3: The Genesys CampaignInfo Requests
Name

Description

Genesys - Create Campaign

Creates all Configuration Layer


Environment (CLE) objects for the
requested campaign (Campaign,
Calling lists, Table Accesses).
Also creates the Outbound Contact
Server (OCS) tables, if needed.

Genesys - Delete Campaign

Deletes the Campaign CLE


objects.

Genesys - Get Call Results for Campaign

Asynchronously returns the call


results for a requested campaign
(as HTTP requests).

Genesys - Get Campaign Statistics

Synchronously returns the call


results for a requested campaign
(as HTTP responses).

The CampaignInfo element has the following attributes:

TenantId: the name of a Siebel organization. Each possible name should be

mapped to some Tenant in Genesys CLE (see the Gplus Adapter for Siebel
CRM Deployment Guide for more details.)

26

CampaignName: the name of a campaign in Siebel and Genesys CLE.

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

AdminLoginName: the name of a Siebel Administrator. This name is used by

the Adapter for mapping purposes. Each possible name should be mapped
to some folder in Genesys CLE (see the Gplus Adapter for Siebel CRM
Deployment Guide for more details.)
The CampaignInfo element may include List elements with the following
attributes:

Name: the name of a list in Siebel and Genesys, if the next attribute is not

included.

CampaignName: (optional) the name of a campaign in Siebel to which the list

belongs. If this attribute is included, a resulting list name in Genesys CLE


is generated by concatenation of both names: Name(CampaignName).
Example 6 displays different representations of CampaignInfo requests:
Example 6

<SyncRequest

Name=Genesys - Create Campaign Id=1-SSSA>


<CampaignInfo
TenantId="Default Organization"
CampaignName="WS77-Campaign1"
AdminLoginName="GPADMIN">
<CampaignLists>
<List
Name="WS77-List1">
</List>
<List
CampaignName="WS77-Campaign5"
Name="WS77- List2">
</List>
<List
CampaignName="WS77-Campaign5"
Name="WS77-List5">
</List>
</CampaignLists>
</CampaignInfo>

</SyncRequest>
<SyncRequest Name="Genesys - Delete Campaign" Id=1-SSSB>

<CampaignInfo
TenantId="Default Organization"
CampaignName="WS77-Campaign1"
AdminLoginName="GPADMIN">
</CampaignInfo>
</SyncRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

27

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

<SyncRequest

Name="Genesys - Get Call Results for Campaign"


Id=1-SSSC>
<CampaignInfo
TenantId="Default Organization"
CampaignName="WS77-Campaign1"
AdminLoginName="GPADMIN">
</CampaignInfo>
</SyncRequest>

The ListInfo Requests and Attributes


This type of request is the most important in the synchronization procedure.
Only this type of request transfers the Calling Lists records from the Siebel
database to the Genesys OCS database.
Table 4 shows the Genesys ListInfo requests:
Table 4: The Genesys ListInfo Requests

28

Name

Description

Genesys - Create List

Creates the Calling Lists and Table


Accesses CLE objects (if they do not exist);
creates the OCS tables (if needed); inserts
or updates the list records; deletes the
records that are not included in the request.

Genesys - Update List

Creates the Calling Lists and Table


Accesses CLE objects (if they do not exist);
creates the OCS tables (if needed); inserts
or updates the list records.

Genesys - Insert List Records

Inserts the list records (error if the record


exists.)

Genesys - Update List Records

Inserts or updates the list records.

Genesys - Delete List Records

Deletes the list records.

Genesys - Cancel List Records

Sends CancelRecord messages to OCS.

Genesys - Assign List

Assigns the requested lists to the given


Campaign CLE object (do nothing with the
OCS tables.)

Genesys Get List Statistics

Synchronously returns the call results for a


requested Calling List as HTTP responses.

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

Possible attributes of the ListInfo element are:

TenantId

AdminLoginName

Name

CampaignName

FirstPage

LastPage

The AdminLoginName and TenantId attributes have the same meaning as the
CampaignInfo requests.
The Name and CampaignName attributes are used in the same way as in the List
element of the CampaignInfo requests.
The FirstPage and LastPage attributes allow the Adapter on the Genesys side
to determine how to combine a sequence of messages into one Calling List.
How these attributes are used is listed as follows:

If the value of the FirstPage attribute is true, this indicates the beginning
of a Calling List.

If the value of the LastPage attribute is true, this indicates the end of a
Calling List.

If the values of the FirstPage and LastPage attributes are both false, this
indicates the middle of a Calling List.

The default value for these attributes is true (if they are missing).
The ListInfo element is the only place where the ContactInfo elements may
be included. The ContactInfo element is a key element that delivers the Calling
List records to the OCS tables. You can add any custom field either directly to
a ContactInfo element, or to its child element, Record. In the first scenario, all
records in a chain would have the same value. Otherwise, the records in the
same chain may have different values.
Note: If you are using the Genesys Voice Component, the crm_campaign_id

attribute is required.
Example 7 displays the different representations of the ListInfo requests:
Example 7

<SyncRequest Name="Genesys - Create List" Id=1-SSSD>


<ListInfo
LastPage="true"
FirstPage="true"
TenantId="Default Organization"
Name="WS77-List1"
AdminLoginName="GPADMIN">
<ListOfContactInfo>
<ContactInfo crm_camp_con_id="2-8ULH"

Gplus Adapter for Siebel CRMDevelopers Guide

29

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

crm_campaign_id="2-7ULX">
<Record
contact_info="2222335559"
contact_info_type="1"
>
</Record>
</ContactInfo>
<ContactInfo crm_camp_con_id="2-86FQ"
crm_campaign_id="2-7ULX"
tz_dbid="(GMT-10:00) Hawaii">
<Record
contact_info="3334445559"
contact_info_type="1"
>
</Record>
<Record
contact_info="4444445559"
contact_info_type="1"
daily_from="57600"
daily_till="75600"
>
</Record>
</ContactInfo>
</ListOfContactInfo>
</ListInfo>
</SyncRequest>
<SyncRequest Name="Genesys - Delete List" Id=1-SSSE>
<ListInfo
TenantId="Default Organization"
CampaignName="WS77-Campaign1"
Name="WS77- List2"
AdminLoginName="GPADMIN">
</ListInfo>
</SyncRequest>

30

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

The RecordInfo Requests and Attributes


Table 5 shows the Genesys RecordInfo requests:
Table 5: The Genesys RecordInfo Requests
Name

Description

Genesys - Insert DNC List Record

Sends DoNotCall messages to


OCS

This request contains the following two elements: CustomerId and Phone. You
can send the DoNotCall messages as unique customer IDs, or as phone
numbers.
Example 8 represents a RecordInfo request:
Example 8

<SyncRequest Name="Genesys - Insert DNC List Record" Id=1-SSSF>


<RecordInfo>
<CustomerId>1-4IW7</CustomerId>
<Phone></Phone>
</RecordInfo>
</SyncRequest>

The Campaign Synchronization Response


The Adapter generates a response for each processing request and sends it back
to a client through an HTTP connection. The root element for all Adapter
responses is SyncResponse. All responses have the following three mandatory
attributes:

Name

Id

Result.

The Name and Id attributes have the same values as the corresponding attributes
in the request.
The Result attribute may have the following three possible values:

Success

NotReady

Error.

For all responses with Result = Success or Result = Error, the corresponding
requests should be removed from the client queue. For any response with
Result = NotReady, the corresponding request should be kept in the client
queue and re-sent to the Adapter after a timeout period.
The SyncResponse element may contain the following two types of child
elements:

Gplus Adapter for Siebel CRMDevelopers Guide

31

Chapter 1: Campaign Synchronization Component 8.0.0

CallResults

SynchSummary.

The Campaign Synchronization Data Flow

The CallResults element is intended for the backward synchronization of the


OCS call_result and attempt fields. For more information about the
SynchSummary element see Using the Genesys Campaign Synchronization
Business Service on page 50.
Example 9 displays examples of response messages:
Example 9

<SyncResponse Name="Genesys - Get List Statistics" Id="1-SSSX"


Result="Success">
<CallResults>
<CallResultRecord>
<crm_camp_con_id>1-8ZGR</crm_camp_con_id>
<call_result>0</call_result>
<call_result_name>Ok</call_result_name>
<attempt>4</attempt>
<call_time>18000334555</call_time>
</CallResultRecord>
<CallResultRecord>
<crm_camp_con_id>1-8ZGS</crm_camp_con_id>
<call_result>7</call_result>
<call_result_name>No Answer</call_result_name>
<attempt>2</attempt>
<call_time></call_time>
</CallResultRecord>
</CallResults>
</SyncResponse>
<SyncResponse Name="Genesys - Create List" Id="1-SSSY"
Result="Error">
<SynchSummary>
<SynchSummaryRecord>
<Object>Calling List Record</Object>
<ObjectN>11</ObjectN>
<Operation>UPDATE</Operation>
<OperationStatus>SUCCESS</OperationStatus>
<AuxValue1>CLT_3842</AuxValue1>
<AuxValue2></AuxValue2>
<AuxValue3></AuxValue3>
</SynchSummaryRecord>
<SynchSummaryRecord>
<Object>Calling List Record</Object>
<ObjectN>1</ObjectN>

32

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

<Operation>DELETE</Operation>
<OperationStatus>FAILURE</OperationStatus>
<AuxValue1>CLT_3842</AuxValue1>
<AuxValue2></AuxValue2>
<AuxValue3></AuxValue3>
</SynchSummaryRecord>
</SynchSummary>
</SyncResponse>

The formal definition of the Adapters responses, which is the Outbound XML
Schema, is shown in the next section.

The Outbound XML Schema


Example 10 depicts the Campaign Synchronization XML schema of outbound
messages.
Example 10

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


<!-- Gplus Adapter 8.0. Campaign Synchronization Schema of Outbound
Messages-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- definition of attributes -->
<xs:attribute name="Name" type="xs:string" />
<xs:attribute name="Id" type="xs:string" />
<xs:attribute name="Result">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Success"/>
<xs:enumeration value="Error"/>
<xs:enumeration value="NotReady"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ErrorCode" type="xs:string" />
<xs:attribute name="ErrorText" type="xs:string" />
<!-- *** -->
<!-- definition of elements -->
<xs:element name="crm_camp_con_id" type="xs:string" />
<xs:element name="call_result" type="xs:integer" />
<xs:element name="call_result_name" type="xs:string" />
<xs:element name="call_time" type="xs:integer" />
<xs:element name="attempt" type="xs:integer" />
<xs:element name="CallResultRecord">
<xs:complexType>
<xs:sequence>
<xs:element ref="crm_camp_con_id" />
<xs:element ref="call_result" />
<xs:element ref="call_result_name" />
<xs:element ref="call_time" />

Gplus Adapter for Siebel CRMDevelopers Guide

33

Chapter 1: Campaign Synchronization Component 8.0.0

The Campaign Synchronization Data Flow

<xs:element ref="attempt" />


</xs:sequence>
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="Object" type="xs:string" />
<xs:element name="ObjectN" type="xs:integer" />
<xs:element name="Operation" type="xs:string" />
<xs:element name="OperationStatus" type="xs:string" />
<xs:element name="AuxValue1" type="xs:string" />
<xs:element name="AuxValue2" type="xs:string" />
<xs:element name="AuxValue3" type="xs:string" />
<xs:element name="SynchSummaryRecord">
<xs:complexType>
<xs:sequence>
<xs:element ref="Object" />
<xs:element ref="ObjectN" />
<xs:element ref="Operation" />
<xs:element ref="OperationStatus" />
<xs:element ref="AuxValue1" />
<xs:element ref="AuxValue2" />
<xs:element ref="AuxValue3" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="CallResults">
<xs:complexType>
<xs:sequence>
<xs:element ref="CallResultRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="SyncSummary">
<xs:complexType>
<xs:sequence>
<xs:element ref="SynchSummaryRecord" minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- *** -->
<xs:element name="SyncResponse">
<xs:complexType>
<xs:sequence>
<xs:element ref="CallResults" minOccurs="0" maxOccurs="1" />
<xs:element ref="SyncSummary" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attribute ref="Name" use="required" />

34

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

<xs:attribute ref="Id" use="requered" />


<xs:attribute ref="Result" use="required" />
<xs:attribute ref="ErrorCode" use="optional" />
<xs:attribute ref="ErrorText" use="optional" />
<xs:anyAttribute />
</xs:complexType>
</xs:element>
<!-- *** -->
</xs:schema>

Configuring the List Import Functionality


This section provides guidelines for configuring the Campaign
Synchronization Components list import functionality and contains the
following subsections:
The Siebel Configuration Guidelines, page 35
The Format Object Configuration Guidelines, page 38
The Style Sheet Configuration Guidelines, page 41
The Style Sheet Configuration Examples, page 43

The Siebel Configuration Guidelines


You should make sure that all the Siebel fields that you plan to export to the
Genesys environment have transferred from the Siebel environment to the
Campaign Synchronization Component. To verify this, use the Campaign
Synchronization Components log to examine the Siebel XML files received
by the Campaign Synchronization Component. (Siebel XML is printed in the
log when the value of the verbose Application-level configuration option is set
to debug). All of the required fields must be attributes of the ContactInfo or the
Record XML elements.
Whereas your calls to the Genesys Campaign Synchronization business
services methods determine what synchronization tasks the Campaign
Synchronization Component performs, the specific way in which the
Campaign Synchronization Component maps the Siebel fields to the Genesys
fields depends on the following two things:

The Genesys Configuration Layer Format object that is specified by the


Format Application option.

The Siebel Integration object, Genesys - Campaign List Contact.

The Campaign Synchronization Component uses the Format object to create


Genesys Calling List tables.
The default value for the Format configuration option used by the Campaign
Synchronization Component is GplusCampSynch. You create the Format object
according to the instructions provided in the Gplus Adapter 8.0 for Siebel CRM
Deployment Guide. The Genesys-specific Siebel Integration object, Genesys -

Gplus Adapter for Siebel CRMDevelopers Guide

35

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

Campaign List Contact, contains the default mapping of the Siebel fields to

the Genesys fields. This mapping is shown in Table 6.


Table 6: Default Mapping of Siebel to Genesys Fields
Siebel Field

Genesys Field

CampaignListContact.HomePhone,

contact_info, contact_info_type,

CampaignListContact.WorkPhone,
CampaignListContact.ProspectWorkPhone,

where contact_info_type = 1 for


home phones, and
contact_info_type = 2 for work
phones

CampaignListContact.TimeZoneName,

tz_dbid

CampaignListContact.ProspectHomePhone,

CampaignListContact.ProspectTimeZone
CampaignListContact.CampaignId

crm_campaign_id

CampaignListContact.Id

crm_camp_con_id

CampaignListContact.ContactId,

crm_contact_id

CampaignListContact.ProspectId

You can use both the default format and the Genesys-specific Siebel
Integration object as the starting point to create the custom list import formats.
Using the Format object, you can specify a different format at any time. The
mapping of the Siebel fields to the Genesys fieldswhich is provided by the
corresponding Genesys-specific Siebel Integration object, Genesys - Campaign
List Contactshould cover all specified formats and user-defined fields.
You should make sure that all the Siebel fields that you plan to export to the
Genesys environment have transferred from the Siebel environment to the
Campaign Synchronization Component. To verify this, use the Campaign
Synchronization Components log to examine the Siebel XML files received
by the Campaign Synchronization Component. (Siebel XML is printed in the
log when the value of the verbose Application-level configuration option is set
to debug). All of the required fields must be attributes of the ContactInfo or the
Record XML elements.

36

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

If this is not the case, use Siebel Tools to perform the following actions:

Procedure:
Verifying that the Siebel fields transferred from the
Siebel environment to the Genesys environment
Purpose: To verify that the Siebel fields transferred from the Siebel
environment to the Genesys environment.
1. In Siebel Tools, in the Project field of the Object Explorer, select All
Projects.
2. Select the Business Component folder.
The Business Component folder displays.
3. Select the Campaign List Contact business component.
4. Check that the Campaign List Contact business component contains the
required fields and that those fields are active. If necessary, modify the
business component to include or activate the fields.
5. For the Genesys - Campaign List Contact Integration object, check that the
ContactInfo Integration Component (external name - Campaign List
Contact) contains the required fields, and check that those fields are active.
Also, check that the Name column of the Integration Component Fields
table has appropriate values as shown in Table 7 on page 37.
Table 7: Default Mapping of Siebel and Genesys Names in the
Campaign List Contact Integration Component
External Name (Siebel)

Name (Genesys)

Calculated Home Phone #

phone_1

Calculated Work Phone #

phone_2

CampaignId

crm_campaign_id

Id

crm_camp_con_id

Calculated Contact Id

crm_contact_id

Calculated Time Zone Name

tz_dbid

If some of the fields are absent, synchronize the Integration object using
the Synchronize button in the Integration Objects window. Then, after
synchronization, change the type for the Id Integration Component field
from System to Data. If some of the fields are not active then activate them.
The correct values of the Name column are shown in Table 7.

Gplus Adapter for Siebel CRMDevelopers Guide

37

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

6. If you make any changes to the Siebel repository archive file (*.sif) as a
result of Step 3 and Step 5 above, update the Siebel repository file by
compiling the Campaign Synchronization project, and deploy the updated
file on the Siebel Server.
End of procedure
The steps listed above are general guidelines only. For more detailed
information on how to use Siebel Tools to modify business components,
integration components, integration objects, and the Siebel repository file,
please see your Siebel documentation.

The Format Object Configuration Guidelines


When the Campaign Synchronization Component imports the Siebel Lists to
the Genesys environment, the Format object that it uses is specified in the
following location: Configuration Manager > Campaign Synchronization
Component application object > options > Genesys section > Format
option.

If you work in a multi-tenant Genesys environment, you should create a copy


of the Format object under each Genesys Tenant that is mapped to a Siebel
Organization or Division.
The list import Format object must include the Outbound Contact Server fields
listed in Table 8 on page 39. These fields are essential for the Adapter and
Outbound Contact Server (OCS) to function properly.
Note: When you use <datetime> types of fields in your synchronization

process, you must check that the input formats of these fields are equal
for both the Siebel and Genesys databases. If this is not the case, some
additional configuration is required; the values of these fields in the
XML messages should meet the input format requirements for the
OCS database. This configuration can be accomplished by using an
XSL style sheet file on the Genesys side (see The Style Sheet
Configuration Guidelines on page 41 for more details).

38

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

Table 8: Genesys OCS Fields that must be Included in the Format


Object
Genesys OCS Field
record_id
contact_info
contact_info_type
record_type
record_status
call_result
attempt
dial_sched_time
call_time
daily_from
daily_till
tz_dbid
campaign_id
agent_id
chain_id
chain_n
crm_campaign_id
crm_camp_con_id
crm_contact_id
app_id
group_id
media_ref
treatments

Gplus Adapter for Siebel CRMDevelopers Guide

39

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

If you want to add some additional Outbound Contact Server fields to the
synchronization process, you have to add them in both the Siebel and Genesys
environments as shown in Procedure: Adding additional Outbound Contact
Server fields to the synchronization process:

Procedure:
Adding additional Outbound Contact Server fields to
the synchronization process
Purpose: To add additional Outbound Contact Server fields to the
synchronization process in both the Siebel and Genesys environments.
Start of procedure
1. Create new Format object fields in the Genesys environment. See the Gplus
Adapter for Siebel CRM Deployment Guide.
2. Activate the fields in the ContactInfo integration component.
3. Rename those fields in the ContactInfo integration component according
to their names in Genesys.
4. Compile the Genesys Campaign Synchronization project and deploy the
updated *.srf file on the Siebel Server.
End of procedure
If you want to synchronize additional ContactInfo fieldsfor example, Email
Address or Fax Phone #, you have to name them as phone_X where X is the
correct value for the Genesys ContactInfo type. Refer to Table 1 on page 18
for these ContactInfo values. The highest value should not exceed the value of
the last type, which is10.
Table 9: Genesys ContactInfo Types

40

Name

Value

HomePhone

DirectBusinessPhone

BusinessWithExt

Mobile

VacationPhone

Pager

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

Table 9: Genesys ContactInfo Types (Continued)


Name

Value

Modem

VoiceMail

PinPage

E-mail

10

The Style Sheet Configuration Guidelines


If you need to transform some of the synchronized data values (for example
adding calculated fields for each record in the chain), you can use the
xslTransformer configuration option of the Campaign Synchronization
Component. In this case, you have to add this option to the Genesys section,
see the Gplus Adapter for Siebel CRM Deployment Guide for more
information.The Component provides the mechanism to customize the
transformation rules through a style sheet definition.
When you create a style sheet that the Campaign Synchronization Component
uses to import Siebel Lists, the style sheet must map a set of predefined
Genesys fields, which are listed in Table 10.
Table 10: Genesys Fields that the Style Sheet Must Map
Genesys Field
contact_info
contact_info_type
crm_campaign_id
crm_camp_con_id
crm_contact_id
tz_dbid

The Campaign Synchronization Component package contains the


GplusCampSynch.xsl file, which you can use as a template to create your own
style sheet. This style sheet is an example template that replaces any values of
the TenantId field (Siebel Organization) with the constant Default
Organization. This example may be useful for customers who would like to
manage all Siebel organizations as one Genesys Tenant in the Genesys
Configuration Layer Environment (CLE).

Gplus Adapter for Siebel CRMDevelopers Guide

41

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

Example 1 displays the file content:


Example 1

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="windows-1252"/>
<xsl:template match="/ | @* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@TenantId">
<xsl:attribute name="TenantId">Default
Organization</xsl:attribute>
</xsl:template>
</xsl:stylesheet>

The Campaign Synchronization Component automatically generates values for


some of the predefined Genesys fields. As a result, the style sheet must not
map these fields, which are listed in Table 11.
Table 11: Genesys Fields That You Cannot Map Using the Style
Sheet
Genesys Field
record_id
chain_id

When requested to update the Genesys Calling List records, the Campaign
Synchronization Component updates all Genesys fields mapped by the style
sheet, with the exception of the fields shown in Table 12.
Table 12: Genesys Fields That You Cannot Update Using the Style
Sheet
Genesys Field
record_id
chain_id
crm_campaign_id
crm_camp_con_id

42

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

You must also ensure that the corresponding Format object includes a field
definition for each Genesys field that the style sheet maps.

The Style Sheet Configuration Examples


Example 1
The code listing in this section illustrates how to configure the list import
functionality to replace the prefix XXX in phone numbers imported from
Siebel with the access code 123 in phone numbers stored in the Genesys
Calling Lists. If you use dialing filters in your Siebel environment, you will
need to perform similar replacements with the imported phone numbers.
The corresponding style sheet file is TransformXXX.xsl. It was created by
copying the GplusCampSynch.xsl file (which is a part of the Campaign
Synchronization Component installation package) and adding the elements in
the code listing below shown in bold in order to perform the substitution.
Warning! The following code listing simply illustrates a style sheet file with

entries to replace one substring with another. Genesys does not


support this modified style sheet. If you need detailed instructions
and support for customizing a style sheet, please contact Genesys
Professional Services.

Gplus Adapter for Siebel CRMDevelopers Guide

43

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

The following code listing illustrates how to configure the list import
functionality:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="windows-1252"/>
<xsl:template match="/ | @* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@contact_info">
<xsl:attribute name="contact_info">
<xsl:choose>
<xsl:when test="starts-with(., 'XXX')">
<xsl:value-of select="concat('123', substring-after(.,
'XXX'))"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:template>
<xsl:template match="Phone">
<Phone>
<xsl:choose>
<xsl:when test="starts-with(., 'XXX')">
<xsl:value-of select="concat('123', substring-after(.,
'XXX'))"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</Phone>
</xsl:template>
</xsl:stylesheet>

44

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

Example 2
The code listing in this section illustrates how to configure the list import
functionality to generate the field values for each Outbound Contact Server
(OCS) record based on the contact_info_type attribute.
Suppose that a customer has two additional requirements:

Change the order of the records in a chain based on the phone type: the
work phone should be listed first, and the home phone should be listed
second.

Set the values of the daily_from and daily_till fields according to the
phone type:
for work phones: daily_from = 8am and daily_till = 6pm
for home phones: daily_from = 4pm and daily_till = 9pm.

The first requirement can be done by inserting the chain_n attribute, with a
value calculated according to the contact_info_type attribute.
The corresponding style sheet file is TransformRecordAttr.xsl. It was created
by copying the GplusCampSynch.xsl file (which is a part of the Campaign
Synchronization Component installation package) and adding the elements the
code listing below shown in bold.
Warning! The following code listing simply illustrates a style sheet file with

entries to generate field values for each OCS record. Genesys does
not support this modified style sheet. If you need detailed
instructions and support for customizing a style sheet, please
contact Genesys Professional Services.

Gplus Adapter for Siebel CRMDevelopers Guide

45

Chapter 1: Campaign Synchronization Component 8.0.0

Configuring the List Import Functionality

The following code listing illustrates how to configure the list import
functionality to generate the field values for each OCS record:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="windows-1252"/>
<xsl:template match="/ | @* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@contact_info_type">
<xsl:attribute name="contact_info_type"><xsl:value-of
select="."/> </xsl:attribute>
<xsl:attribute name="chain_n">
<xsl:choose>
<xsl:when test=". = '1'">
<xsl:value-of select="1"/>
</xsl:when>
<xsl:when test=". = '2'">
<xsl:value-of select="0"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="2"/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name="daily_from">
<xsl:choose>
<xsl:when test=". = '2'">
<xsl:value-of select="28800"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="57600"/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name="daily_till">
<xsl:choose>
<xsl:when test=". = '2'">
<xsl:value-of select="64800"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="75600"/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:template>
</xsl:stylesheet>

46

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

The Genesys Campaign Synchronization Business Service

The Genesys Campaign Synchronization


Business Service
The Genesys Campaign Synchronization Siebel business service, which installs
in tandem with the Gplus Adapter for Siebel CRM Campaign Synchronization
Component, encapsulates the components ability to synchronize campaign
data from the Siebel environment to the Genesys environment. The Genesys
Campaign Synchronization business service exposes a set of methods used to
perform the following tasks with the campaign data in the Genesys
environment:

Export or delete campaigns.

Export, append, or delete lists.

Assign lists to campaigns.

Insert, update, or delete list records.

Insert records to the Genesys Do Not Call list.

You import the Genesys Campaign Synchronization business service method


into the Siebel repository when you deploy the Campaign Synchronization
Component.
You can invoke the Genesys Campaign Synchronization business service as you
would invoke any other Siebel business service. For example, you can invoke
it from the:

Siebel eScript environment.

Siebel VB (Virtual Basic) environment.

Siebel workflow environment.

For descriptions of the Genesys Campaign Synchronization business services


methods and their arguments, see Using the Genesys Campaign
Synchronization Business Service on page 50. For general information about
Siebel business services and their role in Siebel applications, see your Siebel
documentation.

Gplus Adapter for Siebel CRMDevelopers Guide

47

Chapter 1: Campaign Synchronization Component 8.0.0

Default Scenarios for the Campaign Synchronization

Warning! If Genesys Outbound Contact Server is running when you update

the Genesys environment using the Genesys Campaign


Synchronization business service, the Outbound Contact Server is
not notified about the updates (excluding the DoNotCall records,
which update dynamically). To avoid inconsistencies in the
information between the Genesys and Siebel environments, do not
update the data for the campaigns that are being executed by the
Genesys Outbound Contact Server at the same time. In other
words, call the methods of the Genesys Campaign Synchronization
business service only for those campaigns that are not being
executed by Genesys Outbound Contact Server yet, or when
Genesys Outbound Contact Server is not running.

Default Scenarios for the Campaign


Synchronization
When installed, the Campaign Synchronization Component supports a number
of default scenarios for the campaign synchronization between the Genesys
and Siebel environments. Each scenario corresponds to a particular campaign
synchronization task. These scenarios are encapsulated by the Genesys
Campaign Synchronization business service.
The Campaign Synchronization Component uses a set of Siebel runtime events
to invoke the campaign synchronization scenarios. Table 13 lists the runtime
events that correspond to the affected Business Components.
Table 13: The Business Components and The Runtime Events
Business Component

Business Component Event

Campaign

BusComp_PreSetFieldValue
BusComp_SetFieldValue
BusComp_CopyRecord
BusComp_NewRecord
BusComp_PreDeleteRecord
BusComp_DeleteRecord
BusComp_PreWriteRecord

48

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Default Scenarios for the Campaign Synchronization

Table 13: The Business Components and The Runtime Events


(Continued)
Business Component

Business Component Event


BusComp_WriteRecord

Campaign List Contact

BusComp_CopyRecord
BusComp_NewRecord
BusComp_PreDeleteRecord
BusComp_DeleteRecord
BusComp_PreWriteRecord
BusComp_WriteRecord

Campaign Load Wave

BusComp_PreWriteRecord
BusComp_WriteRecord

Consumer, Contact, Employee,


List Mgmt Prospective Contact,
Person, User

BusComp_PreSetFieldValue

BusComp_SetFieldValue
BusComp_PreDeleteRecord
BusComp_DeleteRecord
BusComp_PreWriteRecord
BusComp_WriteRecord
Position

BusComp_PreAssociate
BusComp_Associate
BusComp_PreDeleteRecord
BusComp_DeleteRecord

You can customize or extend the default campaign synchronization scenarios


by modifying the Genesys Campaign Synchronization business service and the
runtime events referenced in Table 13. Or, you can use this business service
and these runtime events as starting points in creating your own campaign
synchronization scenarios.

Gplus Adapter for Siebel CRMDevelopers Guide

49

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

Using the Genesys Campaign


Synchronization Business Service
This section provides the general guidelines on how to use the
Genesys Campaign Synchronization business service to develop campaign
synchronization scenarios between the Siebel and Genesys applications. It also
describes the methods that this business service exposes, and presents an
example of Siebel eScript that invokes some of those methods. The section
contains the following subsections:
The Method Usage Guidelines, page 50
The Method Descriptions, page 51
The eScript Example, page 56

Note: The default scenarios of the Genesys Gplus Campaign

Synchronization Component, based on the runtime events, implement


real-time synchronization between the Siebel and Genesys databases.
This means that all changes in the assigned Siebel Calling Lists
automatically transfer to the Genesys environment. When you use
your own scenarios, you must disable this automatic update generated
by the Genesys runtime events to avoid double synchronization. In
this case, you should not install the Genesys runtime events in order to
prevent the automatic update by default scenarios.

The Method Usage Guidelines


Most of the Genesys Campaign Synchronization business service methods take
either one or two string arguments. The arguments mentioned in the following
descriptions are required except where they are listed as optional.
A call to the PreSubmitRequests method must precede the calls to any other
methods of the Genesys Campaign Synchronization business service, and a call
to the SubmitRequests method must follow all other Genesys Campaign
Synchronization business service method calls. You can think of this required
calling order as analogous to a transaction, in which the PreSubmitRequests
method defines the beginning of a group of related operations, and the
SubmitRequests method commits the whole group. However, this is just an
analogythese two methods do not actually implement the transactional
behavior.

50

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

The Method Descriptions


The entries in this section describe the following methods of the
Genesys Campaign Synchronization business service:
The PreSubmitRequests Method, page 51
The SubmitRequests Method, page 51
The ExportCampaign Method, page 52
The DeleteCampaign Method, page 52
The ExportLists Method, page 52
The AppendList Method, page 53
The DeleteLists Method, page 53
The AssignLists Method (obsolete), page 54
The ExportCampaignWithLists Method, page 54
The DeleteCampaignWithLists Method, page 54
The InsertListRecords Method, page 55
The UpdateListRecords Method, page 55
The DeleteListRecords Method, page 55
The InsertDNCListRecord Method, page 56
The DeleteDNCListRecord Method (obsolete), page 56

The PreSubmitRequests Method


A call to this method should precede any other calls to methods of the
Genesys Campaign Synchronization business service.
Arguments
[None.]

The SubmitRequests Method


A call to this method should follow any other calls to the methods of the
Genesys Campaign Synchronization business service. When this method is
invoked, all requests made after the last PreSubmitRequests method call are
sent to the Campaign Synchronization Component. For related information,
see Synchronization Summary Usage on page 59.
Arguments
ReferenceValue1

Optional: The user-defined value that you can use to


select records from the Genesys Synch Summary
business component after the synchronization is
complete.

ReferenceValue2

Optional: The user-defined value that you can use to


select records from the Genesys Synch Summary

Gplus Adapter for Siebel CRMDevelopers Guide

51

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

business component after the synchronization is


complete.
ReferenceValue3

Optional: The user-defined value that you can use to


select records from the Genesys Synch Summary
business component after the synchronization is
complete.

The ExportCampaign Method


This method creates a request to the Genesys Campaign Synchronization
Component to export a specified Siebel campaign to the Genesys environment.
For the exported campaign, the Campaign Synchronization Component creates
a Campaign object in the Genesys Configuration Layer. This object is placed in
a Campaign folder assigned to the Siebel user who created this campaign. Also,
this method adds to the Campaign object, a list of all Siebel segments/lists
assigned to this campaign.
Argument
CampaignId

A string representing the ID of the Siebel campaign that is


exported to the Genesys environment.

The DeleteCampaign Method


This method creates a request sent to the Campaign Synchronization
Component to delete a specific Siebel campaign exported from the Genesys
environment. The Campaign Synchronization Component deletes the
corresponding Campaign object from the Genesys Configuration Layer.
Argument
CampaignId

A string representing the ID of the Siebel Campaign that is


deleted from the Genesys environment.

The ExportLists Method


This method creates a request to the Campaign Synchronization Component to
export (to the Genesys environment) all of the lists that are assigned to a
specified Siebel campaign. The contacts directly assigned to the Siebel
campaign are exported as a separate list. For each exported list, the Campaign
Synchronization Component does the following:

52

Creates a Table Access object in the Genesys Configuration Layer. This


object is placed in a Table Access folder assigned to the Siebel user
performing the export.

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

Creates a Calling List object in the Genesys Configuration Layer. This


object is created in a Calling List folder assigned to the Siebel user
performing the export.

Creates a database table, and a set of indexes related to that table, located
in a database corresponding to the Database Access Point assignment of
the Siebel user performing the export.

Populates the created database table with records based on the contact
information from the list.

Argument
CampaignId

A string representing the ID of the Siebel campaign whose lists


are exported to the Genesys environment.

The AppendList Method


This method creates a request sent to the Campaign Synchronization
Component to append an existing list in the Genesys environment that
corresponds to the Siebel list specified by the CampaignId and ListId
parameters. The only records appended are those based on the contacts that are
absent from the Genesys list.
Arguments
CampaignId

A string representing the ID of the Siebel campaign to which


the Siebel List belongs.

ListId

(Optional argument:) A string representing the ID of the Siebel


List. If this argument is not specified, the Campaign
Synchronization Component appends the contacts that are
directly assigned to the specified Siebel campaign, but absent
from the corresponding Genesys List.

The DeleteLists Method


This method creates a request to the Campaign Synchronization Component to
delete (from the Genesys environment) all of the exported lists that are
assigned to the specified Siebel campaign. This request also includes the list of
contacts directly assigned to the Siebel campaign. For each deleted list, the
Campaign Synchronization Component does the following:

Deletes the corresponding Calling List object from the Genesys


Configuration Layer.

Deletes the corresponding Table Access object from the Genesys


Configuration Layer.

Drops the related database table with the list records.

Gplus Adapter for Siebel CRMDevelopers Guide

53

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

Argument
CampaignId

A string representing the ID of the Siebel campaign whose lists


are deleted from the Genesys environment.

The AssignLists Method (obsolete)


This method is obsolete. All Siebel segments/lists are assigned to a Campaign
object in the Genesys environment using the ExportCampaign method.
Arguments
CampaignId

A string representing the ID of the Siebel campaign whose


exported lists are assigned to another exported Siebel
Campaign in the Genesys environment.

ToCampaignId

A string representing the ID of the second exported Siebel


Campaign. This is the campaign to which the lists should be
reassigned in the Genesys environment.

The ExportCampaignWithLists Method


This method creates a request sent to the Campaign Synchronization
Component to export a given Siebel campaign (and all the lists assigned to this
campaign) to the Genesys environment. The exported lists are then assigned to
the corresponding exported campaign in the Genesys environment.
In its implementation, this method uses the following related methods. For
additional details, please see the descriptions for those methods:

The ExportCampaign Method (see page 52)

The ExportLists Method (see page 52)

Argument
CampaignId

A string representing the ID of the Siebel campaign whose


definition and lists is exported to the Genesys environment.

The DeleteCampaignWithLists Method


This method creates a request sent to the Campaign Synchronization
Component to delete a specific exported Siebel campaign (and all of the
exported lists assigned to this campaign) from the Genesys environment. In its
implementation, this method uses the following related methods listed below.
For additional details, please see the descriptions for those methods:

54

The DeleteCampaign Method (see page 52)

The DeleteLists Method (see page 53)

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

Argument
CampaignId

A string representing the ID of the Siebel campaign whose


definition and lists are deleted from the Genesys environment.

The InsertListRecords Method


This method creates a request sent to the Campaign Synchronization
Component to insert records for a specified Siebel Campaign List Contact into
the corresponding list in the Genesys environment. The list to be updated is
determined based on the Siebel campaign, and on the Siebel list, to which the
Campaign List Contact is assigned.
Argument
CampaignListContactId

A string representing the ID of the Siebel


Campaign List Contact whose records are inserted
in the Genesys environment.

The UpdateListRecords Method


This method creates a request to the Campaign Synchronization Component to
update records in the Genesys environment for a specified Siebel Campaign
List Contact. The Genesys List to be updated is determined based on the Siebel
campaign, and on the Siebel List, to which the Campaign List Contact is
assigned.
Argument
CampaignListContactId

A string representing the ID of the Siebel


Campaign List Contact whose records is updated in
the Genesys environment.

The DeleteListRecords Method


The DeleteListRecords method creates a request to the Campaign
Synchronization Component to delete records from the Genesys environment
for a specified Siebel Campaign List Contact. The Genesys List to be updated
is determined based on the Siebel campaign, and on the Siebel List, to which
the Campaign List Contact is assigned.
Argument
CampaignListContactId

Gplus Adapter for Siebel CRMDevelopers Guide

A string representing the ID of the Siebel


Campaign List Contact whose records is deleted in
the Genesys environment.

55

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

The InsertDNCListRecord Method


This method creates a request to the Campaign Synchronization Component to
insert a given customer ID or phone number into the Do Not Call list in the
Genesys environment.
Arguments
CustomerId

(Optional argument:) A string representing the customer ID


that is inserted into the Do Not Call list in the Genesys
environment.

Phone

(Optional argument:) A string representing the phone number


that is inserted into the Do Not Call list in the Genesys
environment.

The DeleteDNCListRecord Method (obsolete)


This method is obsolete. The method is left in the API for the backward
compatibility with older versions of the Campaign Synchronization
(Outbound) Component.
Arguments
CustomerId

(Optional argument:) A string representing the customer ID


that is deleted from the Do Not Call list in the Genesys
environment.

Phone

(Optional argument:) A string representing the phone number


that is deleted from the Do Not Call list in the Genesys
environment.

The eScript Example


The following eScript listing provides an example of campaign
synchronization from the Siebel environment to the Genesys environment. The
eScript shown in Example 1 invokes the following methods of the Genesys
Campaign Synchronization business service:

PreSubmitRequests

ExportCampaignWithLists

ExportLists

SubmitRequests

Comments embedded in the eScript clarify the flow of control.


Note: This eScript is provided as an illustration only, and is not supported by

Genesys.

56

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Example 1

Using the Genesys Campaign Synchronization

function ExportCampaignH(CampaignId)
{
// Function to export a given Siebel Campaign and its immediate
children
// to Genesys environment using Genesys Campaign Synchronization
Business Service in
// Compatibility mode.
//
// Function does not create Genesys Campaign objects for the
Child
// Campaigns of the exported Siebel Campaign. All Lists
// from the Child Campaigns in Siebel are assigned to the
// exported Siebel Campaign in Genesys.
var svGenesys = TheApplication().GetService(Genesys Campaign
Synchronization);
var psInput = TheApplication().NewPropertySet();
var psOutput = TheApplication().NewPropertySet();
svGenesys.InvokeMethod("PreSubmitRequests", psInput, psOutput);
// Create a request to export the specified Siebel Campaign with
its
// Lists to Genesys
// NOTE: In Compatibility mode, all lists of the exported
Campaign
// and its Child campaigns have been assigned to the Campaign
here.
// In Regular mode, the Genesys Adapter assigns lists of the
current Campaign only.
psInput.SetProperty(CampaignId, CampaignId);
svGenesys.InvokeMethod("ExportCampaignWithLists", psInput,
psOutput);
// Determine all children of the exported Siebel Campaign
var boCampaign = TheApplication().GetBusObject("Campaign");
var bcCampaign = boCampaign.GetBusComp("Campaign");
var bIsRecord;
with (bcCampaign)
{
ActivateField("Parent Source Id");
ClearToQuery();
SetSearchSpec("Parent Source Id", CampaignId);
ExecuteQuery(ForwardOnly);
bIsRecord = FirstRecord();
}

Gplus Adapter for Siebel CRMDevelopers Guide

57

Chapter 1: Campaign Synchronization Component 8.0.0

Using the Genesys Campaign Synchronization

var sChildCampaignId;
while (bIsRecord)
{
// For each Child Campaign, create a request to export its
Lists
// to Genesys
sChildCampaignId = bcCampaign.GetFieldValue("Id");
psInput = TheApplication().NewPropertySet();
psOutput = TheApplication().NewPropertySet();
psInput.SetProperty("CampaignId", sChildCampaignId);
svGenesys.InvokeMethod("ExportLists", psInput, psOutput);
bIsRecord = bcCampaign.NextRecord();
}
// Submit all created requests for execution
psInput = TheApplication().NewPropertySet();
psOutput = TheApplication().NewPropertySet();
with (psInput)
{
SetProperty(ReferenceValue1, ExportCampaignWithLists);
SetProperty(ReferenceValue2, CampaignId);
//SetProperty(ReferenceValue3, Something);
}
svGenesys.InvokeMethod("SubmitRequests", psInput, psOutput);
sChildCampaignId = null;
bIsRecord = null;
bcCampaign = null;
boCampaign = null;
psOutput = null;
psInput = null;
svGenesys = null;
}

58

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Synchronization Summary Usage

Synchronization Summary Usage


The summary information about the results of the data synchronization
requests is collected in the Siebel environment by using the Genesys Synch
Summary Siebel Business Component. This section provides the guidelines for
using the Genesys Synchronization Summary business component functionality.
It contains the following subsections:
The Synchronization Summary Format, page 59
Using the Genesys Synch Summary Business Component, page 61

The Gplus Adapter for Campaign Synchronization, after executing a data


synchronization request in the Genesys environment, sends the
synchronization summary information about the request back to Siebel in the
corresponding response. The summary information is then stored in a Genesys
Synch Summary Siebel Business Component.
The Genesys Synch Summary Siebel Business Component can be used to create
one or more Siebel client views to show the synchronization summary results
to the user.
Customers who want the synchronization summary information should change
the value of the synchSummary configuration option of the Genesys Campaign
Synchronization Application object in the Genesys Configuration Manager
Environment to true.

The Synchronization Summary Format


The Campaign Synchronization application (running in the Genesys
environment) sends the synchronization summary information back to the
Siebel environment for each data synchronization request in the body of the
corresponding response. The synchronization summary is an .xml format
document and the structure of this document is described in Table 8 on
page 39.
Note: In certain cases, particularly when a non-database (DB) related error

occurs during a synchronization operation, the synchronization


summary document may be empty.

Gplus Adapter for Siebel CRMDevelopers Guide

59

Chapter 1: Campaign Synchronization Component 8.0.0

Synchronization Summary Usage

Table 14: Structure of the Synchronization Summary in .XML


Documents
Field

Description

Object

The type of object in Genesys affected by the data


synchronization request (Campaign, Calling List,
Calling List Record, and so on.)

ObjectN

The number of Genesys objects of the same type


affected by the data synchronization request.

Operations

The performed operation (ADD, CHANGE, DELETE, and so


on.)

OperationsStatus

The status of the performed operation (SUCCESS,


FAILURE.)

AuxValue1

The additional information that varies based on the


request.

AuxValue2

The additional information that varies based on the


request.

AuxValue3

The additional information that varies based on the


request.

The Genesys Synch Summary Business Component, which is used to collect


synchronization summary information, has fields similar to those in Table 8. In
addition, this Business Component has three Reference Value fields to simplify
the record selection. The mapping between the Genesys Synch Summary
Business Component fields and the columns from its base table,
CX_GEN_SYN_SUM, is shown below in Table 15.
Table 15: The Synchronization Summary Business Component
Map

60

Genesys Synch
Summary
Business Component
Field

CX_GEN_SYN_SUM
Table Field

CX_GEN_SYN_SUM
Table Field Type

Object

OBJECT

varchar(30)

ObjectN

OBJECT_N

numeric(22,10)

Operations

OPERATION

varchar(30)

OperationsStatus

OPERATION_ST

varchar(30)

AuxValue1

AUX_VAL1

varchar(75)

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Synchronization Summary Usage

Table 15: The Synchronization Summary Business Component


Map (Continued)
Genesys Synch
Summary
Business Component
Field

CX_GEN_SYN_SUM
Table Field

CX_GEN_SYN_SUM
Table Field Type

AuxValue2

AUX_VAL2

varchar(75)

AuxValue3

AUX_VAL3

varchar(75)

Reference Value 1

REF_VAL1

varchar(75)

Reference Value 2

REF_VAL2

varchar(75)

Reference Value 3

REF_VAL3

varchar(75)

Using the Genesys Synch Summary Business Component


To use the Genesys Synch Summary Business Component, you work with the
SubmitRequests method of the Genesys Campaign Synchronization Siebel
business service. This method provides the following optional input
arguments: ReferenceValue1, ReferenceValue2,and ReferenceValue3. These
input arguments contain user-defined values that you can use to select records
from the Genesys Synch Summary Business Component after the
synchronization is complete. Refer to the section, The SubmitRequests
Method on page 51.
The following Siebel eScript code fragment illustrates how these arguments
can be used:
Example 1

function ExportList (CampaignId, ListId)


{
// Obtain Genesys Campaign Synchronization Business Service
var svGenesys =
TheApplication().GetService("Genesys Campaign Synchronization");
//
// Prepare the service for request submission
//
var psInput = TheApplication().NewPropertySet();
var psOutput = TheApplication().NewPropertySet();
svGenesys.InvokeMethod("PreSubmitRequests", psInput, psOutput);
//
// Create a request to export the specified
// Siebel Campaign List
//
psInput = TheApplication().NewPropertySet();

Gplus Adapter for Siebel CRMDevelopers Guide

61

Chapter 1: Campaign Synchronization Component 8.0.0

Synchronization Summary Usage

psOutput = TheApplication().NewPropertySet();
psInput.SetProperty("CampaignId", CampaignId);
psInput.SetProperty("ListId", ListId);
svGenesys.InvokeMethod("ExportList", psInput, psOutput);
//
// Submit the request for execution
//
psInput = TheApplication().NewPropertySet();
psOutput = TheApplication().NewPropertySet();
psInput.SetProperty("ReferenceValue1", "LIST EXPORT");
svGenesys.InvokeMethod("SubmitRequests", psInput, psOutput);
psOutput = null;
psInput = null;
svGenesys = null;
}

The data synchronization requests submitted to the Campaign Synchronization


Component using the PreSubmitRequests and SubmitRequests methods of the
Genesys Campaign Synchronization business service will complete
asynchronously.
Upon the completion of each request issued between the PreSubmitRequests
and SubmitRequests methods, the implementation calls the Appended method of
the Genesys Campaign Synchronization business service. The call to this
method provides a call-back mechanism that allows you to implement the
customized processing (for example, displaying a Siebel view with the
synchronization results, sending an e-mail message, and so on) of the data
synchronization results stored in the Genesys Synch Summary Business
Component. You can do this by modifying the default implementation of the
Appended method.
You can select the relevant synchronization summary information by
specifying values for the Reference Value arguments. You can enter a value as
any string that does not exceed 75 characters in length. The SubmitRequests
method passes these values to the Appended method.
Example 2 is a hypothetical implementation of the Appended method of the
Genesys Campaign Synchronization business service that selects the
synchronization summary records that correspond to the data synchronization
requests issued by the ExportList function described above in Example 1:
Example 2

function Appended(RefValue1, RefValue2, RefValue3)


{
//
// Obtain Genesys Synch Summary Business Component
//
var boGenSynchSummary
= TheApplication().GetBusObject("Genesys Synch Summary");

62

Gplus Adapter 8.0

Chapter 1: Campaign Synchronization Component 8.0.0

Synchronization Summary Usage

var bcGenSynchSummary
= boGenSynchSummary.GetBusComp("Genesys Synch Summary");
//
// Query Genesys Synch Summary
//
with (bcGenSynchSummary)
{
ActivateField("Reference Value 1");
ActivateField("Object");
ActivateField("Object #");
ActivateField("Operation");
ActivateField("Operation Status");
ClearToQuery();
SetSearchSpec("Reference Value 1", RefValue1);
ExecuteQuery(ForwardOnly);
}
//
// Do something with selected records
//
...
bcGenSynchSummary = null;
boGenSynchSummary = null;
}

Gplus Adapter for Siebel CRMDevelopers Guide

63

Chapter 1: Campaign Synchronization Component 8.0.0

64

Synchronization Summary Usage

Gplus Adapter 8.0

Chapter

Campaign Synchronization
Component 8.0.1
This chapter provides a developer's overview of the Gplus Adapter Campaign
Synchronization Component, focusing on the customization options and how
to use them. The information contained herein is valid for the Campaign
Synchronization Component release 8.0.1 and later. Each topic in this chapter
describes one aspect of the Component that you can use to customize the
campaign synchronization between the Siebel and Genesys environments. The
following topics are included in this chapter:
The Solution Overview, page 65
The Genesys Campaign Synchronization Server API Representation,
page 66
The Siebel Campaign Synchronization API Representation, page 121

For a functional overview of the complete Gplus Adapter and its integration
with the Siebel software, see the Gplus Adapter 8.0 for Siebel CRM User's
Guide. For a detailed description of the Siebel EAI architecture, see your
Siebel documentation.

The Solution Overview


The 8.0.1 version of the Gplus Adapter for Siebel CRM Campaign
Synchronization Component is a new product in comparison to the earlier
versions (7.5 and 8.0) of the Campaign Synchronization Component.

Campaign Synchronization Data Flow


Refer to the Gplus Adapter for Siebel CRM User's Guide for the explanation of
the data interaction between the Siebel and Genesys sections of the Adapter.

Gplus Adapter for Siebel CRMDevelopers Guide

65

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Configuring the List Import Functionality


Whereas your calls to the Genesys Campaign Synchronization business
services' methods determine what synchronization tasks the Campaign
Synchronization Component performs, the specific way in which the
Campaign Synchronization Component maps the Siebel fields to the Genesys
fields depends on two things:

The Genesys Configuration Layer Format object that is specified by the


Format Application configuration option. The Format object contains fields
that form a structure for a database table.

The custom fields and phone numbers specified during the deployment
process.

The default value for the Format option used by the Campaign Synchronization
Component is GplusCampSynch. You create the Format object and specify the
custom fields and phone numbers according to the instructions provided in the
Gplus Adapter 8.0 for Siebel CRM Deployment Guide.
Using the Format option, you can specify a different format at any time.

The Genesys Campaign Synchronization


Server API Representation
The Campaign Synchronization Server provides a web-based interface to
communicate with the clients. The Server acts as a simple web server that
processes the HTTP messages of the POST request method.
Note: Other HTTP request methods (for example, GET) are not supported.

The input parameters of the Campaign Synchronization Server are transferred


through the HTTP requests and the output parameters are transferred through
the HTTP responses using XML messages.
The format of XML messages is specific to the application and is described in
this document.
A single Campaign Synchronization Server can simultaneously process
requests from several clients. Each client should be responsible for a unique set
of campaigns and must have its own unique identifier. In the out-of-the-box
solution, these clients are represented by the CampSynch Configuration Objects
on Siebel side (see the Gplus Adapter for Siebel CRM User's Guide for more
details).

66

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The Campaign Synchronization Server's API methods can be divided into the
following three groups:

The methods used to synchronize the campaign data from the Siebel side to
the Genesys side:
CampSynch - Create Campaign (see, page 75)
CampSynch - Delete Campaign (see, page 78)
CampSynch - Merge Calling List Begin (see, page 81)
CampSynch - Merge Calling List Data (see, page 84)
CampSynch - Merge Calling List Commit (see, page 89)
CampSynch - Delete Calling List (see, page 92)
CampSynch - Activate Calling List (see, page 95)
CampSynch - Deactivate Calling List (see, page 98)
CampSynch - Merge Contact Record (see, page 101)
CampSynch - Delete Contact Record (see, page 105)

The method used to query the updates (deltas) for the call results and
number of call attempts:
CampSynch - Query Call Results Delta (see, page 111)

The methods used to query the data from the Genesys side to the Siebel
side (particularly, the query call results for an entire campaign, a calling
list, or a contact.)
CampSynch - Query Call Results by Campaign (see, page 114)
CampSynch - Query Call Results by Calling List (see, page 116)
CampSynch - Query Call Results by Contact (see, page 118)

Each method group has its own specific behavior, parameters, and
limitationsfor example, only one request can be processed at a time for each
of the first two method groups. This behavior is to ensure that the correct
sequence of operations and the correct synchronization are performed as a
result.

Gplus Adapter for Siebel CRMDevelopers Guide

67

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Frequently Used Input Parameters


There is a set of parameters that is commonly used for almost all of the
requests. To avoid repetition, these parameters are collected in Table 16. They
are referenced from the requests description.
Table 16: The Frequently Used Input Parameters
Parameter

Description

RequestId

The unique request identifier.

ConfigurationId

The client identifier.


In the out-of-the-box solution, it is an identifier of a
special configuration object in Siebel CRM that represents
a connection to a particular Campaign Synchronization
Server and is responsible for the synchronization of a
particular set of campaigns.
This parameter is used to avoid the simultaneous request
execution in the scope of the aforementioned
configuration object.

CampaignName

The campaign name to which a request is associated.

ListName

The calling list name to which a request is associated.

Summary

Specifies whether the information about the request


execution process (synchronization summary) should be
included into the output parameters (response).
Valid values:
Y: Include the synchronization summary.
N: Do not include the synchronization summary.

Complex Type Parameters


There is a set of complex type parameters that are used in several of the
requests. To avoid repetition, these parameters are collected in Table 17. They
are referenced from the requests description.
Table 17: The Complex Type Parameters
Parameter

Sub-Parameter

Mandatory

Field

68

Description
The custom field description.

FieldName

Yes

The data field name.

FieldValue

Yes

The data field value.

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Table 17: The Complex Type Parameters (Continued)


Parameter

Sub-Parameter

Mandatory

Phone

Description
The phone number.

PhoneType

Yes

Phones

The phone type. This value must


correspond to any Genesys phone type.
Refer to the Outbound Contact Solution
documentation for more details.
An array of phones. Can be set to
zero-sized.

Phone

No

CustomFields

A complex parameter. See, Phone.


An array of custom fields. Can be set ti
zero-sized.

Field

No

ContactInfo

A complex parameter. See, Field.


The Siebel contact data.

crm_campaign_id

Yes

The Siebel campaign identifier.

crm_contact_id

Yes

The global Siebel contact identifier.

crm_camp_con_id

Yes

The Siebel contact identifier in scope of


the particular Siebel campaign.

tz_name

Yes

The contact's time zone name. Refer to


the Gplus Adapter for Siebel CRM
Deployment Guide for more details on
how to configure and synchronize the
time zones between the Siebel side and
the Genesys side.

do_not_call

Yes

Specifies whether the contact should be


marked as one that must not be called
during campaign processing.
Valid values:
Y: Mark the contact as do not call.
N: Do not mark the contact as do not call.

Phones

Yes

A complex parameter. See, Phones.

CustomFields

Yes

A complex parameter. See,


CustomFields.

Gplus Adapter for Siebel CRMDevelopers Guide

69

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Table 17: The Complex Type Parameters (Continued)


Parameter

Sub-Parameter

Mandatory

ContactRef

Description
The reference to a Siebel contact

crm_campaign_id

Yes

The Siebel campaign identifier.

crm_contact_id

Yes

The global Siebel contact identifier.

crm_camp_con_id

Yes

The Siebel contact identifier in scope of


the particular Siebel campaign.

ContactList

An array of contacts. Can be set to


zero-sized.
ContactInfo

No

CampaignList

A complex parameter. See, ContactInfo.


An array of campaigns. Can be set to
zero-sized.

CampaignName

Yes

The campaign name to get the call


results for.

BatchMode

Yes

Specifies whether the batch mode for the


campaign should be turned on or off.
Valid values:
Y - turn the batch mode on
N - turn the batch mode off.

Synchronizing the Campaign Data from Siebel to Genesys


The methods listed in this group are designed to synchronize the campaign
data from the Siebel side to the Genesys side.
These methods are designed to support the double call tolerance policy. It
means that the same method can be called several times, but the result is the
samefor example, if the required data object already exists then the
corresponding creating method will do nothing but return a successful
response. If the required object does not exist then the corresponding deleting
method will do nothing but return a successful response.

70

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The Method Descriptions


The entries in this section describe the following methods:
The Common Method's Response, page 72
The CampSynch - Create Campaign Method, page 75
The CampSynch - Delete Campaign Method, page 78
The CampSynch - Merge Calling List Begin Method, page 81
The CampSynch - Merge Calling List Data Method, page 84
The CampSynch - Merge Calling List Commit Method, page 89
The CampSynch - Delete Calling List Method, page 92
The CampSynch - Activate Calling List Method, page 95
The CampSynch - Deactivate Calling List Method, page 98
The CampSynch - Merge Contact Record Method, page 101
The CampSynch - Delete Contact Record Method, page 105

Gplus Adapter for Siebel CRMDevelopers Guide

71

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The Common Method's Response


All of the methods in this group produce responses of an identical type.
Table 18 describes the output parameters for this method.
Table 18: The Common Response Parameters
Parameter

Mandatory

Description

RequestId

Yes

The request identifier.

ResultCode

Yes

The result of the request execution process.


This parameter can be one of following values:
100: OK. Successfully executed.
200 - 299: Confidential fault, which means that the request fails

for some unrecoverable reason.


300 - 399: Non-confidential fault, which means that a
recoverable error occurs and the request can be successfully
processed next time.
400 and higher: Critical fault, which means that not one
request can be processed until the cause of the error is found.

ResultDescription

Yes

The textual result description.

Summary

No

The detailed information about the request execution process


the synchronization summary.

72

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 1 illustrates the XML schema of the common method response.
XML Schema 1
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ResultCode" type="xs:unsignedInt" minOccurs="1" maxOccurs="1"/>
<xs:element name="ResultDescription" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

73

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 1 illustrates an example of the common method response.


Example 1
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<GCampSynchResponse APIVersion="2.0" Name="CampSynch - Merge Calling List Begin">
<RequestId>1-1TSD</RequestId>
<ResultCode>100</ResultCode>
<ResultDescription>OK</ResultDescription>
<Summary>
Request: 'CampSynch - Merge Calling List Begin'
Parameters:
CampaignName = 'TestOL1_Load_1_ol'
ListName = 'TestOL1_Load_1_Wave_1_ol'
FolderName = ''
InitialListState = 'Activated'
Actions:
[CME] Root folder 'Campaigns' found
[CME] Root folder 'Campaigns' found
[CME] Folder '/f1/f2' already exists
[CME] Table access 'TestOL1_Load_1_Wave_1_ol' has been created
[CME] Root folder 'Campaigns' found
[CME] Folder '/f1/f2' already exists
[CME] Table name 'CLT_123' has been updated
[CME] Calling list 'TestOL1_Load_1_Wave_1_ol' has been created
[CME] Calling list 'TestOL1_Load_1_Wave_1_ol' has been appended
[CME] Calling list 'TestOL1_Load_1_Wave_1_ol' has been activated
[DB] table: 'CLT_123_copy' has been dropped
[DB] table: 'CLT_123' has been created
[DB] table: 'CLT_123_copy' has been created
[DB] index: 'CLT_123_copy_chain_idx' has been created
[DB] request history table is available
</Summary>
</GCampSynchResponse>

74

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Create Campaign Method


This method creates a Campaign object in the Genesys Configuration Database.
This Campaign object is created without any calling lists.
Note: After a Campaign object is created and the calling lists are

synchronized, you still must perform the manual steps to finish the
campaign configuration by using Genesys Configuration Manager.
Table 19 describes the input parameters for the CampSynch - Create Campaign
method.
Table 19: The CampSynch - Create Campaign Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

Summary

Yes

See, Summary.

GenesysTemplate
Campaign

No

The Genesys campaign name that should be used as a template


to finish the configuration.
Note: This functionality is not implemented!

FolderName

No

The folder name in the Configuration Database where a


campaign is placed. If not specified, the campaign is created
under the Campaigns folder.

Gplus Adapter for Siebel CRMDevelopers Guide

75

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 2 illustrates the XML schema of the CampSynch - Create


Campaign method request.
XML Schema 2
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="GenesysTemplateCampaign" type="xs:string" minOccurs="0"
maxOccurs="1"/>
<xs:element name="FolderName" type="xs:string" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

76

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 2 illustrates a request to create a Campaign object named


TestOL1_Load_1 under the Campaigns/folder_ol folder. The synchronization
summary should be included into the response.
Example 2
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Create Campaign">
<NBParameters>
<RequestId>1-20W5H</RequestId>
<ConfigurationId>1-2A1B</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<Summary>Y</Summary>
<FolderName>folder_ol</FolderName>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

77

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Delete Campaign Method


This method deletes a campaign from the Genesys side, including the objects
found in the Configuration Database, the calling lists that are associated with
the campaign, the Outbound Database tables that are related to the
corresponding calling lists.
Table 20 describes the input parameters for the CampSynch - Delete Campaign
method.
Table 20: The CampSynch - Delete Campaign Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

Summary

Yes

See, Summary.

78

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 3 illustrates the XML schema of the CampSynch - Delete


Campaign method request.
XML Schema 3
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

79

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 3 illustrates a request to delete a campaign named TestOL1_Load_1.


The synchronization summary should be included into the response.
Example 3
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Delete Campaign">
<NBParameters>
<RequestId>1-2DFP3</RequestId>
<ConfigurationId>1-1Z1N1</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<Summary>Y</Summary>
</Parameters>
</GCampSynchRequest>

80

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Merge Calling List Begin Method


This method is the first of the three following methods listed that are designed
for the calling list synchronization:

CampSynch - Merge Calling List Begin

CampSynch - Merge Calling List Data

CampSynch - Merge Calling List Commit

These methods do the following merge operations under the calling list:

If a calling list does not exist, then one is created.

If a calling list exists, then the new contacts are merged with old ones.

This method creates the Calling List and Table Access objects in the
Configuration Database, associates these objects, and then adds the calling list
to the corresponding Genesys campaign.
The calling list can be added to the Genesys campaign in either the active or
the inactive state. Whether or not the calling list is processed by the outbound
solution depends on its state. The Genesys campaign to which the calling list
should be added must be present in the Configuration Database at the moment
of the execution request.
Table 21 describes the input parameters for the CampSynch - Merge Calling
List Begin method.
Table 21: The CampSynch - Merge Calling List Begin Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

InitialListState

No

Specifies the state of the calling list.


Valid values:
1. Activated (default)
2. Deactivated

Gplus Adapter for Siebel CRMDevelopers Guide

81

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 4 illustrates the XML schema of the CampSynch - Merge Calling
List Begin method request:
XML Schema 4
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="InitialListState" type="xs:string" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

82

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 4 illustrates a request to initiate the synchronization of the


TestOL1_Load_1_Wave_1 calling list to the TestOL1_Load_1 campaign. The
calling list should be activated. The synchronization summary should be
included into the response.
Example 4
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Merge Calling List Begin">
<NBParameters>
<RequestId>1-1TSD</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
<InitialListState>Activated</InitialListState>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

83

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Merge Calling List Data Method


This method is the second of the three following methods listed that are
designed for the calling list synchronization:

CampSynch - Merge Calling List Begin

CampSynch - Merge Calling List Data

CampSynch - Merge Calling List Commit

This method is designed to send a portion of the contacts data to the Genesys
side. This method may be called a multiple of times, providing different
portions of the contacts data each time.
Also, this method adds the corresponding Do Not Call contact's information
into the Genesys Outbound Solution.
Table 22 describes the input parameters for the CampSynch - Merge Calling
List Data method.

Table 22: The CampSynch - Merge Calling List Data Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

ContactList

Yes

The list of the Siebel contacts. See the section, Complex Type
Parameters on page 68.

84

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 5 illustrates the XML schema of the CampSynch - Merge Calling
List Data method request:
XML Schema 5
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ContactList" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="ContactInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="crm_campaign_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_contact_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_camp_con_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="tz_name" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="do_not_call" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="Phones">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Phone">
<xs:complexType>

Gplus Adapter for Siebel CRMDevelopers Guide

85

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="PhoneType" type="xs:unsignedByte"
use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CustomFields">
<xs:complexType>
<xs:sequence>
<xs:element name="Field" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="FieldName" type="xs:string"
minOccurs="1" maxOccurs="1"/>
<xs:element name="FieldValue" type="xs:string"
minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

86

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 5 illustrates a request to pass three contacts of the


TestOL1_Load_1_Wave_1 calling list of the TestOL1_Load_1 campaign. The
synchronization summary is included into the response.
Example 5
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Merge Calling List Data">
<NBParameters>
<RequestId>1-1TSDTTTT1</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
<ContactList>
<ContactInfo>
<crm_campaign_id>1-ERKI</crm_campaign_id>
<crm_contact_id>1-103CF</crm_contact_id>
<crm_camp_con_id>1-11BZI</crm_camp_con_id>
<tz_name>(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius</tz_name>
<do_not_call>N</do_not_call>
<Phones>
<Phone PhoneType="1">4445557799</Phone>
<Phone PhoneType="2">4445557777</Phone>
</Phones>
<CustomFields></CustomFields>
</ContactInfo>
<ContactInfo>
<crm_campaign_id>1-ERKI</crm_campaign_id>
<crm_contact_id>1-11BZP123</crm_contact_id>
<crm_camp_con_id>1-11K0Q</crm_camp_con_id>
<tz_name>>(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius</tz_name>
<do_not_call>N</do_not_call>
<Phones>
<Phone PhoneType="2">3334445501</Phone>
</Phones>
<CustomFields></CustomFields>
</ContactInfo>
<ContactInfo>
<crm_campaign_id>1-ERKI</crm_campaign_id>
<crm_contact_id>1-11C02</crm_contact_id>

Gplus Adapter for Siebel CRMDevelopers Guide

87

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

<crm_camp_con_id>1-11K0T</crm_camp_con_id>
<tz_name></tz_name>
<do_not_call>Y</do_not_call>
<Phones>
<Phone PhoneType="1">3334445502</Phone>
</Phones>
<CustomFields></CustomFields>
</ContactInfo>
</ContactList>
</Parameters>
</GCampSynchRequest>

88

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Merge Calling List Commit Method


This method is the third of the three following methods listed that are designed
for the calling list synchronization:

CampSynch - Merge Calling List Begin

CampSynch - Merge Calling List Data

CampSynch - Merge Calling List Commit

This method finalizes the synchronization process. It does the real contact data
merging in the Outbound Database. Until this method is called, the Calling List
data remains unchanged.
Note: If a calling list is processed by the Outbound Contact Solution while it

is being synchronized, then some data collisions are possible. It is


recommended to exclude the calling list from the Outbound
processing during synchronization.
Table 23 describes the input parameters for the CampSynch - Merge Calling
List Commit method.
Table 23: The CampSynch - Merge Calling List Commit Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

Gplus Adapter for Siebel CRMDevelopers Guide

89

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 6 illustrates the XML schema of the CampSynch - Merge Calling
List Commit method request:
XML Schema 6
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>

90

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 6 illustrates a request to finalize the TestOL1_Load_1_Wave_1 calling


list of the TestOL1_Load_1 campaign. The synchronization summary is included
into the response.
Example 6
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Merge Calling List Commit">
<NBParameters>
<RequestId>1-1YTXK</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

91

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Delete Calling List Method


This method deletes a calling list from the Genesys side, including the Table
Access object in the Configuration Database and the Outbound Database table
that correspond to the calling list.
Table 24 describes the input parameters for the CampSynch - Delete Calling
List method.
Table 24: The CampSynch - Delete Calling List Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

92

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 7 illustrates the XML schema of the CampSynch - Delete


Calling List method request:
XML Schema 7
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

93

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 7 illustrates a request to delete the TestOL1_Load_1_Wave_1 calling list


from the TestOL1_Load_1 campaign. The synchronization summary is included
into the response.
Example 7
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Delete Calling List">
<NBParameters>
<RequestId>1-1TS9</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
</Parameters>
</GCampSynchRequest>

94

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Activate Calling List Method


This method activates a calling list on the Genesys side. The calling list must
exist before this method is called. The calling list must be associated with the
campaign specified in the request.
Table 25 describes the input parameters for the CampSynch - Activate Calling
List method.
Table 25: The CampSynch - Activate Calling List Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

Gplus Adapter for Siebel CRMDevelopers Guide

95

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 8 illustrates the XML schema of the CampSynch - Activate


Calling List method request:
XML Schema 8
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

96

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 8 illustrates a request to activate the TestOL1_Load_1_Wave_1 calling


list from the TestOL1_Load_1 campaign. The synchronization summary is
included into the response.
Example 8
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Activate Calling List">
<NBParameters>
<RequestId>1-1YTXO</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

97

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Deactivate Calling List Method


This method deactivates a calling list on the Genesys side. The calling list must
exist before this method is called. The calling list must be associated with the
campaign specified in the request.
Table 26 describes the input parameters for the CampSynch - Deactivate
Calling List method.
Table 26: The CampSynch - Deactivate Calling List Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

98

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 9 illustrates the XML schema of the CampSynch - Deactivate


Calling List method request:
XML Schema 9
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

99

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 9 illustrates a request to deactivate the TestOL1_Load_1_Wave_1 calling


list from the TestOL1_Load_1 campaign. The synchronization summary is
included into the response.
Example 9
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Deactivate Calling List">
<NBParameters>
<RequestId>1-1YTXO</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
</Parameters>
</GCampSynchRequest>

100

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Merge Contact Record Method


This method merges the specific contact information to a particular calling list
on the Genesys side. If the requested contact information is not present in the
calling list, it will be added. If the requested contact information is present, it
will be updated. The contact record(s) is deleted, if the corresponding phone
number is not present in the contact data. The calling list must exist before this
method is called.
Table 27 describes the input parameters for the CampSynch - Merge Contact
Record method.
Table 27: The CampSynch - Merge Contact Record Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

ContactInfo

Yes

The Siebel contact data. See the section, Complex Type


Parameters on page 68.

Gplus Adapter for Siebel CRMDevelopers Guide

101

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 10 illustrates the XML schema of the CampSynch - Merge


Contact Record method request:
XML Schema 10
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ContactInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="crm_campaign_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_contact_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_camp_con_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="tz_name" />
<xs:element name="do_not_call" type="xs:string" />
<xs:element name="Phones" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Phone">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong">

102

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

<xs:attribute name="PhoneType" type="xs:unsignedByte"


use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CustomFields" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Field" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="FieldName" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="FieldValue" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

103

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 10 illustrates a request to merge a contact of the


TestOL1_Load_1_Wave_1 calling list of the TestOL1_Load_1 campaign. The
synchronization summary is included into the response.
Example 10
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Merge Contact Record">
<NBParameters>
<RequestId>1-1TSDT</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
<ContactInfo>
<crm_campaign_id>1-ERKI</crm_campaign_id>
<crm_contact_id>1-103CF</crm_contact_id>
<crm_camp_con_id>1-11BZI</crm_camp_con_id>
<tz_name>(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius</tz_name>
<do_not_call>N</do_not_call>
<Phones>
<Phone PhoneType="2">4445557777</Phone>
</Phones>
<CustomFields></CustomFields>
</ContactInfo>
</Parameters>
</GCampSynchRequest>

104

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Delete Contact Record Method


This method deletes the specific contact information from a particular calling
list on the Genesys side.
Table 28 describes the input parameters for the CampSynch - Delete Contact
Record method.

Table 28: The CampSynch - Delete Contact Record Method Input Parameters
Parameter

Mandatory

Description

RequestId

Yes

See, RequestId.

ConfigurationId

Yes

See, ConfigurationId.

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

Summary

Yes

See, Summary.

ContactInfo

Yes

The Siebel contact data. See the section, Complex Type


Parameters on page 68.
Note: This contact data should not contain phones and custom
fields as they are not required for this operation.

XML Schema 11on page 112 illustrates the XML schema of the CampSynch Delete Contact Record method request:

Gplus Adapter for Siebel CRMDevelopers Guide

105

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 11
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Summary" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ContactInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="crm_campaign_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_contact_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_camp_con_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="tz_name" />
<xs:element name="do_not_call" type="xs:string" />
<xs:element name="Phones" minOccurs="1" maxOccurs="1"/>
<xs:element name="CustomFields" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

106

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 11 illustrates a request to delete a contact of the


TestOL1_Load_1_Wave_1 calling list of the TestOL1_Load_1 campaign. The
synchronization summary is included into the response.
Example 11
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Delete Contact Record">
<NBParameters>
<RequestId>1-3G1RR</RequestId>
<ConfigurationId>1-1F2X</ConfigurationId>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<Summary>Y</Summary>
<ContactInfo>
<crm_campaign_id>1-2WQYQ</crm_campaign_id>
<crm_contact_id>1-2WQRP</crm_contact_id>
<crm_camp_con_id>1-2WRFN</crm_camp_con_id>
<tz_name>(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius</tz_name>
<do_not_call>N</do_not_call>
<Phones></Phones>
<CustomFields></CustomFields>
</ContactInfo>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

107

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Querying the Updates (Deltas) for the Call Results and the
Number of Call Attempts
The methods listed in this group are designed to query the data from the
Genesys side to the Siebel side, in particular, to query the updates (deltas) for
the call results and the number of call attempts for a campaign or a calling list.

The Method Descriptions


The entries in this section describe the following methods:
The Common Method's Response, page 108
The CampSynch - Query Call Results Delta Method, page 111
The CampSynch - Query Call Results by Campaign Method, page 114
The CampSynch - Query Call Results by Calling List Method, page 116
The CampSynch - Query Call Results by Contact Method, page 118

The Common Method's Response


All of the methods in this group produce responses of an identical type.
Table 29 describes the output parameters for this method.
Table 29: The Common Response Parameters
Parameter

Mandatory

Description

ResultCode

Yes

The result of the request execution process.


This parameter can be one of following values:
100: OK. Successfully executed.
200 - 399: Any kind of non-critical error.
400 and higher: Critical fault, which means that not one

request can be processed until the cause of the error is found.


ResultDescription

Yes

The textual result description.

CallResultList

Yes

The list of the CallResult structures. Can be set to zero-sized.


Each of the CallResult structures contain the following fields:
crm_campaign_id: The Siebel campaign identifier.
crm_contact_id: The global Siebel contact identifier.
crm_camp_con_id: The Siebel contact identifier in scope of
the campaign.
call_result: The Genesys result code.
call_time: The time of the last call.
attempts: The call attempts number.

108

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 12 illustrates the XML schema of the common method response.
XML Schema 12
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="ResultCode" type="xs:unsignedInt" minOccurs="1" maxOccurs="1"/>
<xs:element name="ResultDescription" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="CallResultList" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="CallResult">
<xs:complexType>
<xs:sequence>
<xs:element name="crm_campaign_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_contact_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_camp_con_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="call_result" type="xs:unsignedByte" minOccurs="1"
maxOccurs="1"/>
<xs:element name="call_time" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="attempts" type="xs:unsignedByte" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

109

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

Example 12 illustrates an example of the common method response.


Example 12
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<GCampSynchResponse APIVersion="2.0" Name="CampSynch - Query Call Results by Campaign">
<ResultCode>100</ResultCode>
<ResultDescription>OK</ResultDescription>
<CallResultList>
<CallResult>
<crm_campaign_id>1-2WQYQ</crm_campaign_id>
<crm_contact_id>1-2WQS0</crm_contact_id>
<crm_camp_con_id>1-2WRFO</crm_camp_con_id>
<call_result>21</call_result>
<call_time>1351004410</call_time>
<attempts>1</attempts>
</CallResult>
<CallResult>
<crm_campaign_id>1-2WQYQ</crm_campaign_id>
<crm_contact_id>1-2WQSB</crm_contact_id>
<crm_camp_con_id>1-2WRFP</crm_camp_con_id>
<call_result>21</call_result>
<call_time>1351004445</call_time>
<attempts>1</attempts>
</CallResult>
<CallResult>
<crm_campaign_id>1-2WQYQ</crm_campaign_id>
<crm_contact_id>1-2WQS0</crm_contact_id>
<crm_camp_con_id>1-2WRFO</crm_camp_con_id>
<call_result>21</call_result>
<call_time>1351004410</call_time>
<attempts>2</attempts>
</CallResult>
</CallResultList>
</GCampSynchResponse>

110

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Query Call Results Delta Method


This method requests information about the call results and the number of call
attempt that were collected since the previous method invocation (in other
words, the call results delta).
The list of campaigns that are affected is provided as well as the method's input
parameters. When a particular campaign is requested for the first time, the
Campaign Synchronization Server starts collecting call results for this
campaign. When a campaign disappears from the list, the Campaign
Synchronization Server stops collecting the call results for it.
When a specific campaign is requested for the first time and the batch mode
option is turned on for this campaign, the Campaign Synchronization Server
queries the call results for the entire campaign and responds with this data.
Table 30 describes the input parameters for the CampSynch - Query Call
Results Delta method.
Table 30: The CampSynch - Query Call Results Delta Method Input Parameters
Parameter

Mandatory

Description

ConfigurationId

Yes

See, ConfigurationId.

CampaignList

Yes

See, CampaignList.

InactivityTimeout

Yes

The specified timeout (in seconds) when the server should stop
collecting the call results for a specific client (represented via
the ConfigurationId parameter).
When a client is not interested in anymore updates, it simply
stops calling the request without notifying a server. So, this
timeout prevents an endless loop of data collection.

Gplus Adapter for Siebel CRMDevelopers Guide

111

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 13 illustrates the XML schema of the CampSynch - Query Call
Results Delta method response.
XML Schema 13
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationId" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignList" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="CampaignName">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="BatchMode" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="InactivityTimeout" type="xs: unsignedInt" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

112

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Example 13 illustrates a request to obtain the call results delta for the
gpvmk3_campaign_1_Load_3, SiebelCamp1, and SiebelCamp2 campaigns.
XML Example 13
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Query Call Results Delta">
<NBParameters>
<ConfigurationId>1-1F2X </ConfigurationId>
</NBParameters>
<Parameters>
<CampaignList>
<CampaignName BatchMode="Y">gpvmk3_campaign_1_Load_3</CampaignName>
<CampaignName BatchMode="N">SiebelCamp1</CampaignName>
<CampaignName BatchMode="N">SiebelCamp2</CampaignName>
</CampaignList>
<InactivityTimeout>180</InactivityTimeout>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

113

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Query Call Results by Campaign


Method
This method requests information about the call results and the number of call
attempt for the entire Genesys campaign. Only the contact records that are
already processed by the Outbound Contact Solution are included in this query.
Table 31 describes the input parameters for the CampSynch - Query Call
Results method.

Table 31: The CampSynch - Query Call Results Method Input Parameters
Parameter

Mandatory

Description

CampaignName

Yes

See, CampaignName.

114

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 14 illustrates the XML schema of the CampSynch - Query Call
Results method response.
XML Schema 14
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs ="1"/>
<xs:element name="Parameters" minOccurs="1" maxOccurs ="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs
="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

XML Example 14 illustrates a request to obtain the call results for the
TestOL1_Load_1 campaign.
XML Example 14
Request to obtain the call results for the 'TestOL1_Load_1'campaign.
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Query Call Results by Campaign">
<NBParameters>
</NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

115

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Query Call Results by Calling List


Method
This method requests information about the call results and the number of call
attempt for the entire Genesys calling list. Only the contact records that are
already processed by the Outbound Contact Solution are included in this query.
Table 32 describes the input parameters for the CampSynch - Query Call
Results by Calling List method.

Table 32: The CampSynch - Query Call Results by Calling List Method Input
Parameters
Parameter

Mandatory

Description

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

116

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 15 illustrates the XML schema of the CampSynch - Query Call
Results by Calling List method response.
XML Schema 15
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1"/>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

XML Example 15 illustrates a request to obtain the call results for the
TestOL1_Load_1_Wave_1 calling list of the TestOL1_Load_1 campaign.
XML Example 15
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Query Call Results by Calling List">
<NBParameters></NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
</Parameters>
</GCampSynchRequest>

Gplus Adapter for Siebel CRMDevelopers Guide

117

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

The CampSynch - Query Call Results by Contact


Method
This method requests information about the call results and the number of call
attempt for a specific contact.
Table 33 describes the input parameters for the CampSynch - Query Call
Results by Contact method.
Table 33: The CampSynch - Query Call Results by Contact Method Input Parameters
Parameter

Mandatory

Description

CampaignName

Yes

See, CampaignName.

ListName

Yes

See, ListName.

ContactRef

Yes

The Siebel contact reference. See the Complex Type


Parameters on page 68.

118

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Schema 16 illustrates the XML schema of the CampSynch - Query Call
Results by Contact method response.
XML Schema 16
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="GCampSynchRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="NBParameters" minOccurs="1" maxOccurs="1"/>
<xs:element name="Parameters" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="CampaignName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ListName" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ContactRef" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="crm_campaign_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_contact_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
<xs:element name="crm_camp_con_id" type="xs:string" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="APIVersion" type="xs:decimal" use="required" />
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Gplus Adapter for Siebel CRMDevelopers Guide

119

Chapter 2: Campaign Synchronization Component 8.0.1

The Genesys Campaign Synchronization Server API

XML Example 16 illustrates a request to obtain the call results for a specific
contact of the TestOL1_Load_1_Wave_1 calling list of the TestOL1_Load_1
campaign.
XML Example 16
<?xml version="1.0" encoding="UTF-8"?>
<GCampSynchRequest APIVersion="2.0" Name="CampSynch - Query Call Results by Contact">
<NBParameters></NBParameters>
<Parameters>
<CampaignName>TestOL1_Load_1</CampaignName>
<ListName>TestOL1_Load_1_Wave_1</ListName>
<ContactRef>
<crm_campaign_id>1-ERKI</crm_campaign_id>
<crm_contact_id>1-11BZP</crm_contact_id>
<crm_camp_con_id>1-11K0Q</crm_camp_con_id>
</ContactRef>
</Parameters>
</GCampSynchRequest>

120

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The Siebel Campaign Synchronization API


Representation
The Siebel-side solution of the Campaign Synchronization Component 8.0.1
consists of the following major parts:

The tables and business components used to store the special data involved
in the synchronization process.

The applets and views used to configure and monitor the synchronization
process.

The business services that do almost all of the work required for the
campaign synchronization.

The workflow processes that are responsible for the unidirectional


communication with the Campaign Synchronization Server.

Although, you can customize all of these parts, Genesys does not recommend
modifying the tables and the business components because the entire solution
is based on them and any changes may cause it not to work properly.
You can customize the applets and the views using the general Siebel
procedures.
You can adjust the synchronization process to meet your needs by using the
business services provided with the solutionfor example, you can
synchronize the campaigns/waves/contacts
Using the business services provided with the solution customers can adjust
the synchronization process for their needs. For example, customers are able to
synchronize campaigns/waves/contacts as a trigger to the Siebel runtime
events that are not handled in the out-of-the-box solution. Also, you can
customize the synchronization procedures from any appropriate place, such as
menu items or buttons.

The Business Services Overview


The Campaign Synchronization Component solution provides six business
services that are responsible for the different parts of the synchronization
process.

Gplus Adapter for Siebel CRMDevelopers Guide

121

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

For a brief description of the business services, see Table 34.


Table 34: The Campaign Synchronization Component Business Services
Business Service

Description

Genesys CampSynch Campaign

Provides the methods to generate requests for data


synchronization. This business service generates requests and
places them into the request queue, which are then read by the
workflow process and then sent to the Campaign
Synchronization server.

Genesys CampSynch Request


Executor

Provides the method that reads the request from the queue and
sends it to Genesys. This method is used by the workflow
process.

Genesys CampSynch Call Result

Provides the methods to request and apply the call results from
the Genesys side.

Genesys CampSynch Event Handler

Provides the methods that perform the event-oriented actions


for example, the reaction on the campaign loading or the
contact record update.

Genesys CampSynch Utils

Provides the methods that perform the auxiliary actions. This


method is intended to be called from the other business
services.

Genesys CampSynch Tools

Provides the methods that are used during the solution


deployment or the configuration procedure.

The Genesys CampSynch Campaign Business Service


The Genesys CampSynch Campaign business service provides the methods that
generate the requests for the data synchronization from the Siebel side to the
Genesys side. These requests are a part of the Siebel-side API for
communication with the Campaign Synchronization Server.
Each of these methods generates an XML-based request, places it into a
temporary file, and then adds an appropriate record into the request queue.
These requests are then read from the request queue and then sent to the
Campaign Synchronization Server (this process prevents any data loss in the
event of a Campaign Synchronization Server failure). A path to the directory
where the aforementioned temporary files are stored can be configured using
the FileSystem user property of the business service (see the Gplus Adapter for
Siebel CRM Deployment Guide for more details).
Note: These methods do not directly send a request to the Campaign

Synchronization Server.

122

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The methods for the Genesys CampSynch Campaign business service can only be
called for the Siebel campaigns that are properly configured for the
synchronization process and that are enabled for the synchronization process.

The Method Descriptions


The entries in this section describe the following methods of the
Genesys CampSynch Campaign business service:
The CreateCampaign Method, page 123
The DeleteCampaign Method, page 124
The ExportWave Method, page 124
The DeleteWave Method, page 126
The StartWaveProcessing Method, page 126
The StopWaveProcessing Method, page 127
The ExportWaveRecord Method, page 128
The DeleteWaveRecord Method, page 128

The CreateCampaign Method


This method generates a request to create a Campaign object on the Genesys
side that corresponds to a particular Siebel campaign load.
Note: This method is not responsible for creating the calling lists that belong

to the Siebel campaign load.


Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Create Campaign

Gplus Adapter for Siebel CRMDevelopers Guide

123

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The DeleteCampaign Method


This method generates a request to delete a Campaign object on the Genesys
side that corresponds to a particular Siebel campaign load. The presence of
campaign on the Genesys side is not mandatory for a successful request
execution.
Note: This method will complete delete a campaign, including all of the

associated calling lists. You do not have to call the DeleteWave method
for Campaign Load Waves before using this method.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Delete Campaign

The ExportWave Method


This method generates multiple requests to create or merge a calling list to the
Genesys side that corresponds to a particular Siebel campaign load wave.
All contacts assigned to the wave are separated by pages (a relatively small
number of contacts) and each page is then attached to its own request, which
allows the synchronization process to be done more effectively in case of
network failures. The page size can be set using the ContactPageSize user

124

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

property of the business service (see the Gplus Adapter for Siebel CRM
Deployment Guide for more details).
Note: An appropriate CreateCampaign method must be called before calling

this method. Otherwise, because this method only puts the


successfully processed requests into the queue, the execution of future
requests will fail due to the absence of a campaign on the Genesys
side.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

InitialState

Optional: The initial state of a calling list on the


Genesys side. Possible values are Activated and
Deactivated. If the value is not set, then it is not set in
the CampSynch - Merge Calling List Begin request
and the request use the default behavior.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Merge Calling List Begin
CampSynch - Merge Calling List Data (from 0-zero to N times)
CampSynch - Merge Calling List Commit

Gplus Adapter for Siebel CRMDevelopers Guide

125

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The DeleteWave Method


This method generates a request to delete a calling list from the Genesys side
that corresponds to a particular Siebel campaign load wave. The calling list
presence on the Genesys side is not mandatory for a successful request
execution.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Delete Calling List

The StartWaveProcessing Method


This method generates a request to activate the processing of a calling list on
the Genesys side that corresponds to a particular Siebel campaign load wave.
The campaign and the calling list presence on the Genesys side is mandatory
for a successful request execution.
Input Arguments

126

CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

WaveNumber

The Siebel Campaign Synchronization API Representation

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Activate Calling List

The StopWaveProcessing Method


This method generates a request to deactivate the processing of a calling list on
the Genesys side that corresponds to a particular Siebel campaign load wave.
The campaign and the calling list presence on the Genesys side is mandatory
for a successful request execution.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Deactivate Calling List

Gplus Adapter for Siebel CRMDevelopers Guide

127

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The ExportWaveRecord Method


This method generates a request to merge the contact list record on the
Genesys side that corresponds to a particular record in the Siebel campaign
load wave. The campaign and the calling list presence on the Genesys side is
mandatory for a successful request execution.
Input Arguments
CampContId

Mandatory: The ID of the Siebel contact that belongs


to a particular wave. The value must correspond to the
Id field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Merge Contact Record

The DeleteWaveRecord Method


This method generates a request to delete the contact list record on the Genesys
side that corresponds to a particular record in the Siebel campaign load wave.
The campaign and the calling list presence on the Genesys side is mandatory
for a successful request execution. The contact list record presence on the
Genesys side is not mandatory.
Note: This method must be called until an appropriate record is present in

the Campaign List Contact business component.


Input Arguments
CampContId

Mandatory: The ID of the Siebel contact that belongs


to a particular wave. The value must correspond to the
Id field of the Campaign List Contact business
component.

Output Argument
None.

128

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Delete Contact Record

The Genesys CampSynch Request Executor Business


Service
The Genesys CampSynch Request Executor business service provides a single
method that reads and executes (sends the request to the Campaign
Synchronization Server and processes the response) one request from the
request queue. This method is specially designed to be called from the
Campaign Synchronization Component's workflow that is responsible for the
request queue processing.
It is very important that for each particular CampSynch Configuration object (in
other words, for each particular Campaign Synchronization Server) there must
be only one process that executes requests. In the out-of-the-box solution, this
process is the workflow process. If several processes execute requests for a
particular Campaign Synchronization Server, it may cause an incorrect
sequence execution and therefore a synchronization failure.

The Method Descriptions


The entries in this section describe the following methods of the
Genesys CampSynch Request Executor business service:
The Execute Method, page 129

The Execute Method


This method reads from the request queue and executes one request, which
means it sends the request to the appropriate Campaign Synchronization
Server and processes the response.
The requests are chosen according to the execution order that is configured for
each CampSynch Configuration object. See the Gplus for Siebel CRM User's
Guide for details about the order of the request execution.
This method is designed to be run from the out-of-the-box workflow process,
therefore its input and output arguments are correlated with it.
Input Arguments
CasConfObjId

Gplus Adapter for Siebel CRMDevelopers Guide

Mandatory: The ID of the CampSynch Configuration


object that determines a synchronization target. This

129

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

value must correspond to the Id field of the Genesys


CaS Config Object business component.

130

CampaignId

Optional: The ID of the Siebel campaign for the


previously executed request. Used for choosing the
next request for a number of types of order execution.
If this argument is provided, the value must
correspond, for example, to the Campaign Id field of
the Campaign List Contact business component. The
value for this argument can be obtained from the
identically named output argument.

ExecChainId

Optional: The ID of a chain of the previously executed


request. Used for choosing the next request in a chain
(the requests can be chained in the queue when they
perform a common business functionfor example,
requests for a wave/calling list synchronization). The
value must be taken from the Chain Id field of the
Genesys CaS Synch Queue business component. The
value for this argument can be obtained from the
identically named output argument.

LastConnSubsystem

Optional: The type (primary or backup) of the last


successfully used connection subsystem (the Siebel
profile configuration). Possible values are Primary and
Backup. Used for choosing a connection subsystem to
send a request first. If not provided, the primary
connection subsystem is used first. The value for this
argument can be obtained from the identically named
output argument.

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Output Argument
The result code of a request execution. See Table 35
below for details:

ResultCode

Table 35: The Result Codes for a Request Execution (Execute)


Code

Result

The request is found and processed either successfully or with


an unrecoverable error, which means that it is possible to try to
execute the next request. If the request executed successfully,
then the corresponding record is removed from the queue and
the corresponding file (with an XML-based request content) is
removed from the file system. If the request is executed with an
unrecoverable error, then the corresponding record is marked as
erroneous and it is kept in the queue for further analyzing and
manual removal.

No request is found in the queue.

The request is found, but executed with a non-critical


(recoverable) errorfor example, a server outage, which means
that it is possible to retry this request again. The corresponding
record is not removed from the queue and the next method call
will find this record again.

A critical error occursfor example, an incorrect configuration


is found or an unexpected exception occurred, which means
that there is no reason to run the method again if the cause for
the error is not corrected.

The signal to exit from the workflow process. At this time, the
current implementation does not generate this code.

ResultDescription

A more detailed description of the results, which can


be obtained from the Campaign Synchronization
Server or generated by the implementation of the
method itself.

CampaignId

The ID of the Siebel campaign of the recently


executed request. Used for choosing the next request
for some types of request processing.

ExecChainId

The ID of a chain of the recently executed request.


Used for choosing the next request in a chain (requests
can be chained in the queue when they do perform a
common business functionfor example, requests for
a wave/calling list synchronization).

Gplus Adapter for Siebel CRMDevelopers Guide

131

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

LastConnSubsystem

The type (primary or backup) of the last successfully


used connection subsystem (the Siebel profile
configuration). Possible values are Primary and
Backup. Used for choosing a connection subsystem to
send a request first.

NoDataTimeout

The value of the timeout, specified in seconds, that is


configured (in the Camp WF NoData Timeout field of the
Genesys CaS Config Object business component) for a
particular CampSynch Configuration object. It is used
by the out-of-the-box workflow process to make a
pause when this method returns a result code value of
1.

RetryTimeout

The value of the timeout, specified in seconds, that is


configured (in the Camp WF Retry Timeout field of the
Genesys CaS Config Object business component) for a
particular CampSynch Configuration object. It is used
by the out-of-the-box workflow process to make a
pause when this method returns a result code value of
2.

Exceptions
This method does not raise an exception.

The Genesys CampSynch Call Result Business Service


The Genesys CampSynch Call Result business service provides methods that
generate requests for the data (call results) synchronization from the Genesys
side to the Siebel side. These requests are part of the Siebel-side API for
communication with the Campaign Synchronization Server.
Each of these methods generates an XML-based request, directly sends it to
the appropriate Campaign Synchronization Server and then updates the Siebel
Campaign Contacts with the received call results and the number of attempted
calls.
The methods for the Genesys CampSynch Campaign business service can only be
called for the Siebel campaigns that are properly configured for the
synchronization process and that are enabled for the synchronization process.

The Method Descriptions


The entries in this section describe the following methods of the
Genesys CampSynch Call Result business service:
The ImportCallResultsDelta Method, page 133
The ImportWaveCallResults Method, page 135
The ImportContactCallResults Method, page 136

132

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The ImportCallResultsDelta Method


This method generates and sends a request for getting the call results delta,
which is the call results for the contacts that were processed by the Genesys
outbound solution since sending the previous request. Also, it applies the
received call results and the number of call attempt to the corresponding Siebel
campaign contacts. It is targeted to a particular Campaign Synchronization
Server (through the CampSynch Configuration object) and requests the
information for the campaigns that are linked to it. This method uses the
configured call result synchronization settings, including the batch mode flag.
This method is designed to be run from the out-of-the-box workflow process,
therefore its input and output arguments are correlated with it.
Input Arguments
CasConfObjId

Mandatory: The ID of the CampSynch Configuration


object that determines a synchronization target. This
value must correspond to the Id field of the Genesys
CaS Config Object business component.

LastConnSubsystem

Optional: The type (primary or backup) of the last


successfully used connection subsystem (the Siebel
profile configuration). Possible values are Primary and
Backup. Used for choosing a connection subsystem to
send a request first. If not provided, the primary
connection subsystem is used first. The value for this
argument can be obtained from the identically named
output argument.

Output Argument
The result code of a request execution. See Table 36
below for details:

ResultCode

Table 36: The Result Codes for a Request Execution


(ImportCallResultsDelta)
Code

Result

The request is processed either successfully or with an


unrecoverable error, which means that the next time a request
should be sent is after the QueryTimeout delay.

The request is processed with a non-critical (recoverable)


errorfor example, a server outage, which means that the next
request should be sent after the RetryTimeout delay.

Gplus Adapter for Siebel CRMDevelopers Guide

133

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Table 36: The Result Codes for a Request Execution


(ImportCallResultsDelta) (Continued)
Code

Result

A critical error occursfor example, an incorrect configuration


is found or an unexpected exception occurred, which means
that there is no reason to run the method if the cause of the error
is not corrected.

The signal to exit from the workflow process. At this time, the
current implementation does not generate this code.

ResultDescription

A more detailed description of the results, which can


be obtained from the Campaign Synchronization
Server or generated by the implementation of the
method itself.

LastConnSubsystem

The type (primary or backup) of the last successfully


used connection subsystem (the Siebel profile
configuration). Possible values are Primary and
Backup. Used for choosing a connection subsystem to
send a request first.

QueryTimeout

The value of the timeout, specified in seconds, that is


configured (in the CR WF Query Timeout field of the
Genesys CaS Config Object business component) for a
particular CampSynch Configuration object. It is used
by the out-of-the-box workflow process to make a
pause when this method returns a result code value of
0 (zero).

RetryTimeout

The value of the timeout, specified in seconds, that is


configured (in the CR WF Retry Timeout field of the
Genesys CaS Config Object business component) for a
particular CampSynch Configuration object. It is used
by the out-of-the-box workflow process to make a
pause when this method returns a result code value of
1.

Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Query Call Results Delta

134

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The ImportLoadCallResults Method


This method generates and sends request for getting the call results for an
entire Siebel campaign load. Also, it applies the received call results and the
number of call attempts to the corresponding campaign contacts.
Within the out-of-the-box solution, this method is called by the corresponding
button on the GUI.
Note: The calling of this method may produce a large amount of data that is

received in response to the request and is applied to the Siebel


campaign contacts. Therefore, the requests execution may take a
while.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Query Call Results by Campaign

The ImportWaveCallResults Method


This method generates and sends request for getting the call results for an
entire Siebel campaign load wave. Also, it applies the received call results and
the number of call attempts to the corresponding campaign contacts.
Input Arguments
CampaignId

Gplus Adapter for Siebel CRMDevelopers Guide

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

135

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Query Call Results by Calling List

The ImportContactCallResults Method


This method generates and sends a request for getting the call results for a
single particular Siebel campaign contact. Also, it applies the received call
results and the number of call attempts to the corresponding campaign
contacts.
Within the out-of-the-box solution, this method is not called, but can be
applied during the customization, if required.
Input Arguments
CampContId

Mandatory: The ID of the Siebel contact that belongs


to a particular wave. The value must correspond to the
Id field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Merge Contact Record

136

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The Genesys CampSynch Event Handler Business Service


The Genesys CampSynch Event Handler business service implements reactions
on different events related to the Siebel campaign life-cyclefor example,
Campaign Loaded, Campaign Launched, Contact Changed.
These methods implement algorithms that determine and generate (using the
Genesys CampSynch Campaign business service) requests to Campaign
Synchronization Server depending on the following:

The event that happened

The Siebel Campaign/Wave state

The Campaign synchronization mode (configured using the GUI for each
campaign)

All of the methods of the Genesys CampSynch Event Handler business service
can only be called for the Siebel campaigns that are properly configured for the
synchronization process and that are enabled for the synchronization process.
This method does not have any effect on any of the other campaigns.

The Method Descriptions


The entries in this section describe the following methods of the
Genesys CampSynch Event Handler business service:
The CampLoadWave WriteRecord Method, page 137
The Contact WriteRecord Method, page 138
The Contact PreDeleteRecord Method, page 139
The OnCampaignAssociated Method, page 139
The OnCampaignDisassociated Method, page 140
The OnCampaignLoaded Method, page 140
The OnCampaignPurged Method, page 141
The OnWaveLaunched Method, page 141
The OnWaveSuspended Method, page 142
The OnWaveUpdated Method, page 142
The OnContactUpdated Method, page 143
The OnContactPreDeleted Method, page 143

The CampLoadWave WriteRecord Method


This method implements a reaction to the event of writing a Campaign Load
Wave business component record. It determines the following:

Whether the campaign is loaded or purged and calls an appropriate


following methodThe OnCampaignLoaded Method, The OnCampaignPurged
Method, The OnWaveLaunched Method, The OnWaveSuspended Method, or The
OnWaveUpdated Method.

Gplus Adapter for Siebel CRMDevelopers Guide

137

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Whether the wave is launched, suspended or updated and calls an


appropriate following methodThe OnCampaignLoaded Method, The
OnCampaignPurged Method, The OnWaveLaunched Method, The
OnWaveSuspended Method, or The OnWaveUpdated Method.

This method is designed to be called by the out-of-the-box Siebel runtime


event handlers. It uses the Profile attributes to store the input and output data.
These Profile attributes are set by the runtime event handlers when the
appropriate business component's fields are changed.
Input Arguments
None.
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The Contact WriteRecord Method


This method implements a reaction to the event of writing Contact-containing
business componentsfor example, Contact, Employee, and others. It
determines whether the contact is updated and calls the The OnContactUpdated
Method when required.
This method is designed to be called by the out-of-the-box Siebel runtime
event handlers. It uses the Profile attributes to store the input and output data.
These Profile attributes are set by the runtime event handlers when the
appropriate business component's fields are changed.
Input Arguments
None.
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

138

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The Contact PreDeleteRecord Method


This method implements a reaction to the event of pre-deleting a record from
the Contact-containing business componentsfor example, Contact,
Employee, and others. It calls the The OnContactPreDeleted Method. It is
important that this method is called before a contact record is finally deleted
from the business component.
This method is designed to be called by the out-of-the-box Siebel runtime
event handlers. It uses the Profile attributes to store the input and output data.
These Profile attributes are set by the runtime event handlers when the
appropriate business component's fields are changed.
Input Arguments
None.
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnCampaignAssociated Method


This method generates synchronization requests that must be performed when
the campaign is enabled for synchronization.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

Gplus Adapter for Siebel CRMDevelopers Guide

139

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The OnCampaignDisassociated Method


This method generates synchronization requests that must be performed when
the campaign is disabled for synchronization.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnCampaignLoaded Method


This method generates synchronization requests that must be performed when
the campaign load is loaded.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

140

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The OnCampaignPurged Method


This method generates synchronization requests that must be performed when
the campaign load is purged.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnWaveLaunched Method


This method generates synchronization requests that must be performed when
the campaign load wave is launched.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

PrevState

Optional: The previous wave status. It is important to


know whether the wave was suspended before
launching or not. The value must correspond to the
language-independent code (LIC) for the Status field
of the Campaign Load Wave business component or an
empty strings. By default, the value is an empty string.

Gplus Adapter for Siebel CRMDevelopers Guide

141

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnWaveSuspended Method


This method generates synchronization requests that must be performed when
the campaign load wave is suspended.
Input Arguments
CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnWaveUpdated Method


This method generates synchronization requests that must be performed when
the campaign load wave is updated.
Input Arguments

142

CampaignId

Mandatory: The ID of the Siebel campaign. This value


must correspond, for example, to the Campaign Id field
of the Campaign List Contact business component.

LoadNumber

Mandatory: The load number of a Siebel campaign.


This value must correspond to the Load Number field of
the Campaign List Contact business component.

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

WaveNumber

Mandatory: The wave number of a Siebel campaign


load. This value must correspond to the Wave Number
field of the Campaign List Contact business
component.

WaveStatus

Mandatory: The wave status of a Siebel campaign


load. This value must correspond to the
language-independent code (LIC) for the Status field
of the Campaign Load Wave business component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnContactUpdated Method


This method generates synchronization requests that must be performed when
the Siebel contact or prospect is updated. The requests are generated for each
campaign and wave (calling list) that contains the contact information.
Input Arguments
ContactId

Mandatory: The ID of the Siebel contact or prospect.


This value must correspond to the Calculated Contact
Id field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The OnContactPreDeleted Method


This method generates synchronization requests that must be performed when
the Siebel contact or prospect is deleted. The requests are generated for each
campaign and wave (calling list) that contains the contact information.
Note: This method must be called before the contact or prospect is finally

deleted.

Gplus Adapter for Siebel CRMDevelopers Guide

143

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Input Arguments
ContactId

Mandatory: The ID of the Siebel contact or prospect.


This value must correspond to the Calculated Contact
Id field of the Campaign List Contact business
component.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The Genesys CampSynch Utils Business Service


The Genesys CampSynch Utils business service implements various over-all
helpful utilities that can be used in the Campaign Synchronization solution.

The Method Descriptions


The entries in this section describe the following methods of the
Genesys CampSynch Utils business service:
The BuildGenesysCampaignName Method, page 144
The BuildGenesysCallingListName Method, page 145
The IsCfgObjWriteAllowed Method, page 145
The IsCfgObjDeletionAllowed Method, page 146
The IsWFProcessRunning Method, page 146
The RunWFProcess Method, page 147
The StopWFProcess Method, page 147
The CalcSiebelSideWaveSynchStatus Method, page 148

The BuildGenesysCampaignName Method


This method builds the name of the Genesys campaign, based on the Siebel
name and the load number.
Input Arguments
SiebelCampaignName

Mandatory: The name of a Siebel campaign.

LoadNumber

Mandatory: The load number of a Siebel campaign.

Output Argument
GenesysCampaignName

144

Mandatory: The name of a Genesys campaign.

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Exceptions
This method raises exceptions if there are errors.

The BuildGenesysCallingListName Method


This method builds the name of the Genesys Calling List, based on the Siebel
campaign name, the load number, and the wave number.
Input Arguments
SiebelCampaignName

Mandatory: The name of a Siebel campaign.

LoadNumber

Mandatory: The load number of a Siebel campaign.

WaveNumber

Mandatory: The wave number of a Siebel campaign.

Output Argument
GenesysCallingList
Name

Mandatory: The name of a Genesys Calling List.

Exceptions
This method raises exceptions if there are errors.

The IsCfgObjWriteAllowed Method


This method checks if a CampSynch Configuration object has any valid values
to be saved or not.
Input Arguments
CasConfObjId

Mandatory: The ID of a CampSynch Configuration


object.

ProfilePrimary

Mandatory: The new name of the primary connection


subsystem (the Siebel profile).

ProfileBackup

Mandatory: The new name of the backup connection


subsystem (the Siebel profile).

Output Argument
ResultMessage

An empty string if record deletion is allowed, or a


reason why record deletion is not allowed.

Exceptions
This method raises exceptions if there are errors.

Gplus Adapter for Siebel CRMDevelopers Guide

145

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The IsCfgObjDeletionAllowed Method


This method checks if a CampSynch Configuration object is allowed to be
deleted or not.
Input Arguments
CasConfObjId

Mandatory: The ID of a CampSynch Configuration


object.

CampWFStatus

Mandatory: The Campaign Workflow running status


(either Running or Shutdown).

CRWFStatus

Mandatory: The CR Workflow running status (either


Running or Shutdown).

Output Argument
ResultMessage

An empty string if record deletion is allowed, or a


reason why record deletion is not allowed.

Exceptions
This method raises exceptions if there are errors.

The IsWFProcessRunning Method


This method checks if a specified workflow process is running for a specified
CampSynch Configuration object or not.
Input Arguments
CasConfObjId

Mandatory: The ID of a CampSynch Configuration


object.

WFName

Mandatory: The workflow name. The out-of-the-box


solution names are Genesys CaS CR WF and Genesys
CaS campaign WF.

Output Argument
IsRunning

Y or N.

Exceptions
This method raises exceptions if there are errors.

146

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The RunWFProcess Method


This method asynchronously runs a specified workflow process for a specified
CampSynch Configuration object.
Input Arguments
CasConfObjId

Mandatory: The ID of a CampSynch Configuration


object.

WFName

Mandatory: The workflow name. The out-of-the-box


solution names are Genesys CaS CR WF and Genesys
CaS campaign WF.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The StopWFProcess Method


This method stops a specified workflow process for a specified CampSynch
Configuration object or not.
Input Arguments
CasConfObjId

Mandatory: The ID of a CampSynch Configuration


object.

WFName

Mandatory: The workflow name. The out-of-the-box


solution names are Genesys CaS CR WF and Genesys
CaS campaign WF.

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

Gplus Adapter for Siebel CRMDevelopers Guide

147

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

The CalcSiebelSideWaveSynchStatus Method


This method calculates the Siebel-oriented status of a campaign wave
synchronization process. This status displays the synchronization status based
on the information that is present in the Siebel-side only. It is not aware of
what is happening on the Genesys-side.
The resulting status values correspond to the LOV records that have the
GENESYS_SBL_SYNCH_STATUS type.
Input Arguments
SiebelCampaignName

Mandatory: The name of the Siebel campaign.

LoadNumber

Mandatory: The load number of a Siebel campaign.

WaveNumber

Mandatory: The wave number of a Siebel campaign


load.

Output Argument
StatusLIC

The status value (language-independent code) for the


synchronization status.

Exceptions
This method raises exceptions if there are errors.

The Genesys CampSynch Tools Business Service


The Genesys CampSynch Tools business service provides methods that help to
deploy the Campaign Synchronization solution.

The Method Descriptions


The entries in this section describe the following methods of the
Genesys CampSynch Tools business service:
The InstallRuntimeEvents Method, page 148
The UninstallRuntimeEvents Method, page 149
The ImportAll Method, page 149

The InstallRuntimeEvents Method


This method installs the Siebel runtime events handlers in the Siebel Server
and is designed to run using the Siebel Business Service Simulator.
Input Arguments
None.

148

Gplus Adapter 8.0

Chapter 2: Campaign Synchronization Component 8.0.1

The Siebel Campaign Synchronization API Representation

Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The UninstallRuntimeEvents Method


This method uninstalls the Siebel runtime events handlers in the Siebel Server
and is designed to run using the Siebel Business Service Simulator.
Input Arguments
None.
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.

The ImportAll Method


This method imports the required Siebel LOV records and the Responsibility
records to the Siebel Server. It is designed to run using the Siebel Business
Service Simulator with inputs that are stored in a special *.xml file. The
out-of-the-box solution provides the GplusCaS_LOV.xml file as an input for this
method.
Input Arguments
The input arguments have a complex structure, so use the provided *.xml file
that stores these arguments.
Output Argument
Use the report strings relevant to the imported records.
Exceptions
This method raises exceptions if there are errors.

Gplus Adapter for Siebel CRMDevelopers Guide

149

Chapter 2: Campaign Synchronization Component 8.0.1

150

The Siebel Campaign Synchronization API Representation

Gplus Adapter 8.0

Chapter

Media Routing Component


Customization
The Gplus Media Routing for Siebel CRM Component (Media Routing
Component) integrates the Siebel software and the Genesys softwares
handling of open media interactions.
This chapter describes the Media Routing Components interfaces and
customizations in the following sections:
Overview, page 152
Using the GplusMediaRouteIXN Business Service, page 153
Using the GplusMediaRoute Business Service, page 164
The Applet Customization, page 174
Routing Siebel Work Items, page 175

Note: The Gplus Media Routing for Siebel CRM and Gplus iWD Routing

for Siebel CRM components contain common parts of the code. It is


not recommended to use both of these components simultaneously.

Gplus Adapter for Siebel CRMDevelopers Guide

151

Chapter 3: Media Routing Component Customization

Overview

Overview
The principal parts of the Media Routing Component 8.0 are shown in
Figure 3.

Figure 3: The Principal Parts of the Media Routing Component

In general, the Media Routing Component consists of two functions:

The support of server functionality, which provides the ability to route


interactions and to stop routing by request from the Siebel side.

The support of agent functionality, which provides the ability to handle an


interaction during an agent session.

The server functionality is provided by the Gplus Open Media Server (a


standalone Genesys application) that submits requests to the Interaction Server
through the media server protocol and the GplusMediaRoutingIXN Siebel
business service that enables the formation and the distribution of requests to
the Gplus Open Media Server.
The agent functionality is provided by the GplusMediaRoute Siebel business
service, which allows the pulling of an interaction, marking it as complete, and
updating the Siebel object that corresponds to the interaction.
The Media Routing Component supports a link between Siebel activities and
Genesys interactions by means of a one-to-one relationship between the
InteractionId and the ThirdPartyId, where InteractionId represents a
Genesys interaction ID, and ThirdPartyId represents a Siebel activity record
ID (or another objectfor example, ServiceRequest). A special field in the
ThirdPartyId that represents the Siebel object is used to store a Genesys

152

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

InteractionIdfor example, the Call Id field is used for Siebel eMail) and
the Genesys interaction should contain the ThirdPartyId in the attached data.

The relationship between the Siebel activities and the Genesys interactions is
essential for the Pull/Stop functionality to work. However, if you do not use
this functionality, you may choose not to support this association in your
customization (for exampleyou may choose not to store a Genesys
Interaction Id in a Siebel eMail activity record). Regardless of whether you
use the Pull/Stop functionality or note, each Genesys interaction must have a
ThirdPartyId. Please see the description of the The Route Method on
page 154. For your individual customization, you may use any unique Siebel
record field value as the ThirdPartyId.
For examplewhen a GplusMediaRouting-ProcessMessage workflow sends a
routing request, it writes an InteractionId in the Call Id field of the Action
Business Component and changes the status of the Siebel activity. If it is a
successful routing request, the activity status will be Queued; otherwise it will
be NotQueued.
For your customization, you may use any field instead of the Call Id field. If a
Siebel Business Component does not have a spare or reusable field to be used
for a Genesys Interaction Id, you must add a new field into the business
component using the custom extension columns or an extension table. For
more information, please refer to the Siebel Tools Reference from Siebel.

Using the GplusMediaRouteIXN Business


Service
The GplusMediaRouteIXN business service is a business service which provides
server functionality and allows submitting requests for routing an interaction
and stopping its processing. The GplusMediaRouteIXN business service contains
the following methods:

The Route Method

The StopWorkItem Method

Note: To enable a debug log, you may add a DebugLogFile input parameter

and set it to a debug log file name.

Gplus Adapter for Siebel CRMDevelopers Guide

153

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

The following tables describe the available methods and their arguments:

Table 37, The Route Method Input Parameters, on page 155

Table 38, The StopWorkItem Method Input Parameters, on page 160

The following symbols represent the different methods and arguments found in
Table 37 and Table 38.:
M:

Represents mandatory arguments.

M*:

Represents parameters that must either be passed as an argument or have a default value set in the business service user
properties.

M**:

Represents parameters that are required to update the Siebel


record status.

O:

Represents the optional arguments.

The Route Method


The route method is used to send a routing request to the Genesys
environment. The route method gathers all of the necessary input parameters
and sends a routing request to a Gplus Open Media Server. If you would like to
add AttachedUserData values to a routing request, you should add the custom
input arguments. All input arguments, except the predefined arguments, are
attached to a routing request as a AttachedUserData value. The method returns
the Result, ErrorText, RouteResult, and RouteMessage parameters. Also, this
method can update the Siebel object record status, if required.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
A Result value of 1 indicates a successful operation; a Result value of 0
(zero) indicates a failure. The Result value was introduced, in addition to the
RouteResult value, since it is the standard Siebel output parameter that is used
in CTI communications.
The RouteMessage parameter contains the Genesys InteractionId.
The ErrorText parameter contains the error description, if there is any.
Note: If the route method is configured to update the Siebel object record,

the updated results (whether successful or not) do not affect the


overall results. The route method results depend on the direct routing
results only.
For a list of input parameters and their descriptions, see Table 37 on page 155.

154

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 37: The Route Method Input Parameters


Argument Name

Symbol Default User


Property Name

Description

ThirdPartyId

The RecordId for the routing


interaction.
There is no default value.

PrimaryGOMSConnectionSubsystem

PrimaryGOMS
Connection
Subsystem

The name of the Siebel


HTTPSubSys, created for a
primary Gplus Open Media
Server.
See section Creating a
Connection Subsystem in
Chapter 8 of the Gplus
Adapter 8.0 for Siebel CRM
Deployment Guide.

BackupGOMSConnectionSubsystem

ConnectionName

BackupGOMS
Connection
Subsystem

The name of the Siebel


HTTPSubSys, created for a
backup Gplus Open Media
Server.
The Connection name (the
Application object of the
Interaction Server) as
specified in the Connections
tab for the Gplus Open Media
Server.
If you use this method as a
communication profile
command, you may skip the
ConnectionName parameter, as
this method reads the
parameter value from
communication profile
parameters.
If you use this method in a
workflow, you must set the
parameter value.

RoutingMediaType

The media type of interaction.


Only the values configured in
Genesys Framework are
permissible.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

155

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 37: The Route Method Input Parameters (Continued)


Argument Name

Symbol Default User


Property Name

Description

InteractionType

The Interaction type.


The default value is Inbound.
Note: Do not change the
default value unless requested
by Genesys Tech Support.

InteractionSubtype

The Interaction subtype.


The default value is
InboundNew.

Note: Do not change the


default value unless requested
by Genesys Tech Support.
SubmitQueue

The name of the queue where


the interaction is submitted.
If you use this method as a
communication profile
command, you may skip the
MediaRoutingDefaultQueue

parameter, as this method


reads the parameter value
from the communication
profile parameters.
If you use this method in a
workflow, you must set the
parameter value.
There is no default value.
RefreshViewAfterUpdate

156

If this parameters value


equals Yes and the method is
called from the
Communications
Configuration command, the
active view is refreshed after
the routing request is sent to
show the resulting record
update.
There is no default value.

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 37: The Route Method Input Parameters (Continued)


Argument Name

Symbol Default User


Property Name

Description

ReceivedAt

The timestamp (date and


time) that is displayed when
an interaction is received.
The default value is a current
timestamp at the moment of
the method call.

BusObject

M**

The Siebel Business Object


name. If this Business Object
name is provided, an attempt
to update the record status
(for exampleActivity) is
made.
There is no default value.

BusComp

M**

The Siebel Business


Component name. If this
Business Component name is
provided, an attempt to update
the record status (for
exampleActivity) is made.
There is no default value.

RecIdField

M**

The name of the Business


Component field that contains
the Siebel RecordID.
The default value is Id.

StatusField

M**

The name of the Business


Component field that
contains status information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains substatus
information.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

157

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 37: The Route Method Input Parameters (Continued)


Argument Name

Symbol Default User


Property Name

Description

SuccessStatus

The value of the record's


status if the operation is
successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if the operation is
successful.
There is no default value.

FailedStatus

The value of the record's


status if the operation has
failed.
There is no default value.

FailedSubStatus

The value of the record's


substatus if the operation has
failed.
There is no default value.

UserField

The name of the Business


Component field that
contains a user name.
There is no default value.

UserName

The user name that is set for


the Siebel record if the
UserField argument
provided.
There is no default value.

158

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

The StopWorkItem Method


The StopWorkItem method is used to cancel a route request, stopping it from
being processed in the Genesys environment. This method may also update the
status of a Siebel record and assign it to the agent. Refer to Table 38 on
page 160 for details.
The StopWorkItem method gathers all the necessary input parameters and sends
a StopWorkItem request to a Gplus Open Media Server. This method returns the
Result, ErrorText, and RouteResult parameters.
A RouteResult value of 0 (zero) indicates a successful operation; any value
that is not 0 (zero) represents an error code.
A Result value of 1 indicates a successful operation; a Result value of 0 (zero)
indicates failure. This value was introduced in addition to the RouteResult
value since it is a standard Siebel output parameter that is used in CTI
communications.
The ErrorText parameter contains an error description, if there are any present.
Note:

If the StopWorkItem method is configured to update the Siebel object


record, the result of the update (whether successful or not) does not
affect the overall result. The StopWorkItem method results depend on
the direct request results only.

For a list of input parameters and their descriptions, see Table 38 on page 160.

Gplus Adapter for Siebel CRMDevelopers Guide

159

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 38: The StopWorkItem Method Input Parameters


Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The RecordId for the search
interaction to be stopped.
There is no default value.
Either the ThirdPartyId or
the InteractionId
parameters must be
provided.

InteractionId

The InteractionId of the


interaction to be stopped.

Either the ThirdPartyId or


the InteractionId
parameters must be
provided.
If there is no value
provided, the value is found
by searching the Business
Component using the
ThirdpartyId value.
PrimaryGOMSConnection
Subsystem

M*

PrimaryGOMS
Connection
Subsystem

The name of the Siebel


HTTPSubSys, created for a
primary Gplus Open Media
Server.
See section Creating a
Connection Subsystem in
Chapter 8 of the Gplus
Adapter 8.0 for Siebel CRM
Deployment Guide.

BackupGOMSConnection
Subsystem

160

BackupGOMS
Connection
Subsystem

The name of the Siebel


HTTPSubSys, created for a
backup Gplus Open Media
Server.

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 38: The StopWorkItem Method Input Parameters (Continued)


Argument Name

Symbol

ConnectionName

Default User
Property Name

Description
The Connection name (the
Application object of the
Interaction Server) as
specified in the
Connections tab for the
Gplus Open Media Server.
If you use this method as a
communication profile
command, you may skip the
ConnectionName parameter,
as this method reads the
parameter value from the
communication profile
parameters.
If you use this method in a
workflow, you must set the
parameter value.

Reason

The Reason value to be


passed to the Interaction
Server's StopWorkItem
method.
There is no default value.

Description

The Description value to


be passed to the Interaction
Server's StopWorkItem
method.
There is no default value.

RecIdField

M**

The name of a Business


Component field that
contains the Siebel
RecordID.
The default value is Id.

Gplus Adapter for Siebel CRMDevelopers Guide

161

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 38: The StopWorkItem Method Input Parameters (Continued)


Argument Name

Symbol

BusObject

Default User
Property Name

Description
The Siebel Business Object
name.
If this Business Object
name is provided, an
attempt to update the record
status (for example
Activity) is made.
There is no default value.

BusComp

Action

The Siebel Business


Component name.
If this Business Component
name is provided, an
attempt to update the record
status (for example
Activity) is made.
There is no default value.

InteractionField

The name of a Business


Component field that
contains the Genesys
InteractionId.
There is no default value.

StatusField

M**

The name of a Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of a Business


Component field that
contains substatus
information.
There is no default value.

SuccessStatus

The value of a record's


status in the case of a
successful operation.
There is no default value.

162

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRouteIXN Business Service

Table 38: The StopWorkItem Method Input Parameters (Continued)


Argument Name

Symbol

SuccessSubStatus

Default User
Property Name

Description
The value of a record's
substatus in the case of a
successful operation.
There is no default value.

FailedStatus

The value of a record's


status in the case of a failed
operation.
There is no default value.

FailedSubStatus

The value of a record's


substatus in the case of a
failed operation.
There is no default value.

UserField

The name of a Business


Component field that
contains a user name.
There is no default value.

UserName

The user name that is set for


a Siebel record if a
UserField argument is
provided.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

163

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Using the GplusMediaRoute Business


Service
The GplusMediaRoute business service provides agent functionality, allows for
the pulling and marking of an interaction as completed, and updates the Siebel
record.
The GplusMediaRoute business service contains the following methods:

The GetTopWorkItem Method

The GetTopActiveItemInfo Method

The MarkWorkItemDone Method

The PullInteraction Method

The UpdateActivity Method

The following tables describe the available methods and their arguments:

Table 39, The MarkDone Methods Input Parameters, on page 166

Table 40, The PullInteraction Method Input Parameters, on page 169

Table 41, The UpdateActivity Method Input Parameters, on page 171

The following symbols, found in the tables listed above, represent the different
methods and arguments:
M:

Represents mandatory arguments.

M*:

Represents parameters that must either be passed as an argument or have a default value set in the business service user
properties.

M**:

Represents parameters that are required to update the Siebel


record status.

O:

Represents the optional arguments.

Note: To enable a debug log, you may add a DebugLogFile input parameter

and set it to a debug log file name.

164

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

The GetTopWorkItem Method


The GetTopWorkItem method is used to get the ThirdPartyId parameter of a top
active work item.
The single input optional parameter is MediaType. If the MediaType parameter is
provided, then the ThirdPartyId is returned only if top active work item's
media type is equal to its value.
The output parameter is ThirdPartyId. For the meaning of these parameters see
the Overview on page 152.

The GetTopActiveItemInfo Method


The GetTopActiveItemInfo method is used to get information about a top active
work item.
It does not have any input parameters.
The output parameters are DriverWorkTrackID (that corresponds to Interaction
Id), MediaType, and ThirdPartyId.

The MarkWorkItemDone Method


The MarkWorkItemDone method is used to mark a Siebel work item as done.
If the QueueName input parameter is set then it is used; otherwise, the
QueueParameterName parameter is used and the provided parameter is read from
the CTI Communications configuration.
If the QueueParameterName input parameter name is not set, then the default
value MediaRoutingDoneQueue is used. If there is no configuration parameter
found, then a special predefined queue __STOP__ is used.
The MarkWorkItemDone method sets a MarkDoneQueue output parameter and
invokes a MarkDoneMR command from the CTI Communications configuration.
Note:

The MarkDoneMR command uses the


{@SelectedWorkItem:DriverWorkTrackID} Siebel macros, so this
command is applied to a selected work item.

The output parameter values are Result and ErrorText.


A Result value of 1 indicates a successful operation; a Result value of 0
indicates a failed operation.
For a list of the input parameters and their descriptions, see Table 39 on
page 166.

Gplus Adapter for Siebel CRMDevelopers Guide

165

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Table 39: The MarkDone Methods Input Parameters


Argument Name

Symbol

QueueName

Default User Property


Name

Description
The name of the queue where
the interaction should be
placed.
The default value is
__STOP__. This value is used
if:
neither QueueName, nor
QueueParameterName is
provided
there is no CTI parameter
found
if it is empty.

QueueParameterName

The CTI Communications


parameter name that contains
the queue name where an
interaction should be placed.
This value is used if there is
no QueueName provided.
The default value is
MediaRoutingDoneQueue.

ThirdPartyId

M**

The RecordId for a search


item of an interaction that is
to be marked as done.
There is no default value.
Either the ThirdPartyId or
the InteractionId
parameters must be provided.

InteractionId

M**

The InteractionId
parameters must be provided.
If there is no value provided,
the value is found by
searching the business
component by using the
ThirdpartyId value.

166

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Table 39: The MarkDone Methods Input Parameters (Continued)


Argument Name

Symbol

BusObject

M**

Default User Property


Name

Description
A Siebel Business Object
name.
If this Business Object name
is provided, an attempt to
update the record status (for
exampleActivity) is made.
There is no default value.

BusComp

M**

A Siebel Business
Component name.
If this Business Component
name is provided, an attempt
to update the record status
(for exampleActivity) is
made.
There is no default value.

RecIdField

M**

The name of a Business


Component field that
contains the Siebel RecordID.
The default value is Id.

InteractionField

M**

The name of a Business


Component field that
contains the Genesys
InteractionId.
There is no default value.

StatusField

M**

The name of a Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of a Business


Component field that
contains the substatus
information.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

167

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Table 39: The MarkDone Methods Input Parameters (Continued)


Argument Name

Symbol

SuccessStatus

Default User Property


Name

Description
The value of a record's status
in a case of a successful
operation.
There is no default value.

SuccessSubStatus

The value of a record's


substatus in the case of a
successful operation.
There is no default value.

FailedStatus

The value of a record's status


in the case of a failed
operation.
There is no default value.

FailedSubStatus

The value of a record's


substatus in the case of a
failed operation.
There is no default value.

UserField

The name of a Business


Component field that
contains a user name.
There is no default value.

UserName

A user name that is set for a


Siebel record if the UserField
argument is provided.
There is no default value

168

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

The PullInteraction Method


The PullInteraction method is used to pull an interaction from a queue while
it is in the queue waiting for processing.
Note: The interaction can not be pulled, if the interaction is being processed

by another agent or by Genesys Universal Routing.


If the InteractionId input parameter is set, it is used; otherwise the
ThirdPartyId is used to find a proper InteractionId. The PullInteraction
method opens a BusComp from the BusObject, locates a record where the
RecIdField field equals ThirdPartyId, and uses an InteractionField field as
the InteractionId. This method sets the InteractionId output parameter and
invokes the OpenMediaPullInteractionById command from the
Communications configuration.
The output parameter values are Result and ErrorText.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates a failed operation.
For a list of input parameters and their descriptions, see Table 40.
Table 40: The PullInteraction Method Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The RecordID for the search
interaction to be pulled.
There is no default value.
Either the ThirdPartyId or
the InteractionId
parameters must be provided.

InteractionId

The InteractionId to be
used to pull the interaction.
Either the ThirdPartyId or
the InteractionId
parameters must be provided.
If there is no value provided,
the value is found by
searching the business
component by using the
ThirdpartyId value.

Gplus Adapter for Siebel CRMDevelopers Guide

169

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Table 40: The PullInteraction Method Input Parameters (Continued)


Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID to be used as the
Siebel RecordID.
See the RecIdField on
page 170.

BusObject

M
(if no

The Siebel Business Object


name.

InteractionID

If this Business Object name


is provided, an attempt to
update the record status (for
exampleActivity) is made.

is provided)

There is no default value.


BusComp

M
(if no

The Siebel Business


Component name.

InteractionID

If this Business Component


name is provided, an attempt
to update the record status
(for exampleActivity) is
made.

is provided)

There is no default value.


InteractionField

M
(if no
InteractionID

is provided)

The name of a Business


Component field that
contains the Genesys
InteractionId.
There is no default value.

RecIdField

170

M
(if no
InteractionID

The name of a Business


Component field that
contains the Siebel RecordID.

is provided)

The default value is Id.

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

The UpdateActivity Method


The UpdateActivity method is used to update Siebel records. Using this
method, it is possible to update the following values:

Interaction Id: the value that is that stored in a field reference by the
InteractionField parameter.

Status: the value that is stored in a field referenced by the StatusField

parameter.

Substatus: the value that is that stored in a field referenced by the


SubStatusField parameter.

User name: the value that is stored in a field referenced by the UserField

parameter.
The output parameter values are Result and ErrorText.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates a failed operation.
For a list of input parameters and their descriptions, see Table 41.
Table 41: The UpdateActivity Method Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Description
Property Name
The RecordID for the search
interaction to be pulled.
There is no default value.
Either the ThirdPartyId or
the InteractionId
parameters must be provided.

InteractionId

The InteractionID to be
used to pull the interaction.
Either the ThirdPartyId or
the InteractionId parameters
must be provided.
If there is no value provided,
the value is found by
searching the business
component by using the
ThirdpartyId value.

Gplus Adapter for Siebel CRMDevelopers Guide

171

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Table 41: The UpdateActivity Method Input Parameters (Continued)


Argument Name

Symbol

BusObject

Default User
Description
Property Name
The Siebel Business Object
name.
If this Business Object name
is provided, an attempt to
update the record status (for
exampleActivity) is made.
There is no default value.

BusComp

The Siebel Business


Component name.
If this Business Component
name is provided, an attempt
to update the record status
(for exampleActivity) is
made.
There is no default value.

RecIdField

The name of a Business


Component field that contains
the Siebel RecordID.
The default value is Id.

InteractionField

The name of a Business


Component field that contains
the Genesys InteractionId.
There is no default value.

StatusField

The name of a Business


Component field that contains
the status information.
There is no default value.

SubStatusField

The name of a Business


Component field that contains
the substatus information.
There is no default value.

SuccessStatus

The value of a record's status


in a case of a successful
operation.
There is no default value.

172

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Using the GplusMediaRoute Business Service

Table 41: The UpdateActivity Method Input Parameters (Continued)


Argument Name

Symbol

SuccessSubStatus

Default User
Description
Property Name
The value of a record's
substatus in the case of a
successful operation.
There is no default value.

FailedStatus

The value of a record's status


in the case of a failed
operation.
There is no default value.

FailedSubStatus

The value of a record's


substatus in the case of a
failed operation.
There is no default value.

UserField

The name of a Business


Component field that contains
a user name.
There is no default value.

UserName

The user name that is set for


the Siebel record if the
UserField argument is
provided.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

173

Chapter 3: Media Routing Component Customization

The Applet Customization

The Applet Customization


The Media Routing Component customizes the Comm Outbound Item Form
applet by adding some script code in the function WebApplet_InvokeMethod
(MethodName) server scripts. If MethodName equals EmailSend or EmailCancel, the
script calls a MarkDoneMR command from the Communications configuration to
mark an interaction as done and removes it from the list of active work items.
If you use the Media Routing Component for routing an interaction that is
different from Siebel eMail, you should add similar customization to the
appropriate applet. Or, you may add a button on the toolbar or a menu item in
the Communications menu to mark an active interaction as done.

Invoking a MarkDoneMR Command


You may invoke a MarkDoneMR command from the Communications
configuration as follows:
Example 1

var outQueue = "Mark_Done_Queue_Name";


var ctiSvc = TheApplication().GetService("Communications Client");
var inp = TheApplication().NewPropertySet();
var outp = TheApplication().NewPropertySet();
inp.SetProperty("MarkDoneQueue", outQueue);
ctiSvc.InvokeMethod("MarkDoneMR ", inp,outp);

Or, you may invoke a MarkWorkItemDone method of the GplusMediaRoute


business service:
Example 2

var outQueue = "Mark_Done_Queue_Name";


var ctiSvc = TheApplication().GetService("GplusMediaRoute ");
var inp = TheApplication().NewPropertySet();
var outp = TheApplication().NewPropertySet();
inp.SetProperty("QueueName", outQueue);
ctiSvc.InvokeMethod("MarkWorkItemDone ", inp,outp);

174

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Routing Siebel Work Items

Routing Siebel Work Items


The Media Routing Component for Siebel can be used for routing any type of
Siebel work items, both in real-time and in background (non real-time) modes.
The Media Routing Component provides the basic functionality for Siebel
work item routing, but customization is required to provide a graphical user
interface (GUI). See the Gplus Adapter 8.0 for Siebel CRM Deployment Guide
for general information about configuring the Media Routing Component.
The Group buttons on the Communications toolbar work for all interaction
typesfor example, Logon/Logout, Accept, and Ready/NotReady. However, you
should create Ready and NotReady commands for custom media types and then
add them into the proper command groupsfor example, the ReadyGroup
command group and the NotReadyGroup command group.

Creating Commands for Custom Media Types


Example 3 is a command sample.
Note: A media type is set with the prefix @ in both the DeviceCommand and the
FilterSpec parameters.
Example 3

[Command:ReadyForSiebelSRGroup]
FilterSpec = "[$GetCommandStatus(@ServiceRequest@OpenMediaReady)] =
'Enabled'"
Hidden = "FALSE"
DeviceCommand = "@ServiceRequest@OpenMediaReady"
Description = "Set ready for SiebelSR media type"
Profile = " Gplus Universal Profile "
[Command:NotReadyForSiebelSR]
FilterSpec = "[$GetCommandStatus(@ServiceRequest@OpenMediaNotReady)] =
'Enabled'"
Hidden = "FALSE"
DeviceCommand = "@ServiceRequest@OpenMediaNotReady"
Description = "Set SiebelSR media type"
Profile = " Gplus Universal Profile "

Gplus Adapter for Siebel CRMDevelopers Guide

175

Chapter 3: Media Routing Component Customization

Routing Siebel Work Items

Using the Route Method to Send a Routing Request


To send a routing request, you must use the route method of the
GplusMediaRouteIXN business service. Example 4 is a sample route command to
route a service request. To use it, set the SubmitQueue parameter. If you send a
routing request in a workflow, you must also set the ConnectionName parameter
value. See The Route Method on page 154 for more information.
Example 4

[Command:SendRouteSR]
Description

= "Route Service Request"

Title

= "Route Service Request"

ServiceMethod = "GplusMediaRouteIXN.route"
Comments

= "Send route request to route Siebel ServiceRequest"

Hidden

= "False"

AllViews

= "False"

View

= "Personal Service Request List View"

View

= "All Service Request List View"

View

= "Service Request Detail View"

Profile

= "Gplus Universal Profile"

CmdData

= "SendRouteCmdSR"

MenuPosition

= "30.1"

[CmdData:SendRouteCmdSR]
RequiredField.SR Number

= "?*"

ServiceParam.Subject

= "{Abstract}"

ServiceParam.PrimaryGOMSConnectionSubsystem = "
GplusOpenMediaServerPrimary "

176

ServiceParam.BackupGOMSConnectionSubsystem
GplusOpenMediaServerBackup "

= "

ServiceParam.BusComp

= "Service Request"

ServiceParam.BusObject

= "Service Request"

ServiceParam.InteractionField

= "Integration Id"

ServiceParam.RecIdField

= "SR Number"

ServiceParam.RoutingMediaType

= "ServiceRequest"

ServiceParam.SR_Type

= "{SR Type}"

ServiceParam.SubmitQueue

= "Siebel Inbound"

ServiceParam.ThirdPartyId

= "{SR Number}"

ServiceParam.StatusField

= "Status"

ServiceParam.SubStatusField

= "Sub-Status"

ServiceParam.RefreshViewAfterUpdate

= "Yes"

Comments

= ""

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Routing Siebel Work Items

The ServiceParam.ThirdPartyId parameter should be set to the ID field for a


Siebel work item record; the parameter should have the same fields as a proper
event handler. In Example 4, the SR Number field value is used as the
ThirdPartyId parameter.
Note: The InteractionField parameter is set in Example 4 so that it is

possible to use the Pull/Stop functionality. As the SuccessStatus


parameter is absent, this method does not update the record status. If
you want to do a record status update, you may add the SuccessStatus
and FailedStatus parameters. For more information, see The Route
Method on page 154.
In Example 4, the ServiceParam.Subject is an optional parameter, and it is
added as an AttachedUserData value. However, this value is used in a work
item description text message. See the itx_scdrv.xml file in the Gplus
Communication Server folder. For more information, see Using the
GplusMediaRouteIXN Business Service on page 153.

Creating an Event Handler


Procedure:
Creating an event handler
Purpose: To create an event handler for each custom media type to open a
Siebel view for the routed work item.
Start of procedure
1. To accept a routed work item, the agent must click the Accept group button
or the Accept Multimedia Interaction sub-button.
2. Create an event handler for the OpenMediaAccepted event for each custom
media type to open a Siebel view for the routed work item.
3. Set the QuerySpec parameter to the value:
FieldName='{ThirdPartyId}

where FieldName is the ID field for a Siebel work item.


4. Set the SingleView parameter to a proper Siebel view name. See Example 5
and Example 6:
Example 5

[EventHandler:OpenMediaSelectedSR]
Filter.MediaType

= "ServiceRequest"

Profile

= "Gplus Universal Profile"

Comments

= "EventHandler samples
routing"

Gplus Adapter for Siebel CRMDevelopers Guide

for Siebel work items

177

Chapter 3: Media Routing Component Customization

Routing Siebel Work Items

Order

= "50"

Response

= "OpenSiebelViewSR"

DeviceEvent

= "OpenMediaSelected"

[EventResponse:OpenSiebelViewSR]
QueryBusComp

= "Service Request"

QueryBusObj

= "Service Request"

QuerySpec

= "SR Number='{ThirdPartyId}'"

SingleView

= "Service Request Detail View"

Comments

= "EventResponse samples for Siebel work items


routing"

If you want to update a record status and/or assign it to the agent when an
agent accepts the interaction, you should create an event handler as shown in
Example 6:
Example 6

[EventHandler:OpenMediaAcceptedSR]
Filter.ThirdPartyId = "?*"
Filter.MediaType

= "ServiceRequest"

DeviceEvent

= "OpenMediaAccepted"

Profile

= "Gplus Universal Profile"

Response

= "EventResponseAcceptSR"

Order

= "50"

[EventResponse:EventResponseAcceptSR]
QueryBusComp = "Service Request"
QueryBusObj

= "Service Request"

Log

= "EventLogAcceptSR"

[EventLog:EventLogAcceptSR]
BusComp

= "Service Request"

BusObj

= "Service Request"

LogField.Owner

= "{@UserName}"

LogField.Status

= "CHANGE_ME"

LogField.Sub-Status

= "CHANGE_ME"

QuerySpec

= "SR Number='{ThirdPartyId}'"

End of procedure
Next Steps

There are no further steps.

You have to provide a command to mark a work item as done. For this you
may configure the provided MarkWorkItemDone command to support your

178

Gplus Adapter 8.0

Chapter 3: Media Routing Component Customization

Routing Siebel Work Items

custom types, such as adding the media types into the FilterMediaType
parameter value, which contains a list of media types separated by commas.
As an alternative, you may customize a button on a work item view or add a
custom button on the communication toolbar to invoke a MarkDone command.
Refer to the section The Applet Customization on page 174.
The provided out-of-the-box sample shows how to route Siebel Service
Requests in real-time mode and how to route Service Orders in background
mode. It uses the ServiceRequest media type for Siebel Service Requests and
the ServiceOrder media type for Service Orders.

Procedure:
Using the provided sample to route Siebel service
request
Purpose: To use the provided sample to route Siebel Service Requests in
real-time mode and how to route Service Orders in background mode.
Start of procedure
1. Remove the comment marks in the GenComm_universal.def (appropriate
places have the following comment: "Use this command in couple with
Gplus iWD Routing for Siebel CRM") file before importing a configuration
and performing the above-mentioned actions.
2. Create a custom media type in the Genesys environment and then add in
the Channel String parameter of the Gplus Universal Profile profile
driver.
3. Set the proper values for the command and events used.
End of procedure
Next Steps

There are no further steps.

For more information about the Media Routing Component deployment and
configuration, please refer to Chapter 8 Deploying the Media Routing
Component in the Gplus Adapter 8.0 for Siebel CRM Deployment Guide.

Gplus Adapter for Siebel CRMDevelopers Guide

179

Chapter 3: Media Routing Component Customization

180

Routing Siebel Work Items

Gplus Adapter 8.0

Chapter

iWD Routing Component


Customization
The Gplus iWD Routing for Siebel CRM Component (iWD Routing
Component) integrates the Siebel and Genesys softwares handling of
interactions.
Note: The Gplus iWD Routing for Siebel CRM and Gplus Media Routing

for Siebel CRM components contain common parts of code. It is not


recommended to use both these components simultaneously.
This chapter describes the iWD Routing Components interfaces and
customizations in the following sections:
Overview, page 182
Using the GplusMediaRouteiWD Business Service, page 183
Using the GplusMediaRoute Business Service, page 213
The Applet Customization, page 213
Using the iWD Routing Component for Routing Siebel Work Items,
page 213

Note: The Gplus Media Routing for Siebel CRM and Gplus iWD Routing

for Siebel CRM components contain common parts of the code. It is


not recommended to use both of these components simultaneously.

Gplus Adapter for Siebel CRMDevelopers Guide

181

Chapter 4: iWD Routing Component Customization

Overview

Overview
The principal parts of the iWD Routing Component 8.0 are shown in Figure 4

Figure 4: Principal Parts of the iWD Routing Component

In general, the iWD Routing Component consists of two functions:

Support of server functionality. This functionality provides the ability to


submit requests to the Genesys iWD solution to control the interaction
routing process from the Siebel side.

Support of agent functionality. This functionality provides the ability to


handle an interaction during an agent session.

Refer to the Gplus Adapter 8.0 for Siebel CRM Deployment Guide for details.
The server functionality is provided by the GplusMediaRoutingiWD Siebel
business service, which allows the formation and the distribution of requests to
Genesys iWD. Additionally, there are several automatically generated objects
used in tandem with the GplusMediaRoutingiWD business service. They
represent the outbound Web service that communicates with iWD Web Service
Capture Point, and they do not require any customization. Refer to the Gplus
Adapter 8.0 for Siebel CRM Deployment Guide for details.
The agent functionality is provided by the GplusMediaRuote Siebel business
service, which allows pulling an interaction, marking it as done, and updating
the Siebel object that corresponds to the interaction.
The iWD Routing Component supports a link between Siebel activities and
Genesys interactions by means of a one-to-one relationship between the
InteractionId and the ThirdPartyId, where InteractionId represents a

182

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Genesys InteractionID, and ThirdPartyId represents a Siebel activity


RecordID (or another object, for exampleService Request). A special field in
the ThirdPartyId that represents the Siebel object is used to store a Genesys
InteractionId (for examplethe Call Id field is used for Siebel eMail) and
the Genesys interaction should contain the ThirdPartyId in the attached data.
Note: To keep semblance with Media Routing Component, the
ThirdPartyId name is used as a parameter name, and it is mapped to
the Capture Id iWD parameter.

The relationship between the Siebel activities and the Genesys interactions is
essential for the Pull/Stop functionality to work. However, if you do not use
this functionality, you may choose not to support this association in your
customization (for exampleyou may choose not to store a Genesys
InteractionId in a Siebel eMail activity record). Regardless of whether you
use the Pull/Stop functionality or not, each Genesys interaction must have a
ThirdPartyId. For your individual customization, you may use any unique
Siebel record field value as the ThirdPartyId.
For examplewhen a GplusMediaRouting-ProcessMessage workflow sends a
routing request, it writes an InteractionId in the Call Id field of the Action
Business Component and changes the status of the Siebel activity. If it is a
successful routing request, the activity status will be Queued; otherwise it will
be NotQueued.
For your customization, you may use any field instead of the Call Id field. If a
Siebel Business Component does not have a spare or reusable field to be used
for a Genesys Interaction Id, you must add a new field into the Business
Component using the custom extension columns or an extension table. For
more information, see the Siebel Tools Reference from Siebel.

Using the GplusMediaRouteiWD Business


Service
The GplusMediaRouteiWD business service provides server functionality and
enables requests to be submited that are supported by Genesys iWD to control
the interaction routing process.
The GplusMediaRouteiWD business service contains the following methods:

The cancelTaskByCaptureId Method

The completeTaskByCaptureId Method

The createTask Method

The getTaskByCaptureId Method

The holdTaskByCaptureId Method

The ping Method

Gplus Adapter for Siebel CRMDevelopers Guide

183

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

The restartTaskByCaptureId Method

The resumeTaskByCaptureId Method

The updateTaskByCaptureId Method

For a detailed description of these iWD methods, see the intelligent Workload
Distribution 8.0. Deployment Guide for details.
The following tables describe the available methods and their arguments:

Table 42, The cancelTaskByCaptureId Input Parameters, on page 185

Table 43, The completeTaskByCaptureId Input Parameters, on page 188

Table 44, The createTask Input Parameters, on page 192

Table 45, The getTaskByCaptureId Input Parameters, on page 196

Table 46, The holdTaskByCaptureId Input Parameters, on page 198

Table 47, The ping Input Parameters, on page 201

Table 48, The restartTaskByCaptureId Input Parameters, on page 202

Table 49, The resumeTaskByCaptureId Input Parameters, on page 206

Table 50, The updateTaskByCaptureId Input Parameters, on page 209

The following symbols, found in the tables listed above, represent the different
methods and arguments:
M:

Represents mandatory arguments.

M*:

Represents parameters that must either be passed as an argument or have a default value set in the business service user
properties.

M**:

Represents parameters that are required to update the Siebel


record status.

O:

Represents the optional arguments.

Note: To enable a debug log, you can add a DebugLogFile input parameter

and set it to a debug log file name.

The cancelTaskByCaptureId Method


The cancelTaskByCaptureId method is used to send a cancelTaskByCaptureId
request to the Genesys iWD. This method cancels an interaction from routing.
The cancelTaskByCaptureId method gathers all the necessary input parameters
and sends a cancelTaskByCaptureId request to iWD. Also, this method can
update the Siebel object record status, if required.
This method returns the RouteResult, Result, and ErrorText parameters.

184

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

A RouteResult value of 0 (zero) indicates a successful operation; any


RouteResult value other than 0 (zero) represents an error code.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI Communications.
The ErrorText parameter contains the error description, if there is any.
Note: If the cancelTaskByCaptureId method is configured to update the

Siebel object record, the update results (whether successful or not) do


not affect the overall results. The method results depend on direct
iWD call results only.
For a list of input parameters and their descriptions, see Table 42.
Table 42: The cancelTaskByCaptureId Input Parameters
Argument Name

Symbol Default User


Property Name

Description

ThirdPartyId

The RecordId for the routing


interaction.
Used as the CaptureId
parameter value for iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated during


the Web Service creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated during


the Web Service creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.

Gplus Adapter for Siebel CRMDevelopers Guide

185

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 42: The cancelTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol Default User


Property Name

Description

Actor

defaultActor

iWD: The user or system that


created the task. This
argument is used only for
auditing purposes and is set to
SYSTEM if the value is not
provided.

Reason

defaultReason

iWD

BusObject

M**

The Siebel Business Object


name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel Business


Component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

RecIdField

M**

The name of the Business


Component field that contains
the Siebel RecordID.
The default value is Id.

InteractionField

M**

The name of the Business


Component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

186

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 42: The cancelTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol Default User


Property Name

Description

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

SuccessStatus

The value of the record's


status if a call made to iWD
is successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if a call made to
iWD is successful.
There is no default value.

FailedStatus

The value of the record's


status if a call made to iWD
is unsuccessful.
There is no default value.

FailedSubStatus

The value of a record's


substatus if a call made to
iWD is unsuccessful.
There is no default value.

UserField

The name of a business


component field that
contains the user name.
There is no default value.

UserName

The user name that is set for


the Siebel record if the
UserField argument is
provided.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

187

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

The completeTaskByCaptureId Method


The completeTaskByCaptureId method is used to send a
completeTaskByCaptureId request to the Genesys iWD. This method completes
an interaction routing process.
The completeTaskByCaptureId method gathers all of the necessary input
parameters and sends a completeTaskByCaptureId request to iWD. Also, this
method can update the Siebel object record status, if required.
This method returns the RouteResult, Result, and ErrorText parameters.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI Communications.
The ErrorText parameter contains the error description, if there is any.
Note: If the completeTaskByCaptureId method is configured to update the

Siebel object record, the updated results (whether successful or not)


do not affect the overall results. The method results depend on direct
iWD call results only.
For a list of input parameters and their descriptions, see Table 43.
Table 43: The completeTaskByCaptureId Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and
intended to control the
Outbound Web Service,
which is used as a primary
web service.

188

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 43: The completeTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.
Actor

completedDateTime

defaultActor

iWD: The user or system


that created the task. This
argument is used only for
auditing purposes and is set
to SYSTEM, if the value is
not provided.
iWD: The date and time
when the task was
completed.
Format is
YYYY-MM-DDThh:mm:ss.

Reason

BusObject

M**

defaultReason

iWD
The Siebel Business Object
name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel business


component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

Gplus Adapter for Siebel CRMDevelopers Guide

189

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 43: The completeTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

RecIdField

M**

Default User
Property Name

Description
The name of the Business
Component field that
contains the Siebel
RecordID.
The default value is Id.

InteractionField

M**

The name of the Business


Component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

SuccessStatus

The value of the record's


status if a call made to
iWD is successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if a call made to
iWD is successful.
There is no default value.

FailedStatus

The value of the record's


status if a call made to
iWD is unsuccessful.
There is no default value.

190

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 43: The completeTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

FailedSubStatus

Default User
Property Name

Description

The value of a record's


substatus if a call made to
iWD is unsuccessful.
There is no default value.

UserField

The name of a Business


Component field that
contains the user name.
There is no default value.

UserName

The user name that is set


for the Siebel record if the
UserField argument is
provided.
There is no default value.

The createTask Method


The createTask method is used to send a createTask request to the Genesys
iWD. This method submits an interaction into a routing process.
The createTask method gathers all the necessary input parameters and sends a
createTask request to iWD. If you would like to add some AttachedUserData
values to a request, you should add custom input arguments. All input
arguments, except the predefined arguments, are attached to a createTask
request as AttachedUserData. Also, this method can update the Siebel object
record status, if required.
This method returns the Result, ErrorText, RouteResult, and RouteMessage
parameters.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI Communications.
The ErrorText parameter contains the error description, if there is any.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.

Gplus Adapter for Siebel CRMDevelopers Guide

191

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

The RouteMessage parameter contains the Genesys InteractionId.


Note: If the createTask method is configured to update the Siebel object

record, the updated results (whether successful or not) do not affect


the overall results. The method results depend on direct iWD call
results only.
For a list of input parameters and their descriptions, see Table 44.
Table 44: The createTask Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.

192

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 44: The createTask Input Parameters (Continued)


Argument Name

Symbol

ActivationDateTime

Default User
Property Name

Description
iWD: The date and time
when the task becomes
active. Before the task is
activated, it remains queued
and is not reprioritized and
distributed.
If this parameter is not
provided, the task becomes
active instantly.
The format is
YYYY-MM-DDThh:mm:ss.

Actor

defaultActor

iWD: The user or system


that created the task. This
argument is only used for
auditing purposes and is set
to SYSTEM, if the value is
not provided.

BusinessValue

M*

defaultBusiness
Value

iWD: The business value of


the task.

Category

Channel

DueDateTime

iWD: The task's category.


For exampleFollowup.
defaultChannel

iWD: The task's media


channel. For exampleFax,
Email, or Web form.
iWD: The date and time by
which the task should be
completed according to
SLA.
The format is
YYYY-MM-DDThh:mm:ss.

ExpirationDateTime

iWD: The time when the


task expires and is archived.
Only the tasks that have
been canceled, completed,
or rejected are archived.
The format is
YYYY-MM-DDThh:mm:ss.

Gplus Adapter for Siebel CRMDevelopers Guide

193

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 44: The createTask Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

Hold

M*

defaultHold

iWD: Decides whether to


initially hold the task. If
true, the task is created with
the initial status set to
NewHeld and is not
processed any further until a
subsequent call to resume
the TaskByCaptureId.

Priority

M*

defaultPriority

iWD: The task priority,


which is an integer number
used to order tasks
submitted to the distribution
system.

ProcessId

defaultProcessId iWD: The ID of the process

to which the task should be


assigned.
Reason

BusObject

M**

defaultReason

iWD
The Siebel Business Object
name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel Business


Component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

RecIdField

M**

The name of the Business


Component field that
contains the Siebel
RecordID.
The default value is Id.

194

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 44: The createTask Input Parameters (Continued)


Argument Name

Symbol

InteractionField

M**

Default User
Property Name

Description

The name of the business


component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

SuccessStatus

The value of the record's


status if a call made to
iWD is successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if a call made to
iWD is successful.
There is no default value.

FailedStatus

The value of the record's


status if a call made to
iWD is unsuccessful.
There is no default value.

FailedSubStatus

The value of a record's


substatus if a call made to
iWD is unsuccessful.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

195

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 44: The createTask Input Parameters (Continued)


Argument Name

Symbol

UserField

Default User
Property Name

Description

The name of a Business


Component field that
contains the user name.
There is no default value.

UserName

The user name that is set


for the Siebel record if the
UserField argument is
provided.

There is no default value.

The getTaskByCaptureId Method


The getTaskByCaptureId method is used to send a getTaskByCaptureId request
to Genesys iWD. This method is used to request current information about the
interaction.
The getTaskByCaptureId method gathers all the necessary input parameters
and sends a getTaskByCaptureId request to iWD.
This method returns the Result, ErrorText, and RouteResult parameters.
If the request is successful, the requested information is set as a child property.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI Communications.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
The ErrorText parameter contains the error description, if there is any.
For a list of input parameters and their descriptions, see Table 45.
Table 45: The getTaskByCaptureId Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

196

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 45: The getTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.

The holdTaskByCaptureId Method


The holdTaskByCaptureId method is used to send a holdTaskByCaptureId
request to the Genesys iWD. This method puts an interaction on hold.
The holdTaskByCaptureId method gathers all the necessary input parameters
and sends a holdTaskByCaptureId request to iWD. Also, this method can
update the Siebel object record status, if required.
This method returns the Result, ErrorText, and RouteResult parameters.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI Communications.

Gplus Adapter for Siebel CRMDevelopers Guide

197

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

The ErrorText parameter contains the error description, if there is any.


Note: If the holdTaskByCaptureId method is configured to update the Siebel

object record, the updated results (whether successful or not) do not


affect the overall results. The method results depend on direct iWD
call results only.
For a list of input parameters and their descriptions, see Table 46.
Table 46: The holdTaskByCaptureId Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.
Actor

198

defaultActor

iWD: The user or system


that created the task. This
argument is used only for
auditing purposes and is set
to SYSTEM, if the value is
not provided.

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 46: The holdTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

Reason

defaultReason

iWD

BusObject

M**

The Siebel Business Object


name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel Business


Component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

RecIdField

M**

The name of the Business


Component field that
contains the Siebel
RecordID.
The default value is Id.

InteractionField

M**

The name of the Business


Component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

199

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 46: The holdTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

SuccessStatus

The value of the record's


status if a call made to
iWD is successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if a call made to
iWD is successful.
There is no default value.

FailedStatus

The value of the record's


status if a call made to
iWD is unsuccessful.
There is no default value.

FailedSubStatus

The value of a record's


substatus if a call made to
iWD is unsuccessful.
There is no default value.

UserField

The name of a Business


Component field that
contains the user name.
There is no default value.

UserName

The user name that is set


for the Siebel record if the
UserField argument is
provided.
There is no default value.

The ping Method


The ping method is used to send a ping request to the Genesys iWD. This
method checks if the iWD Web Service Capture Point is alive or not. The ping
method gathers all of the necessary input parameters and sends a ping request
to iWD.
The method returns the Result, ErrorText, and RouteResult parameters.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.

200

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

A Result value of 1 indicates a successful operation; a Result value of 0


indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI communications.
The ErrorText parameter contains the error description, if there is any.
For a list of input parameters and their descriptions, see Table 47.
Table 47: The ping Input Parameters
Argument Name

Symbol

Default User
Property Name

Description

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.

The restartTaskByCaptureId Method


The restartTaskByCaptureId method is used to send a
restartTaskByCaptureId request to Genesys iWD. This method restarts the
routing process for an interaction.
The restartTaskByCaptureId method gathers all the necessary input
parameters and sends a restartTaskByCaptureId request to iWD. Also, this
method can update the Siebel object record status, if required.
This method returns the Result, ErrorText, and RouteResult parameters.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in

Gplus Adapter for Siebel CRMDevelopers Guide

201

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

addition to the RouteResult, since it is the standard Siebel output parameter


that is used in CTI communications.
The ErrorText parameter contains the error description, if there is any.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
Note: If the restartTaskByCaptureId method is configured to update the

Siebel object record, the updated results (whether successful or not)


do not affect the overall results. The method results depend on direct
iWD call results only.
For a list of input parameters and their descriptions, see Table 48.
Table 48: The restartTaskByCaptureId Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.

202

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 48: The restartTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

Actor

defaultActor

iWD: The user or system


that created the task. This
argument is only used for
auditing purposes and is set
to SYSTEM, if the value is
not provided.

Hold

M*

defaultHold

iWD: Decides whether to


initially hold the task. If the
value is true, the task is
created with the initial
status set to NewHeld and is
not processed any further
until a subsequent call to
resume the
TaskByCaptureId.

Reason

BusObject

M**

defaultReason

iWD
The Siebel Business Object
name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel Business


Component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

RecIdField

M**

The name of the Business


Component field that
contains the Siebel record
ID.
The default value is Id.

Gplus Adapter for Siebel CRMDevelopers Guide

203

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 48: The restartTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

InteractionField

M**

Default User
Property Name

Description

The name of the Business


Component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

SuccessStatus

The value of the record's


status if a call made to
iWD is successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if a call made to
iWD is successful.
There is no default value.

FailedStatus

The value of the record's


status if a call made to
iWD is unsuccessful.
There is no default value.

FailedSubStatus

The value of the record's


substatus if a call made to
iWD is unsuccessful.
There is no default value.

204

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 48: The restartTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

UserField

Default User
Property Name

Description

The name of the Business


Component field that
contains the user name.
There is no default value.

UserName

The user name that is set


for the Siebel record, if the
UserField argument is
provided.
There is no default value.

The resumeTaskByCaptureId Method


The resumeTaskByCaptureId method is used to send a resumeTaskByCaptureId
request to Genesys iWD. This method resumes an interaction routing after it
was held.
The resumeTaskByCaptureId method gathers all of the necessary input
parameters and sends a resumeTaskByCaptureId request to iWD. Also, this
method can update the Siebel object record status, if required.
The method returns the Result, ErrorText, and RouteResult parameters.
A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI communications.
The ErrorText parameter contains the error description, if there is any.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
Note: If the resumeTaskByCaptureId method is configured to update the

Siebel object record, the updated results (whether successful or not)


do not affect the overall results. The method results depend on direct
iWD call results only.

Gplus Adapter for Siebel CRMDevelopers Guide

205

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

For a list of input parameters and their descriptions, see Table 49.
Table 49: The resumeTaskByCaptureId Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and
intended to control the
Outbound Web Service,
which is used as a primary
web service.
BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.
Actor

defaultActor

iWD: The user or system


that created the task. This
argument is only used for
auditing purposes and is set
to SYSTEM, if the value is
not provided.

Reason

defaultReason

iWD

206

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 49: The resumeTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

BusObject

M**

Default User
Property Name

Description
The Siebel Business Object
name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel Business


Component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

RecIdField

M**

The name of the Business


Component field that
contains the Siebel
RecordID.

The default value is Id.


InteractionField

M**

The name of the Business


Component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

Gplus Adapter for Siebel CRMDevelopers Guide

207

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 49: The resumeTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

SuccessStatus

The value of the record's


status if a call made to
iWD is successful.
There is no default value.

SuccessSubStatus

The value of the record's


substatus if a call made to
iWD is successful.
There is no default value.

FailedStatus

The value of the record's


status if a call made to
iWD is unsuccessful.
There is no default value.

FailedSubStatus

The value of a record's


substatus if a call made to
iWD is unsuccessful.
There is no default value.

UserField

The name of a Business


Component field that
contains the user name.
There is no default value.

UserName

The user name that is set


for the Siebel record, if the
UserField argument is
provided.
There is no default value.

The updateTaskByCaptureId Method


The updateTaskByCaptureId method is used to send an updateTaskByCaptureId
request to the Genesys iWD. This method updates the interaction information.
The updateTaskByCaptureId method gathers all of the necessary input
parameters and sends an updateTaskByCaptureId request to iWD. If you would
like to add some AttachedUserData values to a request, you should add custom
input arguments. All input arguments, except the predefined arguments, are
attached to an updateTaskByCaptureId request as an AttachedUserData. Also,
this method can update the Siebel object record status, if required.

208

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

This method returns the Result, ErrorText, and RouteResult parameters.


A Result value of 1 indicates a successful operation; a Result value of 0
indicates an unsuccessful operation. The Result value was introduced in
addition to the RouteResult, since it is the standard Siebel output parameter
that is used in CTI communications.
The ErrorText parameter contains the error description, if there is any.
A RouteResult value of 0 (zero) indicates a successful operation; any
RouteResult value other than 0 (zero) represents an error code.
Note: If the updateTaskByCaptureId method is configured to update the

Siebel object record, the updated results (whether successful or not)


do not affect the overall results. The method results depend on direct
iWD call results only.
For a list of input parameters and their descriptions, see Table 50.
Table 50: The updateTaskByCaptureId Input Parameters
Argument Name

Symbol

ThirdPartyId

Default User
Property Name

Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.

PrimaryOutboundDispatcherBS

PrimaryOutbound
DispatcherBS

The name of the business


service based on
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and
intended to control the
Outbound Web Service,
which is used as a primary
web service.

Gplus Adapter for Siebel CRMDevelopers Guide

209

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 50: The updateTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

Default User
Property Name

Description

BackupOutboundDispatcherBS

BackupOutbound
DispatcherBS

The name of the business


service based on the
CSSWSOutboundDispatcher

class that is generated


during the Web Service
creation
(<mediaBusService>) and is
intended to control the
Outbound Web Service,
which is used as a backup.
ActivationDateTime

iWD: The date and time


when the task becomes
active. Before the task is
activated, it remains queued
and is not reprioritized and
distributed.
If this parameter is not
provided, the task becomes
active instantly.
The format is
YYYY-MM-DDThh:mm:ss.

Actor

defaultActor

iWD: The user or system


that created the task. This
argument is used only for
auditing purposes and is set
to SYSTEM, if the value is
not provided.

BusinessValue

M*

defaultBusiness
Value

iWD: The business value of


the task.

Category

Channel

210

iWD: The task's category.


For exampleFollowup.
defaultChannel

iWD: The task's media


channel. For exampleFax,
Email, or Webform.

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 50: The updateTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

DueDateTime

Default User
Property Name

Description
iWD: The date and time by
which the task should be
completed according to
SLA.
The format is
YYYY-MM-DDThh:mm:ss.

ExpirationDateTime

iWD: The time when the


task expires and is archived.
Only the tasks that have
been canceled, completed or
rejected are archived.
The format is
YYYY-MM-DDThh:mm:ss.

Hold

M*

defaultHold

iWD: Used to decide


whether to initially hold the
task, or not to hold the task.
If the argument is true, the
task is created with the
initial status set to NewHeld
and is not processed any
further until a subsequent
call to resume the
TaskByCaptureId.

Priority

M*

defaultPriority

iWD: The task priority,


which is an integer number
used to order tasks
submitted to the distribution
system.

Processid

defaultProcessId iWD: The ID of the process

to which the task should be


assigned.
Reason

Gplus Adapter for Siebel CRMDevelopers Guide

defaultReason

iWD

211

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRouteiWD Business Service

Table 50: The updateTaskByCaptureId Input Parameters (Continued)


Argument Name

Symbol

BusObject

M**

Default User
Property Name

Description
The Siebel Business Object
name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value.

BusComp

M**

The Siebel Business


Component name.
If provided*, an attempt is
made to update the record
status (for example
Activity).
There is no default value

RecIdField

M**

The name of the Business


Component field that
contains the Siebel
RecordID.
The default value is Id.

InteractionField

M**

The name of the Business


Component field that
contains the Genesys
InteractionID.
There is no default value.

StatusField

M**

The name of the Business


Component field that
contains the status
information.
There is no default value.

SubStatusField

The name of the Business


Component field that
contains the substatus
information.
There is no default value.

212

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization

Using the GplusMediaRoute Business Service

Using the GplusMediaRoute Business


Service
See Using the GplusMediaRoute Business Service on page 164 for more
information.

The Applet Customization


See The Applet Customization on page 174 for more information.

Using the iWD Routing Component for


Routing Siebel Work Items
The iWD Routing Component for Siebel can be used for routing any type of
Siebel work item both in real-time and in background mode. The Media
Routing Component provides basic functionality for Siebel work item routing,
but customization is required to provide a graphical user interface (GUI). See
the Gplus Adapter 8.0 for Siebel CRM Deployment Guide for general
information on configuration of the Media Routing Component.
The Group buttons on the Communications toolbar work for all interaction
types, such as Logon/Logout, Accept, and Ready/NotReady. However, you
should create Ready and NotReady commands for custom media types and add
them into the proper command groups, such as the ReadyGroup command
group and the NotReadyGroup command group.

Creating Commands for Custom Media Types


Example 1 is a command sample.
Note: A media type is set with the prefix @ in the DeviceCommand parameter

and in the FilterSpec parameter.


Example 1

[Command:ReadyForSiebelSRGroup]
FilterSpec = "[$GetCommandStatus(@ServiceRequest@OpenMediaReady)] =
'Enabled'"
Hidden = "FALSE"
DeviceCommand = "@ServiceRequest@OpenMediaReady"
Description = "Set ready for SiebelSR media type"
Profile = " Gplus Universal Profile "

Gplus Adapter for Siebel CRMDevelopers Guide

213

Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items

[Command:NotReadyForSiebelSR]
FilterSpec = "[$GetCommandStatus(@ServiceRequest@OpenMediaNotReady)] =
'Enabled'"
Hidden = "FALSE"
DeviceCommand = "@ServiceRequest@OpenMediaNotReady"
Description = "Set SiebelSR media type"
Profile = " Gplus Universal Profile "

Using the createtask Method to Send a createtask Request


To send a createTask request, you must use a createTask method of the
GplusMediaRouteiWD business service. Example 2 is a sample command to
route a service request. Change all CHANGE_ME values with appropriate values.
Refer to theThe createTask Method on page 191.
Example 2

[Command:SendRouteSR_iWD]
Description = "Route Service Request"
Title = "Route Service Request"
ServiceMethod = "GplusMediaRouteiWD.createTask"
Comments = "Send iWD.createTask request to route Siebel
ServiceRequest"
Hidden = "False"
AllViews = "False"
View = "Personal Service Request List View"
View = "All Service Request List View"
View = "Service Request Detail View"
Profile = "Gplus Universal Profile"
CmdData = "SendRouteCmdSR_iWD"
MenuPosition = "30.1"
[CmdData:SendRouteCmdSR_iWD]
RequiredField.SR Number = "?*"
ServiceParam.Subject = "{Abstract}"
ServiceParam.PrimaryOutboundDispatcherBS = "CHANGE_ME"
ServiceParam.BackupOutboundDispatcherBS = ""
ServiceParam.BusComp = "Service Request"
ServiceParam.BusObject = "Service Request"
ServiceParam.InteractionField = "Integration Id"
ServiceParam.RecIdField = "SR Number"
ServiceParam.SR_Type = "{SR Type}"
ServiceParam.ThirdPartyId = "{SR Number}"
ServiceParam.StatusField = "Status"

214

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items

ServiceParam.SuccessStatus = "CHANGE_ME"
ServiceParam.FailedStatus = "CHANGE_ME"
ServiceParam.SubStatusField = "Sub-Status"
ServiceParam.SuccessSubStatus = "CHANGE_ME"
ServiceParam.FailedSubStatus = "CHANGE_ME"
ServiceParam.RefreshViewAfterUpdate = "Yes"
ServiceParam.BusinessValue = "CHANGE_ME"
ServiceParam.Priority = "CHANGE_ME"
; add any required createTask parameters here
Comments = ""

The ServiceParam.ThirdPartyId parameter should be set to the ID field for a


Siebel work item record; it should be the same fields as in a proper event
handler. Here the SR Number field value is used as a ThirdPartyId.
Note: he InteractionField parameter is set in Example 2, so it is possible

to use the Pull/Stop functionality. As the SuccessStatus and


SuccessSubStatus parameters are absent, the method does not update
the record status. If you want to do a record status update, you can
add the SuccessStatus/SuccessSubStatus and
FailedStatus/FailedSubStatus parameters. See The createTask
Method on page 191.
In Example 2, the ServiceParam.Subject is an optional parameter, and it is
added as an AttachedUserData value. However, this value is used in a work
item description text message. See the itx_scdrv.xml file in the Gplus
Communication Server folder. For more information, see Using the
GplusMediaRouteiWD Business Service on page 183.

Creating an Event Handler


Procedure:
Creating an event handler
Purpose: To create an event handler for each custom media type to open a
Siebel view for the routed work item.
Start of procedure
1. To accept a routed work item, the agent must click the Accept group button
or the Accept Multimedia Interaction sub-button.
2. Create an event handler for the OpenMediaAccepted event for each custom
media type to open a Siebel view for the routed work item.

Gplus Adapter for Siebel CRMDevelopers Guide

215

Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items

3. Set the QuerySpec parameter to the value:


FieldName='{ThirdPartyId}

where FieldName is the ID field for a Siebel work item.


4. Set the SingleView parameter to a proper Siebel view name. See Example 3
and Example 4:
Example 3

[EventHandler:OpenMediaSelectedSR]
Filter.MediaType = "ServiceRequest"
Profile = "Gplus Universal Profile"
Comments = "EventHandler samples for Siebel work items
routing"
Order = "50"
Response = "OpenSiebelViewSR"
DeviceEvent = "OpenMediaSelected"
[EventResponse:OpenSiebelViewSR]
QueryBusComp = "Service Request"
QueryBusObj = "Service Request"
QuerySpec = "SR Number='{ThirdPartyId}'"
SingleView = "Service Request Detail View"
Comments = "EventResponse samples for Siebel work items
routing"

If you want to update a record status and/or assign it to the agent when an
agent accepts the interaction, you should create an event handler as shown in
Example 4:
Example 4

[EventHandler:OpenMediaAcceptedSR]
Filter.ThirdPartyId = "?*"
Filter.MediaType = "ServiceRequest"
DeviceEvent = "OpenMediaAccepted"
Profile = "Gplus Universal Profile"
Response = "EventResponseAcceptSR"
Order = "50"
[EventResponse:EventResponseAcceptSR]
QueryBusComp = "Service Request"
QueryBusObj = "Service Request"
Log = "EventLogAcceptSR"
[EventLog:EventLogAcceptSR]

216

Gplus Adapter 8.0

Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items

BusComp = "Service Request"


BusObj = "Service Request"
LogField.Owner = "{@UserName}"
LogField.Status = "CHANGE_ME"
LogField.Sub-Status = "CHANGE_ME"
QuerySpec = "SR Number='{ThirdPartyId}'"

End of procedure
Next Steps

There are no further steps.

You have to provide a command to mark a work item as done. For this you
may configure the provided MarkWorkItemDone command to support your
custom types, such as adding the media types into the FilterMediaType
parameter value, which contains a list of media types separated by commas. As
an alternative, you may customize a button on a work item view or add a
custom button on the Communications toolbar to invoke a MarkDone command.
Refer to the section The Applet Customization on page 174.
The provided out-of-the-box sample shows how to route Siebel Service
Requests in real-time mode and how to route Service Orders in background
mode. It uses the ServiceRequest media type for Siebel Service Requests and
the ServiceOrder media type for Service Orders.

Procedure:
Using the provided sample to route Siebel service
request
Purpose: To use the provided sample to route Siebel Service Requests in
real-time mode and how to route Service Orders in background mode.
Start of procedure
1. Remove the comment marks in the GenComm_universal.def (appropriate
places have the following comment: "Use this command in couple with
Gplus iWD Routing for Siebel CRM") file before importing a configuration
and performing the above-mentioned actions.
2. Create a custom media type in the Genesys environment and then add in
the Channel String parameter of the Gplus Universal Profile profile
driver.
3. Set the proper values for the command and events used.
End of procedure

Gplus Adapter for Siebel CRMDevelopers Guide

217

Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items

Next Steps

There are no further steps.

For more information about the iWD Routing Component deployment and
configuration, refer to Chapter 8 in the Gplus Adapter 8.0 for Siebel CRM
Deployment Guide.

218

Gplus Adapter 8.0

Chapter

Using Siebel Data from the


Genesys Universal Routing
Solution
It may be beneficial to use the data stored in Siebel CRM or to invoke some
Siebel functionality from the Genesys Universal Routing solution. This can be
achieved through the Web Service (Simple Object Access ProtocolSOAP)
interface. On a high level, the data access should be represented as a Siebel
business service and exposed as an inbound web service. On the Genesys side,
the web service strategy-building object should be used to invoke the business
service from a routing strategy.
This chapter describes use of Siebel data from the Genesys Universal Routing
solution in the following sections:
Checking the Inbound Web Service, page 219
Using the Web Service, page 221

Checking the Inbound Web Service


Procedure:
Managing the Siebel inbound web services on a Siebel
client
Purpose: To administer Siebel inbound web services on the Siebel client

Gplus Adapter for Siebel CRMDevelopers Guide

219

Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution

Checking the Inbound Web Service

Start of procedure
1. Navigate to View > Site Map > Administration - Web Services > Inbound
Web Services. See Figure 5.
2. Select a web service. (This chapter uses the standard Siebel Contact web
service as an example.)
For more information about how to create your own Inbound Web Service,
refer to the Siebel documentation.

Figure 5: The Siebel Inbound Web Services Administration View

End of procedure
Next Steps

220

There are no further steps.

Gplus Adapter 8.0

Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution

Using the Web Service

Using the Web Service


On the Genesys side, include the Web Service object into an appropriate
routing strategy to perform SOAP requests to the Siebel database. See
Figure 6.

Figure 6: Example of Using the Web Service Object in a Routing Strategy

The Web Service object has the following properties (see Figure 7 on
page 222):

The Web Service URL contains the URL for the appropriate web service.
For this example, the URL has the following structure:
http://<webserver>/eai_<lang>/start.swe?SWEExtSource=WebService&SWE
ExtCmd=Execute&UserName=<UserName>&Password=<Password>

You can get this URL from the Address field of the Service Port applet of
the Inbound Web Services Administration view

The Method name contains the SOAP method name to invoke. It has the
following structure:
<namespase variable name>:<SOAP method name>

You can find the valid method names in the Operations applet of the
Inbound Web Services Administration view.

The Method namespace contains the namespace for the SOAP request. It has
the following structure:
<namespase variable name>=< namespace>

The SOAPaction contains the SOAP action. It has the following structure:
rpc/< SOAP method name >

The Request parameters contains the key-value pairs that correspond to the

SOAP method input parameters.

Gplus Adapter for Siebel CRMDevelopers Guide

221

Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution

Using the Web Service

Figure 7: Web Service Object Properties - General Tab

To get the methods parameter list, refer to the Siebel Tools Business Service
screen. You can find appropriate business service names in the Business
Service field of the Service Port applet of the Inbound Web Services
Administration view.
You can assign the result of the SOAP request, for example, to a strategy local
variable. (See Figure 8 on page 223.)

222

Gplus Adapter 8.0

Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution

Using the Web Service

Figure 8: Web Service Object Properties - Result Tab

Reference to the SOAP response generally depends on the requested method


output variables typefor example, the reference to the EmailAddress field is:
SiebelContactQueryByIdResponse.SiebelMessage.ListOfContactInterface.Con
tact.Contact.EmailAddress

For more information related to the Web Service object functionality of


Genesys Universal Routing, refer to the Universal Routing documentation.
You can operate with the SOAP request results using an If expression strategy
objectfor example, see Figure 6 on page 221 and Figure 9 on page 224.

Gplus Adapter for Siebel CRMDevelopers Guide

223

Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution

Using the Web Service

Figure 9: If Expression Object Parameters

For example, you can compare what is assigned in a Web Service object
variable with other data.
Notes: If the Siebel Web Service method returns the SiebelMessage value (an

Integration object), the result key value will be a list instead of a base
typed value. Use the ListGetXXX[] method to retrieve the base typed
values from this list.
Currently, the Web Service strategy building block does not support
input/output parameters of arbitrary complexity. If it is necessary to
use such a business service, it should be wrapped up into another
business service with plain parameters. For general information about
the Web Service strategy building block, please refer to the Genesys
Universal Routing documentation.

224

Gplus Adapter 8.0

Supplements

Related Documentation
Resources
The following resources provide additional information that is relevant to this
software. Consult these additional resources as necessary.

Gplus Adapter for Siebel CRM

Gplus Adapter 8.0 for Siebel CRM Users Guide. Explains how to use the
Adapter in your contact center environment. Introduces the Gplus Adapter
and highlights new features in the current release.

Gplus Adapter 8.0 for Siebel CRM Developers Guide. Describes the API
(application programming interface) with which you can customize the
export of campaigns, campaign contacts, and Do Not Call requests from
Siebel to Genesys software.

Genesys

Genesys Technical Publications Glossary, which ships on the Genesys


Documentation Library DVD and which provides a comprehensive list of
the Genesys and computer-telephony integration (CTI) terminology and
acronyms used in this document.

Genesys Migration Guide, which ships on the Genesys Documentation


Library DVD, and which provides documented migration strategies for
Genesys product releases. Contact Genesys Technical Support for more
information.

Release Notes and Product Advisories for this product, which are available
on the Genesys Technical Support website at
http://genesyslab.com/support.

Information about supported hardware and third-party software is available on


the Genesys Technical Support website in the following documents:

Genesys Supported Operating Environment Reference Manual

Genesys Supported Media Interfaces Reference Manual

Gplus Adapter for Siebel CRMDevelopers Guide

225

Related Documentation Resources

Consult these additional resources as necessary:

Genesys Hardware Sizing Guide, which provides information about


Genesys hardware sizing guidelines for the Genesys 8.0 releases.

Genesys Interoperability Guide, which provides information on the


compatibility of Genesys products with various Configuration Layer
Environments; Interoperability of Reporting Templates and Solutions; and
Gplus Adapters Interoperability.

Genesys Licensing Guide, which introduces you to the concepts,


terminology, and procedures relevant to the Genesys licensing system.

Genesys Database Sizing Estimator 7.6 Worksheets, which provides a


range of expected database sizes for various Genesys products.

For additional system-wide planning tools and information, see the


release-specific listings of System Level Documents on the Genesys Technical
Support website, accessible from the system level documents by release tab
in the Knowledge Base Browse Documents Section.
Genesys product documentation is available on the:

226

Genesys Technical Support website at http://genesyslab.com/support.

Genesys Documentation Library DVD, which you can order by e-mail


from Genesys Order Management at orderman@genesyslab.com.

Gplus Adapter 8.0

Document Conventions

Document Conventions
This document uses certain stylistic and typographical conventions
introduced herethat serve as shorthands for particular kinds of information.

Document Version Number


A version number appears at the bottom of the inside front cover of this
document. Version numbers change as new information is added to this
document. Here is a sample version number:
80fr_ref_06-2008_v8.0.001.00

You will need this number when you are talking with Genesys Technical
Support about this product.

Screen Captures Used in This Document


Screen captures from the product graphical user interface (GUI), as used in this
document, may sometimes contain minor spelling, capitalization, or
grammatical errors. The text accompanying and explaining the screen captures
corrects such errors except when such a correction would prevent you from
installing, configuring, or successfully using the product. For example, if the
name of an option contains a usage error, the name would be presented exactly
as it appears in the product GUI; the error would not be corrected in any
accompanying text.

Type Styles
Table 51 describes and illustrates the type conventions that are used in this
document.
Table 51: Type Styles
Type Style Used For

Examples

Italic

Please consult the Genesys Migration


Guide for more information.

Document titles
Emphasis
Definitions of (or first references to)
unfamiliar terms
Mathematical variables

Do not use this value for this option.


A customary and usual practice is one
that is widely accepted and used within a
particular industry or profession.

Also used to indicate placeholder text within


code samples or commands, in the special case The formula, x +1 = 7
where angle brackets are a required part of the where x stands for . . .
syntax (see the note about angle brackets on
page 228).

Gplus Adapter for Siebel CRMDevelopers Guide

227

Document Conventions

Table 51: Type Styles (Continued)


Type Style Used For

Examples

Monospace
font

All programming identifiers and GUI


elements. This convention includes:

Select the Show variables on screen


check box.

(Looks like
teletype or

The names of directories, files, folders,


configuration objects, paths, scripts, dialog
boxes, options, fields, text and list boxes,
operational modes, all buttons (including
radio buttons), check boxes, commands,
tabs, CTI events, and error messages.

In the Operand text box, enter your


formula.

typewriter
text)

The values of options.


Logical arguments and command syntax.
Code samples.
Also used for any text that users must
manually enter during a configuration or
installation procedure, or on a command line.

Click OK to exit the Properties dialog


box.
T-Server distributes the error messages in
EventError events.
If you select true for the
inbound-bsns-calls option, all
established inbound calls on a local agent
are considered business calls.
Enter exit on the command line.

Square
A particular parameter or value that is optional smcp_server -host [/flags]
brackets ([ ]) within a logical argument, a command, or
some programming syntax. That is, the
presence of the parameter or value is not
required to resolve the argument, command, or
block of code. The user decides whether to
include this optional information.
Angle
brackets
(< >)

A placeholder for a value that the user must


specify. This might be a DN or a port number
specific to your enterprise.

smcp_server -host <confighost>

Note: In some cases, angle brackets are


required characters in code syntax (for
example, in XML schemas). In these cases,
italic text is used for placeholder values.

228

Gplus Adapter 8.0

Index
Symbols

[] (square brackets). . . . . . . . . . . . . . 228


< > (angle brackets) . . . . . . . . . . . . . 228

CalcSiebelSideWaveSynchStatus method . 148


campaign lists
exporting to Genesys . . . . . . . . . . . . 16
Campaign Synchronization . . . . . . . . 47, 50
business service . . . . . . . . . . . . . . 47
data flow . . . . . . . . . . . . . . . . . . 16
request type. . . . . . . . . . . . . . . . . 26
response . . . . . . . . . . . . . . . . . . 31
Campaign Synchronization Component . . . . .
. . . . . . . . . . . . . . . . 35, 36, 48
8.0.1. . . . . . . . . . . . . . . . . . . 65, 66
API. . . . . . . . . . . . . . . 66, 67, 121
data flow . . . . . . . . . . . . . . . . . 65
list import . . . . . . . . . . . . . . . . 66
CampaignInfo . . . . . . . . . . . . . . . . . 26
cancelTaskByCaptureId . . . . . . . . . . . 184
commenting on this document . . . . . . . . . 12
Configuration Layer Environment (CLE)
. . . . . . . . . . 16, 21, 22, 26, 28, 41
conventions
in document . . . . . . . . . . . . . . . . 227
type styles. . . . . . . . . . . . . . . . . 227

A
angle brackets . . . . . . . . . . . . . . . . 228
applet
customization . . . . . . . . . . . . .174, 213
attribute
recordinfo . . . . . . . . . . . . . . . . . . 31
audience, for document . . . . . . . . . . . 10

B
brackets
angle. . . . . . . . . . . . . . . . . . . . 228
square . . . . . . . . . . . . . . . . . . . 228
BuildGenesysCallingListName method . . . 145
BuildGenesysCampaignName method . . . 144
business service . . . . . . . . . . . . . . . 66
Genesys CampSynch Campaign . . . . . 122
Genesys CampSynch Event Handler . . . 137
Genesys CampSynch Request Executor . 129
Genesys CampSynch Tools . . . . . . . . 148
Genesys CampSynch Utils . . . . . . . . 144
GplusMediaRoute . . . . . . . . . . .164, 213
GetTopWorkItem. . . . . . . . . . . . 165
MarkWorkItemDone . . . . . . . . . . 165
PullInteraction . . . . . . . . . . . . . 169
route . . . . . . . . . . . . . . . . . . 171
UpdateActivity . . . . . . . . . . . . . 171
GplusMediaRouteIXN . . . . . . . . .153, 183
route . . . . . . . . . . . . . . . . . . 154
StopWorkItem . . . . . . . . . . 159, 188
GplusMediaRoutingiWD . . . . . . . . . . 183
GplusMediaRoutingIXN . . . . . . . . . . 153

Gplus Adapter for Siebel CRMDevelopers Guide

D
data flow . . . . . . . . . . . . . . . . . . 16, 65
campaign list . . . . . . . . . . . . . . . . 16
Campaign Synchronization . . . . . . . . . 16
sample . . . . . . . . . . . . . . . . . . . 19
document
audience . . . . . . . . . . . . . . . . . . 10
change history . . . . . . . . . . . . . . . 13
conventions . . . . . . . . . . . . . . . . 227
errors, commenting on . . . . . . . . . . . 12
version number . . . . . . . . . . . . . . 227

229

Index

eServices. . . . . . . . . . . . . . . . . . . 10
example
script. . . . . . . . . . . . . . . . . . . . . 56
style sheet . . . . . . . . . . . . . . . . . . 43

ImportAll method. . . . . . . . . . . . 148, 149


Inbound XML Schema . . . . . . . . . . . . . 23
InstallRuntimeEvents method . . . . . . . . 148
integration object . . . . . . . . . . . . . . . 19
intended audience . . . . . . . . . . . . . . . 10
IsCfgObjDeletionAllowed method . . . . . . 146
IsCfgObjWriteAllowed method . . . . . . . . 145
IsWFProcessRunning method . . . . . . . . 146
italics . . . . . . . . . . . . . . . . . . . . . 227
iWD Routing component . . . . . . 151, 181, 182
principals . . . . . . . . . . . . . . . . . 182

F
field
Genesys . . . . . . . . . . . . . . . . . . . 66
Siebel . . . . . . . . . . . . . . . . . . . . 66
font styles
italic . . . . . . . . . . . . . . . . . . . . 227
monospace . . . . . . . . . . . . . . . . 228
format
guidelines
configuration . . . . . . . . . . . . . . 38
format object . . . . . . . . . . . . . . . . . 66
Framework . . . . . . . . . . . . . . . . . . 10

G
Genesys
calling list . . . . . . . . . . . . 16, 17, 18, 42
Campaign Synchronization . . . . . . . . . 59
business service . . . . . . . . . . .48, 49
Configuration Layer . . . . . . . . . . . . . 35
field
map . . . . . . . . . . . . . . . . . . 36
Outbound Contact Server . . . . . . . . . . 48
Genesys Configuration Layer . . . . . . . . 66
Genesys Universal Routing Solution
Siebel Data . . . . . . . . . . . . . . . . 219
GetTopWorkItem . . . . . . . . . . . . . . . 165
GplusMediaRoute
business service. . . . . . . . . . . .164, 213
GplusMediaRouteiWD
business service. . . . . . . . . . . . . . 183
GplusMediaRouteIXN . . . . . . . . . 153, 183
business service. . . . . . . . . . . . . . 153
guidelines
format . . . . . . . . . . . . . . . . . . . . 38
method . . . . . . . . . . . . . . . . . . . 50
Siebel . . . . . . . . . . . . . . . . . . . . 36
style sheet
configuration . . . . . . . . . . . . . . 40

H
HTTP
connection . . . . . . . . . . . . . . . . . . 31
request . . . . . . . . . . . . . . . . . . . 26
response. . . . . . . . . . . . . . . . . 26, 28

230

L
list
calling . . . . . . . . . . . . . . . . . . . . 21
campaign
data flow . . . . . . . . . . . . . . . . . 16
Genesys
calling . . . . . . . . . . . . . . 16, 17, 18
import customization . . . . . . . . . . . . 19
Siebel
campaign . . . . . . . . . . . . . . 17, 18
list import. . . . . . . . . . . . . . . . . . 35, 66
ListInfo . . . . . . . . . . . . . . . . . . . . . 28

M
MarkWorkItemDone . . . . . . . . . . . . . 165
Media Routing component . . . . . . . 152, 182
applet customization . . . . . . . . . 174, 213
customization . . . . . . . . . . . . . 151, 181
Gplus Open Media Server . . . . . . . . 152
principals . . . . . . . . . . . . . . . . . 152
routing
Siebel Work items . . . . . . . . 175, 213
message
HTTP . . . . . . . . . . . . . . . . . . . . 66
method . . . . . . . . . . . . . . . . . . . . . . . . . .
71, 75, 78, 81, 84, 89, 92, 95, 98, 101, 105,
111, 114, 116, 138, 139, 140, 141, 142,
143
BuildGenesysCallingListName . . . . 144, 145
BuildGenesysCampaignName . . . . . . 144
CalcSiebelSideWaveSynchStatus . . 144, 148
CampLoadWave WriteRecord . . . . . . 137
CampSynch - Activate Calling List . . . . . 67
CampSynch - Create Campaign . . . . . . 67
CampSynch - Deactivate Calling List . . . . 67
CampSynch - Delete Calling List . . . . . . 67
CampSynch - Delete Campaign . . . . . . 67
CampSynch - Delete Contact Record . . . 67
CampSynch - Merge Calling List Begin . . . 67

Gplus Adapter 8.0

Index

CampSynch - Merge Calling List Commit . . 67


CampSynch - Merge Calling List Data . . . 67
CampSynch - Merge Contact Record . . . . 67
CampSynch - Query Call Results by
Calling List. . . . . . . . . . . . . . . . . 67
CampSynch - Query Call Results by
Calling List Method . . . . . . . . . . . 108
CampSynch - Query Call Results by
Campaign . . . . . . . . . . . . . . 67, 108
CampSynch - Query Call Results by
Contact . . . . . . . . . . . . . . . 67, 108
CampSynch - Query Call Results Delta
. . . . . . . . . . . . . . . . . . . 67, 108
common . . . . . . . . . . . . . . . . 72, 108
Contact PreDeleteRecord . . . . . . . . . 137
Contact WriteRecord . . . . . . . . . . . 137
CreateCampaign . . . . . . . . . . . . . 123
DeleteCampaign Method . . . . . . . . . 123
DeleteWave Method . . . . . . . . . . . . 123
DeleteWaveRecord Method . . . . . . . . 123
descriptions . . . . . . . . . . . . . . . . . 51
Execute . . . . . . . . . . . . . . . . . . 129
ExportWave Method . . . . . . . . . . . . 123
ExportWaveRecord Method . . . . . . . . 123
GetTopWorkItem . . . . . . . . . . . . . 165
guidelines
usage . . . . . . . . . . . . . . . . . 50
ImportAll . . . . . . . . . . . . . . . .148, 149
ImportCallResultsDelta . . . . . . . . . . 132
ImportContactCallResults . . . . . . . . . 132
ImportWaveCallResults . . . . . . . . . . 132
InstallRuntimeEvents . . . . . . . . . . . 148
IsCfgObjDeletionAllowed . . . . . . .144, 146
IsCfgObjWriteAllowed . . . . . . . . . . . 145
IsCfgObjWriteAllowed Method . . . . . . 144
IsWFProcessRunning . . . . . . . . .144, 146
MarkWorkItemDone . . . . . . . . . . . . 165
OnCampaignAssociated Method . . . . . 137
OnCampaignDisassociated . . . . . . . . 137
OnCampaignLoaded . . . . . . . . . . . 137
OnCampaignPurged. . . . . . . . . . . . 137
OnContactPreDeleted . . . . . . . . . . . 137
OnContactUpdated . . . . . . . . . . . . 137
OnWaveLaunched. . . . . . . . . . . . . 137
OnWaveSuspended . . . . . . . . . . . . 137
OnWaveUpdated . . . . . . . . . . . . . 137
PullInteraction . . . . . . . . . . . . . . . 169
request
POST . . . . . . . . . . . . . . . . . 66
response. . . . . . . . . . . . . . . . . . . 72
route . . . . . . . . . . . . . . . . . .154, 171
RunWFProcess . . . . . . . . . . . .144, 147
StartWaveProcessing Method . . . . . . . 123
StopWaveProcessing Method . . . . . . . 123
StopWFProcess . . . . . . . . . . . .144, 147
StopWorkItem . . . . . . . . . . . . .159, 188

Gplus Adapter for Siebel CRMDevelopers Guide

UninstallRuntimeEvents . . . . . . . 148, 149


UpdateActivity. . . . . . . . . . . . . . . 171
monospace font . . . . . . . . . . . . . . . 228

O
object
format . . . . . . . . . . . . . . . . . . . . 66
Outbound Contact Server (OCS)
. . . . . . .10, 26, 28, 29, 31, 32, 45, 46

P
parameter
complex . . . . . . . . . . . . . . . . . . . 68
parameters
input
frequent . . . . . . . . . . . . . . . . . 68
PullInteraction . . . . . . . . . . . . . . . . 169

R
RecordInfo . . . . . . . . . . . . . . . . . . . 31
request
HTTP . . . . . . . . . . . . . . . . . . . . 26
listinfo . . . . . . . . . . . . . . . . . . 28, 29
recordinfo . . . . . . . . . . . . . . . . . . 31
type . . . . . . . . . . . . . . . . . . . . . 26
response
HTTP . . . . . . . . . . . . . . . . . . . . 26
route . . . . . . . . . . . . . . . . . . 154, 171
run time event
Siebel . . . . . . . . . . . . . . . . . . . . 49
runtime event
Siebel . . . . . . . . . . . . . . . . . . . . 48
RunWFProcess method . . . . . . . . . . . 147

S
script example . . . . . . . . . . . . . . . . . 56
Siebel
campaign list . . . . . . . . . . . . . . 17, 18
guidelines
configuration . . . . . . . . . . . . . . . 36
map . . . . . . . . . . . . . . . . . . . . . 36
property set
map . . . . . . . . . . . . . . . . . . . 19
run time event . . . . . . . . . . . . . . . . 49
runtime event . . . . . . . . . . . . . . . . 48
square brackets . . . . . . . . . . . . . . . 228
StopWFProcess method . . . . . . . . . . . 147
StopWorkItem . . . . . . . . . . . . . 159, 188

231

Index

style sheet . . . . . . . . . . . . . . . . . . 43
example
configuration . . . . . . . . . . . . . . 43
guidelines . . . . . . . . . . . . . . . . . . 40
summary
using
synchronization . . . . . . . . . . . . 61
summary format
synchronization . . . . . . . . . . . . . 59, 65
summary usage
synchronization . . . . . . . . . . . . . 59, 65
synchronization
format
summary . . . . . . . . . . . . . . .59, 65
usage
summary . . . . . . . . . . . . . . .59, 65
using
summary . . . . . . . . . . . . . . . . 61

X
XML
message . . . . . . . . . . . . . . . . 16, 20
schema . . . . . . . . . . . . . . . . . 16, 22

T
The . . . . . . . . . . . . . . . . . . . 174, 213
type
request . . . . . . . . . . . . . . . . . . . 26
type styles
conventions . . . . . . . . . . . . . . . . 227
italic . . . . . . . . . . . . . . . . . . . . 227
monospace . . . . . . . . . . . . . . . . 228
typographical styles . . . . . . . . . . . . . 227

U
UninstallRuntimeEvents
method . . . . . . . . . . . . . . . .148, 149
Universal Routing . . . . . . . . . . . . . . 10
UpdateActivity . . . . . . . . . . . . . . . . 171

V
version numbering, document . . . . . . . . 227

W
Web Service
object . . . . . . . . . . . . . . . . . . . 221
using
URS . . . . . . . . . . . . . . . . . . 221
Web Service (SOAP). . . . . . . . . . . . . 219
checking
inbound . . . . . . . . . . . . . . . . 219

232

Gplus Adapter 8.0

Você também pode gostar