locked
Normalization, PBX can't handle E.164 RRS feed

  • Question

  • Hi

    I have all numbers both in AD and in Outlook in E.164 format (+46####). Our PBX can't handle that is there any way to have the mediation server convert the numbers to a format the PBX can handle?
    I don't want to change in AD or Outlook since people syncronize mobile phones to pickup contacts.

    Or is the solution to have a box in between?

    Running OCS (R1) against an Aastra MD110 (former Ericsson)

    Regards

    Peter Sonander
    Monday, April 20, 2009 1:57 PM

All replies

  • Hi Peter,

    This is a pretty simple fix. the blog below descibes how to set the mediation server up to remove the + sign from outbound calls. It also requires a patch to front end servers but the mediation is the import part. R2 has a different procedure as they move this setting into WMI.

    http://blogs.technet.com/ucspotting/archive/2009/02/28/removeplusfromrequesturi-or-how-to-make-ocs-non-rfc-3966-compliant.aspx

    Good luck.
    http://voipnorm.blogspot.com/
    Monday, April 20, 2009 3:24 PM
  • Thanks for your answer.

    The problem is:

    E.164 in AD is +46 070 12345678  Where 46 is country code and 070 is area code
    PBX want's the samenumber as 0007012345678 where the first 2 zeros are for getting an external line

    Regards
    Peter
    Monday, April 20, 2009 3:31 PM
  • Hi

    If you have a gateway between the OCS and the Aastra the gw could probably strip the + and convert 46 to external access code.
    If not (Direct SIP), use number_conversion command in Aastra to handle the problem.
    If you dig deep into to Alex (Aastra Command Line Library) you will find the possibility to handle E.164 (International number type)as well. The Aastra MX-One/MD110 is very capable in number conversion.

    /T

    Wednesday, June 10, 2009 7:10 AM
  • Peter,  I second the recommendation to have either Astra or a media gateway (if used) handle number translation.  If you attempt to normalize numbers away from E.164 within OCS you can have all sorts of 'issues' that must be customized around and the OCS deployment just becomes more difficult.  It is always best practice (and much smoother) to keep everything inside OCS in full E.164 format and then allow pattern translation to happen after traffic leaves the Mediation Server.
    Jeff Schertz, PointBridge | MVP | MCITP: Enterprise Messaging | MCTS: OCS
    Wednesday, June 10, 2009 11:45 AM
    Moderator
  • Thanks all

    Finally I've got the PBX guys to do the number conversion.

    Peter
    • Proposed as answer by Sonander Wednesday, June 10, 2009 11:56 AM
    Wednesday, June 10, 2009 11:56 AM
  • Hello,

    To setup this number conversion in the Aastra MX-ONE you should use the following commands in the MDSH shell. (Or you could use the web-based MX-ONE Manager TS which would make this somewhat more user friendly.)

    The commands are...
        
    number_conversion_initiate 
    number_conversion_print
    number_conversion_end 

    ...they all take "-help" as an argument, as in the example below.

    I think your number conversion command should look something like:

    number_conversion_initiate -route xx -conversiontype 0 -entry 46 -numbertype 1 -truncate 2 -pre 00

    Also check the 10th digit of the SERV parameter of your trunk since it decides of number conversion should be applied or not. (ROCAP:ROU=xx;)

    Hope this helps!

    /mk


    MDSH> number_conversion_initiate -help

    NAME
         number_conversion_initiate - Number conversion initiate

    SYNOPSIS
         number_conversion_initiate -conversiontype <conversiontype>
         -entry <entry_number>[,<entry_number>...] (5 entries)
         -numbertype <numbertype>[-truncate <truncate>][-pre <pre_number>]
         [-newtype <newtype>][-cont <cont>][-route <route>]
         [-targetdest <targetdest_number>]

         number_conversion_initiate -conversiontype <conversiontype>
         -entry <entry_number>[,<entry_number>...] (5 entries)
         [-bcap <bcap>][-hlc <hlc>][-route <route>]

         number_conversion_initiate -conversiontype <conversiontype>
         -entry <entry_number>[,<entry_number>...] (5 entries)
         [-truncate <truncate>][-pre <pre_number>]

    PARAMETERS
         -bcap           Bearer Capability.

                         Values: 1-6

                         1 = SPEECH
                         2 = 3.1 kHz Audio
                         3 = 64 kbit/s restricted
                         4 = 64 kbit/s unrestricted
                         5 = UDI-TA (7 kHz)
                         6 = 16 kbit/s unrestricted

                         This parameter is only valid for Bearer Capability/High
                         Level Compability substitution i.e., conversiontype
                         3.


         -cont           Search continue indication.

                         Values: 0-1

                         0 = Conversion shall not continue
                         1 = Conversion continues in the internal
                             directorty number table

                         This parameter is only valid for received B-number
                         i.e., conversiontype 0.


         -conversiontype Type of traffic case.

                         Values: 0-6

                         0 = Received B-number
                         1 = Sent A-number and sent connected number
                         2 = Received A-number and received connected
                             number
                         3 = Bearer Capability/High Level Compability
                             substitution
                         4 = Inbound Conversion
                         5 = Sent A-number and sent connected number to
                         extension
                         6 = Received A-number for calls from mobile/fixed
                             remote extensions


         -entry          Number to be converted.

                         Values: 0-99999999999999999999, (1-20 digits)


         -hlc            High Level Compatibility.

                         Values: 0-8

                         0 = No teleservice
                         1 = Group 2/3 facsimile
                         2 = Teletex
                         3 = Videotex
                         4 = Group 4 facsimile
                         5 = Teletex 64
                         6 = Videotex 64
                         7 = Timelink
                         8 = 1/2 Video

                         This parameter is only valid for Bearer Capability/High
                         Level Compability substitution i.e., conversiontype
                         3.


         -newtype        New type of number after the conversion.

                         Values: 0-7

                         0 = Unknown public number
                         1 = International number
                         2 = National number
                         3 = Network specific number
                         4 = Local public number
                         5 = Unknown private number
                         6 = Local private number
                         7 = Level 1 Regional number

                         This parameter is only valid for sent A/connected
                         number and received A/connected number i.e.,
                         conversiontype 1 and 2.


         -numbertype     Type of number.

                         Values: 0-7, 10-12

                          0 = Unknown public number
                          1 = International number
                          2 = National number
                          3 = Network specific number
                          4 = Local public number
                          5 = Unknown private number
                          6 = Local private number
                          7 = Level 1 Regional number
                         10 = Internal directory number when sent
                              to public network
                         11 = Internal directory number when sent
                              to private network
                         12 = Internal directory number (used when
                              search continues)


         -pre            Digits to insert at the beginning of the number.

                         Values: 0-9999999999, (1-10 digits)

                         For conversion type sent A-number/sent connected
                         number i.e conversiontype 1, the parameter pre
                         takes the following format.

                         Values: 0-99999999999999999999, (1-20 digits)


         -route          Route number.

                         Values: 1-250


         -targetdest     Target destination number.

                         Values: 0-99999, (1-5 digits)

                         This parameter is only valid for sent A/connected
                         number i.e., conversiontype 1.


         -truncate       Number of digits to truncate.

                         Values: 0-20

                         This parameter is not valid for Bearer Capability/High
                         Level Compability substitution i.e., conversiontype
                         3.

     

    DESCRIPTION
         number_conversion_initiate is used for initiating number conversion
         and Bearer Capability/High Level Compatibility substitution data.
         This command can also be used to change already initiated conversions.

         Number conversion can be made per system or at route level. If
         parameter route and targetdest are omitted the number conversion
         will be made for the whole system. By stating the parameter route
         the number conversion will be route dependent. Similarly, by
         stating the parameter targetdest the number conversion will be
         destination dependent. The route/destination dependent number
         conversion will override number conversion per system.

         It is possible to convert the received B-number, the sent connected
         number, the sent A-number, the received A-number and the received
         connected number in any combination.
         It is also possible to change the type of number using parameter
         newtype at conversion of received A/connected number.

         See the parameter numbertype for the range of values for the
         public and private networks.

         At received B-numbers, the conversion can be done in two steps:

         - Remove, add or change the international, national, local public,
          level 1 Regional prefixes or the route access code.
          - Convert the internal directory number.

         In the first step, parameter cont will indicate if conversion
         continues in the internal directory number table or not. If the
         conversion does not continue, the second step will not be done.

         If cont is omitted, default value 'not continue' is assumed.

         For Bearer Capability and High Level Compatibility substitution
         it is possible to substitute the Bearer Capability or/and the
         High Level Compatibility depending on the received B-number.

         See the parameters bcap/hlc for the range of values supported
         for Bearer Capability/High Level Compatibility respectivly.

         In addition, it is possible to perform inbound conversion when
         requiring an internal numbering plan with extension numbers exceeding
         five digits or when using international numbers (e.g. +46..)
         internally from a terminal that has a '+' capability.

         Internally, the system can handle a maximum of five digits for
         an extension number, but the user may dial more than five.

         This command is also used for a mobile extension or a fixed remote
         extension. In this case the A-number should be associated to
         the external public/PLMN subscriber number, and command number
         conversion initiate is used with the following  parameters:
         entry = A-number, conversiontype = 6, truncate = total number
         of digits of the A-number, pre = External number.

    EXAMPLES
         Mx-One receives a local private incoming call and the received
         B-number is 2803. The Mx-One internal numbering plan has all
         the directory numbers beginning with 57XX. It is necessary to
         convert the two first digits of the received B-number. Digits
         28 are to be replaced by 57.
              example% number_conversion_initiate -conversiontype 0 -numbertype 6 -entry
                       28 -truncate 2 -pre 57

         PABX A calls to the number 0-5441500 which is the public number
         of the extension 300 in the PABX B. PABX B sends the connected
         number (5441500) by changing the first digit of the directory
         number (3) to (5).
              example% number_conversion_initiate -conversiontype 1 -numbertype 10 -entry
                       3 -truncate 1 -pre 5

         PABX A calls to the number 0-5441500 which is the public number
         of the extension 300 in the PABX B and having the route access
         code as 6051. PABX A sends the A- number (5441500) by changing
         the first digit of the directory number (3) to (5).
              example% number_conversion_initiate -conversiontype 1 -numbertype 10 -entry
                       3 -truncate 1 -pre 5 -targetdest 6051

         In a terminating Mx-One the received national A-number is 61-5347554.
         The national prefix will be removed (61), and the type of number
         will be changed to local public number (newtype).
              example% number_conversion_initiate -conversiontype 2 -numbertype 2 -entry
                       61 -truncate 2 -newtype 4

         A Bearer Capability substitution shall be made for number 6101.
              example% number_conversion_initiate -conversiontype 3 -bcap 2
                       -entry 6101

         The internal extension numbering plan of a PABX is 62510000 to
         62519999. The user must dial 8 digits to make an internal call.
              example% number_conversion_initiate -conversiontype 4 -truncate 4
                       -entry 6251

         Some terminals can use '+' and dail an international number to
         an internal user, convert the international number to an internal
         number
              example% number_conversion_initiate -conversiontype 4 -numbertype 1
                       -truncate 6 -entry 468568

    Wednesday, June 10, 2009 1:14 PM