Webex Calling - vCUBE Local Gateway Config

Trunk Info Template Variable Example Value
Line/Port [email protected]
Line/Port without Domain %WX-LINE-USER% vCUBE.GerryTest555512345_LGU
Username %WX-CALL-USER% vCUBE.GerryTest8888123123_LGU
Password %WX-CALL-PW% $K[$=vRdJ7
Trunk Group OTG/DTG %WX-OTG-DTG% vcube.gerrytest8888123123_lgu
Outbound Proxy Address %WX-OB-PROXY-ADDR% ams08.sipconnect-eun.bcld.webex.com
Register Domain %WX-REGISTER-DOMAIN% eun10.bcld.webex.com

Replace the variable above with the actual value for your Trunk Also replace %WX-CUBE-INTERFACE% with the necessary CUBE interface - e.g. Loopback0 or GigabitEthernet1 etc.

!
license boot level network-essentials addon dna-essentials
! SAVE & RELOAD AFTER THIS COMMAND
!
ip name-server vrf MGMT 1.1.1.1 1.0.0.1
ip name-server 1.1.1.1 1.0.0.1
!
voice class uri 100 sip
 pattern dtg=%WX-OTG-DTG%
!
key config-key password-encrypt <PASSWORD>
password encryption aes
!
crypto pki trustpoint EmptyTP 
 revocation-check none
!
sip-ua
 timers connection establish tls 5
 transport tcp tls v1.2
 crypto signaling default trustpoint EmptyTP cn-san-validate server
 tcp-retry 1000

ip http client source-interface %WX-CUBE-INTERFACE%
crypto pki trustpool import clean url https://www.cisco.com/security/pki/trs/ios_core.p7b
!
voice service voip
 ip address trusted list
  ipv4 0.0.0.0 0.0.0.0
 mode border-element
! SAVE & RELOAD AFTER THIS COMMAND
 media statistics
 media bulk-stats 
 allow-connections sip to sip
 no supplementary-service sip refer  
 stun
  stun flowdata agent-id 1 boot-count 4
  stun flowdata shared-secret 0 Password123$
 sip
  asymmetric payload full
  early-offer forced  
!
voice class srtp-crypto 100
 crypto 1 AES_CM_128_HMAC_SHA1_80
!
voice class codec 100
 codec preference 1 g711alaw
 codec preference 2 g711ulaw
!
voice class stun-usage 100 
 stun usage firewall-traversal flowdata
 stun usage ice lite
!
voice class uri 100 sip
 pattern dtg=%WX-OTG-DTG%
!
voice class sip-profiles 100
 rule 10 request ANY sip-header SIP-Req-URI modify "sips:" "sip:"
 rule 20 request ANY sip-header To modify "<sips:" "<sip:"
 rule 30 request ANY sip-header From modify "<sips:" "<sip:"
 rule 40 request ANY sip-header Contact modify "<sips:(.*)>" "<sip:\1;transport=tls>" 
 rule 50 response ANY sip-header To modify "<sips:" "<sip:"
 rule 60 response ANY sip-header From modify "<sips:" "<sip:"
 rule 70 response ANY sip-header Contact modify "<sips:" "<sip:"
 rule 80 request ANY sip-header From modify ">" ";otg=%WX-OTG-DTG%>"
 rule 90 request ANY sip-header P-Asserted-Identity modify "sips:" "sip:" 
!
voice class tenant 100
  registrar dns:%WX-REGISTER-DOMAIN% scheme sips expires 240 refresh-ratio 50 tcp tls
  credentials number %WX-LINE-USER% username %WX-CALL-USER% password 0 %WX-CALL-PW% realm BroadWorks
  authentication username %WX-CALL-USER% password 0 %WX-CALL-PW% realm BroadWorks
  authentication username %WX-CALL-USER% password 0 %WX-CALL-PW% realm %WX-REGISTER-DOMAIN%
  no remote-party-id
  sip-server dns:%WX-REGISTER-DOMAIN%
  connection-reuse
  srtp-crypto 100
  session transport tcp tls 
  no session refresh
  url sips 
  error-passthru
  rel1xx disable
  asserted-id pai 
  bind control source-interface %WX-CUBE-INTERFACE%
  bind media source-interface %WX-CUBE-INTERFACE%
  no pass-thru content custom-sdp 
  sip-profiles 100 
  outbound-proxy dns:%WX-OB-PROXY-ADDR%  
  privacy-policy passthru

dial-peer voice 100 voip
 description Inbound/Outbound Webex Calling
 max-conn 250
 destination-pattern BAD.BAD
 session protocol sipv2
 session target sip-server
 incoming uri request 100
 voice-class codec 100
 dtmf-relay rtp-nte
 voice-class stun-usage 100
 no voice-class sip localhost
 voice-class sip tenant 100
 srtp
 no vad  

Once above config has been added - Check with :

show sip-ua register status

to confirm if the SIP trunk has registered. You can also refresh the trunk in control hub and confirm if the trunk is now “online”.

The below config configures the “SIP PSTN Side”

  • %PSTN-IP-ADDR%
  • %PSTN-INTERFACE%
!
voice class uri 200 sip
  host ipv4:%PSTN-IP-ADDR%
! 
!
dial-peer voice 200 voip
 description Inbound/Outbound IP PSTN trunk
 destination-pattern BAD.BAD
 session protocol sipv2
 session target ipv4:%PSTN-IP-ADDR%
 incoming uri via 200
 voice-class sip asserted-id pai
 voice-class sip bind control source-interface %PSTN-INTERFACE%
 voice-class sip bind media source-interface  %PSTN-INTERFACE%
 voice-class codec 100
 dtmf-relay rtp-nte 
 no vad
!
voice class dpg 100 
 description Route calls to Webex Calling 
 dial-peer 100 
voice class dpg 200 
 description Route calls to PSTN 
 dial-peer 200
!
dial-peer voice 100
 destination dpg 200
dial-peer voice 200
 destination dpg 100 
!
  • vendors/cisco/wxcc/local-gateway.txt
  • Last modified: 2025/05/13 14:12
  • by gerardorourke