Wednesday, April 14, 2010

Tuesday, April 13, 2010

Barge and cBarge on CUCM

To add Barge or cBarge :
  1. Barge: 
  • Device / Phone : turn Privacy to OFF (default is ON)
  • Device / Phone : set Built In Bridge to ON
  • Device / Phone : select Single Button Barge to either Barge or cBarge (default is OFF)
  • Device / Phone : select a Softkey Template. For Barge, a Standard User template is sufficient
  • Device / Phone : add a shared-line DN, i.e   2001 for both test phones
The 2 test phones will now have a second shared-line button. On test-phone1, use shared-line to dial to another number.  Notice that test-phone2 second line will display a "double handset" sign on the shared-line and the shared-line button will turn RED.  Press the RED button on test-phone2 to barge in
  1. cBarge: 
  • Device / Phone : turn Privacy to OFF (default is ON)
  • Device / Phone : set Built In Bridge to ON
  • Device / Phone : select Single Button Barge to either Barge or cBarge (default is OFF)
  • Device / Phone : select a Softkey Template. For cBarge, copy Standard User template to a new template and add cBarge softkey in call state "Remote In Use"
  • Device / Phone : add a shared-line DN, i.e   2001 for both test phones
The 2 test phones will now have a second shared-line button. On test-phone1, use shared-line to dial to another number.  Notice that test-phone2 second line will display a "double handset" sign on the shared-line and the shared-line button will turn RED.  Press the RED button on test-phone2 to cbarge in. Note that cBarge use CFB resource , therefore MRG / MRGL must be set up and assigned to Device/Phone.

Thursday, April 8, 2010

Tasks notes - important, go over

  1. CUE and CME:
  • add voice translation-rule/profile for VM numbers
  • enable SIP - H323 interwork via  "voice service voip"
  • bind SIP to interface gig0/0.230 (or same interface with CME)
  • enable SIP-UA
  • add Dial-Peer to make sure calls will reach CUE with SIP protocol and G711u - don't forget to include voice translation-profile
  • add Dial-Peer to make sure MWI numbers will use G711u
  • add num-exp (i.e num-exp 3500 21313500) to enable calls from PSTN to reach VM
  • add voicemail number in CME and call-forward in ephone-dn
  • add MWI on/off ephone-dn
  • add Transcoder into CME if VM access from other sites (HQ or BR1) is needed
  • use CUE Wizard for rest of task
  1.  


    Wednesday, April 7, 2010

    AAR simplified in 5 minutes

    In brief, AAR is for Automated Alternate Routing in case the WAN/IP network routing or bandwidth is restrictive to pass voice calls. Don't confuse this with SRST which is another subject

    Procedure to setup AAR:

    1. Decrease the bandwidth between sites so that a voice call wont have enough bandwidth, i.e change location bandwidth to 20K (minimum is 24K for g728 and 80K for g711).
    2. on CUCM, Call-Routing / AAR-Group, add AAR-HQ, AAR-BR1 ...
    3. Depend on the DialPlan configured previously, there 're 2 scenarios here for AAR routing. 
    4. If you configured global Route-Pattern  \+!  then adding Translation-Pattern to route calls , there 're no need to add Dial_prefix between sites since the global RP  \+! should match all routes.
    5. If you configured multiple RP for local/LD/INTL numbers, then calls using PSTN from HQ to BR1 should include prefix 9 (if BR1 External Phone Number Mask is 11 digits , i.e 1312301XXXX)  or prefix 91 (if BR1 External Phone Number Mask is 10 digits , i.e 312301XXXX)  and local calls inside HQ should use prefix 9 .
    6. Update both HQ and BR1 Device/Phone AAR-CSS and AAR-Group with appropriate info. 
    7. Update both HQ and BR1 Device/Phone/Line  AAR Settings with appropriate AAR Group.
    8. Update both HQ and BR1 Gateway  AAR-CSS and AAR-Group with appropriate info.
    Test by changing Location bandwidth of BR1 site to 20K. Calls from HQ phone to BR1 phone should be using PSTN with message "Network Congestion - Rerouting" appears on the HQ phone.

    Wednesday, March 24, 2010

    IPIPGW from CUCM to BR2

    Tasks: configure HQ gw as IPIPGW aka CUBE to handle SIP calls from CUCM to BR2 CME
    Recall that CUCM is using a SIP-TRUNK and codec g711u while CME on the BR2 side is using H.323 and codec g729r8.
    1. config HQ gw as IPIPGW with SIP interfacing CUCM and H323 toward BR2 CME
                                          voice service voip
                                             allow-connections h323 to h323
                                             allow-connections h323 to sip
                                             allow-connections sip to h323
                                             allow-connections sip to sip
                                          sip
                                               bind control source-interface Loopback0
                                               bind media source-interface Loopback0

                                           interface Loopback0
                                              ip address 10.10.32.1 255.255.255.255
                                              ip ospf network point-to-point
                                              h323-gateway voip interface
                                              h323-gateway voip h323-id HQ-IPIPGW
                                              h323-gateway voip bind srcaddr 10.10.32.1
                                           gateway
                                           sip-ua
    1. config HQ gw with DSP resource to do transcoding. NOTE: IPIPGW binds to Loopback0 while DSP resources bind to Gig0/0.30.  Test by calling from HQ toward BR2 PSTN and place both phones off-hook.  If TRANSCODING is not working , will get busy tone when going off-hook.
                                        voice-card 1
                                           no dspfarm
                                          dsp services dspfarm
                                        sccp local GigabitEthernet0/0.30
                                        sccp ccm 10.10.30.1
                                        sccp ip precedence 3
                                        sccp
                                        sccp ccm group 1
                                               associate ccm 1 priority 1
                                               associate profile 1 register HQ-XCODER
                                        !        
                                       dspfarm profile 1 transcode
                                                maximum sessions 2
                                               associate application SCCP
                                        telephony-service
                                               sdspfarm units 1
                                               sdspfarm transcode sessions 2
                                               sdspfarm tag 1 HQ-XCODER
                                               max-ephones 2
                                               max-dn 4
                                               ip source-address 10.10.30.1 port 2000
                                               create cnf-files
    1. config HW gw with a dial-peer to point H323 dialed string to BR2
                                      dial-peer voice 1000 voip
                                              description ==== IPIPGW h323 to BR2 area code
                                              destination-pattern 4423.T
                                              session target ipv4:10.10.32.3
                                              dtmf-relay h245-alphanumeric
                                               no vad  
                                              codec g729r8
                                      dial-peer voice 1001 voip
                                             description ==== abbrev. dialing to BR2 internal IP phones
                                             destination-pattern 3...$
                                             session target ipv4:10.10.32.3
                                             dtmf-relay h245-alphanumeric
                                              no vad
    1. Add a SIP-TRUNK on CUCM, this is SIP trunk from CUCM to HQ gw.  Device-name = SIP-TRUNK-IPIPGW , DP = HQ , location = HQ , SIP destination-address = HQ Loopback0
    2. Add this SIP-TRUNK into RG-BR2 . 
    3. Add  RL-TEHO-HQ-TO-BR2  with 1st RG = RG-BR2 (Use Calling Party's External Phone Number Mask = ON , Discard Digits = predot) , 2nd RG = RG-HQ (Use Calling Party's External Phone Number Mask = ON , Discard Digits = predot , Prefix Digits (Outgoing Calls) = 011 ) .  
    4. Add Route-Pattern    9011.4423XXXXXXXX  , partition = PT-HQ-INTL , Route-List = RL-TEHO-HQ-TO-BR2 , urgent priority , strip PREDOT .
    5. For abbrev. dialing to BR2 internal IP phones , add following :   RL = RL-TEHO-HQ-TO-BR2-INTERNAL with  1st RG = RG-BR2 (Use Calling Party's External Phone Number Mask = ON , Discard Digits = predot) , 2nd RG = RG-HQ (Use Calling Party's External Phone Number Mask = ON , Discard Digits = predot , Prefix Digits (Outgoing Calls) = 01144232131 ) .  Pretty much same RL as on step 3 , except for the PSTN dialing part .  Add Router-Pattern  3XXX , PT = PT-internal , RL = RL-TEHO-HQ-TO-BR2-INTERNAL
     This should take care of HQ side, now we need to configure BR2 to handle incoming H323 calls
    1. config BR2 as H323 GW
                       interface Loopback0
                              ip address 10.10.32.3 255.255.255.255
                              ip ospf network point-to-point
                              h323-gateway voip interface
                              h323-gateway voip h323-id BR2
                              h323-gateway voip bind srcaddr 10.10.32.3
                       gateway
    1. config voice translation-rule & dial-peer  to handle incoming calls from VOIP
                      voice translation-rule 1
                             rule 2 /^44232131\(3\)\(...\)$/ /\1\2/    ==== strip to 3xxx for BR2 IP phones
                             rule 3 /^4423\(........\)$/ /9\1/              ==== strip to 9xxxxxxxx for BR2 local calls
                      voice translation-profile teho-cucm-to-br2
                            translate called 1
                      dial-peer voice 2000 voip
                            description ==== incoming from CUCM
                             translation-profile incoming teho-cucm-to-br2
                             incoming called-number 4423.T
                            dtmf-relay h245-alphanumeric
                             no vad
                            codec g729r8

    Test calls by calling from HQ phones to BR2 internal phones + BR2 area PSTN numbers
    1. config voice translation-rule and dial-peer in BR2 for abbrev. dialing to CUCM
                              voice translation-rule 2
                                    rule 1 /1\(...\)$/ /7752011\1/
                                    rule 2 /1\(...\)$/ /3123012\1/
                              voice translation-pro to-cucm
                                    translate called 2
                              dial-peer voice 2001 voip
                                   description ==== from BR2 to CUCM
                                   translation-profile outgoing to-cucm
                                   preference 1
                                  destination-pattern [1-2]...$
                                  session target ipv4:10.10.32.1   ==== this is HQ Loop 0 int
                                  dtmf-relay h245-alphanumeric
                                  codec g729r8
                                  no vad
    1. config IPIPGW dial-peer to handle incoming calls from BR2
                            dial-peer voice 1001 voip
                                 description ==== BR2 calls to CUCM
                                  preference 1
                                 destination-pattern 775.T
                                 session protocol sipv2
                                 session target ipv4:10.1.200.21   ==== this is CUCM IP addrs
                                 dtmf-relay rtp-nte
                                 codec g711ulaw
    1.   config CUCM to handle incoming calls from BR2
                     add  PT = PT-IPIPGW , CSS = CSS-IPIPGW (with PT-INTERNAL & PT-IPIPGW)
                     set SIP-TRUNK-IPIPGW with CSS-IPIPGW , significant-digits = ALL
                     add translation-pattern , pattern = 775201.XXXX , PT = PT-IPIPGW , CSS = CSS-IPIPGW

    Additional tasks for BR2 to call HQ area code numbers
    1. dial-peer voice 2002 voip   ==== dial-peer on BR2
       description ==== from BR2 to CUCM area code
       preference 1
       destination-pattern 9001775.......$
       session target ipv4:10.10.32.1
       dtmf-relay h245-alphanumeric
       codec g729r8
              no vad  
    1. voice translation-rule 1    ==== add voice translation-rule on HQ GW
              rule 3 /9001\(.*\)/ /\1/
      voice translation-profile DID
              translate called 1
      dial-peer voice 1002 voip    ==== same dial-peer configured before on HQ
              translation-profile incoming DID
              incoming called-number .
    2. on CUCM , add other PT such as PT-HQ-LOCAL , PT-HQ-LD into CSS-IPIPGW . 
    3. Add Translation-pattern , pattern = 775.XXXXXXX , PT = PT-IPIPGW , CSS = CSS-IPIPGW , discard-digit = PREDOT , Prefix Digits (Outgoing Calls) = 9  (remember , we want to use the HQ GW for PSTN local calls).
    Test by calling from BR2 IP phone to HQ PSTN numbers + HQ IP phones.

    CAVEATS:  TEHO calls from BR2 to BR1 area configs:
    • on BR2, add voip dial-peer 
                     dial-peer voice 3005 voip
                          translation-profile outgoing  teho-to-cucm
                          destination-pattern  9001312.T
                          session target ipv4:10.10.32.1
                          codec g729r8
                          dtmf-relay h245-alphanumeric
                          no vad
    • on HQ gw, add voip dial-peer to forward incoming calls from BR2  to CUCM, but specify g729codec
                    dial-peer voice 1004 voip
                          description ==== handle calls from BR2 , teho to BR1 area
                          destination-pattern  312.T
                          session protocol sipv2
                          session target ipv4:10.1.200.21
                          codec g729r8
                          dtmf-relay h245-alphanumeric

    • Test by calling from BR2 phones to BR1 area code number.  Should see calls coming out of BR1 GW.  Note: on CUCM, should set Region for G729 between HQ and BR1 (default is G711).

    Tasks to go over before the LAB test - voice exam check list

    1. DialPlan with GK - posted
    2. DialPlan with IPIPGW - posted
    3. DialPlan with COR - done
    4. DialPlan with Local-route (single RP, translation-pattern, transformation-pattern)
    5. CME with SCCP - done
    6. CME with SIP endpoints - need to do SIP
    7. CUE with CME - posted
    8. CUE with CUCM - posted
    9. Extension mobillity - posted
    10. SNR - posted
    11. SRST
    12. AAR - posted
    13. Call park, Call pickup, Barge, Callback - done Barge/cBarge, CallBack, callPark, callPickup = not enough phone
    14. IPMA - posted
    15. QOS -
    16. IPCCEx scripting - need to do
    17.  
    18.  
    19.  
    20. https://learningnetwork.cisco.com/docs/DOC-7024

    Tuesday, March 16, 2010

    Integrating CUE and CUCM

    CUE config:
    interface Service-Engine2/0
     ip unnumbered GigabitEthernet0/0.130
     service-module ip address 10.10.130.3 255.255.255.0    >>> this is the IP addr of CUE
     service-module ip default-gateway 10.10.130.1
    ip route 10.10.130.3 255.255.255.255 Service-Engine2/0
    >>> no other config on CUE or IOS router is necessary

    Log into CUE module and restore to factory default
    BR1#service-module in2/0 sess
        ....
    NME-CUE#
    NME-CUE# offline
        ....
    Are you sure you want to go offline[n]? : y
        ....
    NME-CUE(offline)# restore factory default

    NME-CUE(offline)#
    MONITOR SHUTDOWN...
                        After a few minutes, CUE will boot up, fill in the necessary info
    Do you wish to start configuration now (y,n)? y

           .................

    Enter Call Agent
     (CME, CCM, or enter to use CME as default): CCM                         >>>> make sure you select CCM
    Selected Call Agent: CCM
    Setting Call Agent to CCM in /usr/wfavvid/workflow.properties
        ....
        ....
    Enter administrator user ID:
      (user ID): admin
    Enter password for admin:
      (password):
    Confirm password for admin by reentering it:
      (password):

    SYSTEM ONLINE
    br1-cue# sh software license
        ....
    Core:
     - Application mode: CCM
     - Total usable system ports: 8    >>>CUE has 8 lic ports, make sure on CUCM, you will add 8 CTI ports .....  hmmmm, maybe 2 CTI ports is good enough . Verified operation on 3/29 with 2 CTI ports.
        ....
    br1-cue#

    1. Add CTI port on CUCM, under Device/Phone, add new Phone Type = CTI Port, device name = cue1,  DP = BR1, location = BR1. Add new DN for the CTI Port, DN = 1601, PT = PT-USA . Repeat for all ports of CUE. Verified operation on 3/29 with 2 CTI ports.
    • IMPORTANT : don't forget to config "External Phone Number Mask" for CUE CTI ports and Route-Point , or they won't register in CUCM
      1. Add CTI Route Point on CUCM, under Device/CTI Route Point, add new CTI RP, device name = BR1-CUE ,  DP = BR1, location = BR1 , CSS = CSS-GLOBAL. Add new DN for the CTI RP , DN = 1600, PT = PS-USA, CSS = CSS-GLOBAL.
      1. Add new application user, username = cue , password = cisco , Controlled Devices = cue1, cue1 .... cue8  , BR1-CUE , Groups/Roles = standard CTI enabled, CTI control of all devices, AXL API access.  This username = CUE JTAPI username. Controlled Devices = BR1-CUE + cue1 + cue2 ...
      1. Create new Voicemail Pilot and Profile for CUE - on CUCM , create CUE Voicemail Pilot (DN=1600)  and CUE Voicemail Profile . Assign this Voicemail Profile into IP phone (i.e. BR1 Phone1 , br1user1 ...) which wants to use CUE instead of Unity.
      - Web login into CUE and run the Wizard , Web User Name:= admin/cisco , JTAPI User Name = cue/cisco. Alternately, you can use cue/cisco & cue/cisco for both Web and JTAPI usernames. Import CUCM users and complete Wizard setup.

      - Reload CUE.  Re-login into CUE and verify imported users has "Primary Extension , i.e 2001, 1003

      - Test by dialing into the IP phone (BR1 phone1) which was setup with the CUE Voicemail Profile above, should get the CUE prompt and MWI led should lit up.  If a fast BUSY tone is heard when dialing CUE pilot # , there 're  a mismatch of codec between sites (remember that CUE uses SIP and G711 only) . Either change codec relationship in System/Region or add in required Transcoder.

      Screen shot of CTI Ports and CTI RP on a working CUCM. Notice that both CTI Ports & CTI RP are registered to CUCM with CUE IP addrs (10.10.130.3)

      Friday, March 12, 2010

      CUCM dialplan with GK installed on the HQ router

      Tasks to accomplished:
         1. Calls from HQ to BR2 should be made over GK trunk with PSTN as backup
         2. Calls from HQ to BR2 area/city codes  should be made over GK trunk with PSTN as backup
         3. Calls from BR2 to HQ should use 4 digits dialing via GK trunk with PSTN as backup
         4. Calls from BR2 to HQ area/city codes should be made over GK trunk with PSTN as backup 

      HQ number = 17752011001
      BR2 number = 442321313001 (w/ 011 as international code)
      • config BR2 as GW   
      interface Loopback0
       ip address 10.10.32.3 255.255.255.255
       ip ospf network point-to-point
       h323-gateway voip interface
       h323-gateway voip id ZONE-01 ipaddr 10.10.32.1 1719  ==== ip addr of HQ Loop0
       h323-gateway voip h323-id BR2
       h323-gateway voip tech-prefix 1#
       h323-gateway voip bind srcaddr 10.10.32.3
      gateway      ====  don't forget to turn on gateway feature
      • config HQ for GK
      gatekeeper
       zone local ZONE-01 cisco.com 10.10.32.1  ==== define GK id
       zone prefix ZONE-01 1* gw-priority 9 TRUNK-GK-HQ_1
       zone prefix ZONE-01 1* gw-priority 0 BR2   ==== avoid sending calls with prefix 1 to BR2
       zone prefix ZONE-01 44* gw-priority 9 BR2
       zone prefix ZONE-01 44* gw-priority 0 TRUNK-GK-HQ_1  ==== avoid sending calls with prefix 44 to CUCM
        zone prefix ZONE-01 1... gw-priority 10 TRUNK-GK-HQ_1  === this is for HQ internal phones
        zone prefix ZONE-01 2... gw-priority 10 TRUNK-GK-HQ_1  === this is for BR1 internal phones

       no shutdown

      Configure following for those 4 tasks:

      1.    Task #1 -  Calls from HQ to BR2 should be made over GK trunk with PSTN as backup
      • In CUCM, add GK with HQ interface Loop0 IP address
      • add h.225 (GK controlled) trunk
                    - device name = TRUNK-GK-HQ
                    - device pool = HQ
                    - Inbound Calls , Significant digits = 4   (so that calls from BR2 to HQ will be stripped to 4 digits)

                    - Gatekeeper Name = HQ interface Loop0 IP address
                    - = gateway
                    - Technology Prefix = 1#
                    - Zone = ZONE-01
      • add GK trunk into a RG
      • add RG into RL , name = RL-GK-TO-BR2,  first RG = RG-BR2 , Prefix Digits (Outgoing Calls) = 1#44232131 ,   secondary RG = RG-HQ with Prefix Digits (Outgoing Calls) = +01144232131   RG-HQ served as PSTN backup from HQ to BR2
      • add Route Pattern, Route Pattern = 3XXX, Partition = PT-INTERNAL or PT-USA , Gateway/Route List = RL-GK-TO-BR2 .
      That should handle outgoing calls from CUCM HQ to BR2. Next, we need to configure BR2 router to handle incoming calls from GK
          voice translation-rule 200
            rule 1 /1#44232131\(....\)/ /\1/
            rule 2 /1#4423\(........\)/ /9\1/
            rule 3 /1#0114423\(........\)/ /9\1/
          voice translation-profile GK-INCOMING
            translate called 200
         dial-peer voice 2000 voip
            translation-profile incoming GK-INCOMING
            incoming called-number 1#.T
           dtmf-relay h245-alphanumeric
            no vad
            codec g729r8

      2.   Task #2 -  Calls from HQ to BR2 area/city codes  should be made over GK trunk with PSTN as backup
      • Add new RL , name = RL-TEHO-HQ-TO-BR2
      • First RG = RG-BR2,  Discard Digit = predot , Prefix Digits (Outgoing Calls) = 1# (remember that user will dial 9 011 4432 XXXXXXXX  for BR2 city/area code)
      • Second RG = RG-HQ , Discard Digit = predot trailing # 
      • Add new Route Pattern, pattern = 9.0114423XXXXXXXX# , Gateway/Route List = RL-TEHO-HQ-TO-BR2
      3.   Task #3 and #4 - Calls from BR2 to HQ/BR1 should use GK trunk with PSTN as backup. Notice that BR2 user will dial 9001775....... for HQ area code numbers and 1XXX for HQ internal phones.
      • on CUCM , add PT , CSS , to handle incoming call from BR2 . PT = PT-GK-TRUNK , CSS = CSS-GK-TRUNK with PT-INTERNAL + PT-GK-TRUNK + PT-HQ-LOCAL + PT-HQ-LD _ PT-BR1-LOCAL + PT-BR1-LD
      •  Add Translation-Pattern  1#1775.XXXXXXX  (pt = pt-gk-trunk , css=css-gk-trunk). 
        Discard PREDOT , prefix = 9 . Repeat for BR1 area code
      • Add Translation-Pattern  1#.XXXX  (pt = pt-gk-trunk , css=css-internal) . Discard PREDOT.  This is for HQ and BR1 internal phones
      • Change TRUNK-GK-HQ with CSS = CSS-GK-TRUNK , Significant Digits = ALL
      • configure BR2 dial-peer for abbrev. dialing to 1XXX & TEHO dialing to HQ area
                                              voice translation-rule 2    ==== strip out 900
                                                        rule 1 /9001775\(.*\)$/ /1775\1/
                                                        rule 2 /9001312\(.*\)$/ /1312\1/
                                              voice translation-profile teho-to-hq-area
                                                       translate called 2
                                             dial-peer voice 1004 voip
                                                      description ==== teho to HQ area code
                                                      translation-profile outgoing teho-to-hq-area
                                                     destination-pattern 9001775.T
                                                      session target ras
                                                      tech-prefix 1#
                                             dial-peer voice 2002 voip
                                                        description ==== abbrev dialing to HQ
                                                        destination-pattern 1...$
                                                        session target ras
                                                        tech-prefix 1#
                                                       dtmf-relay h245-alphanumeric
                                                       no vad
                                            ! PSTN backup dial-peer
                                            dial-peer voice 3001 pots
                                                      description ==== abbrev. dialing to HQ
                                                      prefer 2
                                                     destination-pattern 1...$
                                                      port 1/0:15
                                                     prefix 9001775201

        CME MWI interwork with CUE

        Remember that CME signaling is SCCP in nature and using G729r8 while CUE only supports SIP and G711u.
        To get MWI working between CME and CUE, perform following:

        ! dont forget the ever-important voice translation-rule
        voice translation-rule 400
         rule 1 /^.*\(3500\)$/ /\1/
         rule 2 /^.*\(3555\)$/ /\1/
        voice translation-profile TO-VM
         translate calling 400
         translate called 400
         translate redirect-target 400
         translate redirect-called 400
        !
        ! enable SIP and H323 intersignaling
         voice service voip
         allow-connections h323 to h323
         allow-connections h323 to sip
         allow-connections sip to h323
         allow-connections sip to sip

         sip
          bind control source-interface GigabitEthernet0/0.230    ====  do not use Loopback0
          bind media source-interface GigabitEthernet0/0.230      ====  or MWI won't work

        ! add a dial-peer to make sure calls to VM is using SIP and G711u
        dial-peer voice 3500 voip
         description ==== to VM
         destination-pattern 3500
         session protocol sipv2
         session target ipv4:10.10.230.3
         dtmf-relay sip-notify
         codec g711ulaw
         no vad
        ! add dial-peer to handle calls from PSTN to VM
        dial-peer voice 21313500 voip
         description ==== VM
         translation-profile incoming TO-VM
         translation-profile outgoing TO-VM
         max-conn 3
         destination-pattern 21313500
         session protocol sipv2
         session target ipv4:10.10.230.3
         dtmf-relay sip-notify
         codec g711ulaw
         no vad
        !  add this dial-peer to make sure MWI calls from CUE to CME is using G711u, otherwise MWI wont work
        dial-peer voice 3998 voip
         description ==== MWI on and off
         incoming called-number 399[8,9]....
         codec g711ulaw
         no vad
        !
        num-exp 3500 21313500
        num-exp 3555 21313555
        sip-ua   
         disable-early-media 180
        ! the usual CME config
        telephony-service
         max-ephones 10
         max-dn 40
         ip source-address 10.10.230.1 port 2000
         dialplan-pattern 1 21313... extension-length 4 no-reg
         voicemail 3500
        !  add MWI number , notice that MWI is in this format XXXX.... (XXXX = mwi number, .... = user number)
        ephone-dn  5
         number 3998....
         mwi on
        !
        ephone-dn  6
         number 3999....
         mwi off

        Wednesday, February 24, 2010

        Extension Mobility made easy - 20 minutes

        Cisco Extension Mobility allows users to temporarily access their Cisco IP Phone configuration such as line appearances, services, and speed dials from other Cisco IP Phones.

        1. Add new phone service , name it "Extention Mobility" - Device/Device Setting/Phone Services
         Use following URL for ext-mobility : http://yourCUCM_ip_addr:8080/emapp/EMAppServlet?device=#DEVICENAME#  . You can get this URL from the CUCM help menu

        2. Add new "Device Profile" for your IP phone , let 's name it "EM-7970" under menu Device/Device Setting/Device Profile . This device profile is dependent on the type of IP phone you have , ie. 7970 , 7960 ...  So if you have 2 different types of IP phones, you need to create 2 separate Device profiles, i.e EM-7970, EM-7960 ... Add DN to this Device-Profile, for ex: DN=1002, PT = PT-internal. Also need to subscribe this "Device Profile" to Ex-Mo service (otherwise user cannot log out of Ex-Mo).

        3. Configure end-user - under menu User Management/End Users, add new user or open an existing user, select Extension Mobility Available Profile "EM-7970" (added in step 2). Make sure the usual end-user groups (CTI enabled, CCM user ...) are configured, "allow control of device from CTI" BOX is checked and user is associated to a Phone (Controlled Device).

        4. Configure IP phone - under menu Device / Phone, select a phone.  Checked on BOX labeled "Enabled Extention Mobility" and select Log out profile to "EM-7970" (configured in step 2).  Subscribe phone to "Extention Mobility" service (configured in step 1).  Reset phone as needed.

        5. To test EM, on a same type IP phone , i.e. 7970, select service button. Phone should prompt with UserID and PIN # to log in. Once user is successfully logged in, phone will reset with correct softkey and button template.

        Tuesday, February 2, 2010

        ISDN L2 on HQ did not came up after configure MGCP

        On this particular instance whereas after I configured ISDN MGCP on the HQ router and ISDN layer2 did not came up. After checking with the obvious CLI such as "show mgcp endpoint , show mgcp status , show ccm-manager host"  and realize everything looked good. Decided to reload the router and that fixed the problem
                      
        HQ#sh isdn sta
        Global ISDN Switchtype = primary-ni
        %Q.931 is backhauled to CCM MANAGER 0x0003 on DSL 0. Layer 3 output may not apply
        ISDN Serial1/0:23 interface
                dsl 0, interface ISDN Switchtype = primary-ni
                L2 Protocol = Q.921 0x0000  L3 Protocol(s) = CCM MANAGER 0x0003
            Layer 1 Status:
                ACTIVE
            Layer 2 Status:
                TEI = 0, Ces = 1, SAPI = 0, State = TEI_ASSIGNED


        HQ#sh mgcp end       
        Interface T1 1/0
                     ENDPOINT-NAME    V-PORT     SIG-TYPE   ADMIN
                     S1/ds1-0/1@HQ     1/0:23        none   up   
                     S1/ds1-0/2@HQ     1/0:23        none   up   
                     S1/ds1-0/3@HQ     1/0:23        none   up   
        Interface T1 1/1
                     ENDPOINT-NAME    V-PORT     SIG-TYPE   ADMIN
        HQ#sh mgcp stat
          .........
         IP address based Call Agents statistics:
         IP address 10.1.200.21, Total msg rx 77,
                          successful 68, failed 9
              ................................ 
        HQ#sh ccm-manager hosts 
        MGCP Domain Name: HQ
        Priority        Status                   Host
        ============================================================
        Primary         Registered               10.1.200.21
        First Backup    None                    
        Second Backup   None                    

        Saturday, January 30, 2010

        Call-manager-fallback config for SRST and non-SRST modes

        For H323 GW interworking with CUCM cluster, User needs to config dial-peers in order to handle in/out calls from PSTN. For ex:

        dial-pee voice 1 pots    ==== to handle incoming calls from PSTN
            incoming called .
            direct-inward
            port 1/0:23
        dial-p voice 3120 voip    ==== to forward calls to CUCM
            destination-pat 1312301....$
            session target ipv4:10.1.200.21
            pref 1
        dial-p v 900 pots
            desc ==== local  ====    note that this dial-peer does NOT have prefix 9 because CM strips digit 9
            destination-pat [2-9]......$
            port 1/0:23

        In SRST mode, any local call with 7 digit would fail if call-manager-fallback is configured with secondary-dialtone 9

        To get around this issue configure voice translation-rule to strip out digit 9 when dial-out of PSTN

        voice translation-rule 100
                rule 1 /^9\(.*\)$/    /\1/        <<<  strip any string of digit beginning with 9
            voice translation-profile SRST-LOCAL
                translate called 100
        call-manager-fallback
            translation-profile incoming SRST-LOCAL

        Also, add translation-rule to trim incoming 10 digits to 4 digit
        voice translation-rule 1
           rule 1 /^312301\(....\)$/   /\1/   ==== strip out all digits except last 4
        voice translation-profile DID
           translate called 1
        dial-peer voice 1 pots
           translation-profile incoming DID
           incoming called-number .
           direct-inward-dial
            port 1/0:23

        In case SRST still did not work without adding digit 9 in the POTS dial-peer, add CLI  "access-code pri 9 direct-inward-dial" into call-manager-fallback config. Below is full config for call-manager-fallback:

        voice translation-rule 1
         rule 1 /^1312301\(....\)/ /\1/
         rule 2 /^312301\(....\)/ /\1/
        !
        voice translation-profile DID
         translate called 1
        !
        application
         service alternate default
         !
         global
          service alternate default
         !
        dial-peer voice 1 pots
         translation-profile incoming DID
         incoming called-number .
         direct-inward-dial
         port 1/0:23
        !
        dial-peer voice 911 pots
         description ==== 911
         destination-pattern 911
         port 1/0:23
         forward-digits 3
        !
        dial-peer voice 1000 pots
         description ==== local
         destination-pattern [2-9]......$
         port 1/0:23
        !
        dial-peer voice 1001 pots
         description ==== LD
         destination-pattern 1[2-9]..[2-9]......$
         port 1/0:23
         prefix 1
        !
        dial-peer voice 1002 pots
         description ==== INTL
         destination-pattern 011.T
         port 1/0:23
         prefix 011
        !
        dial-peer voice 2 voip
         description ==== to CUCM pub
         preference 1
         destination-pattern 312301....$
         session target ipv4:10.1.200.21
        !
        dial-peer voice 3 voip
         description ==== to CUCM sub
         preference 2
         destination-pattern 312301....$
         session target ipv4:10.1.200.20
        !        
        !
        gateway
         timer receive-rtp 1200
        !
        !
        call-manager-fallback
         secondary-dialtone 9
         max-conferences 12 gain -6
         transfer-system full-consult
         ip source-address 10.10.32.2 port 2000
         max-ephones 2
         max-dn 4
         system message primary SRST@BR1
         dialplan-pattern 1 3123012... extension-length 4
         transfer-pattern .T
         access-code pri 9 direct-inward-dial
         voicemail 917752011500
         call-forward pattern .T
         call-forward busy 917752011500
         call-forward noan 917752011500 timeout 10
        !

        Single Number Reach - aka SNR in 5 minutes

        SNR - single number reach in 5 minutes

        1. Config End-user hquser3, choose "Enable Mobility" and associate user with device (phone3)
        2. On Menu device/device setting/softkey template, copy standard user template to Mobile user template. Click on "configure softkey layout" link. Add Mobility softkey to on-hook and connected states.
        3. Config hqphone3 with Mobility softkey-template, and turn "Device Mobility Mode" ON
        4. Add new device/device setting/remote destination profile - ex: hquser3.
                - userid = hquser3
                - DP = DP-HQ
                - CSS = CSS-global
        5. Add new DN 1003 on remote destination profile ,
                - PT = PT-USA  (same PT as hqphone3/Line1)
            then save
        6. Add Associated Remote Destinations
                - check both Mobile Phone & Enable Mobile Connect
                - destination number = 918005553333
        7. Make sure Association Information - Line Association BOX is checked
        8. Test by dial 1003, external phone 18005553333 should ring. Otherwise, reset  hqphone3 and recheck config

        Tuesday, January 26, 2010

        Install CUPC in 10 minutes

            1. on CM create a PresenceSIP trunk with DP-HQ and location.
            2. use same hquser1 (or hqphone1) for Presence, verify that hquser1 is associated to HQphone1 device and belong to Standard CTI enabled group. Also verify HQphone1 device "Owner User ID" is hquser1
            3. add Application User CtiGw with CTI enabled and control of all CTI devices
            4. verify System/Service Parameters/CUP Publish Trunk is set to PresenceSIP trunk name
            5. set CM license capability for users to CUP & CUPC
            6. add presence as an application server in CM
            7. Bring up Presence and add in CM info . Need CM security password
            8. Config CUP system/security/incoming & outgoing ACL to ALL
            9. set CUP system/service parameters  proxy-domain to CUPS.cisco.com
            10. add CM as a Presence gateway under menu Presence/Gateway
            11. configure routing at Presence/Routing to Default Cisco SIP Proxy TCP Listener
            12. set TFTP server under Application/CUPC/Settings with CM IP address and Default Cisco SIP Proxy TCP Listener
            13. under Application/CUPC/User Setting , select hquser1 and sign CTI profile to DP-HQ_cti_tcp_profile_synced_000.  If user hquser1 is not present, verify CM and CUPS sync in previous steps
            14. on Application/Desktop Control/Settings, set status to ON and fill in rest of info for CtiGw user
           
        Verify with CUPC Desktop control on the local PC