Howto:DID on mapped numbers / Hide PIN code
This XML faces two different types of problems.
The first one has to do with direct inward dialing using the map object. Some customer wants speed-dial (called also “quick-dial” or “short-numbers”) numbers, often because the old PBX got this feature and now all users knows those numbers. This feature can be realized using the map object in the innovaphone PBX. But if the mapped number (the “speed dial number”) is a number pointing to a company with a direct inward dialing (DID) number, the user can not “add” the internal number. So the problem is that dialing information “after” a mapped number is not executed.
The second problem (or better feature) is trunk access using a PIN code. There are jets articles about that item (see Related Articles). But some customers have additional requests: the PIN code should not be visible in the call detail recording but counted on a personal number (and not assigned to extension). The “personal number” has nothing to do with the pin code itself, it is just an "ID" for the user. So it should be possible to change a pin code; even if that happened all calls should be billed on that personal number. Of course dialing the personal number should not allow a trunk access. Explained with a simple example: All calls done with my PIN code “1234” should be reported on my personal account “88”. In the reports the PIN code will not appear, just my personal number “88”.
Here is how solving both very different items in the same technical way.
This information applies to
- tested with V9, works also with V8
Example: dialing “812” should be called innovaphone “00049703173009” and the user wants to dial “81299” to reach the internal extension number 99. So the dialed number should be “0004970317300999”. The only thing to observe is that all those special DID numbers must point first to the XML. If for example you assign to the XML object the number “9” the mapped number “812” must be “90049703173009” (instead of “0049703173009”). In this way XML received the number and wait if additional digits are dialed and add them to the original number. After 4 seconds (end of dial) the complete number is dialed out and the user connected.
The innovaphone PBX setup is tricky but the principle is the same than using the xml for DID on mapped numbers. Example: The customer want the PIN code “1234” for accessing the trunk line, but the call detail record should show the personal code “88” (and of course the record should be billed on “88” and not the extension: Please note that this is a feature of the billing solution. In the simplest way a report showing all records beginning with 88 can be done).
In the PBX must be defined a map object with the number “1234”. If for example “9” is the number of the xml object and “444” the super secret trunk access code, the mapped number will be “944488”.
So if the user wants to make a call using his PIN code “1234” to the external number “777” he will dial “1234777”. The mapped number will be “944488” and the result for the PBX will be after the end of dial a call to the number “44488777”. In the relay (gateway) the “44488” will be cut off and the result is an outbound dialing of “777”. But the CDR record will contain as dialed number “44488777” and so this call can be billed on code “88”. If the user want change his PIN code just create a new map containing the “944488” as mapped number. A user can even have more PIN access codes and billing all of them on the same number.
There is one problem to solve on top: if the billing solution cannot trunk the “444” (the secret trunk access number) you have to cut that number off first in a GW and point to another GW, the second one will cut off the “88” and dial out. The result will be two CDR records, one containing the number “44488777” and one “88777”, so take the second one. Solutions like Samwin can easy handle that kind of stuff.
Copy the XML in a directory of your compact flash and copy all the files in, create e new voicemail object in the PBX (no license is necessary for doing that) and type in the URL field the path and name of the XML. Give the XML a name and a number and modify your number map as described.
- Download the complete file package of scripts and files described in this article.