Dial destination truncated, if longer than 80 chars


I have a problem when I try to make a call to a destination string longer than 80 characters; i’m using Asterisk 1.2, Fedora core 3 (but the problem was the same even with *@home 1.0): I show the details in this example:

This first line in extensions.conf works well: when dialing 208 the mediaserver gets the jsp voicexml page from the web server and the customers starts the dialog:
exten => 208,1,Dial(SIP/portal.vxml.http%3A%2F%2F213.171.104.143%2FA%2Fservlet%2Fp.HDesk@

The asterisk console gives these lines:
– Executing Dial(“SIP/205-49e2”, “SIP/portal.vxml.http%3A%2F%2F213.171.104.143%2FA%2Fservlet%2Fp.HDesk@”) in new stack
– Called portal.vxml.http%3A%2F%2F213.171.104.143%2FA%2Fservlet%2Fp.HDesk@
– SIP/ is ringing
– SIP/ answered SIP/205-49e2

This second line, almost identical to the preceeding, but with longer folder, package and servlet names, doesn’t work:
exten => 210,1,Dial(SIP/portal.vxml.http%3A%2F%2F213.171.104.143%2FMsVxml%2Fservlet%2Fmspackage.MsHelpdeskServlet@

and the console gives these messages:
– Executing Dial(“SIP/205-59a9”, “SIP/portal.vxml.http%3A%2F%2F213.171.104.143%2FMsVxml%2Fservlet%2Fmspackage.MsHelpdeskServlet@”) in new stack
Nov 9 15:45:34 WARNING[4004]: chan_sip.c:1947 create_addr: No such host: portal.vxml.http%3A%2F%2F213.171.104.143%2FMsVxml%2Fservlet%2Fmspackage.MsHelpd
Nov 9 15:45:34 NOTICE[4004]: app_dial.c:975 dial_exec_full: Unable to create channel of type ‘SIP’ (cause 3 - No route to destination)

where you can see that the url string is truncated at 80th character.
This problem becomes serious when I have to pass some parameters, as in the following case:

exten => 210,1,Dial(SIP/portal.vxml.http%3A%2F%2F213.171.104.143%2FMsVxml%2Fservlet%2Fmspackage.MsHelpdeskServlet%3Fcaller%3D${CALLERIDNUM}%26callee%3D${DNID}@

Here I cannot reduce the total length in 80 chars, and so I have to solve the problem.

Has someone else encountered the same problem? Do you know any solution, please?


Would appear you are reaching a boundry in what the Dial command/application will support. You will need to dig into the code to determine how to resolve this:

Of course, the obvious solution is to create a mechanism to shorten your calling URL to your voice app.