Breadcrumbs

Generic Connector JSON API


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

    Agent Commands Print Message

    Supervisor Commands

    Admin Commands Queue Name

    GC Events System Status System SUBSCRIPTION_FAILED System Connect Status System Agent Info Agent Info Agent State Agent State Agent State Inbound Call State Agent Call New Outbound Call State Agent Call New Outbound Preview Call State Agent Call New Inbound Call New Call Reason Codes Reason Codes Consult Call State Consult Call States Release Call Output Dropped Call Complete Conference Complete Conference Transfer Call Complete Transfer Get Dialog State Dialog State Get All Agents Get All Agents Get Team User Get All Agents Get Queue List GetQueueInfo Phonebooks Team Phonebooks Contacts Print Message Participant Drop Message CallBack Message Reclassify Message No Data Found Message Get Skill Groups Get All Agents Get Supervisor List Get All Agents Get Agent Extension Get All Agents

    Errors

      REST JSON Format

      We will use this specific format for GC REST Commands and Events for JSON API Click here for the data format

      Agent Commands

      Message types and their expected output are mentioned below.

      Input Message

      Category

      Message Type

      Message Parameters

      Expected Output

      Comments

      Send Heartbeat while not logged in

      system

      Hello#<client_destination>

      For Rest Command

      {
        "data": {
          "type": "HELLO#<client_destination>",
          "body": "null",
          "sessionUrl": "<sessionUrl>",
          "callbackFqdn": "<callbackFqdn>",
          "callbackEndpoint": "<callbackEndpoint>"
        }
      }




      System Status


      Send Heartbeatwhile logged in

      system

      Beat#<client_destination>


      System Status


      Connect AgentID with Client Unique Name

      agent_info

      Connect#<agent_login_Id>

      For Rest Command

      {
      "data": {
      "type": "Connect#<agent_login_Id>",
      "body": "<client_destination>,<agent_password>",
      "sessionUrl": "<sessionUrl>",
      "callbackFqdn": "<callbackFqdn>",
      "callbackEndpoint": "<callbackEndpoint>"
      }
      }

      <client_destination>,<agent_password>


      If SSO enabled

      <client_destination>,<agent_password>,<SSO>

      Connect Status

      SUBSCRIPTION_FAILED

      No response

      Note

      We will pass SSO as a third parameter if the user is SSO Enabled, otherwise, we will send two parameters as we are sending previously

      Agent Login

      agent_state

      Login#<agent_login_Id>

      For Rest Command

      {
      "data": {
      "type": "Login#<agent_login_Id>",
      "body": "<agent_password>,<agent_extension>",
      "sessionUrl": "<sessionUrl>"
      }
      }

      <agent_password>,<agent_extension>

      Agent State, Agent Info

      Dialog State,


      Mobile Agent Login

      agent_state

      MobileAgentLogin#<agent_login_Id>

      For Rest Command

      {
      "data": {
      "type": "MobileAgentLogin#<agent_login_Id>",
      "body": "<agent_password>,<agent_extension>,<agent_phone>,<connection_mode>",
      "sessionUrl": "<sessionUrl>"
      }
      }

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

      Agent State, Agent Info

      Dialog State,

      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

      Supervisor Command

      Make agent ready

      agent_state

      MakeReady#<agent_login_Id>


      Agent State


      Make agent not ready

      agent_state

      MakeNotReady#<agent_login_Id>


      Agent State

      Supervisor Command

      Get agent current state

      agent_state

      GetState#<agent_login_Id>


      Agent State

      Dialog 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>

      Agent State

      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

      Agent State


      Unhold a call

      agent_call

      RetrieveCall#<agent_login_Id>

      <Dialog_ID>

      Inbound Call

      Agent State


      Release a call

      agent_call

      ReleaseCall#<agent_login_Id>

      <Dialog_ID>

      Inbound Call

      Agent State


      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>

      Agent State

      Inbound Call

      Consult Call

      Inbound Call

      New Inbound Call

      Consult Call

      For UCCX

      Inbound Call

      Agent State

      New Inbound Call


      Used only in UCCE, will update later.

      Consult Call

      agent_call

      ConsultCall#<agent_login_Id>

      <Other_Party_Extension_Number>,<Dialog_ID>

      Consult Call


      Consult Initiation

      agent_call

      ConsultCall#<agent_login_Id>

      <Other_Party_Extension_Number>,<Dialog_ID>

      Consult Call


      Consult 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>

      Dialog State


      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 yet

      Make Work Not Ready

      agent_state

      makeworknotready#<agentID>




      Make Work Ready

      agent_state

      makeworkready#<agentID>




      Get Dialog Participants

      agent_call

      getDialogParticipants#<agent_login_id>

      <dialog_id>



      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>

      Inbound Call

      Will receive this InboundCall event with updated call variables

      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 Team Phonebooks

      team_phonebooks

      GetTeamPhonebooks#<agent_login_id>

      <TeamID>

      TeamPhonebooks


      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>

      Before Call Accepted

      Agent State (RESERVED)

      Agent State

       (RESERVED_OUTBOUND_PREVIEW)

      NewOutboundPreviewCall

      Inbound Call(ACTIVE)

      Inbound Call(ACTIVE)

      After Call Accepted

      Inbound Call(ACCEPTED)

      Inbound Call(INITIATING)

      Inbound Call(DROPPED)

      Inbound Call(INITIATING)

      Inbound Call(INITIATED)

      Print Message

      Inbound Call(ACTIVE)


      Call Type (OUTBOUND)


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

      Reject Outbound Preview Call

      agent_call

      RejectOutboundPreview#<agent_login_id>

      <dialog_id>,<REJECT>

      Before Call Rejected

      Agent State (RESERVED)

      AgentState(RESERVED_OUTBOUND_PREVIEW)

      NewOutboundPreviewCall

      Inbound Call(ACTIVE)

      Inbound Call(ACTIVE)

      After Call Rejected

      Inbound Call(ACTIVE)

      Inbound Call(DROPPED)

      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>

      Before Call Closed

      Agent State (RESERVED)

      Agent State (RESERVED_OUTBOUND_PREVIEW)

      NewOutboundPreviewCall

      Inbound Call(ACTIVE)

      Inbound Call(ACTIVE)

      After Call Closed

      Inbound Call(ACTIVE)

      Inbound Call(DROPPED)

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

      Outbound Progressive Call

      agent_call

      AnswerCall# <agent_login_Id>

      <Dialog_ID>

      Agent State (RESERVED)

      Agent State (RESERVED_OUTBOUND)

      NewOutboundCall

      Print Message

      Inbound Call

      Call Type (OUTBOUND)


      Outbound Predictive Call

      gent_call

      AnswerCall# <agent_login_Id>

      <Dialog_ID>

      Agent State (RESERVED)

      Agent State (RESERVED_OUTBOUND)

      NewOutboundCall

      Print Message

      Inbound Call

      Call Type (OUTBOUND)


      Schedule a callback call

      agent_call

      SHCEDULECALLBACK#<agent_login_id>

      <targetMediaAddress>,<dialog_id>,<callbackTime>,<callbackNumber>

      Print Message

      Inbound Call

      Callback scheduled

      Print Message

      Inbound Call

      Call Type (OUTBOUND)


      Update a callback call

      agent_call

      UPDATECALLBACK#<agent_login_id>

      <targetMediaAddress>,<dialog_id>,<callbackTime>,<callbackNumber>

      Print Message

      Inbound Call

      Callback Updated

      Print Message

      Inbound Call

      Call Type (OUTBOUND)


      Cancel the scheduled callback call

      agent_call

      CANCELSHCEDULECALLBACK#<agent_login_id>

      <targetMediaAddress>,<dialog_id>

      Callback Canceled

      Print Message

      Inbound Call

      Call Type (OUTBOUND)


       Reclassify an outbound direct preview call

      agent_call

      RECLASSIFYCALL#<agent_login_id>

      <targetMediaAddress>,<dialog_id>,<Value>

      Reclassify Created

      Print Message

      Inbound Call


      Accept the personal callback call

      agent_call

      AcceptOutboundPreview#<agent_login_id>

      <dialog_id>,<ACCEPT>

      Before Call Accepted

      Agent State (RESERVED)

      Agent State (RESERVED_OUTBOUND_PREVIEW)

      NewOutboundPreviewCall

      Inbound Call(ACTIVE)

      Inbound Call(ACTIVE)

      After Call Accepted

      Inbound Call(ACCEPTED)

      Inbound Call(INITIATING)

      Inbound Call(DROPPED)

      Inbound Call(INITIATING)

      Inbound Call(INITIATED)

      Print Message

      Inbound Call(ACTIVE)


      Call Type (OUTBOUND)


      Reject the personal callback Call

      agent_call

      RejectOutboundPreview#<agent_login_id>

      <dialog_id>,<REJECT>

      Before Call Rejected

      Agent State (RESERVED)

      Agent State (RESERVED_OUTBOUND_PREVIEW)

      NewOutboundPreviewCall

      Inbound Call(ACTIVE)

      Inbound Call(ACTIVE)

      After Call Rejected

      Inbound Call(ACTIVE)

      Inbound Call(DROPPED)


      Get Skill Group List

      skill_group

      GETSKILLGROUP#<agent_login_id>

      If you want All skill groups

      <ALL>,<0>,<0>

      If you want Indexing of skill groups

      <INDEXING>,<1>,<25>

      SkillGroup

      Implemented only for UCCE

      Get Supervisor List

      supervisor_list

      GETSUPERVISOR#<agent_login_id>


      SupervisorList

      Implemented only for UCCE

      Get Agent Extension

      agent_extension

      GETAGENTEXTENSION

      #<agent_login_id>

      <F_Number>

      AgentExtension

      Implemented only for UCCE

      Supervisor Commands

      Input Message

      Category

      Message Type

      Message Parameters

      Expected Output

      Comments

      Get Queue Info

      supervisor_queue_info

      getqueuelist#<agent_login_Id>


      QueueInfo



      Silent Monitor (Supervisor Function)

      supervisor_dialog

      silentmonitor#<agent_login_Id>

      <Agent_Extension>

      On Supervisor

      Inbound Call

      On Agent

      New Inbound Call

      Inbound Call


      End Silent Monitor (Supervisor Function)

      supervisor_dialog

      endsilentmonitor#<agent_login_Id>

      <Dialog_ID>

      Inbound Call


      Drop Participant (Supervisor Function)

      supervisor_dialog

      dropparticipant#<agent_login_Id>

      <Agent_Extension>,<Dialog_ID>

      Agent State

      Print Message


      Get Team Users (Supervisor Function)

      supervisor_team

      getteamusers#<agent_login_Id>

      <TeamID>,<true>

      Get Team User

      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_Extension>,<Dialog_ID>

      Inbound Call


      Agent Logout

      agent_state

      Logout#<agent_login_Id>


      Agent State


      Make agent not ready

      agent_state

      MakeNotReady#<agent_login_Id>


      Agent State


      Admin Commands

      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>

      <TeamID>

      TeamPhonebooks


      Queue Name

      The queue name is received every time an agent consults/transfers/conferences with another agent, but on the Alerting event, the queue name remains empty & on the Answering event it shows the value in the queue name.
      On answering the call but not on alerting event{}
      Queue name appears in all below cases for CCE 12.6
      Extension:
      Consult. 
      Consult-Transfer.
      Direct-Transfer.
      Consult-Conference
      Queue DN
      Consult.
      Direct-Transfer.
      Consult-Transfer.
      Consult-Conference

      GC Events

      GC events as published by GC after receiving Finesse events:

      System Status

      Attribute

      Value

      Description

      Sample Output

      type

      System



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


      status


      IN_SERVICE | OUT_OF_SERVICE

      SUBSCRIPTION_FAILED

      Attribute

      Value

      Description

      Sample Output

      type

      Error



      System
      JavaScript
      {
        "type": "Error",
        "errorType": "SUBSCRIPTION_FAILED || Unauthorized",
        "errorMessage": "Invalid Credentials"
      } 
      


      Connect Status

      Attribute

      Value

      Description

      Sample Output

      type

      ConnectStatus



      System
      JavaScript
      {
        "type": "ConnectStatus",
        "status": "ConnectSuccess"
      } 
      


      status


      ConnectSuccess

      Agent Info 

      Attribute

      Value

      Description

      Sample Output

      type

      AgentInfo



      Agent Info
      JavaScript
      {
        "type": "AgentInfo",
        "firstName": "jehanzeb4",
        "lastName": "riaz",
        "supervisor": false,
        "wrapUpOnIncoming": "",
        "totalNumberOfTeams": "",
        "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



      totalNumberOfTeams


      Total numbers of teams

      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 Agent

      Sample Output Supervisor

      type

      State



      Agent State
      JavaScript
      {
        "type": "State",
        "agentId": "jehanzeb6",
        "state": "NOT_READY",
        "reasonCode": "8",
        "stateChangeTimeString": "",
        "pendingState": "",
        "stateChangeTime": "2019-09-17 12:46:21",
        "fullName": "jehanzeb Riaz",
        "extension": "42801",
        "label": "Break"
       }
      



      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


      Agent State
      JavaScript
      {
        "type": "State",
        "teamAgentId": "jehanzeb6",
        "state": "NOT_READY",
        "reasonCode": "8",
        "stateChangeTimeString": "",
        "pendingState": "",
        "stateChangeTime": "2019-09-17 12:46:21",
        "fullName": "jehanzeb Riaz",
        "extension": "42801",
        "label": "Break",
      "agentId": "jehanzeb6"
        }
      


      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


      fullName


      Agent full name


      extension


      Agent's extension


      label

      break

      state change label


      Inbound Call State

      Attribute

      Value

      Description

      Sample Output

      type

      InboundCall

      Attributes may vary for each type of Call object.


      Agent Call
      {
        "type": "InboundCall",
        "dialogId": "16871253",
        "state": "INITIATED",
        "startTime": "2019-09-17 15:32:15",
        "associatedDialogId": null,
        "fromAddress": "4012",
        "callVariables": [
          {
            "callVariable1": ""
          },
          {
            "callVariable2": ""
          },
          {
            "callVariable3": ""
          },
          {
            "callVariable4": ""
          },
          {
            "callVariable5": ""
          },
          {
            "callVariable6": ""
          },
          {
            "callVariable7": ""
          },
          {
            "callVariable8": ""
          },
          {
            "callVariable9": ""
          },
          {
            "callVariable10": ""
          },
          {
            "ani": "4012"
          }
        ],
        "participants": [
          {
            "mediaAddress": "1006",
            "state": "INITIATED",
            "addressType": "AGENT_DEVICE",
      	  "stateCause": "",
       	  "stateChangeTime": "2019-09-17 12:46:21"
           }
        ],
        "callType": "",
        "queueName":"hassnain_SG",
        "agentId": "jehanzeb6"
      }
      


      dialogID


      Finesse Dialog ID

      state


      One of the Finesse dialog states

      startTime


      The start time of the call 

      associatedDialogId


      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

      callType


      Call type

      agentId


      Agent ID

      queueName


      Queue Name


      New Outbound Call State

      Attribute

      Value

      Description

      Sample Output

      type

      OutboundCall

      Attributes may vary for each type of Call object.


      Agent Call
      {
        "type": "NewOutboundCall",
        "dialogId": "16871253",
        "fromAddress": "4012",
        "callVariables": [
          {
            "callVariable1": ""
          },
          {
            "callVariable2": ""
          },
          {
            "callVariable3": ""
          },
          {
            "callVariable4": ""
          },
          {
            "callVariable5": ""
          },
          {
            "callVariable6": ""
          },
          {
            "callVariable7": ""
          },
          {
            "callVariable8": ""
          },
          {
            "callVariable9": ""
          },
          {
            "callVariable10": ""
          },
          {
            "ani": "4012"
          }
        ],
      "participants": [
          {
            "mediaAddress": "1006",
            "state": "INITIATED",
            "addressType": "AGENT_DEVICE",
      	  "stateCause": "",
       	  "stateChangeTime": "2019-09-17 12:46:21"
           }
        ],
        "callType": "",
        "queueName":"hassnain_SG", 
        "agentId": "jehanzeb6"
      }
      


      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

      callType


      Call type

      agentId


      Agent ID

      queueName


      Queue Name


      New Outbound Preview Call State

      Attribute

      Value

      Description

      Sample Output

      type

      OutboundCall

      Attributes may vary for each type of Call object.


      Agent Call
      {
        "type": "NewOutboundPreviewCall",
        "dialogId": "16871253",
        "fromAddress": "4012",
        "callVariables": [
          {
            "callVariable1": ""
          },
          {
            "callVariable2": ""
          },
          {
            "callVariable3": ""
          },
          {
            "callVariable4": ""
          },
          {
            "callVariable5": ""
          },
          {
            "callVariable6": ""
          },
          {
            "callVariable7": ""
          },
          {
            "callVariable8": ""
          },
          {
            "callVariable9": ""
          },
          {
            "callVariable10": ""
          },
          {
            "ani": "4012"
          }
        ],
      "participants": [
          {
            "mediaAddress": "1006",
            "state": "INITIATED",
            "addressType": "AGENT_DEVICE",
      	  "stateCause": "",
       	  "stateChangeTime": "2019-09-17 12:46:21"
           }
        ],
        "callType": "",
        "queueName":"hassnain_SG", 
        "agentId": "jehanzeb6"
      }
      


      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

      callType


      Call type

      agentId


      Agent ID

      queueName


      Queue Name

      New Inbound Call

      Attribute

      Value

      Description

      Sample Output

      type

      NewInboundCall



      New Call
      {
        "type": "NewInboundCall",
        "dialogId": "16871263",
        "fromAddress": "1006",
        "callVariables": [
          {
            "callVariable1": ""
          },
          {
            "callVariable2": ""
          },
          {
            "callVariable3": ""
          },
          {
            "callVariable4": ""
          },
          {
            "callVariable5": ""
          },
          {
            "callVariable6": ""
          },
          {
            "callVariable7": ""
          },
          {
            "callVariable8": ""
          },
          {
            "callVariable9": ""
          },
          {
            "callVariable10": ""
          },
          {
            "ani": "1006"
          }
        ],
      "participants": [
          {
            "mediaAddress": "1006",
            "state": "INITIATED",
            "addressType": "AGENT_DEVICE",
      	  "stateCause": "",
       	  "stateChangeTime": "2019-09-17 12:46:21"
           }
        ],
        "callType": "",
        "queueName":"hassnain_SG",      
        "agentId": "jehanzeb4"
      }
      


      dialogID


      Finesse Dialog ID

      fromAddress


      A number from an inbound call is placed

      callVariables


      A total of 10 call variables as received from Finesse

      callType


      Call Type

      agentId


      Agent ID

      queueName


      Queue Name

      Reason Codes 

      Attribute

      Value

      Description

      Sample Output

      type

      ReasonCodes



      Reason Codes
       {
            "type": "ReasonCodes",
            "category": "WrapUp",
            "reasonCodes": [
              {
                "code": "2",
                "label": "Information"
              },
              {
                "code": "3",
                "label": "Parked by Agent 1"
              },
              {
                "code": "4",
                "label": "Parked by Agent 2"
              },
              {
                "code": "5",
                "label": "Unparked by Agent 1"
              },
              {
                "code": "6",
                "label": "Unparked by Agent 2"
              },
              {
                "code": "7",
                "label": "ne"
              }
            ],
            "agentId": "75002"
          }
      


      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

      type

      ConsultCall



      Consult Call States
      {
      "type": "ConsultCall",
      "state": "INITIATED",
      "assDialogId": "16871288",
      "fromAddress": "1004",
      "toAddress": "1006",
      "startTime": "2019-09-17 17:17:03",
      "callVariables": [
      {
      "callVariable1": ""
      },
      {
      "callVariable2": ""
      },
      {
      "callVariable3": ""
      },
      {
      "callVariable4": ""
      },
      {
      "callVariable5": ""
      },
      {
      "callVariable6": ""
      },
      {
      "callVariable7": ""
      },
      {
      "callVariable8": ""
      },
      {
      "callVariable9": ""
      },
      {
      "callVariable10": ""
      },
      {
      "ani": "1004"
      }
      ],
      "participants": [
      {
      "mediaAddress": "1004",
      "state": "INITIATED",
      "addressType": "AGENT_DEVICE",
      "stateCause": "",
      "stateChangeTime": "2019-09-17 12:46:21"
       }
      ],
       "callType": "", 
       "queueName":"hassnain_SG", 
       "agentId": "jehanzeb4"
      }
      
      


      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

       callType


      Call Type

      agentId


      Agent ID

      queueName


      Queue Name

      Release Call Output

      Attribute

      Value

      Description

      Sample Output

      type

      InboundCall



      Dropped Call
      JavaScript
      {
          "type": "InboundCall",
          "dialogId": "16839909",
          "associatedDialogId": "16839907",
          "state": "DROPPED",
          "callType": "CONFERENCE",
          "queueName": "",
          "participants": [
              {
                  "mediaAddress": "30163",
                  "state": "DROPPED",
                  "addressType": "AGENT_DEVICE",
                  "stateCause": "",
                  "stateChangeTime": "2024-05-14 14:29:17"
              },
              {
                  "mediaAddress": "30161",
                  "state": "DROPPED",
                  "addressType": "AGENT_DEVICE",
                  "stateCause": "",
                  "stateChangeTime": "2024-05-14 14:29:17"
              }
          ],
          "agentId": "5650550"
      }
      
      


      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

      queueName


      Queue Name

      Complete Conference

      Attribute

      Value

      Description

      Sample Output

      type

      InboundCall



      Complete Conference
      {
        "type": "InboundCall",
        "dialogId": "16871286",
        "state": "ACTIVE",
        "startTime": "2019-09-17 17:16:10",
        "associatedDialogId": null,
        "fromAddress": "1005",
        "callVariables": [
          {
            "callVariable1": ""
          },
          {
            "callVariable2": ""
          },
          {
            "callVariable3": ""
          },
          {
            "callVariable4": ""
          },
          {
            "callVariable5": ""
          },
          {
            "callVariable6": ""
          },
          {
            "callVariable7": ""
          },
          {
            "callVariable8": ""
          },
          {
            "callVariable9": ""
          },
          {
            "callVariable10": ""
          },
          {
            "ani": "1005"
          }
        ],
        "participants": [
          {
            "mediaAddress": "1005",
            "state": "ACTIVE",
            "addressType": "",
            "stateCause": "",
            "stateChangeTime": "2019-09-17 12:46:21"
           },
          {
            "mediaAddress": "1004",
            "state": "ACTIVE",
            "addressType": "AGENT_DEVICE",
            "stateCause": "",
            "stateChangeTime": "2019-09-17 12:46:21"
           },
          {
            "mediaAddress": "1006",
            "state": "ACTIVE",
            "addressType": "AGENT_DEVICE",
            "stateCause": "",
            "stateChangeTime": "2019-09-17 12:46:21"
           }
        ],
       "callType": "",  
       "queueName":"hassnain_SG", 
       "agentId": "jehanzeb4"
      }
      
      


      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

      callType


      Call Tyep

      agentId


      Agent ID

      queueName


      Queue Name

      Transfer Call

      Attribute

      Value

      Description

      Sample Output

      type

      InboundCall



      Complete Transfer
      {
        "type": "InboundCall",
        "dialogId": "16871286",
        "state": "ACTIVE",
        "startTime": "2019-09-17 17:16:10",
        "associatedDialogId": null,
        "fromAddress": "1005",
        "callVariables": [
          {
            "callVariable1": ""
          },
          {
            "callVariable2": ""
          },
          {
            "callVariable3": ""
          },
          {
            "callVariable4": ""
          },
          {
            "callVariable5": ""
          },
          {
            "callVariable6": ""
          },
          {
            "callVariable7": ""
          },
          {
            "callVariable8": ""
          },
          {
            "callVariable9": ""
          },
          {
            "callVariable10": ""
          },
          {
            "ani": "1005"
          }
        ],
        "participants": [
          {
            "mediaAddress": "1005",
            "state": "ACTIVE",
            "addressType": "",
            "stateCause": "",
            "stateChangeTime": "2019-09-17 12:46:21"
           },
          {
            "mediaAddress": "1004",
            "state": "ACTIVE",
            "addressType": "AGENT_DEVICE",
            "stateCause": "",
            "stateChangeTime": "2019-09-17 12:46:21"
           },
          {
            "mediaAddress": "1006",
            "state": "ACTIVE",
            "addressType": "AGENT_DEVICE",
            "stateCause": "",
            "stateChangeTime": "2019-09-17 12:46:21"
           }
        ],
       "callType": "",  
       "queueName":"hassnain_SG", 
       "agentId": "jehanzeb4"
      }
      
      


      dialogId


      Dialog Id in Finesse

      state

      Held

      States in Finnese

      startTime


      Starting Time of call 

      associatedDialogId

      null

      Dialog Id in Finesse

      fromAddress


      A number from an inbound call is placed

      callVariables


      Call Variables in Finesse

      participants


      Participants engaged in call

      callType


      Call Type

      agentId


      Agent ID

      Get Dialog State

      Attribute

      Value

      Description

      Sample Output

      type

      DialogState



      Dialog State
      JavaScript
      {
        "type": "DialogState",
        "dialogId": "16871286",
        "state": "HELD",
        "agentId": "jehanzeb6"
      }
      
      


      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

      type

      Agents



      Get All Agents
      JavaScript
       
         { 
            "type":"Agents",
            "users":[ 
               { 
                  "firstName":"jehanzeb6",
                  "lastName":"riaz",
                  "extension":"1006"
               },
               { 
                  "firstName":"jehanzeb7",
                  "lastName":"riaz",
                  "extension":"1007"
               }
            ],
              "agentId": "jehanzeb6"
         }
      


      users


      List of login agents

      Get Team User

      Attribute

      Value

      Description

      Sample Output

      type

      Team Agents



      Get All Agents
      JavaScript
      { 
            "type":"TeamAgents",
            "users":[ 
               { 
                  "firstName":"jehanzeb6",
                  "lastName":"riaz",
                  "extension":"1006",
      			"loginId": "75001",
       			"state": "Not_Ready",
       			"pendingState": "",
       			"mediaType": "AGENT_DEVICE",
       			"stateChangeTime": "",
       			"label": "Not_Ready"
                },
               {               											     
                  "firstName":"jehanzeb6",
                  "lastName":"riaz",
                  "extension":"1006",
      			"loginId": "75001",
       			"state": "Not_Ready",
       			"pendingState": "",
       			"mediaType": "AGENT_DEVICE",
       			"stateChangeTime": "",
       			"label": "Not_Ready"           }
            ],
              "agentId": "jehanzeb6"
      }
      


      users


      List of team user

      Get Queue List

      Attribute

      Value

      Description

      Sample Output

      type

      Queue Stats



      GetQueueInfo
      JavaScript
      For UCCE
      
      [
          {
              "type": "QueueStats",
              "queue": [
                  {
                      "queueName": "jehanzeb6",
                      "agentsNotReady": "0",
                      "agentsReady": "0",
                      "agentsTalkingInbound": "1",
                      "agentsTalkingInternal": "0",
                      "agentsTalkingOutbound": "1",
                      "agentsWrapUpNotReady": "0",
                      "agentsWrapUpReady": "0",
                      "callsInQueue": "0",
                      "startTimeOfLongestCallInQueue": "0"
                  },
                  {
                      "queueName": "jehanzeb6",
                      "agentsNotReady": "0",
                      "agentsReady": "0",
                      "agentsTalkingInbound": "1",
                      "agentsTalkingInternal": "0",
                      "agentsTalkingOutbound": "1",
                      "agentsWrapUpNotReady": "0",
                      "agentsWrapUpReady": "0",
                      "callsInQueue": "0",
                      "startTimeOfLongestCallInQueue": "0"
                  }
              ],
              "agentId": "jehanzeb6"
          }
      ]
      
      
      
      For UCCX Supervisor  
      
      {
        "type": "QueueStats",
        "queue2": {
          "queueName": "CTI",
          "queue_SnapShot": {
            "SnapShot_type": "SnapShot",
            "WaitingCalls": 0,
            "AgentsLoggedIn": 0,
            "AgentsReady": 0,
            "AgentsNotReady": 0,
            "AgentsInAfterCallWork": 0,
            "AgentsTalking": 0,
            "AgentsReserved": 0
          },
          "queue_SinceMidNight": {
            "SnapShot_type": "SnapShot_SinceMidNight",
            "WaitingCalls": 0,
            "AgentsLoggedIn": 0,
            "AgentsReady": 0,
            "AgentsNotReady": 0,
            "AgentsInAfterCallWork": 0,
            "AgentsTalking": 0,
            "AgentsReserved": 0
          }
        },
        "queue1": {
          "queueName": "osja1",
          "queue_SnapShot": {
            "SnapShot_type": "SnapShot",
            "WaitingCalls": 0,
            "AgentsLoggedIn": 0,
            "AgentsReady": 0,
            "AgentsNotReady": 0,
            "AgentsInAfterCallWork": 0,
            "AgentsTalking": 0,
            "AgentsReserved": 0
          },
          "queue_SinceMidNight": {
            "SnapShot_type": "SnapShot_SinceMidNight",
            "WaitingCalls": 0,
            "AgentsLoggedIn": 0,
            "AgentsReady": 0,
            "AgentsNotReady": 0,
            "AgentsInAfterCallWork": 0,
            "AgentsTalking": 0,
            "AgentsReserved": 0
          }
        }
      }
      


      queue


      queue stats info

      Phonebooks

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      PhoneBook

      List of phonebooks


      JavaScript
      {
          "type": "PhoneBook",
          "phoneBook": [
              {
                  "name": "jehanzeb",
                  "type": "Team",
                  "id": "1"
              },
              {
                  "name": "jehanzeb2",
                  "type": "GLOBAL",
                  "id": "10"
              }
          ],
          "agentId": "5650550"
      }
      


      Team Phonebooks

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      Team PhoneBook

      List of phonebooks


      JavaScript
      {
          "type": "TeamPhoneBook",
          "phoneBook": [
              {
                  "name": "jehanzeb",
                  "type": "Team",
                  "id": "1"
              },
              {
                  "name": "jehanzeb2",
                  "type": "Team",
                  "id": "10"
              }
          ],
          "agentId": "5650550"
      }
      


      Contacts

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      phoneBook_contacts

      List of contacts


      JavaScript
      {
          "type": "phoneBookContacts",
          "contact": [
              {
                  "description": "jehanzeb_contact",
                  "firstName": "jehanzeb",
                  "lastName": "riaz",
                  "phoneNumber": "123456789",
                  "id": "1"
              },
              {
                  "description": "jehanzeb_contact",
                  "firstName": "jehanzeb",
                  "lastName": "riaz",
                  "phoneNumber": "123456789",
                  "id": "10"
              }
          ],
          "agentId": "5650550"
      }
      


      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      status

      status-bar


      JavaScript
      {
          "type": "Control",
          "location": "statusbar",
      	"message": "message",
          "agentId": "5650550"
      }
      


      Participant Drop Message

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      control

      status-bar


      JavaScript
      {
          "type": "Control",
          "participantDropped": "20107",
          "agentId": "5650550"
      }
      


      CallBack Message

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      callback

      callback scheduled 


      JavaScript
      {
          "type": "callback",
          "title": "title",
          "data": "data",
          "agentId": "5650550"
      }
      
      


      Reclassify Message

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      callback

      reclassify 

       

      JavaScript
      {
          "type": "CALLBACK",
          "title": "RECLASSIFY",
          "data": "RECLASSIFY Successfully",
          "agentId": "5650550"
      }
      


      No Data Found Message

      Attribute

      Value

      Description

      Sample Output (JSON)

      type

      callback

      callback scheduled 


      JavaScript
      {
          "type": "no_data_found",
          "title": "tiltle",
          "data": "data",
          "agentId": "5650550"
      }
      


      Get Skill Groups

      Attribute

      Value

      Description

      Sample Output

      type

      skillGroup



      Get All Agents
      JavaScript
      {
          "type": "skillGroup",
          "skillGroups": {
              "skill_1": "A",
              "skill_2": "B",
              "skill_3": "C",
              "skill_4": "E",
              "skill_5": "F.SG",
              "skill_6": "GSG",
              "skill_7": "H.SG",
              "skill_8": "A.SG",
              "skill_9": "D.SG",
              "skill_10": "V.SG",
              "skill_11": "C.SG",
              "skill_12": "S.SG"
          },
          "agentId": "5650550"
      }
      


      skills


      List of all skillGroups

      Get Supervisor List

      Attribute

      Value

      Description

      Sample Output

      type

      supervisors



      Get All Agents
      JavaScript
      {
        "type": "supervisors",
        "supervisorList": [
          {
            "supervisorName": "Sup1_12",
            "supervisorId": "5000",
            "supervisorExtension": "",
            "supervisorState": "LOGOUT"
          },
          {
            "supervisorName": "sup_2_12",
            "supervisorId": "75900",
            "supervisorExtension": "",
            "supervisorState": "LOGOUT"
          },
          {
            "supervisorName": 			 "CUCM_PG.Sana_Saqib",
            "supervisorId": "244441205",
            "supervisorExtension": "",
            "supervisorState": "LOGOUT"
          }
        ],
        "agentId": "75001"
      }
      


      supervisors


      List of all supervisors

      Get Agent Extension

      Attribute

      Value

      Description

      Sample Output

      type

      agentExtension



      Get All Agents
      JavaScript
      {
        "type": "agentExtension",
        "port": 1316,
        "dialNumber": 1318
      }
      


      agentExtension


      mobile agent port and dialNumber 


      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