Телефоны CISCO 7942G и 7940 в связке с Asterisk 11
Published on 14.10.2015
Попали в мои руки данные аппараты. С Cisco я не очень дружу, потом полез в гугл и таки настроил эти аппараты.
Из коробки телефоны работают с цисовскими протоколами, потому надо сначала прошить на SIP.
Начнем с нуля.
Настроим DHCP.
DHCP в моем случае выступает MikroTik. Добавляем в свойства DHCP сервера 150 опцию со значением ‘10.1.1.1.’, где 10.1.1.1 — ваш будущий TFTP сервер. Прописываем именно с одинарными ковычками. В некоторых случаях говорят указывать как 66 опцию, но с ней у меня не работало.
Поднимаем TFTP
Я все делал на все том же CentOS 6.7. Тут все просто. tftp-server есть в стартовой поставке, потому ставить его не надо. Если что
yum install tftp-server
Включаем его и пусть пишет логи.
nano /etc/xinetd.d/tftp
В этом файле нас интересуют строки server_args и disable.
Первое приводим к виду
-p -c -u root -s /tftpboot -v
Второе просто ставим no.
Создадим папку
mkdir /tftpboot
Ребуетаем и радуемся.
service xinetd restart
Прошивка и настройка 7942G
Собрал файл — настройки, прошивка и русская локаль. Просто разархивируем в корень /tftpboot. Скачать можно тут.
Сразу настроим телефон. В файле SEPmymac.cnf.xml меняем SIP_NUM на номер пользователя на астериске, SIP_PASS соотвественно пароль. Вместо 10.1.1.99 указываем свой сервер телефонии. Сам файл переименовываем — mymac меняем на мак устройства заглавными буквами.
В строке
<timeZone>GMT Standard/Daylight Time</timeZone>
Указываем часовой пояс. У цисок все свое, даже часовые пояса. Часовой пояс Калининграда искал полдня. В итоге вот:
1 Dateline Standard Time -720 2 Samoa Standard Time -660 3 Hawaiian Standard Time -600 4 Alaskan Standard/Daylight Time -540 5 Pacific Standard/Daylight Time -480 6 Mountain Standard/Daylight Time -420 7 US Mountain Standard Time -420 8 Central Standard/Daylight Time -360 9 Mexico Standard/Daylight Time -360 10 Canada Central Standard Time -360 11 SA Pacific Standard Time -300 12 Eastern Standard/Daylight Time -300 13 US Eastern Standard Time -300 14 Atlantic Standard/Daylight Time -240 15 SA Western Standard Time -240 16 Newfoundland Standard/Daylight Time -210 17 South America Standard/Daylight Time -180 18 SA Eastern Standard Time -180 19 Mid-Atlantic Standard/Daylight Time -120 20 Azores Standard/Daylight Time -60 21 GMT Standard/Daylight Time +0 22 Greenwich Standard Time +0 23 W. Europe Standard/Daylight Time +60 24 GTB Standard/Daylight Time +60 25 Egypt Standard/Daylight Time +60 26 E. Europe Standard/Daylight Time +60 27 Romance Standard/Daylight Time +120 28 Central Europe Standard/Daylight Time +120 29 South Africa Standard Time +120 30 Jerusalem Standard/Daylight Time +120 31 Saudi Arabia Standard Time +180 32 Russian Standard/Daylight Time +180 33 Iran Standard/Daylight Time +210 34 Caucasus Standard/Daylight Time +240 35 Arabian Standard Time +240 36 Afghanistan Standard Time +270 37 West Asia Standard Time +300 38 Ekaterinburg Standard Time +300 39 India Standard Time +330 40 Central Asia Standard Time +360 41 SE Asia Standard Time +420 42 China Standard/Daylight Time +480 43 Taipei Standard Time +480 44 Tokyo Standard Time +540 45 Cen. Australia Standard/Daylight Time +570 46 AUS Central Standard Time +570 47 E. Australia Standard Time +600 48 AUS Eastern Standard/Daylight Time +600 49 West Pacific Standard Time +600 50 Tasmania Standard/Daylight Time +600 51 Central Pacific Standard Time +660 52 Fiji Standard Time +720 53 New Zealand Standard/Daylight Time +720
Парой строчек ниже указывается NTP сервер. Я для этих целей поднял его на все том же CentOS, где крутится Asterisk.
Чуть-чуть отвлечемся и поставим
NTP сервер
Для начала установим, если не стоит
yum install ntp
Конфиг лежит в /etc/ntp.conf
Добавляем туда строчку, где указываем подсеть, у которой есть доступ к этому серверу.
restrict 10.0.0.0 mask 255.0.0.0 nomodify notrap
Стартуем сервер
/etc/init.d/ntpd start
Продолжаем с непосредственно
Прошивкой
При включении Cisco 7942 теперь будут пытаться подтянуть конфиг с TFTP сервера. В конфиге так же указана прошивка, её он тоже подтянет. Итого он должен загрузится с нужной прошивкой, настройками и локалью. Это займет время, но весь процесс будет отображаться на экране.
7940
ко мне попал уже прошитый, но логика примерно такая же. Конфиг выглядит следующим образом:
# SIP Default Configuration File # Image Version # image_version: P0S3-8-12-00 # Proxy Server proxy1_address: "10.1.1.99" proxy2_address: ""; proxy3_address: ""; proxy4_address: ""; proxy5_address: ""; proxy6_address: ""; # Proxy Server Port (default - 5060) proxy1_port: 5060 proxy2_port: 5060 proxy3_port: 5060 proxy4_port: 5060 proxy5_port: 5060 proxy6_port: 5060 # Proxy Registration (0-disable (default), 1-enable) proxy_register: 1 # Phone Registration Expiration [1-3932100 sec] (Default - 3600) timer_register_expires: 600 # Codec for media stream (g711ulaw (default), g711alaw, g729a) preferred_codec: g711alaw # NAT/Firewall Traversal nat_enable: 0; 0-Disabled (default), 1-Enabled nat_address: ""; WAN IP address of NAT box (dotted IP or DNS A record only) voip_control_port: 5060; UDP port used for SIP messages (default - 5060) start_media_port: 16384; Start RTP range for media (default - 16384) end_media_port: 32766; End RTP range for media (default - 32766) nat_received_processing: 0; 0-Disabled (default), 1-Enabled # SIP Configuration File # 7940 w/2 lines # Line 1 Parameters line1_name: "SIP_NUM" line1_shortname: "SIP_NUM" line1_authname: "SIP_NUM" line1_contact: "SIP_NUM" line1_displayname: "FirstName LastName" line1_password: "SIP_PASS" # Line 2 Parameters line2_name: "" line2_authname: "" line2_displayname: "" line2_password: "" # Phone Label (Text desired to be displayed in upper right corner) # Has no effect on SIP messaging phone_label: "" # Remote Access Parameters for console or telnet login phone_prompt: "SIP Phone" phone_password: "cisco" user_info: none
Раскомментурем строчку image и указываем версию прошивки. Сами прошивки брать на официальном сайте или на торрентах. Файл конфига называем SIPmymac.cnf — вместо mymac опять таки мак-адрес устройства.
Допиливаем звонки
Для нормальной работы 7942G требуется еще файл dialplan.xml, который так же должен лежать в корне TFTP сервера. Вставляем в него следующее содержимое.
<DIALTEMPLATE> <TEMPLATE MATCH="*" Timeout="3"/> <!-- Anything else --> </DIALTEMPLATE>
Добавляем картинку
/tftpboot/Desktops/320x196x4/List.xml:
<CiscoIPPhoneImageList>
<ImageItem Image="TFTP:Desktops/320x196x4/Logo-TN.png" URL="TFTP:Desktops/320x196x4/Logo.png"/>
</CiscoIPPhoneImageList>
Нам нужно создать одну картинку 320×196 и одну картинку в 4 раза меньше (80×49).
Logo-TN.png — эскиз.
Logo.png — полноценная картинка.
Posted in: