Difference between revisions of "Cisco 7970"

From LinuxMCE
Jump to: navigation, search
m (Fix instructions indent)
m (Spelling mistakes)
 
(57 intermediate revisions by 18 users not shown)
Line 1: Line 1:
 
[[Category: Hardware]]
 
[[Category: Hardware]]
 +
{{versioninfo|810Status=Working|810UpdatedDate=31 July 2011|810UpdatedBy=daballiemo|versioninfo|1004Status=Working|1004UpdatedDate=17 September 2011|1004UpdatedBy=foxi352}}
 
[[Category: Phones]]
 
[[Category: Phones]]
 +
[[Category: IP Phones]]
 
[[Category: Orbiters]]
 
[[Category: Orbiters]]
 +
 +
== Preface ==
 
[[Image:Cisco7909.JPG]]
 
[[Image:Cisco7909.JPG]]
  
LinuxMCE allows to use many devices as Orbiters. One of them is the Cisco 7970. You can use it to make calls and control your home as well. To add a new Cisco 7970 phone and Orbiter you should follow these simple instructions. Basically I got the information in the [http://forum.linuxmce.org/index.php?action=search2&search=Cisco+7970 LinuxMCE support forum]. But I think it's good to accumulate odd posts in one place. If you have some suggestions send me email - stepanov.michael [at] gmail [dot] com or leave a comment.
+
LinuxMCE allows the use of many devices as [[Orbiters]]. One of them is the [http://www.cisco.com/en/US/products/hw/phones/ps379/ps5440/index.html CISCO 7970]. You can use it to control your home as well as to make calls.
 +
 
 +
To add a new CISCO 7970 phone as an Orbiter follow these simple instructions (from information in the [http://forum.linuxmce.org/ LinuxMCE support forum]).
 +
 
 +
== Preparation ==
 +
 
 +
CISCO 7970 phone is plug-in-play device; LinuxMCE adds it automatically when it is plugged into the network. But first, we have to make some preparations. Run an Orbiter. Be sure that no others tasks are running.
 +
Check the DHCP setting of your phone. It should be something like that: "get IP via DHCP and no alternative servers".
 +
Check the range of MAC addresses:
 +
#Go to Advanced --> Configuration --> Device Template.
 +
#Chose manufacturer CISCO.
 +
#Click the 'Apply Filter' button.
 +
#In the Device Template drop down box select the Cisco 7970.
 +
#Press the button 'Pick Device Template'.
 +
#On the opened window fill out a new 'Plug and Play' section with the converted MAC address of your phone. The range contains two big decimal digits. To get correct range for your phone first see its MAC address. You can find the MAC address on the back of the phone. It is a 12 digit hexadecimal number. The first three groups identify a maker. You leave them and fill the rest by 0 and F. For example, if MAC is <strong>00:16:78:CD:01:D8</strong> its range will be <strong>00:16:78:00:00:00</strong> - <strong>00:16:78:FF:FF:FF</strong>. After that you should convert those two values into LinuxMCE representation. To do that run a script <strong>/usr/pluto/bin/convert_mac</strong> and pass the hexadecimal values as parameters:
 +
/usr/pluto/bin/convert_mac 00:16:78:00:00:00
 +
/usr/pluto/bin/convert_mac 00:16:78:FF:FF:FF
 +
:As result you will get two big decimal digits. Add them to the phone template and store.
 +
If you have problems with phone installation, it may be related to firmware. The phone should have the latest firmware upgrade. (I didn't have any problem with existing firmware on my CISCO 7970, though).
 +
 
 +
Note for '''CISCO 7960 SIP''' users: if your phone fails to register with asterisk then edit /tftpboot/SIPDefault.cnf and append
 +
nat_enable: 1
 +
 
 +
== Installation ==
 +
 
 +
#Plug the phone power and network cable.  Note if you have two network cards on your core you should plug network cable in the right switch.
 +
#During boot of the phone after 2-3 minutes you should see on the Orbiter a message about new device with your phone MAC address was detected. You should click by caption "Cisco 7970" below that.
 +
#After that the phone should be registered with asterisk and you can see a normal CISCO screen.
 +
#However, it'll take another 2-3 minutes to generate a new Orbiter for CISCO7970.
 +
#When this operation finishes you'll see a message on the Orbiter screen. Make a quick reload of router (Wizard -- Reboot -- Quick Reload Router. I also rebooted CISCO 7970 because I didn't see anything in the menu Services).
 +
#Now go to menu Services on CISCO 7970 and chose Orbiter.
 +
 
 +
== Troubleshooting ==
 +
*<u>Problem:</u> Phone boots successfully but there is no any message on the Orbiter's screen.
 +
*<u>Solution:</u> If the message doesn't appear check MAC addresses range.
 +
 
 +
== Some useful tips ==
 +
*To reset a Network configuration of CISCO79xx go to menu 'Network Setting' and press the following sequence of buttons:
 +
**#**
 +
*To check network communications between CISCO7970 and CORE run tcpdump on the CORE:
 +
tcpdump -i eth1 [CISCO7970 IP Address]
 +
or to see detailed packets information:
 +
tcpdump -i -vv eth1 [CISCO7970 IP Address]
 +
or change TimeZone change following line in /tftpboot/SEPDefault7970.cnf.xml (you can find proper TimeZone strings [http://www.voip-info.org/wiki/view/Asterisk+phone+cisco+7970+SIP here] ):
 +
<timeZone>W. Europe Standard/Daylight Time</timeZone>
 +
*To add the voicemail options to the message button, edit the sccp.conf file and add the following to the lines section of each phone:
 +
mailbox=<extension>
 +
vmnum=*97
 +
*To configure the display/backlight change the following lines in /tftpboot/SEPDefault7970.cnf.xml
 +
<daysDisplayNotActive>1,7</daysDisplayNotActive>
 +
<displayOnTime>09:00</displayOnTime>
 +
<displayOnDuration>08:00</displayOnDuration>
 +
<displayIdleTimeout>00:01</displayIdleTimeout>
 +
''daysDisplayNotActive'' you can put 1 through 7 where 1 = Sunday, 2 = Monday, 3 = Tuesday and so on.
 +
 
 +
''displayOnTime'' is the time of the day the display is turned on
 +
 
 +
''displayOnDuration'' is the length of time from the ''displayOnTime'' that the display will remain on. So in the above example the display turns on at 9:00 and turns off at 17:00. I haven't tested but I believe having this as 00:00 would keep the display on 24/7.
 +
 
 +
''displayIdleTimeout'' is the length of time the display will remain on when outside the displayOnTime/Duration parameter (inside the display is always on).
 +
<displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>
 +
This can be used for the display to turn on when receiving a call (0 = disable, 1 = enable). This line is currently not present in the file so just add it after the ''displayIdleTimeout''.
 +
Note: ''displayOnWhenIncomingCall'' doesn't work on all firmwares.
 +
 
 +
To turn on the display just press the "Display button" that should be solid green. (solid green = display turn off, blinking green = only the touchscreen is off) 
 +
 
 +
 
 +
Email suggestions to: stepanov.michael [at] gmail [dot] com or leave a comment.
 +
 
 +
==Directory button on Cisco IP Phone==
 +
<b>Please Note, this is  a part of the LinuxMCE system. Just press the directory button and enjoy.</b>
 +
 
 +
It has the following Features:
 +
 
 +
* Works with Contacts from the Pluto phone directory
 +
* Paginates them based on # of entries in phone book
 +
* Shows the phone type.
 +
 
 +
If there are any problems, let me know --[[User:Tschak909|Tschak909]] ( thom.cherryhomes (at) gmail (dot) com ).
 +
 
 +
==Add usefull XML services beside Orbiter==
  
These instructions were adapted from [http://stepanoff.org/wordpress/works/smart-home/howto/how-to-setup-cisco-7970 How to setup CISCO 7970 in Plutohome].
+
Currently this feature doesn't make much sense if you use Orbiter on phone, cause it's constantly refreshing and you loose focus of any other menu on the phone.... I've searched internet a bit and found few usefull applications that will let you put rss or xml feeds to your 7970.
There is also [http://forum.linuxmce.org/index.php?topic=3190.0 some discussion of upgrading Cisco 7970 firmware for using SIP instead of SCCP]. Complete info should be included in this wiki page.
+
  
=Preparation=
+
Basically you can try rss or xml feeds directly, but also there is usefull script that automatically converts pages to proper format - for example:
Cisco 7970 phone is plug-in-play device and LinuxMCE adds it automatically when it'll be plugged in the network. But to do it we have to make some preparations. Since the server must be prepared when the phone checks into it, the phone must be disconnected from the server until the server preparation is complete. But some info for the server must be copied from the phone first.
+
http://phone-xml.berbee.com/menu.xml?opts=67
  
In short, you'll check that the phone is configured to use DHCP, and get its MAC address. Then you'll create a new LMCE device and set that device to recognize the phone's IP#, and restart the DCERouter.
+
Gives you rss feeds from CNN and BBC. You can also use this script to convert any rss feed to same shape (it's weather rss feed in my country):
  
#Get phone configs.
+
http://phone-xml.berbee.com/rss/items.php?url=http://vreme.zurnal24.si/xml/rss/vreme.xml
##Ensure the 7970 is unplugged from the network.
+
##Power up the phone but don't let it connect to a network server. If your phone is powered by PoE, you will have to ensure that no server cable is connected to the PoE source (eg. a PoE switch), or (harder) that no servers (ie. DHCPd) are up and responding to to queries from the phone.
+
##Wait for the phone to boot (Cisco splashscreen changes to a background image, then probably goes dark for a few seconds while the "doubled-square" button at the right end of the row of buttons below the screen lights, then the background image returns with a "Configuring IP" time wheel across the bottom).
+
##Press the settings button (checked box at lower right of round "?" button) to get a "7970(G) SETTINGS" menu ("G" depends on specific 7970/7970G model#).
+
##Use the down arrow side of the circular navigation button below the screen to select a submenu.
+
###Check DHCP setting on your phone.
+
####From the "7970(G) SETTINGS" main menu, select "Network Congfiguration" or enter with the phone's keypad the item's number (probably "2") next to that menu item to get the "Network Congfiguration" menu.
+
####Down the list is "DHCP Enabled" (probably item 22), which should say "Yes".
+
###Get the MAC address of your phone.
+
####Also in the "7970(G) SETTINGS" > "Network Congfiguration" menu, find the "MAC Address" item (probably item 3).
+
####The "MAC Address" item is the MAC address, though it lacks the conventional ":" field separators among its six pairs of (zero-padded) hexadecimal digits.
+
#####Insert the ":" separators (eg. 1234567890AB becomes 12:34:56:78:90:AB)
+
#####You will use those numbers to define the range of MAC addresses LMCE will recognize as Cisco 7970 phones in the LMCE device you are about to create in the LMCE Adminsite.
+
#Run an Orbiter (on an existing LMCE device, not the 7970).
+
##Click Orbiter Home -> LinuxMCE:More -> Advanced Options -> Pending Tasks for list.
+
##Be sure that no others task are pending.
+
#Go to Admin website, menu Home -> Advanced -> Configuration -> Devices.
+
##Click "Add a top level device" in either the device tree in the minor side panel, or in the main panel.
+
##For "Device Template", click the button "Pick Device Template", which will popup a new window.
+
###From "manufacturer" choose "Cisco". You can filter the Device Template list by using a Device Category like "Hard Phones < Phones < Peripherals" (or a subset of that compound category). You should see in the Device Template list at least two models: 7960 and 7970.
+
###From "Device Template" pick "7970".
+
###Press the button "Pick device template". The Orbiter will display "Configuring Cisco 7970". The popup window will close. Several seconds might pass while LMCE generates the new device configs, then the device tree will show under "CORE > Asterisk" a new "Cisco 7970" device (with a "Cisco 7970 Orbiter" subdevice collapsed/viewable through it), and reload the main panel with a details page titled "Device #<n>: Cisco 7970" (<n> is some device ID number previously unused by your LMCE).
+
##In the Device details panel insert the two decimal MAC addresses defining a range as "LO-HI" (eg. 29902132740096-29902149517311) into the "MAC Address" field
+
##Click the "Save" button.
+
##Reload the DCERouter
+
###Webadmin Home > Wizard > Restart
+
###Click "Quick Reload Router" button.
+
  
You can create the phone device in LMCE first, and then check the phone's DHCP config and MAC address, returning to the device to configure its MAC address range, just as long as you don't connect the phone to the nework with the LMCE DHCP server until after LMCE is prepared.
+
I have further modified file /var/www/pluto-admin/ServicesMenu.php - and added more entries - basically it's XML list of various URLs to follow.
  
There is a possibility to have some problems with the phone installation related with its firmware. The firmware version should be the latest. I didn't have any problem with existing firmware on my Cisco 7970. But you should bear in mind, as some more recent SIP firmware has failed to register with LinuxMCE's Asterisk subsystem. See Asterisk's own documentation (separate project) for details.
+
==Hidden features==
  
 +
http://yourIpPhoneIPAddress/CGI/Screenshot (See Also /CGI/CallInfo /CGI/LineInfo and /CGI/SettingsInfo)
  
=Installation=
+
[[File:7970_Screenshot.png]]
#Power up the phone with it connected to the network.  Note if you have two network cards in your core's machine you should plug network cable in the "inside" ethernet segment, with the LMCE DHCP server running on that inside interface.
+
#During boot of the phone it will after 2-3 minutes you register with the LMCE to download its Orbiter. You should see on the LMCE Orbiter a message about new device with your phone MAC address was detected.
+
#After that the phone should be registered with LinuxMCE's Asterisk subsystem and you can see a normal Cisco screen.
+
#However, it'll take another 2-3 minutes to generate a new Orbiter for the Cisco 7970.
+
#When this operation finishes you'll see a message on the LMCE Orbiter (not the 7970) screen. Run a quick reload of router (Adminsite Home > Wizard > Restart; Click "Quick Reload Router").
+
#Now go to the Services  menu on the Cisco 7970 and chose "Orbiter".
+
#If the Cisco 7970 Services menu doesn't contain "Orbiter", reboot the phone (power cycle) and look again in the Services menu.
+
  
 +
== Firmware updates ==
  
=Troubleshooting=
+
Since LinuxMCE 12.04 it is possible to update the firmware of CISCO 7970 phones. To do this you must be registered on cisco.com website and have the needed licenses to be legal. To update the firmware please follow the below steps:
*<u>Problem:</u> Phone boots successfully in installation, but there isn't any message on the LMCE Orbiter's screen that it's registering.
+
* Download newest SCCP firmware from cisco.com (you must be registered). Download the "firmware files only" package which is a .zip file.
<u>Solution:</u>Check the MAC address to ensure the phone's correct MAC address is in the specified range (Adminsite Home > Wizard > Devices; Phones; Cisco 790; Advanced; MAC Address)
+
* Unpack the files to the /tftpboot directory of your core.
 +
* The package should contain some tem*.loads files, some *.sbn files and a SCCP*.loads file. Copy the filename of the SCCP*.loads file.
 +
* In webadmin enter the "Phones" menu under "Devices".
 +
* Search for your 7970 phones and paste the SCCP*.loads filename in the "Firmware"  field.
 +
* Click "Update" at page bottom
 +
* Power cycle your 7970 phones.
 +
* The phones should auto update after first boot. This will take a while. You can monitor progress on the phone's screen.
  
=Useful tips=
+
==Usefull links==
#To reset a LMCE Network configuration of Cisco 7970 go to Admin website menu "Home -> Advanced -> Network Settings" (where you can change LMCE network settings) and press the following sequence of buttons on the phone: **#** (which will reset and reboot the phone).
+
#To check network communications between Cisco 7970 and CORE run tcpdump on the CORE: <code>tcpdump -i eth1 <Cisco 7970 IP Address></code>
+
#To see detailed packets information: <code>tcpdump -i -vv eth1 <Cisco 7970 IP Address></code>
+
  
 +
[http://web.csma.biz/apps/xml_xmldir.php Open 79XX XML Directory] - Gives you possibility to edit info showed/used on Phone... I've just tried ver 1.2 and it seems really useful. Beside contacts and search capability, it allows user to organize external xml services, memos, notes together in one easy to traverse menu... Really worth of consideration...
  
=See also=
+
[http://www.cisco.com/en/US/docs/voice_ip_comm/cucme/command/reference/cme_s1ht.html#wp1137794 vendorConfig Parameter-Name and Parameter-Value Descriptions] Overview of the parameters that can be given in the *.cnf.xml file.
[[Orbiter]]
+

Latest revision as of 21:04, 2 April 2013

Version Status Date Updated Updated By
710 Unknown N/A N/A
810 Working 31 July 2011 daballiemo
1004 Working 17 September 2011 foxi352
1204 Unknown N/A N/A
1404 Unknown N/A N/A
Usage Information

Preface

Cisco7909.JPG

LinuxMCE allows the use of many devices as Orbiters. One of them is the CISCO 7970. You can use it to control your home as well as to make calls.

To add a new CISCO 7970 phone as an Orbiter follow these simple instructions (from information in the LinuxMCE support forum).

Preparation

CISCO 7970 phone is plug-in-play device; LinuxMCE adds it automatically when it is plugged into the network. But first, we have to make some preparations. Run an Orbiter. Be sure that no others tasks are running. Check the DHCP setting of your phone. It should be something like that: "get IP via DHCP and no alternative servers". Check the range of MAC addresses:

  1. Go to Advanced --> Configuration --> Device Template.
  2. Chose manufacturer CISCO.
  3. Click the 'Apply Filter' button.
  4. In the Device Template drop down box select the Cisco 7970.
  5. Press the button 'Pick Device Template'.
  6. On the opened window fill out a new 'Plug and Play' section with the converted MAC address of your phone. The range contains two big decimal digits. To get correct range for your phone first see its MAC address. You can find the MAC address on the back of the phone. It is a 12 digit hexadecimal number. The first three groups identify a maker. You leave them and fill the rest by 0 and F. For example, if MAC is 00:16:78:CD:01:D8 its range will be 00:16:78:00:00:00 - 00:16:78:FF:FF:FF. After that you should convert those two values into LinuxMCE representation. To do that run a script /usr/pluto/bin/convert_mac and pass the hexadecimal values as parameters:
/usr/pluto/bin/convert_mac 00:16:78:00:00:00
/usr/pluto/bin/convert_mac 00:16:78:FF:FF:FF
As result you will get two big decimal digits. Add them to the phone template and store.

If you have problems with phone installation, it may be related to firmware. The phone should have the latest firmware upgrade. (I didn't have any problem with existing firmware on my CISCO 7970, though).

Note for CISCO 7960 SIP users: if your phone fails to register with asterisk then edit /tftpboot/SIPDefault.cnf and append

nat_enable: 1

Installation

  1. Plug the phone power and network cable. Note if you have two network cards on your core you should plug network cable in the right switch.
  2. During boot of the phone after 2-3 minutes you should see on the Orbiter a message about new device with your phone MAC address was detected. You should click by caption "Cisco 7970" below that.
  3. After that the phone should be registered with asterisk and you can see a normal CISCO screen.
  4. However, it'll take another 2-3 minutes to generate a new Orbiter for CISCO7970.
  5. When this operation finishes you'll see a message on the Orbiter screen. Make a quick reload of router (Wizard -- Reboot -- Quick Reload Router. I also rebooted CISCO 7970 because I didn't see anything in the menu Services).
  6. Now go to menu Services on CISCO 7970 and chose Orbiter.

Troubleshooting

  • Problem: Phone boots successfully but there is no any message on the Orbiter's screen.
  • Solution: If the message doesn't appear check MAC addresses range.

Some useful tips

  • To reset a Network configuration of CISCO79xx go to menu 'Network Setting' and press the following sequence of buttons:
**#**
  • To check network communications between CISCO7970 and CORE run tcpdump on the CORE:
tcpdump -i eth1 [CISCO7970 IP Address]

or to see detailed packets information:

tcpdump -i -vv eth1 [CISCO7970 IP Address]

or change TimeZone change following line in /tftpboot/SEPDefault7970.cnf.xml (you can find proper TimeZone strings here ):

<timeZone>W. Europe Standard/Daylight Time</timeZone>
  • To add the voicemail options to the message button, edit the sccp.conf file and add the following to the lines section of each phone:
mailbox=<extension>
vmnum=*97
  • To configure the display/backlight change the following lines in /tftpboot/SEPDefault7970.cnf.xml
<daysDisplayNotActive>1,7</daysDisplayNotActive>
<displayOnTime>09:00</displayOnTime>
<displayOnDuration>08:00</displayOnDuration>
<displayIdleTimeout>00:01</displayIdleTimeout>

daysDisplayNotActive you can put 1 through 7 where 1 = Sunday, 2 = Monday, 3 = Tuesday and so on.

displayOnTime is the time of the day the display is turned on

displayOnDuration is the length of time from the displayOnTime that the display will remain on. So in the above example the display turns on at 9:00 and turns off at 17:00. I haven't tested but I believe having this as 00:00 would keep the display on 24/7.

displayIdleTimeout is the length of time the display will remain on when outside the displayOnTime/Duration parameter (inside the display is always on).

<displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>

This can be used for the display to turn on when receiving a call (0 = disable, 1 = enable). This line is currently not present in the file so just add it after the displayIdleTimeout. Note: displayOnWhenIncomingCall doesn't work on all firmwares.

To turn on the display just press the "Display button" that should be solid green. (solid green = display turn off, blinking green = only the touchscreen is off)


Email suggestions to: stepanov.michael [at] gmail [dot] com or leave a comment.

Directory button on Cisco IP Phone

Please Note, this is a part of the LinuxMCE system. Just press the directory button and enjoy.

It has the following Features:

  • Works with Contacts from the Pluto phone directory
  • Paginates them based on # of entries in phone book
  • Shows the phone type.

If there are any problems, let me know --Tschak909 ( thom.cherryhomes (at) gmail (dot) com ).

Add usefull XML services beside Orbiter

Currently this feature doesn't make much sense if you use Orbiter on phone, cause it's constantly refreshing and you loose focus of any other menu on the phone.... I've searched internet a bit and found few usefull applications that will let you put rss or xml feeds to your 7970.

Basically you can try rss or xml feeds directly, but also there is usefull script that automatically converts pages to proper format - for example:

http://phone-xml.berbee.com/menu.xml?opts=67

Gives you rss feeds from CNN and BBC. You can also use this script to convert any rss feed to same shape (it's weather rss feed in my country):

http://phone-xml.berbee.com/rss/items.php?url=http://vreme.zurnal24.si/xml/rss/vreme.xml

I have further modified file /var/www/pluto-admin/ServicesMenu.php - and added more entries - basically it's XML list of various URLs to follow.

Hidden features

http://yourIpPhoneIPAddress/CGI/Screenshot (See Also /CGI/CallInfo /CGI/LineInfo and /CGI/SettingsInfo)

7970 Screenshot.png

Firmware updates

Since LinuxMCE 12.04 it is possible to update the firmware of CISCO 7970 phones. To do this you must be registered on cisco.com website and have the needed licenses to be legal. To update the firmware please follow the below steps:

  • Download newest SCCP firmware from cisco.com (you must be registered). Download the "firmware files only" package which is a .zip file.
  • Unpack the files to the /tftpboot directory of your core.
  • The package should contain some tem*.loads files, some *.sbn files and a SCCP*.loads file. Copy the filename of the SCCP*.loads file.
  • In webadmin enter the "Phones" menu under "Devices".
  • Search for your 7970 phones and paste the SCCP*.loads filename in the "Firmware" field.
  • Click "Update" at page bottom
  • Power cycle your 7970 phones.
  • The phones should auto update after first boot. This will take a while. You can monitor progress on the phone's screen.

Usefull links

Open 79XX XML Directory - Gives you possibility to edit info showed/used on Phone... I've just tried ver 1.2 and it seems really useful. Beside contacts and search capability, it allows user to organize external xml services, memos, notes together in one easy to traverse menu... Really worth of consideration...

vendorConfig Parameter-Name and Parameter-Value Descriptions Overview of the parameters that can be given in the *.cnf.xml file.