cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
400
Views
0
Helpful
6
Replies

Standalone service integration for Contact Center

Hi,

I'm looking for a solution which allows me to create integration that can work as standalone service in a background.

The main issue for me now is authentication because all examples are using mostly OAuth2 which requires a user interaction. But I want to create service that can authenticate themselves automatically (ideally via some kind of API key) and work in a background.

Brief idea of what I want to create:
Regular Agent (without admin privileges) via desktop gadget triggers action which sends request to my service. Then my service on demand can access Contact Center API and manipulate Skill, Skill Profile, User data (action that needs admin role and cjp:config_write or cjp:config_read scopes). I want to have service that can operate in a background without user based authentication and on request perform changes on Contact Center.

Is there any way to achieve that kind of integration?

6 Replies 6

What you’re describing is very doable, but will require custom code. For example, OAuth could be handled without human interaction and done programatically. I don’t know of anything that’s already built to fit your exact need, but you should engage Cisco for guidance or many of the partners who would be happy to build this for you.

david

Dimitri Bokatov
Cisco Employee
Cisco Employee

Today it is not possible with the Agent's Desktop SDK because Desktop does not request a config_write scope during token generation. The Desktop token has only cjp:user and cjp:config_read scopes. This is a roadmap item of the Supervisor's Desktop. 

But as a workaround you can use a similar approach as in the example below

Widget Sample: https://github.com/WebexSamples/webex-contact-center-api-samples/tree/main/widget-samples/audio-widget-sample

Vidcast: https://app.vidcast.io/share/2fbacc17-7551-4b69-be1b-47f8cf2b4ac3

Thanks for your reply, but your workaround is not suitable for my case, it requires that desktop user already have proper permission to the resource.

In my case I want to allow the Desktop Agent to modify the resource that is denied from them. So my idea was to create the middleware service that use own access token with admin privileges and act as proxy for Agent. So Agent from Desktop call the service, service app will modify resource and send feedback to the Desktop Agent. But my biggest issue with the idea is the authentication process for what I didn't found any option to authenticate service without user interaction (in docs I only found browser or device based auth flows)

Dimitri Bokatov
Cisco Employee
Cisco Employee

Hi @arkadiusz-krauzowicz , you can use the middleware for this use case. You don't need to develop the connector from scratch. The example is posted here together with the supportive video:

https://github.com/WebexSamples/webex-contact-center-api-samples/tree/main/app-auth-sample

In addition, I recommend to check those projects: https://github.com/WebexSamples/webex-contact-center-api-samples/tree/main/token-management-samples

It's not exactly what I'm looking for. The both examples are utilising OAuth2 code flow authentication which requires human interaction to process. @Dimitri Bokatov, do you know if there is possibility to authenticate service themself using e.g. API key or something similar. It would be perfect if I didn't use any personal identity.

I think you're misunderstanding how OAuth could work. We've done integrations to the reporting API using OAuth programmatically.

david