Author Message
Heena
Joined: Jun 3, 2015
Messages: 12
Offline
Hello all,
I require to convert some text to speech dynamically when the call is answered in the call Intercepted interface implementation. I do have the Avaya media server access. I am not sure whether Nuance Speech server is installed with Avaya media server (I have the Aurix speech server enabled. Not sure if that is supposed to help). Anyway, I tried giving a simple string in the source while creating the PlayItem, but that did not work(it did not convert it to speech and nothing was played when the mediaservice was played with the playItem).

To avoid the dependency with the Nuance speech server, I tried converting the text to speech using freetts in the implementation itself. As stated in the playItem.setSource Api doc, I tried placing the wav file generated using freetts at the location /opt/avaya/app/localmedia/ and set playItem.setSource("file://nameoffile.wav"). That also did not work. However the cstore example did work but uploading the media everytime it is generated to the media server is not feasible, since text changes according to user input. Since the entire code is packaged into an svar and then decompressed at the server, I was not sure where my wave file will be placed if I included the code generating it in the local file system. I thought may be I could make it generate it at the above mentioned path and that would work.

Also, how do I check the location /opt/avaya/app/localmedia/output on the collaboration server? SShing into it, says no such file or directory.

If you could suggest something, I would be grateful.

Thanks,
Heena
BobBraudes
Joined: Dec 19, 2013
Messages: 34
Offline
Hi Heena,

If you have a speech server (Nuance or most others that use the MRCP protocol, either v1 or v2) configured in AMS then you should be able to simply use the text in the playItem, but the Nuance server is not included with EDP - you would have to supply it. I'm not sure why the freetts test didn't work; was there anything noteworthy in either the EDP or AMS log files?

Thanks,
Bob
Heena
Joined: Jun 3, 2015
Messages: 12
Offline
Hi BobBraudes,

Nothing substantial in the EDP log files. In the FreeTTS implementation, I am generating a wav file everytime a call is answered and storing it in the local file system. I realized that I should be copying it somewhere necessarily in the media server? I think the set source API can accept something relative to the media server only. Generating it in the code, I was not sure whether the location mentioned intentionally is preserved after a service upload on the EDP. I guess may be I have to try doing a remote copy into the media server. I don't really think that would be something I would like to do, everytime doing a remote copy of the file generated to the media server. Is there something that I am missing?

Thanks,
Heena
BobBraudes
Joined: Dec 19, 2013
Messages: 34
Offline
Hi Heena,

I apologize for the delay in responding - I thought I had posted this last week.

Unfortunately at this time the best thing to do for dynamic media files is to use a file server other than the EDP; we do have on our roadmap the ability to serve files directly from the platform, but it is not currently available. The file server can be a remote http server or push the file directly to the media server. In this case the media server makes sense, as the file will need to ultimately end up there anyway to be played.

Thanks,
Bob
Heena
Joined: Jun 3, 2015
Messages: 12
Offline
Hi BobBraudes,

Where do I spot the file generated by my code on the EDP (or the collaboration server)? I need to generate it and then remote copy into the media server. If I generate it in the present working directory itself, where do I locate it on the collaboration environment. I need to provide a definitive path to copy it to the media server. If I give it the same path as ./"nameoffile" it says file not found. I cannot see it anywhere at all.

Thanks,
Heena
BobBraudes
Joined: Dec 19, 2013
Messages: 34
Offline
I'm sorry I wasn't clear. Staging the file on the EDP node and then using HTTP to send it to another server isn't currently supported in EDP - it is on the roadmap. You will have to create it on a different file server and serve it from there.

Bob
Go to:   
Mobile view