I’m trying to configure a custom dialplan so that I can take the callerID and check a database for the customerID and then pass the customerID in the URL field in the Queue() dialplan command.
When I use the Queue() cmd it results in an endless loop until the drive/logs fill. It seems that a variable NODEST is not set and so the dialplan interpreter get’s confused on a Goto(${NODEST},1)
Between code inspection and debugging I was able to replace the command with something like: Goto(ext-queues,8000,1). The resulting QUEUE works fine, however, deep inside the ext-queues context there is a call to the Queue() cmd and the URL param is intentionally omitted. (presumably if it were present it might reduce sales in ZULU)
*just as a side note… the docs for the Queue() cmd suggest that the first field is the queuename, however, the only value that actually works is the queue-number. Regardless of the many examples.
The dialplan for queues was first written back in the early 2000s. It’s unlikely that it was written to improve sales of a product that would not exist for another decade.
I can’t tell what you are trying to accomplish nor how you expect to pass a URL as a parameter to the queue application. You might try by re-phrasing to the format, “I am trying to do _____ and I have tried doing ____ but instead it does _____”
@lgaetz, he means the freepbx code that creates the diaplan that calls the queue application inside the ext-queues context. The code doesn’t take in consideration that someone might want to use the URL parameter.
Nevertheless before we conclude that this is a mystery to solve or a consipiracy theory, just clone the context to the extensions freepbx override configuration file (don’t remember the exact filename, just check the /etc/asterisk) and add the parameter that you need. Use some custom diaplan to fill the variable at the beginning of the call.