Asterisk phone cisco 7970 SIP
Created by: slickrock22,Last modification on Tue 19 of Aug, 2008 [02:32 UTC] by vile
I used the 7940/7960 pages as a starter for this. This page still needs some love. please help out.
By default most Cisco VoIP phones come configured for Call Manager, which uses the 'Skinny' protocol - SCCP.
This wiki will focus on changing from the default SCCP to the newly support SIP v8.0.2 for the 7970 ONLY
With the right Cable, 7970G series phones can use standard POE injectors, they also work out of the box with Aironet power injectors.
(N.B., the wrong cable may damage your phone!)
Cisco 7970 SIP Phone Software Image
Cisco's SIP phone software images currently include versions v8.0.2 and 8.0.3, both work with Asterisk. While most users had to implement SCCP (http://www.voip-info.org/wiki/view/chan_sccp2) to use this phone, Cisco has finally created SIP for non-call manager implementations. I think they finally wised up to the proliferation of things like Asterisk.
Latest release dates:
v8.0.4SR2 released 2007-01-17
v8.0.4 released 2006-08-29
V8.2.1 released 2006-12-08
For a list of Resolved Problems and Known Problems with this firmware version, you can obtain the Firmware Release Notes in English by clicking the following URL:
http://www.cisco.com/univercd/cc/td/doc/product/voice/c_ipphon/english/ipp7970/relnote/index.htm
For a list of Release Notes for other Firmware versions, click the following URL:
http://www.cisco.com/univercd/cc/td/doc/product/voice/c_ipphon/english/ipp7970/relnote/index.htm
8.0.4 software has implemented:
-
8.0.4 software has this problems:
- unable to register with Asterisk 1.2.5
-
The v8.0.2 software has implemented: EDIT
Alert-Info (play internal ring tones based on Alert-Info within the SIP header)
Auto Answer (2-way paging conversation without picking up handset)
DHCP Option 66
Directory Enhancements (user can add/change/delete entries in Personal Directory)
DSP (new digital signal processor)
DSP Alarms, Debugging Aids, and Logging (help diagnose problems)
Enhanced Tone and Ring Support (support for more complex tones and ringing patterns)
Hot Line / Speeddials (each line button can be programmed to act as a speeddial button)
Local Call Forwarding (redirects incoming calls to another extension/URL)
Message Waiting Stutter Tone
Multiple Call Appearance (receptionist style, all lines have the same extension)
Outbound Proxy Redesign (improves use of outbound proxy based on multiple DNS records)
SIP Call Statistics (call statistics sent in BYE / 200 OK messages)
Resolved Caveats (several previously documented problems have been resolved)
This will evolve into a step by step guide to upgrading Cisco 7970G to sip version 8.x from the default SCCP load.
v8.0 and up:
First time that SIP is implemented for the 7970G
Cisco SIP IP Phone Administrator Guide, Versions 8.x
http://cisco.com/en/US/products/sw/voicesw/add link
http://www.cisco.com/en/US/products/hw/phones/ps379/products_user_guide_list.html
Cisco SIP IP Telephone 7970G Software (NOTE: This page is only available to registered Cisco.com users with a Cisco Service Agreement)
http://www.cisco.com/cgi-bin/tablebuild.pl/ip-7900ser
Latest Version: v8.0.3 is now released. The file from cisco is designed for the cisco call manager software and is a ".cop" file. This file is just a GZIP compressed TAR file. Just ungzip and untar the file to extract the the new files for the phone. It installs just like the version 7 software with a loader and an application file.
The following is Cisco's pdf on the 7970.
http://www.cisco.com/application/pdf/en/us/guest/products/ps5946/c1629/ccmigration_09186a0080644003.pdf
Unfortunately Cisco have NOT released a detailed breakdown of the workings of the 7970 configuration (SEP<mac>.cnf.xml) file. This is because Cisco now generates the SEP files from within Call Manager (CCM). As a rule Cisco now tell configurators how to make configuration changes from with the CCM application (which then generates the SEP<mac>.cnf.xml). Because of this it's more difficult to 'hand craft' the config files - If anyone has an annotated SEP<mac>.cnf.xml file they could post it would be very useful.
For upgrading to SIP version 8.0.3 the following files come in the .cop file.
For both 7970/7971:
apps70.1-1-2-26.sbn
cnu70.3-1-2-26.sbn
cvm70sip.8-0-2-25.sbn
dsp70.1-1-2-26.sbn
jar70sip.8-0-2-25.sbn
SIP70.sbn
For 7970:
load300006.txt
term70.default.loads
For 7971:
load119.txt
term71.defaults.loads
There are also two files included in the .cop file that should be copied to the TFTBOOT directory:-
SIP70.8-0-3S.loads
copstart.sh
Please note the above file names are SPECIFIC to Cisco SIP 8.0.3 for the 7970/7971, naming conventions for different versions may be slightly different (I don't have 8.0.2, perhaps if someone does and they could post the filenames here that would be useful).
XMLDefault.cnf.xml (NOTE - CASE SENSITIVE - check TFTP or Status logs on phone to confirm case required )
This file contains the default settings that are common to all phones. It is similar to the SIPDefault.cnf file used by the 7940/7960 phones. The 7940/7960 also use this file to determine which version of the firmware to load.
<Default>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName></processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation8 model="IP Phone 7940">P003-07-4-00</loadInformation8>
<loadInformation7 model="IP Phone 7960">P003-07-4-00</loadInformation7>
<loadInformation6 model="IP Phone 7970">SIP70.8-0-3S</loadInformation6> *** identifies the filename to LOAD (SIP70.8-0-3S.loads)
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<servicesURL></servicesURL>
</Default>
SEP<mac>.cnf.xml example SEP123456789ABC.cnf.xml the <mac> refers to the MAC address of the phone.
Now for individual phone settings, you need this file.
One thing to note: Anyone know how to set individual password for each sip line so it can be authenticated?
There may also be a few tags that aren't recognized/required by the phone - this will need to be updated!
<device xsi:type="axl:XIPPhone" ctiid="203849429" uuid="{96f8508b-10ef-f98c-d20d-0471777ec725}">
<fullConfig>true</fullConfig>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId></sshUserId>
<sshPassword></sshPassword>
<devicePool uuid="{a755aa55-089c-2b47-9603-c7d51b9ca4b5}">
<dateTimeSetting uuid="{9ec4850a-7748-11d3-bdf0-00108302ead1}">
<dateTemplate>M/D/Y</dateTemplate> ; by adding a after the Y shows time in 12 hour mode i.e. D/M/Ya
<timeZone>Greenwich Standard Time</timeZone>
</dateTimeSetting>
<callManagerGroup>
<tftpDefault>true</tftpDefault>
<members>
<member priority="0">
<callManager>
<name>ccm-beta-5-1</name>
<description>CallManager 5.0 Beta Pub - 5.0.1.032</description>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName>ccm-beta-5-1</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<srstInfo uuid="{cd241e11-4a58-4d3d-9661-f06c912a18a3}">
<name>Disable</name>
<srstOption>Disable</srstOption>
<userModifiable>false</userModifiable>
<ipAddr1></ipAddr1>
<port1>2000</port1>
<ipAddr2></ipAddr2>
<port2>2000</port2>
<ipAddr3></ipAddr3>
<port3>2000</port3>
<sipIpAddr1></sipIpAddr1>
<sipPort1>5060</sipPort1>
<sipIpAddr2></sipIpAddr2>
<sipPort2>5060</sipPort2>
<sipIpAddr3></sipIpAddr3>
<sipPort3>5060</sipPort3>
<isSecure>false</isSecure>
</srstInfo>
<mlppDomainId>-1</mlppDomainId>
<mlppIndicationStatus>Default</mlppIndicationStatus>
Default
<connectionMonitorDuration>120</connectionMonitorDuration>
</devicePool>
<sipProfile>
<sipProxies>
<backupProxy>USECALLMANAGER</backupProxy>
<backupProxyPort>5060</backupProxyPort>
<emergencyProxy>USECALLMANAGER</emergencyProxy>
<emergencyProxyPort>5060</emergencyProxyPort>
<outboundProxy>USECALLMANAGER</outboundProxy>
<outboundProxyPort>5060</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>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>
<timerRegisterExpires>3600</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>
none
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<phoneLabel></phoneLabel>
<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></featureLabel>
<proxy>USECALLMANAGER</proxy>
<port>5060</port>
<name>3302</name>
<displayName>3302</displayName>
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
<callWaiting>3</callWaiting>
<authName></authName>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>3</messageWaitingLampPolicy>
<messagesNumber></messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<contact>7b452e87-4496-4762-e11f-b26751a1884b</contact>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>false</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
</line>
</sipLines>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate></dialTemplate>
<softKeyFile>SK50719900-3bee-4594-bc3f-6400e1a33bf0.xml</softKeyFile>
</sipProfile>
<commonProfile>
<phonePassword></phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<loadInformation>SIP70.8-0-0-38S</loadInformation>
<vendorConfig>
<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>0</webAccess><daysDisplayNotActive>1,7</daysDisplayNotActive><displayOnTime>07:30</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>http://ccm-beta-5-1:8080/ccmcip/authenticate.jsp</authenticationURL>
<directoryURL>http://ccm-beta-5-1:8080/ccmcip/xmldirectory.jsp</directoryURL>
<idleURL></idleURL>
<informationURL>http://ccm-beta-5-1:8080/ccmcip/GetTelecasterHelpText.jsp</informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<servicesURL>http://10.86.5.102/CiscoServices/index.xml</servicesURL>
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
<capf>
<phonePort>3804</phonePort>
<processNodeName>ccm-beta-5-1</processNodeName>
</capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
<line button="3">
<featureID>2</featureID>
<featureLabel>2000</featureLabel>
<speedDialNumber>2000</speedDialNumber>
</line>
<natReceivedProcessing>true</natReceivedProcessing>
<natEnabled>true</natEnabled>
<natAddress></natAddress>
<dialTemplate>dialplan.xml</dialTemplate>
</device>
I now have a fully working system and will post annotated versions of these files later tonight
NOTE from twisted: To enable auto-answering for use with paging/intercom on a line, do the following:
In the line config for the line button you want to be an intercom, change this:
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
to this:
<autoAnswer>
<autoAnswerEnabled>3</autoAnswerEnabled>
<autoAnswerMode>Auto Answer with Speakerphone</autoAnswerMode>
<autoAnswer>
The previous information is below so that it may be merged/delated when someone has time.
load30006.txt (7970) (The content of this file is solely the software image filename stripped of the .cop, i.e. SIP70.8-0-2-0S)(Contains the universal application loader image in 8.x)
cvm70sip.8-0-1-16.sbn (Secure universal application loader for upgrades from images 5.x or later.)
?????????.loads (File that contains the universal application loader and application image, where "a" represents the protocol of the application image loads file 0-SCCP, S-SIP, M-MGCP.)
?????????.sb2 (Application firmware image, where "a" represents the application firmware image.)
SIPDefault.cnf (Contains generic parameters for all Cisco phones at your location)
SEP00036BAAD139.cnf.xml (Where the last 12 hex digits is the MAC address of your Cisco phone) Sample php script to create the cnf file.
In addition, the following optional files may also be present in the TFTP directory: (this was for the 7960 - not sure on impact)
dialplan.xml (contains entries like "9,1...." that cause the phone to automatically dial after a match)
ringlist.xml (a list of ringing tones to be downloaded, like ringer1.pcm)
distinctiveringlist.xml
ringer1.pcm (a ringing tone to be downloaded to the phone)
See also: John Todd's examples (not sure if this applies to the 7970G - Please update if you knwo the answer)
Edit*** Simplify Updates (Auto-Loader Support) ***
This will save you alot of wasted time trying to update newer firmware! For easiest, direct firmware updates from say factory installed SCCP images direct to latest SIP firmware (e.g. SCCP v3.1 to SIP v7.4) — add the following files to your TFTP directory to assist the SCCP based generic Auto-Loader added as of v5.x to Cisco's SIP/SCCP images:
XMLDefault.cnf.xml
xmlDefault.CNF.XML
Due to inconsistent coding by Cisco, different firmware may look for different case-sensitive versions of the same file, thus the need for at least the two variations above to cover new phones and a good portion of older one's. Additionally, here is a usable example of the XML content that should be inserted into the files (be sure and update with the firmware version you wish to load, and match the SIPDefault.cnf and SEPxxxxxxx.cnf.xml file's "image_version=" entries to match!):
<Default>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName></processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation8 model="IP Phone 7940">P003-07-4-00</loadInformation8>
<loadInformation7 model="IP Phone 7960">P003-07-4-00</loadInformation7>
<loadInformation6 model="IP Phone 7970">SIP70.8-0-2-0S</loadInformation6>
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<servicesURL></servicesURL>
</Default>
See reboot.pl. A perl script to handle remote rebooting of the 79xx class phones (useful for multiple-phone upgrades). Requires Net::Telnet.
NOTE: For Reference, reboot.pl has been moved to http://www.nmedia.net/~mklein/reboot.pl . Still Requires Net::Telnet.
Dateline Standard Time
Samoa Standard Time
Hawaiian Standard Time
Alaskan Standard/Daylight Time
Pacific Standard/Daylight Time
Mountain Standard/Daylight Time
US Mountain Standard Time
Central Standard/Daylight Time
Mexico Standard/Daylight Time
Canada Central Standard Time
SA Pacific Standard Time
Eastern Standard/Daylight Time
US Eastern Standard Time
Atlantic Standard/Daylight Time
SA Western Standard Time
Newfoundland Standard/Daylight Time
South America Standard/Daylight Time
SA Eastern Standard Time
Mid-Atlantic Standard/Daylight Time
Azores Standard/Daylight Time
GMT Standard/Daylight Time
Greenwich Standard Time
W. Europe Standard/Daylight Time
GTB Standard/Daylight Time
Egypt Standard/Daylight Time
E. Europe Standard/Daylight Time
Romance Standard/Daylight Time
Central Europe Standard/Daylight Time
South Africa Standard Time
Jerusalem Standard/Daylight Time
Saudi Arabia Standard Time
Russian Standard/Daylight Time
Iran Standard/Daylight Time
Caucasus Standard/Daylight Time
Arabian Standard Time
Afghanistan Standard Time
West Asia Standard Time
Ekaterinburg Standard Time
India Standard Time
Central Asia Standard Time
SE Asia Standard Time
China Standard/Daylight Time
Taipei Standard Time
Tokyo Standard Time
Cen. Australia Standard/Daylight Time
AUS Central Standard Time
E. Australia Standard Time
AUS Eastern Standard/Daylight Time
West Pacific Standard Time
Tasmania Standard/Daylight Time
Central Pacific Standard Time
Fiji Standard Time
New Zealand Standard/Daylight Time
Cisco's documentation states the logo be a .PNG bitmap format.
Please create the following directory in your TFTPBOOT directory (case sensitive)
/Desktops/320x212x12
In this directory store your PNG files, each file can be up to 4096 colours and 320x212 pixels.
For each file you need a Fullsize PNG file (320x212x12) and a Thumbnail PNG (80x53x12)
Also generate a List.xml file in this directory
The format of this file is:-
<CiscoIPPhoneImageList>
<ImageItem Image="TFTP:Desktops/320x212x12/thumbnail.png" URL="TFTP:Desktops/320x212x12/Fullsize.png"/>
</CiscoIPPhoneImageList>
Where thumbnail.png is the name of the thumbnail file and fullsize.png is the name of the corresponding fullsize file.
You can have multiple listings in this directory and they are then accessed via the phone from Menu-->User Preferences-->Background Images
Modify the SIPDefault.cnf file entry to point to the web site:
directory_url: "http://www.mywebserver.com/asterisk/directory.xml"
The phone must be rebooted in order to read the above file.
The web site file /asterisk/directory.xml should include xml entries like:
<CiscoIPPhoneDirectory>
<Title>IP Telephony Directory</Title>
<Prompt>People reachable via VoIP</Prompt>
<DirectoryEntry>
<Name>Rich</Name>
<Telephone>3000</Telephone>
</DirectoryEntry>
<DirectoryEntry>
<Name>Todd</Name>
<Telephone>3001</Telephone>
</DirectoryEntry>
</CiscoIPPhoneDirectory>
Note: Each time a user presses the Directory key and accesses the External Directory option from the menu, the phone will access the contents of this html file and display whatever text entries included in it. Therefore, changes to the html file do not require any futher rebooting of the Cisco phone. Cisco has published Cisco IP Phone Services Application Development Notes (CMXML_App_Guide.pdf ) that further explains options and file contents.
QUESTION:
- Phone directory can display 32 entrys per page. How to display second, third... page?
Modify the SIPDefault.cnf file entry to point to the web site:
services_url: "http://www.mywebserver.com/asterisk/myscriptpage.html"
The phone must be rebooted in order to read the above file.
The web site file /asterisk/myscriptpage.html should include entries for each service that you plan to make available to your phone users. The exact content and syntax is also documented in the Cisco IP Phone Services Application Development Notes (CMXML_App_Guide.pdf ) noted above.
<messagesNumber>extension</messagesNumber>
where "extension" is what you wish the phone to dial when the Messages button is pressed. You can then catch the call in either a standard VoiceMailMain() invocation a la
exten => _42,1,VoiceMailMain()
or, be cute and bypass entry of mailbox number and password a la
exten => _42,1,VoiceMailMain(s<mbox num>)
To make the Messages button work for any extension (assuming your extensions are numbered appropriately), use:
exten => _42,1,VoiceMailMain(s${CALLERIDNUM})
The Cisco SIP IP phone ships with two ring types: Chirp1 and Chirp2. By
default, your ring type options will be those two choices. However,
using the RINGLIST.DAT file, you can customize the ring types that are
available to the Cisco SIP IP phone users.
Step 1
Create a pulse code modulation (PCM) file of the desired ring
types and store the PCM files in the root directory of your TFTP server.
PCM files must contain no header information and comply with the
following format guidelines:
8000 Hz sampling rate
8 bits per sample
ulaw compression
240 - 16080 samples long ( 0.03 sec - 2.01 sec )
For example, to use sox to generate the tones, use
sox -t wav in.wav -t raw -r 8000 -U -b -c 1 out.raw resample -ql
Step 2
Using a ASCII editor, open the RINGLIST.DAT file and for each
of the ring types you are adding, specify the name as you want it to
display on the Ring Type menu, press Tab, and then specify the filename
of the ring type. For example, the format of a pointer in your
RINGLIST.DAT file should appear similar to the following:
Ring Type 1 ringer1.pcm
Step 3
After defining pointers for each of the ring types you are
adding, save your modifications and close the RINGLIST.DAT file.
Caveat:
If you have configured a secondary tftp-server(ie. dyn_tftp_addr : 192.168.1.10) in SIPDefault.cnf, or SEP<MACADDR>.cnf.xml which cannot be reached then the phone will not attempt to download the RINGLIST.DAT file.
EditControlling ring tones from Asterisk
By setting the Asterisk variable ALERT_INFO before you call Dial, Asterisk will add ringer tone info to the SIP invite that is sent to the phone.
exten => 3010,1,SetVar(ALERT_INFO=<Bellcore-dr1>) ; selects Ringer
exten => 3010,2,Dial(SIP/3010,15)
Note: In SIP_HEAD or v1+ you wil need to do the following:
exten => 3010,1,SetVar(_ALERT_INFO=something)
Available ring tones by default
Bellcore-BusyVerify
Bellcore-Stutter
Bellcore-MsgWaiting
Bellcore-dr1
Bellcore-dr2
Bellcore-dr3
Bellcore-dr4
Bellcore-dr5
Setting up your ringlist on a 7970 is very easy but aside from Cisco's documentation it was difficult to find a good example.
For you beginners out there you should note that *everything* is case-sensitive.
ringlist.xml is required in /tftpboot.
File format is as follows:
<CiscoIPPhoneRingList>
<Ring>
<DisplayName/>
<FileName/>
</Ring>
</CiscoIPphoneRingList>
Sample ringlist.xml:
<CiscoIPPhoneRingList>
<Ring>
<DisplayName>Merlin 2</DisplayName>
<FileName>merlin2.pcm</FileName>
</Ring>
<Ring>
<DisplayName>Merlin 3</DisplayName>
<FileName>merlin3.pcm</FileName>
</Ring>
</CiscoIPPhoneRingList>
If you wish to use the hash (by default it will immediately dial the number entered) include it explicitly as part of a pattern in DIALPLAN.XML
<DIALTEMPLATE>
<TEMPLATE MATCH="#..." Timeout="5" User="Phone" />
<TEMPLATE MATCH="*" Timeout="5" User="Phone" />
</DIALTEMPLATE>
In another example, we immediately match 9+10digits or 9+1+10digits, and match 5+2digits as internal extensions
<DIALTEMPLATE>
<TEMPLATE MATCH="5.." TIMEOUT="0"/>
<TEMPLATE MATCH="9,1.........." TIMEOUT="0" Tone="Bellcore-Alerting"/>
<TEMPLATE MATCH="9,.........." TIMEOUT="0"/>
</DIALTEMPLATE>
In the above example, a secondary dial tone is invoked by the comma character. If the Tone attribute is left blank, the default will be used. Or you can specify one of the following:
Bellcore-Alerting
Bellcore-Busy
Bellcore-BusyVerify
Bellcore-CallWaiting
Bellcore-Confirmation
Bellcore-dr1
Bellcore-dr2
Bellcore-dr3
Bellcore-dr4
Bellcore-dr5
Bellcore-dr6
Bellcore-Hold
Bellcore-Inside
Bellcore-None
Bellcore-Outside (default)
Bellcore-Permanent
Bellcore-Reminder
Bellcore-Reorder
Bellcore-Stutter
CallWaiting-2
CallWaiting-3
CallWaiting-4
Cisco-BeepBonk
Cisco-Zip
Cisco-ZipZip
Notes: This file is case sensitive in some firmware versions; all elements and attributes should be uppercase (except Tone) or the entries may be ignored. According to Cisco, the phone will always match the LONGEST expression.
For example:
SEPXXXXX.cnf.xml: (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
??????
In your sip.conf: (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
510
type=friend
username=510
secret=test
host=dynamic
dtmfmode=rfc2833
context=whatever
canreinvite=no
nat=no
mailbox=510@default
callerid=<510>
In your extensions.conf: (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
exten => 510,1,Dial(SIP/510,20,mTt)
exten => 510,2,Voicemail(u510@default)
exten => 510,3,Hangup
exten => 510,102,Voicemail(b510@default)
exten => 510,103,Hangup
sip.conf (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
d4b74cfc198b6adbd3037271e258036f
type=friend ; This device takes and makes calls
host=dynamic ; This host is not on the same IP addr every time
username=d4b74cfc198b6adbd3037271e258036f ; Username programmed into Cisco phone
secret=mypassword ; Password for device
context=from-sip ; Inbound calls from this phone go to this context
nat=yes ; nat=yes if this phone is behind a NAT box or firewall
callgroup=2 ; the group to which this phone belongs for *8 phone ringing pickup
pickupgroup=2 ; the pickup group allowed from this phone when *8 is dialed
mailbox=d4b74cfc198b6adbd3037271e258036f ; Activate the message waiting light if this voicemailbox has messages in it
extensions.conf (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
exten => d4b74cfc198b6adbd3037271e258036f,1,Dial(SIP/d4b74cfc198b6adbd3037271e258036f,15,t) ; see "show application dial" for options and formats
exten => d4b74cfc198b6adbd3037271e258036f,2,Voicemail2(ud4b74cfc198b6adbd3037271e258036f) ; go to Voicemail2 if phone is "U"nanswered
exten => d4b74cfc198b6adbd3037271e258036f,102,Voicemail2(bd4b74cfc198b6adbd3037271e258036f) ; go to Voicemail2 if phone is "B"usy
exten => d4b74cfc198b6adbd3037271e258036f,103,Hangup ; and then hangup.
voicemail.conf (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
format=gsm
servermail=mail.myserver.com
attach=no
maxmessage=120
maxsilence=10
pbxskip=yes
fromstring=NPI VM
emailbody=\nVM for x ${VM_MAILBOX} from ${VM_CALLERID} dur: ${VM_DUR} \n
default
; Note: following sends a text message to a cell phone telling me someone left a voicemail
d4b74cfc198b6adbd3037271e258036f => d4b74cfc198b6adbd3037271e258036f,FirstName LastName,4015719329@vtext.com
*CLI> sip show peers
Name/username Host Mask Port Status
d4b74cfc198b6adbd3037271e258036f/d4b74cfc198b6adbd3037271e258036f 67.11.89.61 (D) 255.255.255.255 5060 Unmonitored
*CLI> sip show users
Username Secret Authen Def.Context A/C
d4b74cfc198b6adbd3037271e258036f mypassword md5,plaintext from-sip No
Troubleshooting Cisco Phone
The Cisco 79XX phones support telnet. To diagnose problems with the Company Directory function noted above (as an example), telnet to the phone's IP address using the login password provided in the SIP00036BAAD139.cnf file noted above. For example, to diagnose a possible http problem, do the following:
SIP Phone> debug http
Enabling bug logging on this terminal - use 'tty mon 0' to disable
debugs: http timestamp
SIP Phone> 11:39:39 Connect2WWWIPPort called IpAddr0, port80, hostNamewww.mydomain.com
11:39:39 Connect2WWWIPPort Sending Request to IpAddr207.212.93.75, port80
11:39:39 HTTP RECV (ACK CMD)
11:39:39 HTTP RECV (OPEN CMD)
11:39:39
HTTP Send 178 Bytes of Data
Data Packet is:
===============
GET /asterisk/directory.html?name=SIP00036BC38B88 HTTP/1.1
User-Agent: Allegro-Software-WebClient/3.10b1
Host: www.mydomain.com
Connection: Close
(Note: You can also reset the 7970 by pressing the # after cycling the power. After the 10 line buttons have completed flashing enter 1-2-3-4-5-6-7-8-9-*-0-#.)
<device xsi:type="axl:XIPPhone" ctiid="203849429" uuid="{96f8508b-10ef-f98c-d20d-0471777ec725}">
<fullConfig>true</fullConfig>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>user</sshUserId>
<sshPassword>pass</sshPassword>
<devicePool uuid="{a755aa55-089c-2b47-9603-c7d51b9ca4b5}">
<name>Dallas 5.0 Beta</name>
<dateTimeSetting uuid="{9ec4850a-7748-11d3-bdf0-00108302ead1}">
<name>CMLocal</name>
<dateTemplate>D/M/Y</dateTemplate>
<timeZone>GMT Standard/Daylight Time</timeZone>
</dateTimeSetting>
<callManagerGroup>
<name>5.0 Beta</name>
<tftpDefault>true</tftpDefault>
<members>
<member priority="0">
<callManager>
<name>ccm-beta-5-1</name>
<description>CallManager 5.0 Beta Pub - 5.0.1.032</description>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName>ccm-beta-5-1</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<srstInfo uuid="{cd241e11-4a58-4d3d-9661-f06c912a18a3}">
<name>Disable</name>
<srstOption>Disable</srstOption>
<userModifiable>false</userModifiable>
<ipAddr1>10.0.0.26</ipAddr1>
<port1>2000</port1>
<ipAddr2></ipAddr2>
<port2>2000</port2>
<ipAddr3></ipAddr3>
<port3>2000</port3>
<sipIpAddr1>10.0.0.26</sipIpAddr1>
<sipPort1>5060</sipPort1>
<sipIpAddr2></sipIpAddr2>
<sipPort2>5060</sipPort2>
<sipIpAddr3></sipIpAddr3>
<sipPort3>5060</sipPort3>
<isSecure>false</isSecure>
</srstInfo>
<mlppDomainId>-1</mlppDomainId>
<mlppIndicationStatus>Default</mlppIndicationStatus>
Default
<connectionMonitorDuration>120</connectionMonitorDuration>
</devicePool>
<sipProfile>
<sipProxies>
<backupProxy>10.0.0.26</backupProxy>
<backupProxyPort>5060</backupProxyPort>
<emergencyProxy>10.0.0.26</emergencyProxy>
<emergencyProxyPort>5060</emergencyProxyPort>
<outboundProxy>10.0.0.26</outboundProxy>
<outboundProxyPort>5060</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>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>
<timerRegisterExpires>3600</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>
none
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<phoneLabel>Lama d.o.o.</phoneLabel>
<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>495-131</featureLabel>
<proxy>10.0.0.26</proxy>
<port>5060</port>
<name>Name</name>
<displayName>My Name</displayName>
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
<callWaiting>3</callWaiting>
<authName>user</authName>
<authPassword>pass</authPassword>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>3</messageWaitingLampPolicy>
<messagesNumber></messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<contact>7b452e87-4496-4762-e11f-b26751a1884b</contact>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>false</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
</line>
<line button="2">
<featureID>2</featureID>
<featureLabel>My friend</featureLabel>
<speedDialNumber>123456</speedDialNumber>
</line>
</sipLines>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate>dialplan.xml</dialTemplate>
<softKeyFile>SK50719900-3bee-4594-bc3f-6400e1a33bf0.xml</softKeyFile>
</sipProfile>
<commonProfile>
<phonePassword></phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<loadInformation>SIP70.8-0-2SR1S</loadInformation>
<vendorConfig>
<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>http://ccm-beta-5-1:8080/ccmcip/authenticate.jsp</authenticationURL>
<directoryURL>http://10.0.0.20/cisco_voip/PhoneDirectory.xml</directoryURL>
<idleURL></idleURL>
<informationURL>http://ccm-beta-5-1:8080/ccmcip/GetTelecasterHelpText.jsp</informationURL>
<messagesURL></messagesURL>
<proxyServerURL>10.0.0.26</proxyServerURL>
<servicesURL>http://10.0.0.20/cisco_voip/services.xml</servicesURL>
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
<capf>
<phonePort>3804</phonePort>
<processNodeName>ccm-beta-5-1</processNodeName>
</capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
</device>
<DIALTEMPLATE>
<!-- Lokalni pozivi -->
<TEMPLATE MATCH="1.." Timeout="0"/>
<!-- Zupanijski pozivi -->
<TEMPLATE MATCH="01....." Timeout="0"/>
<TEMPLATE MATCH="02....." Timeout="0"/>
<TEMPLATE MATCH="03....." Timeout="0"/>
<TEMPLATE MATCH="04....." Timeout="0"/>
<TEMPLATE MATCH="05....." Timeout="0"/>
<TEMPLATE MATCH="06....." Timeout="0"/>
<TEMPLATE MATCH="07....." Timeout="0"/>
<TEMPLATE MATCH="08....." Timeout="0"/>
<TEMPLATE MATCH="09....." Timeout="0"/>
<!-- Meduzupanijski pozivi -->
<TEMPLATE MATCH="001......." Timeout="0"/> <!-- Zagrebacka i grad Zagreb -->
<TEMPLATE MATCH="0049......" Timeout="0"/> <!-- Krapinsko - zagorska -->
<TEMPLATE MATCH="0044......" Timeout="0"/> <!-- Sisacko - moslavacka -->
<TEMPLATE MATCH="0047......" Timeout="0"/> <!-- Karlovacka -->
<TEMPLATE MATCH="0042......" Timeout="0"/> <!-- Varazdinska -->
<TEMPLATE MATCH="0048......" Timeout="0"/> <!-- Koprivnicko - krizevacka -->
<TEMPLATE MATCH="0043......" Timeout="0"/> <!-- Bjelovarsko - gilogorska -->
<TEMPLATE MATCH="0051......" Timeout="0"/> <!-- Primorsko - goranska -->
<TEMPLATE MATCH="0053......" Timeout="0"/> <!-- Licko - senjska -->
<TEMPLATE MATCH="0033......" Timeout="0"/> <!-- VIroviticko - podravska -->
<TEMPLATE MATCH="0034......" Timeout="0"/> <!-- Pozesko - slavonska -->
<TEMPLATE MATCH="0035......" Timeout="0"/> <!-- Brodsko - posavska-->
<TEMPLATE MATCH="0023......" Timeout="0"/> <!-- Zadarska -->
<TEMPLATE MATCH="0031......" Timeout="0"/> <!-- Osjecko - baranjska -->
<TEMPLATE MATCH="0022......" Timeout="0"/> <!-- Sibensko - kninska -->
<TEMPLATE MATCH="0032......" Timeout="0"/> <!-- Vukovarsko - srijemska -->
<TEMPLATE MATCH="0021......" Timeout="0"/> <!-- Splitsko - dalmatinska -->
<TEMPLATE MATCH="0052......" Timeout="0"/> <!-- Istarska -->
<TEMPLATE MATCH="0020......" Timeout="0"/> <!-- Dubrovacko - neretvanska -->
<TEMPLATE MATCH="0040......" Timeout="0"/> <!-- Medimurska-->
<!-- Mobiteli -->
<TEMPLATE MATCH="0099......." Timeout="0"/>
<TEMPLATE MATCH="0098......." Timeout="0"/>
<TEMPLATE MATCH="0095......." Timeout="0"/>
<TEMPLATE MATCH="0091......." Timeout="0"/>
<!-- Cisco - default -->
<TEMPLATE MATCH="9,59....." Timeout="0"/>
<TEMPLATE MATCH="9,29....." Timeout="0"/>
<TEMPLATE MATCH="9,832......." Timeout="0"/>
<TEMPLATE MATCH="9,713......." Timeout="0"/>
<TEMPLATE MATCH="9,281......." Timeout="0"/>
<TEMPLATE MATCH="9,903......." Timeout="0"/>
<TEMPLATE MATCH="\*500" Timeout="0"/>
<TEMPLATE MATCH="\*54" Timeout="0"/>
<TEMPLATE MATCH="\*55" Timeout="0"/>
<TEMPLATE MATCH="\*69" Timeout="0"/>
<TEMPLATE MATCH="*" Timeout="5"/> <!-- Anything else -->
</DIALTEMPLATE>
- Use some ssh client to login on your IP address and port 22
- for loging in use user/pass that you have defined in SEP<mac>.xml.cnf file (sshUserId/sshPassword)
- when prompted again log in as user debug and password debug
- How to setup hinting (Multiple Call Appearance) - does it work with SIP firmware?
- How to make Java application for this phone?
- How to remouve gray lines from display (when line is defined)?
Thank you for your help!
By default most Cisco VoIP phones come configured for Call Manager, which uses the 'Skinny' protocol - SCCP.
This wiki will focus on changing from the default SCCP to the newly support SIP v8.0.2 for the 7970 ONLY
With the right Cable, 7970G series phones can use standard POE injectors, they also work out of the box with Aironet power injectors.
(N.B., the wrong cable may damage your phone!)
Cisco 7970 SIP Phone Software Image
Cisco's SIP phone software images currently include versions v8.0.2 and 8.0.3, both work with Asterisk. While most users had to implement SCCP (http://www.voip-info.org/wiki/view/chan_sccp2) to use this phone, Cisco has finally created SIP for non-call manager implementations. I think they finally wised up to the proliferation of things like Asterisk.
Latest release dates:
v8.0.4SR2 released 2007-01-17
v8.0.4 released 2006-08-29
V8.2.1 released 2006-12-08
For a list of Resolved Problems and Known Problems with this firmware version, you can obtain the Firmware Release Notes in English by clicking the following URL:
http://www.cisco.com/univercd/cc/td/doc/product/voice/c_ipphon/english/ipp7970/relnote/index.htm
For a list of Release Notes for other Firmware versions, click the following URL:
http://www.cisco.com/univercd/cc/td/doc/product/voice/c_ipphon/english/ipp7970/relnote/index.htm
8.0.4 software has implemented:
-
8.0.4 software has this problems:
- unable to register with Asterisk 1.2.5
-
The v8.0.2 software has implemented: EDIT
Alert-Info (play internal ring tones based on Alert-Info within the SIP header)
Auto Answer (2-way paging conversation without picking up handset)
DHCP Option 66
Directory Enhancements (user can add/change/delete entries in Personal Directory)
DSP (new digital signal processor)
DSP Alarms, Debugging Aids, and Logging (help diagnose problems)
Enhanced Tone and Ring Support (support for more complex tones and ringing patterns)
Hot Line / Speeddials (each line button can be programmed to act as a speeddial button)
Local Call Forwarding (redirects incoming calls to another extension/URL)
Message Waiting Stutter Tone
Multiple Call Appearance (receptionist style, all lines have the same extension)
Outbound Proxy Redesign (improves use of outbound proxy based on multiple DNS records)
SIP Call Statistics (call statistics sent in BYE / 200 OK messages)
Resolved Caveats (several previously documented problems have been resolved)
This will evolve into a step by step guide to upgrading Cisco 7970G to sip version 8.x from the default SCCP load.
v8.0 and up:
First time that SIP is implemented for the 7970G
Cisco SIP IP Phone Administrator Guide, Versions 8.x
http://cisco.com/en/US/products/sw/voicesw/add link
http://www.cisco.com/en/US/products/hw/phones/ps379/products_user_guide_list.html
Cisco SIP IP Telephone 7970G Software (NOTE: This page is only available to registered Cisco.com users with a Cisco Service Agreement)
http://www.cisco.com/cgi-bin/tablebuild.pl/ip-7900ser
Latest Version: v8.0.3 is now released. The file from cisco is designed for the cisco call manager software and is a ".cop" file. This file is just a GZIP compressed TAR file. Just ungzip and untar the file to extract the the new files for the phone. It installs just like the version 7 software with a loader and an application file.
The following is Cisco's pdf on the 7970.
http://www.cisco.com/application/pdf/en/us/guest/products/ps5946/c1629/ccmigration_09186a0080644003.pdf
Unfortunately Cisco have NOT released a detailed breakdown of the workings of the 7970 configuration (SEP<mac>.cnf.xml) file. This is because Cisco now generates the SEP files from within Call Manager (CCM). As a rule Cisco now tell configurators how to make configuration changes from with the CCM application (which then generates the SEP<mac>.cnf.xml). Because of this it's more difficult to 'hand craft' the config files - If anyone has an annotated SEP<mac>.cnf.xml file they could post it would be very useful.
For upgrading to SIP version 8.0.3 the following files come in the .cop file.
For both 7970/7971:
apps70.1-1-2-26.sbn
cnu70.3-1-2-26.sbn
cvm70sip.8-0-2-25.sbn
dsp70.1-1-2-26.sbn
jar70sip.8-0-2-25.sbn
SIP70.sbn
For 7970:
load300006.txt
term70.default.loads
For 7971:
load119.txt
term71.defaults.loads
There are also two files included in the .cop file that should be copied to the TFTBOOT directory:-
SIP70.8-0-3S.loads
copstart.sh
Please note the above file names are SPECIFIC to Cisco SIP 8.0.3 for the 7970/7971, naming conventions for different versions may be slightly different (I don't have 8.0.2, perhaps if someone does and they could post the filenames here that would be useful).
XMLDefault.cnf.xml (NOTE - CASE SENSITIVE - check TFTP or Status logs on phone to confirm case required )
This file contains the default settings that are common to all phones. It is similar to the SIPDefault.cnf file used by the 7940/7960 phones. The 7940/7960 also use this file to determine which version of the firmware to load.
<Default>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName></processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation8 model="IP Phone 7940">P003-07-4-00</loadInformation8>
<loadInformation7 model="IP Phone 7960">P003-07-4-00</loadInformation7>
<loadInformation6 model="IP Phone 7970">SIP70.8-0-3S</loadInformation6> *** identifies the filename to LOAD (SIP70.8-0-3S.loads)
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<servicesURL></servicesURL>
</Default>
SEP<mac>.cnf.xml example SEP123456789ABC.cnf.xml the <mac> refers to the MAC address of the phone.
Now for individual phone settings, you need this file.
One thing to note: Anyone know how to set individual password for each sip line so it can be authenticated?
There may also be a few tags that aren't recognized/required by the phone - this will need to be updated!
<device xsi:type="axl:XIPPhone" ctiid="203849429" uuid="{96f8508b-10ef-f98c-d20d-0471777ec725}">
<fullConfig>true</fullConfig>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId></sshUserId>
<sshPassword></sshPassword>
<devicePool uuid="{a755aa55-089c-2b47-9603-c7d51b9ca4b5}">
<dateTimeSetting uuid="{9ec4850a-7748-11d3-bdf0-00108302ead1}">
<dateTemplate>M/D/Y</dateTemplate> ; by adding a after the Y shows time in 12 hour mode i.e. D/M/Ya
<timeZone>Greenwich Standard Time</timeZone>
</dateTimeSetting>
<callManagerGroup>
<tftpDefault>true</tftpDefault>
<members>
<member priority="0">
<callManager>
<name>ccm-beta-5-1</name>
<description>CallManager 5.0 Beta Pub - 5.0.1.032</description>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName>ccm-beta-5-1</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<srstInfo uuid="{cd241e11-4a58-4d3d-9661-f06c912a18a3}">
<name>Disable</name>
<srstOption>Disable</srstOption>
<userModifiable>false</userModifiable>
<ipAddr1></ipAddr1>
<port1>2000</port1>
<ipAddr2></ipAddr2>
<port2>2000</port2>
<ipAddr3></ipAddr3>
<port3>2000</port3>
<sipIpAddr1></sipIpAddr1>
<sipPort1>5060</sipPort1>
<sipIpAddr2></sipIpAddr2>
<sipPort2>5060</sipPort2>
<sipIpAddr3></sipIpAddr3>
<sipPort3>5060</sipPort3>
<isSecure>false</isSecure>
</srstInfo>
<mlppDomainId>-1</mlppDomainId>
<mlppIndicationStatus>Default</mlppIndicationStatus>
<connectionMonitorDuration>120</connectionMonitorDuration>
</devicePool>
<sipProfile>
<sipProxies>
<backupProxy>USECALLMANAGER</backupProxy>
<backupProxyPort>5060</backupProxyPort>
<emergencyProxy>USECALLMANAGER</emergencyProxy>
<emergencyProxyPort>5060</emergencyProxyPort>
<outboundProxy>USECALLMANAGER</outboundProxy>
<outboundProxyPort>5060</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>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>
<timerRegisterExpires>3600</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>
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<phoneLabel></phoneLabel>
<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></featureLabel>
<proxy>USECALLMANAGER</proxy>
<port>5060</port>
<name>3302</name>
<displayName>3302</displayName>
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
<callWaiting>3</callWaiting>
<authName></authName>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>3</messageWaitingLampPolicy>
<messagesNumber></messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<contact>7b452e87-4496-4762-e11f-b26751a1884b</contact>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>false</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
</line>
</sipLines>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate></dialTemplate>
<softKeyFile>SK50719900-3bee-4594-bc3f-6400e1a33bf0.xml</softKeyFile>
</sipProfile>
<commonProfile>
<phonePassword></phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<loadInformation>SIP70.8-0-0-38S</loadInformation>
<vendorConfig>
<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>0</webAccess><daysDisplayNotActive>1,7</daysDisplayNotActive><displayOnTime>07:30</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>http://ccm-beta-5-1:8080/ccmcip/authenticate.jsp</authenticationURL>
<directoryURL>http://ccm-beta-5-1:8080/ccmcip/xmldirectory.jsp</directoryURL>
<idleURL></idleURL>
<informationURL>http://ccm-beta-5-1:8080/ccmcip/GetTelecasterHelpText.jsp</informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<servicesURL>http://10.86.5.102/CiscoServices/index.xml</servicesURL>
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
<capf>
<phonePort>3804</phonePort>
<processNodeName>ccm-beta-5-1</processNodeName>
</capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
<line button="3">
<featureID>2</featureID>
<featureLabel>2000</featureLabel>
<speedDialNumber>2000</speedDialNumber>
</line>
<natReceivedProcessing>true</natReceivedProcessing>
<natEnabled>true</natEnabled>
<natAddress></natAddress>
<dialTemplate>dialplan.xml</dialTemplate>
</device>
I now have a fully working system and will post annotated versions of these files later tonight
NOTE from twisted: To enable auto-answering for use with paging/intercom on a line, do the following:
In the line config for the line button you want to be an intercom, change this:
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
to this:
<autoAnswer>
<autoAnswerEnabled>3</autoAnswerEnabled>
<autoAnswerMode>Auto Answer with Speakerphone</autoAnswerMode>
<autoAnswer>
The previous information is below so that it may be merged/delated when someone has time.
load30006.txt (7970) (The content of this file is solely the software image filename stripped of the .cop, i.e. SIP70.8-0-2-0S)(Contains the universal application loader image in 8.x)
cvm70sip.8-0-1-16.sbn (Secure universal application loader for upgrades from images 5.x or later.)
?????????.loads (File that contains the universal application loader and application image, where "a" represents the protocol of the application image loads file 0-SCCP, S-SIP, M-MGCP.)
?????????.sb2 (Application firmware image, where "a" represents the application firmware image.)
SIPDefault.cnf (Contains generic parameters for all Cisco phones at your location)
SEP00036BAAD139.cnf.xml (Where the last 12 hex digits is the MAC address of your Cisco phone) Sample php script to create the cnf file.
In addition, the following optional files may also be present in the TFTP directory: (this was for the 7960 - not sure on impact)
dialplan.xml (contains entries like "9,1...." that cause the phone to automatically dial after a match)
ringlist.xml (a list of ringing tones to be downloaded, like ringer1.pcm)
distinctiveringlist.xml
ringer1.pcm (a ringing tone to be downloaded to the phone)
See also: John Todd's examples (not sure if this applies to the 7970G - Please update if you knwo the answer)
Edit*** Simplify Updates (Auto-Loader Support) ***
This will save you alot of wasted time trying to update newer firmware! For easiest, direct firmware updates from say factory installed SCCP images direct to latest SIP firmware (e.g. SCCP v3.1 to SIP v7.4) — add the following files to your TFTP directory to assist the SCCP based generic Auto-Loader added as of v5.x to Cisco's SIP/SCCP images:
XMLDefault.cnf.xml
xmlDefault.CNF.XML
Due to inconsistent coding by Cisco, different firmware may look for different case-sensitive versions of the same file, thus the need for at least the two variations above to cover new phones and a good portion of older one's. Additionally, here is a usable example of the XML content that should be inserted into the files (be sure and update with the firmware version you wish to load, and match the SIPDefault.cnf and SEPxxxxxxx.cnf.xml file's "image_version=" entries to match!):
<Default>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName></processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation8 model="IP Phone 7940">P003-07-4-00</loadInformation8>
<loadInformation7 model="IP Phone 7960">P003-07-4-00</loadInformation7>
<loadInformation6 model="IP Phone 7970">SIP70.8-0-2-0S</loadInformation6>
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<servicesURL></servicesURL>
</Default>
Misc
See reboot.pl. A perl script to handle remote rebooting of the 79xx class phones (useful for multiple-phone upgrades). Requires Net::Telnet.
NOTE: For Reference, reboot.pl has been moved to http://www.nmedia.net/~mklein/reboot.pl . Still Requires Net::Telnet.
Time Zone Codes
The time zone codes must be input EXACTLY as written below including caps, spaces (do not use the_underscore_for spaces) & punctuation. If not, the time zone displayed on the screen will revert to UTC.Dateline Standard Time
Samoa Standard Time
Hawaiian Standard Time
Alaskan Standard/Daylight Time
Pacific Standard/Daylight Time
Mountain Standard/Daylight Time
US Mountain Standard Time
Central Standard/Daylight Time
Mexico Standard/Daylight Time
Canada Central Standard Time
SA Pacific Standard Time
Eastern Standard/Daylight Time
US Eastern Standard Time
Atlantic Standard/Daylight Time
SA Western Standard Time
Newfoundland Standard/Daylight Time
South America Standard/Daylight Time
SA Eastern Standard Time
Mid-Atlantic Standard/Daylight Time
Azores Standard/Daylight Time
GMT Standard/Daylight Time
Greenwich Standard Time
W. Europe Standard/Daylight Time
GTB Standard/Daylight Time
Egypt Standard/Daylight Time
E. Europe Standard/Daylight Time
Romance Standard/Daylight Time
Central Europe Standard/Daylight Time
South Africa Standard Time
Jerusalem Standard/Daylight Time
Saudi Arabia Standard Time
Russian Standard/Daylight Time
Iran Standard/Daylight Time
Caucasus Standard/Daylight Time
Arabian Standard Time
Afghanistan Standard Time
West Asia Standard Time
Ekaterinburg Standard Time
India Standard Time
Central Asia Standard Time
SE Asia Standard Time
China Standard/Daylight Time
Taipei Standard Time
Tokyo Standard Time
Cen. Australia Standard/Daylight Time
AUS Central Standard Time
E. Australia Standard Time
AUS Eastern Standard/Daylight Time
West Pacific Standard Time
Tasmania Standard/Daylight Time
Central Pacific Standard Time
Fiji Standard Time
New Zealand Standard/Daylight Time
Logo Displayed on 7970 Screen
A non-Cisco logo can be displayed on the 7970 screen.Cisco's documentation states the logo be a .PNG bitmap format.
Please create the following directory in your TFTPBOOT directory (case sensitive)
/Desktops/320x212x12
In this directory store your PNG files, each file can be up to 4096 colours and 320x212 pixels.
For each file you need a Fullsize PNG file (320x212x12) and a Thumbnail PNG (80x53x12)
Also generate a List.xml file in this directory
The format of this file is:-
<CiscoIPPhoneImageList>
<ImageItem Image="TFTP:Desktops/320x212x12/thumbnail.png" URL="TFTP:Desktops/320x212x12/Fullsize.png"/>
</CiscoIPPhoneImageList>
Where thumbnail.png is the name of the thumbnail file and fullsize.png is the name of the corresponding fullsize file.
You can have multiple listings in this directory and they are then accessed via the phone from Menu-->User Preferences-->Background Images
Company Telephone Directory
The 7970G phone has four panel keys labeled as Messages, Services, Directories, and Settings. The Directory key can be programmed to view your company's telephone directory by displaying Names and Telephone Numbers that are stored on any web site available to you.Modify the SIPDefault.cnf file entry to point to the web site:
directory_url: "http://www.mywebserver.com/asterisk/directory.xml"
The phone must be rebooted in order to read the above file.
The web site file /asterisk/directory.xml should include xml entries like:
<CiscoIPPhoneDirectory>
<Title>IP Telephony Directory</Title>
<Prompt>People reachable via VoIP</Prompt>
<DirectoryEntry>
<Name>Rich</Name>
<Telephone>3000</Telephone>
</DirectoryEntry>
<DirectoryEntry>
<Name>Todd</Name>
<Telephone>3001</Telephone>
</DirectoryEntry>
</CiscoIPPhoneDirectory>
Note: Each time a user presses the Directory key and accesses the External Directory option from the menu, the phone will access the contents of this html file and display whatever text entries included in it. Therefore, changes to the html file do not require any futher rebooting of the Cisco phone. Cisco has published Cisco IP Phone Services Application Development Notes (CMXML_App_Guide.pdf ) that further explains options and file contents.
QUESTION:
- Phone directory can display 32 entrys per page. How to display second, third... page?
Asterisk Cisco 7970 XML Services
Services Button
The 7970 phones have four panel keys labeled as Messages, Services, Directories, and Settings. The Services key can be programmed to execute CGI scripts that are stored on any web site available to you. The CGI scripts can perform any action that you are capable of programming. None are provided by Cisco.Modify the SIPDefault.cnf file entry to point to the web site:
services_url: "http://www.mywebserver.com/asterisk/myscriptpage.html"
The phone must be rebooted in order to read the above file.
The web site file /asterisk/myscriptpage.html should include entries for each service that you plan to make available to your phone users. The exact content and syntax is also documented in the Cisco IP Phone Services Application Development Notes (CMXML_App_Guide.pdf ) noted above.
Messages Button
When the Messages button is pressed, you can cause the phone to directly dial an extension in your asterisk dialplan. Just configure the phone as:<messagesNumber>extension</messagesNumber>
where "extension" is what you wish the phone to dial when the Messages button is pressed. You can then catch the call in either a standard VoiceMailMain() invocation a la
exten => _42,1,VoiceMailMain()
or, be cute and bypass entry of mailbox number and password a la
exten => _42,1,VoiceMailMain(s<mbox num>)
To make the Messages button work for any extension (assuming your extensions are numbered appropriately), use:
exten => _42,1,VoiceMailMain(s${CALLERIDNUM})
Asterisk Cisco 79XX XML Services
Ringtones
http://www.cisco.com/en/US/products/sw/voicesw/ps2156/products_administration_guide_chapter09186a0080087511.html#1042487The Cisco SIP IP phone ships with two ring types: Chirp1 and Chirp2. By
default, your ring type options will be those two choices. However,
using the RINGLIST.DAT file, you can customize the ring types that are
available to the Cisco SIP IP phone users.
Step 1
Create a pulse code modulation (PCM) file of the desired ring
types and store the PCM files in the root directory of your TFTP server.
PCM files must contain no header information and comply with the
following format guidelines:
8000 Hz sampling rate
8 bits per sample
ulaw compression
240 - 16080 samples long ( 0.03 sec - 2.01 sec )
For example, to use sox to generate the tones, use
sox -t wav in.wav -t raw -r 8000 -U -b -c 1 out.raw resample -ql
Step 2
Using a ASCII editor, open the RINGLIST.DAT file and for each
of the ring types you are adding, specify the name as you want it to
display on the Ring Type menu, press Tab, and then specify the filename
of the ring type. For example, the format of a pointer in your
RINGLIST.DAT file should appear similar to the following:
Ring Type 1 ringer1.pcm
Step 3
After defining pointers for each of the ring types you are
adding, save your modifications and close the RINGLIST.DAT file.
Caveat:
If you have configured a secondary tftp-server(ie. dyn_tftp_addr : 192.168.1.10) in SIPDefault.cnf, or SEP<MACADDR>.cnf.xml which cannot be reached then the phone will not attempt to download the RINGLIST.DAT file.
EditControlling ring tones from Asterisk
By setting the Asterisk variable ALERT_INFO before you call Dial, Asterisk will add ringer tone info to the SIP invite that is sent to the phone.
exten => 3010,1,SetVar(ALERT_INFO=<Bellcore-dr1>) ; selects Ringer
exten => 3010,2,Dial(SIP/3010,15)
Note: In SIP_HEAD or v1+ you wil need to do the following:
exten => 3010,1,SetVar(_ALERT_INFO=something)
Available ring tones by default
Bellcore-BusyVerify
Bellcore-Stutter
Bellcore-MsgWaiting
Bellcore-dr1
Bellcore-dr2
Bellcore-dr3
Bellcore-dr4
Bellcore-dr5
Ringtones for Cisco 7970
Setting up your ringlist on a 7970 is very easy but aside from Cisco's documentation it was difficult to find a good example.
For you beginners out there you should note that *everything* is case-sensitive.
ringlist.xml is required in /tftpboot.
File format is as follows:
<CiscoIPPhoneRingList>
<Ring>
<DisplayName/>
<FileName/>
</Ring>
</CiscoIPphoneRingList>
Sample ringlist.xml:
<CiscoIPPhoneRingList>
<Ring>
<DisplayName>Merlin 2</DisplayName>
<FileName>merlin2.pcm</FileName>
</Ring>
<Ring>
<DisplayName>Merlin 3</DisplayName>
<FileName>merlin3.pcm</FileName>
</Ring>
</CiscoIPPhoneRingList>
DialPlan Notes (DIALPLAN.XML)
The DIALPLAN.XML file controls the phone's matching of digits. By default "*" matches anything and times out after 5 seconds. Users must push 'Dial' or '#' to connect if they don't want to wait 5 seconds. For a variety of reasons, not least of which being that most phone users are not accustomed to pressing 'Dial' on their offices, it may be desirable to configure a dial plan for your organization.If you wish to use the hash (by default it will immediately dial the number entered) include it explicitly as part of a pattern in DIALPLAN.XML
<DIALTEMPLATE>
<TEMPLATE MATCH="#..." Timeout="5" User="Phone" />
<TEMPLATE MATCH="*" Timeout="5" User="Phone" />
</DIALTEMPLATE>
In another example, we immediately match 9+10digits or 9+1+10digits, and match 5+2digits as internal extensions
<DIALTEMPLATE>
<TEMPLATE MATCH="5.." TIMEOUT="0"/>
<TEMPLATE MATCH="9,1.........." TIMEOUT="0" Tone="Bellcore-Alerting"/>
<TEMPLATE MATCH="9,.........." TIMEOUT="0"/>
</DIALTEMPLATE>
In the above example, a secondary dial tone is invoked by the comma character. If the Tone attribute is left blank, the default will be used. Or you can specify one of the following:
Bellcore-Alerting
Bellcore-Busy
Bellcore-BusyVerify
Bellcore-CallWaiting
Bellcore-Confirmation
Bellcore-dr1
Bellcore-dr2
Bellcore-dr3
Bellcore-dr4
Bellcore-dr5
Bellcore-dr6
Bellcore-Hold
Bellcore-Inside
Bellcore-None
Bellcore-Outside (default)
Bellcore-Permanent
Bellcore-Reminder
Bellcore-Reorder
Bellcore-Stutter
CallWaiting-2
CallWaiting-3
CallWaiting-4
Cisco-BeepBonk
Cisco-Zip
Cisco-ZipZip
Notes: This file is case sensitive in some firmware versions; all elements and attributes should be uppercase (except Tone) or the entries may be ignored. According to Cisco, the phone will always match the LONGEST expression.
Call Waiting Feature
The 79XX series phones have a good way of handling SIP registrations provided the Call Waiting feature isn't turned off. Most other SIP phones require an individual SIP username and password for each line appearance. Instead, the 79XX will automatically roll-over to the next available line. So, for example, on a 7960 you can have all six lines programmed to the same SIP username/password and the phone will automatically handle the call waiting function. Note: If you use any other method of ringing multiple lines on the phone (i.e. dialing SIP/123&SIP/456) your phone will show a confusingly high number of missed calls.For example:
SEPXXXXX.cnf.xml: (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
??????
In your sip.conf: (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
510
type=friend
username=510
secret=test
host=dynamic
dtmfmode=rfc2833
context=whatever
canreinvite=no
nat=no
mailbox=510@default
callerid=<510>
In your extensions.conf: (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
exten => 510,1,Dial(SIP/510,20,mTt)
exten => 510,2,Voicemail(u510@default)
exten => 510,3,Hangup
exten => 510,102,Voicemail(b510@default)
exten => 510,103,Hangup
Asterisk Configuration File Examples
sip.conf (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
d4b74cfc198b6adbd3037271e258036f
type=friend ; This device takes and makes calls
host=dynamic ; This host is not on the same IP addr every time
username=d4b74cfc198b6adbd3037271e258036f ; Username programmed into Cisco phone
secret=mypassword ; Password for device
context=from-sip ; Inbound calls from this phone go to this context
nat=yes ; nat=yes if this phone is behind a NAT box or firewall
callgroup=2 ; the group to which this phone belongs for *8 phone ringing pickup
pickupgroup=2 ; the pickup group allowed from this phone when *8 is dialed
mailbox=d4b74cfc198b6adbd3037271e258036f ; Activate the message waiting light if this voicemailbox has messages in it
extensions.conf (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
exten => d4b74cfc198b6adbd3037271e258036f,1,Dial(SIP/d4b74cfc198b6adbd3037271e258036f,15,t) ; see "show application dial" for options and formats
exten => d4b74cfc198b6adbd3037271e258036f,2,Voicemail2(ud4b74cfc198b6adbd3037271e258036f) ; go to Voicemail2 if phone is "U"nanswered
exten => d4b74cfc198b6adbd3037271e258036f,102,Voicemail2(bd4b74cfc198b6adbd3037271e258036f) ; go to Voicemail2 if phone is "B"usy
exten => d4b74cfc198b6adbd3037271e258036f,103,Hangup ; and then hangup.
voicemail.conf (THIS NEEDS TO BE UPDATED FOR THE 7970 AS THE CONFIG IS DIFFERENT)
format=gsm
servermail=mail.myserver.com
attach=no
maxmessage=120
maxsilence=10
pbxskip=yes
fromstring=NPI VM
emailbody=\nVM for x ${VM_MAILBOX} from ${VM_CALLERID} dur: ${VM_DUR} \n
default
; Note: following sends a text message to a cell phone telling me someone left a voicemail
d4b74cfc198b6adbd3037271e258036f => d4b74cfc198b6adbd3037271e258036f,FirstName LastName,4015719329@vtext.com
Troubleshooting Phone Registration
From the asterisk command line, execute "sip show peers" and "sip show users" to display the current status of the Cisco phone. If no entries appear in the list for this phone, then review the "username=d4b74cfc198b6adbd3037271e258036f" and "secret=mypassword" in sip.conf to ensure they match the entries programmed into the Cisco phone.*CLI> sip show peers
Name/username Host Mask Port Status
d4b74cfc198b6adbd3037271e258036f/d4b74cfc198b6adbd3037271e258036f 67.11.89.61 (D) 255.255.255.255 5060 Unmonitored
*CLI> sip show users
Username Secret Authen Def.Context A/C
d4b74cfc198b6adbd3037271e258036f mypassword md5,plaintext from-sip No
Troubleshooting Cisco Phone
The Cisco 79XX phones support telnet. To diagnose problems with the Company Directory function noted above (as an example), telnet to the phone's IP address using the login password provided in the SIP00036BAAD139.cnf file noted above. For example, to diagnose a possible http problem, do the following:
SIP Phone> debug http
Enabling bug logging on this terminal - use 'tty mon 0' to disable
debugs: http timestamp
SIP Phone> 11:39:39 Connect2WWWIPPort called IpAddr0, port80, hostNamewww.mydomain.com
11:39:39 Connect2WWWIPPort Sending Request to IpAddr207.212.93.75, port80
11:39:39 HTTP RECV (ACK CMD)
11:39:39 HTTP RECV (OPEN CMD)
11:39:39
HTTP Send 178 Bytes of Data
Data Packet is:
===============
GET /asterisk/directory.html?name=SIP00036BC38B88 HTTP/1.1
User-Agent: Allegro-Software-WebClient/3.10b1
Host: www.mydomain.com
Connection: Close
(Note: You can also reset the 7970 by pressing the # after cycling the power. After the 10 line buttons have completed flashing enter 1-2-3-4-5-6-7-8-9-*-0-#.)
Another SEP<mac>.xml.cnf example
<device xsi:type="axl:XIPPhone" ctiid="203849429" uuid="{96f8508b-10ef-f98c-d20d-0471777ec725}">
<fullConfig>true</fullConfig>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>user</sshUserId>
<sshPassword>pass</sshPassword>
<devicePool uuid="{a755aa55-089c-2b47-9603-c7d51b9ca4b5}">
<name>Dallas 5.0 Beta</name>
<dateTimeSetting uuid="{9ec4850a-7748-11d3-bdf0-00108302ead1}">
<name>CMLocal</name>
<dateTemplate>D/M/Y</dateTemplate>
<timeZone>GMT Standard/Daylight Time</timeZone>
</dateTimeSetting>
<callManagerGroup>
<name>5.0 Beta</name>
<tftpDefault>true</tftpDefault>
<members>
<member priority="0">
<callManager>
<name>ccm-beta-5-1</name>
<description>CallManager 5.0 Beta Pub - 5.0.1.032</description>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName>ccm-beta-5-1</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<srstInfo uuid="{cd241e11-4a58-4d3d-9661-f06c912a18a3}">
<name>Disable</name>
<srstOption>Disable</srstOption>
<userModifiable>false</userModifiable>
<ipAddr1>10.0.0.26</ipAddr1>
<port1>2000</port1>
<ipAddr2></ipAddr2>
<port2>2000</port2>
<ipAddr3></ipAddr3>
<port3>2000</port3>
<sipIpAddr1>10.0.0.26</sipIpAddr1>
<sipPort1>5060</sipPort1>
<sipIpAddr2></sipIpAddr2>
<sipPort2>5060</sipPort2>
<sipIpAddr3></sipIpAddr3>
<sipPort3>5060</sipPort3>
<isSecure>false</isSecure>
</srstInfo>
<mlppDomainId>-1</mlppDomainId>
<mlppIndicationStatus>Default</mlppIndicationStatus>
<connectionMonitorDuration>120</connectionMonitorDuration>
</devicePool>
<sipProfile>
<sipProxies>
<backupProxy>10.0.0.26</backupProxy>
<backupProxyPort>5060</backupProxyPort>
<emergencyProxy>10.0.0.26</emergencyProxy>
<emergencyProxyPort>5060</emergencyProxyPort>
<outboundProxy>10.0.0.26</outboundProxy>
<outboundProxyPort>5060</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>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>
<timerRegisterExpires>3600</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>
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<phoneLabel>Lama d.o.o.</phoneLabel>
<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>495-131</featureLabel>
<proxy>10.0.0.26</proxy>
<port>5060</port>
<name>Name</name>
<displayName>My Name</displayName>
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
<callWaiting>3</callWaiting>
<authName>user</authName>
<authPassword>pass</authPassword>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>3</messageWaitingLampPolicy>
<messagesNumber></messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<contact>7b452e87-4496-4762-e11f-b26751a1884b</contact>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>false</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
</line>
<line button="2">
<featureID>2</featureID>
<featureLabel>My friend</featureLabel>
<speedDialNumber>123456</speedDialNumber>
</line>
</sipLines>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate>dialplan.xml</dialTemplate>
<softKeyFile>SK50719900-3bee-4594-bc3f-6400e1a33bf0.xml</softKeyFile>
</sipProfile>
<commonProfile>
<phonePassword></phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<loadInformation>SIP70.8-0-2SR1S</loadInformation>
<vendorConfig>
<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>http://ccm-beta-5-1:8080/ccmcip/authenticate.jsp</authenticationURL>
<directoryURL>http://10.0.0.20/cisco_voip/PhoneDirectory.xml</directoryURL>
<idleURL></idleURL>
<informationURL>http://ccm-beta-5-1:8080/ccmcip/GetTelecasterHelpText.jsp</informationURL>
<messagesURL></messagesURL>
<proxyServerURL>10.0.0.26</proxyServerURL>
<servicesURL>http://10.0.0.20/cisco_voip/services.xml</servicesURL>
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
<capf>
<phonePort>3804</phonePort>
<processNodeName>ccm-beta-5-1</processNodeName>
</capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
</device>
dialplan.xml
To make it work you'll need dialplan as well, here is example that works well in Croatia. dialplan.xml needs to be in root of your tftp directory.<DIALTEMPLATE>
<!-- Lokalni pozivi -->
<TEMPLATE MATCH="1.." Timeout="0"/>
<!-- Zupanijski pozivi -->
<TEMPLATE MATCH="01....." Timeout="0"/>
<TEMPLATE MATCH="02....." Timeout="0"/>
<TEMPLATE MATCH="03....." Timeout="0"/>
<TEMPLATE MATCH="04....." Timeout="0"/>
<TEMPLATE MATCH="05....." Timeout="0"/>
<TEMPLATE MATCH="06....." Timeout="0"/>
<TEMPLATE MATCH="07....." Timeout="0"/>
<TEMPLATE MATCH="08....." Timeout="0"/>
<TEMPLATE MATCH="09....." Timeout="0"/>
<!-- Meduzupanijski pozivi -->
<TEMPLATE MATCH="001......." Timeout="0"/> <!-- Zagrebacka i grad Zagreb -->
<TEMPLATE MATCH="0049......" Timeout="0"/> <!-- Krapinsko - zagorska -->
<TEMPLATE MATCH="0044......" Timeout="0"/> <!-- Sisacko - moslavacka -->
<TEMPLATE MATCH="0047......" Timeout="0"/> <!-- Karlovacka -->
<TEMPLATE MATCH="0042......" Timeout="0"/> <!-- Varazdinska -->
<TEMPLATE MATCH="0048......" Timeout="0"/> <!-- Koprivnicko - krizevacka -->
<TEMPLATE MATCH="0043......" Timeout="0"/> <!-- Bjelovarsko - gilogorska -->
<TEMPLATE MATCH="0051......" Timeout="0"/> <!-- Primorsko - goranska -->
<TEMPLATE MATCH="0053......" Timeout="0"/> <!-- Licko - senjska -->
<TEMPLATE MATCH="0033......" Timeout="0"/> <!-- VIroviticko - podravska -->
<TEMPLATE MATCH="0034......" Timeout="0"/> <!-- Pozesko - slavonska -->
<TEMPLATE MATCH="0035......" Timeout="0"/> <!-- Brodsko - posavska-->
<TEMPLATE MATCH="0023......" Timeout="0"/> <!-- Zadarska -->
<TEMPLATE MATCH="0031......" Timeout="0"/> <!-- Osjecko - baranjska -->
<TEMPLATE MATCH="0022......" Timeout="0"/> <!-- Sibensko - kninska -->
<TEMPLATE MATCH="0032......" Timeout="0"/> <!-- Vukovarsko - srijemska -->
<TEMPLATE MATCH="0021......" Timeout="0"/> <!-- Splitsko - dalmatinska -->
<TEMPLATE MATCH="0052......" Timeout="0"/> <!-- Istarska -->
<TEMPLATE MATCH="0020......" Timeout="0"/> <!-- Dubrovacko - neretvanska -->
<TEMPLATE MATCH="0040......" Timeout="0"/> <!-- Medimurska-->
<!-- Mobiteli -->
<TEMPLATE MATCH="0099......." Timeout="0"/>
<TEMPLATE MATCH="0098......." Timeout="0"/>
<TEMPLATE MATCH="0095......." Timeout="0"/>
<TEMPLATE MATCH="0091......." Timeout="0"/>
<!-- Cisco - default -->
<TEMPLATE MATCH="9,59....." Timeout="0"/>
<TEMPLATE MATCH="9,29....." Timeout="0"/>
<TEMPLATE MATCH="9,832......." Timeout="0"/>
<TEMPLATE MATCH="9,713......." Timeout="0"/>
<TEMPLATE MATCH="9,281......." Timeout="0"/>
<TEMPLATE MATCH="9,903......." Timeout="0"/>
<TEMPLATE MATCH="\*500" Timeout="0"/>
<TEMPLATE MATCH="\*54" Timeout="0"/>
<TEMPLATE MATCH="\*55" Timeout="0"/>
<TEMPLATE MATCH="\*69" Timeout="0"/>
<TEMPLATE MATCH="*" Timeout="5"/> <!-- Anything else -->
</DIALTEMPLATE>
Cisco 7970 IP Phone - restart
To restart the 7970 with the sip software press **#** while in the settings menu.Cisco 7970 IP Phone - SSH login
- Find out your IP address (Settings => Network Configuration => IP Address=- Use some ssh client to login on your IP address and port 22
- for loging in use user/pass that you have defined in SEP<mac>.xml.cnf file (sshUserId/sshPassword)
- when prompted again log in as user debug and password debug
Still need to configure:
If sombody knows how to configure following please edit this page or e-mail me at tparcina@lama.hr- How to setup hinting (Multiple Call Appearance) - does it work with SIP firmware?
- How to make Java application for this phone?
- How to remouve gray lines from display (when line is defined)?
Thank you for your help!
Comments
333Re: Newest Cisco 7970 SIP Firmware
thank you very much
Jan
333Call Forwarding
Thanks,
Ken
333Firmware SIP70.8-3-4SR1S and other Issues
<p><ul>
<li>Unknown element 'tftpDefault' in element '/device/devicePool/callManagerGroup'
<li>Unknown element 'uid' in element '/device/networkLocaleInfo'
<li>Element '/device/sipProfile/natEnabled' Invalid EnumValue: 0
</ul>
<br>Taking the lines relating to the first two errors out, and removing the 0 in the natEnabled tags (essentially leaving it empty), and doing a factory reset immediately brought the phone up and it registered properly and was able to place calls, where before it was hanging at "registering" forever on a bad config. Also, note that some of the values used by Cisco for true/false are not just 0=false, 1=true (or 0=off, 1=on), sometimes its 1,2 sometimes there are more options than that, and sometimes 0=on/true, 1=off/false. This is apparently true for the webserver: set the webAccess tag to 0 to enable the web server interface, 1 to disable it. Gotta love Cisco's coding consistency. The logs available via the web interface are invaluable in troubleshooting config issues.
333
Detailed Guide To Upgrading a 797x to a SIP image and adding directory menus, images and RSS feeds via Services button.
I have put together some detailed information of upgrading a 797x to a SIP image and setting up some other features available at :- http://www.tjir.za.net/7970-sip.html333SIP 7970
333Re: Newest Cisco 7970 SIP Firmware
i have a 7970G loaded with the latest sip 8.3.3.ES2. I used the config files template from the Kerry tutorials. I am having problem registering with asterisk(1.2.26). On the phone it shows that the line is not registered. I do not have an dial tone either. However, when i call the extension, the phone rings - if i pick up the handset the phone keeps on ringing until the voicemail kicks in. I played with the settings into the sip extension (qualify=no, nat=no). but nothing works. On the asterisk info i can see the extension being registered though.
I saw some posting regarding a successfully connection between 7970 with the latest firmware 8.3.3 and asterisk. Can anyone share some of the config files please?
Thank you all.
333Re: Newest Cisco 7970 SIP Firmware
i have a 7970G loaded with the latest sip 8.3.3.ES2. I used the config files template from the Kerry tutorials. I am having problem registering with asterisk(1.2.26). On the phone it shows that the line is not registered. I do not have an dial tone either. However, when i call the extension, the phone rings - if i pick up the handset the phone keeps on ringing until the voicemail kicks in. I played with the settings into the sip extension (qualify=no, nat=no). but nothing works. On the asterisk info i can see the extension being registered though.
I saw some posting regarding a successfully connection between 7970 with the latest firmware 8.3.3 and asterisk. Can anyone share some of the config files please?
Thank you all.
333Re: Newest Cisco 7970 SIP Firmware
i have a 7970G loaded with the latest sip 8.3.3.ES2. I used the config files template from the Kerry tutorials. I am having problem registering with asterisk(1.2.26). On the phone it shows that the line is not registered. I do not have an dial tone either. However, when i call the extension, the phone rings - if i pick up the handset the phone keeps on ringing until the voicemail kicks in. I played with the settings into the sip extension (qualify=no, nat=no). but nothing works. On the asterisk info i can see the extension being registered though.
I saw some posting regarding a successfully connection between 7970 with the latest firmware 8.3.3 and asterisk. Can anyone share some of the config files please?
Thank you all.
333Re: Newest Cisco 7970 SIP Firmware
i have a 7970G loaded with the latest sip 8.3.3.ES2. I used the config files template from the Kerry tutorials. I am having problem registering with asterisk(1.2.26). On the phone it shows that the line is not registered. I do not have an dial tone either. However, when i call the extension, the phone rings - if i pick up the handset the phone keeps on ringing until the voicemail kicks in. I played with the settings into the sip extension (qualify=no, nat=no). but nothing works. On the asterisk info i can see the extension being registered though.
I saw some posting regarding a successfully connection between 7970 with the latest firmware 8.3.3 and asterisk. Can anyone share some of the config files please?
Thank you all.
333Can't get 7970-G To Take SIP Load
Update —
Had to go back to an older SCCP load, and walk forward through the sccp releases to SCCP-822SR1 then the phone had a current loader and would take the SIP 8.3.3.SR2 load and my XML configuration.. Part of my issue was that he Asterisk atftpd.log did not show the write errors after the apps file was servered, when attempting to load the SIIP 8.3.3.SR2 code so I did not put 1 + 1 together as quickly as I should have..
In the intro section above there are notes about updtaes to the Asterisk configuration for the 7970. Does anyone have them documented.
--------------------------
Good Evening, I am hoping someone here has some insight / advice on load this %#$# phone.
I have the latest SIP.8.3.3SR2 files and I am attempting to move a 7970-G from SCCP to SIP.
6952960 Dec 30 15:14 cmterm-7970_7971-sip.8-3-3SR2.tar
I can boot the Phone and Start the Factory Reset but it will only proceed as far as transferring the apps70... file to the phone, then it appears to stall with a GREEN Headset & RED Mute light. After a few mins it starts over with a renewal of the DHCP request.
2494499 Nov 5 11:11 apps70.8-3-3ES2.sbn
DHCP is Windows TFTP with Option 66 pointing at a Trixbox install of CentOS-5.1
All Files are in the /tftpboot directory owned by asterisk.asterisk
Log showes.. Repeating.
Dec 30 21:07:51 trixbox1.localdomain atftpd7151.-1208185968: Serving term70.default.loads to 172.16.200.45:1024
Dec 30 21:07:53 trixbox1.localdomain atftpd7151.-1208185968: Serving jar70sip.8-3-3ES2.sbn to 172.16.200.45:1025
Dec 30 21:07:57 trixbox1.localdomain atftpd7151.-1208185968: Serving cnu70.8-3-3ES2.sbn to 172.16.200.45:1026
Dec 30 21:08:01 trixbox1.localdomain atftpd7151.-1208185968: Serving apps70.8-3-3ES2.sbn to 172.16.200.45:1027
Does anyone have any good information on how to get these phones SIP active so I can attah them to my Asterisk 1.4.n installtion.
TIA...