Архитектура Cisco AVVID объединяет голос, видео и данные.

Примечание. Автор благодарит менеджера по развитию бизнеса Cisco Systems Арсения Тарасова за предоставленную информацию, оказавшую большую помощь при написании этой статьи.

IP-телефония... Когда мы слышим это словосочетание, нам обычно вспоминается передача голосового трафика через Internet. Однако IP-телефония этим не ограничивается. Построение современной телекоммуникационной сети тесно связано с необходимостью обеспечения успешного функционирования бизнес-приложений, а также с организацией многофункциональной системы корпоративной телефонии и внедрением видеоприложений, наряду с передачей данных. Для решения этой задачи специалисты компании Cisco Systems разработали архитектурную модель построения сети, обеспечивающую возможность интеграции данных, голоса и видео из различных приложений в рамках единой сетевой инфраструктуры, которая получила название Cisco AVVID - Architecture for Voice, Video and Integrated Data. Ее образуют четыре основные компонента (см. Рисунок 1).
Рисунок 1. Архитектура Cisco AVVID.

1. Интеллектуальная сетевая инфраструктура на базе протокола IP, включающая в себя маршрутизаторы, коммутаторы, шлюзы и другое сетевое оборудование. Инфраструктура IP является основой для дальнейшего внедрения пользовательских приложений и должна обеспечивать поддержку таких жизненно важных для сети служб, как служба безопасности, сетевое управление и механизмы гарантии качества обслуживания (Quality of Service, QoS).

2. Интеллектуальные клиентские места с поддержкой протокола IP, в том числе цифровые IP-телефоны Cisco, персональные компьютеры со специализированным программным обеспечением для решения различных бизнес-задач, программные эмуляторы телефонов (например, Cisco IP SoftPhone), пользовательские видеоприложения и т. д.

3. Служебные серверные приложения, в том числе серверы Cisco CallMa-nager, обеспечивающие управление корпоративной системой IP-телефонии; корпоративная система каталогов; видеосерверы и т. д.

4. Современные пользовательские приложения, возникшие благодаря развитию интегрированных систем с поддержкой голоса, видео и данных: например, система унифицированной обработки сообщений (Unified Messaging) или интеллектуальные центры обработки вызовов. Внедрение подобных приложений позволяет обеспечить дополнительные возможности для пользователей/абонентов корпоративной телекоммуникационной сети и повысить эффективность использования системы.

Характерной особенностью рассматриваемой архитектуры является ее распределенная природа, благодаря которой система легко масштабируется. Сеть на базе архитектуры Cisco AVVID может охватывать одно здание или несколько рядом стоящих зданий, объединенных высокоскоростной сетью. Можно обеспечить услуги телефонии, видео и данных для пользователей удаленных офисов и подразделений, объединенных корпоративной IP-сетью.

Сама архитектура, по существу, состоит из следующих основных компонентов.

  • Специализированные цифровые IP-телефоны Cisco. IP-телефоны подключаются к коммутируемой локальной сети Ethernet 10/100 и работают как традиционные цифровые телефоны, оснащенные некоторыми новыми возможностями.
  • Управляющий сервер Cisco CallMa-nager обеспечивает управление телефонными соединениями и дополнительными службами. Он также предоставляет администратору сети средства для настройки и управления взаимодействием различных компонентов системы IP-телефонии.

Для стыковки с существующими системами традиционной телефонии, в том числе установленными ранее УАТС, и подключения к телефонной сети общего пользования применяются голосовые шлюзы.

Что это дает

Обеспечение телефонных услуг на базе сети передачи данных позволяет избавиться от необходимости эксплуатации раздельных сетей для передачи данных и телефонной связи и обеспечивает дополнительные преимущества, такие, как уменьшение расходов на внедрение, поддержку и расширение объединенной сети. Вот лишь несколько достоинств IP-телефонии:

  • возможность построения единой телекоммуникационной инфраструктуры на базе корпоративной IP-сети;
  • простота построения распределенных телефонных и телекоммуникационных систем за счет распределенной природы архитектуры Cisco AVVID;
  • снижение общей стоимости владения системой;
  • сокращение расходов на каналы за счет возможности эффективного использования каналов для совместной передачи голосового трафика, данных и трафика видеоприложений;
  • сокращение расходов на оплату междугородных переговоров;
  • простота настройки, поддержки и администрирования телекоммуникационной инфраструктуры;
  • возможность применения современных приложений, использующих преимущества интеграции голоса, видео и данных в рамках единой телекоммуникационной инфраструктуры;
  • ориентация на поддержку открытых протоколов и интерфейсов для разработки приложений (API), обеспечивающая возможность интеграции с широким спектром современных приложений;
  • возможность разработки собственных приложений, интегрирующихся с сетями на базе архитектуры Cisco AVVID.

Кроме поддержки традиционных телефонных функций, IP-телефоны Cisco обеспечивают ряд новых возможностей, таких, как доступ к корпоративному справочнику абонентов (с функ-циями поиска и ускоренного дозвона) и к специализированному меню. Использование меню позволяет владельцу IP-телефона получить доступ к информации на Web-серверах.

Новые возможности телефона

Модели IP-телефонов Cis-co 7940 и 7960 имеют жидкокристаллический графический дисплей, на который выводится изображение размером 133x65 пикселов либо несколько строк текста. На сегодня такие телефоны поддерживают только 7-разрядную кодировку символов, т. е. могут отображать только латинский шрифт и спецсимволы. Однако в декабре 2001 г. представители Cisco Systems объявили о выпуске телефона, поддерживающего русскую кодировку символов, хотя в продаже подобные устройства еще не появились. Новые телефоны потребуют новой версии Cisco CallManager.

Вывод любой информации на экран производится с использованием формата XML. Но с помощью телефона можно осуществлять ввод данных. Способ ввода аналогичен способу набора SMS-сообщений на мобильных телефонах, что не очень удобно. Также имеется ограничение на ввод только цифр, букв латинского алфавита и некоторых спецсимволов. Дополнительная информация представлена во врезке «Программируем телефон».

Реализация

Итак, мы рассмотрели основные возможности IP-телефона Cisco. Поставим перед собой задачу вывести на IP-телефон определенную информацию из базы данных MS SQL Server, вводимой посредством Microsoft Sha-rePoint Portal Server 2001. Пример из жизни: компания Exteria разработала подобное приложение для демонстрации преимуществ IP-телефонии руководителям нефтегазовых компаний.

Для написания сценариев выберем технологию ASP и язык VBS, как наиболее простые. Предположим, что база данных расположена на компьютере с именем db, имя базы данных - boss, имя таблицы - boss-table.

Формат записи представлен в Таблице 1.

Так как нам необходимо выводить информацию на русском языке, а современные телефоны такую функцию пока не поддерживают, нам придется выводить информацию в графическом виде. Представим экран телефона в виде двумерного массива строк (display), каждый элемент которого будет содержать в виде строки двоичное значение цвета одного пиксела. Таким образом, чтобы закрасить левый верхний пиксел, необходимо присвоить элементу массива с координатами 0,0 значение «11», т. е. display(0,0)=«11». После того как изображение сформировано в массиве, необходимо правильно его отформатировать. Код программы по форматированию массива и выдаче потока представлен в Листинге 1.

Для вывода информации на экран необходимо сначала извлечь ее из базы данных. Для этого воспользуемся провайдером MS OLE-DB. При вызове в URL передаются значения имени и пароля пользователя, а также смещение относительно начала базы данных (см. Листинг 2).

После того как данные прочитаны, необходимо перевести их в удобную для восприятия форму: выведем их в виде таблицы, гистограммы и графика. В связи с этим возникает две проблемы: вывод символов и графики. Для начала займемся выводом символов. Для этого нужно написать функцию (процедуру), которая будет прорисовывать символы по пикселам (см. Листинг 3). Для прорисовки линии воспользуемся алгоритмом Брезенхема (см. Листинг 4).

Объем выводимой информации ограничен размерами экрана, поэтому необходимо произвести масштабирование (нормализацию) данных до трех значащих цифр, что показано в Листинге 5. Теперь приступим, собственно, к выводу информации. Выведем данные в виде таблицы, используя подготовленные ранее функции преобразования и вывода символов (см. Листинг 6).

Вывод данных в виде гистограммы и графика осуществляется аналогичным образом.

Ввод данных с помощью Microsoft SharePiont Portal Server. Теперь приступим к вводу данных в базу. Для этого воспользуемся Microsoft SharePiont Portal Server, а именно его частью - Digital DashBoard (DDB). Digital Dashboard (DDB) или «электронная информационная панель» - это технология, которая позволяет создавать настраиваемые решения для сотрудников, работающих с информацией. Digital Dashboard может объединять персональную, групповую, корпоративную и внешнюю информацию, предоставляя доступ к различным инструментам анализа и коллективной работы и источникам корпоративных данных, обеспечивая принятие оптимальных бизнес-решений благодаря немедленному доступу к ключевой информации. Преимущество MS DDB заключается в том, что на одном экране можно собрать несколько источников ввода и вывода информации. Также SharePiont Portal Server позволяет осуществить разделение прав пользователей. Создадим небольшой сценарий для добавления записей в базу данных (см. Листинг 7).

Теперь необходимо добавить наш ресурс в MS DDB. В главном окне выбираем Content, потом Create a new Web Part и заполняем параметры ресурса. В нижней части выбираем ссылку Show advanced settings и вводим остальные параметры. Для сохранения параметров нажимаем OK. В результате получаем следующий вид рабочего окна MS DDB (см. Экран 1). В самом центре мы видим результат нашей работы - фрейм Cisco IP Phone.

Экран 1. Описание ресурса в MS DDB.

Таким образом, мы совместили две технологии, ускоряющие и упрощающие доступ к необходимой корпоративной информации. Еще одним достоинством этих технологий является их мобильность. Так, пользователь IP-телефона может получить доступ к интересующим его службам с помощью любого IP-телефона своей компании. Более того, временно этому пользователю может быть назначен любой IP-телефон при вводе идентифицирующей его информации. После этого не только службы, но и звонки будут переводиться на данный телефон. Точно так же и Microsoft SharePiont Portal Server позволяет не только обеспечить мобильность пользователей в корпоративной сети, но и предоставить услуги пользователям по Internet.

Елькин Александр - программист компании Exteria. С ним можно связаться по адресу: AlexandrY@exteria.com.


«Программируем телефон»

Пример кода для вывода на экран заголовка (на верхней строке) и подсказки (на самой нижней строке), которые при прокрутке текста не перемещаются. В середине будет выводиться текст:

Текст должен быть 
здесь
Подсказка находится 
здесь

Следующий блок выводит на экран картинку.

Позиция X
Позиция Y
Ширина
Высота
Количество бит на пиксел
Изображение
Подсказка

Параметры «Позиция X» и «Позиция Y» могут принимать только два значения: 0, -1:

(0,0) - выравнивание картинки по левому верхнему углу;

(-1,-1) - выравнивание по центру дисплея.

Ширина - ширина изображения в пикселах: от 1 до 133.

Высота - высота изображения в пикселах: от 1 до 65.

Количество бит на пиксел - поддерживается только значение, равное 2.

Изображение должно быть отформатировано специальным образом и состоять из шестнадцатеричных цифр (цвет каждого пиксела должен находиться в диапазоне от 0 до 3, где 0 - отсутствие цвета, а 3 - черный цвет).

Таким образом должны быть закодированы все пикселы изображения слева направо и сверху вниз.

Создание графического меню. Изображение одно для всего меню и используется только для подсказки пользователю дальнейших действий. Каждый пункт меню последовательно ассоциируется с кнопками телефона, с помощью которых осуществляется набор номера. Таким образом, количество пунктов меню не должно быть более 10.

 Позиция X
 Позиция Y
Ширина
Высота
Количество бит на 
пиксел 
Изображение
Подсказка

Название пункта 
меню 1
URL, ассоциированный с пунктом 
меню

...

Название пункта меню 10
URL, ассоциированный с пунктом 
меню

Ввод данных осуществляется с помощью следующего блока:

 Подсказка
URL обработчика

Имя параметра
 Имя параметра в 
URL
Флаги
Значение по 
умолчанию

...

Имя параметра
 Имя параметра в 
URL
Флаги
Значение по 
умолчанию

Прим.: только флаг P может быть модификатором, т. е. сочетаться с другими флагами.

Имя параметра - имя, выводимое на экран рядом с полем ввода.

Имя параметра в URL - имя параметра, передаваемое вместе со значением в URL.

Единовременно на телефон может передаваться только один из рассмотренных выше блоков. При попытке передачи двух и более блоков будет выведено сообщение об ошибке. Блоки должны передаваться со значением ContentType, равным text/xml.