Статьи и заметки об информационных технологиях
Блудная статья
О компании// Статьи// Рубрикатор// Каталог оборудования//
Поиск// Карта сайта// RSS// Ссылки//

Как настроить IP-телефон Cisco 7941 для SIP [13.03.2007]

Настройка IP-телефона Cisco 7941 для работы по протоколу SIP.

IP-телефон Cisco 7941 (как и 7961) поддерживает протокол SIP, но его настройка под него отличается от настройки Cisco 7940, описанной в одной из предыдущих статей (http://www.hypercomp.ru/articles/configuring-cisco-7940-ip-phone-for-sip/). Отличие заключается в основном в структуре прошивки. Телефон Cisco 7941 работает с Java-меню, поэтому вся его прошивка содержит не один файл с именем типа P0S-08-3-1.*, а является архивом с именем типа cmterm-7941_7961-sip.8-2-1.zip, в котором должны находиться следующие файлы:

apps41.8-2-0-55.sbn
cnu41.8-2-0-55.sbn
cvm41sip.8-2-0-55.sbn
dsp41.8-2-0-55.sbn
jar41sip.8-2-0-55.sbn
SIP41.8-2-1S.loads
term41.default.loads
term61.default.loads

Кроме этих файлов, в корне TFTP-сервера, с которого телефон грузит прошивку, должен лежать файл XMLDefault.cnf.xml и, если настройки переопределяются для отдельного телефона, файл SEP.cnf.xml.

Процесс обновления прошивки выглядит следующим образом. Сначала при включении телефона в сети держим нажатой кнопку # секунд 15, до тех пор, пока лампочки возле линий не начнут мигать желтым. После этого нажимаем комбинацию 123456789*0#1 и телефон перезагружается, стирая свою прошивку. Теперь он готов к приему новой. Для этого ему необходим, в первую очередь, файл XMLDefault.cnf.xml. Описания формата этого файла на сайте Cisco найти не удалось – скорее всего он еще не документирован достаточно хорошо. Попробуем разобраться самостоятельно.

XMLDefaults.cnf.xml
-------------------
<device>
  <deviceProtocol>SIP</deviceProtocol>

Далее задаем имя и пароль для доступа к телефону по SSH. Можно посмотреть некоторую debug-информацию, дать команду на перезагрузку и почти все – возможности очень ограничены.

  <sshUserId>root</sshUserId>
  <sshPassword>root</sshPassword>
  <devicePool>
    <dateTimeSetting>
      <dateTemplate>D.M.Y</dateTemplate>
      <timeTemplate>HH:MM</timeTemplate>
      <timeZone>Russian Standard/Daylight Time</timeZone>
      <ntps>
        <ntp>
          <name>130.149.17.21</name>
          <ntpMode>Unicast</ntpMode>
        </ntp>
      </ntps>
    </dateTimeSetting>
    <callManagerGroup>
      <members>
        <member>
          <callManager>
            <ports>
              <ethernetPhonePort>2000</ethernetPhonePort>
              <sipPort>5060</sipPort>
              <securedSipPort>5061</securedSipPort>
            </ports>

Вместо XXX.XXX.XXX.XXX вводим IP-адрес сервера

            <processNodeName>XXX.XXX.XXX.XXX</processNodeName>
          </callManager>
        </member>
      </members>
    </callManagerGroup>
  </devicePool>
  <sipProfile>
  <sipProxies>
    <backupProxy/>
    <backupProxyPort/>
    <emergencyProxy/>
    <emergencyProxyPort/>
    <outboundProxy/>
    <outboundProxyPort/>
    <registerWithProxy>true</registerWithProxy>
  </sipProxies>
  <sipCallFeatures>
    <cnfJoinEnabled>true</cnfJoinEnabled>
    <callForwardURI>x--serviceuri-cfwdall</callForwardURI>
    <callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
    <callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
    <callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
    <meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
    <abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
    <rfc2543Hold>false</rfc2543Hold>
    <callHoldRingback>2</callHoldRingback>
    <localCfwdEnable>true</localCfwdEnable>
    <semiAttendedTransfer>true</semiAttendedTransfer>
    <anonymousCallBlock>2</anonymousCallBlock>
    <callerIdBlocking>2</callerIdBlocking>
    <dndControl>0</dndControl>
    <remoteCcEnable>true</remoteCcEnable>
  </sipCallFeatures>
  <sipStack>
    <sipInviteRetx>6</sipInviteRetx>
    <sipRetx>10</sipRetx>
    <timerInviteExpires>180</timerInviteExpires>
    <timerRegisterExpires>3600</timerRegisterExpires>
    <timerRegisterDelta>5</timerRegisterDelta>
    <timerKeepAliveExpires>120</timerKeepAliveExpires>
    <timerSubscribeExpires>120</timerSubscribeExpires>
    <timerSubscribeDelta>5</timerSubscribeDelta>
    <timerT1>500</timerT1>
    <timerT2>4000</timerT2>
    <maxRedirects>70</maxRedirects>
    <remotePartyID>false</remotePartyID>
    <userInfo>None</userInfo>
  </sipStack>
  <autoAnswerTimer>1</autoAnswerTimer>
  <autoAnswerAltBehavior>false</autoAnswerAltBehavior>
  <autoAnswerOverride>true</autoAnswerOverride>
  <transferOnhookEnabled>false</transferOnhookEnabled>
  <enableVad>false</enableVad>

Поддерживаемые кодеки – G729a, G711, возможно, какие-то еще:

  <preferredCodec>g729a</preferredCodec>
  <dtmfAvtPayload>101</dtmfAvtPayload>
  <dtmfDbLevel>3</dtmfDbLevel>
  <dtmfOutofBand>avt</dtmfOutofBand>
  <alwaysUsePrimeLine>false</alwaysUsePrimeLine>
  <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
  <kpml>3</kpml>

Метка телефона (в верхнем правом углу):

  <phoneLabel>MyPhone</phoneLabel>

Если есть статический внешний IP-адрес, ставим natEnabled=0 и вписываем адрес в natAddress. Если адрес назначается через NAT и он известен, то natEnabled=1. Если же работаем через маршрутизатор с NAT-overload (для домашних сетей – наиболее распространенный случай), то natEnabled=1, а поле natAddress не заполняем.

  <natEnabled>1</natEnabled>
  <natAddress></natAddress>
  <stutterMsgWaiting>1</stutterMsgWaiting>
  <callStats>false</callStats>
  <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
  <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
  <startMediaPort>16384</startMediaPort>
  <stopMediaPort>32766</stopMediaPort>
  <sipLines>

Настройки для кнопок линий

    <line button="1">

Обозначаем, что это кнопка линии

      <featureID>9</featureID>

Метка кнопки, адрес SIP-прокси-сервера

      <featureLabel>MyPhone</featureLabel>
      <proxy>XXX.XXX.XXX.XXX</proxy>
      <port>5060</port>

Имя кнопки, должно совпадать со следующим полем:

      <name>User</name>
      <displayName>User</displayName>
      <autoAnswer>
        <autoAnswerEnabled>2</autoAnswerEnabled>
      </autoAnswer>
      <callWaiting>3</callWaiting>

Имя и пароль для авторизации на SIP-сервере:

      <authName>XXX</authName>
      <authPassword>XXX</authPassword>
      <sharedLine>false</sharedLine>
      <messageWaitingLampPolicy>1</messageWaitingLampPolicy>
      <messagesNumber>voicemail extension</messagesNumber>
      <ringSettingIdle>4</ringSettingIdle>
      <ringSettingActive>5</ringSettingActive>
      <contact>ne</contact>
      <forwardCallInfoDisplay>
        <callerName>true</callerName>
        <callerNumber>false</callerNumber>
        <redirectedNumber>false</redirectedNumber>
        <dialedNumber>true</dialedNumber>
      </forwardCallInfoDisplay>
    </line>
    <line button="2">

А это будет кнопка быстрого набора:

      <featureID>21</featureID>
      <featureLabel>Work</featureLabel>
      <speedDialNumber>1234567</speedDialNumber>
    </line>
  </sipLines>
  <voipControlPort>5061</voipControlPort>
    <dscpForAudio>184</dscpForAudio>
    <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>

Имя файла с номерным планом

    <dialTemplate>dialplan.xml</dialTemplate>
  </sipProfile>
  <commonProfile>
    <phonePassword>cisco</phonePassword>
    <backgroundImageAccess>true</backgroundImageAccess>
    <callLogBlfEnabled>2</callLogBlfEnabled>
  </commonProfile>
  <vendorConfig>
    <disableSpeaker>false</disableSpeaker>
    <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
    <pcPort>0</pcPort>
    <settingsAccess>1</settingsAccess>
    <garp>0</garp>
    <voiceVlanAccess>0</voiceVlanAccess>
    <videoCapability>0</videoCapability>
    <autoSelectLineEnable>0</autoSelectLineEnable>
    <webAccess>1</webAccess>
    <daysDisplayNotActive>1,7</daysDisplayNotActive>
    <displayOnTime>08:30</displayOnTime>
    <displayOnDuration>11:30</displayOnDuration>
    <displayIdleTimeout>0:05</displayIdleTimeout>
    <spanToPCPort>1</spanToPCPort>
    <loggingDisplay>1</loggingDisplay>
    <loadServer/>
  </vendorConfig>
  <networkLocale/>
  <deviceSecurityMode>1</deviceSecurityMode>
  <authenticationURL/>
  <directoryURL/>
  <idleURL/>
  <informationURL/>
  <messagesURL/>
  <proxyServerURL/>
  <servicesURL/>
</device>



del.icio.us News2 Digg Furl ma.gnolia Technorati Cosmos Blinklist Yahoo! My Web BlinkBits Blogmarks Co.mments.com Connotea De.lirio.us Fark Feedmelinks LinkaGoGo NewsVine Netvouz RawSugar ReddIt Scuttle Shadows Simply Smarking Spurl TailRank Wists Segnalo Добавить на Mr. Wong Добавить на Webnews Добавить на  Icio Добавить на Oneview Добавить на Folkd Добавить на Yigg Добавить на Linkarena Добавить на StumbleUpon Добавить на Slashdot Добавить на Netscape Добавить на Google Добавить на Diigo Забобрить эту страницу! Добавить в закладки МоёМесто.ru