cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
4652
Views
1
Helpful
7
Replies

Off-topic: 7945G with home SIP provider

joe.bennett
Level 3
Level 3

Hi all,

Home services in Australia are migrating over to SIP and mine has just been changed over. As a UC engineer I've got an old 7945 handset that I'd like to deploy, but have little experience getting them working with anything other than CUCM. Does anyone know of a good stable firmware for 3rd party providers (I know that this is a Broadsoft platform) and have any hints/tips about NAT? It's sitting behind a Meraki MX60 appliance. I can probably fudge my way through but was wondering if anyone had been through this already.

Thanks,

Joe

1 Accepted Solution

Accepted Solutions

joe.bennett
Level 3
Level 3

Got it registered finally using 8.5.4 firmware. TFTP server is my NAS on my home LAN, and I set option 66/150 on my DHCP pool on my router. Sanitised config is below.

<device>

    <fullConfig>true</fullConfig>

    <deviceProtocol>SIP</deviceProtocol>

    <sshUserId>user</sshUserId>

    <sshPassword>pass</sshPassword>

    <devicePool>

        <dateTimeSetting>

            <name>CMLocal</name>

            <dateTemplate>D/M/Y</dateTemplate>

            <timeZone>E. Australia Standard Time</timeZone>

            <ntps>

                <ntp>

                    <name>192.231.203.132</name><!--SIP Proxy server -->

                    <ntpMode>Unicast</ntpMode>

                </ntp>

            </ntps>

        </dateTimeSetting>

        <callManagerGroup>

            <tftpDefault>true</tftpDefault>

            <members>

                <member priority="0">

                    <callManager>

                        <name>Internode</name>

                        <description>Internode</description>

                        <ports>

                            <ethernetPhonePort>2000</ethernetPhonePort>

                            <sipPort>5060</sipPort>

                            <securedSipPort>5061</securedSipPort>

                        </ports>

                        <processNodeName>sip.internode.on.net</processNodeName> <!-- SIP Proxy Server-->

                    </callManager>

                </member>

            </members>

        </callManagerGroup>

    </devicePool>

    <sipProfile>

        <sipProxies>

            <backupProxy>sip.internode.on.net</backupProxy> <!-- SIP Proxy Server-->

            <backupProxyPort>5060</backupProxyPort>

            <emergencyProxy></emergencyProxy>

            <emergencyProxyPort></emergencyProxyPort>

            <outboundProxy></outboundProxy>

            <outboundProxyPort></outboundProxyPort>

            <registerWithProxy>true</registerWithProxy>

        </sipProxies>

        <sipCallFeatures>

            <cnfJoinEnabled>true</cnfJoinEnabled>

            <callForwardURI>x-cisco-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>true</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>3600</timerInviteExpires>

            <!--Change timer expires to 3600 when working -->

            <timerRegisterExpires>120</timerRegisterExpires>

            <timerRegisterDelta>5</timerRegisterDelta>

            <timerKeepAliveExpires>120</timerKeepAliveExpires>

            <timerSubscribeExpires>120</timerSubscribeExpires>

            <timerSubscribeDelta>5</timerSubscribeDelta>

            <timerT1>500</timerT1>

            <timerT2>4000</timerT2>

            <maxRedirects>70</maxRedirects>

            <remotePartyID>true</remotePartyID>

            <userInfo>None</userInfo>

        </sipStack>

        <autoAnswerTimer>1</autoAnswerTimer>

        <autoAnswerAltBehavior>false</autoAnswerAltBehavior>

        <autoAnswerOverride>true</autoAnswerOverride>

        <transferOnhookEnabled>false</transferOnhookEnabled>

        <enableVad>false</enableVad>

        <preferredCodec>none</preferredCodec>

        <dtmfAvtPayload>101</dtmfAvtPayload>

        <dtmfDbLevel>3</dtmfDbLevel>

        <dtmfOutofBand>avt</dtmfOutofBand>

        <alwaysUsePrimeLine>false</alwaysUsePrimeLine>

        <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>

        <kpml>3</kpml>

        <phoneLabel>+6171234567</phoneLabel> <!--Text at top right of screen-->

        <natEnabled>true</natEnabled>

        <natAddress>myhome.dynamic-m.com</natAddress> <!-- External address of firewall -->

        <stutterMsgWaiting>2</stutterMsgWaiting>

        <callStats>false</callStats>

        <offhookToFirstDigitTimer>15000</offhookToFirstDigitTimer>

        <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>

        <disableLocalSpeedDialConfig>true</disableLocalSpeedDialConfig>

        <startMediaPort>16384</startMediaPort>

        <stopMediaPort>32766</stopMediaPort>

        <sipLines>

            <line button="1">

                <featureID>9</featureID>

                <featureLabel>Internode</featureLabel> <!--Text to show on phone line -->

                <proxy>sip.internode.on.net</proxy> <!-- SIP proxy server -->

                <port>5060</port>

                <name>0731234567</name> <!-- Phone number to register -->

                <displayName>0731234567</displayName> <!--Phone number to register -->

                <autoAnswer>

                    <autoAnswerEnabled>2</autoAnswerEnabled>

                </autoAnswer>

                <callWaiting>3</callWaiting>

                <authName>0731234567</authName> <!-- Auth username (usually your number)-->

                <authPassword>MyPassword</authPassword> <!--Auth Password-->

                <sharedLine>false</sharedLine>

                <messageWaitingLampPolicy>3</messageWaitingLampPolicy>

                <messagesNumber>111</messagesNumber>

                <ringSettingIdle>4</ringSettingIdle>

                <ringSettingActive>5</ringSettingActive>

                <contact>0731234567</contact> <!--phone number to register-->

                <forwardCallInfoDisplay>

                    <callerName>true</callerName>

                    <callerNumber>false</callerNumber>

                    <redirectedNumber>false</redirectedNumber>

                    <dialedNumber>true</dialedNumber>

                </forwardCallInfoDisplay>

            </line>

            <line button="2">

                <featureID></featureID>

                <featureLabel>Speed Dial</featureLabel>

                <speedDialNumber>1234</speedDialNumber>

            </line>

        </sipLines>

        <voipControlPort>5060</voipControlPort>    

        <dscpForAudio>184</dscpForAudio>

        <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>

        <dialTemplate>dialplan.xml</dialTemplate>

        <softKeyFile>softkeyDefault.xml</softKeyFile>

    </sipProfile>

    <commonProfile>

        <phonePassword>Cisco</phonePassword>

        <backgroundImageAccess>true</backgroundImageAccess>

        <callLogBlfEnabled>1</callLogBlfEnabled>

    </commonProfile>

    <loadInformation>SIP45.8-5-4S</loadInformation>

    <vendorConfig>

        <g722CodecSupport>2</g722CodecSupport>

        <disableSpeaker>false</disableSpeaker>

        <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>

        <pcPort>0</pcPort>

        <settingsAccess>1</settingsAccess>

        <garp>0</garp>

        <voiceVlanAccess>0</voiceVlanAccess>

        <videoCapability>0</videoCapability>

        <autoSelectLineEnable>0</autoSelectLineEnable>

        <webAccess>1</webAccess>

        <daysDisplayNotActive>1,7</daysDisplayNotActive>

        <displayOnTime>08:00</displayOnTime>

        <displayOnDuration>10:30</displayOnDuration>

        <displayIdleTimeout>01:00</displayIdleTimeout>

        <spanToPCPort>1</spanToPCPort>

    </vendorConfig>

    <versionStamp>1136931633-57191cee-5ffc-4342-b286-4246b4991890</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>1</deviceSecurityMode>

    <idleTimeout>0</idleTimeout>

    <authenticationURL></authenticationURL>

    <directoryURL></directoryURL>    

    <idleURL></idleURL>

    <informationURL></informationURL>

    <messagesURL></messagesURL>

    <proxyServerURL></proxyServerURL>

    <servicesURL>http://cisco.internect.net</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>

    <advertiseG722Codec>1</advertiseG722Codec>

</device>

View solution in original post

7 Replies 7

joe.bennett
Level 3
Level 3

I've just loaded 9-4-2-1SR3-1 and although it's resolving the SRV record of the ITSP, my packet capture shows no traffic after that point. It's not even trying to register. Forums have said this is a known problem with some older firmwares, so I'll try a v8 firmware that may be better.

Greetings,

Dont think its possible to connect a 7945G to anything other than a Cisco CallManager or Cisco CallManager Express. Normally a sip home provider registers phones that support only sip digest authentication wich uses sip rfc based firmware. 7945 as an Enterprise Cisco phone does not allow this since it requires a tftp server for phone provisioning,

You can refer to this old support post for this:

https://supportforums.cisco.com/discussion/11032816/ip-7965-sip-protocol

Having said that the new 78xx Series phones allow this as per documentation below:

http://www.cisco.com/c/en/us/products/collateral/collaboration-endpoints/unified-ip-phone-7800-series/datasheet-c78-738031.html

Thanks Nuno,

     I got it working. I knew that it was possible and was hoping that another UC engineer had been through the pain since most forums have people who don't have a good foundation of SIP. I'd not seen the 78xx supporting it, but it's too new for us to have old ones laying about. I'm tempted to try to get one of the 8945s working because I'm a masochist, but I'm not sure that they run a firmware that'll play nicely. It looks like v8 SIP firmware has something that v9 doesn't (at least on the 79 series) and I'm not sure that there'll be v8 code for an 8945. I prefer the 7900 series anyway as they feel better built.

Well i stand corrected . From my experience the old 7960/40 supported the registration to sip registrar servers but not the newer models from the 79xx series, Of course if you can get all tftp variables supported by the phone config file and through trial and error you can eventually find a solution, so Great find.

Hi,


As an update, you noted that "I've just loaded 9-4-2-1SR3-1 and although it's resolving the SRV record of the ITSP, my packet capture shows no traffic after that point. It's not even trying to register."


However, after reading this post, I was able to load and register 9-4-2SR3-1 with a SIP provider.


https://www.voip-info.org/asterisk-phone-cisco-79x1-xml-configuration-files-for-sip/


What triggered the investigation was a note about half way down the page:


"* Version 9.2(1) was released May 24, 2011. Works with both TCP and UDP transports. For UDP transport set following options in SEP<MAC>.cnf.xml: <proxy>USECALLMANAGER</proxy> and <transportLayerProtocol>2</transportLayerProtocol>."


Hope this helps.

joe.bennett
Level 3
Level 3

Got it registered finally using 8.5.4 firmware. TFTP server is my NAS on my home LAN, and I set option 66/150 on my DHCP pool on my router. Sanitised config is below.

<device>

    <fullConfig>true</fullConfig>

    <deviceProtocol>SIP</deviceProtocol>

    <sshUserId>user</sshUserId>

    <sshPassword>pass</sshPassword>

    <devicePool>

        <dateTimeSetting>

            <name>CMLocal</name>

            <dateTemplate>D/M/Y</dateTemplate>

            <timeZone>E. Australia Standard Time</timeZone>

            <ntps>

                <ntp>

                    <name>192.231.203.132</name><!--SIP Proxy server -->

                    <ntpMode>Unicast</ntpMode>

                </ntp>

            </ntps>

        </dateTimeSetting>

        <callManagerGroup>

            <tftpDefault>true</tftpDefault>

            <members>

                <member priority="0">

                    <callManager>

                        <name>Internode</name>

                        <description>Internode</description>

                        <ports>

                            <ethernetPhonePort>2000</ethernetPhonePort>

                            <sipPort>5060</sipPort>

                            <securedSipPort>5061</securedSipPort>

                        </ports>

                        <processNodeName>sip.internode.on.net</processNodeName> <!-- SIP Proxy Server-->

                    </callManager>

                </member>

            </members>

        </callManagerGroup>

    </devicePool>

    <sipProfile>

        <sipProxies>

            <backupProxy>sip.internode.on.net</backupProxy> <!-- SIP Proxy Server-->

            <backupProxyPort>5060</backupProxyPort>

            <emergencyProxy></emergencyProxy>

            <emergencyProxyPort></emergencyProxyPort>

            <outboundProxy></outboundProxy>

            <outboundProxyPort></outboundProxyPort>

            <registerWithProxy>true</registerWithProxy>

        </sipProxies>

        <sipCallFeatures>

            <cnfJoinEnabled>true</cnfJoinEnabled>

            <callForwardURI>x-cisco-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>true</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>3600</timerInviteExpires>

            <!--Change timer expires to 3600 when working -->

            <timerRegisterExpires>120</timerRegisterExpires>

            <timerRegisterDelta>5</timerRegisterDelta>

            <timerKeepAliveExpires>120</timerKeepAliveExpires>

            <timerSubscribeExpires>120</timerSubscribeExpires>

            <timerSubscribeDelta>5</timerSubscribeDelta>

            <timerT1>500</timerT1>

            <timerT2>4000</timerT2>

            <maxRedirects>70</maxRedirects>

            <remotePartyID>true</remotePartyID>

            <userInfo>None</userInfo>

        </sipStack>

        <autoAnswerTimer>1</autoAnswerTimer>

        <autoAnswerAltBehavior>false</autoAnswerAltBehavior>

        <autoAnswerOverride>true</autoAnswerOverride>

        <transferOnhookEnabled>false</transferOnhookEnabled>

        <enableVad>false</enableVad>

        <preferredCodec>none</preferredCodec>

        <dtmfAvtPayload>101</dtmfAvtPayload>

        <dtmfDbLevel>3</dtmfDbLevel>

        <dtmfOutofBand>avt</dtmfOutofBand>

        <alwaysUsePrimeLine>false</alwaysUsePrimeLine>

        <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>

        <kpml>3</kpml>

        <phoneLabel>+6171234567</phoneLabel> <!--Text at top right of screen-->

        <natEnabled>true</natEnabled>

        <natAddress>myhome.dynamic-m.com</natAddress> <!-- External address of firewall -->

        <stutterMsgWaiting>2</stutterMsgWaiting>

        <callStats>false</callStats>

        <offhookToFirstDigitTimer>15000</offhookToFirstDigitTimer>

        <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>

        <disableLocalSpeedDialConfig>true</disableLocalSpeedDialConfig>

        <startMediaPort>16384</startMediaPort>

        <stopMediaPort>32766</stopMediaPort>

        <sipLines>

            <line button="1">

                <featureID>9</featureID>

                <featureLabel>Internode</featureLabel> <!--Text to show on phone line -->

                <proxy>sip.internode.on.net</proxy> <!-- SIP proxy server -->

                <port>5060</port>

                <name>0731234567</name> <!-- Phone number to register -->

                <displayName>0731234567</displayName> <!--Phone number to register -->

                <autoAnswer>

                    <autoAnswerEnabled>2</autoAnswerEnabled>

                </autoAnswer>

                <callWaiting>3</callWaiting>

                <authName>0731234567</authName> <!-- Auth username (usually your number)-->

                <authPassword>MyPassword</authPassword> <!--Auth Password-->

                <sharedLine>false</sharedLine>

                <messageWaitingLampPolicy>3</messageWaitingLampPolicy>

                <messagesNumber>111</messagesNumber>

                <ringSettingIdle>4</ringSettingIdle>

                <ringSettingActive>5</ringSettingActive>

                <contact>0731234567</contact> <!--phone number to register-->

                <forwardCallInfoDisplay>

                    <callerName>true</callerName>

                    <callerNumber>false</callerNumber>

                    <redirectedNumber>false</redirectedNumber>

                    <dialedNumber>true</dialedNumber>

                </forwardCallInfoDisplay>

            </line>

            <line button="2">

                <featureID></featureID>

                <featureLabel>Speed Dial</featureLabel>

                <speedDialNumber>1234</speedDialNumber>

            </line>

        </sipLines>

        <voipControlPort>5060</voipControlPort>    

        <dscpForAudio>184</dscpForAudio>

        <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>

        <dialTemplate>dialplan.xml</dialTemplate>

        <softKeyFile>softkeyDefault.xml</softKeyFile>

    </sipProfile>

    <commonProfile>

        <phonePassword>Cisco</phonePassword>

        <backgroundImageAccess>true</backgroundImageAccess>

        <callLogBlfEnabled>1</callLogBlfEnabled>

    </commonProfile>

    <loadInformation>SIP45.8-5-4S</loadInformation>

    <vendorConfig>

        <g722CodecSupport>2</g722CodecSupport>

        <disableSpeaker>false</disableSpeaker>

        <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>

        <pcPort>0</pcPort>

        <settingsAccess>1</settingsAccess>

        <garp>0</garp>

        <voiceVlanAccess>0</voiceVlanAccess>

        <videoCapability>0</videoCapability>

        <autoSelectLineEnable>0</autoSelectLineEnable>

        <webAccess>1</webAccess>

        <daysDisplayNotActive>1,7</daysDisplayNotActive>

        <displayOnTime>08:00</displayOnTime>

        <displayOnDuration>10:30</displayOnDuration>

        <displayIdleTimeout>01:00</displayIdleTimeout>

        <spanToPCPort>1</spanToPCPort>

    </vendorConfig>

    <versionStamp>1136931633-57191cee-5ffc-4342-b286-4246b4991890</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>1</deviceSecurityMode>

    <idleTimeout>0</idleTimeout>

    <authenticationURL></authenticationURL>

    <directoryURL></directoryURL>    

    <idleURL></idleURL>

    <informationURL></informationURL>

    <messagesURL></messagesURL>

    <proxyServerURL></proxyServerURL>

    <servicesURL>http://cisco.internect.net</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>

    <advertiseG722Codec>1</advertiseG722Codec>

</device>

DialPlan.xml is also required. This is for a 10 digit closed Australian dial-plan and can probably be tidied up but it works

<DIALTEMPLATE>

    <TEMPLATE MATCH="12...." TIMEOUT="0"/>

    <TEMPLATE MATCH="13...." TIMEOUT="0"/>

    <TEMPLATE MATCH="1300......" TIMEOUT="0"/>

    <TEMPLATE MATCH="1800......" TIMEOUT="0"/>

    <TEMPLATE MATCH="0011*" TIMEOUT="5"/>

    <TEMPLATE MATCH="02........" TIMEOUT="0"/>

    <TEMPLATE MATCH="03........" TIMEOUT="0"/>

    <TEMPLATE MATCH="04........" TIMEOUT="0"/>

    <TEMPLATE MATCH="07........" TIMEOUT="0"/>

    <TEMPLATE MATCH="08........" TIMEOUT="0"/>

    <TEMPLATE MATCH="3......." TIMEOUT="0"/>

    <TEMPLATE MATCH="4......." TIMEOUT="0"/>

    <TEMPLATE MATCH="5......." TIMEOUT="0"/>

    <TEMPLATE MATCH="6......." TIMEOUT="0"/>

    <TEMPLATE MATCH="7......." TIMEOUT="0"/>

    <TEMPLATE MATCH="8......." TIMEOUT="0"/>

    <TEMPLATE MATCH="9......." TIMEOUT="0"/>

    <TEMPLATE MATCH="000" TIMEOUT="0"/> 

    <TEMPLATE MATCH="(*)#" Timeout="0" Rewrite="%1"/> <!-- Dial Immediately After Pressing # -->

</DIALTEMPLATE>