06-27-2012 09:57 AM - edited 03-21-2019 05:58 AM
Hi,
Firstly I am new to cisco's voice setup, and have a UC560-T1E1-K9 which I need to configure as just a basic gateway. Essentially i want to setup trunk-to-trunk between ISDN PRI and TCP SIP but do not have the first idea where to start.
The main aim is to receive calls over ISDN PRI (E1 NET5) and pass the call stright through to a direct tcp sip trunk (incoming only).
Then configure FXS for a few numbers for two way calling.
Hope someone can give me a couple of pointers as the CUE is not very helpful
Thanks,
Alex.
06-27-2012 10:33 AM
Your explanation is a little bit difficult to understand. A detailed drawing of this topology would be really helpful.
06-27-2012 11:55 AM
The following link shows a basic view of what the setup looks like. I appologise for the crude drawing but i'm mobile at the moment.
We had an IP PBX which had an LCR trunk-to-truck plan for the 120 odd numbers to direct the calls to the Lync Mediation server but that had failed and we purchased the Cisco UC560 to replace it.
If there's anything else you need let me know.
Thanks,
Alex.
06-27-2012 02:46 PM
Hi,
You have two approaches.
Option A
Use CCA to configure the unit from scratch. Configure the unit for your ISDN connection and test using the fxs ports. Manually configure a SIP dial-peer to route inbound PSTN calls to your Lync server. You'll need to tweak the configuration at various places to make it work. You therefore need to be pretty confident in understanding all the work CCA has done for you. The benefit this, is you have a local outbound dial-plan pre-configured on the unit.
Option B
Configure the unit yourself from scratch. Rough outline:
1. Configure E1 controller for voice
2. Setup the DSP modules for your region
3. configure a pots inbound dial peer to accept calls from the PSTN
4. configure an outbound SIP dial-peer to send the calls to Lync.
Lync expects calls to be prefixed with a + & E.164 and bare in mind the telco may only send you the last 6 sigits of the called number
Here's an example for UK ISDN with 30 timeslots: note module slots will be incorrect in this code, example is generic IOS and not specific to UC560.
1. Configure E1 controller for voice
!
card type e1 0
network-clock-participate wic 0 ! something like this, you may need to work out which slot you have
network-clock-participate slot 1 ! or something like this
network-clock-select 5 E1 1/0 ! you get the idea....
!
controller E1 1/0
pri-group timeslots 1-31
!
interface Serial1/0:15 ! do a show run to check the right interface slot number
description "use dial-peer voice 10 to reach me for outbound"
no ip address
encapsulation hdlc
isdn switch-type primary-net5
isdn timer T309 400000
isdn incoming-voice modem
isdn T309-enable
isdn send-alerting
isdn sending-complete
no cdp enable
!
Your E1 card should now be up
c2821.1.hex#show controllers e1
E1 1/0 is up.
Applique type is Channelized E1 - balanced
Cablelength is Unknown
No alarms detected.
alarm-trigger is not set
Version info Firmware: 20090408, FPGA: 13, spm_count = 0
Framing is NO-CRC4, Line Code is HDB3, Clock Source is Line.
CRC Threshold is 320. Reported from firmware is 320.
Data in current interval (652 seconds elapsed):
0 Line Code Violations, 0 Path Code Violations
0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
Total Data (last 24 hours)
0 Line Code Violations, 0 Path Code Violations,
0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins,
0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
2. Setup the DSP modules for your region
voice-port 1/0:15
cptone GB
bearer-cap Speech
!
3. configure a pots inbound dial peer to accept calls from the PSTN
I suggest at this point, you debug isdn q931 and dial in. See how many digits the telco sends you.
Configure a number translation to put this number in to E.164
In my example we take the 6 digits the telco sends us and prepend 441234
voice translation-rule 10
rule 1 /^\(.+\)$/ /441234\1/
!
voice translation-profile incomingisdn
translate called 10
!
in exec mode:
SOV_TAG1#test voice translation-rule 10 567890
Matched with rule 1
Original number: 567890 Translated number: 441234567890
Original number type: none Translated number type: none
Original number plan: none Translated number plan: none
!
dial-peer voice 1000 pots
description Inbound POTS dial-peer
translation-profile incoming incomingisdn
incoming called-number .+
direct-inward-dial
port 1/0:15
!
4. configure an outbound SIP dial-peer to send the calls to Lync. Lync expects calls to be prefixed with a + & E.164 so we're going to add a plus
voice class codec 1
codec preference 1 g711alaw
codec preference 2 g711ulaw
codec preference 3 g729r8
codec preference 4 g729br8
voice translation-rule 20
rule 1 /\(.+\)/ /+\1/
!
voice translation-profile addaplus
translate called 20
in exec mode
#test voice translation-rule 20 123
Matched with rule 1
Original number: 123 Translated number: +123
dial-peer voice 1010 voip
description SIP Trunk to Lync
translation-profile outgoing addaplus
preference 5
destination-pattern ^441234.+ ! note this is the area code we added to make the number into E164
voice-class codec 1
voice-class sip outbound-proxy ipv4:192.168.10.10 ! ip address of lync
session target dns:lync.mydomain.net ! your lync realm
session protocol sipv2
session transport tcp
dtmf-relay rtp-nte
no vad
!
and that's about it apart from getting the fx0 ports sorted - one step at a time.
For outbound you added an incoming SIP dial-peer and an outgoing pots dial peer.
Adam
VoIP.co.uk
07-17-2012 10:30 AM
Hi Adam,
Thanks for all your work above. We're making some good progress. I have the following issue though
000225: Jul 17 17:27:43.623: ISDN Se0/3/0:15 Q931: RX <- SETUP pd = 8 callref = 0x0001
Sending Complete
Bearer Capability i = 0x9090A3
Standard = CCITT
Transfer Capability = 3.1kHz Audio
Transfer Mode = Circuit
Transfer Rate = 64 kbit/s
Channel ID i = 0xA98381
Exclusive, Channel 1
Calling Party Number i = 0x2183, '7825796626'
Plan:ISDN, Type:National
Called Party Number i = 0x81, '732705'
Plan:ISDN, Type:Unknown
000226: Jul 17 17:27:43.623: ISDN Se0/3/0:15 Q931: Received SETUP callref = 0x8001 callID = 0x0011 switch = primary-net5 interface = User
000227: Jul 17 17:27:43.631: ISDN Se0/3/0:15 Q931: TX -> CALL_PROC pd = 8 callref = 0x8001
Channel ID i = 0xA98381
Exclusive, Channel 1
000228: Jul 17 17:27:43.631: ISDN Se0/3/0:15 Q931: TX -> DISCONNECT pd = 8 callref = 0x8001
Cause i = 0x809C - Invalid number format (incomplete number)
000229: Jul 17 17:27:43.827: ISDN Se0/3/0:15 Q931: RX <- RELEASE pd = 8 callref = 0x0001
000230: Jul 17 17:27:43.827: ISDN Se0/3/0:15 Q931: TX -> RELEASE_COMP pd = 8 callref = 0x8001
If you have any pointers as to why the dial-peer does not seem to translate that would be great.
Thanks again.
Alex.
07-17-2012 12:06 PM
Hi Alex,
We need to find our how far the call is getting. It might be that the call is making it all the way to Lync - but Lync doesn't know how to route the call and is rejecting with a number not found message. We can run a concurrent SIP and q.931 trace to find this out.
What we do know is that BT are sending you 6 digits so we need to turn that into E.164 when we send it to Lync. We can also see that your UC560 has the E1 card in slot E1 0/3/0
I imagine your number translation rule is abit like this ?
voice translation-rule 10
rule 1 /^\(.+\)$/ /441380\1/
!
voice translation-profile incomingisdn
translate called 10
!
and that your incoming dial-peer is like this:
!
dial-peer voice 1000 pots
description Inbound POTS dial-peer
translation-profile incoming incomingisdn
incoming called-number .+
direct-inward-dial
port 0/3/0:15
!
You will therefore have an outbound SIP dial-peer a bit like this:
dial-peer voice 1010 voip
description SIP Trunk to Lync
translation-profile outgoing addaplus
preference 5
destination-pattern ^441380.+
voice-class codec 1
voice-class sip outbound-proxy ipv4:192.168.10.10:5080
session target dns:lync.mydomain.net !
session protocol sipv2
session transport tcp
dtmf-relay rtp-nte
no vad
note that you have Lync configure to accept incoming TCP connections (and not TLS for the moment at least, since with TLS there is extra pain dealing with certificates - you can change this to TLS at a later date if you need to)
If you're happy you have your call routing setup correctly, please:
debug ccsip messages
and
debug isdn q931
at the same time and post the results.
if you don't get and SIP - double check the IP and port settings of the outbound SIP dial-peer
you should see an established session on "show tcp brief" to lync...
Adam
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide