суббота, марта 28, 2009

Debian Lenny

Недавно установил себе сей дистрибутив. Пришлось сразу повозиться с сетевушкой и звуковой картой, но в итоге всё заработало как надо. Поставил систему, собрал ядро. Скорость работы на глаз выше чем в Windows XP раза в полтора. Всё работает как надо, даже странно. Помниться, в Этч наблюдались перебои со стабильность систему(хотя, скорее всего, дело было в руках). Поставил виртуальную машину Qemu, планирую заняться изучением Kamailio(бывший Openser), т.к. по работе в скором времени может пригодится. Ну и вообще погонять различные сервисы ради интереса.

Asterisk + SCCP

Итак, техническая тематика. Сегодня я хочу написать про Asterisk в связке с протоколом SCCP. Настраивая телефон под данный протокол, я нашёл много полезной информации, но порой большая её часть сводится к первоначальной установке и настройке протокола и Asterisk, я же постараюсь обобщить полученные знания и поделиться опытом, полученным мною при изысканиях.
Итак, что мы имеем? В наличии аппарат Cisco 7960 + консоль к нему 7914, система Centos - 4.5, Asterisk - 1.2.26.1 из репозитария (Trixbox) , версия прошивки SCCP для телефона - P00308000800, версия протокола для Asterisk - 20071213.
Для начала перепрошиваем телефон на SCCP, для этого в вашей сети должен быть поднят tftp-сервер. Забрасываете на него прошивку для телефона и создаёте там же файлы
xmlDefault.CNF.XML SEP[mac-адрес].cnf.xml .
Мой SEP[mac-адрес].cnf.xml :



и xmlDefault.CNF.XML:


Этих файлов должно хватить для того, чтобы телефон поднялся и начал работать.
После этого, нужно установить поддержку протокола SCCP на Asterisk. Берём последний chan-sccp с sourceforge.net:
cd /usr/src
wget http://downloads.sourceforge.net/chan-sccp-b/chan_sccp_20090110.tar.gz?use_mirror=heanet

Доставляем в систему пакеты asterisk-devel и spandsp-devel:
yum install asterisk-devel spandsp-devel

Устанавливаем chan-sccp в систему. Описывать сам процесс не буду, сложного там ничего нету.
После того, как установили модуль, идём в директорию /etc/asterisk, создаём там конфиг sccp.conf примерно следующего содержания:

[general]
keepalive = 10 ;IMPORTANT: 5secs. lead to trouble with 7960
context = custom-test
dateFormat = D.M.YA ; M-D-Y in any order (5 chars max)
bindaddr = 10.15.1.150 ; replace with the ip address of the asterisk server
port = 2000 ; listen on port 2000 (Skinny, default)
debug = 4
accountcode=skinny ; accountcode to ease billing
callwaiting_tone = 0x2d ; sets to 0 to disable the callwaiting tone
language=ru ; 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
callgroup= 1
pickupgroup= 1
cfwdall = off ; activate the callforward ALL stuff and softkeys
cfwdbusy = off ; activate the callforward BUSY stuff and softkeys
private = on ; permit the private function softkey
dnd = reject ; turn on the dnd softkey for all devices. Valid values are "off", "on" (busy s$
mwioncall = off
mwilamp = off
firstdigittimeout = 8 ; dialing timeout for the 1st digit
digittimeout = 5 ; more digits
digittimeoutchat = #
disallow = all
allow = alaw
allow = ulaw


[devices]
type = 7960
description = test
tzoffset = 0
autologin = 220
imageversion=P00308010100
device => SEP000F8FFBA358

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

После этого в modules.conf добавляем

noload => chan_skinny.so

Перезагружаем астериск и радуемся своим успехам))