Centralized Voicemail

From SIPfoundry sipXecs IP PBX, The Open Source SIP PBX for Linux - Calivia

Jump to: navigation, search

Contents

Centralized Voicemail on sipXecs

As part of release 4.2 Centralized Voicemail (CVM) support is available on sipXecs. This functionality requires the following hardware:

  1. Legacy PBX (e.g. Nortel CS1000(CS1K)) with PRI card.
  2. Audiocodes Mediant1000/2000/3000 with PRI trunk module.
  3. sipXecs system with Voicemail server role selected.

Configuration

It is recommended to use a PRI-E1 carrier between the Mediant1000 and the Legacy PBX since that provides 30 B-channels. If a PRI-T1 were used it would provide 23 B-channels. The PRI interface should be configured with the ISO flavour of QSIG and the QSIG supplementary services should be configured to use ASN.1 Integer coding, although ASN.1 Object coding could used if the appropriate configuration changes are made.


The CS1K Legacy PBX uses either a Coordinated Dialing Plan (CDP) or a Uniform Dialing Plan (UDP) for private networking. A CDP number is composed from the phone extension, and a UDP number is composed from the Access Code plus the Location Code (LOC) plus the phone extension. The following configuration examples use a CS1K UDP Dialing Plan with:

  • CS1K LOC=394
  • CS1K PRI LOC=392 (which implies an sipXecs LOC=392)

Notes:

  1. We can light the lamp for the CS1K phone 8811 by sending MWI to called number 63948811 (NPI/TON=unknown/unknown) or 8811 (NPI/TON=unknown/unknown) on the CS1K. The MWI called number is automatically set to the external user's User ID by the Mediant1000.
  2. For the UDP dialing plan the CS1K sends incoming calls from 3948811(NPI/TON=Private/Level1Regional and expects something (either the audiocodes or sipXecs) to add the "6" and convert back to 63948811, however that functionality isn't currently available. To work around this on the sipXecs, for the external user we need a appropriate alias when using the UDP dialling plan, e.g. userid=63948811, alias=3948811.
  3. Local users on the sipXecs need an appropriate alias when using the UDP dialling plan, e.g. user=3202, alias=3923202
  4. Configure an access code to route calls out the SIP trunk so that calls to the trunk don't get confused with calls to the external user. Callers don't need to dial the access code, it's used automatically when routing the call. e.g. Using an audiocodes gateway access code "81" the Dial Rule would be:
    • for UDP: gw-dialed=81+<8digits>, gw-result=<matched suffix>
    • for CDP: gw-dialed=81+<4digits>, gw-result=<matched suffix>


Legacy PBX Configuration

This section discusses the use of a Nortel CS1000, however other vendor's switches can also be used.

Using Meridian1 (release 25.40 or later) or CS1K (release 4.0 or later), install software packages:

 175 (Network Message Service)
 263 (QSIG Basic Call/Name Display) 
 305 (QSIG Generic Function) 
 316 (QSIG Supplementary Services)

Using a PRI-E1 card (NTBK50AA Rlse07) with DIP switches:

 S1=Down,Down
 S2=Down
 S4=Up,Up

D-channel configuration:

 IFC: ISGF                                      (ISO QSIG)
 RCAP: COLP NDI CCBI CCNI PRI DV3I CTI QMWI     (the "I" is for ASN.1 Integer coding)
 PR_TRIGS: DIV 2 3
 PR_TRIGS: CNG 2 3
 PR_TRIGS: CTR2 2 3
 PR_RTN: NO

Analog phone configuration:

 HUNT 63921001     (CFB to voicemail)
 CLS (Class of service):
   FNA  (forward no answer allowed)
   FBA  (forward busy allowed)
   XFA  (transfer allowed)
   WTA  (warning tone allowed)
   MWA  (message waiting allowed)
   LPA  (message waiting lamp allowed)
   CFXA (call forward external allowed)
   HTA  (Hunting allowed)
 FTR CFW 16        (maximum number of digits in CFAC)
 FTR FDN 63921001  (CFNA to voicemail after 4 rings)

Mediant1000 Configuration

Using firmware version: 5.60A.017.005

To add the Audiocode gateway from the sipXecs configuration page:

 Device / Gateway / Add new gateway ... SIP trunk
   Name=audiocodes, Address=xx.xx.xx.xx, Serial Number=xxxxxxxx, Firmware Version=5.6

To avoid an authentication problem when calls are forwarded back to the SCS:

 Device / Gateway / audiocodes / Caller ID
   Default Caller ID=63921001
   Ignore user Caller ID=N
 Users / User 3202 / Caller ID      (for each local user)
   Caller ID=63923202
   Block Caller ID=N

The following parameters can be configured from the sipXecs configuration page:

 PSTN Lines / Add PSTN Line
   Trunk
     Protocol type = E1 QSIG
     Ending B-channel=31
   ISDN  (Show advanced settings)
     ISDNIBehavior=1073741824      (this seemingly random number is actually 0x40000000)
     TrunkTransferMode=2      
 Device / Gateway / audicodes / Supplementary Services (Show advanced settings)
   Enable Message Waiting Indication=Y
   Calling Party Number for PSTN MWI=63921001
   Called Party Number for PSTN MWI=ServedUser

Dial Plan Configuration

Configure the Dialing Plan on sipXecs:

 System / Dial Plans
   Voicemail1 (type=Voicemail): Internal extension length=4, Voicemail extension=1001, 
                                Voicemail inbox prefix=8
   Voicemail2 (type=Voicemail): Internal extension length=7, Voicemail extension=3921001, 
                                Voicemail inbox prefix=8
   Meridian (type=Site to Site): Dialed number [prefix=81 and 8 digits], 
                                 Resulting call [dial=Matched suffix]
                                 Gateway=audiocodes

Configure the external user on the sipXecs system (to match phone 8811 on the CS1K with LOC=394):

 User 63948811 (alias=3948811)
   Unified Messaging / External MWI = 8163948811
   Call Forwarding
     Extension 63948811 will ring first for 15 seconds
     Always Enabled At the same time forward to 8163948811 ring for 15 seconds

Note that these per-user settings can be automatically applied to a new user by first configuring a User Group for the new user. The prefix "81" will then be automatically added to the user "63948811" and used to auto-populate the External MWI and Call Forwarding fields. The required User Group settings are:

 User Groups
   External User
     Assign external user contact number to new users = Yes
     External user extension prefix = 81

Call Scenerios

LegacyPBX Setup:

AC1=6
PBX home LOC=394
PbxSetA=8809
PbxSetB=8811
PRI-QSIG LOC=392

SipXecs Setup:

User SipSetA=3201, alias=3923201 (with registered phone)
User PbxSetA=63948809, alias=3948809, external-contact=8163948809
User PbxSetB=63948811, alias=3948811, external-contact=8163948811
Mediant1000 gateway dialed-number=81+<8digits>, resulting-call=<matched suffix>

Notes on ISDN numbering plan:

[UDP] indicates an ISDN NPI/TON=Private/Level1Regional 
[unk] indicates an ISDN NPI/TON=Unknown/Unknown

SipXecs phone calls LegacyPBX phone

  1. Phone SipSetA dials 63948809
  2. Call gets forked to 8163948809 and gets presented to the Mediant1000 with a To Header 63948809
  3. Mediant1000 sends a SETUP to the LegacyPBX with CalledNumber=63948809[unk]
  4. Phone PbxSetA rings
  5. Call to user 63948809 times out and goes to sipXecs voicemail, which initiates a message deposit to user 63948809 mailbox.

LegacyPBX phone calls sipXecs phone

  1. Phone PbxSetA dials 63923201
  2. LegacyPBX sends a SETUP to the Mediant1000 with CalledNumber=3923201[UDP]
  3. Phone SipSetA rings
  4. Call to user 3201 times out and goes to sipXecs voicemail, which initiates a message deposit to user 3201 mailbox.

LegacyPBX phone calls LegacyPBX phone

  1. Phone PbxSetA dials 8811 and phone PbxSetB rings.
  2. Call gets Call Forwarded to 63921001.
  3. Redirected PRI-QSIG call is presented to the Mediant1000 with CalledNumber=3921001[UDP] and RedirectingNumber=3928811[UDP]
  4. Call goes through the Mediant1000 and gets presented to sipXecs with a Diversion Header of 3948811 and a To Header of 3921001.
  5. sipXecs voicemail answers the call to 3921001 and initiates a message deposit to user 63948811 mailbox.
Personal tools