cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1194
Views
6
Helpful
12
Replies

Agent/Supervisor Desktop Application Authentication and Authorization.

AgshinA
Level 1
Level 1

Hello everybody, 

I need to know which Authentication and Authorization mechanism should I use when developing a custom agent or supervisor desktop application. Please take in into account I'm using JTAPI for call management and Cisco Finesse API for agent managenent functionalities

12 Replies 12

Hey.

For realtime events i think you should use the notification interface

Subscription Management - Finesse - Document - Cisco Developer

For Agent Mangement use the restAPI 

It uses Basic Auth with every restCall

 

Why use Jtapi for CallControl ?

Please rate helpful posts and if applicable mark "Accept as a Solution".
Thanks, Thomas G. J.

Hi Thomas, Thank you for your reply. Rest APIs do not allow agents to reject incoming calls. However, we need agents with the authority to reject incoming calls and JTAPI provides this functionality. Therefore, I want to use JTAPI for call management functions, including real-time call events. But I will use notification service for real time events about agent activities. If you have any suggestions regarding the situation, I would be very grateful for your consultation.

Also, I want to implement user management system that integrates with any Cisco authentication system. Is there any solution for this?

Thanks in advance!

You right - Finesse API doesn't allowed to reject incomming ACD calls. And that is for a reason

And i will recommend that you dont give the agent the possibility. You can end up i a really bad scenario if the agent reject and incoming ICD call.

Look at this scenario.

You have 3 agents. 2 talking (or not available), 1 available.

  1. The agent that is available gets a call.
  2. The agent reject it. 
  3. The agent gets the call again
  4. loop to step 2

This is happening because the agent goes from avail -> reserved -> avail -> reserved  ....... (I have just testet it with an jabber)

When you reject a ICD call on the phone (or jtapi), the agent goes back in ready).

That's why the RONA is there. Then the agent goes not ready. 

Then you wil probaly say - we always have more then 1 agent available, so this will never happen. I wil just say - yes it will some day,  

So if the agent don't want to  answer calls - go in Not Ready, or let the phone rings out so it goes in RONA.

Just be cautions.....

 

Please rate helpful posts and if applicable mark "Accept as a Solution".
Thanks, Thomas G. J.

I totally agree with you. Suppose we decide not to give the agent this possibility, even though it's not only my decision. Why should I use the notification service instead of JTAPI? What are the benefits? How can I decide which one to choose?

The Notification service is event based websocket you subscribe to.

And it is much more easy to work with then JTAPI (Notification service is pure JSON). 

If you want to do some changes to the agent (change state etc), you can only do that thru the finesse REST

So.

JTAPI -> CUCM for you phone (Answer/Drop etc.)

Notification Service -> UCCX events for the agent

Finesse REST -> Agent state change / diaolog change (Answer/drop etc) etc.

Please rate helpful posts and if applicable mark "Accept as a Solution".
Thanks, Thomas G. J.

You touched on some very solid points. Maybe we should reconsider choosing APIs.

But at one point there was a misunderstanding. In the documentation there is only xml for the notification service, no json. Is there actually a json option?

Hi,

Everything Thomas said is on point. 

 


In the documentation there is only xml for the notification service, no json. Is there actually a json option?

The notification is indeed only XML, but there are many libraries out there to parse XML and convert it to other objects such as JSON format.

Thanx,

Denise

Hello Dekwan,

Thank you for your answer. It's obvious that we can parse XML

Do you have any suggestions for a more advanced Cisco(UCCX) auth mechanism than Finesse rest API Basic Auth, that I can integrate with my Custom User management system ?

Hi,

You can use SSO to authenticate the Finesse REST APIs: https://developer.cisco.com/docs/finesse/#!rest-api-with-sso-guide-client-integration

Thanx,

Denise

What about Cisco Identity Service Client SDK ? What is the purpose of SDK ?

The Cisco Identity Service Client SDK just gives you the token that is needed for the Finesse APIs using SSO.

Sorry - mistype. It is XML

Please rate helpful posts and if applicable mark "Accept as a Solution".
Thanks, Thomas G. J.