We just had a new telco company install a voice PRI with the intention of replacing our existing telco company's PRI at one of our remote sites. After installing and testing the new voice PRI we realized that the inbound calling name was not displayed on the phones.
In this particular scenario the setup looked something like this:
PRI -----ISDN-----> Cisco ISR-G2 VG -----SIP-----> CUCM -----SCCP-----> Cisco IP Phone
We ran a "debug isdn q931" to troubleshoot the problem. Upon inspection we found that the calling party name was not being sent in the initial ISDN setup message. In fact, it indicated that the calling name would be send in a "subsequent FACILITY message".
interface Serial X/X/X:23
isdn supp-service name calling
Secondly, there is a problem in this scenario with the voice gateway sending a SIP invite to Communications Manager right after it gets the ISDN setup message. Since the initial ISDN setup message doesn't have the calling name the SIP invite will also be lacking the calling name. When we tested at this point the phones were showing "From pending" as the calling name. The work around for this issue is to introduce a delay before the voice gateway sends the SIP invite to CUCM. Each scenario may require a different amount of time. One can look at the debugs to find out how long it takes between the time the initial ISDN setup message is received and when the ISDN facility message with the name is received. In this particular case we tuned the delay to 500 milliseconds and it seems to work well. The command to delay the setup for 500 milliseconds is.
sip-ua
timers buffer-invite 500
For more information, Cisco also has a bug id CSCup91440 that references using a buffer-invite on individual dial peers.
Below are some samples of what the debugs looked like on a typical inbound telco call and the telco that sends the calling name in a later message.
Standard Telco "Before Debug"
(The actual telephone numbers have been changed to protect the innocent.)
507963: Jan 22 09:53:13.269: ISDN Se0/2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x14D4
Bearer Capability i = 0x8090A2
Standard = CCITT
Transfer Capability = Speech
Transfer Mode = Circuit
Transfer Rate = 64 kbit/s
Channel ID i = 0xA98382
Exclusive, Channel 2
Facility i = 0x9F8B0100A11702010D020100800F4368696361676F202020202020494C
Protocol Profile = Networking Extensions
0xA11702010D020100800F4368696361676F202020202020494C
Component = Invoke component
Invoke Id = 13
Operation = CallingName
Name Presentation Allowed Extended
Name = Joshua Learn
Display i = 'Joshua Learn'
Calling Party Number i = 0x2180, '8005551212'
Plan:ISDN, Type:National
Called Party Number i = 0x80, '8885551212'
Plan:ISDN, Type:National
507964: Jan 22 09:53:13.269: ISDN Se0/2/0:23 Q931: Received SETUP callref = 0x94D4 callID = 0x13E4 switch = primary-ni interface = User
Subsequent Facility Message Telco "After"
(The actual telephone numbers have been changed to protect the innocent.)
040306: Jan 22 07:49:27.801 PST: ISDN Se0/2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x1A22
Bearer Capability i = 0x8090A2
Standard = CCITT
Transfer Capability = Speech
Transfer Mode = Circuit
Transfer Rate = 64 kbit/s
Channel ID i = 0xA98381
Exclusive, Channel 1
Facility i = 0x9F8B0100A10F02016A06072A8648CE1500040A0100
Protocol Profile = Networking Extensions
0xA10F02016A06072A8648CE1500040A0100
Component = Invoke component
Invoke Id = 106
Operation = InformationFollowing (calling_name)
Name information in subsequent FACILITY message
Progress Ind i = 0x8281 - Call not end-to-end ISDN, may have in-band info
Calling Party Number i = 0x2183, '8005551212'
Plan:ISDN, Type:National
Called Party Number i = 0xA1, '8885551212'
Plan:ISDN, Type:National
040307: Jan 22 07:49:27.801 PST: ISDN Se0/2/0:23 Q931: Received SETUP callref = 0x9A22 callID = 0x1D81 switch = primary-ni interface = User
040308: Jan 22 07:49:27.805 PST: ISDN Se0/2/0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x9A22
Channel ID i = 0xA98381
Exclusive, Channel 1
040309: Jan 22 07:49:27.848 PST: ISDN Se0/2/0:23 Q931: RX <- FACILITY pd = 8 callref = 0x1A22
Facility i = 0x9F8B0100A11702016B020100800F332054524143452020202020202020
Protocol Profile = Networking Extensions
0xA11702016B020100800F332054524143452020202020202020
Component = Invoke component
Invoke Id = 107
Operation = CallingName
Name Presentation Allowed Extended
Name = Joshua Learn