Document toolboxDocument toolbox

Generic Connector JTAPI

 

A GC client can call this API to connect with Generic Connector.  

 

Agent Commands

Message types and their expected output are mentioned below.

Input Message

Category

Message Type

Message Parameters

Expected Output

Comments

Input Message

Category

Message Type

Message Parameters

Expected Output

Comments

Send Heartbeat while not logged in

system

Hello#<client_extension>



System Status



Send Heartbeatwhile logged in

system

Beat#<client_destination>



System Status

Not implemented in client yet.

Connect AgentID with Client Unique Name

agent_info

Connect#<agent_login_Id>

<client_destination>,<agent_password>



No response

Agent Login

agent_state

Login#<agent_login_Id>

<agent_password>,<agent_extension>

Agent State, Agent Info



Mobile Agent Login

agent_state

MobileAgentLogin#<agent_login_Id>

<agent_password>,<agent_extension>,<agent_phone>,<connection_mode>

Agent State, Agent Info

Only on UCCE but not tested yet. 
Set connection mode to “true” for “call by call”, “false” for “nailed connection”.

Agent Logout

agent_state

Logout#<agent_login_Id>



Agent State



Make agent ready

agent_state

MakeReady#<agent_login_Id>



Agent State



Make agent not ready

agent_state

MakeNotReady#<agent_login_Id>



Agent State



Get agent current state

agent_state

GetState#<agent_login_Id>



Agent State



Not Ready with reason code

agent_state

MakeNotReadyWithReason#<agent_login_Id>

<agent_reason_code>

Agent State



Make a call

agent_call

MakeCall# <agent_login_Id>

<Other_Party_Extension_Number>

Inbound Call



Answer a call

agent_call

AnswerCall# <agent_login_Id>

<Dialog_ID>

Inbound Call



Hold a call

agent_call

HoldCall#<agent_login_Id>

<Dialog_ID>

Inbound Call



Unhold a call

agent_call

RetrieveCall#<agent_login_Id>

<Dialog_ID>

Inbound Call



Release a call

agent_call

ReleaseCall#<agent_login_Id>

<Dialog_ID>

Inbound Call



Get Agent Wrap-up Reason Codes

agent_work

wrapupreasoncode#<agent_login_Id>



Reason Codes



Get Agent Logout Reason Codes

agent_state

reasoncodelogout#<agent_login_Id>



Reason Codes



Get Agent Not Ready Reason Codes

agent_state

reasoncodenotready#<agent_login_Id>



Reason Codes



Blind Transfer

agent_call

Transfer_sst#<agent_login_Id>

<Other_Party_Extension_Number>,<Dialog_ID>



Used only in UCCE, will update later.

Transfer Initiation

agent_call

ConsultCall#<agent_login_Id>

<Other_Party_Extension_Number>,<Dialog_ID>

Consult Call



Conference Inititation

agent_call

ConsultCall#<agent_login_Id>

<Other_Party_Extension_Number>,<Dialog_ID>

Consult Call



Complete Transfer

agent_call

TransferCall#<agent_login_Id>

<agent_extension>,<Dialog_ID>

Transfer Call



Complete Conference

agent_call

Conferencecall#<agent_login_Id>

<agent_extension>,<Dialog_ID>

Conference Call



Get Dialog State

agent_dialog

getdialogstate#<agent_login_Id>

<Dialog_ID>

Agent Dialog



Update Dialog Wrap-up Codes

agent_dialog

wrapup#<agent_login_Id>

<Wrapup_Reason>,<dialog_id>



No response is received when this event is called.

Logout with Reason

agent_state

logoutwithreason#<agent_login_Id>

<ReasonCode>

Agent State



Abrupt Agent Disconnection

agent_state

force_logout#<agent_login_Id>



Agent State

Had do send this message in backend but the output is same as of in Expected Output

Get Dialog State Controls

agent_dialog

getdialogstatecontrols#<agent_login_Id>

<Dialog_ID>



Not implemented in client yet

Make Work Not Ready

agent_state

makeworknotready#<agentID>





Not implemented in client yet

Make Work Ready

agent_state

makeworkready#<agentID>





Not implemented in client yet

Get Dialog Participants

agent_call

getDialogParticipants#<agent_login_id>

<dialog_id>



Deprecated, Not implemented in client yet

Get Logged in Agents

agent_call

getallagents#<agent_login_id>



Get All Agents



Update Dialog Variable

agent_call

update_call_variable#<agent_login_Id>

<dialog_id>,<variable_name>,<variable_value>



Not implemented in client yet

Pause Zoom Call Recording

zoom

ZOOMPauseRecording#<agent_login_Id>







Resume Zoom Call Recording

zoom

ZOOMResumeRecording#<agent_login_Id>







Refresh

agent_state

refresh#<agent_login_Id>







Get Team and Global Phonebooks

phonebook

GetPhonebooks#<agent_login_id>



Phonebooks



Get Contacts of a Phonebook

contacts

GetPhonebookContacts#<agent_login_id>

<PhonebookID>

Contacts



Accept Outbound Preview Call

agent_call

AcceptOutboundPreview#<agent_login_id>

<dialog_id>,<ACCEPT>

Inbound Call

Pass ACCEPT as a second parameter if you want to accept preview outbound call

Reject Outbound Preview Call

agent_call

RejectOutboundPreview#<agent_login_id>

<dialog_id>,<REJECT>

Inbound Call

Pass REJECT as a second parameter if you want to reject preview outbound call

Close Outbound Preview Call

agent_call

CloseOutboundPreview#<agent_login_id>

<dialog_id>,<CLOSE>

Inbound Call

Pass CLOSE as a second parameter if you want to close preview outbound call

Supervisor Commands

Input Message

Category

Message Type

Message Parameters

Expected Output

Comments

Input Message

Category

Message Type

Message Parameters

Expected Output

Comments

Get Queue Info

supervisor_queue_info

getqueuelist#<agent_login_Id>









Silent Monitor (Supervisor Function)

supervisor_dialog

silentmonitor#<agent_login_Id>

<Agent_Extension>





End Silent Monitor (Supervisor Function)

supervisor_dialog

endsilentmonitor#<agent_login_Id>

<Dialog_ID>





Drop Participant (Supervisor Function)

supervisor_dialog

dropparticipant#<agent_login_Id>

<Agent_Extension>,<Dialog_ID>





Get Team Users (Supervisor Function)

supervisor_team

getteamusers#<agent_login_Id>

<TeamID>,<true>



If you want to get team user and also want to subscribe team events then pass

"<true>" as an extra parameter.

Otherwise just pass 

<TeamID>

Get Team Users State (Supervisor Function)

supervisor_team_member_state

getteamuserstate#<agent_login_Id>

<Team_Agent_LoginID>



Not implemented in client yet

Make a Barge Call

agent_call

bargein#<agent_login_Id>

<Team_Agent_LoginID >,<Dialog_ID>





Admin Commands

Input Message

Category

Message Type

Message Parameters

Expected Output

Comments

Input Message

Category

Message Type

Message Parameters

Expected Output

Comments

Get Team and Global Phonebooks

phonebook

GetPhonebooks#<agent_login_id>



Phonebooks



Get Contacts of a Phonebook

contacts

GetPhonebookContacts#<agent_login_id>

<PhonebookID>

Contacts



Get Team Phonebooks

phonebook

GetTeamPhonebooks#<agent_login_id>



Phonebooks



GC Events

GC events as published by GC after receiving Finesse events:

System Status

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

System





System
{ "type": "System", "status": "OUT_OF_SERVICE" }



status



IN_SERVICE | OUT_OF_SERVICE

Agent Info 

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

AgentInfo





Agent Info
{ "type": "AgentInfo", "firstName": "jehanzeb4", "lastName": "riaz", "supervisor": false, "wrapUpOnIncoming": "", "teams": [], "team": { "id": "7", "name": "Demo" }, "agentId": "jehanzeb4" }



firstName



Agent's first name

lastName



Agent's last name

supervisor

true | false

Is this agent a supervisor?

wrapUpOnIncoming





teams



If the agent is a supervisor, it's an array of all teams. Each element is a team object as defined below. 

team



Agent's team

agentId



Agent ID

Agent State 

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

State





Agent State
{ "type": "State", "agentId": "jehanzeb6", "state": "NOT_READY", "reasonCode": "8", "stateChangeTimeString": "", "pendingState": "", "stateChangeTime": "2019-09-17 12:46:21" }



agentId



Agent ID

State

Agent state

From one of the following agent states: 

UNKNOWN,
READY,
NOT_READY,
LOGOUT,
TALKING,
RESERVED,
RESERVED_OUTBOUND,
RESERVED_OUTBOUND_PREVIEW,
WORK,
WORK_READY,
HOLD

reasonCode



Not Ready reason codes as defined in Finesse

stateChangeTimeString



not used

pendingState



Only available with UCCE and as passed by Cisco Finesse

stateChangeTime

2019-09-17 12:46:21

Date & Time of state change

Inbound Call State

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

InboundCall

Attributes may vary for each type of Call object.



Agent Call



dialogID



Finesse Dialog ID

state



One of the Finesse dialog states

startTime



The start time of the call 

prevDialogId



Finesse Dialog ID

fromAddress



A number from an inbound call is placed

callVariables



A total of 10 call variables as received from Finesse

participants



Participants engaged in the call

agentId



Agent ID

New Outbound Preview Call

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

InboundCall

Attributes may vary for each type of Call object.



Agent Call



dialogID



Finesse Dialog ID

state



One of the Finesse dialog states

startTime



The start time of the call 

prevDialogId



Finesse Dialog ID

fromAddress



A number from an inbound call is placed

callVariables



A total of 10 call variables as received from Finesse

participants



Participants engaged in the call

agentId



Agent ID

New Outbound Call

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

InboundCall

Attributes may vary for each type of Call object.



Agent Call



dialogID



Finesse Dialog ID

state



One of the Finesse dialog states

startTime



The start time of the call 

prevDialogId



Finesse Dialog ID

fromAddress



A number from an inbound call is placed

callVariables



A total of 10 call variables as received from Finesse

participants



Participants engaged in the call

agentId



Agent ID

New Inbound Call

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

NewInboundCall





New Call



dialogID



Finesse Dialog ID

fromAddress



A number from an inbound call is placed

callVariables



A total of 10 call variables as received from Finesse

agentId



Agent ID

Reason Codes 

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

ReasonCodes





Reason Codes



category

WrapUp | LOGOUT | NOT_READY

as passed in the request

reasonCodes



key-value pair of defined reason codes of the specified category

agentId



Agent ID

Consult Call State

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

ConsultCall





Consult Call States



state

INITIATING | INITIATED

state of call

assDialogId



This is an associated Dialog ID.

In case of consult call, dialogId is named as  assDialogId

startTime



Starting Time of call 

fromAddress



A number from which consult call is initiated

toAddress



A number to which the consult call is requested

callVariables



Call Variables in Finesse

participants



Participants engaged in call

agentId



Agent ID

Release Call Output

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

InboundCall





Dropped Call



dialogId



ID of the call

prevDialogId

null

prevDialogId is not null if call is being transferred to another agent

state



state of call

agentId



Agent Id

Complete Conference

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

InboundCall





Complete Conference



dialogId



DialogId is id of the call

state

Active

States in Finnese

startTime



Starting Time of call 

prevDialogId

null

Dialog Id in Finesse

fromAddress



A number from an inbound call is placed

callVariables



 Call Variables in Finesse

participants



Participants engaged in call

agentId



Agent ID

Transfer Call

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

InboundCall





Complete Transfer



dialogId



Dialog Id in Finesse

state

Held

States in Finnese

startTime



Starting Time of call 

prevDialogId

null

Dialog Id in Finesse

fromAddress



A number from an inbound call is placed

callVariables



Call Variables in Finesse

participants



Participants engaged in call

agentId



Agent ID

Get Dialog State

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

DialogState





Dialog State



dialogId



Dialog Id in Finesse

state

INITIATED | ALERTING | ACTIVE | HELD | NOT_FOUND

This is state of the call

agentId



Agent ID

Get All Agents

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

Agents





Get All Agents



users



List of login agents

Get Team User

Attribute

Value

Description

Sample Output

Attribute

Value

Description

Sample Output

type

Agents





Get All Agents



users



List of team user

Phonebooks

Attribute

Value

Description

Sample Output (JSON)

Sample Output (Default)

Attribute

Value

Description

Sample Output (JSON)

Sample Output (Default)

type

object

List of phonebooks









Contacts

Attribute

Value

Description

Sample Output (JSON)

Sample Output (Default)

Attribute

Value

Description

Sample Output (JSON)

Sample Output (Default)

type

object

List of contacts









GC Output Messages



Output Message Name

JMS Type

Message

Category

Comments

O-001

Send Agent State

Nil

<agent_login_Id>#State#<agent_current_state>#<agent_full_name>(old format)
<agent_login_Id>#State#<agent_current_state>#<reasonCodeId>#<agent_full_name>(New format)

agent_state



O-002

Errorindicationmessage

Nil

<agent_login_Id>#Error#<Error_Message>

agent_error

Details of errors can be found here

O-003

Printmessage in agent windowas sent

Nil

<agent_login_Id>#Control#PrintStatusBar#<Message_To_Agent>

agent_control



O-004

System In Service

Nil

System#IN_SERVICE

system



O-005

System Out of Service

Nil

System#OUT_OF_SERVICE

system



O-006

Indication that an agent is logged out - use O-001

Nil

<agent_login_Id>#LOGOUT

agent_state



O-007

Agent not found

Nil

<agent_login_Id>#State#RE_LOGIN

agent_state

a) Indication that an agent is not found in EF Generic Connector.
b) It also indicates that the GC didn't have agent extension in agent structure while checking agent subscription status. GC therefore requests client to RE_LOGIN. This situation may occur when an abnornal failover happens from one GC to the other.

The client should attempt to re-login the agent by sending following requests to GC.
i) I-021, (ii) I-001

O-008

Inbound Call State

Nil

<agent_login_Id>#InboundCall#<Inboundcall_current_state>#DialogID:<dialog_ID>#<agent_full_name> (Old Format)
<agent_login_Id>#InboundCall#<Inboundcall_current_state>#DialogID:<dialog_ID>#<fromAddress>#<CallVariables>#<call_start_time>#<agent_full_name> (New Format)
<agent_login_Id>#InboundCall#FAILED#DialogID:<dialog_ID>#<Failure_Cause>#<agent_full_name> (In case of Call Failed)

agent_call

“#DialogID:<dialog_ID>” is only sent in case of (Failed,Dropped,Deleted,Hold.Held,Wrap_up) <Inboundcall_current_state> will be equal “DROP” in case of (Failed,Dropped,Deleted)
"<CallVariables>" Format: <callvariable1>=value|<callvariable2>=value|<callvariable3>=value|.........
"<call_start_time>": Shows the agent start time in call , Format: "yyyy-MM-dd HH:mm:ss"

O-009

New Inbound Call

Nil

<agent_login_Id>#NewInboundCall#<from_address>#<ani>,<callvariable1,callvariable2,..>#DialogID:<dialog_ID> (Old Format)
<agent_login_Id>#NewInboundCall#<from_address>#<ani>|<callvariable1>=value|<callvariable2>=value|<callvariable3>=value|..>#DialogID:<dialog_ID>(New format)

agent_call



O-010

Indication of a consult call state4

Nil

<agent_login_Id>#ConsultCall#<ConsultCall_current_state>#AssDialogID:<associated_dialog_ID> (Old Format)
<agent_login_Id>#ConsultCall#<ConsultCall_current_state>#AssDialogID:<associated_dialog_ID>#<fromAddress>#<Call_Variable>#<call_start_time>#<agent_full_name> (New Format)
<agent_login_Id>#ConsultCall#FAILED#AssDialogID:<associated_dialog_ID>#<Failure_Cause>#<Agent_Name> (In case of Call Failure)

agent_call

<ConsultCall_current_state> will be equal “DROP”in case of (Failed,Dropped,Deleted)
"<call_start_time>": Shows the agent start time in call , Format: "yyyy-MM-dd HH:mm:ss"

O-011

Agent info upon login

Nil

<agent_login_Id>#AgentInfo#<agent_first_name>#<agent_last_name>#<Is_Supervisor>#<wrap_up_mode>#<agent_full_name>

agent_info

allowed values for wrap_up mode are:
- OPTIONAL
- REQUIRED
- NOT_ALLOWED
- REQUIRED_WITH_ WRAP_UP_DATA

O-012

Supervisor Team Info

Nil

<agent_supervisor_login_Id>#TeamInfoIDs#TeamID#<agent_team_ID_1>,<agent_team_ID_2>,… #<agent_full_name>

supervisor_info



O-013

Supervisor Team Info

Nil

<agent_supervisor_login_Id>#TeamInfoNames#TeamName#<agent_team_name_1>,<agent_team_name_2>,… #<agent_full_name>

supervisor_info



O-014

Get DialogState Reply

Nil

<agent_login_Id>#DialogState#<dialog_state>#<dialog_ID>#<agent_full_name>#<fromAddress>#<Call-Variables>#<associated_dialog_ID>#AssDialogState#<fromAddress>#<Call-Variables>

agent_dialog



O-015

Get Dialog State Controls Reply

Nil

<agent_login_Id>#<dialog_type>#DialogState#<dialog_state>#<dialog_ID>#<agent_full_name>

agent_dialog



O-016

Reason Codes

Nil

<agent_login_Id>#ReasonCodes#Category:<category>#Codes:<code_1>,<code_2>,… #Labels:<label_1>,<label_2>,…#<agent_full_name>

agent_work



O-017

Controls5

Nil

<agent_login_Id>#Control#<control_1_index>,<control_1_visibleFlag>|<control_2_index>, <control_2_visibleFlag>|…

agent_control



O-018

Get Agent State without Agent Controls Reply - Depreciated

Nil

<agent_login_Id>#DialogState#<dialog_state>#<dialog_ID>#<agent_full_name>

agent_state



O-019

Get Queue Info Reply

Nil

<agent_supervisor_login_Id>#QueueList#
QueueName:<queue_1_name>,AgentsNotReady:<queue_1_Number_of_Agents_NotReady>,AgentsReady:<queue_1_Number_of_Agents_Ready>,
AgentsTalkingInbound:<queue_1_number_of_agents_talking_inbound>,AgentsTalkingInternal:<queue_1_number_of_agents_talking_internal>,
AgentsTalkingOutbound:<queue_1_number_of_agents_talking_outbound>,AgentsWrapUpNotReady:<queue_1_number_of_agents_in_wrapup_notready>,
AgentsWrapUpReady:<queue_1_number_of_agents_in_wrapup_ready>,CallsInQueue:<queue_1_Number_of_CallsInQueue>,
StartTimeOfLongestCallInQueue:<queue_1_startTimeOfLongestCallInQueue>#...#
QueueName:<queue_n_name>,AgentsNotReady:<queue_n_Number_of_Agents_NotReady>,AgentsReady:<queue_n_Number_of_Agents_Ready>,
AgentsTalkingInbound:<queue_n_number_of_agents_talking_inbound>,AgentsTalkingInternal:<queue_n_number_of_agents_talking_internal>,
AgentsTalkingOutbound:<queue_n_number_of_agents_talking_outbound>,AgentsWrapUpNotReady:<queue_n_number_of_agents_in_wrapup_notready>,
AgentsWrapUpReady:<queue_n_number_of_agents_in_wrapup_ready>,CallsInQueue:<queue_n_Number_of_CallsInQueue>,
StartTimeOfLongestCallInQueue:<queue_n_startTimeOfLongestCallInQueue>

supervisor_queue_info

O-020

Get Team Users Reply (Supervisor Function)

Nil

<agent_supervisor_login_Id>#TeamUsersList#FirstName:<user_1_firstName>,LastName:<user_1_lastName>,Extension:<user_1_extension>,
LoginID:<user_1_loginID>,State:<user_1_state>,PendingState:<user_1_pendingState>,MediaType:<user_1_mediaType>,StateChangeTime:<user_1_stateChangeTime>#
FirstName:<user_2_firstName>,LastName:<user_2_lastName>,Extension:<user_2_extension>,LoginID:<user_2_loginID>,State:<user_2_state>,
PendingState:<user_2_pendingState>,MediaType:<user_2_mediaType>,StateChangeTime:<user_2_stateChangeTime>#
FirstName:<user_n_firstName>,LastName:<user_n_lastName>,Extension:<user_n_extension>,LoginID:<user_n_loginID>,State:<user_n_state>,
PendingState:<user_n_pendingState>,MediaType:<user_n_mediaType>,StateChangeTime:<user_n_stateChangeTime>

supervisor_team



O-021

Team Member State Changed
(Supervisor Function)

Nil

<agent_supervisor_login_Id>#TeamMemberStateChanged#<teamID>#<agent_state>

supervisor_team_member_state

O-022

Conference Participants
(Supervisor Function)

Nil

<agent_supervisor_login_Id>#ConferenceParticipants#<extension_1>,<extension_2>,…

supervisor_dialog

O-023

Reconnect Agent - Depreciated

{Request_JMS_Type}

<agent_login_id>#RECONNECT#{Request_message_text}

agent_state

If generic connector receives request from driver for the agent that doesn't exist in GC side, Reconnect request would be sent to driver.  Alongwith this Reconnect request, data of previous command will also be sent to execute after successfull enrollment of agent. Upon receiving this reconnect request, Driver will send 'Connect' and 'GetState' request to GC to register agent. After this, Driver will send actual command (that was returned with Reconnect request) to execute.

O-024

Dialog IDs on Failover 



<agent_login_id>#DialogStatus#DialogID#DialogState#AssDialogID#AssDialogState
<agent_login_id>#DialogStatus#<dialog_ID>#DialogState#<fromAddress>#<Call-Variables>#<associated_dialog_ID>#AssDialogState#<fromAddress>#<Call-Variables>

agent_state

In the case of failover GC sends the Dialog ID and Associated Dialog ID, with states and call type in JMS type

O-025

AgentState on Connector Sync

Nil

AgentState#<Agent_Id>#<Agent_Password>#<Agent_Extension>#<SubscriptionTime>

connector_sync

On topic "ConnectorSync", the message is sent from one GC to the other.

O-026

Reconnect Destination

Nil

DESTINATION#<Destination_Name>#RECONNECT

agent_state

This new type is now for Destination events
System events have "SYSTEM" as the first keyword to identify the event
Agent events (which currently include call events also) are identified by <Agent_ID>

Destination events will now be identified by "DESTINATION". There wasn't any destination event in the system before
<Destination_Name> refers to the destination which is created. 

O-027

System Not Reachable

Nil

System#NOT_REACHABLE

system



O-028

New Outbound Call

Nil

<agent_login_Id>#NewOutboundCall#<from_address>#ani=<ani>|<callvariable1>=value|<callvariable2>=value|<callvariable3>=value|..>#DialogID:<dialog_ID>

agent_call

BA Call variables List (Passed as it is to the GC Client)
-BACampaign
-BAStatus
-BAResponse
-BAAccountNumber
-BADialedListID
-BACampaignID
-BACustomerNumber
-BATimeZone
-BABuddyName
GC Receives two packets from finesse when an outbound call is dialed. GC blocks first packet, as it has some missing information like dialled number, outbound call variables and call type of this packet is OTHER_IN. The second packet contains all the required infromation, hence GC generates NewOutboundCall event for the client.

O-29

Get Phonebooks (Administrator Function)

Nil

Phonebooks#name:<phonebook_1_name>,type:<phonebook_1_type>,id:<phonebook_1_id>
#name:<phonebook_2_name>,type:<phonebook_2_type>,id:<phonebook_2_id> #.......
#name:<phonebook_n_name>,type:<phonebook_n_type>,id:<phonebook_n_id>





O-30

Get Team Phonebooks (Administrator Function)

Nil

TeamPhoneBooks#name:<phonebook_1_name>,type:<phonebook_1_type>,id:<phonebook_1_id>
#name:<phonebook_2_name>,type:<phonebook_2_type>,id:<phonebook_2_id>#.......
#name:<phonebook_n_name>,type:<phonebook_n_type>,id:<phonebook_n_id>





O-31

Get PhoneBook Contacts

(Administrator Function)

Nil

PhonebookContacts#description:<contact_1_description>,firstName:<contact_1_firstName>,lastName:<contact_1_lastName>,phoneNumber:<contact_1_phoneNumber>,id:<contact_1_id>
#description:<contact_2_description>,firstName:<contact_2_firstName>,lastName:<contact_2_lastName>,phoneNumber:<contact_2_phoneNumber>,id:<contact_2_id>#.......
#description:<contact_n_description>,firstName:<contact_n_firstName>,lastName:<contact_n_lastName>,phoneNumber:<contact_n_phoneNumber>,id:<contact_n_id>





Errors

Error_Code

Error_Origin

Error Description

Expected Driver Behaviour



CF_INVALID_CALLED_DEVICE

Finesse

The called device is not valid

display the error message and continue regular operations



CF_INVALID_CALLING_DEVICE

Finesse

The calling device is not valid

display the error message and continue regular operations



CF_INVALID_CONNECTION_ID_FOR_ACTIVE_CALL

Finesse

The active connection ID in the request is invalid

display the error message and continue regular operations



CF_INVALID_CONSULT_TYPE

Finesse

The consult type is invalid

display the error message and continue regular operations



CF_AGENT_ACCOUNT_LOCKED_OUT

Finesse

The account is locked out

display the error message and continue regular operations



CF_INVALID_CSTA_DEVICE_IDENTIFIER

Finesse

The device ID is not valid.

display the error message and ask user to enter valid Extension



CF_RESOURCE_BUSY

Finesse

An internal resource is busy





CF_INVALID_LOGON_DEVICE_SPECIFIED

Finesse

The request specified an invalid logon device.

display the error message and ask user to enter valid Extension



CF_GENERIC_UNSPECIFIED_REJECTION

Finesse

The request has been rejected (no specific details available).





CF_INVALID_OBJECT_STATE

Finesse

The object is in the incorrect state for the request.





CF_INVALID_PASSWORD_SPECIFIED

Finesse

The request specified an invalid agent password.

Prompt user to supply a valid password



CF_GENERIC_SYSTEM_RESOURCE_AVAILABILITY

Finesse

        

The request failed due to lack of system resources (no specific details available)

Ref: http://www.cisco.com/en/US/docs/voice_ip_comm/cust_contact/contact_center/crs/express_10_0/programming/guide/UCCX_BK_C239BA3D_00_cti-protocol-developer-guide_chapter_01010.html

E_CTI_INVALID_CALLID

Finesse

A request message was received with an invalid CallID value.





USER_NOT_FOUND

Finesse

When Agent ID isn't found in Finesse

Display the error message
Configuration update in Siebel / Finesse is required to match Agent definition (ID/Pwd).
Driver/client app should show the error message

GENERAL_ERROR

Finesse

when root cause is unclear

display the error message and continue regular operations



CF_GENERIC_OPERATION

Finesse

An operation error occurred (no specific details available).

display error message according to the last command sent



BAD_DESTINATION

Finesse

Agent called to an invalid extension

display the error message and continue regular operations



DOWN

GC

IOException
When Requester gets no response from Finesse
GC tries to establish connection with the secondary Finesse

display the error message and continue regular operations



LICENSES_EXCEEDED

GC

User license limit exceeded 

display the error message



MISSING_EXTENSION

GC

Missing Extension

display the error message and ask user to enter extension



MISSING_NUMBER

GC

Number to dial is missing in request

display the error message and ask user to enter dial number



MISSING_PASSWORD

GC

Password is missing in request

display the error message and ask user for credentials



MISSING_REASON_CODE

GC

GC/Finesse expects reason-code that wasn't provided by the client

display the error message and ask user to provide reason code



NO_DIALOG_ID

GC

The requested dialog doesn't exists in GC 

send getdialogstate request for any active dialogs



NOT_REACHABLE

GC

SocketTimeoutException
Timeout exception on connecting to Finesse via Requester
After 2 unsuccessful retries, GC tries to establish connection with secondary Finesse

display the error message and continue regular operations



PLEASE_RETRY

GC

invalid request params, IOException, request timeout

display the error message and continue regular operations



SUBSCRIPTION_FAILED

GC

Invalid credentials supplied for agent login

display the error message and ask user to enter valid credentials



UNABLE_TO_SUBSCRIBE_TO_FINESSE

GC

Invalid credentials supplied for agent login

display the error message and ask user to enter valid credentials



WRONG_EXTENSION

GC

Extension is not valid (contains alphabetic characters)

display the error message and ask user to enter valid Extension



SESSION_INVALIDATED

GC

The current session session for login has been invalidate, user has been logged in from a new destination. GC will send a logout message followed by this message

display the error message and ask user to login again



Note: Some of the error from finesse are mentioned here. Rest of the Finesse errors can be found in this document on page 17: https://drive.google.com/open?id=0B0txXw8kofb1blBxenFmcHBWcms

User Messages

Message

Description

Error#LICENSES_EXCEEDED

License exceeded, please contact system administrator.

Error#SUBSCRIPTION_FAILED

Invalid LoginId / Password.

Error#MISSING_EXTENSION

Extension is missing.

Error#MISSING_PASSWORD

Password not set, please contact system administrator.

Error#CF_INVALID_LOGON_DEVICE_SPECIFIED

Incorrect phone extension.

Error#CF_GENERIC_UNSPECIFIED_REJECTION

Please reset your phone and try again

Error#CF_RESOURCE_BUSY

Phone extension is already in use

Error#FINESSE_UNAVAILABLE

System is not available, it will connect automatically once available.

Error#GENERIC_ERROR

An error occurred, please try again later.

Error#PLEASE_RETRY

An error occurred, please try again later.

Error#NO_DIALOG_ID

Invalid operation or call not found.

State#RE_LOGIN

Reconnecting, please wait...

State#LOGOUT

You are Logged out

State#LOGGED_IN

You are Logged in

State#READY

Your State: Ready

State#NOT_READY

Your State: Not Ready

State#RESERVED

Your are Reserved, an inbound call is coming.

State#TALKING

You are talking.

State#WORK

Wrap up -> Not Ready

State#WORK_READY

Wrap up -> Ready

State#UNKNOWN

An error occurred, please refresh your browser.

State#HOLD

Call is on hold.

InboundCall#INITIATING

Call is initiated..

InboundCall#INITIATED



InboundCall#ALERTING

Call is ringing..

InboundCall#ACTIVE

Call is active..

InboundCall#FAILED

Call has failed..

InboundCall#DROP

Call has been released..

InboundCall#ACCEPTED

Call is accepted..

ConsultCall#ACTIVE

Consult call is active..

ConsultCall#INITIATING



ConsultCall#INITIATED



ConsultCall#ALERTING

Consult call is ringing..

ConsultCall#FAILED

Consult call has failed..

ConsultCall#DROP

Consult call has dropped.