login | register
Wed 03 of Dec, 2008 [02:43 UTC]

voip-info.org

SCCP-HOWTO2

Created by: czmok,Last modification on Mon 20 of Oct, 2008 [18:18 UTC] by fsantulli
Here are some of my notes and sample conf files for SCCP.

Main chan_sccp


Development drivers


Old driver downloads (outdated)


Install Instructions

  • 1. Install a TFTP server some where on your network. You will need this to upload the firmware to the 7920.
  • 2. Create OS7920.txt and enter the Asterisk server ip address in xmlDefault.CNF.XML, which comes in the tar file, and place these two files along with the firmware or bin file on the TFTP server.
  • 3. If you are configuring a 7960 to work with Asterisk and SCCP you will also need to create SEP<MAC>.cnf.xml and place on the TFTP server, the 7960 (SCCP firmware 5.0.5) will continuously reboot until it finds this file.


xmlDefault.CNF.XML ** Not needed if you have a SEPMAC.cnf.xml for each phone
<Default>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>insert_the_asterisk_server_ip</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
</Default>

OS7920.TXT
echo -n "cmterm_7920.3.3-01-05" > OS7920.TXT
Create the file with the above command and enter the correct Firmware Binary file name (ie cmterm_7920.3.3-01-07)

  • 3. Configure the 7920 to look to your TFTP server.
  • 4. On the Asterisk server you will need to modify the hosts, modules.conf, sccp.conf and extensions.conf files.
/etc/hosts

(ip address) (server name)
Needed for RTP service (ie 192.168.0.41 MYPBX)


/etc/asterisk/modules.conf

...
noload => chan_skinny.so
load => chan_sccp.so
; You need this to stop the loading of Skinny, a part of Asterisk server.
...
; The seccond line starts chan_sccp on astrisk start.

/etc/asterisk/sccp.conf

[general]
keepalive = 30                   ; IMPORTANT: 5secs. lead to trouble with
                                ; 7960
context = internal
dateFormat = D.M.YA                    ; M-D-Y in any order (5 chars max)
bindaddr = 192.168.1.200             ; replace with the ip address of the asterisk server 
port = 2000                                 ; listen on port 2000 (Skinny, default)
debug = 0
accountcode=skinny                      ; accountcode to ease billing
callwaiting_tone = 0x2d                 ; sets to 0 to disable the callwaiting tone
language=en                               ; Default language setting this setting also sets the voicemailbox language
echocancel = on                           ; sets the phone echocancel for all devices
silencesuppression = off                ; sets the silence suppression for all devices
cfwdall = on                                 ; activate the callforward ALL stuff and softkeys
cfwdbusy = on                              ; activate the callforward BUSY stuff and softkeys
private = no                                 ; permit the private function softkey
dnd = on                                     ; turn on the dnd softkey for all devices. Valid values are  "off", "on" (busy signal), "reject" (busy signal), "silent" (ringer = silent)
mwioncall = on                             ; Set the MWI on call lamp signal on phone


[devices]
type        = 7905
description = Bedroom
tzoffset    = 0
autologin   = 6004
device => SEPxxxxxxxxxxxx

type        = 7960
description = Office
tzoffset    = 0
autologin   = 6000
speeddial   = 6001,6001,6001@internal
speeddial   = 6004,6004,6004@internal
device => SEPxxxxxxxxxxxx

type        = 7960
description = LivingRoom                        ; internal description. Not important
tzoffset    = 0
autologin   = 6001                                 ; lines list. You can add an empty line for an empty 
speeddial   = 6000,6000,6000@internal    ; you can add an empty speedial if you want an empty 
speeddial   = 6004,6004,6004@internal
device => SEPxxxxxxxxxxxx
; This is an example config with multiple phones
; 08/2005 Stefan Gofferje

[lines]
id            = 6000                                  ; future use
pin           = 1234                                 ; future use
label         = 6000                                 ; button line label (7960, 7970, 7940, 7920)
description   = Office                             ; top diplay description
context       = client_int_unrestricted
callwaiting   = 1
incominglimit = 2                                  ; more than 1 incoming call = call waiting
mailbox       = 1000                              ; voicemail.conf (syntax: vmbox@context:folder)
vmnum         = 8500                             ; speeddial for voicemail administration, just a number to dial
cid_name      = Office                            ; caller id name
cid_num       = 6000
line => 6000

id            = 6001
pin           = 1234
label         = 6001
description   = LivingRoom
context       = client_int_unrestricted
callwaiting   = 1
incominglimit =  2
mailbox       = 1000
vmnum         = 8500
cid_name      = Living Room
cis_num       = 6001
line => 6001

id            = 6004
pin           = 1234
label         = 6004
description   = Bedroom
context       = client_int_unrestricted
callwaiting   = 1
incominglimit = 2
mailbox       = 1000
vmnum         = 8500
cid_name      = Bedroom
cid_num       = 6004
line => 6004



/etc/asterisk/extensions.conf

exten => 2123,1,SetCalledParty("Wireless" <2123>)
exten => 2123,2,Dial(SCCP/Wireless)
exten => 2123,3,Voicemail,u2123


SEP<MAC>.cnf.xml

<device>
<devicePool>
 <callManagerGroup>
  <members>
   <member  priority="0">
    <callManager>
     <ports>
      <ethernetPhonePort>2000</ethernetPhonePort>
     </ports>
     <processNodeName>Asterisk IP here</processNodeName>
    </callManager>
   </member>
  </members>
 </callManagerGroup>
</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>

NOTES:
  • 1. If the 7920 can call but the other person can not hear you this will most likely be an RTP problem. You may want to try some of the things I found to fix the problem:

    • A) Look at entry 127.0.0.1 in the Hosts file. For some reason I found on mine that I had the server name included with the entry.
    • B) If you have installed additional software for linux you may need to reinstall the support for SCCP.
    • C) Make sure that the bind ip address in sccp.conf is the ip address for *. 0.0.0.0 will NOT work.


7921G Note on using a brand new device

If you are using a brand new 7921G make sure the firmware version doesnt contain the string MFG.A.7.loads
It wont have full functionality and you will need to find a production version i.e 1.1.1
All the data above works for the 7921G, of course replacing the 7920 text with 7921.
You can get the phone to upgrade via tftp by putting the new version of firmware into the line load information.
<loadInformation>CP7921G-1.1.1</loadInformation>
you will also need chan-sccp-b svn (March 2008) for the device to show correctly in asterisk (im using 1.4.13 with svn pulled -06/03/08 dod)
I had to turn power save off in wifi for it to be stable with the airport extreme n

7960s with OLD firmware

I've come accross a few 7960s with extremely old firmware. (P003P301)
The process for upgrading these works much differently than newer firmware version. A version this old uses binary config files like the 12SP.

In order to get something this old upgraded you'll have to follow this guide to create a config file: Configuring Cisco 12SP phones with Asterisk
Simply (well, if you know hex) replace the IP with that of your asterisk server then save the config file as SEP<mac>.cnf (NO .xml!) and drop it in your TFTP directory.

You will then have to add an imageversion directive to sccp.conf.
Example
type = 7960
description = LivingRoom
tzoffset    = 0
autologin   = 6001
speeddial   = 6000,6000,6000@internal
speeddial   = 6004,6004,6004@internal
imageversion=P00308000500
device => SEPxxxxxxxxxxxx

Save your sccp.conf then unload/load chan_sccp.so and reboot the phone.
It will then download SEPmac.cnf, connect to asterisk, download the new firmware off your TFTP server, reboot again, then register to your asterisk server.
You will then be ready to go.


See also

Configuring Cisco 12SP phones with Asterisk
chan_sccp2


Comments

Comments Filter
222

333CISCO 7911 Dial delay

by quetzal, Thursday 19 of April, 2007 [09:57:24 UTC]
Hi all,

I just bought a CISCO 7911 cisco phone. I got it working with SCCP against an asterisk server working as callmanager. I've noticed that after dialing a number on the phone it takes about 10 seconds after the call it's really transfered to the asterisk server. Is there any way to reduce this time gap?

Regards,
222

333Re: 7920 Dialing Out

by tex, Tuesday 25 of July, 2006 [14:41:03 UTC]
Re: 7920 Dialing Out

Hi, I had the same problem on a 7960 ... on this phone downgrading firmware from 8.3 to 7.2.3 solved the problem ... maybe this will also help on 7920

222

3337920 Dialing Out

by probeing, Wednesday 19 of July, 2006 [22:00:27 UTC]
Having a problem where the 7920 can receive calls but cannot make outbound calls. Only the first digit of the number dialed is dialed by the system and the other digits are processed after the dialing has begun. Running firmware 2.01 and chan_sccp 20060408 on asterisk 1.2.9.1. Please help! probekingATmsn.com Thx.
222

333Re: Ring Delay

by jimtest, Tuesday 18 of July, 2006 [00:02:43 UTC]
I changed the Keepalive setting from 30 to 15 in SCCP.conf and this helped although there is still a little bit of a delay.
222

333Ring Delay

by jimtest, Thursday 13 of July, 2006 [18:27:18 UTC]
I have configured two 7920 phones with SCCP and Asterisk.

I am having intermittent problems where the receiving phone never rings and the dialing phone eventually just gets voicemail of the receiving phone.

Any Ideas would be appreciated.
222

3337920 Phones

by sbisker, Thursday 23 of March, 2006 [19:27:50 UTC]
Firmware 1.09 causes many problems with the latest sccp driver. Use 2.01. With 1.09, the phone reboots a lot and if you call a 7920 phone it continues to ring even after you hang it up.
222

3337920 Phones

by sbisker, Thursday 23 of March, 2006 [19:19:01 UTC]
Firmware 1.09 causes many problems with the latest sccp driver. Use 2.01. With 1.09, the phone reboots a lot and if you call a 7920 phone it continues to ring even after you hang it up.
222

333Re: Cisco IP Communicator

by joel_vandal, Monday 20 of March, 2006 [03:17:06 UTC]
Amir, look in sccp.conf in genera; section, you have permit= and deny= settings to control IP access. You can comment both line to disable checkup.

--
Joel Vandal
ScopSev Inc.
http://www.scopserv.com/
222

333Cisco IP Communicator

by amir_zandi, Monday 06 of March, 2006 [04:40:03 UTC]
Dear All;

I did patch the SCCP to my Asterisk. SCCP version is 20051209. When I want to use my Cisco IP Communicator, Debug shows me the following lines:
-- SCCP: Accepted connection from 217.219.24.159
   — SCCP: Using ip 217.219.24.240
   — SCCP: >> Got message RegisterMessage
   — SEP000EA62CA2AE: is registering, Instance: 0, Type: Cisco_IP_Communicator (30016), Version: 4
   — SEP000EA62CA2AE: Rejecting device: Ip address denied

Can anyone help me?
Thank you.
222

333Chan_SCCP 20060125 & Cisco 7920

by ciscostinks, Thursday 26 of January, 2006 [23:39:22 UTC]
I cannot get the latest chan_sccp 20060125 driver funtioning with a 7920. It would attempt to register with *, however in no longer appears to try. Also could some clarity be shed as to exactly how I am to configure a 7920 with *, particuarly A@home. I had calls working once to the 7920, but never from the 7920. I have tried everything, including starting from scratch. My sip phones work without any issues. Anyone with suggestions or working config & xml files. Also how do you get the thing to pass the new image along?.

-N