Jump to content

Correct config IVR node for external server


Recommended Posts


I'm trying to setup an IVR node where the dtmf digits the user input are passed to the an external server. I'm actually using a simple "netcat -l -p 8080" to check if something arrives on the server but nothing...

It's not clear, at least for me, how to fill correctly  "DTMF Match List" "From/To-based routing match list", List of Actions" "Remote Application contro Yes/No" in IVR Node. Can you provide a simple example like the user call ivr node 4000, digit 9 numbers and these 9 digits are redirected via HTTP to external server on port 8080 ip 192.168.1.x

Thank you very much for the help.



Alessandro Marzini

Link to comment
Share on other sites

12 minutes ago, Support said:

Have you gone through the doc we gave earlier? It has example about how you can setup the DTMF list in it.

Please check that and let us know.

Yes I did, I tried a lot of combination but I never received anything on the server side.

That's why I'm asking a very basic example of what to put in the DTMF List, what in "List of actions".

By the way, what the "Remote application control" is used for?

The "Mute when user presses a key" seems not working, I still hear the "beep" when I digit dtmf while I'm connected to the IVR.

I can received events like :

Method: POST
Headers: {'Remote-Addr': '', 'Host': '', 'Content-Type': 'application/json', 'Content-Length': '99'}
Args (url path): ()
Keyword Args (url parameters): {}
Body: b'\\{"id":17,"from":\\"Alessandro Marzini\\" <sip:40@localhost>,"to":\\"IVR Zero\\" <sip:4000@localhost>\\}'

just because I setup correctly the Advanced->Action URL setting as in the pic attached.



Link to comment
Share on other sites

I did some progress...

If I put in DTMF List this ->   !1!-!

And in the List of Actions ->

Then on the server I receive this:

SOAPAction: IvrInput
Content-Type: text/xml
Content-Length: 408

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sns="http://soap.com/pbx"><env:Body><sns:IVRInput><CallID>313538383236343131323436363937-c6qipkp2gide</CallID><Output></Output><From>&quot;Alessandro Marzini&quot; &lt;sip:40@localhost&gt;</From><To>&quot;IVR Zero&quot; &lt;sip:4000@localhost&gt;</To><IpAdr>tls:</IpAdr></sns:IVRInput></env:Body></env:Envelope>

So it seems working now. What I don't understand is why I've to put the single dash (-) when docs are saying:

"If the destination field contains a single dash (-) and the pattern matches, the PBX will disconnect the call."

Link to comment
Share on other sites

Ok...I finally found the correct DTMF Match List ->  !([0-9]+)#!\1! for any number ending with #

Also the example in the doc !^([0-9]{3})$!\1! is working...

I don't know, it seems an "autosolvingproblem" case :D

Next step is how to make the server responding to redirect the call where I want..


Link to comment
Share on other sites

  • 1 year later...
On 4/30/2020 at 10:42 AM, almoondsllc said:

I have a config like in the Screenshot attached but whle I'm listening on port 8181, I'm not getting nothing there when I call the 4000 ivr node from an internal phone and even if I digit something, nothing happen, that's why I asked just an example of the configuration



I noticed {Output} doesn't send anything to the server except '{output}' in string format lol.

How were you able to send the captured digits?

Link to comment
Share on other sites

  • 9 months later...
On 10/14/2022 at 8:48 PM, AlanS said:

Is that sns correct?  xmlns:sns="http://soap.com/pbx" and xmlns:sns="http://www.vodia.com/soap/pbx" do not resolve

That was never resolving—it was always more like eye candy. I would stay away from SOAP and XML as far as you can and focus on REST instead.

Link to comment
Share on other sites

8 hours ago, Vodia PBX said:

That was never resolving—it was always more like eye candy. I would stay away from SOAP and XML as far as you can and focus on REST instead.

Yes. I hate soap.

I now have a fully working example with IVR nodes and a Node.js server now...

A few notes... Returning XML does absolutely nothing, the docs have no example of returning JSON... but returning a single text string of the destination works. This could work, as long as you have an IVR Node for every positive and negative scenario.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...