Cisco 7940 Can't Receive Calls

Hello. I’ve added a Cisco 7940 to my system and I have gone through the process of uploading the SIP firmware and configuration via TFTP. I can make calls from it to other internal extensions and place external calls, that all works fine. I just can’t receive any calls on that phone. Internal calls don’t connect, and incoming external calls which route to other phones OK do not go through to the 7940. Can anyone help please? Thanks in advance.

Upon viewing the Asterisk CLI, it appears that the 7940 is making no attempt to register. The IP of the server is set correctly in the phone’s SIP configuration.

They’re tricky buggers, these Cisco phones.
I’ve been working with the 9951 and 88xx series, though I’ve not used a 7900 before they are similar in some ways.

Can you post your cnf.xml file?

The first thing that springs to mind is the transport. The ones I’ve been using are TCP only, and the correct setting for that needs to be in the config file, and asterisk needs to be set to enable tcp also.

<br />
<Default><br />
  <callManagerGroup><br />
     <members><br />
        <member priority="0"><br />
           <callManager></callmanager></member></members></callmanagergroup></default></p>
<ports>
                 <ethernetPhonePort>2000</ethernetphoneport><br />
                 <mgcpPorts></mgcpports></ports>
<listen>2427</listen>
                    <keepAlive>2428</keepalive><br />
                 <br />
              
<processNodeName></processnodename>
           <br />
        <br />
     <br />
  <br />
  <loadInformation8 model="IP Phone 7940">P0S3-8-12-00</loadinformation8><br />
  <authenticationURL></authenticationurl><br />
  <directoryURL></directoryurl><br />
  <idleURL></idleurl><br />
  <informationURL></informationurl><br />
  <messagesURL></messagesurl><br />
  <servicesURL></servicesurl><br />
<br />

Oh, and I did a tcpdump to see what data is coming in. Here is the result:

10:53:07.731193 IP 192.168.0.121.sip > 192.168.0.22.sip: SIP, length: 501
10:53:07.734563 IP 192.168.0.22.sip > 192.168.0.121.sip: SIP, length: 513
10:53:07.833639 IP 192.168.0.121.sip > 192.168.0.22.sip: SIP, length: 754
10:53:07.836984 IP 192.168.0.22.sip > 192.168.0.121.sip: SIP, length: 513
10:53:07.940895 IP 192.168.0.121.sip > 192.168.0.22.sip: SIP, length: 754
10:53:07.944430 IP 192.168.0.22.sip > 192.168.0.121.sip: SIP, length: 513
10:53:08.048397 IP 192.168.0.121.sip > 192.168.0.22.sip: SIP, length: 754
10:53:08.052214 IP 192.168.0.22.sip > 192.168.0.121.sip: SIP, length: 513

192.168.0.22 is the server and 192.168.0.121 is the 7940.

Looking at the Asterisk CLI, there is no activity relating to the phone being shown.

OK, I’ve managed to get the 7940 to register :grinning:

However calls to the extension are still failing :disappointed:

Here’s the Asterisk CLI when I attempt to call the 7940 from a softphone extension:

[2016-03-06 13:12:40] WARNING[24906][C-00000079]: chan_sip.c:22377 func_header_read: This function can only be used on SIP channels.
[2016-03-06 13:12:40] WARNING[24906][C-00000079]: chan_sip.c:22377 func_header_read: This function can only be used on SIP channels.
[2016-03-06 13:12:40] WARNING[24906][C-00000079]: chan_sip.c:22377 func_header_read: This function can only be used on SIP channels.
[2016-03-06 13:12:40] WARNING[24906][C-00000079]: chan_sip.c:22377 func_header_read: This function can only be used on SIP channels.
[2016-03-06 13:12:41] ERROR[20632]: res_pjsip.c:2432 sip_get_tpselector_from_endpoint: Unable to retrieve PJSIP transport ‘0.0.0.0-tcp’ for endpoint ‘203’
[2016-03-06 13:12:41] ERROR[20632]: chan_pjsip.c:1862 request: Failed to create outgoing session to endpoint ‘203’
[2016-03-06 13:12:41] WARNING[24906][C-00000079]: app_dial.c:2411 dial_exec_full: Unable to create channel of type ‘PJSIP’ (cause 3 - No route to destination)
== Everyone is busy/congested at this time (1:0/0/1)
== Spawn extension (macro-exten-vm, s-CHANUNAVAIL, 3) exited non-zero on ‘PJSIP/200-00000072’ in macro ‘exten-vm’
== Spawn extension (ext-local, 203, 2) exited non-zero on ‘PJSIP/200-00000072’
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘PJSIP/200-00000072’ in macro ‘hangupcall’
== Spawn extension (ext-local, h, 1) exited non-zero on ‘PJSIP/200-00000072’

Sorted now, changed from PJSIP to Chan_SIP