Cisco 7920
Created by: ddimick,Last modification on Mon 05 of May, 2008 [12:55 UTC] by PipoCanaja
The 7920 phone from cisco is a Wireless 802.11b phone. Cisco does not provide any SIP firwmare for this Wireless Phone. Only the Skinny protocol is supported. WEP and WPA security are supported with the latest firmwares so they can be useful home toip phones.
For specifications see Cisco product page.
This phone is part of Ciscos 7900 Series of IP phones.
Asterisk comes with a chan_skinny channel and the 7920 does work with chan_skinny on asterisk 1.4 and 1.6 (tested with 1.4.12, 1.4.19, 1.6.0b8, and the phone firmware is cmterm_7920.4.0-03-02.bin) BUT needs a LITTLE ENDIAN computer (intel x86 usually). It does not work out of the box with a PowerPC or other BIG ENDIAN machines right now. A few bugs prevents the phone from attaching to the chan_skinny module.
Update May 2008: I did patch my chan_skinny and had it work on a Linux PowerPC with asterisk 1.4.12. The patch will be submitted to the asterisk team.
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>172.21.0.6</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation30002 model="Cisco 7920">cmterm_7920.4.0-03-02</loadInformation30002>
</Default>
In the Asterisk 1.4.12 CLI :
-------------------- ---------------- --------------- --------------- - --
7920 SEP000D288Exxxx 192.168.1.105 7920 Y 1
*CLI> skinny show lines
Device Name Instance Name Label
-------------------- -------- -------------------- --------------------
7920 1 21 Cuisine
To unlock phone administrative functions, press Menu, *, #, # and then the green handset talk button.
For specifications see Cisco product page.
This phone is part of Ciscos 7900 Series of IP phones.
Asterisk Configuration for 7920
Asterisk comes with a chan_skinny channel and the 7920 does work with chan_skinny on asterisk 1.4 and 1.6 (tested with 1.4.12, 1.4.19, 1.6.0b8, and the phone firmware is cmterm_7920.4.0-03-02.bin) BUT needs a LITTLE ENDIAN computer (intel x86 usually). It does not work out of the box with a PowerPC or other BIG ENDIAN machines right now. A few bugs prevents the phone from attaching to the chan_skinny module.
Update May 2008: I did patch my chan_skinny and had it work on a Linux PowerPC with asterisk 1.4.12. The patch will be submitted to the asterisk team.
Sample Configuration
Files needed for the 7920 boot (via TFTPBOOT) :
- cat /tftpboot/XMLDefault.cnf.xml
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>172.21.0.6</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation30002 model="Cisco 7920">cmterm_7920.4.0-03-02</loadInformation30002>
</Default>
# cat /tftpboot/SEP000D288Exxxx.cnf.xml
<device>
<devicePool>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>172.21.0.6</processNodeName>
</callManager>
</member>
<member priority="1">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>172.21.0.6</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation model="Cisco 7920">cmterm_7920.4.0-03-02</loadInformation>
</devicePool>
<versionStamp>{Jan 01 2002 00:00:00}</versionStamp>
<loadInformation></loadInformation>
<userLocale>
<name>English_United_States</name>
<langCode>en</langCode>
</userLocale>
<networkLocale>United_States</networkLocale>
<idleTimeout>0</idleTimeout>
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<servicesURL></servicesURL>
</device>
<device>
<devicePool>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>172.21.0.6</processNodeName>
</callManager>
</member>
<member priority="1">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>172.21.0.6</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation model="Cisco 7920">cmterm_7920.4.0-03-02</loadInformation>
</devicePool>
<versionStamp>{Jan 01 2002 00:00:00}</versionStamp>
<loadInformation></loadInformation>
<userLocale>
<name>English_United_States</name>
<langCode>en</langCode>
</userLocale>
<networkLocale>United_States</networkLocale>
<idleTimeout>0</idleTimeout>
<authenticationURL></authenticationURL>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<servicesURL></servicesURL>
</device>
/etc/asterisk/skinny.conf
;
; Skinny Configuration for Asterisk
;
[general]
;port = 2000 ; Port to bind to, default tcp/2000
;bindaddr = 192.168.0.1
dateFormat = D-M-Y ; M,D,Y in any order (5 chars max)
keepAlive = 100000
disallow = all
allow = ulaw
allow = alaw
[7920]
device=SEP000D288Exxxx
callwaiting=yes
context = local
linelabel => Cuisine
line => 21
;...
; Skinny Configuration for Asterisk
;
[general]
;port = 2000 ; Port to bind to, default tcp/2000
;bindaddr = 192.168.0.1
dateFormat = D-M-Y ; M,D,Y in any order (5 chars max)
keepAlive = 100000
disallow = all
allow = ulaw
allow = alaw
[7920]
device=SEP000D288Exxxx
callwaiting=yes
context = local
linelabel => Cuisine
line => 21
;...
/etc/asterisk/extensions.conf
exten => 21,1,Dial(Skinny/21@7920)
CLI Asterisk, sample display
In the Asterisk 1.4.12 CLI :
- CLI> skinny show devices
-------------------- ---------------- --------------- --------------- - --
7920 SEP000D288Exxxx 192.168.1.105 7920 Y 1
*CLI> skinny show lines
Device Name Instance Name Label
-------------------- -------- -------------------- --------------------
7920 1 21 Cuisine
Tips
To unlock phone administrative functions, press Menu, *, #, # and then the green handset talk button.

Comments
333
333SCCP2 How-to feedback
no explanation regarding noload command.
why not load the module ?
how would it run than ???