Hi I am migrating from an old version of SER to OpenSER 1.2, in our old configuration we have a lot of hosted domains, for each domain we have a lot of 'short codes' ie dial *7312345 to make a call to free world dialup id 12345, so the prefix is *73. Unfortunately all these short codes are hard coded in ser.cfg, its difficult to manage and takes up a lot of the configuration file.
One of my tasks in migrating to OpenSER is to database enable these short codes. Looking over the documentation I found the modules LCR and PDT both do NEARLY what we want but not quite...
LCR, the most complicated of the two but works well, I can get a short code to be forwarded to an external gateway BUT only to an ip address not a hostname, the final request URI will be INVITE 12345@209.123.16.48. This works for some providers but a vast number require the correct hostname in the request. 1. is there a way to force it to send a given hostname taken from the database instead of the ip address?
PDT, the simplest and to be honest probably what we want to use, the only problem with it is that it does not like none numeric prefixes (it only accepts 0-9 in the first char) anything else causes the load to fail. I have looked at the source code and hacked it to accept *-9 but it now works as we require. 1. is there another way to do this without hacking the code like this? 2. is it worth me submitting this as a 'fix' to the dev list? (will others find it useful?)
The thing is the company I work for don't want to run the live systems on my hacked version they will only use the latest released version because they don't want the extra support overhead of keeping our own custom patches.
Are there any other modules or methods that could do this? I really don't want to resort to executing a perl script to do the lookup for me.
Thanks!