cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
609
Views
8
Helpful
12
Replies

Re-rerouting calls back to CUCM based on calling number

KhanalZ
Level 1
Level 1

Little background: Recently E911 call failed in our environment. CER Pub GUI was not accessible for some reason and Sub was not taking over. Calls went through after restarting both servers from CLI. We found later from TAC that we lost the logs after the reboot that could tell us what caused the issue.

Now, we are considering establishing a routine daily test call to 911 from a specific test DN but instead of sending such calls to PSAP, I would like to re-route that call back from CUBE to a DN or IVR in our CUCM based on calling number, without affecting actual 911 calls. This way we can confirm calls are hitting the CUBE but routing them back to an internal extension.

Can someone tell me what I need to do in CUBE without affecting normal call flows. Is it all about dial peers or something else is required? Or is there a better way to test/simulate 911 calls.

Thanks

 

 

2 Accepted Solutions

Accepted Solutions

Something along the way with this should work.

 

voice class e164-pattern-map 200
 description E164 Pattern Map for calling number 5555
  e164 5555
!
voice class dpg 200
 description Dial-peer Group for specific calling number 5555
 dial-peer 200
!
voice translation-rule 200
 rule 1 /^911$/ /4444/
!
voice translation-profile TEST911-OUT
 translate called 200
!
voice class server-group 1
 ipv4 <CM IP 1> preference 2
 ipv4 <CM IP 2> preference 1
 ipv4 <CM IP 3> preference 3
 description Inbound calls to CUCM
 huntstop 1 resp-code 404 to 404
!
voice class sip-options-keepalive 1
 description Used for Server Group SIP OPTIONS PING
!
dial-peer voice 100 voip
 description Incoming Dial-Peer from 5555
 session protocol sipv2
 destination dpg 200
 incoming calling e164-pattern-map 200
 voice-class codec 1
 dtmf-relay rtp-nte sip-kpml
 no vad
!
dial-peer voice 200 voip
 description Outbound Dial-Peer to CM for test 911 calls
 translation-profile outgoing TEST911-OUT
 session protocol sipv2
 session server-group 1
 destination-pattern BAD.BAD
 voice-class codec 1
 voice-class sip options-keepalive profile 1
 dtmf-relay rtp-nte sip-kpml
 no vad

 



Response Signature


View solution in original post

After thinking of what you wrote again I think that I might have misread your post. The issue that you brought forward is if I’m not mistaken that you can’t make the match in the inbound direction for the 5555 calling number since CER changes it to an ELIN. With that I think you’d need to configure the testing device to be in a specific location so that it presents a specific ELIN, it doesn’t even need to be a proper DID number as the call would never be sent to PSAP. Then change the E164 map used to match the calling number to this ELIN. That should make this work as you want it.



Response Signature


View solution in original post

12 Replies 12

If you’re making the call from a specific directory number and that number isn’t going to be used for anything else you’ll need to create a specific dial peer that is to be used in the inbound direction. On this dial peer use DPG configuration to send the call to one or more dial peer(s) that passes the call back to CM. In CM you’ll then need to construct a set of translation patterns to use the route by calling number function that CM have. As an alternative you could use a specific dial peer on the outbound direction in your SBC to modify the called number from 911 to the DN you want to receive the call in CM. That way you don’t have to use the route by calling number construct in CM. This would IMO be a simpler solution.



Response Signature


eyalraba
Cisco Employee
Cisco Employee

What's the current dial-peer you have for matching 911 calls?

To match calls based on calling number in CUBE we can use answer-address, however this has the least preference in matching, the incoming called-number takes priority.

Cisco Unified Border Element Configuration Guide Through Cisco IOS XE 17.5 - Dial-Peer Matching [Cisco Unified Border Element] - Cisco

Here is our existing DP for 911 calls. 

dial-peer voice 911 pots
trunkgroup Local
description Emergency Services Calls
destination-pattern 911
forward-digits all

Do you think we can make use of translation profile to get around this issue like :

create a translation profile to translate 911 called number to lets say 999 and apply that to inbound leg and route call back to CUCM for 999?

 

KhanalZ
Level 1
Level 1

Thanks a lot Roger for the ideas. Greatly appreciated. Could you elaborate more on dial peer on outbound direction in SBC as you stated. As I mentioned in my post, I only want to route the 911 call from that specific extension lets say 5555 to another extension 4444 once call arrives at the CUBE. I can create specific inbound dial peer to match the calling number. However, not sure what would the outbound dial peer (cube to cucm leg) be like. I want to do it without affecting normal call flows including 911 for the rest of the users.

Thanks

Something along the way with this should work.

 

voice class e164-pattern-map 200
 description E164 Pattern Map for calling number 5555
  e164 5555
!
voice class dpg 200
 description Dial-peer Group for specific calling number 5555
 dial-peer 200
!
voice translation-rule 200
 rule 1 /^911$/ /4444/
!
voice translation-profile TEST911-OUT
 translate called 200
!
voice class server-group 1
 ipv4 <CM IP 1> preference 2
 ipv4 <CM IP 2> preference 1
 ipv4 <CM IP 3> preference 3
 description Inbound calls to CUCM
 huntstop 1 resp-code 404 to 404
!
voice class sip-options-keepalive 1
 description Used for Server Group SIP OPTIONS PING
!
dial-peer voice 100 voip
 description Incoming Dial-Peer from 5555
 session protocol sipv2
 destination dpg 200
 incoming calling e164-pattern-map 200
 voice-class codec 1
 dtmf-relay rtp-nte sip-kpml
 no vad
!
dial-peer voice 200 voip
 description Outbound Dial-Peer to CM for test 911 calls
 translation-profile outgoing TEST911-OUT
 session protocol sipv2
 session server-group 1
 destination-pattern BAD.BAD
 voice-class codec 1
 voice-class sip options-keepalive profile 1
 dtmf-relay rtp-nte sip-kpml
 no vad

 



Response Signature


KhanalZ
Level 1
Level 1

Excellent. This looks very promising. I will test it in my lab environment and update here how it goes. Thank you so much for your help all the time.

Khanal

For additional details on how call routing works in IOS please have a look at this great document. Explain Cisco IOS and IOS XE Call Routing 



Response Signature


KhanalZ
Level 1
Level 1

I ran into an issue while testing a 911 call. I was expecting the calling number in my cube but as the number goes through cube, the calling number is modified by CER and at the end only the number defined as ELIN is what is received at the cube as the calling number. Since I want to simulate actual 911 call (phone->cucm->cer->cucm->cube) I wonder if there is a way to send the actual number of my phone to cube without CER replacing with ELIN. 

Thanks,

KhanalZ

So you wanted to do the test to see if CER is operating so by that you’ll need the call to go through it and then it will do its thing. Can you not just add another translation to match the ELIN you say CER is sending and translate that into the calling number you want?

If you add something like this it should do that. You’ll need to modify the rule to fit your needs.

voice translation-rule 210
 rule 1 /^<ELIN>$/ /<ANI you want to be presented>/
!
voice translation-profile TEST911-OUT
 translate calling 210



Response Signature


After thinking of what you wrote again I think that I might have misread your post. The issue that you brought forward is if I’m not mistaken that you can’t make the match in the inbound direction for the 5555 calling number since CER changes it to an ELIN. With that I think you’d need to configure the testing device to be in a specific location so that it presents a specific ELIN, it doesn’t even need to be a proper DID number as the call would never be sent to PSAP. Then change the E164 map used to match the calling number to this ELIN. That should make this work as you want it.



Response Signature


KhanalZ
Level 1
Level 1

Roger, your last response makes perfect sense now. Translation profile wouldn't help because it will mess up genuine 911 calls. Now I will need to figure out the way so that when 5555 calls, CER will assign it a dedicated ELIN and I should be able to route that call back from CUBE to 4444 with much ease. BTW appreciate  you taking your time to help me.

KhanlaZ

Glad to hear that. However the translation on the dial peer I suggested used by the DPG would not break normal 911 calls as that dial peer doesn’t really match 911 calls.



Response Signature