четверг, 11 апреля 2013 г.

Son of Rock'n'Rock

I am the son of rock'n'roll 
I got the masses under my control 
I like to drink, I love the dope 
I want your money and I want your hope 

Your money and your hope 
Your money and your hope 
Your money and your hope 

Vaguely epic are my lyrics 
Jealous folks are the only critics 
Top of the world and I know why 
The world is a pigsty 

Son of Rock'n'Roll 
Son of Rock'n'Roll 
Son of Rock'n'Roll 
Son of Rock'n'Roll 

I am a bad motherfucker 
Live long and well thanks to suckers 
Live long and well thanks to suckers 
I am a bad motherfucker 

Gotta say thanks to rock'n'roll 
It got me into a whole lotta holes 
They hear my voice I touch their soul 
Too bad my heart is a heart of coal 

And it don't matter none 
If you make the juices run 
The bank account will stun 

I'm only here for myself 
I've got a big fuck you for everybody else 
Not only empty but empty and loud 
I've yet to make my father proud 

I am a bad motherfucker 
Live long and well thanks to suckers 
Live long and well thanks to suckers 
I am a bad motherfucker 

Get what you can, while you can and get out 
Son of Rock'n'Roll 

I am a bad motherfucker 
Live long and well thanks to suckers 
Live long and well thanks to suckers 
I am a bad motherfucker

среда, 21 сентября 2011 г.

Cisco-Linksys "PROVISION" автоматическая настройка SPA и PAP2T

Суть провижинга заключается в следующем.
На сервере хранятся конфигурационные файлы для каждого устройства в сети, а так же общие шаблоны, используемые всеми девайсами. В общем шаблоне хранятся такие настройки как адрес SIP прокси сервера, используемые аудио кодеки, и пр. В индивидуальных конфигурационных файлах, как минимум, хранятся логин и пароль для каждого порта на устройстве. Как правило, имена индивидуальных конфигурационных файлов содержат в своем имени MAC аддресс соответствующего устройства.
Все Linksys девайсы по factory default настроены на получение IP адреса от DHCP сервера, и название файла с настройками 
init.cfg, (либо spa502G.cfg, spa504G.cfg и т.д. в зависимости от используемого устройства) который будет запрошен по протоколу TFTP. Следовательно, нам нужно:
  • настроить DHCP сервер, что бы он выдавал всем девайсам адрес TFTP сервера
  • Создать файл init.cfg в корневой директроии TFTP сервера, который содержит имена дополнительных файлов с настройками.

Установка и настройка софта

Устанавливаем TFTP и DHCP демоны
  emege dhcp atftp
либо для Centos sudo yum install dhcp-server tftp-server xinetd
Редактируем конфигурационный файлы dhcp демона /etc/dhcp/dhcpd.conf
ddns-update-style               ad-hoc;
log-facility                    daemon;
default-lease-time              21600;
max-lease-time                  21600;

subnet 10.7.30.0 netmask 255.255.255.0 {
  range 10.7.30.100 10.7.30.200;
}

group spa_adapters {
 option tftp-server-name "10.7.30.254";

 host spa-2002_1 {
  hardware ethernet 00:0E:08:FA:B6:10;
  fixed-address 10.7.8.127; }
}
Здесь мы указали DHCP серверу выдавать диапазон адресов 10.7.30.100 
- 10.7.30.200, адрес TFTP сервера 10.7.30.254 а так же одну статическую запись для устройства с MAC адресом 00:0E:08:FA:B6:10, хотя последнее вовсе вовсе не обязательно.
Теперь можно запустить DHCP сервер, включить одно из устройств и проверить что наши настройки работают:
/etc/init.d/dhcpd start
Терь настроим tftp сервер. В /etc/conf.d/atftp пропишем следующее:
emerge atftp
TFTPD_ROOT="/home/tftproot"
TFTPD_OPTS="--daemon --user nobody --group nobody --bind-address 10.7.30.254"
Заетм создадим корневой каталог для tftp демона:
voip1 ~ # mkdir /home/tftproot
voip1 ~ # chown nobody:nobody /home/tftproot
voip1 ~ # chmod 700 /home/tftproot/
И запустим его:
voip1 dhcp # /etc/init.d/atftp start

Для centos настроить xinetd и службу tftp


Создание провижининг файлов для сипур
/home/tftproot/init.cfg:
<flat-profile>

<Profile_Rule_B>/$PN.cfg</Profile_Rule_B>

</flat-profile>
Для Linksys PAP2 макрос $PN имеет значение PAP2T . Следовательно создаем файл/home/tftproot/PAP2T.cfg:
<flat-profile>

<Profile_Rule_C>/$PN_$MAC.cfg</Profile_Rule_C>

<Admin_Passwd>pdtytkrf</Admin_Passwd>
<User_Password>lkhkjhqkwjehrjkqwe</User_Password>
<Syslog_Server>10.7.30.254</Syslog_Server>
<Debug_Server>10.7.30.254</Debug_Server>
<Debug_Level>0</Debug_Level>

<Proxy_1_>10.7.30.254</Proxy_1_>
<Proxy_2_>10.7.30.254</Proxy_2_>
<Dial_Plan_1_>(*xx.|xx.)</Dial_Plan_1_>
<Dial_Plan_2_>(*xx.|xx.)</Dial_Plan_2_>

<Call_Waiting_Serv_1_>no</Call_Waiting_Serv_1_>
<Call_Waiting_Serv_2_>no</Call_Waiting_Serv_2_>
<Three_Way_Call_Serv_1_>no</Three_Way_Call_Serv_1_>
<Three_Way_Call_Serv_2_>no</Three_Way_Call_Serv_2_>
<VMWI_Serv_1_>no</VMWI_Serv_1_>
<VMWI_Serv_2_>no</VMWI_Serv_2_>
<MWI_Serv_1_>no</MWI_Serv_1_>
<MWI_Serv_2_>no</MWI_Serv_2_>

</flat-profile>
О том что означают эти параметры можно узнать на официальном сайте линксиса.

Добавление нового устройства

Для каждого нового устройства, которое мы хотим подключить к Asterisk'у процедура настройки одинаковая и достаточно незамысловатая.
  • Узнать МАС адрес девайса. Он как правило написан на самом устройстве, или его можно обнаружить в системных логах, сразу после подключения устройства в сеть.
  • Создать двух новых юзеров в веб-интерфейсе asterisk-gui
  • Создать файл PAP2T_$MAC.cfg:
    <flat-profile>
    
    <User_ID_1_></User_ID_1_>
    <Password_1_></Password_1_>
    
    <User_ID_2_></User_ID_2_>
    <Password_2_></Password_2_>
    
    </flat-profile>
    
И вписать в него логины и пароли. $MAC в имени файла заменить на МАС адрес, напр. 00:16:b6:91:86:b3. Лог получения конфига:
localhost asterisk # tcpdump \-n \-i eth0 port tftp
tcpdump: verbose output suppressed, use \-v or \-vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 68 bytes

18:51:03.236606 IP 192.168.118.10.27167 > 192.168.118.2.69:  36 RRQ "/init.cfg" octet timeout
18:51:03.277951 IP 192.168.118.10.63719 > 192.168.118.2.69:  37 RRQ "/PAP2T.cfg" octet timeout
18:51:03.334963 IP 192.168.118.10.53191 > 192.168.118.2.69:  55 RRQ "/PAP2T_00:1c:10:c3:3b:f9" [tftp]
  • Перезагрузить линксис. Это так же можно сделать удаленно с сервера при помощи команды curl:
    curl http://10.7.30.200/admin/reboot
    
    В последующем уже нужно будет добавить юзернейм и пароль, который был указан в PAP2T.cfg :
    curl --digest -u admin:pdtytkrf http://10.7.30.200/admin/reboot
    
Если все получилось нормально, то в консоли астериска можно будет наблюдать 2ух новоиспеченных юзеров:
    -- Registered SIP '131' at 10.7.30.198 port 5060 expires 3600
    -- Saved useragent "Linksys/PAP2-3.1.9(LSc)" for peer 131
    -- Registered SIP '132' at 10.7.30.198 port 5061 expires 3600
    -- Saved useragent "Linksys/PAP2-3.1.9(LSc)" for peer 132

Для обновления прошивки надо вызватьhttp://10.X.X.XXX/upgrade?tftp:/10.Y.Y.YYY/filename.bin

Еще можно добавить

&lt;Resync_Periodic ua=&#34;na&#34;&gt; 5
&lt;/Resync_Periodic&gt;
в общий профиль, чтобы каждые 5 сек обновлялся конфиг, тогда не надо телефон перегружать руками.

Comment by litnimax on Mon May 12 08:05:00 2008

Для телефона SPA962 название файлов следуюшие:
  • spa962.cfg (по умолчанию вместо init.cfg), ну а далее как описано в init.cfg.
  • SPA-962.cfg
  • SPA-962_XX:XX:XX:XX:XX

четверг, 23 декабря 2010 г.

Linksys dialplan - диалплан одной строкой

           Устройства Linksys, теперь уже Cisco SOHO,  они же когда-то Sipura, использует синтаксис диалплана в соответствии с протоколом MEGACO (он же H.248) или Media Gateway Control protocol.  Что делает диалплан, и чем он может быть полезен?
           Диалплан в семействе шлюзов PAP2T , SPA2102, SPA3102  и подобных, позволяет направлять вызовы в необходимом направлении, манипулировать номерами так, как  это необходимо. А говоря проще, шлюз позволяет "пустить звонок" куда нужно, изменять номер, добавлять, "отрезать" цифры номера. По умолчанию имеем следующую строку:
(*xx|[3469]11|0|00|[2-9]xxxxxx|1xxx[2-9]xxxxxxS0|xxxxxxxxxxxx.)


Попробуем расшифровать учитывая каждый знак в строке, с помощью таблицы:

Временно интервалОписание
L:timeЗадает длительные timeout интервалы в секундах.
S:timeЗадает короткие интервалы между знаками набора в секундах



ЗнакиОписание
0 1 2 3 4 5 6 7 8 9 0 * #Набираемые знаки.
xЛюбая отдельно набранная цифра.
[sequence]Квадратные скобы задают последовательность цифр, любая из которых может совпадать с набранной.
. (period)Задается период цифр, в который должна попадать набранная цифра.
<dialed:substituted>Угловые скобы задают условную замену, добавление, удаление цифр.
Поле "dialed" содержит набранные цифры либо может быть пустым. Оно будет заменено полем "substituted". Если "substituted" пустое, тогда поле "dialed" удалится.
,(comma)Запятая задает проигрывание сигнала набора tone в необходимый момент.
!(exclamation)Знак восклицания помечает поле знаков которые будут отклонятся при наборе.
S0 or L0Уменьшает межзнаковые интервалы до 0 сек. Используется для переадресации набранного номера вместо выполнение диалплана.
Набор номера и перехват звонка происходит немедленно.
Ptime<:number>Пауза. Time в секундах. Используется для увеличения вариантов набора. Если пауза больше чем надо, выбирается определенная группа знаков number.
|разделяет варианты последовательности набора
___

PAP2T, SPA2102, SPA3102 -даешь VOP в каждый SOHO!!!

              Эти симпатичные "кирпичи" частенько попадаются на глаза в серверных, возле АТС,  дома у хитреньких пользователей, которые пытаются сэкономить на телефонии, или добавить "гибкости" стандартным системам. И заслуженно скажу я вам. При цене около 60уе за PAP2T и 75уе за SPA3102 - это бестселлер! Довольно надежные, качественные решения(а чего стоит логотип CISCO!=)), практически без конкурентов.

             И что по сути представляют из себя эти устройства? SIP шлюзы, совместимые с любым SIP оборудованием и программным обеспечением. Также хорошо сопрягаются  между собой, и с аналоговым оборудованием.
        

Коробочные мозги

По жизни приходится иметь дело в различными коробками, посмотрите вокруг - коробки заполонили мир!
Роутеры, АТС, коммутаторы, тюнеры, шлюзы, XBox , медиа-плееры, компьютеры. Помогают или мешают они нам? И что собственно внутри?