; (SCCP*)
;
; An implementation of Skinny Client Control Protocol (SCCP)
;
; Sergio Chersovani ([email protected])
; http://chan-sccp.belios.de
;
[general]
servername = dumbledore ; show this name on the device registration
keepalive = 60 ; phone keep alive message evey 60 secs. Used to check the voicemail
debug = core ; console debug level or categories
; examples: debug = 11 | debug = mwi,event,core | debug = all | debug = none or 0
; possible categories:
; core, sccp, hint, rtp, device, line, action, channel, cli, config, feature, feature_button, softkey, indicate, pbx
; socket, mwi, event, adv_feature, conference, buttontemplate, speeddial, codec, realtime, lock, newcode, high, all, none
context = default
dateFormat = D.M.Y ; M-D-Y in any order. Use M/D/YA (for 12h format)
bindaddr = 192.168.128.254 ; replace with the ip address of the asterisk server (RTP important param)
port = 2000 ; listen on port 2000 (Skinny, default)
disallow=all ; First disallow all codecs
;allow=alaw ; Allow codecs in order of preference
allow=g729 ;
allow=ulaw ;
firstdigittimeout = 16 ; dialing timeout for the 1st digit
digittimeout = 8 ; more digits
;digittimeoutchar = # ; you can force the channel to dial with this char in the dialing state
autoanswer_ring_time = 1 ; ringing time in seconds for the autoanswer, the default is 0
autoanswer_tone = 0x32 ; autoanswer confirmation tone. For a complete list of tones: grep SKINNY_TONE sccp_protocol.h
; not all the tones can be played in a connected state, so you have to try.
remotehangup_tone = 0x32 ; passive hangup notification. 0 for none
transfer_tone = 0 ; confirmation tone on transfer. Works only between SCCP devices
callwaiting_tone = 0x2d ; sets to 0 to disable the callwaiting tone
musicclass=default ; Sets the default music on hold class
language=en ; Default language setting
;callevents=no ; generate manager events when phone
; performs events (e.g. hold)
;accountcode=skinny ; accountcode to ease billing
;deny=0.0.0.0/0.0.0.0 ; Deny every address except for the only one allowed.
permit=192.168.128.0/255.255.255.0 ; Accept class C 192.168.1.0
; You may have multiple rules for masking traffic.
; Rules are processed from the first to the last.
; This General rule is valid for all incoming connections. It's the 1st filter.
;localnet = 192.168.1.0/255.255.255.0 ; All RFC 1918 addresses are local networks
;externip = 1.2.3.4 ; IP Address that we're going to notify in RTP media stream
;externhost = mydomain.dyndns.org ; Hostname (if dynamic) that we're going to notify in RTP media stream
; externrefresh = 60 ; expire time in seconds for the hostname (dns resolution)
dnd = on ; turn on the dnd softkey for all devices. Valid values are "off", "on" (busy signal), "reject" (busy signal), "silent" (ringer = silent)
sccp_tos = 0x68 ; sets the default sccp signaling packets Type of Service (TOS) (defaults to 0x68 = 01101000 = 104 = DSCP:011010 = AF31)
; Others possible values : [CS?, AF??, EF], [0x??], [lowdelay, throughput, reliability, mincost(solaris)], none
sccp_cos = 4 ; sets the default sccp signaling packets Class of Service (COS) (defaults to 4)
audio_tos = 0xB8 ; sets the default audio/rtp packets Type of Service (TOS) (defaults to 0xb8 = 10111000 = 184 = DSCP:101110 = EF)
audio_cos = 6 ; sets the default audio/rtp packets Class of Service (COS) (defaults to 6)
video_tos = 0x88 ; sets the default video/rtp packets Type of Service (TOS) (defaults to 0x88 = 10001000 = 136 = DSCP:100010 = AF41)
video_cos = 5 ; sets the default video/rtp packets Class of Service (COS) (defaults to 5)
echocancel = on ; sets the phone echocancel for all devices
silencesuppression = off ; sets the silence suppression for all devices
;callgroup=1,3-4 ; We are in caller groups 1,3,4. Valid for all lines
;pickupgroup=1,3-5 ; We can do call pick-p for call group 1,3,4,5. Valid for all lines
;amaflags = ; Sets the default AMA flag code stored in the CDR record
trustphoneip = no ; The phone has a ip address. It could be private, so if the phone is behind NAT
; we don't have to trust the phone ip address, but the ip address of the connection
;earlyrtp = none ; valid options: none, offhook, dial, ringout. default is none.
; The audio strem will be open in the progress and connected state.
private = on ; permit the private function softkey
;mwilamp = on ; Set the MWI lamp style when MWI active to on, off, wink, flash or blink
;mwioncall = off ; Set the MWI on call.
;blindtransferindication = ring ; moh or ring. the blind transfer should ring the caller or just play music on hold
protocolversion = 11 ; skinny version protocol. Just for testing. 0 to 17 (excluding 12-14)
;cfwdall = off ; activate the callforward ALL stuff and softkeys
;cfwdbusy = off ; activate the callforward BUSY stuff and softkeys
;cfwdnoanswer = off ; activate the callforward NOANSWER stuff and softkeys
;devicetable=sccpdevice ;datebasetable for devices
;linetable=sccpline ;datebasetable for lines
;nat=on ; Global NAT support (default Off)
;directrtp=on ; This option allow devices to do direct RTP sessions (default Off)
;allowoverlap=on ; Enable overlap dialing support. (Default is off)
callanswerorder=oldestfirst ; oldestfirst or lastestfirst
;------------------------------ JITTER BUFFER CONFIGURATION --------------------------
;jbenable = yes ; Enables the use of a jitterbuffer on the receiving side of a
; sccp channel. Defaults to "no". An enabled jitterbuffer will
; be used only if the sending side can create and the receiving
; side can not accept jitter. The sccp channel can accept
; jitter, thus a jitterbuffer on the receive sccp side will be
; used only if it is forced and enabled.
;jbforce = no ; Forces the use of a jitterbuffer on the receive side of a sccp
; channel. Defaults to "no".
;jbmaxsize = 200 ; Max length of the jitterbuffer in milliseconds.
;jbresyncthreshold = 1000 ; Jump in the frame timestamps over which the jitterbuffer is
; resynchronized. Useful to improve the quality of the voice, with
; big jumps in/broken timestamps, usually sent from exotic devices
; and programs. Defaults to 1000.
;jbimpl = fixed ; Jitterbuffer implementation, used on the receiving side of a
; sccp channel. Two implementations are currently available
; - "fixed" (with size always equals to jbmaxsize)
; - "adaptive" (with variable size, actually the new jb of IAX2).
; Defaults to fixed.
;jblog = no ; Enables jitterbuffer frame logging. Defaults to "no".
;-----------------------------------------------------------------------------------
;
; Hotline (New in v3/TRUNK)
;
; Setting the hotline Feature on a device, will make it connect to a predefined extension as soon as the Receiver
; is picked up or the "New Call" Button is pressed. No number has to be given. This works even on devices which
; have no entry in the config file or realtime database.
;
; The hotline function can be used in different circumstances, for example at a door, where you want people to be
; able to only call one number, or for unprovisioned phones to only be able to call the helpdesk to get their phone
; set up. If hotline_enabled = yes, any device which is not included in the configuration explicitly will be allowed
; to registered as a guest device. All such devices will register on a single shared line called "hotline".
;
; For example:
hotline_enabled=yes
hotline_context=default
hotline_extension=111
; New Device Template Method Analogous to standard Asterisk Templating Method
[defaultdevice](!) ; default device template
type = device ; specifies that this template is for a device, it will be inherited
keepalive = 60 ; set 0 to disable the keepalive check.
tzoffset = +2
transfer = on ; enable or disable the transfer capability. It does remove the transfer softkey
park = on ; take a look to the compile howto. Park stuff is not compiled by default
cfwdall = off ; activate the callforward stuff and softkeys
cfwdbusy = off
cfwdnoanswer = off
pickupexten = off ; enable Pickup function to direct pickup an extension
pickupcontext = sccp ; context where direct pickup search for extensions. if not set it will be ignored.
pickupmodeanswer = on ; on = asterisk way, the call has been answered when picked up
; off = call manager way, the phone who picked up the call rings the call
dtmfmode = inband ; inband or outofband. outofband is the native cisco dtmf tone play.
; Some phone model does not play dtmf tones while connected (bug?), so the default is inband
imageversion = P00405000700 ; useful to upgrade old firmwares (the ones that do not load *.xml from the tftp server)
deny=0.0.0.0/0.0.0.0 ; Same as general
permit=192.168.1.5/255.255.255.255 ; This device can register only using this ip address
dnd = on ; turn on the dnd softkey for this device. Valid values are "off", "on" (busy signal), "reject" (busy signal), "silent" (ringer = silent) or user to toggle on phone
trustphoneip = no ; The phone has a ip address. It could be private, so if the phone is behind NAT
; we don't have to trust the phone ip address, but the ip address of the connection
nat=on ; Device NAT support (default Off)
directrtp=on ; This option allow devices to do direct RTP sessions (default Off)
earlyrtp = none ; valid options: none, offhook, dial, ringout. default is none.
; The audio strem will be open in the progress and connected state.
private = on ; permit the private function softkey for this device
mwilamp = on ; Set the MWI lamp style when MWI active to on, off, wink, flash or blink
mwioncall = off ; Set the MWI on call.
softkeyset = softkeyset ; use softkeyset with name softkeyset
setvar=testvar=value
[7940](!,defaultdevice) ; add to default device template and create new template named 7940
devicetype = 7940 ; device type (see below)
transfer = off ; enable or disable the transfer capability. It does remove the transfer softkey
park = on ; take a look to the compile howto. Park stuff is not compiled by default
cfwdall = on ; activate the callforward stuff and softkeys
[7960](!,defaultdevice) ; add to default device template and create new template named 7960
devicetype = 7960 ; device type (see below)
park = off ; take a look to the compile howto. Park stuff is not compiled by default
cfwdall = on ; activate the callforward stuff and softkeys
[7970](!,7960) ; add to 7960 device template and create new template named 7970
devicetype = 7970 ; device type (see below)
button = speeddial,Helpdesk, 98112, 98112@hint ; Add SpeedDial to Helpdesk
private = on ; permit the private function softkey for this device
privacy = full ; full = disable hints notification on devices, on = hints showed depending on private key, off = hints always showed
mwilamp = blink ; Set the MWI lamp style when MWI active to on, off, wink, flash or blink
mwioncall = on ; Set the MWI on call.
[SEP001122334455](7960) ; Use Device Template 7960
description = Phone Number One ; Give a description to the Phone (Displayed in the Right Top Corner on the phone)
addon = 7914 ; Has an extension panel on the right of type 7914
button = line, 98011 ; Assign Line 98011 to Device
button = empty ; Assign an Empty Button
button = line, 98012 ; Assign Line 98012 to Device
button = speeddial,Phone 2 Line 1, 98021, 98021@hint ; Add SpeedDial to Phone Number Two Line 1
button = speeddial,Phone 3 Line 1, 98031, 98031@hint ; Add SpeedDial to Phone Number Three Line 1
cfwdall = off ; Overwrite Templated setting
[SEP002244668800](7970) ; Use Device Template 7970
description = Phone Number Two ; Give a description to the Phone (Displayed in the Right Top Corner on the phone)
; Buttons come in the following flavours:
; - empty: Empty button (no options)
; - line: Registers the line with identifier specified as <name>
; - speeddial: Adds a speeddial with label <name> and <option1> as number
; Optionally, <option2> can be used to specify a hint by extension@context as usual.
; - service: Adds a service url
; - Feature buttons have an on/off status represented on the device with a tick-box and can be used to set the device in a particular state.
; Option1 is the feature_name and option2 it's parameter.
; Currently Possible option1,option2 combinations:
; - privacy,callpresent = Make a private call, number is suppressed
; - privacy,hint = Make a private call, hint is suppressed
; - cfwdall,number = Forward all calls
; - cfwbusy,number = Forward on busy
; - cfwnoaswer,number = Forward on no-answer (not implemented yet)
; - DND,busy = Do-not-disturb, return Busy signal to Caller
; - DND,silent = Do-not-disturb, return nothing to caller
; For example:
button = line, 98021 ; Line associated with this phone
button = speeddial,Phone 1 Line 1, 98011, 98011@hint ; SpeedDial to 98011, Hint referes to an asterisk hint defined for this line, it will show when this line is in use and what number is connected to this line
button = speeddial,Phone 1 Line 2, 98012, 98012@hint
button = speeddial,Phone 3 Line One, 98031, 98031@hint
button = feature,Private Call,privacy,callpresent ; Feature Button to set Privacy Phone Calls
button = feature,DND Busy,DND,busy ; Feature Button to send incoming calls a busy signal
button = feature,DND Silent,DND,silent ; Feature Button to send incoming calls a silent signal
[SEP000D28BA9598] ; non templated device
type = device ; specifies that this template is for a device, it will be inherited
devicetype = 7940 ; device type (see below)
description = Muffin
button = line, 256
button = line, 260
;button = speeddial,Phone 1 Line 2, 98012, 98012@hint
;button = speeddial,Phone 2 Line One, 98021, 98021@hint
keepalive = 60 ; set 0 to disable the keepalive check.
;addon = 7914
;addon = 7914
;tzoffset = +2
transfer = off ; enable or disable the transfer capability. It does remove the transfer softkey
park = off ; take a look to the compile howto. Park stuff is not compiled by default
cfwdall = on ; activate the callforward stuff and softkeys
cfwdbusy = on
cfwdnoanswer = on
pickupexten = on ; enable Pickup function to direct pickup an extension
pickupcontext = sccp ; context where direct pickup search for extensions. if not set it will be ignored.
pickupmodeanswer = on ; on = asterisk way, the call has been answered when picked up
dtmfmode = inband ; inband or outofband. outofband is the native cisco dtmf tone play.
imageversion = P00308000900 ; useful to upgrade old firmwares (the ones that do not load *.xml from the tftp server)
;deny=0.0.0.0/0.0.0.0 ; Same as general
;permit=192.168.1.5/255.255.255.255 ; This device can register only using this ip address
dnd = on ; turn on the dnd softkey for this device. Valid values are "off", "on" (busy signal), "reject" (busy signal), "silent" (ringer = silent) or user to toggle on phone
trustphoneip = no ; The phone has a ip address. It could be private, so if the phone is behind NAT
nat=on ; Device NAT support (default Off)
directrtp=on ; This option allow devices to do direct RTP sessions (default Off)
earlyrtp = none ; valid options: none, offhook, dial, ringout. default is none.
private = on ; permit the private function softkey for this device
mwilamp = on ; Set the MWI lamp style when MWI active to on, off, wink, flash or blink
softkeyset = softkeyset ; use softkeyset with name softkeyset
; New Line Template Method
[defaultline](!) ; default template for lines
type = line ; specifies that this template is for lines will be inherited
context = sccp ; default asterisk context
incominglimit = 2 ; more than 1 incoming call = call waiting.
transfer = on ; per line transfer capability. on, off, 1, 0
vmnum = 600 ; speeddial for voicemail administration, just a number to dial
meetme = on ; enable/disable conferencing via app_meetme
meetmeopts = qxd ; options to send to the app_meetme application
meetmenum = 700 ; this extension will receive meetme requests, SCCP_MEETME_ROOM channel variable will
; contain the room number dialed into simpleswitch (this parameter is going to be removed).
trnsfvm = 1000 ; extension to redirect the caller (e.g for voicemail)
secondary_dialtone_digits = 9 ; digits for the secondary dialtone (max 9 digits)
secondary_dialtone_tone = 0x22 ; outside dialtone
musicclass=default ; Sets the default music on hold class
language=en ; Default language setting
audio_tos = 0xB8 ; sets the default audio/rtp packets Type of Service (TOS) (defaults to 0xb8 = 10111000 = 184 = DSCP:101110 = EF)
; Others possible values : 0x??, lowdelay, throughput, reliability, mincost(solaris), none
audio_cos = 6 ; sets the default audio/rtp packets Class of Service (COS) (defaults to 6)
video_tos = 0x88 ; sets the default video/rtp packets Type of Service (TOS) (defaults to 0x88 = 10001000 = 136 = DSCP:100010 = AF41)
video_cos = 5 ; sets the default video/rtp packets Class of Service (COS) (defaults to 5)
echocancel = on ; sets the phone echocancel for this line
silencesuppression = off ; sets the silence suppression for this line
[260](defaultline) ; define line 98001 using template defaultline
id = 260 ; future use
pin = 1234 ; future use
label = 260 ; button line label (7960, 7970, 7940, 7920)
description = Line 98011 ; top diplay description
mailbox = 260 ; voicemail.conf (syntax: vmbox[@context][:folder])
cid_name = MY CID ; caller id name
cid_num = 260 ; caller id number
accountcode=260 ; accountcode to ease billing
callgroup=1,3-4 ; We are in caller groups 1,3,4. Valid for this line
pickupgroup=1,3-5 ; We can do call pick-p for call group 1,3,4,5. Valid for this line
amaflags = 2 ; Sets the default AMA flag code stored in the CDR record for this line
setvar=testvar2=my value
[98012](defaultline)
id = 1001 ; future use
pin = 4356 ; future use
label = Phone 1 Line 2 ; button line label (7960, 7970, 7940, 7920)
description = Line 98012 ; top diplay description
mailbox = 10012 ; voicemail.conf (syntax: vmbox[@context][:folder])
cid_name = MY LINE 2 ; caller id name
cid_num = 98012 ; caller id number
accountcode=79012 ; accountcode to ease billing
callgroup=1,4-9 ; We are in caller groups 1,3,4. Valid for this line
pickupgroup=1,3-9 ; We can do call pick-p for call group 1,3,4,5. Valid for this line
echocancel = off ; sets the phone echocancel for this line (overwrite template)
silencesuppression = on ; sets the silence suppression for this line (overwrite template)
[98021](defaultline)
id = 1002 ; future use
pin = 9987 ; future use
label = Phone 2 Line 1 ; button line label (7960, 7970, 7940, 7920)
description = Line 98021 ; top diplay description
mailbox = 10021 ; voicemail.conf (syntax: vmbox[@context][:folder])
cid_name = ME_ME_ME ; caller id name
cid_num = 98021 ; caller id number
accountcode=79021 ; accountcode to ease billing
callgroup=1 ; We are in caller groups 1,3,4. Valid for this line
pickupgroup=1 ; We can do call pick-p for call group 1,3,4,5. Valid for this line
incominglimit = 1 ; more than 1 incoming call = call waiting. (overwrite template)
adhocnumber = 98012 ; Adhoc Number or Private-line automatic ringdown (PLAR):
; Adhoc/PLAR circuits have statically configured endpoints and do
; not require the user dialing to connect calls.
; - The adhocNumber is dialed as soon as the Phone is taken off-hook or
; when the new-call button is pressed
; - The number will not be dialed when choosing a line; so when you choose
; a line you can enter a number manually.
[256] ; non templated line
type = line ; specifies that this template is for lines will be inherited
id = 256 ; future use
pin = 6573 ; future use
label = 256 ; button line label (7960, 7970, 7940, 7920)
description = Sipgate ; top diplay description
mailbox = 256 ; voicemail.conf (syntax: vmbox[@context][:folder])
cid_name = Jogy ; caller id name
cid_num = 256 ; caller id number
context = default ; default asterisk context
incominglimit = 2 ; more than 1 incoming call = call waiting.
transfer = on ; per line transfer capability. on, off, 1, 0
vmnum = 600 ; speeddial for voicemail administration, just a number to dial
meetmenum = 700 ; this extension will receive meetme requests, SCCP_MEETME_ROOM channel variable will
; contain the room number dialed into simpleswitch.
trnsfvm = 1000 ; extension to redirect the caller (e.g for voicemail)
secondary_dialtone_digits = 9 ; digits for the secondary dialtone (max 9 digits)
secondary_dialtone_tone = 0x22 ; outside dialtone
musicclass=default ; Sets the default music on hold class
language=en ; Default language setting
echocancel = on ; sets the phone echocancel for this line
silencesuppression = off ; sets the silence suppression for this line
accountcode=256 ; accountcode to ease billing
callgroup=2-4 ; We are in caller groups 1,3,4. Valid for this line
pickupgroup=2 ; We can do call pick-p for call group 1,3,4,5. Valid for this line
amaflags = 5 ; Sets the default AMA flag code stored in the CDR record for this line
setvar=testvar2=value
;create a user defined softkeyset
;valid softkeys:
;redial, newcall, cfwdall, cfwdbusy, cfwdnoanswer, pickup, gpickup, conflist, dnd, hold, endcall, park, select
;idivert, resume, newcall, transfer, dirtrfr, answer, transvm, private, meetme, barge, cbarge, conf, back join
[softkeyset]
type=softkeyset
onhook = redial,newcall,cfwdall,dnd
connected = hold,endcall,transfer,park,select,cfwdall,cfwdbusy,idivert
onhold = resume,newcall,endcall,transfer,confrn,select,dirtrfr,idivert
ringin = answer,endcall,idivert
offhook = redial,endcall,private,cfwdall,cfwdbusy,pickup,gpickup,meetme,barge
conntrans = hold,endcall,transfer,confrn,park,select,dirtrfr,cfwdall,cfwdbusy
digitsfoll = back,endcall
connconf = hold,endcall,join
ringout = endcall,transfer,cfwdall,idivert
offhookfeat = redial,endcall
onhint = pickup,barge
; phone types
; 12 -- Cisco Unified IP Phone 12SP+ (or other 12 variants)
; 30 -- Cisco Unified IP Phone 30VIP (or other 30 variants)
; 7902 -- Cisco Unified IP Phone 7902G
; 7905 -- Cisco Unified IP Phone 7905G
; 7906 -- Cisco Unified IP Phone 7906G
; 7910 -- Cisco Unified IP Phone 7910G
; 7911 -- Cisco Unified IP Phone 7911G
; 7912 -- Cisco Unified IP Phone 7912G
; 7935 -- Cisco Unified IP Conference Station 7935
; 7936 -- Cisco Unified IP Conference Station 7936
; 7937 -- Cisco Unified IP Conference Station 7937G
; 7920 -- Cisco Unified IP Wireless Phone 7920
; 7921 -- Cisco Unified IP Wireless Phone 7921G
; 7931 -- Cisco Unified IP Phone 7931G
; 7940 -- Cisco Unified IP Phone 7940G
; 7941 -- Cisco Unified IP Phone 7941G/7941G-GE
; 7942 -- Cisco Unified IP Phone 7942G
; 7945 -- Cisco Unified IP Phone 7945G
; 7960 -- Cisco Unified IP Phone 7960G
; 7961 -- Cisco Unified IP Phone 7961G/7961G-GE
; 7962 -- Cisco Unified IP Phone 7962G
; 7965 -- Cisco Unified IP Phone 7965G
; 7970 -- Cisco Unified IP Phone 7970G
; 7971 -- Cisco Unified IP Phone 7971G-GE
; 7975 -- Cisco Unified IP Phone 7975G
; 7985 -- Cisco Unified IP Phone 7985G
; ata -- Cisco ATA-186 or Cisco ATA-188
; kirk -- Kirk telecom ip phones
; cipc -- Cisco IP Communicator
; nokia-icc -- Nokias ICC Cisco client