Исходные данные: имя и телефон (или несколько телефонов), которые добавляются на сервер, чтобы телефоны могли получить данную информацию по сети. Это могут быть конфигурации, но в данной инструкции не рассматриваются.
Необходимо реализовать схему, которая приведена на рисунке 1.
Аппаратная часть – сервер (ECSS-10, Softswith), SIP-телефон (snom320) и TFTP-сервер, на котором хранятся телефонные номера.
Также базу телефонной книги можно хранить на сервере Softswith.Рисунок 1 - Схема стенда
Содержимое телефонной книги
- Home - 528002;
- Friend – 534303;
- Russian President – 8-913-1234567.
Телефон snom320 может получать настройки и телефонную книгу по протоколу XCAP (XML Configuration Access Protocol).
Алгоритм работы: когда пользователь подключает телефон к сети, устройство передает мультиадресный запрос SUBSCRIBE с событием event=ua-profile на адрес 224.0.1.75.
SSW проверяет, есть ли запрашивающее устройство в базе (по производителю, модели, версии, MAC-адресу).
Если устройство найдено, то шлет ответ 200, и затем запрос NOTIFY с адресом сервера и путем к файлу конфигурации, рисунок 2.Рисунок 2 - Алгоритм работы
Создание файла телефонной книги.
У каждого телефона свой формат данных телефонной книги и прочих конфигураций. Для каждого производителя (модели устройства) нужно создать свой файл, который находится на сайте производителя телефона. Например, для телефонов snom 320 XML-файл называется phonebook.xml и имеет следующую структуру (исходя из нашего примера):
<?xml version="1.0" encoding="utf-8"?> <tbook e="2"> <item context="" type="" fav="false" mod="true" index="0"> <number>528002</number> <number_type>sip</number_type> <first_name>home</first_name> </item> <item context="" type="" fav="false" mod="true" index="1"> <number>534303</number> <number_type>sip</number_type> <first_name>friend</first_name> </item> <item context="active" type="" fav="false" mod="true" index="2"> <number>87771234567</number> <number_type>sip</number_type> <first_name>russian president</first_name> </item> </tbook>
Сохраняем в XML, размещаем на TFTP-сервере.
Настройка на SSW.
Добавляем SIP-телефон в базу ECSS-10 с помощью команды add:
domain/<DOMAIN>/sip/ua-profile/<TYPE>/add <VENDOR> <MODEL> <VERSION> <MAC>
где:
<TYPE> - тип профиля: device, user, local-network;
<VENDOR> - производитель;
<MODEL> - модель (опциональный параметр);
<VERSION> - версия (опциональный параметр);
<MAC> - MAC-адрес определенного устройства (опциональный параметр).Любой параметр, кроме VENDOR, может заменить символ "*". Можно, например, прописать конфигурацию по версиям без указания определенной модели или MAC-адреса и т.п.
Если введены не все параметры, то значение "*" будет присвоено всем оставшимся параметрам.
При попытке добавления уже существующего описания будет выдана соответствующая ошибка: "This definitions is exists".Пример:
Определяем MAC-адрес устройства и прописываем его на сервере (ECSS-10):
domain/test.domain/sip/ua-profile/device/add snom * * 000413316E5C
Указываются ссылки на соответствующие директории с XML-файлами на сервере (ECSS-10) c помощью команды set:
domain/<DOMAIN>/sip/ua-profile/<TYPE>/set <VENDOR> <MODEL> <VERSION> <MAC> [--path <PATH>] [--effective-by <EFFECTIVE-BY>]
где:
<TYPE>, <VENDOR>, <MODEL>, <VERSION>, <MAC> - описание приведено выше;
<PATH> - адрес расположения файла конфигурации или телефонной книги (для SNOM файл должен называться phonebook.xml). Значение по умолчанию: "/TYPE/VENDOR".
<EFFECTIVE-BY> - тайм-аут применения изменений устройством (0 - применить сразу). Значение по умолчанию 0.Пример:
domain/test.domain/sip/ua-profile/device/set snom * * 000413316E5C --path tftp://192.168.18.16/phonebook.xml
Для удаления записи используется команда del:
domain/<DOMAIN>/sip/ua-profile/<TYPE>/del <VENDOR> <MODEL> <VERSION> <MAC> [--force]
где:
<TYPE>, <VENDOR>, <MODEL>, <VERSION>, <MAC> - описание приведено выше.
--force - не спрашивать подтверждение.
Удаление "*" - это удаление записей со значением параметра "*".
Если нужно удалить всю группу - параметр не должен быть указан. Например, для удаления всех версий определенной модели ввод команды заканчивается указанием модели.
Проверка параметров на сервере (ECSS-10) с помощью команды info.
Проверка параметров выполняется следующей командой CLI:
domain/<DOMAIN>/sip/ua-profile/<TYPE>/info <VENDOR> <MODEL> <VERSION> <MAC>
где:
<TYPE>, <VENDOR>, <MODEL>, <VERSION>, <MAC> - описание параметров приведено выше. Все параметры опциональны, можно ограничить вывод на любом уровне.
Пример:
elena@[ds1@ecss1]:/$ domain/test.domain/sip/ua-profile/device/info Executed on the sip1@ecss1 --------------------------------------------------------------------------------------------------- | Type | Vendor | Model | Version | MAC addr | Path | Effective-By | |------+--------+-------+---------+-------------+----------------------------------+--------------| |device| snom | * | * |000413316e5c |tftp://192.168.18.16/phonebook.xml|0 | --------------------------------------------------------------------------------------------------- [exec at: 31.03.2015 15:23:16, exec time: 145ms, nodes: sip1@ecss1]
Проверка работы.
Телефонная книга отображается в меню аппарата или в WEB-интерфейсе телефона во вкладке Operation=>Directory, рисунок 3.
Рисунок 3 – Переданная телефонная книга на SIP-телефоне фирмы snom
Обзор
Инструменты контента
Приложения
Активность