On top a Genesys PureCloud instance that is integrated with SalesForce (purecloud for salesforce), I would like to add a Virtual Voice Agent, and not sure if it is possible to due using APIs, and at which ones specifically I should look.
I read on previous topics that Purecloud only can use their own ASR and TTS propietary technology (PureCloud does not currently support third party vendors), and if I understood that correctly, that may be a blocker for my project.
What I would like to do:
An incoming call is received by Purecloud, and answered by a TTS (would like that TTS to be done by IBM Watson Text to Speech services).
The user/customer replyes the call, the answer is sent to the IBM Watson ASR (IBM watson Speech to Text Services).
With the output of the speech provided by IBM ASR, I invoke other IBM watson services, and built and answer back to the user (sending a new TTS).
Whenever I want on the flow, I can transfer the call to another extension, where a "human" agent (instead the virtual agent) will keep on with the call.
Is that possible ? Can you please provide me a link to what specific APIs to look at?
That is a stopper for my project, since I need an orchestator that controls the dialog betwen ASR/TSR, and also, I need to be able to use Watson.
I may understand other ASR/TSR not being "out-of-the-box" with PureCloud, but can I workaround on this ?
For example, not sure if once the call goes to the initial IVR on PureCloud, I may have an option (ie, option 4 on IVR) that forwards the call, using VOIP, to my own gateway, and have that gateway linking to the ASR/TSR services I need (and my own orchestator there), and later on, returning also using VOIP the call to an agent on PureCloud.
If you're using Architect, those are the options. Architect does allow transferring calls out of the system. You could use some other technology to do what you need to do and then transfer back to PureCloud based on the result of the external process.
Thks tim, is great to know I can use that as workaround.
BTW, If I insert back (before returning the call) a specific SIP Header (ie, a kind of variable), may I read that SIP Header on architect to do additional actions ?
Basically, is there any way on Architect to read/process SIP Header variables ?