Escolar Documentos
Profissional Documentos
Cultura Documentos
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.
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.
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
Table of Contents
Chapter 2
Chapter 3
Chapter 4
Table of Contents
Chapter 5
Using Siebel Data from the Genesys Universal Routing Solution. 219
Checking the Inbound Web Service ...................................................... 219
Using the Web Service .......................................................................... 221
Supplements
Index
............................................................................................................... 229
Table of Contents
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
List of Procedures
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:
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
For information about the related resources and about the conventions that are
used in this document, see the supplementary material starting on page 225.
Preface
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 are familiar with the network configurations used in your enterprises
computing environment.
(If you will be modifying the style sheet file:) You understand .XSL syntax
and file structure.
Framework
Universal Routing
10
Preface
Usage Guidelines
Usage Guidelines
The Genesys developer materials outlined in this document are intended to be
used for the following purposes:
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
11
Preface
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.
12
Preface
13
Preface
14
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.
15
16
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.
17
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
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
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).
19
<PropertySet ...>
...
<ContactInfo
crm_camp_con_id="1-AABC"
phone_1="1112223301"
phone_2="2223334401"
phone_4="3334445501"
...
cd_field1="Anything">
</ContactInfo>
...
</PropertySet>
<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
<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
21
contact_info="3334445501"
contact_info_type="4"
cd_field2=Other
>
</Record>
...
</ContactInfo>
<?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
23
</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
25
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.
Description
mapped to some Tenant in Genesys CLE (see the Gplus Adapter for Siebel
CRM Deployment Guide for more details.)
26
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.
<SyncRequest
</SyncRequest>
<SyncRequest Name="Genesys - Delete Campaign" Id=1-SSSB>
<CampaignInfo
TenantId="Default Organization"
CampaignName="WS77-Campaign1"
AdminLoginName="GPADMIN">
</CampaignInfo>
</SyncRequest>
27
<SyncRequest
28
Name
Description
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
29
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
Description
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
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:
31
CallResults
SynchSummary.
32
<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.
33
34
35
Campaign List Contact, contains the default mapping of the Siebel fields to
Genesys Field
CampaignListContact.HomePhone,
contact_info, contact_info_type,
CampaignListContact.WorkPhone,
CampaignListContact.ProspectWorkPhone,
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
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)
phone_1
phone_2
CampaignId
crm_campaign_id
Id
crm_camp_con_id
Calculated Contact Id
crm_contact_id
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.
37
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.
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
39
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
Value
Modem
VoiceMail
PinPage
10
41
<?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>
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
You must also ensure that the corresponding Format object includes a field
definition for each Genesys field that the style sheet maps.
43
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
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.
45
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
47
Campaign
BusComp_PreSetFieldValue
BusComp_SetFieldValue
BusComp_CopyRecord
BusComp_NewRecord
BusComp_PreDeleteRecord
BusComp_DeleteRecord
BusComp_PreWriteRecord
48
BusComp_CopyRecord
BusComp_NewRecord
BusComp_PreDeleteRecord
BusComp_DeleteRecord
BusComp_PreWriteRecord
BusComp_WriteRecord
BusComp_PreWriteRecord
BusComp_WriteRecord
BusComp_PreSetFieldValue
BusComp_SetFieldValue
BusComp_PreDeleteRecord
BusComp_DeleteRecord
BusComp_PreWriteRecord
BusComp_WriteRecord
Position
BusComp_PreAssociate
BusComp_Associate
BusComp_PreDeleteRecord
BusComp_DeleteRecord
49
50
ReferenceValue2
51
52
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
ListId
53
Argument
CampaignId
ToCampaignId
Argument
CampaignId
54
Argument
CampaignId
55
Phone
Phone
PreSubmitRequests
ExportCampaignWithLists
ExportLists
SubmitRequests
Genesys.
56
Example 1
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();
}
57
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
59
Description
Object
ObjectN
Operations
OperationsStatus
AuxValue1
AuxValue2
AuxValue3
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)
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)
61
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;
}
62
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;
}
63
64
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.
65
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.
66
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.
67
Description
RequestId
ConfigurationId
CampaignName
ListName
Summary
Sub-Parameter
Mandatory
Field
68
Description
The custom field description.
FieldName
Yes
FieldValue
Yes
Sub-Parameter
Mandatory
Phone
Description
The phone number.
PhoneType
Yes
Phones
Phone
No
CustomFields
Field
No
ContactInfo
crm_campaign_id
Yes
crm_contact_id
Yes
crm_camp_con_id
Yes
tz_name
Yes
do_not_call
Yes
Phones
Yes
CustomFields
Yes
69
Sub-Parameter
Mandatory
ContactRef
Description
The reference to a Siebel contact
crm_campaign_id
Yes
crm_contact_id
Yes
crm_camp_con_id
Yes
ContactList
No
CampaignList
CampaignName
Yes
BatchMode
Yes
70
71
Mandatory
Description
RequestId
Yes
ResultCode
Yes
ResultDescription
Yes
Summary
No
72
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>
73
74
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
FolderName
No
75
76
77
Mandatory
Description
RequestId
Yes
See, RequestId.
ConfigurationId
Yes
See, ConfigurationId.
CampaignName
Yes
See, CampaignName.
Summary
Yes
See, Summary.
78
79
80
These methods do the following merge operations under the calling list:
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
81
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
83
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
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>
85
<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
87
<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
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
Mandatory
Description
RequestId
Yes
See, RequestId.
ConfigurationId
Yes
See, ConfigurationId.
CampaignName
Yes
See, CampaignName.
ListName
Yes
See, ListName.
Summary
Yes
See, Summary.
89
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
91
Mandatory
Description
RequestId
Yes
See, RequestId.
ConfigurationId
Yes
See, ConfigurationId.
CampaignName
Yes
See, CampaignName.
ListName
Yes
See, ListName.
Summary
Yes
See, Summary.
92
93
94
Mandatory
Description
RequestId
Yes
See, RequestId.
ConfigurationId
Yes
See, ConfigurationId.
CampaignName
Yes
See, CampaignName.
ListName
Yes
See, ListName.
Summary
Yes
See, Summary.
95
96
97
Mandatory
Description
RequestId
Yes
See, RequestId.
ConfigurationId
Yes
See, ConfigurationId.
CampaignName
Yes
See, CampaignName.
ListName
Yes
See, ListName.
Summary
Yes
See, Summary.
98
99
100
Mandatory
Description
RequestId
Yes
See, RequestId.
ConfigurationId
Yes
See, ConfigurationId.
CampaignName
Yes
See, CampaignName.
ListName
Yes
See, ListName.
Summary
Yes
See, Summary.
ContactInfo
Yes
101
102
103
104
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
XML Schema 11on page 112 illustrates the XML schema of the CampSynch Delete Contact Record method request:
105
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
107
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.
Mandatory
Description
ResultCode
Yes
Yes
CallResultList
Yes
108
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>
109
110
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.
111
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
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>
113
Table 31: The CampSynch - Query Call Results Method Input Parameters
Parameter
Mandatory
Description
CampaignName
Yes
See, CampaignName.
114
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>
115
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
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>
117
Mandatory
Description
CampaignName
Yes
See, CampaignName.
ListName
Yes
See, ListName.
ContactRef
Yes
118
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>
119
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
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.
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.
121
Description
Provides the method that reads the request from the queue and
sends it to Genesys. This method is used by the workflow
process.
Provides the methods to request and apply the call results from
the Genesys side.
Synchronization Server.
122
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.
LoadNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Create Campaign
123
associated calling lists. You do not have to call the DeleteWave method
for Campaign Load Waves before using this method.
Input Arguments
CampaignId
LoadNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Delete Campaign
124
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
LoadNumber
WaveNumber
InitialState
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
125
LoadNumber
WaveNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Delete Calling List
126
CampaignId
LoadNumber
WaveNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Activate Calling List
LoadNumber
WaveNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Deactivate Calling List
127
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Merge Contact Record
Output Argument
None.
128
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Delete Contact Record
129
130
CampaignId
ExecChainId
LastConnSubsystem
Output Argument
The result code of a request execution. See Table 35
below for details:
ResultCode
Result
The signal to exit from the workflow process. At this time, the
current implementation does not generate this code.
ResultDescription
CampaignId
ExecChainId
131
LastConnSubsystem
NoDataTimeout
RetryTimeout
Exceptions
This method does not raise an exception.
132
LastConnSubsystem
Output Argument
The result code of a request execution. See Table 36
below for details:
ResultCode
Result
133
Result
The signal to exit from the workflow process. At this time, the
current implementation does not generate this code.
ResultDescription
LastConnSubsystem
QueryTimeout
RetryTimeout
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Query Call Results Delta
134
LoadNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Query Call Results by Campaign
135
LoadNumber
WaveNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Query Call Results by Calling List
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Generated CampSynch Server API Requests
CampSynch - Merge Contact Record
136
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.
137
138
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
139
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
LoadNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
140
LoadNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
LoadNumber
WaveNumber
PrevState
141
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
LoadNumber
WaveNumber
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
142
CampaignId
LoadNumber
WaveNumber
WaveStatus
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
deleted.
143
Input Arguments
ContactId
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
LoadNumber
Output Argument
GenesysCampaignName
144
Exceptions
This method raises exceptions if there are errors.
LoadNumber
WaveNumber
Output Argument
GenesysCallingList
Name
Exceptions
This method raises exceptions if there are errors.
ProfilePrimary
ProfileBackup
Output Argument
ResultMessage
Exceptions
This method raises exceptions if there are errors.
145
CampWFStatus
CRWFStatus
Output Argument
ResultMessage
Exceptions
This method raises exceptions if there are errors.
WFName
Output Argument
IsRunning
Y or N.
Exceptions
This method raises exceptions if there are errors.
146
WFName
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
WFName
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
147
LoadNumber
WaveNumber
Output Argument
StatusLIC
Exceptions
This method raises exceptions if there are errors.
148
Output Argument
None.
Exceptions
This method raises exceptions if there are errors.
149
150
Chapter
Note: The Gplus Media Routing for Siebel CRM and Gplus iWD Routing
151
Overview
Overview
The principal parts of the Media Routing Component 8.0 are shown in
Figure 3.
152
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.
Note: To enable a debug log, you may add a DebugLogFile input parameter
153
The following tables describe the available methods and their arguments:
The following symbols represent the different methods and arguments found in
Table 37 and Table 38.:
M:
M*:
Represents parameters that must either be passed as an argument or have a default value set in the business service user
properties.
M**:
O:
154
Description
ThirdPartyId
PrimaryGOMSConnectionSubsystem
PrimaryGOMS
Connection
Subsystem
BackupGOMSConnectionSubsystem
ConnectionName
BackupGOMS
Connection
Subsystem
RoutingMediaType
155
Description
InteractionType
InteractionSubtype
156
Description
ReceivedAt
BusObject
M**
BusComp
M**
RecIdField
M**
StatusField
M**
SubStatusField
157
Description
SuccessStatus
SuccessSubStatus
FailedStatus
FailedSubStatus
UserField
UserName
158
For a list of input parameters and their descriptions, see Table 38 on page 160.
159
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
M*
PrimaryGOMS
Connection
Subsystem
BackupGOMSConnection
Subsystem
160
BackupGOMS
Connection
Subsystem
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
Description
RecIdField
M**
161
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
InteractionField
StatusField
M**
SubStatusField
SuccessStatus
162
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
FailedSubStatus
UserField
UserName
163
The following tables describe the available methods and their arguments:
The following symbols, found in the tables listed above, represent the different
methods and arguments:
M:
M*:
Represents parameters that must either be passed as an argument or have a default value set in the business service user
properties.
M**:
O:
Note: To enable a debug log, you may add a DebugLogFile input parameter
164
165
Symbol
QueueName
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
ThirdPartyId
M**
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
Symbol
BusObject
M**
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**
InteractionField
M**
StatusField
M**
SubStatusField
167
Symbol
SuccessStatus
Description
The value of a record's status
in a case of a successful
operation.
There is no default value.
SuccessSubStatus
FailedStatus
FailedSubStatus
UserField
UserName
168
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.
169
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
InteractionID
is provided)
M
(if no
InteractionID
is provided)
M
(if no
InteractionID
is provided)
RecIdField
170
M
(if no
InteractionID
is provided)
Interaction Id: the value that is that stored in a field reference by the
InteractionField parameter.
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.
171
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
RecIdField
InteractionField
StatusField
SubStatusField
SuccessStatus
172
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
FailedSubStatus
UserField
UserName
173
174
[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 "
175
[Command:SendRouteSR]
Description
Title
ServiceMethod = "GplusMediaRouteIXN.route"
Comments
Hidden
= "False"
AllViews
= "False"
View
View
View
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
= ""
[EventHandler:OpenMediaSelectedSR]
Filter.MediaType
= "ServiceRequest"
Profile
Comments
= "EventHandler samples
routing"
177
Order
= "50"
Response
= "OpenSiebelViewSR"
DeviceEvent
= "OpenMediaSelected"
[EventResponse:OpenSiebelViewSR]
QueryBusComp
= "Service Request"
QueryBusObj
= "Service Request"
QuerySpec
= "SR Number='{ThirdPartyId}'"
SingleView
Comments
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
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
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
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
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.
179
180
Chapter
Note: The Gplus Media Routing for Siebel CRM and Gplus iWD Routing
181
Overview
Overview
The principal parts of the iWD Routing Component 8.0 are shown in Figure 4
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
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.
183
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:
The following symbols, found in the tables listed above, represent the different
methods and arguments:
M:
M*:
Represents parameters that must either be passed as an argument or have a default value set in the business service user
properties.
M**:
O:
Note: To enable a debug log, you can add a DebugLogFile input parameter
184
Description
ThirdPartyId
PrimaryOutboundDispatcherBS
PrimaryOutbound
DispatcherBS
BackupOutbound
DispatcherBS
185
Description
Actor
defaultActor
Reason
defaultReason
iWD
BusObject
M**
BusComp
M**
RecIdField
M**
InteractionField
M**
StatusField
M**
186
Description
SubStatusField
SuccessStatus
SuccessSubStatus
FailedStatus
FailedSubStatus
UserField
UserName
187
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
188
Symbol
Default User
Property Name
Description
BackupOutboundDispatcherBS
BackupOutbound
DispatcherBS
completedDateTime
defaultActor
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**
189
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**
StatusField
M**
SubStatusField
SuccessStatus
SuccessSubStatus
FailedStatus
190
Symbol
FailedSubStatus
Default User
Property Name
Description
UserField
UserName
191
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
BackupOutbound
DispatcherBS
192
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
BusinessValue
M*
defaultBusiness
Value
Category
Channel
DueDateTime
ExpirationDateTime
193
Symbol
Default User
Property Name
Description
Hold
M*
defaultHold
Priority
M*
defaultPriority
ProcessId
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**
RecIdField
M**
194
Symbol
InteractionField
M**
Default User
Property Name
Description
StatusField
M**
SubStatusField
SuccessStatus
SuccessSubStatus
FailedStatus
FailedSubStatus
195
Symbol
UserField
Default User
Property Name
Description
UserName
Symbol
ThirdPartyId
Default User
Property Name
Description
The ID of a Siebel work
item.
Used as the CaptureId
parameter value for the
iWD.
196
Symbol
Default User
Property Name
Description
PrimaryOutboundDispatcherBS
PrimaryOutbound
DispatcherBS
BackupOutbound
DispatcherBS
197
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
BackupOutbound
DispatcherBS
198
defaultActor
Symbol
Default User
Property Name
Description
Reason
defaultReason
iWD
BusObject
M**
BusComp
M**
RecIdField
M**
InteractionField
M**
StatusField
M**
SubStatusField
199
Symbol
Default User
Property Name
Description
SuccessStatus
SuccessSubStatus
FailedStatus
FailedSubStatus
UserField
UserName
200
Symbol
Default User
Property Name
Description
PrimaryOutboundDispatcherBS
PrimaryOutbound
DispatcherBS
BackupOutbound
DispatcherBS
201
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
BackupOutbound
DispatcherBS
202
Symbol
Default User
Property Name
Description
Actor
defaultActor
Hold
M*
defaultHold
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**
RecIdField
M**
203
Symbol
InteractionField
M**
Default User
Property Name
Description
StatusField
M**
SubStatusField
SuccessStatus
SuccessSubStatus
FailedStatus
FailedSubStatus
204
Symbol
UserField
Default User
Property Name
Description
UserName
205
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
BackupOutbound
DispatcherBS
defaultActor
Reason
defaultReason
iWD
206
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**
RecIdField
M**
M**
StatusField
M**
SubStatusField
207
Symbol
Default User
Property Name
Description
SuccessStatus
SuccessSubStatus
FailedStatus
FailedSubStatus
UserField
UserName
208
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
209
Symbol
Default User
Property Name
Description
BackupOutboundDispatcherBS
BackupOutbound
DispatcherBS
Actor
defaultActor
BusinessValue
M*
defaultBusiness
Value
Category
Channel
210
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
Hold
M*
defaultHold
Priority
M*
defaultPriority
Processid
defaultReason
iWD
211
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**
RecIdField
M**
InteractionField
M**
StatusField
M**
SubStatusField
212
[Command:ReadyForSiebelSRGroup]
FilterSpec = "[$GetCommandStatus(@ServiceRequest@OpenMediaReady)] =
'Enabled'"
Hidden = "FALSE"
DeviceCommand = "@ServiceRequest@OpenMediaReady"
Description = "Set ready for SiebelSR media type"
Profile = " Gplus Universal Profile "
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 "
[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
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 = ""
215
Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items
[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
Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items
End of procedure
Next 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
217
Chapter 4: iWD Routing Component Customization Using the iWD Routing Component for Routing Siebel Work Items
Next 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
Chapter
219
Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution
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.
End of procedure
Next Steps
220
Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution
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
221
Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution
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
Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution
223
Chapter 5: Using Siebel Data from the Genesys Universal Routing Solution
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
Supplements
Related Documentation
Resources
The following resources provide additional information that is relevant to this
software. Consult these additional resources as necessary.
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
Release Notes and Product Advisories for this product, which are available
on the Genesys Technical Support website at
http://genesyslab.com/support.
225
226
Document Conventions
Document Conventions
This document uses certain stylistic and typographical conventions
introduced herethat serve as shorthands for particular kinds of information.
You will need this number when you are talking with Genesys Technical
Support about this product.
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
Document titles
Emphasis
Definitions of (or first references to)
unfamiliar terms
Mathematical variables
227
Document Conventions
Examples
Monospace
font
(Looks like
teletype or
typewriter
text)
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
(< >)
228
Index
Symbols
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
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
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
Index
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