- Joined
- Jul 3, 2013
- Messages
- 4
- Reaction score
- 0
Hi all,
I have designed and developed IVR applications for more than 15 years, mainly on Avaya products. Their current platform (Voice Portal / Experience Portal) is also based on VXML, where the application server runs in Tomcat.
Based on that experience, I went into the VAD, to see what it can do. What I would like to know at the end, is if it is possible to run VXML applications on other VXML servers than the built-in one.
I found an article here already asking a similar question, but the answer on that was that 3CX uses a proprietary way to register apps in 3CX. That is what I already noticed.
So what I tried is the following.
I created a dummy application in VAD and deployed that on 3CX. I then went into the start VXML page and edited its contents. The start VXML page should only contain a redirect to the next VXML page located on an external web server. So I changed the <form> node at the bottom, to have a <goto next="http://mywebserver.local/thenextstep.vxml" />
I can see that this node actually loads from the external web server. I needed to remove some references to prevent file not found errors, but the actual VXML page can indeed be loaded from an external web server.
The next step would be to play an announcement from this external VXML page, to see if the 3CX VXML interpreter could load an announcement using http. So in the thenextstep.vxml, I added an announcement, like:
<prompt bargein="true">
<audio src="http://mywebserver.local/helloworld.wav" />
</prompt>
Here is where it goes wrong. The webserver is an apache web server that serves wav files as an audio/x-wav mime type. When I check the IVRServer.log file, 3CX responds with:
VXIMachine.cpp(894):IvrDll, CallSession:
romptUrl2File(), Error! ERROR!!!:Attempt to load as buffer: content type=audio/x-wavfrom 'http://mywebserver.local/helloworld.wav'
When I check the access log of the Apache HTTP server, I can see that the 3CX IVR is trying to fetch the wave file:
"GET /helloworld.wav HTTP/1.1" 200 120702 "-" "3CXIvrEngine/1.0 libwww/5.3.1"
However, 3CX is not playing it.
Anyone hints on how to solve this?
Thanks!!
Best regards,
Gerco
I have designed and developed IVR applications for more than 15 years, mainly on Avaya products. Their current platform (Voice Portal / Experience Portal) is also based on VXML, where the application server runs in Tomcat.
Based on that experience, I went into the VAD, to see what it can do. What I would like to know at the end, is if it is possible to run VXML applications on other VXML servers than the built-in one.
I found an article here already asking a similar question, but the answer on that was that 3CX uses a proprietary way to register apps in 3CX. That is what I already noticed.
So what I tried is the following.
I created a dummy application in VAD and deployed that on 3CX. I then went into the start VXML page and edited its contents. The start VXML page should only contain a redirect to the next VXML page located on an external web server. So I changed the <form> node at the bottom, to have a <goto next="http://mywebserver.local/thenextstep.vxml" />
I can see that this node actually loads from the external web server. I needed to remove some references to prevent file not found errors, but the actual VXML page can indeed be loaded from an external web server.
The next step would be to play an announcement from this external VXML page, to see if the 3CX VXML interpreter could load an announcement using http. So in the thenextstep.vxml, I added an announcement, like:
<prompt bargein="true">
<audio src="http://mywebserver.local/helloworld.wav" />
</prompt>
Here is where it goes wrong. The webserver is an apache web server that serves wav files as an audio/x-wav mime type. When I check the IVRServer.log file, 3CX responds with:
VXIMachine.cpp(894):IvrDll, CallSession:
When I check the access log of the Apache HTTP server, I can see that the 3CX IVR is trying to fetch the wave file:
"GET /helloworld.wav HTTP/1.1" 200 120702 "-" "3CXIvrEngine/1.0 libwww/5.3.1"
However, 3CX is not playing it.
Anyone hints on how to solve this?
Thanks!!
Best regards,
Gerco