Подключаем ip телефон Cisco 7912 к SIP Asterisk

11.03.2010

Сразу оговорюсь что тема очень сложная, на неочевидных глюках я потерял кучу времени, и сейчас мне уже будет трудно восстановить всю последовательность действий. Но я попытаюсь вам все описать так чтобы ничего не пропустить.

Вводная: Из наших прошлых экспериментов с asterisk у нас остался  полность настроенный и рабочий стенд.

Астериск отвечает за SIP звонки, cisco и ccme работает с парочкой телефонов 7912 с прошивкой SSCP (т.е. самые обычные ip телефоны cisco).  Впрочем  вашем случае все може быть не так и особой роли это не играет.

Ставим задачу: сменить прошивку на телефоне cisco 7912 чтобы получить возможность звонить с него через любого SIP провайдера. В нашем случае SIP провайдером является уже настроенный asterisk.

Делаем:

Подготовительная часть. Заводим в asterisk  новый номер для будущего телефона. Пусть это будет 5555 с secret 5555.

Качаем архив в SIP прошивкой для 7912  http://asteriskpbx.ru/raw-attachment/wiki/cisco-7912-sip-mode/7912.tar.gz

теперь нам необходимо найти либо работающий TFTP сервер либо настроить новый. Я попробовал настроить TFTP прямо на Asterisk. Сам сервис запустился, но увы не заработал как надо, не желая отдавать файлы по запросу и я на этом потерял часа 4.  Для тех кому интересно:

Для того что бы настроить TFTP сервис на AsteriskNOW необходимо  в файле /etc/xinetd.d/tftp изменить пункт  disable = yes на  disable = no

В общем от возни с tftp на asterisk я отказался в пользу своего любимого  портативного  сервера TFTPd32 http://tftpd32.jounin.net

Скачанный архив 7912.tar.gz распаковываем в корень настроенного tftp сервера. Архив предназначен для обновления прошивки на версию с SIP.  Теперь нам необходимо указать телефону откуда обновляться.

1. нажимаем MENU key
2.  Settings > Network Configuration Настройки > Сетевые настройки
3. По умолчанию меню заблокировано. Для разблокировки нажимаем  **#
Если запрашивает пароль вводим 1234
4. Выбираем опцию «Alternate TFTP»
5. нажимаем  «Yes»
6. Выбираем опцию «TFTP Server 1»
7. нажимаем «Edit»
8. указываем IP  адрес TFTP сервера
9. нажимаем «Validate»
10. Сохраняемся, нажимаем «Save»
11.Выходим в корневое меню и перезагружаем телефон.
После загрузки телефон  берет с tftp сервера файлик gkdefault.cfg, этот файлик содержит специальным образом отформатированные команды
upgradecode:3,0×601,0x0400,0x0100,0.0.0.0,69,0x060412a,CP7912080001SIP060412A.sbin
UIPassword:1234
Первая указывает на прошивку, а вторая устанавливает пароль на изменение настроек. После получения этого файлика телефон закачивает себе новую прошивку и перезагружается.
На этом месте я долгое время искал почему телефон у меня отказывается брать подготовленные xml файлы с настройками, пока не нашел упоминание что эти файлы используются в друих моделях и прошивках. Та прошивка что есть у меня управляется через файлы gkdefault.cfg или gkMAC
Собственно пример настроек есть в архиве, в файле  sipexample.txt
Все что необходимо изменить его, внеся соответствующие параметры. Я изменил только то что мне было необходимо:
dhcp:1
Proxy:172.16.1.1
UID:5555
PWD:5555
LoginID:555
После того как наш файл с настройками готов, его необходимо конвертировать в формат понятный телефону.  Сохраняем его в папку с распакованным архивом с прошивокй. Запускаем в этой папке команду cfgfmt -tsip_ptag.dat имяподготовленногофайла.txt gkМАКАДРЕСТЕЛЕФОНА
К примеру у меня эта команда выглядела так:
cfgfmt -tsip_ptag.dat gk0011BBA01E10.txt gk0011bba01e10
Обязательно учитывайте регистр в наименовании файлов, т.к. в случае с asterisk, tftp сервис чуствителен к регистру.
Убираем с tftp файлик gkdefault.cfg  и ложим туда наш подготовленный и отформатированный файл с именем содержащим MAC адрес телефона. Перезагружаем телефон и он подхватывает новые настройки и подключается к Asterisk. Ура! Можно звонить
Конечно, помимо использования настроечного файла все можно настроить из меню телефона и рабоать будет точно также, но в случае если у вас этих телефонов не один десяток то управление через tftp себя оправдывает.  А для того что бы телефон знал к каому tftp обращаться достаточно используя ВРСЗ раздать ему опцию 150 указывающую на адрес tftp.
В моем случае я добавил на cisco еще один vlan и привязал к нему  dhcp pool
ip dhcp pool siPhonenetwork
network 172.16.4.0 255.255.255.0
default-router 172.16.4.254
option 150 ip 172.16.1.1

11 комментариев

  • Новичков 16.03.2010 в 4:58 дп

    Огромное человеческое спасбо!

  • roquen 19.01.2011 в 2:39 дп

    Спасибо. Все хорошо. у меня на этом аппарате включена опция vad как отключить?? Прошивка поможет

    • admin 19.01.2011 в 1:34 пп

      наверное поможет. Vad это софтовая фича — ее просто может и не быть в сип прошивке

  • foolish 24.01.2011 в 5:32 пп

    Здравствуйте, у меня несколько телефонов 7912 один из них sccp остальные sip, но со старой прошивкой, так вот на тех телефонах, где была sip прошивка обновление прошло отлично, но тот на котором sccp не хочет ставить sip прошивку, конфиг он грузит, а вот сам файл прошивки нет, если сталкивались подскажите пожалуйста в чем может быть проблема?

    • admin 24.01.2011 в 5:42 пп

      может быть сначала ему нужно сбросить все настройки,… хотя точно не скажу, с таким не встречался

  • foolish 26.01.2011 в 7:00 пп

    Решил свою проблему, телефон при подключении к tftp запрашивал SEP(mak).cnf.XML (чего вроде бы быть не должно в этой модели телефона), создал соответствующий файл со следующим содержимым

    2000

    P0S3-08-4-00
    P0S3-08-4-00

    здесь пишем имя файла прошивки

    Также в корне ftp лежала прошивка от 7911 может это и не требуется.

    • Петр 29.11.2013 в 2:40 пп

      вы не могли бы поподробней рассказать как вы решили эту проблему?
      у меня запрашивает файл SEP(mak).cnf
      создал текстовый фай

      • Петр 29.11.2013 в 2:42 пп

        л с таким содержимым
        2000
        P0S3-08-4-00
        P0S3-08-4-00
        CP7912080001SIP060412A.sbin

        и ноль реакции
        подскажите пожалуйста

  • tim2k 12.04.2011 в 11:41 пп

    Спасибо огромное, по Вашей инструкции настроил аппарат за 5 минут!

  • Александр 13.04.2013 в 11:34 пп

    Скажите пожалуйста. Если астериск слушает нестандартный порт, то как указать это телефону?

  • Ctel 04.07.2016 в 6:04 пп

    я использую вот этот Tftp сервер http://helpform.ru/s0002

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *