cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3033
Views
5
Helpful
14
Replies

How to make CME to collect digits when dialing from ephone?

Ellad Yatsko
Level 1
Level 1

Hello,

I made working configuration on my home "test-bench" CME for SIP-phones. All is working well. I configured well-styled dial-peers like these:

dial-peer voice 1001 voip
 description Outgoing Emergency (01/02/03/04)
 translation-profile outgoing 1
 destination-pattern ^0[1-4]$
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte
dial-peer voice 1002 voip
 description Outgoing Emergency (112)
 translation-profile outgoing 1
 destination-pattern ^112$
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte
dial-peer voice 1003 voip
 corlist outgoing GroupDOMESTIC
 description Outgoing Domestic (495|498|499)
 translation-profile outgoing 1
 destination-pattern ^9?8?49[589].......$
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte
dial-peer voice 1004 voip
 corlist outgoing GroupDOMESTIC
 description Outgoing Domestic (495-7digits)
 translation-profile outgoing 1
 destination-pattern ^9?8?.......$
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte
dial-peer voice 1005 voip
 corlist outgoing GroupNATIONAL
 description Outgoing National
 translation-profile outgoing 1
 destination-pattern ^9?8?..........$
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte
dial-peer voice 1006 voip
 corlist outgoing GroupINTERNATIONAL
 description Outgoing International
 translation-profile outgoing 1
 shutdown
 destination-pattern ^810..........
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte
dial-peer voice 2001 voip
 description Outgoing VPK-TELECOM
 translation-profile outgoing 2
 destination-pattern ^9...$
 session protocol sipv2
 session target ipv4:80.251.131.141
 voice-class codec 1
 dtmf-relay rtp-nte

But as soon as I had begun to use ephones (Skinny Cisco Phones) I faced problem: e-phone sent digits of a number one-by-one during dialing. So my dial-peers which were oriented on B-number length began to be chosen in inappropriate order.

I would like to preserve my dial-plan. Is there a way to make ephones or/and CME to collect digits before analyzing dial-peers? As in case with SIP-phones?

Hope, You will answer.. :-)

Kind regards,

Ellad Yatsko

1 Accepted Solution

Accepted Solutions

Hi Ellad,

As Vivek mentioned above you don't have control over the inbound dial-peers when you are making calls from phones registered to CME. We need to play with the outbound dial-peers.

Please describe the exact issue and collect logs of below debugs and share along with calling and called number used for testing.

debug voip ccapi inout

debug voip dialpeer

Regards,

Krish.

View solution in original post

14 Replies 14

Deepak Mehta
VIP Alumni
VIP Alumni

I believe if you set ,"direct inward dial" on inbound dial-peer .Then while sending digits out to the PSTN/service provider it will match the whole digit string and not digit by digit.


Example - 

from CME you receive 

dial-peer voice 1 voip 

session protocol sipv2
incoming called-number 715212....
direct-inward-dial

It will send all digits en block to outbound dial-peer to ITSP

dial-peer voice 4 voip
destination-pattern 715212....
session target ipv4:X.X.X.X
session protocol sipv2
voice-class codec 1
dtmf-relay rtp-nte

Have I understood correctly? I need to create incoming dial-peer for THE SAME DESTINATIONS (the same as in outgoing dial-peer) with direct-inward-dial commands, don't I?

For example, I have:

dial-peer voice 1005 voip
 corlist outgoing GroupNATIONAL
 description Outgoing National
 translation-profile outgoing 1
 destination-pattern ^9?8?..........$
 session protocol sipv2
 session target ipv4:80.251.131.131
 voice-class codec 1
 dtmf-relay rtp-nte

I need to make something like the following:

dial-peer voice 10005
session protocol sipv2
incoming called-number ^9?8?..........$
direct-inward-dial

It's something strange... Two things is worrying me...

First. Is session protocol between EPhone and CME REALLY SIPv2 (it is connected to CME via Skinny/SCCP)?

Second. How can CME determine that it is THE VERY SAME incoming dial-peer? You know, I debugged dial-peers... It looked like this:

"9" was pressed on ephone, dialed line was "9" - none of dial-peers was selected.

"0" was pressed on ephone, dialed line was "90" - none of dial-peers was selected.

"1" was pressed on ephone, dialed line was "901" - none of dial-peers was selected.

"6" was pressed on ephone, dialed line was "9016" - dial-peer 2001 (due to destintaion-pattern ^9...$) was selected.

So, conclusion is: I have no opportunity to point out "exact" number pattern in INCOMING dial-peer. What can I do else? :-)

I think the real way is to make one of two sides (ephone or CME) to collect digits using inter-digit-timeout to accumulate COMPLETE number before falling into dial-peers. What do you thing about this new information? :-)

Of course, excuse me my impoliteness - thank you very much for very prompt response!

Any (other) ideas? :-)

Kind regards,

Ellad

Hi Ellad,

Also whatever i suggested ,I have tested above on a voice router but not on CME.I believe it should work the same way.

For CME ,just refer to below.

https://learningnetwork.cisco.com/thread/44946.

You can try with incoming called numer .T as well ,i will test this in my CME and update you.

Hi Ellad,

"direct-inward-dial" can be configured only under pots dial-peers, there is no such option available under voip dial-peers.

You can configure the catch-all incoming dial-peer as below

dial-peer voice 1 voip

incoming called-number .

session protocol sipv2(this is required only if you want to force CME to use SIP protocol)

Also for every extension you configure in CME there will be a dial-peer that gets generated in the background. So if you are making outbound  calls from the extensions the incoming dial-peer will always be the corresponding dial-peer that got generated while configuring the extension.

You can use "show dial-peer voice summary" to find out all the dial-peers.

Hope this information helps....

Regards,

Krish

Hello, Krish!

What exactly should I do? :-) Am I right:

dial-peer voice 1 voip
description Catch-All for EPhones (???)
 incoming called-number .T

But... What's the further? Should it be without direct-inward-dial? Should it contain something else?

Kind regards,

Ellad

Hi Ellad,

As Vivek mentioned above you don't have control over the inbound dial-peers when you are making calls from phones registered to CME. We need to play with the outbound dial-peers.

Please describe the exact issue and collect logs of below debugs and share along with calling and called number used for testing.

debug voip ccapi inout

debug voip dialpeer

Regards,

Krish.

Hey Murali/Vivek.

Thank you for correction , you guys saved the day for me.

Inbound dial-peer  cannot match enblock , it is digit by digit by digit .Also outgoing dial-peer also matches digit by digit, unless we are using DID on inbound pots dial-peer.

 It is true with exception on Redial and when we lift handset and then dial , in both  cases the digits will be sent enbloc as well.

Can you confirm if my understanding is correct .thanks

Ellad- Apologies for wrong guidance here.

Hi Deepak,

No worries my friend. You are adding significant positive value to the forum :)

In case of ephone, when we add ephone-dn, virtual pots dial peer is created with destination-pattern command as ephone-dn. When you go offhook from ephone, offhook sccp event is sent to CME and because at that time there won't be any called party number but there will be ANI associated, CME will match virtual pots dial peer (/inbound) because of destination-pattern command present in virtual pots dial peer.

DID (direct-inward-dial) has only significance on POTS dial peer and when there is called party number available from network (T1/E1) so that router doesn't need to answer the call before forwarding the call to destination.

For outbound dial peer selection, logic might be different in case of digit by digit dialing (SCCP) and SIP (enblock). 

Using redial in case of SCCP, afaik as IOS has complete number with it, digits are sent enblock but when dialing from keypad, digits are always sent one by one. There is slight difference in case of SIP phone which can send digits both one by one and enblock depends on configuration.

- Vivek

+5.Great info Vivek.thank you and pls guide me wherever you feel .thanks

Hi Deepak,

SCCP always collect the number digit by digit irrespective of you dial in on-hook or off-hook mode.

Regards,

Krish

Thanks Krish

I 've been thinking for a while...

Can I create inbound dial-peer like this:

dial-peer voice 999 voip
incoming called-number .T
direct-inward-dial

? To match everything? Can I?...

Kind regards,

Ellad

Vivek Batra
VIP Alumni
VIP Alumni

Hi,

ephone matches virtual pots dial peer as inbound dial peer and you don't have choice to send digits enblock with SCCP (except I believe in case of redial etc).

Can you please share what is the exact issue you are facing with ephones with respect to matching outbound dial peer?

- Vivek

Ellad Yatsko
Level 1
Level 1

Pushed wrong button. :-)

Sorry for delayed response. I'll try in a day or two and report. Thanks a lot for you participation!

Kind regards, Ellad