Standalone Cisco 7945/7965

VoIP Hardware Solutions
Provider Solution Details
VoIP Hardware Zycoo UC Solutions
  • Modular Design IP PBX for SMB
  • Remote office Centralized Management solution
  • 3rd party app integration, Enterprise Billing, Android & iOS client
Details
Yeastar Communications Solutions
  • Cost-effective IP-PBX Solution for SMB
  • FXS, FXO, GSM, BRI and PRI VoIP Gateways
  • Rich features and reliable performance
Details
The Cisco 7945/7965 IP phones replace the 7941/7961 models, which are EOL as of January 2010. 7945/7965 feature backlit color LCD displays and additional navigation keys (left/right/select).

Most of the 7941/7961 caveats apply to 7945/7965 as well, so please familiarize yourself with Standalone Cisco 7941/7961 without a local PBX and other related pages.

7945 and 7965 use the same firmware images. As with 7941/7961, the main difference is that 7945 has two line buttons, and 7965 has six.

Firmware versions


SIP firmware QA seems a little bit spotty. Some test results:

cmterm-7945_7965-sip.8-5-4.zip (SHA1 7d81c5d4a2b97e64ffc99ba82d9f93a2ff018ca2): Best known FW for 7945/7965
cmterm-7945_7965-sip.8-5-3.zip: Ignores the SIP CANCEL response, so if you don't pick up the phone it will never stop ringing. Avoid.
cmterm-7945_7965-sip.9-0-3.zip: Does not even attempt SIP registration. Avoid.

To install the FW image, unzip it under your TFTP server root directory (e.g. /tftpboot) and update loadInformation in SEP*.cnf.xml .

Sample configuration file


See also: Asterisk phone cisco 79x1 xml configuration files for SIP

This is a known good SEPxxxxxxxxxxxx.cnf.xml configuration file for Cisco 7965 + voip.ms + Linux NAT firewall with patched Netfilter SIP modules. "FIXME" indicates the fields that probably need to be customized for your setup:


<!-- FIXME: Change to your own phone number (or another unique ID) -->
<device xsi:type="axl:XIPPhone" ctiid="4085551212">
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>default</sshUserId>
<sshPassword>user</sshPassword>
<devicePool>
 <dateTimeSetting>
    <!-- FIXME: Set your preferred date format and timezone here -->
    <dateTemplate>M/D/Ya</dateTemplate>
    <timeZone>Pacific Standard/Daylight Time</timeZone>
    <ntps>
         <!-- NTP might not actually work, but the phone can set the
              date/time from the SIP response headers -->
         <ntp>
             <name>pool.ntp.org</name>
             <ntpMode>Unicast</ntpMode>
         </ntp>
    </ntps>
 </dateTimeSetting>

 <!-- This section probably does not do anything useful. -->
 <callManagerGroup>
    <members>
       <member priority="0">
          <callManager>
             <ports>
                <ethernetPhonePort>2000</ethernetPhonePort>
                <sipPort>5060</sipPort>
                <securedSipPort>5061</securedSipPort>
             </ports>
             <processNodeName>127.0.0.1</processNodeName>
          </callManager>
       </member>
    </members>
 </callManagerGroup>
</devicePool>
<sipProfile>
 <sipProxies>
   <registerWithProxy>true</registerWithProxy>
 </sipProxies>
 <sipCallFeatures>
    <cnfJoinEnabled>true</cnfJoinEnabled>
    <callForwardURI>x--serviceuri-cfwdall</callForwardURI>
    <callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
    <callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
    <callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
    <meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
    <abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
    <rfc2543Hold>false</rfc2543Hold>
    <callHoldRingback>2</callHoldRingback>
    <localCfwdEnable>true</localCfwdEnable>
    <semiAttendedTransfer>true</semiAttendedTransfer>
    <anonymousCallBlock>2</anonymousCallBlock>
    <callerIdBlocking>2</callerIdBlocking>
    <dndControl>0</dndControl>
    <remoteCcEnable>true</remoteCcEnable>
 </sipCallFeatures>
 <sipStack>
    <sipInviteRetx>6</sipInviteRetx>
    <sipRetx>10</sipRetx>
    <timerInviteExpires>180</timerInviteExpires>
    <!-- Force short registration timeout to keep NAT connection alive -->
    <timerRegisterExpires>180</timerRegisterExpires>
    <timerRegisterDelta>5</timerRegisterDelta>
    <timerKeepAliveExpires>120</timerKeepAliveExpires>
    <timerSubscribeExpires>120</timerSubscribeExpires>
    <timerSubscribeDelta>5</timerSubscribeDelta>
    <timerT1>500</timerT1>
    <timerT2>4000</timerT2>
    <maxRedirects>70</maxRedirects>
    <remotePartyID>false</remotePartyID>
    <userInfo>None</userInfo>
 </sipStack>
 <autoAnswerTimer>1</autoAnswerTimer>
 <autoAnswerAltBehavior>false</autoAnswerAltBehavior>
 <autoAnswerOverride>true</autoAnswerOverride>
 <transferOnhookEnabled>false</transferOnhookEnabled>
 <enableVad>false</enableVad>
 <preferredCodec>g711ulaw</preferredCodec>
 <dtmfAvtPayload>101</dtmfAvtPayload>
 <dtmfDbLevel>3</dtmfDbLevel>
 <dtmfOutofBand>avt</dtmfOutofBand>
 <alwaysUsePrimeLine>false</alwaysUsePrimeLine>
 <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
 <kpml>3</kpml>
 <natEnabled>false</natEnabled>
 <natAddress></natAddress>
 <!-- FIXME: This will appear in the upper right corner of the display -->
 <phoneLabel>408-555-1212</phoneLabel>
 <stutterMsgWaiting>1</stutterMsgWaiting>
 <callStats>false</callStats>
 <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
 <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
 <startMediaPort>16384</startMediaPort>
 <stopMediaPort>16391</stopMediaPort>
 <sipLines>
    <line button="1">
       <featureID>9</featureID>
       <!-- FIXME: Text to display next to line button #1 -->
       <featureLabel>5551212</featureLabel>
       <!-- FIXME: FQDN or IP of your SIP proxy -->
       <proxy>losangeles.voip.ms</proxy>
       <port>5060</port>
       <!-- FIXME: SIP username -->
       <name>123456</name>
       <!-- FIXME: Name to display on outbound caller ID -->
       <displayName>VOIP CALL</displayName>
       <autoAnswer>
          <autoAnswerEnabled>2</autoAnswerEnabled>
       </autoAnswer>
       <callWaiting>1</callWaiting>
       <!-- FIXME: SIP authorization name (often matches username) -->
       <authName>123456</authName>
       <!-- FIXME: SIP authorization password -->
       <authPassword>password</authPassword>
       <sharedLine>true</sharedLine>
       <messageWaitingLampPolicy>1</messageWaitingLampPolicy>
       <!-- FIXME: "Messages" key will autodial this number -->
       <messagesNumber>*97</messagesNumber>
       <ringSettingIdle>4</ringSettingIdle>
       <ringSettingActive>5</ringSettingActive>
       <contact></contact>
       <forwardCallInfoDisplay>
          <callerName>true</callerName>
          <callerNumber>false</callerNumber>
          <redirectedNumber>false</redirectedNumber>
          <dialedNumber>true</dialedNumber>
       </forwardCallInfoDisplay>
    </line>
    <line button="2">
       <featureID>2</featureID>
       <featureLabel>ATT</featureLabel>
       <speedDialNumber>18002255288</speedDialNumber>
    </line>
    <!-- FIXME: Add more line buttons or speed dial entries here -->
   </sipLines>
 <voipControlPort>5060</voipControlPort>
 <dscpForAudio>184</dscpForAudio>
 <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
 <dialTemplate>dialplan.xml</dialTemplate>
</sipProfile>
<commonProfile>
 <phonePassword></phonePassword>
 <backgroundImageAccess>true</backgroundImageAccess>
 <callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<!-- FIXME: Change this to upgrade the firmware -->
<loadInformation>SIP45.8-5-4S</loadInformation>
<vendorConfig>
 <disableSpeaker>false</disableSpeaker>
 <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
 <pcPort>0</pcPort>
 <settingsAccess>1</settingsAccess>
 <garp>0</garp>
 <voiceVlanAccess>1</voiceVlanAccess>
 <videoCapability>0</videoCapability>
 <autoSelectLineEnable>0</autoSelectLineEnable>
 <webAccess>0</webAccess>
 <!-- For Sunday (1) and Saturday (7):
   <daysDisplayNotActive>1,2,3,4,5,6,7</daysDisplayNotActive>
   Current default is to enable the display 24/7.
 -->
 <daysDisplayNotActive></daysDisplayNotActive>
 <displayOnTime>00:00</displayOnTime>
 <displayOnDuration>24:00</displayOnDuration>
 <displayIdleTimeout>00:00</displayIdleTimeout>
 <spanToPCPort>1</spanToPCPort>
 <loggingDisplay>1</loggingDisplay>
 <loadServer></loadServer>
</vendorConfig>
<versionStamp></versionStamp>
<userLocale>
 <name>English_United_States</name>
<uid>1</uid>
 <langCode>en_US</langCode>
<version>1.0.0.0-1</version>
 <winCharSet>iso-8859-1</winCharSet>
</userLocale>
<networkLocale>United_States</networkLocale>
<networkLocaleInfo>
 <name>United_States</name>
<uid>64</uid>
 <version>1.0.0.0-1</version>
</networkLocaleInfo>
<deviceSecurityMode>0</deviceSecurityMode>
<!--
<authenticationURL>http://yourwebserver/authenticate.php</authenticationURL>
<directoryURL>http://yourwebserver/directory.xml</directoryURL>
-->
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<!--
  <servicesURL>http://phone-xml.berbee.com/menu.xml</servicesURL>
-->
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
 <capf>
    <phonePort>3804</phonePort>
 </capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
</device>


Sample dialplan.xml to support *xx, xxx-xxxx, 1xxx-xxx-xxxx, and 011xxx... dialing:


<DIALTEMPLATE>
     <TEMPLATE MATCH="011*" Timeout="6" User="Phone"/>
     <TEMPLATE MATCH="1.........." Timeout="0" User="Phone"/>
     <TEMPLATE MATCH="......." Timeout="0" User="Phone" Rewrite="213......."/>
     <TEMPLATE MATCH="*.." Timeout="0" User="Phone"/>
     <TEMPLATE MATCH="*" Timeout="15" User="Phone"/>
</DIALTEMPLATE>

The Cisco 7945/7965 IP phones replace the 7941/7961 models, which are EOL as of January 2010. 7945/7965 feature backlit color LCD displays and additional navigation keys (left/right/select).

Most of the 7941/7961 caveats apply to 7945/7965 as well, so please familiarize yourself with Standalone Cisco 7941/7961 without a local PBX and other related pages.

7945 and 7965 use the same firmware images. As with 7941/7961, the main difference is that 7945 has two line buttons, and 7965 has six.

Firmware versions


SIP firmware QA seems a little bit spotty. Some test results:

cmterm-7945_7965-sip.8-5-4.zip (SHA1 7d81c5d4a2b97e64ffc99ba82d9f93a2ff018ca2): Best known FW for 7945/7965
cmterm-7945_7965-sip.8-5-3.zip: Ignores the SIP CANCEL response, so if you don't pick up the phone it will never stop ringing. Avoid.
cmterm-7945_7965-sip.9-0-3.zip: Does not even attempt SIP registration. Avoid.

To install the FW image, unzip it under your TFTP server root directory (e.g. /tftpboot) and update loadInformation in SEP*.cnf.xml .

Sample configuration file


See also: Asterisk phone cisco 79x1 xml configuration files for SIP

This is a known good SEPxxxxxxxxxxxx.cnf.xml configuration file for Cisco 7965 + voip.ms + Linux NAT firewall with patched Netfilter SIP modules. "FIXME" indicates the fields that probably need to be customized for your setup:


<!-- FIXME: Change to your own phone number (or another unique ID) -->
<device xsi:type="axl:XIPPhone" ctiid="4085551212">
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>default</sshUserId>
<sshPassword>user</sshPassword>
<devicePool>
 <dateTimeSetting>
    <!-- FIXME: Set your preferred date format and timezone here -->
    <dateTemplate>M/D/Ya</dateTemplate>
    <timeZone>Pacific Standard/Daylight Time</timeZone>
    <ntps>
         <!-- NTP might not actually work, but the phone can set the
              date/time from the SIP response headers -->
         <ntp>
             <name>pool.ntp.org</name>
             <ntpMode>Unicast</ntpMode>
         </ntp>
    </ntps>
 </dateTimeSetting>

 <!-- This section probably does not do anything useful. -->
 <callManagerGroup>
    <members>
       <member priority="0">
          <callManager>
             <ports>
                <ethernetPhonePort>2000</ethernetPhonePort>
                <sipPort>5060</sipPort>
                <securedSipPort>5061</securedSipPort>
             </ports>
             <processNodeName>127.0.0.1</processNodeName>
          </callManager>
       </member>
    </members>
 </callManagerGroup>
</devicePool>
<sipProfile>
 <sipProxies>
   <registerWithProxy>true</registerWithProxy>
 </sipProxies>
 <sipCallFeatures>
    <cnfJoinEnabled>true</cnfJoinEnabled>
    <callForwardURI>x--serviceuri-cfwdall</callForwardURI>
    <callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
    <callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
    <callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
    <meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
    <abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
    <rfc2543Hold>false</rfc2543Hold>
    <callHoldRingback>2</callHoldRingback>
    <localCfwdEnable>true</localCfwdEnable>
    <semiAttendedTransfer>true</semiAttendedTransfer>
    <anonymousCallBlock>2</anonymousCallBlock>
    <callerIdBlocking>2</callerIdBlocking>
    <dndControl>0</dndControl>
    <remoteCcEnable>true</remoteCcEnable>
 </sipCallFeatures>
 <sipStack>
    <sipInviteRetx>6</sipInviteRetx>
    <sipRetx>10</sipRetx>
    <timerInviteExpires>180</timerInviteExpires>
    <!-- Force short registration timeout to keep NAT connection alive -->
    <timerRegisterExpires>180</timerRegisterExpires>
    <timerRegisterDelta>5</timerRegisterDelta>
    <timerKeepAliveExpires>120</timerKeepAliveExpires>
    <timerSubscribeExpires>120</timerSubscribeExpires>
    <timerSubscribeDelta>5</timerSubscribeDelta>
    <timerT1>500</timerT1>
    <timerT2>4000</timerT2>
    <maxRedirects>70</maxRedirects>
    <remotePartyID>false</remotePartyID>
    <userInfo>None</userInfo>
 </sipStack>
 <autoAnswerTimer>1</autoAnswerTimer>
 <autoAnswerAltBehavior>false</autoAnswerAltBehavior>
 <autoAnswerOverride>true</autoAnswerOverride>
 <transferOnhookEnabled>false</transferOnhookEnabled>
 <enableVad>false</enableVad>
 <preferredCodec>g711ulaw</preferredCodec>
 <dtmfAvtPayload>101</dtmfAvtPayload>
 <dtmfDbLevel>3</dtmfDbLevel>
 <dtmfOutofBand>avt</dtmfOutofBand>
 <alwaysUsePrimeLine>false</alwaysUsePrimeLine>
 <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
 <kpml>3</kpml>
 <natEnabled>false</natEnabled>
 <natAddress></natAddress>
 <!-- FIXME: This will appear in the upper right corner of the display -->
 <phoneLabel>408-555-1212</phoneLabel>
 <stutterMsgWaiting>1</stutterMsgWaiting>
 <callStats>false</callStats>
 <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
 <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
 <startMediaPort>16384</startMediaPort>
 <stopMediaPort>16391</stopMediaPort>
 <sipLines>
    <line button="1">
       <featureID>9</featureID>
       <!-- FIXME: Text to display next to line button #1 -->
       <featureLabel>5551212</featureLabel>
       <!-- FIXME: FQDN or IP of your SIP proxy -->
       <proxy>losangeles.voip.ms</proxy>
       <port>5060</port>
       <!-- FIXME: SIP username -->
       <name>123456</name>
       <!-- FIXME: Name to display on outbound caller ID -->
       <displayName>VOIP CALL</displayName>
       <autoAnswer>
          <autoAnswerEnabled>2</autoAnswerEnabled>
       </autoAnswer>
       <callWaiting>1</callWaiting>
       <!-- FIXME: SIP authorization name (often matches username) -->
       <authName>123456</authName>
       <!-- FIXME: SIP authorization password -->
       <authPassword>password</authPassword>
       <sharedLine>true</sharedLine>
       <messageWaitingLampPolicy>1</messageWaitingLampPolicy>
       <!-- FIXME: "Messages" key will autodial this number -->
       <messagesNumber>*97</messagesNumber>
       <ringSettingIdle>4</ringSettingIdle>
       <ringSettingActive>5</ringSettingActive>
       <contact></contact>
       <forwardCallInfoDisplay>
          <callerName>true</callerName>
          <callerNumber>false</callerNumber>
          <redirectedNumber>false</redirectedNumber>
          <dialedNumber>true</dialedNumber>
       </forwardCallInfoDisplay>
    </line>
    <line button="2">
       <featureID>2</featureID>
       <featureLabel>ATT</featureLabel>
       <speedDialNumber>18002255288</speedDialNumber>
    </line>
    <!-- FIXME: Add more line buttons or speed dial entries here -->
   </sipLines>
 <voipControlPort>5060</voipControlPort>
 <dscpForAudio>184</dscpForAudio>
 <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
 <dialTemplate>dialplan.xml</dialTemplate>
</sipProfile>
<commonProfile>
 <phonePassword></phonePassword>
 <backgroundImageAccess>true</backgroundImageAccess>
 <callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<!-- FIXME: Change this to upgrade the firmware -->
<loadInformation>SIP45.8-5-4S</loadInformation>
<vendorConfig>
 <disableSpeaker>false</disableSpeaker>
 <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
 <pcPort>0</pcPort>
 <settingsAccess>1</settingsAccess>
 <garp>0</garp>
 <voiceVlanAccess>1</voiceVlanAccess>
 <videoCapability>0</videoCapability>
 <autoSelectLineEnable>0</autoSelectLineEnable>
 <webAccess>0</webAccess>
 <!-- For Sunday (1) and Saturday (7):
   <daysDisplayNotActive>1,2,3,4,5,6,7</daysDisplayNotActive>
   Current default is to enable the display 24/7.
 -->
 <daysDisplayNotActive></daysDisplayNotActive>
 <displayOnTime>00:00</displayOnTime>
 <displayOnDuration>24:00</displayOnDuration>
 <displayIdleTimeout>00:00</displayIdleTimeout>
 <spanToPCPort>1</spanToPCPort>
 <loggingDisplay>1</loggingDisplay>
 <loadServer></loadServer>
</vendorConfig>
<versionStamp></versionStamp>
<userLocale>
 <name>English_United_States</name>
<uid>1</uid>
 <langCode>en_US</langCode>
<version>1.0.0.0-1</version>
 <winCharSet>iso-8859-1</winCharSet>
</userLocale>
<networkLocale>United_States</networkLocale>
<networkLocaleInfo>
 <name>United_States</name>
<uid>64</uid>
 <version>1.0.0.0-1</version>
</networkLocaleInfo>
<deviceSecurityMode>0</deviceSecurityMode>
<!--
<authenticationURL>http://yourwebserver/authenticate.php</authenticationURL>
<directoryURL>http://yourwebserver/directory.xml</directoryURL>
-->
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<!--
  <servicesURL>http://phone-xml.berbee.com/menu.xml</servicesURL>
-->
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
 <capf>
    <phonePort>3804</phonePort>
 </capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
</device>


Sample dialplan.xml to support *xx, xxx-xxxx, 1xxx-xxx-xxxx, and 011xxx... dialing:


<DIALTEMPLATE>
     <TEMPLATE MATCH="011*" Timeout="6" User="Phone"/>
     <TEMPLATE MATCH="1.........." Timeout="0" User="Phone"/>
     <TEMPLATE MATCH="......." Timeout="0" User="Phone" Rewrite="213......."/>
     <TEMPLATE MATCH="*.." Timeout="0" User="Phone"/>
     <TEMPLATE MATCH="*" Timeout="15" User="Phone"/>
</DIALTEMPLATE>

Created by: kpc, Last modification: Fri 26 of Nov, 2010 (23:43 UTC)
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+