- ; (SCCP*)
- ;
- ; An implementation of Skinny Client Control Protocol (SCCP)
- ;
- ; Sergio Chersovani (mlists@c-net.it)
- ; http://chan-sccp.belios.de
- ;
- [general]
- servername = Asterisk ; show this name on the device registration
- keepalive = 60 ; phone keep alive message evey 60 secs. Used to check the voicemail
- debug = 1 ; console debug level. 1 => 10
- context = from-internal
- dateFormat = M/D/YA ; M-D-Y in any order. Use M/D/YA (for 12h format)
- bindaddr = 0.0.0.0 ; 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=ulaw ; Allow codecs in order of preference
- allow=alaw ;
- allow=g729 ;
- firstdigittimeout = 16 ; dialing timeout for the 1st digit
- digittimeout = 4 ; 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=yes ; 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.10.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.10.201/255.255.255.0 ; All RFC 1918 addresses are local networks
- externip = 70.90.xxx.xx ; 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)
- 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
- ;tos = 0x68 ; call control packets tos (0x68 Assured forwarding) [ASTERISK 1.2 only]
- ;rtptos = 0xB8 ; call rtp packets tos (0xB8 E.F.) [ASTERISK 1.2 only]
- tos_sccp = cs3 ; default signaling TOS [ASTERISK 1.4 and above]
- tos_audio = ef ; default audio TOS [ASTERISK 1.4 and above]
- tos_video = af41 ; default video TOS [ASTERISK 1.4 and above]
- ;cos_sccp = 3 ; default signaling COS [ASTERISK 1.6 and above]
- ;cos_audio = 5 ; default audio COS [ASTERISK 1.6 and above]
- ;cos_video = 4 ; default video COS [ASTERISK 1.6 and above]
- ;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
- privacy = on ; full = disable hints notification on devices, on = hints showed depending on private key, off = hints always showed
- 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 = 9 ; skinny version protocol. Just for testing. 0 to 11
- ;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)
- ;------------------------------ 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".
- ;-----------------------------------------------------------------------------------
- [devices]
- type = 7960
- description = John
- tzoffset = 0
- autologin = 9999
- speeddial = 1000,Max,1000@from-internal
- speeddial = 1002,Doug,1002@from-internal
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = John
- tzoffset = 0
- autologin = 9998
- speeddial = 200,Fiesta Homes,200@from-internal
- speeddial = 300,ABC Paint and Body,300@from-internal
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Max ; internal description. Not important
- tzoffset = 0
- autologin = 1000 ; lines list. You can add an empty line for an empty
- speeddial = 2002,Alan ATA,2002@from-internal ; you can add an empty speedial if you want an empty
- speeddial = 1002,Doug,1002@from-internal
- speeddial = 1003,Mariano,1003@from-internal
- speeddial = 1005,Vanessa,1005@from-internal
- speeddial = 1004,Joyce,1004@from-internal
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Conference ; internal description. Not important
- tzoffset = 0
- autologin = 1001 ; lines list. You can add an empty line for an empty
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Doug ; internal description. Not important
- tzoffset = 0
- autologin = 1002 ; lines list. You can add an empty line for an empty
- speeddial = 1005,Vanessa,1005@from-internal ; you can add an empty speedial if you want an empty
- speeddial = 1000,Max,1000@from-internal
- speeddial = 95756442526,Jerry,95756442526
- speeddial = 1004,Joyce,1004@from-internal
- speeddial = *281,Day/Night,*281
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Mariano ; internal description. Not important
- tzoffset = 0
- autologin = 1003 ; lines list. You can add an empty line for an empty
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Joyce ; internal description. Not important
- tzoffset = 0
- autologin = 1004 ; lines list. You can add an empty line for an empty
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Vanessa ; internal description. Not important
- tzoffset = 0
- autologin = 1005 ; lines list. You can add an empty line for an empty
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Ruben
- tzoffset = 0
- autologin = 3001
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Javier
- tzoffset = 0
- autologin = 3002
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Alan
- tzoffset = 0
- autologin = 2000
- nat = on
- directrtp = on
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Devona
- tzoffset = 0
- autologin = 2001
- speeddial = 2000,Alans Desk,2000@from-internal
- speeddial = 2002,ATA,2002@from-internal
- speeddial = 1005,Vanessa,1005@from-internal
- speeddial = 1004,Joyce,1004@from-internal
- speeddial = 1002,Dougie Boy,1002@from-internal
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Judi
- tzoffset = 0
- autologin = 6000
- speeddial = *97,VM,*97
- speeddial = *286,Day Night Voicemail,*286
- speeddial = 7000,Holiday Storage,7000@from-internal
- device => SEPxxxxxxxxxxxx
- type = 7960
- description = Holiday
- tzoffset = 0
- autologin = 7000
- speeddial = *97,VM.*97
- speeddial = *287,Day Night Voicemail,*287
- speeddial = 6000,Discount Storage,6000@from-internal
- device => SEPxxxxxxxxxxxx
- ; This is an example config with multiple phones
- ; 08/2005 Stefan Gofferje
- [lines]
- ;label = 6000 ; button line label (7960, 7970, 7940, 7920)
- ;description = Office ; top diplay description
- ;context = from-internal
- ;callwaiting = 1
- ;incominglimit = 4 ; 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
- label = 1000
- description = Max
- context = from-internal
- cid_name = Max
- callwaiting = 2
- incominglimit = 3
- cid_num = 1000
- conference = on
- mailbox = 1000
- vmnum = *97
- line => 1000
- label = 1001
- description = Conference
- context = from-internal
- cid_name = Conf
- callwaiting = 2
- incominglimit = 3
- cid_num = 1001
- conference = on
- mailbox = 1001
- vmnum = *97
- line => 1001
- label = 1002
- description = Doug
- context = from-internal
- cid_name = Doug
- callwaiting = 2
- incominglimit = 3
- cid_num = 1002
- conference = on
- mailbox = 1002
- vmnum = *97
- line => 1002
- label = 1003
- description = Mariano
- context = from-internal
- cid_name = Conf
- callwaiting = 2
- incominglimit = 3
- cid_num = 1003
- conference = on
- mailbox = 1003
- vmnum = *97
- line => 1003
- label = 1004
- description = Joyce
- context = from-internal
- cid_name = Joyce
- callwaiting = 2
- incominglimit = 3
- cid_num = 1004
- conference = on
- mailbox = 1004
- vmnum = *97
- line => 1004
- label = 1005
- description = Vanessa
- context = from-internal
- cid_name = Vanessa
- callwaiting = 2
- incominglimit = 3
- cid_num = 1005
- conference = on
- mailbox = 1005
- vmnum = *97
- line => 1005
- label = 2000
- description = Alan
- context = from-internal
- cid_name = Alan
- callwaiting = 2
- incominglimit = 3
- cid_num = 2000
- conference = on
- mailbox = 2000
- vmnum = *97
- line => 2000
- label = 2001
- description = Devona
- context = from-internal
- cid_name = Devona
- callwaiting = 2
- incominglimit = 3
- cid_num = 2001
- conference = on
- mailbox = 2001
- vmnum = *97
- line => 2001
- label = 3001
- description = Ruben
- context = from-internal
- cid_name = Ruben
- callwaiting = 2
- incominglimit = 3
- cid_num = 3001
- conference = on
- mailbox = 3001
- vmnum = *97
- line => 3001
- label = 3002
- description = Javier
- context = from-internal
- cid_name = Javier
- callwaiting = 2
- incominglimit = 3
- cid_num = 3002
- conference = on
- mailbox = 3002
- vmnum = *97
- line => 3002
- label = 6000
- description = Judi
- context = from-internal
- cid_name = Judi
- callwaiting = 2
- incominglimit = 3
- cid_num = 6000
- conference = on
- mailbox = 6000
- vmnum = *97
- line => 6000
- label = 7000
- description = Holiday
- context = from-internal
- cid_name = Holiday
- callwaiting = 2
- incominglimit = 3
- cid_num = 7000
- conference = on
- mailbox = 7000
- vmnum = *97
- line => 7000
- label = 9998
- description = John Grandle
- context = from-internal
- cid_name = John Grandle
- callwaiting = 2
- incominglimit = 3
- cid_num = 9998
- conference = on
- mailbox = 9998
- vmnum = *97
- line => 9998
- ; 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
- ; 7914 -- Your device plus two 7914 addons (deprecated)
- ; ata -- Cisco ATA-186 or Cisco ATA-188
- ; kirk -- Kirk telecom ip phones
- ; cipc -- Cisco IP Communicator
- ; nokia-icc -- Nokias ICC Cisco client