cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1703
Views
15
Helpful
10
Replies

Finesse Callback API

Hi there,

 

I have to implement the callback API in our custom java application, I have implemented the Outbound Preview only mode, and I can Accept, Reject or Close a call.

 

Now, my question is when to call the callBack API?

 

1. When the call is ringing at the application.

2. Ringing call has been accepted/answered.

 

And also, please confirm, I only need to use this API to schedule or cancel a callback, there are no other configurations required?

 

thanks  & Regards,

Muhammad Arslan

10 Replies 10

dekwan
Cisco Employee
Cisco Employee

Hi,

 

When you say "Callback API", you mean the Schedule or Cancel a callback right?

 


Now, my question is when to call the callBack API?

 

1. When the call is ringing at the application.

2. Ringing call has been accepted/answered.

 

I'm confused to why you need to schedule or cancel a callback in either situation. Can you explain?

 


And also, please confirm, I only need to use this API to schedule or cancel a callback, there are no other configurations required?


If I remember correctly, if you have outbound configured, you do not need any additional configuration to use callbacks.

 

Thanx,

Denise

Hello Denise,

 

Yes, I mean the same API you shared above (Schedule or Cancel a Callback).

 

We have to send the callback frame with a specific date and time in order to reschedule the outbound call with the same customer.

 

can you please explain the callback business in finesse, when we can use this Callback API? can't we implement it with the outbound option?

 

Regards,

Muhammad Arslan

Hi,

 

You can only use the api when the UPDATE_SCHEDULED_CALLBACK or CANCEL_SCHEDULED_CALLBACK is in the allowable actions of the dialog event. Yes, you can use the API with the outbound option.

 

Thanx,

Denise

Hello Denise,

 

But I invoked this API [UPDATE_SCHEDULED_CALLBACK] with return code 202 and this was not an allowable action.

I didn't get any error related to invalid or not allowable action.

 

My only allowable action was UPDATE_CALL_DATA and the call state was ACCEPTED.

 

<participants>
 <Participant>
  <actions>
    <action>UPDATE_CALL_DATA</action>
  </actions>
  <mediaAddress>42167</mediaAddress>
  <mediaAddressType>AGENT_DEVICE</mediaAddressType>
  <startTime>2021-09-30T21:30:24.352Z</startTime>
  <state>ACCEPTED</state>
  <stateCause></stateCause>
  <stateChangeTime>2021-09-30T21:30:24.352Z</stateChangeTime>
  </Participant>
</participants>

Hello Denise,

 

Also, can you please advise how we can use this API with the outbound option? 

Hi,

 

Were there any Finesse notifications after you made the callback request?

 

Per documentation (https://developer.cisco.com/docs/finesse/#!dialogschedule-or-cancel-a-callback/dialogschedule-or-cancel-a-callback

202: Successfully Accepted

This response only indicates a successful completion of the request. The request is processed and the actual response is sent as part of a dialog notification.

 

Also, can you please advise how we can use this API with the outbound option?


As I said before, you can use this API with outbound options when the UPDATE_SCHEDULED_CALLBACK or CANCEL_SCHEDULED_CALLBACK is in the allowable actions.

 

I highly suggest that you take a look at what the Finesse out of the box desktop does. You can watch the events/api requests using the browser's developer console.

 

Thanx,

Denise

 

Hello Denise,

 

Thanks for the feedback.

 

I have tested it from the finesse agent desktop and how I was getting the callback button enabled as below:

 

- Outbound preview call is received and agent status is Reserved

- Click on Accept button, Current call status is accepted, now the system is dialing the customer number

- after few seconds, the agent got the Answer popup and clicked on it

- After that, I can see the Callback button and schedule it

 

But this scenario is not happening at our custom application, can you please advise how I can check the finesse desktop logs?

 

 

 

 

Hi,

 


But this scenario is not happening at our custom application, can you please advise how I can check the finesse desktop logs?

If you are looking for the logs of the desktop client, after you reproduce the scenario, click the "Send Client Logs" or "Send Error Logs" (depending on version). Then, grab the logs from the Finesse server using the cli file get activelog desktop recurs compress (https://developer.cisco.com/docs/finesse/#log-collection-log-collection). The log file will be located in the clientlogs folder.

 

If you are looking for the logs from the Finesse webservices, use the same CLI above and the log file will be located in the webservices folder.

 

Also, can you clarify what you mean when you say "this scenario is not happening at our custom application"? At which point does it differ?

 

Thanx,

Denise

Hello Denise,

 

Thanks for the feedback, yes, I need the logs related to the API calling and response notifications.

 

It differs at 2nd point, after press accept button the system/Dialer not dialing the customer number.

 

Also can you please advise for the below call type, i am getting it few seconds after press accept button.

 

<Dialogs>
<Dialog>
<associatedDialogUri></associatedDialogUri>
<fromAddress>01234567</fromAddress>
<id>33559783</id>
<mediaProperties>
<DNIS>42167</DNIS>
<callType>OTHER_IN</callType>
<dialedNumber>42167</dialedNumber>

Hi,

 

I think you are on the right path in comparing your REST API request with what the desktop is using and see how it differs. You might want to look at the network tab of your browser's developer tool when reproducing this with the out of the box desktop to really see the API request.

 

The CallType of OTHER_IN means an incoming call.

 

Thanx,

Denise

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: