Download ShoreTel Contact Center 4.32 CRM Integration Guide

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Clusterpoint wikipedia , lookup

Transcript
ShoreTel Contact Center Solution
CRM Integration Guide
Release 4.32
Robust IP Phone Systems
Document and Software Copyrights
Copyright © 1998-2004 by ShoreTel, Inc., Sunnyvale, California, U.S.A. All rights reserved. Printed
in the United States of America. Contents of this publication may not be reproduced or
transmitted in any form or by any means, electronic or mechanical, for any purpose, without prior
written authorization of ShoreTel, Inc.
ShoreTel, Inc. reserves the right to make changes without notice to the specifications and
materials contained herein and shall not be responsible for any damage (including consequential)
caused by reliance on the materials presented, including, but not limited to typographical,
arithmetic or listing errors.
Trademarks
ShoreCare, ShoreTel, ShoreWare, ShoreGear, and AnyPhone are registered trademarks of
ShoreTel, Inc. in the United States and/or other countries.
ShoreTel5 is a trademark of ShoreTel, Inc. in the United States and/or other countries.
Microsoft, Windows, Windows NT, and ActiveX are either registered trademarks or trademarks of
Microsoft Corporation in the United States and/or other countries. VxWorks is a trademark of
Wind River Systems. All other copyrights and trademarks herein are the property of their
respective owners.
Version Information
ShoreTel Contact Center CRM Integration Guide
Release 4.32
June, 2004
Company Information
ShoreTel, Inc.
960 Stewart Drive
Sunnyvale, California 94085
(408) 331-3300
(408) 331-3333 fax
www.ShoreTel.com
Contents
PREFACE
About This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preface-v
Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preface-v
Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preface-v
Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preface-vi
CHAPTER 1: CRM INTEGRATION USING CALL CONTROL SCRIPTS
Call Profiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Call Control Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Integrating to CRM Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Call Routing Based on CRM Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Self-Service Based on CRM Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1
1-2
1-3
1-4
1-4
CHAPTER 2: USING DIAL LISTS FOR OUTBOUND CALLING
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring the Dial Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
External Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-1
2-1
2-2
2-2
CHAPTER 3: AUTOMATING AGENT ACTIVITIES
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
The ShoreWare Agent INI File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
Integrating Applications by DDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
First Invocation of the ShoreWare Agent Toolbar Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Configuring the ShoreWare Agent Toolbar Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
The ShoreWare Agent Toolbar Software as a DDE Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
The ShoreWare Agent Toolbar Software as a DDE Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Integrating Applications by ActiveX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9
Configuring ShoreWare Agent Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
Managing ShoreWare Agent Toolbar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
ShoreWare Agent Toolbar Events. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
ShoreWare Agent Toolbar Software Methods (Services) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
Activating Applications by Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14
Configuring the ShoreWare Agent Toolbar Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14
Activating an Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14
Activation Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15
Command Substitution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15
APPENDIX A: INTEGRATION EXAMPLES
Goldmine by DDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MSAccess by DDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Web Application by Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vantive by DDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
External Application by ActiveX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Code of VbController.exe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Control Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A-1
A-1
A-2
A-2
A-2
A-2
A-5
iii
iv
Preface
About This Guide
This guide describes how to integrate the ShoreTel Enterprise Contact Center Solution
with external Customer Relationship Management (CRM) applications. It details the
available interfaces, and provides necessary reference information including examples.
NOTE
The options and modules required for CRM integration are only available with
the ShoreTel Enterprise Contact Center Solution.
This guide provides information for professional services engineers and application
programmers who must plan the integration of the ShoreTel Enterprise Contact Center
Solution to selected external applications before development begins.
This guide assumes that you are familiar with the ShoreTel Enterprise Contact Center
Solution architecture, features, and functionality. You should also be familiar with
Agent Toolbar, see the ShoreWare Agent Toolbar User Guide for more information.
Documentation
The following documents are available for the ShoreTel Enterprise Contact Center
Solution system:
•
•
•
•
•
ShoreWare Agent Toolbar User Guide
ShoreWare Supervisor Applications Guide
ShoreTel Contact Center Solution Installation Guide
ShoreTel Contact Center Solution Administration Guide
ShoreTel Contact Center Solution CRM Integration Guide (this guide)
Document Conventions
The following conventions are used in this guide:
• Data-entry fields, hypertext links, control buttons, keywords, and other items
within the system management interface are in a boldface font.
• Information that you enter in data fields are in a data_entry font.
• NOTE indicates notes to the reader that contain useful information or references.
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
Preface – v
Preface
Disclaimer
The illustrations, telephone displays, and screen captures appearing in this manual are
examples used to explain more clearly how the features and controls are used. What
appears on the display or screen capture in the illustrations may differ from what
appears on the actual equipment, and some of the illustrations may represent
something impossible in actual operation. The functions that can be used and the
information that can be displayed will differ depending on the telephony state and
external equipment being connected. The names of companies, products, people,
characters, and/or data mentioned in the examples herein are fictitious and are in no
way intended to represent any real individual, company, product, or event, unless
otherwise noted.
Preface – vi
ShoreTel, Inc.
C
H
A
P
T
E
R
1
CRM Integration Using Call
Control Scripts
To automate your contact center operation, you can integrate ShoreTel Enterprise
Contact Center Solution with your Customer Relationship Management (CRM) using
call control scripts. This allows the contact center to be more closely tied to your
customer information and to improve your customer service. For example, you can use
your CRM database to change skills, priority, call flow, or even to let callers bypass
agents and interact directly with the CRM database in a self-service application.
Integration requires the interaction of three key components:
• Call profiles
• Call control scripts
• CRM database
This chapter explains how these components work together in call routing and selfservice applications.
Call Profiles
The call profile contains a list of fields, each with a field name and value. There are
mandatory fields (fields defined and managed by the ShoreTel Contact Center
Solution), and user-definable fields. User fields can be created in the Contact Center
Director according to your application needs.
The call profile fields can be updated by caller interaction, or from a CRM database
using call control scripts. With call control scripts, you can set call actions and
decisions based on the contents of select call profile fields.
NOTE
For detailed information on managing call profile fields, see the ShoreTel Contact
Center Solution Administration Guide.
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
1–1
CRM Integration Using Call Control Scripts
The following table lists the mandatory fields in the call profile.
External Name
DNIS
Calling
Called
Elapsed
Last Redirection
Originally Called
Status
Time
Trunk
Waiting Time
Type
Media
Priority
Service
CUSTOMER_NUMB
ER
CUSTOMER_NAME
ACD_ENTER_DATE
ACD_ENTER_TIME
Q_POSITION
AVERAGE_Q_TIME
CALLBACK_TIME
CALLBACK_DEST
LANGUAGE
NOTE
Description
DNIS of the call
ANI (caller ID) of caller
Agent extension
Time since call entered the ShoreTel System (hh:mm:ss)
Last device connected to the call
Dial Number originally called (typically the IRN)
Current state of the call (connected, hold, and so on)
Current station time (hh:mm:ss)
Dial Number of CO trunk
Time the call waited in the queue
Call type (1=voice, 2=chat, 3=mail, 4=callback,
5=abandoned, 6=Web_callback, 7=dial from list)
Call media (1=voice, 2=chat, 3=email)
Priority of call
Service that handles the call
Identifier number of the customer (if internal, the
Customers Table is used)
Customer name (if internal the Customers Table is used)
Date the call entered the ShoreTel Contact Center Solution
Time the call entered the ShoreTel Contact Center Solution
Call position in the queue
Expected average wait time in the queue
Callback time set by caller (if empty, Abandoned Call)
Callback destination
Language needed for chat-customer
The field names in the call profile are case sensitive.
Call Control Scripts
Call control scripts define the way the system handles ACD calls. The scripts are used
to process calls, present information to callers, prompt them for input, collect input
digits, query the organization’s database, and so on. Call control scripts can be used to:
•
•
•
•
•
•
Make announcements
Collect caller information
Make routing decisions
Provide self-service
Provide music-on-hold
Read and write information to the database
There are two call control script tools available: a graphical call control scripting
application called Graphical Call Control Scripts Director (GCC Scripts Director) and
Call Control Scripts Director (CC Scripts Director). You can create specific scripts from
the set of actions available in the CC Script Director or GCC Script Director.
1–2
ShoreTel, Inc.
CRM Integration Using Call Control Scripts
A call control script contains a set of actions that are performed on a call. You can
change the agent requirements or call flow based on database interactions. Call control
scripts can access external databases based on caller-supplied input. Information from
the database can be used to modify the call routing or play back information to the
caller.
The actions that are defined for a script control the flow of a call (that is, its routed
destination). They can also update the call profile fields that control the call handling
as well as the agent’s display. Some of these actions are logical (for example, Logic
Switch), and some are related to telephony (for example, Transfer). Some actions
obtain information from the organization’s database (for example, SQL Query), while
others require Interactive Voice Response (IVR). When the Contact Center executes
IVR actions, such as Menu, Get Digits, and Play File, the call is automatically
transferred to an available IVR port.
To use call control scripts:
•
•
•
•
•
•
•
Plan the actions you want the call control script to perform.
Identify and connect to an external database and create ODBC queries.
Create any new call profile fields needed by the call control script.
Record the required announcements.
Create the call control scripts using Call Control Scripts Director.
Set IVR application parameters from the IVR Application window.
Set the call control scripts as IRN or service destinations.
Integrating to CRM Databases
To integrate your call control scripts with you customer information, you must first
identify the database, and the columns within the database, that contain the necessary
information.
When integrating with an external database, the ShoreTel Contact Center acts as the
client and uses an ODBC interface on the Contact Center Server to interact with the
database.
NOTE
You must have the appropriate ODBC drivers installed on the Contact Center
Server.
To query or do other database interactions, the Contact Center uses Structured Query
Language (SQL). External databases must be in SQL format to be accessible by the
Contact Center via ODBC.
Integrating to external database require the following steps:
• Ensure that you have a network connection to the external database by confirming
that you can “ping” between the computers.
• Install all needed infrastructure software (OBDC drivers and client side processes)
and create the OBDC connections on Contact Center server.
• Plan the data items you need to gather, define the conditions, and decide where to
put data results.
• Define the Data Source Name (DSN) of the database to which you want to connect
on the Interface tab of the System configuration window.
• Create the SQLConnect and SQLExecute actions in your call control script using
GCCS Director.
— SQLConnect connects to a database in order to make database queries.
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
1–3
CRM Integration Using Call Control Scripts
— SQLExecute sends a query (written as an SQL statement) to the database to
obtain specific information, such as the priority of a caller. For example, the
query may be able to find and retrieve the priority of the caller, enter the call
profile, and update this value.
Call Routing Based on CRM Information
You can use the data in your customer database to route calls to agents who can better
server a particular customer. The following example routes an incoming call based on a
customer type field in the CRM database.
In this scenario, a call arrives at a financial institution and is routed by customer type to
either a group of agents handling stock trades or to a group specializes in bonds. A field
for customer type has been added to the call profile.
The incoming call follows these basic stages:
1
The call arrives at the IRN and is sent to a call control script.
2
The call control script uses the Get Digits action to collect the Customer ID
number and record it to the call profile.
3
The call control script assesses the database in the following interaction:
4
—
Connects to the CRM database using the SQLConnect action.
—
Uses the Query Database action to identify this customer’s data in the
database.
—
Uses the SQLExecute action to retrieve the customer type from the CRM
database and write to the call profile.
The call control script uses the Decision action to check the Customer Type field
and branch to the correct change profile action that sets the required service in
the call profile.
Self-Service Based on CRM Information
You can use the data in your customer database to provide customers with self-serve
options. The application can play back selected .wav files based on the customer status
or convert text digits, currency, or dates into speech. The following example provides a
balance to a self-service customer.
In this scenario, a call arrives at a financial institution and the customer is given the
option of checking his or her account balance. A field for customer balance has been
added to the call profile.
The incoming call follows these basic stages:
1–4
1
The call arrives at the IRN and is sent to a call control script.
2
The call control script uses the Get Digits action to collect the Customer ID
number and records it to the call profile.
ShoreTel, Inc.
CRM Integration Using Call Control Scripts
3
4
The call control script accesses the database in the following interaction:
—
Connects to the CRM database using the SQLConnect action.
—
Uses the Query Database action to identify this customer’s data in the
database.
—
Uses the SQLExecute action to retrieve the customer’s account balance from
the CRM database and write to the call profile.
The call control script uses the Announce action to play back the account
balance to the caller.
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
1–5
CRM Integration Using Call Control Scripts
1–6
ShoreTel, Inc.
C
H
A
P
T
E
R
2
Using Dial Lists for Outbound
Calling
Overview
Enterprise Contact Center can automatically make outbound calls for agents based on
lists of numbers. Calls made from the lists are placed by the system and transferred to
an agent. Working in a mode called preview dialing, the outbound call is only placed
after a free agent is identified to service the call. After the call is placed—while it is
proceeding through the network or ringing—it is transferred to a configured
destination, either the reserved agent or to a call control script.
Since the call is transferred while ringing, ShoreTel recommends that calls only be
transferred to an agent since the script will begin playing any prompts immediately and
the recipient may not hear the first part of a script's prompt or message.
Use the Outbound tab of the System configuration window to define various system
parameters for handling outbound calls.
Configuring the Dial Lists
Dial lists are sets of telephone numbers that are used for outbound calls, according to
rules defined in the system. The Dial Lists configuration window enables you to
configure the system’s rules for the dial lists. The Contact Center allows dialing from
multiple dial lists at the same time.
After the agent receives the call, they can mark the call complete (reached a person) or
incomplete/try later from a button on Agent Toolbar. To prevent incorrect numbers
from staying on the dial list, the agent marks the call incomplete/done. You must define
a location in the database for storing the call results.
You have the option of defining priority for the inbound calls versus the outbound
dialing from a list. You can control the activation of the specific dial list according to:
• Simultaneous pending dial numbers in queue—This is used to control the load of
each dial list when the agents in the specific group related to the dial list campaign
are also active in another group’s activity (such as other dial-lists, inbound or
callback calls).
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
2–1
Using Dial Lists for Outbound Calling
• Statistical TSF conditions—The system will activate the dial list only if the TSF is
equal to or higher than the percentage defined.
Calls automatically dialed from the list can be passed to the agent after the party called
answers, or while the call is in ringing mode. If the called is passed to the agent while in
ring mode, then call status must be set manually by the agent (ring no answer, fax or
answering machine).
External Databases
To use dial lists for outbound dialing campaigns, you must have the dial data in an
ODBC/SQL database.
Integrating to an external database require the following steps:
• Create the physical connection to the external database. Make sure you can ping
between the computers and that they can communicate via the network.
• Install all needed infrastructure software (OBDC drivers and client side processes)
and create the OBDC entries on the ShoreWare Contact Center Server.
• Plan which data items you would like to gather, define the conditions, and decide
where to put them in the call control script.
• Define the Data Source Name (DSN) of the database to which you want to connect
on the Interface tab of the System configuration window.
• Create the SQLConnect and SQLExecute scripts in Call Control Script Director.
— SQLConnect connects to a database in order to make database queries.
— SQLExecute sends a query (written as an SQL statement) to the database to
obtain specific information, such as the priority of a caller. For example, the
query may be able to find and retrieve the priority of the caller, enter the call
profile, and update this value.
Output Source
The system can update the results of the outbound dialing to the external database. The
database must be an ODBC/SQL database.
The updates can be according to:
• Success
• Single failure (still under retries)
• Final failure
To define various parameters for dial lists, use the Interfaces tab of the System
configuration window.
NOTE
2–2
Dial lists should be in the form of a table in an SQL database.
ShoreTel, Inc.
C
H
A
P
T
E
R
3
Automating Agent Activities
Overview
The ShoreTel Contact Center Solution provides interfaces for client-based integrations
with external applications.
The information related to a call is kept in a table called the “call profile.” The call
profile includes all data associated with the call, and is composed of mandatory fields
(such as DNIS, ANI, Initiate Time, and Priority), and user fields (fields which can be
defined and managed by the implements). The call profile originates when the call
enters the ShoreTel system, is accessible and managed during the progress of the call,
and is cleared at call completion.
When a call is routed to an agent, Agent Toolbar uses call profile values to provide the
appropriate notifications to the agent, and offers tools to deliver specific fields to
external applications available at the agent station along with executable commands.
For example, the system may send a command to display the caller’s screen based on
Caller ID (ANI).
The ShoreTel Contact Center Solution supports standard interfaces for integration with
external applications, including DDE, ActiveX, and basic Microsoft prompt commands
(called “triggers”).
The ShoreWare Agent INI File
Each agent in the ShoreTel Contact Center Solution has an INI file that includes the
application setup definitions, and maintains the agent’s personal setup information,
along with other valuable data related to features and customization of the agent
workstation. The file named ETAS.INI is formatted as a standard Windows INI file, and
resides in the agent’s personal folder “XXXX,” where XXXX is the agent ID. All agent
personal folders are located on the shared directory named Agents.
The INI file contains all information necessary for the setup of the agent station. It also
includes information related to actions and data for integrating with external
applications. The integration data appears in the DDE and Triggers paragraphs as
shown in the following example:
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3–1
Automating Agent Activities
[TRIGGERS]
OperateTriggers=1
[TRIG_OnIncoming]
Command=MyApplication.exe %calling %DNIS %Service %callid
[TRIG_OnConnected]
Command=notepad.exe %service.txt
[DDE]
Server=CRM
Topic=Events
[DDE_OnStarted]
Command=started
[DDE_OnReStarted]
Command=restarted
[DDE_OnDenied]
Command=denied %cause
[DDE_OnStoped]
Command=stopped
[DDE_OnLoggedIn]
Command=loggedin %group
[DDE_OnLoggedOut]
Command=loggedout %group
[DDE_OnHeld]
Command=held %callid
[DDE_OnRetrieved]
Command=retrieved %callid
[DDE_OnIncoming]
Command=incoming %callid, %Calltyp, %DNIS, %calling, %Service,
%Priority, %TimeLn
[DDE_OnConnected]
Command=connected %callid, %Calltyp, %DNIS, %calling, %Service,
%Priority, %TimeLn
[DDE_OnConferenced]
Command=conferenced %callid
[DDE_OnReleased]
Command=released
[DDE_OnResumed]
Command=resumed
[DDE_OnWrapUp]
Command=wrapup
[DDE_OnReady]
Command=ready
[DDE_OnCleared]
Command=cleared %callid
For each integration type, there is a list of agent states and the related action (mainly
commands) activated at that state.
The available states are detailed later on the document. The command may include free
text, parameters prefixed by the percentage (%) sign, and control codes. A parameter
3–2
ShoreTel, Inc.
Automating Agent Activities
can be any call profile field name available in the ShoreWare Agent Toolbar Software, in
either the mandatory or user fields.
On state changes, the command related to that state is evaluated and all parameters and
control codes are substituted by their appropriate values.
The following table details the substitution rules:
Parameter/Code
%call_profile_field
\\
\t
\b
\r
\n
\f
\a
\xHH
Substitution Value
Call profile field value
\ (Backslash)
TAB
BACKSPACE
CR
Newline
Formfeed
Alert (Beep)
Character HH (HH= hexadecimal value of character)
Integrating Applications by DDE
the DDE interface provided by the ShoreWare Agent Toolbar Software to external
applications, usually CRM applications.
Introduction
The ShoreWare Agent DDE interface enables external applications to interact with the
ShoreWare Agent Toolbar Software.
The applications can get notifications from the ShoreWare Agent when some important
event occurs, and can control some of the telephony and ACD functions supported by
the ShoreWare Agent Toolbar Software.
For example, an application working as a DDE server and as a DDE client can perform
the following scenario from the application itself:
1
When a call is delivered to an agent and the phone rings, the ShoreWare Agent
connects to the application (working as a DDE server) and invokes an
EXECUTE command on the DDE protocol.
2
The application gets the information and the parameters from the ShoreWare
Agent event. At this time, the application can perform its functions, such as
displaying the customer screen, updating the database, and so on.
3
The application provides a button to the agent to answer the call. When the
agent clicks the button, the application contacts the ShoreWare Agent Toolbar
Software (now working as a DDE server) and invokes an EXECUTE command
on the TEL topic requesting to answer the call.
4
The call is answered and the agent handles the call.
5
The application provides another button to the agent to end the call. When the
agent clicks the button, the application contacts the ShoreWare Agent Toolbar
Software (now working as a DDE server) and invokes an EXECUTE command
on the TEL topic requesting to end the call.
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3–3
Automating Agent Activities
The ShoreTel Contact Center Solution gathers information related to a call from the
moment the call enters the system until it is concluded.
All these information is stored in the call profile.
The ShoreWare Agent Toolbar Software makes all the call profile information available
to the external application.
The ShoreWare Agent Toolbar Software works as a DDE client and DDE server
simultaneously.
First Invocation of the ShoreWare Agent Toolbar Software
Any Windows application can start the ShoreWare Agent Toolbar Software using the
following command line:
EPICAgent.exe 0 AgentId AgentPwd
Where:
0 = the number zero
AgentId = the agent ID number of the agent
AgentPwd = the agent’s password
Configuring the ShoreWare Agent Toolbar Software
The ShoreWare Agent Toolbar Software was designed to provide maximum flexibility
during integration.
When the ShoreWare Agent Toolbar Software works as a DDE client, you may
configure the following general parameters:
1
Server
Name of the server application
2
Topic
Topic to be used by the ShoreWare Agent Toolbar Software when
executing a command on the external application.
3
Command
Command and parameters to send to the application when a
specific event occurs. This command is defined per event type.
The configuration of the commands should be done at the time the system is installed.
Typically, the person installing the ShoreTel Contact Center Solution performs this
configuration.
The ShoreWare Agent Toolbar Software as a DDE Client
The ShoreWare Agent Toolbar Software can execute commands on an external
application when the following events occur:
3–4
1
DDE_OnIncoming: When the call rings at the agent’s station.
2
DDE_OnConnected: When the call is answered by the agent.
3
DDE_OnCleared: The call was terminated.
4
DDE_OnHeld: The current call was held.
5
DDE_OnRetrieved: The call was retrieved from hold.
6
DDE_OnStarted: ShoreWare Agent Toolbar Software starts to work.
7
DDE_OnRestarted: ShoreWare Agent Toolbar Software restarts.
8
DDE_OnDenied: ShoreWare Agent Toolbar Software cannot work.
ShoreTel, Inc.
Automating Agent Activities
The command is a string that will be sent “as is” to the external application. To provide
parameters, the % sign must precede the field name in the Call Profile.
Example
To indicate to a CRM application that a call has been delivered to the agent (and is
ringing), you may use the following command:
[DDE_OnIncomng]
command=Incoming from=%calling group=%acd_group
When a call comes in from number 7410953 to the group called “Sales,” the following
command will be sent to the external application:
Topic=EPICAgent
DDE_Command= DDE_EXECUTE
Command= Incoming from=7410953 group=Sales
NOTE
The following rules apply:
1
All the commands and parameters are not case sensitive.
2
If a parameter requested in the command has no value, a blank will be sent.
3
The structure of the commands and the events is defined for each installation.
The person installing the ShoreWare Agent Toolbar Software performs the agent
configuration.
4
The configuration file is called ETAS.INI and is stored on the ShoreTel Contact
Center Server.
DDE Commands
Event
DDE_OnIncoming
Parameters
Command
DDE_OnConnected
Command
DDE_OnCleared
Command
DDE_OnRelease
DDE_OnResume
DDE_OnWrapUp
DDE_OnReady
Command
Command
Command
Command
Default
Incoming %CallId,
%Calling,%Service,
%Group
Connected %CallId,
%Calling,%Service,
%Group
ConnCleared
%CallId
Released
Resumed
WrapUp
Ready
DDE_OnLogin
DDE_OnLogout
DDE_OnHeld
DDE_OnRetrieved
DDE_OnStarted
Command
Command
Command
Command
None
LoggedIn
LoggedOut
Held %CallId,
Retrieved %CallId,
Started
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
Description
A call is ringing at the
agent phone
The agent answers the
call
The call terminates
Agent was released
Agent was resumed
Agent goes to wrap-up
Agent returns from
wrap-up
Agent logged in
Agent logged out
A call was held
A call was retrieved
Agent Toolbar started
3–5
Automating Agent Activities
DDE_OnRestarted
None
Restarted
DDE_OnDenied
Cause
Denied %cause
Agent Toolbar lost
connection to the
server, and now it is
online again
Agent Toolbar is
unable to work
Possible OnDenied Causes:
Cause
1
Name
LOGGED_ON_TO_ANOTHER_EXT
2
NEW_AGENT_ON_EXT
3
4
5
WRONG_AGENT
WRONG_PASSWORD
MAX_NUM
6
7
FAILED_TO_READ_FROM_DBS
STILL_INITIALIZING
NOTE
Description
Agent already logged in on
another extension
Another agent logged on current
extension
Wrong agent ID supplied
Wrong password
Maximum number of agents in
system is exceeded
Internal error
Agent Toolbar cannot start
because the system is still
initializing
There can be more than one active call at the same time, therefore the values for
the call ID are important.
The ShoreWare Agent Toolbar Software as a DDE Server
When working as a DDE server, the ShoreWare Agent Toolbar Software supports the
following topics:
1
ACD
For ACD-related functions
2
TEL
For all telephony-related functions
3
REQUESTS The application can request information from the ShoreWare
Agent Toolbar Software
4
OTHER
Miscellaneous commands
The ACD Topic
The following commands are invoked using DDE_EXECUTE:
Command name
LoginPrimaryGroups
LogoutFromPrimaryG
roups
LoginGroup
LogoutFromGroup
Release
Resume
Wrapup
AgentReady
3–6
Parameters
None
None
Description
Logs in to all primary groups
Logs out from all primary groups
Group name
Group name
None
None
Wrap-up code
None
Logs in into a specific group
Logs out from a specific group
Makes agent enter “release” state
Makes agent enter “resume” state
Enters wrap-up code
Terminates wrap-up time
ShoreTel, Inc.
Automating Agent Activities
Command name
TransferToAgent
Help
SetCallProfile
Parameters
Agent number
None
Field name, new field
value
Description
Transfers call to specified agent
Help request from supervisor
Sets call profile field value
The following commands are supported using DDE_REQUEST:
Command name
CommandList
NOTE
Parameters
None
Description
Gets a space delimited list of
supported commands for the
topic
The following rules apply:
1
All the parameters are strings.
2
The commands and parameters are not case sensitive.
The TEL Topic
The following commands are invoked using DDE_EXECUTE:
Command name
Alternate
Parameters
None
Answer
HangUp
ClearConnection
None
None
Call ID
Divert
Destination dial
number
Hold
Retrieve
None
None
MakeCall
Destination dial
number
Destination dial
number
None
TransferCall
CompleteTransfer
Conference
CompleteConference
SingleStepTransfer
Reconnect
Destination dial
number
None
Destination dial
number
None
Description
Exchanges between the call on
hold and the active call
Answers the call that is ringing
Terminates the current call
Terminates the call with the
selected Call ID
Diverts the call the desired
destination before answering the
call
Puts the current call on hold
Retrieves a call that was
previously put on hold
Makes an outgoing call
Starts the transfer process
Removes the agent from the call
completing the transfer
Begins a conference call
Complete the conference call
Transfers the current call to
another telephone
Returns the agent to the original
call and terminates the
consultation
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3–7
Automating Agent Activities
The following commands are supported using DDE_REQUEST:
Command name
CommandList
Parameters
None
Description
Gets a space delimited list of
supported commands for the
topic
The REQUEST Topic
The following commands are supported using DDE_REQUEST:
Item name
TopicItemList
Parameters
None
IsPhoneBusy
None
Returns (string)
GETS A SPACE
DELIMITED LIST OF
SUPPORTED ITEMS
FOR THE TOPIC
TRUE or FALSE
HeldCallsCo
unt
GetCpParam
None
Number of calls on hold
Field name
Field value
IsRelease
None
TRUE or FALSE
IsLoggedIn
Group
Name
None
TRUE or FALSE
IsWrapUp
TRUE or FALSE
Description
TRUE if the phone is
busy
Number of calls
currently on hold () or 1
Retrieve the value of a
specific call profile field
TRUE if the agent is in
the release state
TRUE if the agent is
logged in
TRUE if the agent is
currently in wrap-up
time
The OTHER Topic
The following commands are invoked using DDE_EXECUTE:
Command
name
Terminate
Parameters
Description
None
Closes Agent Toolbar
The following commands are supported using DDE_REQUEST:
Command
name
CommandList
3–8
Parameters
Description
None
Gets a space delimited list of supported
commands for the topic
ShoreTel, Inc.
Automating Agent Activities
Integrating Applications by ActiveX
This section provides a simple reference for integrating with the ShoreWare Agent
Toolbar Software using the ActiveX control provided with the ShoreTel Contact Center
Solution. It describes the interface of the control, the available methods, parameters,
and additional information required to perform the integration.
This guide assumes that the programmer is familiar with ActiveX specifications and
use.
The ShoreWare Agent Toolbar Software ActiveX control enables external applications
to use the ShoreWare Agent Toolbar Software to perform telephony and ACD
functionality.
The applications can get events from the ShoreWare Agent Toolbar Software when
some telephony, ACD, and management events occur, and can control the telephony,
ACD, and management functions supported by ShoreWare Agent Toolbar Software.
The following scenario details the process of an incoming call:
1
The moment a call is delivered to an agent and the phone rings, the ShoreWare
Agent Toolbar Software initiates an OnIncoming event to the application.
Standard parameters (Call ID, Call type, DNIS, ANI, Service, Priority, and Time
the call got in) are supplied in the event. Some parameters can be missing.
2
The application can get more call parameters from the ShoreWare Agent Toolbar
Software by getting properties (call profile fields).
3
At this time, the application can perform its functions, including displaying the
customer screen, updating the database, and so on.
4
The application provides a button to the agent to answer the call. When the
agent clicks the button, the application commands the ShoreWare Agent
Toolbar Software (using the answer method) to answer the call.
5
The call is answered, the application gets an OnConnected event, and the agent
handles the call.
6
The application provides another button to the agent to disconnect the call.
When the agent clicks the button, the application commands ShoreWare Agent
Toolbar Software to disconnect the call.
The ShoreTel Contact Center Solution gathers information about a call from the
moment the call enters the system until the call is disconnected. Those parameters are
from the caller’s input (in the IVR), read from the organization’s database, or set in the
process of handling the call. All these information is stored in the call profile.
The ShoreWare Agent Toolbar Software makes all the call profile information available
to the external application.
The call profile fields are either fixed (for example, priority, required service, time the
call entered the system, and so on), or user defined in the ShoreWare Contact Center
Director Software. Both can be used to pass parameters that the ShoreTel Contact
Center Solution can collect and share with the CRM application.
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3–9
Automating Agent Activities
Configuring ShoreWare Agent Toolbar
No configuration is required on ShoreWare Agent Toolbar Software side. All events are
sent, all call profile information is sent on relevant events, and all commands are
enabled. It is the responsibility of the CRM application to ignore what is not required.
Managing ShoreWare Agent Toolbar
The management includes starting the ShoreWare Agent Toolbar Software, as well as
stopping and monitoring the connection state to the ShoreTel Contact Center Server.
The application can start the ShoreWare Agent Toolbar Software using the following
method:
StartEa(AgentNumber AgentPwd)
Where:
AgentNumber: the agent's number
AgentPwd: the agent's password.
The application waits for a response event. There are two possible events:
Event
Started()
Description
The ShoreWare Agent Toolbar Software started
and logged on
Denied(Cause number) Log on was denied by the ShoreTel Contact
Center Server. For list of causes of denial, see
appendix A.
The application can stop the ShoreWare Agent Toolbar Software using the following
method:
StopEa()
No parameters are required.
The Stopped() is the event indicating a successful action.
Monitoring the connection state to the ShoreTel Contact Center Server uses the
Connection lost and Restarted events. When Connection is lost (until a Restarted event
is received), the ShoreWare Agent is Out of Service. No new calls are received, and all
telephony and ACD methods are inoperative while ShoreWare Agent Toolbar Software
is Out of Service.
3 – 10
ShoreTel, Inc.
Automating Agent Activities
ShoreWare Agent Toolbar Events
ShoreWare Agent Toolbar Software sends events to the external application when the
following events occur:
The TEL Events
The following are telephony events:
Command
OnIncoming
OnConnected
OnCleared
OnHeld
OnRetrieved
Parameters
CallId, Calltyp, DNIS, ANI,
Service, Priority, TimeIn
CallId, Calltyp, DNIS, ANI,
Service, Priority, TimeIn
CallId
CallId
CallId
Description
A call is ringing at the agent
phone
The agent answers the call
The call terminates
A call was held
A call was retrieved
The ACD Events
The following are ACD events:
Command
OnLogin
OnLogout
OnRelease
OnResume
OnWrapUp
OnReady
NOTE
Parameters
GroupName
GroupName
Description
Agent logged in
Agent logged out
Agent was released
Agent was resumed
Agent goes to wrap-up
Agent returns from wrap-up
The following rules apply:
1
There can be more than one active call at the same time, therefore the values for
the call ID are important.
2
Calltyp is always set to 0 (inbound voice call).
ShoreWare Agent Toolbar Software Methods (Services)
The ShoreWare Agent Toolbar Software supports the following commands:
• TEL for all telephony-related functions
• ACD for ACD-related functions
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3 – 11
Automating Agent Activities
The TEL Methods
The following are telephony methods:
Command name
Answer
HangUp
MakeCall
ClearConnection
Parameters
None
None
Destination dial number
Call ID
Hold
Retrieve
None
None
Divert
Destination dial number
StartTransfer
CompleteTransfer
Destination dial number
None
SingleStepTransfer
Destination dial number
StartConference
CompleteConference
Alternate
Destination dial number
None
None
Reconnect
None
Description
Answers the ringing call
Clears the current call
Makes an outgoing call
Terminates the call with the
selected Call ID
Puts the current call on hold
Retrieves a call that was
previously put on hold
Diverts the call the desired
destination before answering
the call
Starts the transfer process
Removes the agent from the
call, completing the transfer
Transfers the current call to
another telephone
Begins a conference call
Complete a conference call
Exchanges between the call
on hold and the active call
Returns the agent to the
original call and terminates
the consultation
The ACD Methods
The following are ACD commands:
3 – 12
Command name
LoginPrimaryGroups
LogoutPrimary
Groups
LoginGroup
LogoutFromGroup
ReleaseAgent
ResumeAgent
WrapUpCode
ControlledWrapUp
Parameters
None
None
Description
Logs in to all primary groups
Logs out from all primary groups
Group name
Group name
None
None
WrapUp code
None
AgentReady
TransferToAgent
Help
None
Agent number
None
Logs in to a specific group
Logs out from a specific group
Makes agent unavailable
Makes agent available
Enters wrap-up code
Lets the agent continue in wrap-up mode
until he or she is finished (otherwise a
predetermined period is set by the
administrator)
Terminates the wrap-up time
Transfers call to specified agent
Help request from supervisor
ShoreTel, Inc.
Automating Agent Activities
The Properties (Get Only)
The following is the list of properties:
Item name
ISPHONEBUSY
Parameters
None
HeldCallsCount
None
User or skill
CallProfile field
IsRelease
Call Profile
field name
None
IsLoggedIn
Group
name
None
IsWrapUp
NOTE
Returns
TRUE or FALSE (0 or
1 Long)
Number of calls on
hold (Long)
Field value (String)
TRUE or FALSE (0 or
1 Long)
TRUE or FALSE (0 or
1 Long)
TRUE or FALSE (0 or
1 Long)
Description
TRUE if the phone is
busy
Number of calls
currently on hold
Retrieve the value of a
specific call profile field
TRUE if the agent is in
the release state
TRUE if the agent is
currently in wrap-up
state
All strings are not case sensitive.
Possible OnDenied Causes
Cause
1
Name
LOGGED_ON_TO_ANOTHER_EXT
2
NEW_AGENT_ON_EXT
3
4
WRONG_AGENT
MAX_NUM
5
6
FAILED_TO_READ_FROM_DBS
STILL_INITIALIZING
Description
Agent already logged in on
another extension
Another agent logged on current
extension
Wrong agent ID supplied
Maximum number of agents in
system is exceeded
Internal error
ShoreWare Agent Toolbar
Software can’t start because the
system is still initializing
Type of All Variables
Name
AgentNumber
AgentPwd
Cause number
CallId
Calltyp
DNIS
ANI
Service
Priority
TimeIn
Type
String
String
Long
Long
Long
String
String
String
Long
String
(HH:MM:SS)
Comment
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3 – 13
Automating Agent Activities
Name
GroupName
Destination Dial
number
WrapUp code
Any User field
Any Skill field
Type
String
String
String
String
String
Comment
Fields can be defined in administration
Fields can be defined in administration
All strings are VB strings / BSCR in C language, and are not case sensitive.
Activating Applications by Triggers
This chapter describes the interface, called triggers, provided by the ShoreWare Agent
Toolbar Software to activate external applications available at the agent environment.
Introduction
The ShoreWare Agent Toolbar Software triggers interface enables the activation of
external applications at events (mainly states) of the ShoreWare Agent Toolbar
Software.
When receiving an event (a state change or activity performed by the agent), the
command line related to that event on the INI file is activated.
Configuring the ShoreWare Agent Toolbar Software
The configuration of the ShoreWare Agent Toolbar Software to activate triggers is done
on the triggers area of the ETAS.INI file for the appropriate agent. Initially, the triggers
area appears as follows:
[TRIGGERS]
OperateTriggers=1
To activate the triggers option, OperateTriggers should be set to 1.
Activating an Application
You can activate an application at a specific event by configuring the command for the
appropriate event. For example, if you wanted to activate an application called
“MyApplication.exe” at a call ringing on the agent station, and then pass the
application several parameters related to the call, such as an ANI number, DNIS, and
the called extension, you would set the following commands:
[TRIG_OnIncoming]
Command=MyApplication.exe %calling %DNIS %Service %called
3 – 14
ShoreTel, Inc.
Automating Agent Activities
Activation Events
ShoreWare Agent Toolbar Software can activate a command when the following events
occur:
TRIG_OnStarted
TRIG_OnReStarted
TRIG_OnDenied
TRIG_OnStopped
TRIG_OnLoggedIn
TRIG_OnLoggedOut
TRIG_OnHeld
TRIG_OnRetrieved
TRIG_OnIncoming
TRIG_OnConnected
TRIG_OnConferenced
TRIG_OnReleased
TRIG_OnResumed
TRIG_OnWrapUp
TRIG_OnReady
TRIG_OnCleared
Command Substitution
The command line can include free text and call profile parameters (mandatory and
user fields). For more information, see Chapter 1, “CRM Integration Using Call
Control Scripts.”
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
3 – 15
Automating Agent Activities
3 – 16
ShoreTel, Inc.
A
P
P
E
N
D
I
X
A
Integration Examples
The following examples show possible integrations of ShoreTel Contact Center
Solution with external applications.
Goldmine by DDE
The following example displays the caller file on a Goldmine application once the
phone rings at the agent workstation:
[DDE]
Server=GOLDMINE
ActivateServer=TRUE
Topic=DATA
[DDE_OnIncoming]
Command=[CallerID(%calling,"EpicAgent",1)]
MSAccess by DDE
The following example starts the MSAcess application, activating a database called
“MYDB” when the ShoreWare Agent Toolbar Software starts. On each arriving call, it
opens the caller’s file:
[DDE]
Server=MsAccess
Topic=System
Database=D:\MYDB.mdb
[DDE_OnIncoming]
Command=[OpenForm cust,,, phone = %calling]
[DDE_OnStarted]
Command=[OpenDatabase D:\MYDB.mdb]
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
A–1
Integration Examples
Web Application by Triggers
The following is an example of activating a web application using the Triggers interface.
The application is started in a new Internet Explorer window and shows all activities
related to the calling customer.
[TRIGGERS]
OperateTriggers=1
[TRIG_OnIncoming]
command=start c:\\Program files\\internet explorer\\iexplore.exe
http://www.company.com/HomePages/CmaInternalPage/
1,1564,11,FF.html?EZRu n=1&PersonalID=%calling
Vantive by DDE
The following is an example of displaying the file for the calling customer on a Vantive
application:
[DDE]
Server=Vantive
Topic=System
[DDE_OnIncoming]
Command=maEaXIncoming X%calling
External Application by ActiveX
The following example is the implementation, in Visual Basic 6, of a console that
enables the user to activate the controls of the ShoreWare Agent Toolbar Software.
Events are received in the List window of the console, shown below.
Code of VbController.exe
Private Sub Button_Alternate_Click()
EaX.Alternate
End Sub
Private Sub Button_Answer_Click()
EaX.Answer
End Sub
Private Sub cClearConn_Click()
End Sub
Private Sub Button_CompTrans_Click()
EaX.CompleteTransfer
End Sub
Private Sub Button_Divert_Click()
EaX.Divert Edit_Divert.Text
End Sub
Private Sub Button_Exit_Click()
End
End Sub
Private Sub Button_GetCp_Click()
Edit_CallProfileValue.Text =
EaX.CallProfile(Edit_CallProfileName.Text)
End Sub
A–2
ShoreTel, Inc.
Integration Examples
Private Sub Button_HangUp_Click()
EaX.HangUp
End Sub
Private Sub Button_Hold_Click()
EaX.Hold
End Sub
Private Sub Button_IsLoggedIn_Click()
If EaX.IsLoggedIn(Edit_IsLogInGroupName.Text) = 1 Then
Shape_IsLoggedIn.BackColor = &H80000003
Else
Shape_IsLoggedIn.BackColor = &HFF&
End If
End Sub
Private Sub Button_LogIn_Click()
EaX.LoginGroup Edit_LogInGroupName.Text
End Sub
Private Sub Button_LoginPrim_Click()
EaX.LoginPrimaryGroups
End Sub
Private Sub Button_LogOut_Click()
EaX.LogoutFromGroup eLoGroup.Text
End Sub
Private Sub Button_LogoutPrim_Click()
EaX.LogOutFromPrimaryGroups
End Sub
Private Sub Button_MakeCall_Click()
EaX.MakeCall Edit_MakeCallDestination.Text
End Sub
Private Sub Button_LogOff_Click()
EaX.StopEa
End Sub
Private Sub Button_LogOn_Click()
EaX.StartEa Edit_AgentId.Text, Edit_Password.Text
End Sub
Private Sub Button_CompConf_Click()
EaX.CompleteConference
End Sub
Private Sub Button_Ready_Click()
EaX.AgentReady
End Sub
Private Sub Button_Reconnect_Click()
EaX.Reconnect
End Sub
Private Sub Button_Release_Click()
EaX.ReleaseAgent
End Sub
Private Sub Button_Resume_Click()
EaX.ResumeAgent
End Sub
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
A–3
Integration Examples
Private Sub Button_Retrive_Click()
EaX.Retrieve
End Sub
Private Sub AddToLog(ByVal line As String)
If List.ListCount > 20 Then
List.Clear
End If
List.AddItem line
End Sub
Private Sub Button_SingleStepTransfer_Click()
EaX.SingleStepTransfer Edit_SingleStepTransfer.Text
End Sub
Private Sub Button_StartConf_Click()
EaX.StartConferrence Edit_Conferrence.Text
End Sub
Private Sub Button_StartTrans_Click()
EaX.StartTransfer Edit_Transfer.Text
End Sub
Private Sub Button_TransferToAgent_Click()
EaX.TransferToAgent Edit_TransferTyAgendId.Text
End Sub
Private Sub Button_Wrapup_Click()
EaX.WpapUp Edit_WrapupCode.Text
End Sub
Private Sub EaX_OnCleared(ByVal callid As Long)
AddToLog "Cleared: " + Str(callid)
End Sub
Private Sub EaX_OnConnected(ByVal callid As Long)
AddToLog "Connected: " + Str(callid)
End Sub
Private Sub EaX_OnHeld(ByVal callid As Long)
AddToLog "Held:" + Str(callid)
End Sub
Private Sub EaX_OnIncoming(ByVal callid As Long)
AddToLog "Incoming: " + Str(callid)
End Sub
Private Sub EaX_OnLoggedIn(ByVal group As String)
AddToLog "LoggedIn " + group
End Sub
Private Sub EaX_OnLoggedOut(ByVal group As String)
AddToLog "LoggedOut " + group
End Sub
Private Sub EaX_OnReady()
AddToLog "Ready "
End Sub
Private Sub EaX_OnReleased()
AddToLog "Released"
End Sub
A–4
ShoreTel, Inc.
Integration Examples
Private Sub EaX_OnResumed()
AddToLog "Resumed"
End Sub
Private Sub EaX_OnRetrieved(ByVal callid As Long)
AddToLog "Retrieved " + Str(callid)
End Sub
Private Sub EaX_OnWrapUp()
AddToLog "WrapUp"
End Sub
Private Sub EaX_Started()
AddToLog "Started"
End Sub
Private Sub EaX_Stopped()
AddToLog "Stopped"
End Sub
Private Sub Form_Load()
EaX.Init "Temp"
End Sub
The Control Panel
ShoreTel Contact Center Solution CRM Integration Guide (CCCIG-4.32-01)
A–5
Integration Examples
A–6
ShoreTel, Inc.