We have CUCM 18.104.22.16800-10 with mainly SCCP phones deployed. We have RoutePatterns ending in ! for International calls.
When we introduced SIP phones ( Jabber CSF, 8831, 8941), we started to notice that they behave differently than the 79X2 phones we had:
Onhook dialing of a number to be routed through aPattern with "!" leads to a "Post-Dial" delay which last exactly the same as the T302 interdigit timeout timer. This behavior is not present on the SCCP phones. This is:
SCCP phone onhook:
dial number +44[anybritishnumber] then, press the dial softkey or go offhook and the call goes through.
SIP phone onhook:
dial number +44[anybritishnumber] then, press the dial softkey or go offhook WAIT 10 SECONDS, then the call goes through.
I guess this is related to the type of phone and enbloc or digit by digit on SIP and also may be related with SIP dial rules, but I have been able to find a clear document which states:
-How digits are sent to CUCM on those SIP phones when dialing, I mean, on SCCP I know every key pressed translates to an SCCP message to the CUCM informint that StationInit action. How is this done on SIP phones. I understand they are "more intelligent" than SCCP but how or when do they decide to send the INVITE to CUCM?
-How Dialplan/Parametters SIP Dial rules would solve this inconvenience? ( I know the Expedite Forward and T302 reduction are workarounds but I want to undesrtand the SIP part)
Thanks for your time reading this and for any help you can give.
To be honest you shouldn't need SIP Dial rules and you shouldn't be experiencing the inter-digit timeout, with the model SIP phones that you're using. The inter-digit timeout (10 seconds by default) was experienced on Cisco Type A phones (e.g. 7940, 7960s) because they didn't support KPML, so you would configure SIP Dial Rules. Now if you have SIP dial-rules configured it will supersede the default, so make sure that you don't have any SIP Dial Rules configured and if you do, please note that when you remove them, this will cause CUCM to create new SIP phone configuration files, which could spike your CUCM CPU.
That's why I want to avoid SIP Dial Rules. We are managing a cluster with 40K+ endpoints, so the consumption could be an issue.
No fix unfortunately. We jus reduced the interdigit timer and declared explicit Route Patterns to all our DIDs to avoid this with our international DIDs.
I remember looking at this a few years ago. When I was running into the same situation. Found this which I had just copied to notepad(so don't know who to give the credit to, it was a cisco employee tho).
1> SCCP endpoints use enbloc mechanism while the Cisco SIP endpoints use overlap sending mechanism.
2> Enbloc mechanism collects all the digits and then sends them to the Call Agent. Overlap mechanism sends the called digits one by one.
3> The Cisco SIP endpoints, by default, use the overlap sending / receiving mechanism because of the Key Press Stimulus Protocol (KPML). This mechanism provides for "digit reporting" or "DTMF reporting".
4> When the CUCM sees “Allow-Events: kpml” in the INVITE message coming from the Cisco SIP endpoint, it also switches over to the overlap receiving mode. You would ideally see “|setEndpointsDtmfCaps: KPML Supported.|” in the traces suggesting the same.
5> KPML uses the SUBSCRIBE and NOTIFY methods of SIP. The CUCM would respond back with a TRYING to the Cisco SIP endpoint and perform a digit analysis.
6> If the digits that came in the INVITE message match a dialing pattern and there is no overlapping, it will route the call immediately. If there is an overlapping dialing pattern, you will see the CUCM send a SUBSCRIBE message to the Cisco SIP endpoint. This message contains the KPML request and also specifies the following timers “
7> This is purely because of the way overlap sending and receiving works. It will always look for the longest match in the dialplan. In enbloc dialing, it will always look for the closest match in the dialplan. Hence the delay.
This link however will give you what I believe you are looking for as far as the info needed with regards to the SIP dial rules.
Thanks for your reply.
So I understand that this behavior of the CUCM sending a SUBSCRIBE after the INVITE message is unavoidable in case there is an overlapping. Am I right? Isn't there a way to make the SIP phones to behave like the SCCP phones in the before mentioned conditions (onhook dialing and re-dial) and they send the digits enbloc and the CUCM process the call right away?