RU2459371C2 - Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи - Google Patents

Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи Download PDF

Info

Publication number
RU2459371C2
RU2459371C2 RU2009109214/07A RU2009109214A RU2459371C2 RU 2459371 C2 RU2459371 C2 RU 2459371C2 RU 2009109214/07 A RU2009109214/07 A RU 2009109214/07A RU 2009109214 A RU2009109214 A RU 2009109214A RU 2459371 C2 RU2459371 C2 RU 2459371C2
Authority
RU
Russia
Prior art keywords
conference
component
mcu
session
client
Prior art date
Application number
RU2009109214/07A
Other languages
English (en)
Other versions
RU2009109214A (ru
Inventor
Дхига Д. СЕКАРАН (US)
Дхига Д. СЕКАРАН
Шон Д. ПИРС (US)
Шон Д. ПИРС
Шон Д. КОКС (US)
Шон Д. КОКС
Срикантх ШОРОФФ (US)
Срикантх ШОРОФФ
Павел КЕРТИС (US)
Павел КЕРТИС
Дэвид НИКОЛС (US)
Дэвид Николс
Бимал К. МЕХТА (US)
Бимал К. МЕХТА
Вадим ЭЙДЕЛЬМАН (US)
Вадим ЭЙДЕЛЬМАН
Виджай Кишен Хампапур ПАРТАСАРАТИ (US)
Виджай Кишен Хампапур ПАРТАСАРАТИ
Орит ЛЕВИН (US)
Орит ЛЕВИН
Гур КИМЧИ (US)
Гур КИМЧИ
Original Assignee
Майкрософт Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2009109214A publication Critical patent/RU2009109214A/ru
Application granted granted Critical
Publication of RU2459371C2 publication Critical patent/RU2459371C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4038Arrangements for multi-party communication, e.g. for conferences with floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4046Arrangements for multi-party communication, e.g. for conferences with distributed floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/4061Push-to services, e.g. push-to-talk or push-to-video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Изобретение относится к области конференцсвязи в сетях передачи данных. Технический результат заключается в уменьшении требуемых ресурсов для администрирования систем конференцсвязи. Сущность изобретения заключается в том, что в масштабируемой подключаемой многосторонней и распределенной мультимедийной конференцсвязи централизованный компонент политик и управления конференцсвязью обеспечивает прозрачное подключение различных распределенных мультимедийных компонентов (к примеру, данных, аудио/видео, обмена сообщениями), чтобы приспосабливать участие клиента в сеансе конференции. Централизованный компонент управления конференциями включает в себя следующее: службу уведомлений о конференциях для приема подписок на состояние конференции и уведомления абонентов об изменениях этого состояния; службу управления политиками конференций и списками для сохранения и управления политикой конференций и списками; службу обеспечения безопасности для авторизации/аутентификации пользователей на основе идентификационной информации пользователей; службу диспетчеризации для диспетчеризации конференции; службу выделения для выделения самого доступного мультимедийного компонента(ов) для сеанса конференции; и службу управления MCU для управления политиками конференций и списками распределенных мультимедийных компонентов. 3 н. и 17 з.п. ф-лы, 28 ил.

Description

Уровень техники
Технологические усовершенствования вычислительных устройств и организации сетей продолжают предоставлять большие возможности доступа к широкому спектру информации и услуг, обеспечивая доступ практически из любой точки мира. Виртуальные офисы становятся общепринятыми, поскольку работа, которая должна выполняться, может быть осуществлена из большинства мест.
Операторы и поставщики сетей (как сотовых, так и несотовых) тратят огромные суммы денег и ресурсы на инфраструктуру для того, чтобы поддерживать множество типов портативных устройств и мультимедиа, существующих сегодня, и тех, которые появятся на рынке в будущем. Например, операторы сотовой связи стараются предоставить инфраструктуру, которая позволяет клиенту сотовой связи осуществлять доступ к IP-сетям (к примеру, Интернету) и ассоциативно связанным IP-службам через сотовую сеть. Таким образом, клиент сотовой связи теперь может осуществлять доступ к информации, которая доступна в IP-сетях. Аналогично, вычислительные устройства могут проводить сеансы связи по IP-сетям и даже подключаться к пользователям сотовой связи.
Коммерческие фирмы все еще осознают важность встреч, например, для того чтобы эффективно разрабатывать и продвигать продукты. Тем не менее, объединение пользователей с целью, чтобы вести дела, из множества удаленных местоположений, в которых они могут находиться, и поддержка множества доступных устройств связи и типов мультимедиа остается перспективной, но сложной задачей.
Конференцсвязь может быть эффективным средством, посредством которого служащие корпоративного предприятия, к примеру, могут проводить собрания. Однако, учитывая местоположение и возможности подключения в любой момент времени, участники, возможно, захотят присоединяться через различные типы мультимедиа. С усовершенствованиями в технологиях хранения и вычислительной мощности портативных беспроводных вычислительных устройств, пользователи теперь способны взаимодействовать со многими видами различных типов данных, таких как изображения, видеоклипы, аудиоданные и текстовые данные, например. Кроме этого, пользователь типично может иметь несколько типов устройств, чтобы подключиться к сеансу. Например, один пользователь может участвовать посредством аудио/видео из конференцзала, другой - посредством голоса через настольный компьютер, а еще один - посредством текстового ввода с помощью сотового телефона.
Такие различные мультимедийные возможности традиционно рассматривались на уровне сервера посредством локальной консолидации возможностей обработки мультимедиа. Тем не менее, это проблематично в том, что больше ресурсов требуется для того, чтобы администрировать такие системы, и такие системы труднее масштабировать для того, чтобы удовлетворить потребности конференцсвязи.
Раскрытие изобретения
Далее представлено упрощенное раскрытие для того, чтобы предоставить базовое понимание некоторых аспектов раскрытого усовершенствования. Это раскрытие не является всесторонним обзором, и оно не предназначено для того, чтобы определять его ключевые/важнейшие элементы или разграничивать объем. Его единственная цель - представить некоторые понятия в упрощенной форме в качестве вступления в более подробное описание, которое представлено далее.
В данном документе раскрыта архитектура, которая описывает масштабируемую, подключаемую архитектуру для многосторонней мультимедийной конференцсвязи. Предоставляется платформа для централизованного компонента политик и управления, который обеспечивает прозрачное подключение различных распределенных мультимедийных компонентов, таких как многоточечные устройства управления (MCU). Архитектура конференции поддерживает множество подключаемых распределенных мультимедийных компонентов для различных типов мультимедиа (к примеру, данных, аудио/видео, мгновенного обмена сообщениями) для клиентского участия в сеансе.
Например, чтобы удовлетворить потребность в конференцсвязи, клиент осуществляет доступ (к примеру, через Интернет-подключение) к централизованному компоненту управления, также называемому компонентом Focus, запрашивая, чтобы сеанс конференции был создан, диспетчеризован или для участия в текущем сеансе. Компонент управления включает в себя возможность подключать и выделять соответствующий мультимедийный интерфейс (к примеру, аудио, видео, данные) для клиента, конфигурировать мультимедийный интерфейс так, чтобы удовлетворять запрошенному клиентом типу мультимедиа, предоставлять управление сеансами для сеанса конференции и чтобы управлять закрытием и очисткой сеанса для всех ассоциативно связанных клиентов и систем.
Централизованный компонент управления конференциями также предоставляет службы диспетчеризации и создание экземпляра сеанса (через компонент Focus Factory). Контроллер конференции также включает в себя функциональность, чтобы выделять один или более из самых доступных распределенных мультимедийных компонентов (через компонент Media Factory) для сеанса конференции. Компонент управления конференциями также выступает в качестве службы управления политиками конференций и списками. Сервер политик конференций - это логическая функция, которая позволяет сохранять и обрабатывать политику конференций и списки. Политика конференций - это полный набор правил, управляющих работой конференции, и она может быть разделена на политику членства и мультимедийную политику.
Компонент управления конференциями включает в себя службу уведомлений о конференциях, которая является логической функцией, которая позволяет компоненту Focus выступать в качестве уведомителя, принимающего подписки на состояние конференции и уведомляющего абонентов об изменениях этого состояния. Состояние включает в себя состояние, поддерживаемое самим компонентом Focus, политикой конференции и мультимедийной политикой, например. Компонент управления конференциями также выполнен с возможностью обеспечивать безопасность сеанса через службы аутентификации и/или авторизации пользователей на основе идентификационной информации и/или PIN-кода. Централизованный контроллер конференции также взаимодействует с распределенными мультимедийными компонентами (к примеру, MCU) для служб управления политиками конференций и списками. Архитектура конференцсвязи предоставляет участникам конференции одно изображение конференции с помощью одного интегрированного списка из компонента Focus и позволяет управлять конференцией через этот компонент Focus.
В поддержку вышеозначенного, архитектура, раскрытая и приведенная в формуле изобретения данного документа, содержит машинореализованную систему конференцсвязи, которая включает в себя компонент управления конференциями для централизованного управления сеансом конференции и распределенный мультимедийный компонент для взаимодействия клиента с сеансом конференции с помощью типа мультимедиа. Мультимедийный компонент может быть в любом месте (к примеру, в Интернете), тем самым обеспечивая доступ, к примеру, через HTTP. Централизованный контроллер не обязательно должен что-либо знать о распределенном мультимедийном компоненте.
Для осуществления вышеупомянутых и связанных целей определенные иллюстративные аспекты раскрытого изобретения описаны в данном документе в связи с нижеследующим описанием и прилагаемыми чертежами. Эти аспекты, тем не менее, указывают только на некоторые из множества способов, которыми могут быть использованы принципы, раскрытые в данном документе, и имеют намерение включать в себя все такие аспекты и их эквиваленты. Другие преимущества и новые признаки должны стать очевидными из следующего подробного описания, если рассматривать их вместе с чертежами.
Краткое описание чертежей
Фиг. 1 иллюстрирует машинореализованную систему конференцсвязи для распределенного мультимедийного доступа.
Фиг. 2 иллюстрирует методологию управления сеансом конференции, используя распределенные мультимедийные компоненты, в соответствии с раскрытой архитектурой конференцсвязи.
Фиг. 3 иллюстрирует более подробную методологию управления сеансами.
Фиг. 4 иллюстрирует более подробную блок-схему системы, которая упрощает создание сеанса конференции с использованием веб-компонента управления конференциями и распределенных мультимедийных компонентов.
Фиг. 5 иллюстрирует поток данных между участниками, в котором клиент сети интранет взаимодействует с ними, чтобы создавать и присоединяться к конференции.
Фиг. 6 иллюстрирует примерную подробную схему архитектуры компонентов для реализации системы конференцсвязи.
Фиг. 7 иллюстрирует схему примерной архитектуры сервера и протоколов для конференцсвязи и распределенных MCU.
Фиг. 8 иллюстрирует примерную блок-схему последовательности операций вызова для инициализации создания конференции через веб-интерфейс/службу.
Фиг. 9 иллюстрирует примерную блок-схему последовательности операций вызова для инициализации создания конференции через механизм SIP Invite.
Фиг. 10 иллюстрирует примерную блок-схему последовательности операций вызова для инициализации создания конференции через механизм SIP Service.
Фиг. 11 иллюстрирует примерную блок-схему последовательности операций вызова для входящего коммутируемого подключения клиента к конференции.
Фиг. 12 иллюстрирует примерную блок-схему последовательности операций вызова для присоединения клиента через MCU совместной работы с данными посредством входящего коммутируемого подключения addUser.
Фиг. 13 иллюстрирует примерную блок-схему последовательности операций вызова для присоединения клиента через аудио/видео-MCU посредством исходящего коммутируемого подключения addUser.
Фиг. 14 иллюстрирует примерную блок-схему последовательности операций вызова для присоединения клиента через прямое приглашение в MCU.
Фиг. 15 иллюстрирует примерную блок-схему последовательности операций вызова для специального (ad hoc) приглашения другому клиенту-участнику, имеющего результатом входящее коммутируемое подключение.
Фиг. 16 иллюстрирует примерную блок-схему последовательности операций вызова для специального (ad hoc) исходящего коммутируемого подключения INVITE к другому клиенту.
Фиг. 17 иллюстрирует примерную блок-схему последовательности операций вызова при использовании перенаправления.
Фиг. 18 иллюстрирует примерную блок-схему последовательности операций вызова, которая обрабатывает создание конференции отдельно от присоединения клиента к конференции.
Фиг. 19 иллюстрирует систему пула серверов, которая совместно использует состояние среди нескольких экземпляров приложений компонента Focus, выполняющихся на различных внешних интерфейсных машинах в пуле.
Фиг. 20 иллюстрирует примерную блок-схему последовательности операций вызова двух отдельных диалогов "клиент-компонент Focus" с помощью экземпляра компонента Focus.
Фиг. 21 иллюстрирует примерную блок-схему последовательности операций вызова, когда клиент выдает команду C3P для изменения состояния конференции.
Фиг. 22 иллюстрирует команды C3P, которые могут быть использованы в соответствии с распределенной архитектурой конференцсвязи MCU.
Фиг. 23 иллюстрирует пул из нескольких серверов, где внешние интерфейсные серверы имеют эквивалентную функциональность.
Фиг. 24 иллюстрирует конфигурацию пула из нескольких серверов для характеристик высокой доступности и восстановления после сбоя.
Фиг. 25 иллюстрирует представление топологии различных типов потоков данных между объектами архитектуры распределенных мультимедийных компонентов.
Фиг. 26 иллюстрирует полную архитектуру конференцсвязи, использующую подключаемые и распределенные мультимедийные компоненты.
Фиг. 27 иллюстрирует блок-схему компьютера, выполненного с возможностью осуществлять централизованную и распределенную конференцсвязь в соответствии с раскрытой архитектурой.
Фиг. 28 иллюстрирует схематическую блок-схему примерного вычислительного окружения, которое упрощает распределенную мультимедийную конференцсвязь.
Осуществление изобретения
Изобретение далее описывается со ссылками на чертежи, на которых одинаковые ссылочные позиции используются для ссылок на одинаковые элементы. В нижеследующем подробном описании в целях пояснения многие конкретные детали объяснены для того, чтобы обеспечить его полное понимание. Тем не менее, может быть очевидным, что изобретение может быть осуществлено на практике без этих конкретных деталей. В других случаях, распространенные структуры и устройства показаны в форме блок-схемы, чтобы упростить его описание.
Раскрытая архитектура является масштабируемой подключаемой архитектурой для сеансов многосторонних мультимедийных конференций. Централизованный компонент политик и управления конференцсвязью обеспечивает прозрачное подключение различных распределенных мультимедийных компонентов (к примеру, данных, аудио/видео, обмена сообщениями), чтобы приспосабливать участие клиента в сеансе конференции. Централизованный компонент управления конференциями включает в себя следующее: службу уведомлений о конференциях для приема подписок на состояние конференции и уведомления абонентов об изменениях этого состояния; службу управления политиками конференций и списками для сохранения и управления политикой конференций и списками; службу обеспечения безопасности для авторизации/аутентификации пользователей на основе идентификационной информации пользователей; службу диспетчеризации для диспетчеризации конференции; службу выделения для выделения самого доступного мультимедийного компонента(ов) для сеанса конференции; и службу управления MCU для управления политиками конференций и списками распределенных мультимедийных компонентов.
Фиг. 1 иллюстрирует компьютеризованную систему 100 конференцсвязи для распределенного мультимедийного доступа. Система 100 является подключаемой архитектурой конференцсвязи, которая поддерживает несколько подключаемых распределенных мультимедийных систем для доступа участниками сеанса через ряд различных устройств. Для поддержки этого система 100 включает в себя сетевой компонент 102 управления конференциями для централизованного создания и управления сеансом конференции. Компонент 102 управления системы 100 взаимодействует так, чтобы управлять одним или более распределенных мультимедийных компонентов 104 (обозначенных МУЛЬТИМЕДИЙНЫЙ КОМПОНЕНТ1,..., МУЛЬТИМЕДИЙНЫЙ КОМПОНЕНТN, где N - это положительное целое число), таких как многоточечные устройства управления (MCU), которые дополнительно предоставляют клиентский доступ к сеансу конференции посредством клиентов 106 (обозначенных КЛИЕНТ и КЛИЕНТ1,..., КЛИЕНТM, где М - это положительное целое число) через подобные и/или различные мультимедийные режимы (к примеру, аудио, видео).
MCU - это система, которая упрощает подключение и управление для одного или клиентских типов мультимедиа. Мультимедиа обменивается непосредственно между клиентом и MCU. Традиционные системы не используют MCU, которые содержат, по меньшей мере, распределенные возможности MCU, предоставляемые в соответствии с раскрытой новой архитектурой.
Другими словами, чтобы удовлетворить потребность в конференцсвязи, клиент 108 осуществляет доступ (к примеру, через Интернет-подключение) к компоненту 102 управления, запрашивая создание сеанса конференции. Компонент 102 управления упрощает выделение соответствующих мультимедийных компонентов 104 (к примеру, мультимедийных компонентов 110 и 112) для участников сеанса (к примеру, клиент 108 и КЛИЕНТ1, КЛИЕНТ2 и КЛИЕНТ3) и их требуемого типа подключения (к примеру, аудио, видео,...), управление интерфейсом мультимедийных компонентов 104, конфигурирование одного или более мультимедийных компонентов 104, чтобы удовлетворить запрашиваемые потребности конференцсвязи, управление сеансами во время сеанса и закрытие и очистку сеанса для всех ассоциированных систем.
Фиг. 2 иллюстрирует методологию управления сеансом конференции с помощью распределенных мультимедийных компонентов в соответствии с раскрытой архитектурой конференцсвязи. Хотя в целях упрощения пояснения методологии одна или более методологий, показанных в данном документе, например, в форме блок-схемы алгоритма или блок-схемы последовательности операций, показаны и описаны как последовательность действий, необходимо понимать и принимать во внимание, что настоящее изобретение не ограничено порядком действий, поскольку некоторые действия могут, в соответствии с ним, выполняться в другом порядке и/или параллельно с действиями, отличными от действий, показанных и описанных в данном документе. Например, специалисты в данной области техники должны понимать и принимать во внимание, что методология может быть альтернативно представлена как последовательность взаимосвязанных состояний или событий, к примеру, на диаграмме состояний. Более того, не все проиллюстрированные действия могут потребоваться для того, чтобы реализовать методологию в соответствии с изобретением.
На этапе 200 центральный компонент управления конференциями предоставляется для администрирования сеансов конференции. На этапе 202 один или более мультимедийных компонентов (к примеру, MCU) предоставляются распределенным и адресуемым способом посредством компонента управления для подключения участников сеанса через одинаковые или различные типы мультимедиа (к примеру, мгновенный обмен сообщениями, аудио). На этапе 204 запрос принимается для клиента для создания сеанса конференции. На этапе 206 компонент управления создает экземпляр конференции. На этапе 208 информация о доступе возвращается клиенту для осуществления доступа к сеансу. На этапе 210 компонент управления оценивает доступность мультимедийных компонентов для поддержки участников и запрошенных участвующих типов мультимедиа. На этапе 212 компонент управления выделяет один или более из мультимедийных компонентов для ожидаемых типов мультимедиа сеанса. На этапе 214 участники уведомляются относительно сеанса. На этапе 216 компонент управления упрощает обработку безопасности посредством аутентификации доступа участника к сеансу.
Фиг. 3 иллюстрирует более подробную методологию управления сеансами. На этапе 300 клиент подключается к веб-компоненту управления конференциями с помощью веб-адреса. На этапе 302 клиент отправляет информацию о конференции компоненту управления. Эта информация включает в себя установочную и конфигурационную информацию для сеанса, такую как, например, информация об участниках, время и данные сеанса и типы мультимедиа, чтобы поддерживать доступ участников. На этапе 304 компонент управления создает экземпляр сеанса и возвращает URI (универсальный идентификатор ресурса) для сеанса и один или более URI для мультимедийных компонентов, выделенных для сеанса. На этапе 306 клиент передает информацию о URI участникам. Сеанс начинается, и на этапе 308 участники уведомляются относительно изменений в состоянии сеанса. На этапе 310 компонент управления упрощает создание и завершение альтернативной непрослушиваемой конференции во время сеанса. На этапе 312 участники сеанса уведомляются относительно вышедших из сеанса (участниках, которые вышли), сеанс закрывается, и система выполняет очистку (к примеру, закрывая MCU, экземпляр сеанса и т.д.).
На фиг. 4 проиллюстрирована более подробная блок-схема системы 400, которая упрощает создание сеанса конференции с помощью веб-компонента 402 управления конференциями и распределенных мультимедийных компонентов 404. Система 400 включает в себя компонент 402 управления конференциями (также упоминаемый в данном документе как компонент Focus), который является централизованным контроллером конференции. Компонент 402 Focus включает в себя компонент 406 уведомлений, который предоставляет службу уведомлений о конференциях. Служба уведомлений о конференциях - это логическая функция, предоставляемая компонентом 402 Focus. Компонент 402 Focus может выступать в качестве уведомителя посредством принятия подписок на состояние конференции и уведомления абонентов (или участников) об изменениях этого состояния.
Компонент 402 Focus также включает в себя компонент 408 политик/списков конференций для предоставления служб управления политиками и списками. Сервер политик конференций, как часть компонента 408, является логической функцией, которая может сохранять и обрабатывать политику/список конференций. Политика конференций - это полный набор правил, управляющих работой конференции, и она разделяется на политику членства и мультимедийную политику. Состояние, отслеживаемое посредством компонента 406 уведомлений, включает в себя состояние, поддерживаемое посредством самого компонента 402 Focus, политику конференций и мультимедийную политику.
Компонент 402 Focus также включает в себя компонент 410 диспетчеризации/компонент Focus Factory, который обеспечивает диспетчеризацию конференций. Компонент 412 аутентификации предусматривает обработку авторизации и аутентификации пользователей на основе идентификационных данных (к примеру, активный каталог) или с помощью PIN-кода. Компонент 414 интерфейса MCU упрощает взаимодействие с множеством распределенных мультимедийных компонентов 404 (к примеру, MCU 404) (обозначенных MCU1, MCU2,..., MCUT, где T - это положительное целое число) для управления политиками/списками конференции. Компонент 402 Focus включает в себя компонент 416 выделения MCU (также упоминаемый как компонент MCU Factory), функция которого состоит в том, чтобы выделять самый доступный сетевой MCU 404 из сети 418 (к примеру, Интернета) для сеанса конференции. Система 400 также включает в себя подключаемых участников конференции (обозначаемых как КЛИЕНТЫ 420), которые получают одинаковое изображение конференции с одним интегрированным списком из основного компонента Focus и могут управлять конференцией через этот компонент Focus.
Фиг. 5 иллюстрирует поток данных между участниками, когда клиент сети интранет взаимодействует с ними, чтобы создавать и присоединяться к конференции. В раскрытой централизованной архитектуре конференцсвязи есть один (или главный) компонент Focus, видимый всем участникам конференции. Этот компонент Focus является единой центральной точкой обмена служебными сигналами для участников одной конференции. Каждая конференция идентифицируется посредством уникального маршрутизируемого URI конференции по протоколу SIP (протокол инициирования сеанса). Как правило, этот URI выполняет маршрутизацию в компонент Focus, реализованный посредством MCU, выступающего в качестве хоста для конференции.
Чтобы предоставить улучшенное взаимодействие с пользователем, система вводит идею основного компонента Focus, при этом все URI конференции маршрутизируются на основной компонент Focus. Клиентские пользователи авторизуются для того, чтобы участвовать в конференциях, посредством компонента Focus, они получают уведомления об изменениях в состоянии конференции от компонента Focus, и все операции управления конференциями выдаются клиентами в основной компонент Focus.
Компонентами архитектуры являются клиент 500, компонент 502 Focus Factory, компонент 504 Focus, компонент 506 Focus Factory 502 и MCU 508. Одна из основных характеристик раскрытой архитектуры конференцсвязи - это использование нескольких компонентов, которые работают распределенным способом, а не в традиционной цельной серверной архитектуре.
Клиент 500 конференции является конечной точкой, допускающей присоединение и участие в конференции. Клиент 500 сначала взаимодействует с компонентом 502 Focus Factory, чтобы создавать конференцию.
Компонент 502 Focus Factory является объектом, который создает компонент 504 Focus для конференции. Компонент 502 Focus Factory направляет клиента 500 в соответствующее местоположение компонента Focus, где конференция должна быть проведена. Компонент 502 Focus Factory является приложением, которое выполняется на внешней интерфейсной машине SIP как конечная точка SIP, и которое адресуется с помощью URI SIP.
Компонент 502 Focus Factory является SIP-адресуемым, а также адресуемым с помощью URI HTTP (протокол передачи гипертекста) и SOAP (простой протокол доступа к объектам). В одной реализации архитектуры компонент 502 Focus Factory располагается совместно с компонентом 504 Focus; в другой он не располагается совместно с ним. Каждый пул конференцсвязи может быть рассмотрен как компонент Focus Factory.
Компонент 504 Focus является централизованным менеджером политик и состояний для сеанса конференции. Компонент 504 Focus является конечной точкой SIP, которая представляет конференцию и выступает в качестве центрального координатора для всех аспектов конференции. Компонент 504 Focus отвечает за осуществление политики управления конференциями, управление полной безопасностью для конференции, уведомление об обновлениях состояния конференции для клиента(ов) и предоставление канала для команд управления, проходящих между клиентом 500 и MCU 508.
Компонент 504 Focus также взаимодействует с MCU для каждого типа мультимедиа, который является частью конференции, от имени всех клиентов. Компонент 504 Focus хранит все состояния, необходимые для ответа на запросы о конференции или состоянии, необходимые для того, чтобы возобновлять собрание, если происходит сбой одного внешнего интерфейсного сервера. Информация о конференции может быть сохранена в базе данных сервера SQL (язык структурированных запросов) для будущего использования до очистки сеанса. Экземпляр компонента Focus выполняется в пуле конференцсвязи. Это позволяет клиентам подключаться к любому внешнему интерфейсному серверу в пуле, тем самым обеспечивая лучшую доступность, распределение нагрузки и лучшее масштабирование. Компонент 504 Focus также отвечает, например, за MCU самозагрузки и поддержание подключений к MCU по интерфейсу HTTP. Компонент 504 Focus в некоторых случаях также может выступать в качестве прокси-сервера, чтобы пропускать через прокси-сервер команды и уведомления C3P (или CCCP - протокол канала управления конференциями). Это описывается ниже.
Идея компонента Focus является центральной в конференции согласно SIPPING. SIPPING - это рабочая группа IETF (Инженерная группа по развитию Интернета), нанятая для задания расширений конференцсвязи в SIP. Привилегия SIPPING состоит в том, чтобы задавать схему пакетов событий состояния конференции.
Компонент 506 MCU Factory является идеей SIPPING, и он выделяет MCU 508 сеансу конференции для конкретного типа мультимедиа. Компонент 506 MCU Factory отвечает за инициализацию конференции для конкретного типа мультимедиа по MCU 508 с помощью локальной политики для создания конференций. Компонент 506 MCU Factory может также учесть текущую загрузку на MCU перед назначением MCU для конференции. В одной реализации может быть один компонент 506 MCU Factory на тип мультимедиа.
MCU 508 отвечает за управление одним или более типов мультимедиа. В одном сценарии раскрытой архитектуры все команды управления конференциями отправляются посредством клиентов 500 в компонент 504 Focus, который далее ретранслирует эти команды в соответствующий MCU 508 после верификации того, что клиент 500, который отправил запрос, имеет права доступа выполнить ту операцию. Далее мультимедиа обменивается непосредственно между клиентом 500 и MCU 508.
Типы MCU могут включать в себя MCU совместной работы с данными, аудио/видео-MCU, MCU IM (мгновенный обмен сообщениями) и MCU ACP (поставщик аудио-конференцсвязи). Надлежащим образом спроектированные сторонние MCU могут подключаться к архитектуре, чтобы улучшить удобство работы участников, например, для аудио/видео-расширений. Архитектура обеспечивает простое добавление MCU, как это требуется в будущем. Например, надлежащим образом спроектированный MCU может быть предоставлен для совместного использования приложений или чата.
Далее приводится более подробная схема потока данных, который включает в себя каналы связи, семантику и тип данных, которыми обмениваются между компонентами.
Обмен данными клиента/компонента Focus Factory по фиг. 5 (обозначен 1) начинается посредством нахождения сначала клиентом 500 компонента 502 Focus Factory. Клиентское приложение обменивается данными с компонентом 502 Focus Factory, чтобы начать новую конференцию. Как пояснено выше, поскольку клиентское приложение запрашивает URI компонента Focus Factory, когда пользователь предъявляет пароль, клиент 500 имеет средство обмениваться данными с компонентом 502 Focus Factory в любое время, чтобы начать новую специальную конференцию. Клиента 500 не интересует то, на котором сервере из пула серверов, например, находится компонент 502 Focus Factory; ему требуется только URI SIP компонента Focus Factory для того, чтобы соединиться.
В раскрытой архитектуре создать конференцию означает создание и конфигурирование экземпляра компонента Focus. Задача компонента 502 Focus Factory состоит в том, чтобы возвратить URI компонента 504 Focus обратно клиенту 500. Это означает, что сеанс связи между клиентом 500 и компонентом 502 Focus Factory не должен быть длительным, а должен иметь достаточную продолжительность, чтобы продолжаться до тех пор, пока URI компонента Focus не будет возвращен клиенту 500. Компонент 503 Focus Factory создает (в случае необходимости) и конфигурирует компонент 504 Focus прежде, чем он возвратит URI компонента Focus обратно клиенту 500.
Клиент 500 может передать всю информацию, которая ему требуется, относительно определений роли конференции, типов мультимедиа, прав доступа, участников в компонент 502 Focus Factory заранее, так что компонент 502 Focus Factory может возвратить ответ об успешном выполнении с конечными данными.
Относительно связи компонента Focus Factory/компонента Focus по фиг. 5 (обозначена 2), после приема запроса от клиента 500, компонент 502 Focus Factory создает компонент 504 Focus и возвращает URI компонента Focus клиенту 500 (обозначенный 3). Компонент 504 Focus, точно так же, как компонент 502 Focus Factory, является конечной точкой SIP, представленной посредством приложения. Компонент 502 Focus Factory перенаправляет запрос, который он принимает от клиента 500, компоненту 504 Focus, давая возможность компоненту 504 Focus стать конечной точкой, которая выполняет согласование мультимедиа с клиентом 500. После передачи URI компонента Focus клиенту 500 компонент 502 Focus Factory не должен поддерживать какое-либо состояние или выполнять какую-либо работу.
Компонент 506 MCU Factory является логическим объектом, который предоставляет информацию о доступе для MCU 508. Компонент 506 MCU Factory может быть специализированной реализацией для поставщиков устройств или программного обеспечения MCU. Компонент 504 Focus знает через настройки то, какие компоненты MCU Factory присутствуют в системе и какие типы мультимедиа они поддерживают. Соответственно, компонент 504 Focus запрашивает у компонента 506 MCU Factory информацию о том, как входить в контакт с MCU 508 (обозначен 4), и компонент 506 MCU Factory возвращает эту информацию на основе любой внутренней логики, которой может следовать (обозначено 4).
Когда компонент 506 MCU Factory запрашивается, чтобы предоставить MCU 508 в компонент 504 Focus (обозначен 4), он выясняет, какой MCU 508 лучше всего подходит для того, чтобы ответить на этот запрос, и возвращает URL (универсальный указатель ресурса) для этого MCU 508. Каждый MCU может быть опубликован (к примеру, в активном каталоге), обеспечивая возможность всем компонентам 506 MCU Factory в топологии найти доступный MCU нужного вида.
Каждый MCU 508 также публикует свой HTTP-адрес для управления в активном каталоге. Этот адрес является тем, который передается в компонент 504 Focus, когда компонент 506 MCU Factory выделяет ресурс 508 MCU. Однако прежде чем URL передается в компонент 504, компонент 506 MCU пытается обеспечить конференцию по MCU 508 (обозначено 5). Если ответ MCU положительный, то URL возвращается компоненту 504 Focus.
Компонент 504 Focus может затем может обмениваться данными с MCU 508 (обозначено 6), используя HTTP в качестве транспорта. Рабочие данные для запросов и ответов могут быть XML-документами. Клиент 500 обменивается данными с MCU 508 (обозначено 7) через протокол сигнализации и мультимедийный протокол. Для аудио/видео-MCU протокол сигнализации - это мультимедиа SIP, и может переноситься по RTP/RTCP. Для MCU собрания как сигнализация, так и мультимедиа могут переноситься по HTTP в качестве транспорта, используя протокол PSOM.
Фиг. 6 иллюстрирует примерную подробную схему архитектуры компонентов для реализации системы 600 конференцсвязи. Система 600 включает в себя внешний интерфейсный компьютер 602, систему 604 хранения и распределенные мультимедийные компоненты 606. Внешний интерфейсный компьютер 602 включает в себя серверный процесс 608, который выступает в качестве прокси-сервера 610 SIP. В дополнение к работе в качестве прокси-сервера SIP и маршрутизатора, серверный процесс 608 также предоставляет внутренний API (называемый API модулей расширения) 612, который используется посредством сервера (или модуля) 614 присутствия (и регистрации), модуля 616 агента архивации и модуля 618 API SIP. Как показано, все эти модули 612 расширения могут запускаться в одном процессе. Никакой код третьей стороны не требуется запускать в процессе 610 прокси-сервера SIP.
Модуль 614 присутствия/регистрации предоставляет функциональность присутствия и регистрации. Модуль 614 присутствия и регистрации управляет всей регистрационной информацией и информацией о присутствии в базе данных SQL Server (или MSDE).
Комбинация прокси-сервера SIP и ассоциированных модулей расширения упоминается вместе как внешний интерфейс сервера. Как указано, функциональность внешнего интерфейса расширена, для включения функций конференцсвязи, через модуль 618 конференцсвязи (также упоминаемый как менеджер конференции). Менеджер 618 конференции является серверным компонентом, который предоставляет сигнализацию и функциональность управления конференцией. Основными элементами менеджера 618 конференции являются компонент Focus и компонент Focus Factory.
Как указано выше, компонент Focus - это конечная точка SIP, которая представляет конференцию. Он отвечает за управление состоянием конференции, осуществление безопасности, администрирование ролей и прав доступа и предоставление обновления состояния конференции клиенту(ам) (не показано). Компонент Focus также взаимодействует с MCU для каждого типа мультимедиа, который является частью конференции, от имени всех клиентов.
База 620 данных конференции содержит информацию о каждой из конференций, инициализированных на сервере 602. Она включает в себя информацию об идентификаторе конференции, паролях и/или PIN-кодах, ассоциированных с конференцией, начальном времени и конечном времени (если есть), ролях и правах доступа и т.д. База 620 данных также включает в себя информацию о запущенной конференции для восстановления после сбоев компонента Focus. Информация о присутствии/регистрации и информация о конференцсвязи могут быть различными таблицами одной физической базы данных (к примеру, базы данных конференции).
Каждый MCU отвечает за администрирование одного или более типов мультимедиа. В одной реализации все команды управления конференциями отправляются посредством клиентов компоненту Focus, который далее ретранслирует эти команды в соответствующий MCU после верификации того, что клиент, который отправил запрос, имеет полномочия для выполнения этой операции. Мультимедиа затем обменивается непосредственно между клиентом и MCU.
MCU состоит из двух логических частей: мультимедийный контроллер (MC) и мультимедийный процессор (MP). Мультимедийный контроллер отвечает за администрирование команд управления между компонентом Focus и MCU. Мультимедийный процессор отвечает за мультимедийное управление, такое как, например, смешивание, ретрансляция, транскодирование. Если MCU - это MCU совместной работы с данными, мультимедийный процессор является сложным программным компонентом, который отвечает за администрирование всем опытом совместной работы с данными. Каждый MCU может сохранять свое содержимое и информацию о состоянии в ассоциированных модулях памяти для поиска, если происходят ошибки и/или сбой.
Если MCU - это аудио/видео-MCU, мультимедийный процессор имеет очень специализированное знание о смешивании аудио и видеопотоков, стыковке видеопотоков, преобразовании с понижением частоты мультимедиа для клиентов, которые находятся на медленных линиях связи, и так далее. Из всех компонентов конференцсвязи мультимедийный процессор может быть наиболее затратным в отношении ресурсов процессора и сети. Соответственно, MCU функционируют на физическом компьютере, отличном от менеджера конференции, что также предусматривает масштабирование. В одной реализации мультимедийный контроллер и мультимедийный процессор располагаются на одной машине, чтобы упростить развертывание. В альтернативной реализации мультимедийный контроллер и мультимедийный процессор размещаются на различных машинах 604.
Внешний интерфейсный компьютер 602 также может запускать веб-сервер 622, который включает в себя веб-службы и приложение 624 веб-диспетчеризации, и компонент 626 MCU Factory. Как указано ранее, компонент 626 MCU Factory отвечает за инициализацию конференции для конкретного типа мультимедиа на MCU, используя локальную политику для создания конференций. Компонент 626 MCU Factory может также учесть текущую загрузку на MCU перед назначением MCU для конференции. Данные балансировки нагрузки могут быть сохранены в базе 628 данных балансировки нагрузки. В этой конкретной реализации есть один компонент MCU Factory на тип мультимедиа. Тем не менее, в альтернативной реализации один компонент MCU Factory является в надлежащей мере отказоустойчивым, чтобы обрабатывать несколько различных типов мультимедиа.
Возможности совместной работы в Интернете могут быть предоставлены посредством MCU совместной работы с данными. MCU совместной работы с данными разработан на основе технологии PSOM. MCU совместной работы с данными поддерживает такие возможности, как, например, документы программного обеспечения презентаций, документы обработки текстов и электронных таблиц, чат, голосование, доска сообщений и совместное использование приложений.
Аудио/видео-MCU предоставляет возможности многостороннего смешивания и ретрансляции аудио и видео на основе стандарта RTP (транспортный протокол в реальном масштабе времени) и RTCP (протокол управления RTP). Другие MCU могут быть разработаны и предоставлены, такие как, например, MCU мгновенного обмена сообщениями (IM) и MCU ACP.
Веб-сервер 624 предоставляет приложение диспетчеризации (к примеру, ASP.NET) для диспетчеризации сетевых конференций. Приложение использует API веб-служб для инициализации конференций и для администрирования политиками конференций. Базой данных, используемой для регистрации событий веб-диспетчера, может быть база 620 данных компонента Focus/конференцсвязи. Содержимое и состояние для MCU могут быть сохранены в локальных хранилищах 630 данных.
Службы также могут предоставляться для универсального хранилища и представлений для администрирования текущих собраний с помощью метаданных собрания, таких как планы заданий, действия, контроль сроков выполнения, документы, ассоциированные с совместно используемым рабочим пространством и т.д.
Аутентификация может быть сделана интегрированной частью архитектуры конференцсвязи. В одной реализации регистрационные данные входа в систему пользователя могут использоваться для автоматической аутентификации пользователя (к примеру, принцип единственной подписи). Аутентификация по формам также может быть предоставлена (к примеру, имя пользователя и пароль) для веб-форм, где пользователь явно вводит свое имя пользователя и пароль. Авторизация может быть осуществлена на основе скрытого объекта, который защищенным образом передается клиентом на серверы после начального обмена аутентификационными данными. Стойкое шифрование транспортного канала от клиента к серверам (к примеру, 128-битовое шифрование) также может быть наложено.
Веб-конференцсвязь может предусматривать наличие сетевого собрания с пользователями, которые могут не иметь учетной записи в службе или компании. Эти одноразовые собрания достаточно распространены. Аутентификация одноразовых участников конференции может поддерживаться посредством назначения уникального пароля для каждого сеанса, который сообщается потенциальным участникам через внеполосные средства, к примеру, электронную почту.
Есть несколько ситуаций, где авторизация может быть сделана обязательной в приложении конференцсвязи. Конференции занимают ресурсы на сервере/службе. Следовательно, принудительная авторизация может быть наложена прежде, чем пользователям разрешается создавать конференции. В другом примере, в данной конференции все пользователи не имеют всех прав доступа. Например, определенному подмножеству пользователей разрешается выполнять презентации и говорить в сеансе, в то время как другому подмножеству пользователей разрешается только слушать. В другом примере не всем пользователям в конференции разрешается приглашать других пользователей присоединяться. Предусмотрены действия управления конференциями, такие как включение/отключение звука для конференции, включение/отключение звука для конкретного пользователя или удаление пользователя из конференции и т.д. Каждое из этих действий может быть выполнено с возможностью сначала потребовать права доступа или разрешения.
Набор пользователей с этими правами доступа может быть различным для каждой из конференций. Каждая конференция потенциально имеет различное членство, и даже когда пользователь авторизован для участия в нескольких конференциях, этот пользователь может иметь различные права доступа на каждой из этих конференций. По этой причине проще задавать набор "ролей", ассоциировать набор "прав доступа" с этими ролями и затем позволять создателям конференций назначать пользователей каждой из этих ролей. Например, может быть роль "организатора", роль "презентатора" и роль "аудитории". Пользователь, создающий конференцию, не обязательно должен указывать то, какие права доступа имеет каждая этих ролей. Права доступа для роли могут быть предварительно сконфигурированы администратором сервера конференцсвязи. Названия ролей могут быть выбраны так, чтобы подсказывать (или быть интуитивно понятными) тип прав доступа, которые они, вероятно, будут иметь.
Фиг. 7 иллюстрирует схему примерной архитектуры сервера и протоколов для конференцсвязи и распределенных MCU. Несколько протоколов могут использоваться между клиентом 700 и сервером 702, каждый для различной цели. Клиент 700 показан как имеющий пользовательский интерфейс 704, который может осуществлять доступ к базовому компоненту 706 администрирования и управления конференциями и компоненту 708 мультимедиа конференции. Компонент 706 администрирования может осуществлять доступ к компоненту 710 списков, который предоставляет список приглашения в сеанс и/или список сторонних конференций. Компонент 708 мультимедиа конференции упрощает доступ к компоненту 712 совместного использования приложений и совместной работы с данными и компоненту 714 аудио/видео.
Сервер 702 включает в себя компонент 716 Focus, компонент 718 MCU совместной работы с данными и совместного использования приложений и компонент 720 аудио/видео(AV)-MCU. Клиент 700 и сервер 702 включают в себя компоненты интерфейса протокола (к примеру, SIP, PSOM, RTP/RTCP) для использования различных протоколов. Клиент-серверные компоненты SIP используют протокол служебных сигналов и управления для установления сеанса и управления конференцией. В этой конкретной реализации SIP (к примеру, как указано в RFC3261) используется для установления и завершения вызова. Дополнительно, один сеанс конференции может использоваться для управления политикой конференций и стороннего управления с помощью расширений SIP-CX. В одной реализации команды SIP-CX туннелируются по SIP-INFO. В другой реализации могут использоваться команды протокола управления C3P. В еще одной реализации могут быть использованы стандартизированный транспорт и протокол для управления политиками конференций от XCON, рабочей группы IETF для централизованной конференцсвязи. SIP может использовать TCP (протокол управления передачей) или TLS (безопасность транспортного уровня) в качестве базового транспортного уровня.
Отдельный диалог SUB-NOT может использоваться для подписки на пакеты конференции и получение уведомлений, когда состояние изменяется. Список для конференции может управляться на основе этого диалога SUB-NOT. PSOM может быть мультимедийным протоколом для совместной работы с данными и может использовать TCP или HTTP в качестве базового транспорта.
Для каждой из мультимедиа в конференции должен быть использован мультимедийный транспорт. RTP и RTCP могут использоваться для предоставления аудио/видео-функциональности. RTP/RTCP может работать под управлением UDP (протокол пользовательских дейтаграмм), если возможность подключения UDP доступна между клиентом 700 и сервером 702. Если нет возможности подключения UDP, RTP/RTCP может быть туннелирован по TCP или HTTP. Другие мультимедийные протоколы могут использоваться для других типов мультимедиа. Например, чат может поддерживаться по MSRP (протокол пересылки сеанса сообщения), а совместное использование приложений - по RDP (протокол для удаленных рабочих столов). Каждый из них может выполняться как отдельный тип мультимедиа. В другой реализации оба из этих протоколов могут быть реализованы поверх PSOM.
Фиг. 8-18 иллюстрируют блок-схемы последовательности операций вызова для создания конференции, выполнения входящего коммутируемого подключения к конференции, присоединения к мультимедийному сеансу с MCU AV посредством входящего коммутируемого подключения и исходящего коммутируемого подключения, выполнения специального приглашения участнику и присоединения к совместному сеансу через MCU данных.
Клиентское приложение обменивается данными с компонентом Focus Factory, чтобы начать новую конференцию. Создать конференцию означает создание и конфигурирование экземпляра компонента Focus. Задача компонента Focus Factory состоит в том, чтобы возвратить URI на компонент Focus обратно клиенту. Этот обмен данными между клиентом и компонентом Focus Factory не должен быть длительным. Он должен длиться только до тех пор, пока URI компонента Focus не будет возвращен клиенту. URI компонента Focus/конференции создается так, чтобы включать в себя уникальный идентификатор конференции, уникальный идентификатор сервера и домен, который выступает в качестве хоста для конференции в части пользовательской информации, например, organizer@domain.com;ms-app=conf;ms-conf-id=11.
Есть три способа, которыми клиент может создать конференцию: через веб-службу, механизм SIP Invite и механизм SIP Service. Фиг. 8 иллюстрирует примерную блок-схему последовательности операций вызова для инициализации создания конференции через веб-интерфейс/службу. Клиент подключается к известному веб-URI компонента Focus Factory и использует предоставленные веб-интерфейсы, чтобы создать компонент Focus. После успешного создания компонента Focus веб-страница направляет клиента к необходимой информации для запуска клиента конференции, чтобы выполнить входящее коммутируемое подключение к конференции.
Фиг. 9 иллюстрирует примерную блок-схему последовательности операций вызова для инициализации создания конференции через механизм SIP Invite. Клиент передает всю информацию, которая ему требуется, относительно конференции, типов мультимедиа, прав доступа, участников, как часть запроса INVITE к компоненту Focus Factory. Компонент Focus Factory создает экземпляр компонента Focus и перенаправляет клиента к компоненту Focus с помощью формируемого URI компонента Focus.
Более конкретно, клиент отправляет запрос INVITE компоненту Focus Factory с информацией, чтобы создать конференцию. Компонент Focus Factory отправляет временный ответ 1xx клиенту так, чтобы клиентская транзакция не превысила таймаут, пока компонент Focus Factory создает экземпляр компонента Focus. Если оказывается, что время, потраченное на создание компонента Focus, меньше времени ожидания транзакции SIP, отправка этого ответа может быть проигнорирована. Компонент Focus Factory затем анализирует всю запрошенную информацию от INVITE и создает экземпляр компонента Focus. В случае, если компонент Focus Factory и компонент Focus могут быть совместно расположены, этот вызов для создания компонента Focus может быть просто локальным обращением к функции. Компонент Focus Factory далее отправляет 302 ответ с заголовком контакта, перенаправляя клиента к началу нового сеанса приглашения с компонентом Focus. Клиент отсылает обратно ACK компоненту Focus Factory.
Фиг. 10 иллюстрирует примерную блок-схему последовательности операций вызова для инициализации создания конференции через механизм SIP Service. Клиент передает всю информацию, которая ему требуется, относительно конференции, типов мультимедиа, прав доступа, участников, как часть запроса SERVICE к компоненту Focus Factory. Компонент Focus Factory создает экземпляр компонента Focus и отправляет информацию о подключении обратно клиенту в ответе 200 OK.
Более конкретно, клиент отправляет запрос SERVICE компоненту Focus Factory с информацией для создания конференции. Компонент Focus Factory анализирует всю требуемую информацию из SERVICE и создает экземпляр компонента Focus. В случае, если компонент Focus Factory и компонент Focus могут быть совместно расположены, этот вызов для создания компонента Focus может быть просто локальным обращением к функции. Компонент Focus Factory отправляет ответ 200 OK с информацией о конференции.
Фиг. 11 иллюстрирует примерную блок-схему последовательности операций вызова для входящего коммутируемого подключения клиента к конференции. Клиент устанавливает диалог INVITE и диалог SUBSCRIBE с компонентом Focus для входящего коммутируемого подключения клиента к конференции. Клиент использует диалог INVITE, чтобы присоединиться к конференции, и также использует его для дополнительного стороннего управления командным трафиком от клиента к компоненту Focus. Команды управления от клиента переносятся в сообщениях INFO. Тело сообщения INFO содержит запросы управления C3P и обрабатывается компонентом Focus.
Клиент использует диалог SUBSCRIBE/NOTIFY для просмотра состояния конференции. Компонент Focus принимает подписку и уведомляет абонентов о любом изменении состояния конференции. Состояние включает в себя состояние, поддерживаемое самим компонентом Focus, политикой конференции и мультимедийной информацией. Например, если команда, которая была послана клиентом в диалоге INVITE с помощью сообщения INFO, является командой, которая изменяет состояние конференции, компонент Focus также информирует клиента посредством отправки NOTIFY об измененном состоянии конференции.
Более конкретно, клиент отправляет запрос INVITE в URI компонента Focus, чтобы присоединиться к конференции. Этот диалог INVITE имеет две цели: он подразумевает присоединение клиента к конференции, и он используется для стороннего управления конференцией с помощью запроса INFO в этом диалоге. Запрос C3P addUser в теле INVITE может использоваться для того, чтобы указать конкретные клиентские атрибуты (к примеру, отображаемое имя, роли, скрытого участника). Клиент отправляет SUBSCRIBE пакету событий конференции, чтобы просматривать уведомления о состоянии конференции. Начальный документ состояния конференции может быть послан во вложении в 200 OK из SUBSCRIBE в соответствии с выражением клиентом поддержки этого расширения.
Фиг. 12 иллюстрирует примерную блок-схему последовательности операций вызова для присоединения клиента через MCU совместной работы с данными посредством входящего коммутируемого подключения addUser. Для каждого MCU в конференции компонент Focus назначает виртуальный URI SIP, который маршрутизируется на сам компонент Focus. Начальное уведомление от компонента Focus клиенту содержит URI для всех MCU в конференции. Есть три способа, которыми клиенты могут установить мультимедийный сеанс с MCU: входящее коммутируемое подключение addUser к URI MCU, исходящее коммутируемое подключение addUser с помощью URI MCU и прямой мультимедийный INVITE в URI MCU.
Относительно входящего коммутируемого подключения addUser, клиент выдает команду C3P входящего коммутируемого подключения addUser, и компонент Focus перенаправляет команду в MCU. MCU авторизует команду и возвращает соответствующую информацию о подключении. Далее клиент устанавливает прямой мультимедийный сеанс с MCU. Это могло быть основным режимом входящего коммутируемого подключения к MCU, который не основан на SIP.
Более конкретно, клиент отправляет команду входящего коммутируемого подключения INFO addUser с URI MCU, который он принял в документе уведомления. Компонент Focus проверяет, назначен ли MCU для этой конкретной модальности (мультимедиа) для этой конференции. Если MCU был назначен, компонент Focus отправляет HTTP-запрос компоненту MCU Factory, запрашивая его выделить MCU для этой конференции. При условии, что MCU выделен для конференции, компонент Focus затем отправляет HTTP-запрос выделяемому MCU, запрашивая его ожидать нового участника (addUser). Если это первый раз, когда компонент Focus обменивается данными с этим MCU, может потребоваться послать другие запросы самозагрузки, чтобы инициализировать конференцию по MCU. MCU отвечает сообщением успешности для вызова ожидаемого участника (addUser). Ответ также имеет фактический URL, по которому он хочет, чтобы участник взаимодействовал с MCU. В случае MCU совместной работы с данными URL может быть URL PSOM. Информация об авторизации, если имеется, также может быть возвращена.
Компонент Focus отправляет информацию о PSOM-подключении клиенту. Клиент затем непосредственно устанавливает PSOM-канал с MCU. Как только клиент успешно присоединяется к MCU, он отправляет событие "участник присоединился" в компонент Focus. Далее компонент Focus отправляет уведомление изменения состояния MCU "участник присоединился" (через SIPPING BENOTIFY (или NOTIFY по принципу максимальной эффективности)) всем наблюдателям конференции.
Фиг. 13 иллюстрирует примерную блок-схему последовательности операций вызова для присоединения клиента через аудио/видео-MCU посредством исходящего коммутируемого подключения addUser. Клиент выдает команду C3P исходящего коммутируемого подключения addUser, и компонент Focus перенаправляет команду в MCU. MCU авторизует команды и исходящие коммутируемые соединения к клиенту, упомянутому в команде addUser. Далее клиент устанавливает прямой мультимедийный сеанс с MCU. Это используется в соединениях клиента с основанными на SIP MCU (к примеру, A/V-MCU и MCU IM). Этот механизм может также использоваться для клиента, чтобы выполнять исходящее коммутируемое подключение к другому клиенту через MCU.
Более конкретно, клиент отправляет команду исходящего коммутируемого подключения INFO addUser с URI MCU, который он принял в документе уведомления. Компонент Focus затем проверяет, назначен ли MCU для этой конкретной модальности для этой конференции. Если MCU был назначен, компонент Focus отправляет HTTP-запрос компоненту MCU Factory, запрашивая его выделить MCU для этой конференции. При условии, что MCU выделен для конференции, компонент Focus затем отправляет HTTP-запрос выделяемому MCU, запрашивая его выполнить исходящее коммутируемое подключение к пользователю. MCU выполняет команду исходящего коммутируемого подключения INVITE к клиенту с помощью исходящего SIP-прокси-сервера, которым обычно является сам сервер компонента Focus. Клиент напрямую устанавливает мультимедийный RTP-канал с MCU. Как только клиент успешно присоединяется к MCU, он отправляет событие "участник присоединился" в компонент Focus. После этого компонент Focus отправляет уведомление изменения состояния MCU "участник присоединился" всем наблюдателям конференции.
Фиг. 14 иллюстрирует примерную блок-схему последовательности операций вызова для присоединения клиента через прямое приглашение в MCU. Прямой мультимедийный INVITE в MCU работает с MCU, который использует SIP для установления сеансов (к примеру, A/V-MCU, MCU IM). Клиент может отправить приглашение в мультимедийный сеанс в URI MCU непосредственно без какого-либо предшествующего вызова addUser. INVITE маршрутизируется в компоненте Focus, и компонент Focus инициализирует addUser к MCU от имени клиента. MCU авторизуется и отвечает информацией о подключении. Компонент Focus проверяет, является ли информация о подключении маршрутизируемым SIP-адресом, и перенаправляет INVITE непосредственно в MCU. Это прежде всего служит для того, чтобы обеспечить входящее коммутируемое подключение чистого SIP-клиента не-C3P к конференции. Клиент C3P может извлекать URI MCU из уведомления конференции и отправлять сообщению REFER чистому SIP-клиенту, который может попытаться непосредственно выполнить входящее коммутируемое подключение к MCU.
Более конкретно, клиент отправляет INVITE в URI MCU, который он принял в документе уведомления. Этот INVITE маршрутизируется в компоненте Focus. Клиент может добавить описание сеанса для мультимедийного согласования. В случае, если компонент Focus знает, что INVITE адресован в конкретный MCU, он безопасно игнорирует любое описание сеанса в теле INVITE. Компонент Focus затем отправляет HTTP-запрос выделяемому MCU, запрашивая его ожидать нового участника (входящее коммутируемое подключение addUser). Если это первый раз, когда компонент Focus обменивается данными с этим MCU, он может отправить другие запросы самозагрузки, чтобы инициализировать конференцию по MCU. MCU отвечает сообщением успешности для вызова ожидаемого участника (addUser). Ответ также имеет фактический URL, по которому он хочет, чтобы участник обменивался данными с MCU.
В случае A/V-MCU URL указывает то, что участник может обмениваться данными с MCU через SIP. В случае A/V-MCU компонент Focus перенаправляет INVITE в MCU. Клиент отправляет обратно ACK, чтобы завершить диалог INVITE, который также используется для мультимедийного согласования с MCU. Отметим, что, хотя клиент устанавливает диалог INVITE непосредственно с MCU, SIP запрашивает себя, чтобы пройти через компонент Focus. Как только клиент успешно присоединяется к MCU, он отправляет событие "участник присоединился" в компонент Focus. Компонент Focus отправляет уведомление изменения состояния MCU "участник присоединился" всем наблюдателям конференции. Прямое мультимедийное согласование между клиентом и MCU достигается. В случае аудио/видео это могут быть RTP/RTCP-потоки.
Фиг. 15 иллюстрирует примерную блок-схему последовательности операций вызова для специального приглашения другому клиенту-участнику, приводящего к входящему коммутируемому подключению. Клиент в этом случае отправляет INVITE приложения участнику. Приглашение приложения с URL конференцсвязи, включенным с PIN-кодом авторизации, всплывает как подсказка на клиенте пользователя. Как только участник принимает/щелкает на подсказке, он запускает клиента конференцсвязи, который выполняет входящее коммутируемое подключение участника к конференции.
Более конкретно, клиент отправляет приглашение приложения участнику, которое включает в себя всю необходимую информацию для участника, чтобы выполнить входящее коммутируемое подключение к конференции, включая информацию об авторизации, если имеется. Приглашение приложения всплывает как подсказка в консоли. Как только участник принимает подсказку, клиент конференцсвязи запускает предоставление возможности клиенту выполнить входящее коммутируемое подключение к конференции. После этого, как клиент успешно выполняет входящее коммутируемое подключение к конференции, компонент Focus отправляет уведомление обновления списка всем наблюдателям конференции.
Фиг. 16 иллюстрирует примерную блок-схему последовательности операций вызова для специального исходящего коммутируемого подключения INVITE к другому клиенту. Клиентская последовательность присоединения инициализируется между Client1 и компонентом Focus, за которым следует сообщение исходящего коммутируемого подключения INFO addUser от Client1 к компоненту Focus. Сообщение 200 ACCEPT возвращается из компонента Focus. Компонент Focus отправляет сообщение исходящего коммутируемого подключения addUser к MCU, и MCU отвечает 200 OK. MCU отправляет сообщение INVITE, которое маршрутизируется через компонент Focus второму Client2. Client2 отвечает сообщением 200 OK, за которым следует ACK от MCU. Мультимедийный поток (к примеру, с помощью RTP) далее инициализируется между MCU и Client2. MCU отправляет событие "участник присоединился" в компонент Focus. После этого компонент Focus тогда отправляет сообщение списка обновления в Client1, указывающее то, что Client2 присоединился к сеансу конференции.
Механизм приглашения приложения, упомянутый выше, работает с новыми клиентами, которые понимают приглашение приложения и механизм протокола C3P. Тем не менее, могут быть приглашены унаследованные клиенты, которые не понимают C3P. Этот механизм также может использоваться для того, чтобы внедрить чистых SIP-клиентов в конференцию. Клиент может отправлять BYE в начальный диалог INVITE, чтобы выйти из конференции. Для обнаружения отказавших клиентов, могут быть использованы сообщения поддержания сеанса.
Уведомление о состоянии конференции может осуществляться из MCU в компонент Focus и из компонента Focus клиенту. Модель данных уведомления о состоянии включает в себя следующие элементы: описание конференции (к примеру, заголовок, тема, описание организатора); представление конференции (к примеру, информация об уровне конференции для каждого компонента Focus объекта, такого как AV-MCU, IM MCU), которое включает в себя информацию о характеристиках, текущем состоянии, настройках и политике; пользователь (к примеру, список конференций, пользователей, соответствующих конечных точек и мультимедийных сеансов, к которым он подключен); и панель альтернативной конференции, представление вложенной конференции.
Следующий код представляет один пример иерархии состояния конференции.
Conference-info [1...1]
Conference-description [0...1]
Conference-view [0...1]
Entity-view [0...N] (обрабатывается посредством URI объекта)
Entity-capabilities [0...1]
Entity-policy [0...1]
Entity-settings [0...1]
Entity-state [0...1]
Conference-media [0...N] (обрабатывается посредством метки мультимедиа)
Users [0...1]
User [0...N] (обрабатывается посредством URI пользователя)
Endpoint [0...N] (обрабатывается посредством URI конечной точки)
Media [0...N] (обрабатывается посредством идентификатора. Метка - это ссылка на элемент conference-media, см. ниже).
Sidebars-by-val [0...1]
Entry [0...N] (рекурсивно задает объект вложенной конференции).
Следующий код представляет один пример начального состояния конференции с двумя MCU (к примеру, A/V, данные) и без вошедших в систему пользователей.
<conference-info>
<conference-description>
<display-text>brownbag </display-text>
<conf-uris>
<entry>
<uri>sip:organizor@msft.com;ms-app=conf/meeting;ms-conf-id=cd</uri>
<display-text>Data MCU</display-text>
<purpose>meeting</purpose>
</entry>
<entry>
<uri>sip:organizor@msft.com;ms-app=conf/audio-video;ms-conf-id=cd/uri>
<display-text>AV MCU</display-text>
<purpose>audio-video</purpose>
</entry>
</conf-uris>
</conference-description>
<conference-info>
Далее представлен один пример кода для пользователя, пытающегося присоединиться, и самозагрузки A/V-MCU.
<conference-info>
<conference-description>
....
</conference-description>
<conference-view>
<entity-view entity="focus " />
<entity-view entity="AV">
<entity-state />
<entity-view />
<entity-view>
<conference-view>
</conference-info>
Далее представлен один пример кода для пользователя Боба, который присоединяется к компоненту Focus.
<conference-info>
<conference-description>
....
</conference-description>
<conference-view>
......
</conference-view>
<users>
<user entity="sip:bob state="full">
<display-text>bob<display-text>
<roles><entry>presenter</entry></roles>
<endpoint entity="sip:bob;focus">
<status>connected</status>
</endpoint>
</user>
</users>
<conference-info>
Далее представлен один пример кода для пользователя Боба, который присоединяется к AV MCU.
<conference-info>
<conference-description>
....
</conference-description>
<conference-view>
......
</conference-view>
<users>
<user entity="sip:bob state="full">
<display-text>bob<display-text>
<roles><entry>presenter</entry></roles>
<endpoint entity="sip:bob;focus" >
<status>connected</status>
</endpoint>
<endpoint entity="sip:bob;AV" >
<status>connected</status>
</endpoint>
</user>
</users>
<conference-info >
Обнаружение URI компонента Focus Factory может выполняться несколькими способами: посредством применения политики группы, посредством DNS (сервер доменных имен), фиксированного URI и данных пользовательского профиля сервера.
Способ, который обычно используется администраторами для того, чтобы распространять настройки клиентам, состоит в использовании объектов групповой политики (GPO). Конкретные настройки и признаки приложений могут быть включены или выключены через GPO-настройки. Например, администратор может выбрать удалять определенные варианты меню или добавлять некоторые другие через GPO. Через использование GPO администратор домена может указать определенные наборы пользователей для определенных компонентов Focus Factory. Это исключает необходимость конфигурирования вручную.
Другой вариант заключается в том, чтобы использовать запись DNS, чтобы указать клиентов для URI компонента Focus Factory. DNS SRV - это дополнение в стандартный DNS-сервер, которое используется для получения одного или более IP-адресов серверов, каждый из которых имеет собственные приоритеты. Ниже содержится примерная запись SRV:
_http._tcp.example.com. SRV 10 5 80. www.example.com
Соглашение об именах записи SRV требует того, чтобы запись содержала следующее, по порядку: символ подчеркивания, за которым следует имя службы, точка, символ подчеркивания, за которым следует протокол, точка, а затем имя домена.
Другой вариант заключается в том, чтобы использовать фиксированный URI для компонента Focus Factory, такой как:
sip:FocusFactory@microsoft.com
Этот подход полностью исключает предположения и необходимость обнаружения. Приложение, выполняющееся на внешних интерфейсных машинах пула, должно интерпретировать это как специальный URI и обрабатывать соответствующим образом. Это означает, что один и тот же URI представляется приложениями, работающими в нескольких пулах.
Другой подход заключается в использовании данных пользовательского профиля. Пользователи предоставляют пароль, чтобы получить контакты роуминга и информацию о безопасности. Клиенты могут подписаться на различные типы данных, включая контакты роуминга, ACL (списки контроля доступа) роуминга, ожидающие запросы на подписку по данным присутствия пользователя и так далее. Эта информация хранится в хранилище присутствия. Данные переносятся в клиент независимо от того, находится ли клиент внутри или вне сети интранет. Когда клиент регистрируется своей информацией о присутствии, он подписывается на эти типы данных, и сервер посылает их с использованием протокола SIP (с помощью сообщений NOTIFY).
При представлении другого типа данных, FocusFactoryURI, клиент также может подписаться на эти данные и принять их как часть первоначального установления связи. Дополнительное преимущество состоит в том, что, когда эта информация изменяется, клиент уведомляется с помощью семантики SIP, поскольку клиент подписался на тип данных FocusFactoryURI.
Предусмотрено два варианта относительно того, как эти данные могут храниться. Во-первых, каждый пользователь может иметь отдельный FocusFactoryURI. При таком подходе хранилище присутствия может расширено и сохраняет URI для каждого пользователя, допущенного для конференцсвязи. При втором подходе URI компонента Focus Factory - это настройка уровня пула, которую совместно используют все подключенные пользователи в этом пуле. Преимущество этого подхода заключается в том, что он не требует того, чтобы URI компонента Factory распределялся для каждого пользователя, а вместо этого сохраняет один URI для всего пула. Поскольку настройки пула совместно используются среди всех внешних интерфейсных серверов в этом пуле, модули пользовательских служб, выполняющихся на каждом внешнем интерфейсе, имеют доступ к этой настройке. Данная настройка видна другим пулам в системе.
Компонент Focus Factory и экземпляры компонента Focus могут размещаться в пулах, которые не являются подключающими пользователями. Это создает необходимость маршрутизации по запросам, исходящим от клиентов в пул(ы), выступающий(е) в качестве хоста для компонента Focus Factory и экземпляров компонента Focus. Даже если первое требование здесь отсутствует, запросы маршрутизируются от клиентов, подключенных к различным пулам, в пул, который выступает в качестве хоста для экземпляра компонента Focus.
Пользовательские службы могут выполнить запрос к базе данных на предмет различных типов данных, которые запрашиваются посредством клиента, форматировать его в XML-формат и ответить сообщениями NOTIFY. Для этого конкретного типа данных, вместо перехода в базу данных для их извлечения, внешняя интерфейсная машина, принимающая запрос, может обратиться к настройке уровня пула и подготовить XML-документ, чтобы отправить с NOTIFY. Если настройка обновляется, пользовательские службы уведомляются относительно ее изменения во временном окне (к примеру, 5 минут), позволяющем им обновить свое локальное значение для данной настройки.
Для пулов, которые подключают пользователей из нескольких доменов, настройка является конфигурируемой для каждого из доменов, которые подключаются, чтобы разрешить различные URI компонентов Factory для различных подключаемых доменов. Примером этого является решение по подключению, когда пользователи распределены по множеству возможных доменов. Предусмотрена возможность сохранить несколько доменных имен на пул и назначать им URI компонента Focus Factory. Данная настройка видна всем пулам.
Клиентское приложение обменивается данными с компонентом Focus Factory, чтобы начать новую конференцию. Как пояснено выше, поскольку клиентское приложение запрашивает URI компонента Focus Factory, когда пользователь предъявляет пароль, оно имеет средство обмениваться данными с компонентом Focus Factory в любое время, чтобы начать новую специальную конференцию. Когда SIP-клиент хочет обмениваться данными с другим, диалоги SIP между клиентами начинаются с INVITE, отправленным одной стороной другой. Пакет SDP (протокол описания сеанса) переносится для мультимедийного согласования в качестве рабочих данных в INVITE и ответа 200 OK для этого INVITE.
В раскрытой архитектуре создание конференции означает создание и конфигурирование экземпляра компонента Focus. Задача компонента Focus Factory состоит в том, чтобы возвратить URI на компонент Focus обратно клиенту. Это означает, что сеанс связи между клиентом и компонентом Focus Factory не должен быть длительным. Он должен продолжиться до тех пор, пока URI компонента Focus не будет возвращен клиенту.
Компонент Focus Factory создает и конфигурирует компонент Focus прежде, чем он возвращает клиенту свой URI. Конфигурация задает типы мультимедиа, которые должны использоваться этой конференцией, предполагаемое количество участников, роли и права доступа известных участников, определения ролей и т.д.
Компонент Focus Factory имеет интерфейс веб-службы, обеспечивающий планирование собраний заранее. В этом сценарии клиент конференцсвязи разговаривает непосредственно с компонентом Focus, никогда не устанавливая диалог с компонентом Focus Factory. Тем не менее, для специальных конференций клиент конференцсвязи разговаривает с компонентом Focus Factory, чтобы сделать так, чтобы он предоставил URI компонента Focus.
Фиг. 17 иллюстрирует примерную блок-схему последовательности операций вызова при использовании перенаправления. Первоначально, клиент отправляет INVITE в URI компонента Focus Factory, где:
- To=URI компонента Focus Factory
- From=URI Пользователя
- Content-Type=Многокомпонентный MIME
- Content=XML-содержимое, которое содержит список первоначальных участников, привязки ролей и маркер идентификации шаблона.
Приложение компонента Focus Factory, выполняющееся в пуле, принимает сообщение и возвращает 100 In Progress или 180 Ringing provisional response. Это позволяет клиенту ждать, пока не будет выполнена вся подготовка и поиск данных посредством компонента Focus Factory. Компонент Focus Factory создает компонент Focus и возвращает URI компонента Focus в заголовке контакта 302 Redirect Response. Это позволяет клиенту кэшировать значение заголовка контакта как URI конференции. Клиент отправляет тот же INVITE в URI компонента Focus, который он принял. Единственное различие заключается в том, что "To: заголовок" имеет параметр GRUID, который является идентификатором конференции в данный момент.
Фиг. 18 иллюстрирует примерную блок-схему последовательности операций вызова, которая обрабатывает создание конференции отдельно от присоединения клиента к конференции. Это лучше отражает стадии выполняемого процесса. Таким образом, создание конференции включает в себя передачу INVITE от клиента в компонент Focus Factory, необязательно прием ответа 180 In progress, отправки CreatFocus из компонента Focus Factory в компонент Focus, чтобы создать экземпляр компонента Focus, возврат данных компонента Focus в компонент Focus Factory, отправку URI компонента Focus контакта клиенту и подтверждение приема. Сообщения, ассоциированные с присоединением к конференции, включают в себя отправку INVITE с URI компонента Focus для клиента в компонент Focus, прием 200 OK обратно в клиенте и подтверждение приема.
После приема сообщения INVITE от клиента компонент Focus Factory создает компонент Focus и возвращает клиенту информацию о компоненте Focus. Компонент Focus, так же как и компонент Focus Factory, является конечной точкой SIP, представленной приложением. Компонент Focus Factory перенаправляет запрос INVITE, который он принимает, в компонент Focus, давая ему возможность стать конечной точкой, которая осуществляет мультимедийное согласование с клиентом.
Как указано выше, компонент Focus является "зарегистрированным" обработчиком для конференции. URI компонента Focus представляет конференцию и также упоминается как URI конференции. Один детерминированный способ заключается в том, чтобы использовать фиксированный шаблон для пользовательского раздела URI и снабдить его информацией об идентификаторе конференции. Это дает возможность написания логики маршрутизации более простым способом на основе URI и дает возможность сопоставления URI компонента Focus с одним приложением в компании, что упрощает администрирование системы. Это применение описывается посредством "расширения GRUU/GRID" к SIP, которое дает возможность добавления параметра GRUU в известный URI Компонента Focus. Примерами являются:
Sip:conf-mgr@confserver.company.com; grid=Schumacher1980
Sip:FocusFactoryMS@conferencing.microsoft.com; grid=conf34242834.
Поведение компонента Focus Factory состоит в том, что компонент Focus активен в том же самом пуле, в котором выполняется компонент Focus Factory. Это может быть конфигурируемой настройкой для масштабирования экземпляров компонента Focus конференцсвязи полностью отдельно от регистрационного сервера(ов) SIP.
Экземпляр компонента Focus выполняется на всех внешних интерфейсных машинах пула одновременно. Это позволяет клиентам подключаться к любому внешнему интерфейсу в пуле, обеспечивая распределение загрузки и лучшее масштабирование. Состояние компонента Focus, который должен быть совместно использован среди экземпляров компонента Focus для конференции, сохраняется в базе данных. Эти данные содержат список, роли и права доступа, типы мультимедиа и идентификационные данные MCU и т.д. Каждый экземпляр компонента Focus обрабатывает состояние подключения для клиентов, которые подключены к конкретному внешнему интерфейсу, на котором выполняется экземпляр компонента Focus. Поскольку каждый экземпляр компонента Focus - это конечная точка SIP, этими подключения являются диалоги SIP.
Когда URI компонента Focus передается клиенту, часть этого URI является идентификатором конференции, числом, которое формируется механизмом базы данных, ссылающимся на запись конференции в базе данных. Запись базы данных содержит данные, указывающие то, как долго запись должна храниться в базе данных, а также другую информацию о конференции.
После передачи URI компонента Focus клиенту компонент Focus Factory не должен поддерживать какое-либо состояние или выполнять какую-либо работу. Когда клиент отправляет INVITE в URI компонента Focus через домашний сервер, к которому он подключен, INVITE маршрутизируется в пул, который выступает в качестве хоста для конференции. После приема INVITE одна из внешних интерфейсных машин в пуле создает компонент Focus и отвечает клиенту.
Как указано выше, экземпляр компонента Focus выполняется на всех внешних интерфейсных машинах пула. Вопросы для рассмотрения включают в себя маршрутизацию, производительность, стабильность и надежность. Как описано выше, состояние, которое ассоциировано с конференцией, сохраняется в базе данных, которая доступна для всех внешних интерфейсных машин пула. Это дает возможность состоянию, связанному с конференцией, совместно использоваться среди нескольких экземпляров приложений компонента Focus, выполняющихся на различных внешних интерфейсных машинах в пуле. В результате каждый клиент подключается к своему пулу и/или домашнему серверу, и компонент Focus, которого они пытаются достичь, выполняется на этом блоке, готовый реагировать на все связанные с конференцией запросы, которые они могут посылать.
Фиг. 19 иллюстрирует систему 1900 пула серверов, которая совместно использует состояние среди множества экземпляров приложений компонента Focus, выполняющихся на различных внешних интерфейсных машинах в пуле. Система 1900 разрешает вопросы маршрутизации, производительности, стабильности и надежности путем распределения нагрузки по всем внешним интерфейсным машинам (или внешним интерфейсам), удаления требований по маршрутизации и используя функции высокой доступности. Нагрузка по администрированию подключения произвольно распределяется среди всех внешних интерфейсных машин пула. Дополнительные внешние интерфейсные машины могут быть легко добавлены и удалены, поскольку они не имеют никаких идентификационных данных, кроме ассоциации с пулом. Относительно стабильности, в случае отказа внешнего интерфейса, все пользователи, подключенные к этому внешнему интерфейсу, могут попытаться повторно подключиться к конференции. Все эти пользователи снова будут уравновешиваться по нагрузке и подключаться к другим внешним интерфейсам в том же пуле. Вопросы маршрутизации исключаются, поскольку она не требуется. Совместно используемое состояние для конференции сохраняется в базе данных, и все внешние интерфейсы могут осуществлять доступ к нему. Ни от одной машины не требуется выступать в качестве информационного посредника.
Фиг. 20 иллюстрирует примерную блок-схему последовательности операций вызова двух отдельных диалогов "клиент-компонент Focus" с помощью экземпляра компонента Focus. Диалог INVITE - это диалог, который позволяет клиенту присоединяться к конференции, и он используется для дополнительного командного трафика от клиента к компоненту Focus. Команды от клиента переносятся в сообщениях INFO. Тело сообщения INFO содержит XML-тело согласно SOAP и обрабатывается компонентом Focus. Отметим, что одно сообщение INFO на фиг. 20 представляет все сообщения INFO на срок действия конференции. На основе роли, назначенной клиенту, клиент может выдавать команды для управления конференциями, управления политиками конференций, управления мультимедиа или управления мультимедийными политиками.
После того как клиент присоединился к конференции, он должен информироваться о событиях, которые происходят в конференции, такие как присоединение и удаление участников, добавление и удаление мультимедиа и т.д. Эти изменения состояния конференции, а также изменения в политиках для конференции и мультимедиа переносятся через сообщения NOTIFY, отправляемые клиенту в этом диалоге. Если команда, которая отправлена посредством клиента в диалоге INVITE с помощью сообщения INFO, является командой, которая изменяет состояние конференции, компонент Focus сообщает клиенту посредством отправки NOTIFY, содержащего измененный раздел состояния конференции. Отметим, что одно сообщение NOTIFY на фиг. 20 представляет все сообщения NOTIFY на срок действия конференции.
Вариант запуска типа мультимедиа в конференции должен иметь созданный компонент Focus и все MCU, информированные относительно конференции, когда компонент Focus создан. Это дает возможность ускорения последующей активации мультимедиа. Дополнительно, поскольку мультимедиа активируется заранее, MCU должен знать о части списка, которая может войти с ним в контакт заранее, предоставляя возможность выполнения операций присоединения пользователя для мультимедиа без задержки. В этой модели, как только компонент Focus создан, он отправляет команды в MCU, выделяя состояние собрания и передавая список конференций для ожидаемых участников. Компонент Focus далее обновляет состояние конференции информацией MCU для используемых типов мультимедиа. Таким образом, каждый раз, когда участник входит и присоединяется к мультимедиа, компонент Focus не обязательно должен обращаться к MCU, чтобы получать информацию о соединении. Алгоритм будет неизменным для первого и последнего участника, присоединяющегося к собранию.
Как указано выше, компонент MCU Factory - это логический объект, который предоставляет информацию о доступе для MCU. Компонент MCU Factory может быть специализированной реализацией для поставщиков устройств или программного обеспечения MCU. Компонент Focus знает через настройки то, какие компоненты MCU Factory присутствуют в системе и какие типы мультимедиа они поддерживают. Компонент Focus запрашивает у компонента MCU Factory информацию о том, как входить в контакт с MCU, и компонент MCU Factory возвращает эту информацию на основе любой внутренней логики, которой он может следовать.
Например, рассмотрим развертывание, где присутствуют собственные и сторонние MCU для A/V-операций. Это означает, что список компонентов MCU Factory должен содержать две записи, одну по каждому из этих поставщиков для этого типа мультимедиа. Примерное представление настроек включает в себя следующее.
Тип мультимедиа URL компонента MCU Factory
A/V http://MCUFactory.1stParty
A/V http://MCUFactory.3rdParty
Когда конференция с A/V-операциями создается, компонент Focus, который представляет эту конференцию, входит в контакт с компонентом MCU Factory для типа MCU, который должен быть использован в этой конференции. В таком сценарии, как этот, где присутствует несколько компонентов MCU Factory, компонент Focus выбирает один из компонентов MCU Factory. Использование шаблонов обеспечивает это.
C3P - это протокол управления конференциями/управления обработкой, используемый для того, чтобы изменять состояние конференции. В раскрытой архитектуре команда C3P протекает от клиента к компоненту Focus и от компонента Focus к MCU, обратное направление применимо к уведомлению о конференции. C3P имеет семантику запроса/ожидания ответа/окончательного ответа, подобную SIP.
Фиг. 21 иллюстрирует примерную блок-схему последовательности операций вызова, когда клиент выдает команду C3P для изменения состояния конференции. Клиент инициализирует последовательность присоединения к компоненту Focus. Команда C3P INFO отправляется от клиента к компоненту Focus. Компонент Focus отвечает с помощью 202 ACCEPT. Компонент Focus отправляет запрос C3P в MCU совместной работы с данными, за которым следует этим же тип запроса в аудио/видео-MCU. Компонент Focus также отправляет ответ INFO C3P клиенту, за которым следует сообщение 200 OK. Далее компонент Focus отправляет уведомление изменения состояния (через BENOTIFY) клиенту. MCU (совместной работы с данными и AV) отправляют ответы C3P в компонент Focus. MCU совместной работы с данными и MCU AV каждый отправляют уведомление изменения состояния посредством команды C3P в компонент Focus. Далее компонент Focus отправляет соответствующие уведомления изменения состояния (через BENOTIFY) клиенту.
Фиг. 22 иллюстрирует команды C3P, которые могут быть использованы в соответствии с распределенной архитектурой конференцсвязи MCU. Команды связаны с уровнем конференции, уровнем пользователя, уровнем панели альтернативной конференции, уровнем конечной точки, уровнем мультимедиа конечной точки, регистрацией, балансировкой нагрузки и диспетчеризацией. На уровне конференции, конференция может быть добавлена, удалена, изменена, изменена по блокировке, изменена с мультимедийными фильтрами, воспроизведена по записанному названию и получена из конференции. На уровне пользователя, пользователь может быть добавлен, удален и изменен, изменен по роли пользователя и задан по пользовательскому доступу. На уровне конечной точки, может быть изменена роль конечной точки. На уровне мультимедиа конечной точки, мультимедийная конечная точка может быть добавлена, удалена и изменена. На уровне панели альтернативной конференции, панель альтернативной конференции может быть добавлена, удалена и изменена. Пользователь также может быть перемещен на панель альтернативной конференции. В отношении регистрации, регистрация может быть начата, остановлена, приостановлена и возобновлена. В отношении диспетчеризации, типы доступных MCU, ключ шифрования и конференции могут быть получены (через get). В отношении балансировки нагрузки, MCU может быть получен наряду со значениями ping.
Раскрытая архитектура конференцсвязи может быть установлена в нескольких конфигурациях, начиная от простой установки с одним сервером для небольших и средних организаций и установок в отделах до управляемой мегаслужбы с установками с несколькими серверами и различным числом серверов для каждой из функций конференцсвязи с различными характеристиками масштабирования. Конфигурационные требования, в свою очередь, задают архитектуру сервера и то, как функциональные фрагменты разделяются.
В конфигурации с одним сервером все серверные компоненты, необходимые для предоставления присутствия, мгновенного обмена сообщениями, многосторонней веб-конференцсвязи, аудио-видео-конференцсвязи и регистрации, могут быть установлены на одной машине. В этом режиме "домашний сервер" для регистрации и присутствия, менеджер конференции, компоненты Focus конференции, компоненты A/V-MCU и компоненты MCU данных, к примеру, все выполняются на одном сервере. Эта конфигурация поддерживает небольшое количество пользователей и параллельных собраний. Например, установка с одним сервером может поддерживать до 500 параллельных пользователей для присутствия, при условии, что не более 100 пользователей выполняют IM в любой данный момент и задано не более 50 параллельных участников мультимедийной конференции (данные/аудио-видео). Регистрация, а также базы данных конференции также могут выполняться на одном сервере. Порты TCP и пространства имен URL являются совместно используемыми ресурсами.
Фиг. 23 иллюстрирует пул из нескольких серверов, где внешние интерфейсные серверы 2300 имеют эквивалентную функциональность. В этой модели несколько серверов реализуются после выравнивателя 2302 нагрузки IP. Несколько серверов предоставляют решение высокой доступности, в котором, если один из системы внешних интерфейсных серверов отказывает, клиенты обнаруживают внешний интерфейсный сбой и автоматически повторно соединяются с одним из других доступных внешних интерфейсных серверов.
Каждый из этих внешних интерфейсов 2300 включает в себя не только функциональность регистрации, присутствия и маршрутизации, но также и функциональность конференцсвязи. Каждый внешний интерфейс выполняет экземпляр компонента Focus Factory, компонента MCU Factory, нуль или более хост-процессов компонента Focus и процессы MCU мультимедиа. Логика обнаружения и обхода сбоев может быть расширена так, чтобы включать в себя сеансы конференцсвязи. Если конференция выдает ошибку в середине, клиенты могут обратно подключиться к компоненту Focus, экземпляр которого повторно создан на другом внешнем интерфейсном сервере, как только сбой обнаружен в пуле серверов 2300. Новый компонент Focus восстанавливает такое состояние, как он имел из предыдущего воплощения компонента Focus, и позволяет клиентам продолжать работу с места, где они остановились в конференции.
Все серверы 2300 имеют эквивалентную функциональность. Программные компоненты, такие как компонент Focus Factory, компоненты Focus, компонент MCU Factory, MCU, интерфейсы веб-диспетчеризации и т.д., устанавливаются на всех внешних интерфейсных серверах. Хотя компонент Focus и MCU имеют различные характеристики масштабирования, эта конфигурация предлагает простоту установки и управления при обеспечении высокой доступности и восстановления после сбоя. Архитектура также позволяет разделение MCU на отдельные блоки.
Фиг. 24 иллюстрирует конфигурацию 2400 пула из нескольких серверов для характеристик высокой доступности и восстановления после сбоя. Помимо этого, он предлагает возможность разделить функции с различными характеристиками масштабирования на различные серверы. Дополнительно MCU 2402 могут быть соединены в цепочку вместе для масштабирования конференций, а также чтобы обеспечить интеграцию или между компаниями, или между компанией и размещаемой службой. MCU ретранслируют, смешивают и обрабатывают мультимедиа. Передача и обработка мультимедиа является гораздо более затратной в отношении ресурсов процессора и сети по сравнению с сигнализацией и данными управления конференциями, которые передаются через компонент Focus. Соответственно, MCU могут быть масштабированы независимо от элементов управления присутствием, сигнализацией и конференциями.
Фиг. 25 иллюстрирует представление топологии различных типов потоков данных между объектами архитектуры распределенных мультимедийных компонентов. Клиент-серверный (C/S) обмен данными, такой как с помощью MCU (к примеру, IM MCU, A/V-MCU) и к выравнивателю нагрузки, может выполняться через SIP. Выравниватель нагрузки может взаимодействовать с внешними интерфейсными серверами также с помощью SIP. Для аудио/видео-потоков клиент может взаимодействовать с помощью RTP/RTCP. Для взаимодействия с MCU совместной работы с данными клиент может использовать PSOM. Каждый MCU может взаимодействовать с внешними интерфейсными серверами с помощью HTTP, который также использует компонент MCU Factory. Доступ к веб-серверу конференции может осуществляться посредством приложения обозревателя. Веб-сервер может осуществлять доступ к внутреннему интерфейсному серверу компонента Focus (к примеру, SQL Server), например, с помощью ODB (база данных объектов)/ADO (объекты данных ActiveX). Внешний интерфейсный сервер (к примеру, Frontend1) может также осуществлять доступ к внутреннему интерфейсному серверу с помощью ODB/ADO. Сервер-серверный (S/S) обмен данными (к примеру, IM MCU с пулом серверов, A/V-MCU с пулом серверов) может осуществляться с помощью SIP. Выравниватель нагрузки может взаимодействовать с одним или более из внешних интерфейсных серверов с помощью сервер-серверного SIP.
Фиг. 26 иллюстрирует полную архитектуру 2600 конференцсвязи, использующую подключаемые и распределенные мультимедийные компоненты. Архитектура 2600 также дает возможность экранирования нескольких MCU, используемых для того же самого типа мультимедиа, например, реализуя каскадирование между MCU Voice IP и MCU PSTN для соединения IP- и PSTN-участников в одну и ту же конференцию. После того как конференция и ее URI конференции распределены (с помощью интерфейса A), и клиент принимает разрешение компонента Focus для доступа к конференции (с помощью интерфейса B), клиент подписывается на информацию о состоянии события конференции (по интерфейсу C) и извлекает фактический URI конференции на мультимедийный MCU из документа, принимаемого в первом событии от компонента Focus (по интерфейсу C). Клиент использует извлеченный URI MCU конференции для того, чтобы выполнить входящее коммутируемое подключение (или присоединиться) к конференции и выполнить собственные базовые операции сигнализации SIP-вызова непосредственно с MCU (по интерфейсу D).
Сигнализация SIP (по интерфейсу D) будет автоматически направляться через прокси-сервер компонента Focus посредством средства маршрутизации SIP. Протокол сигнализации и данных PSOM (по интерфейсу L) маршрутизируется непосредственно между клиентом и MCU данных. Подключения SIP, направляемые через прокси-сервер компонента Focus, имеют возможность анализа и осуществления локальных политик, касающихся аутентификации, авторизации, членства и т.д. Отметим, что с этих пор в случае MCU PSTN и MCU данных собственная сигнализация вызова не направляется через прокси-сервер компонента Focus. Политика для этих MCU может быть явно выгружена из компонента Focus в MCU. Клиент использует диалог SIP, установленный с первоначальным URI конференции (по интерфейсу B), чтобы выполнить любой другой тип управления конференциями с помощью CCCP, также упоминаемого в данном документе как C3P.
С точки зрения компонента Focus, MCU ACP обрабатывается как любой другой MCU IP за исключением того, что транспортом является SIP вместо HTTP. Этот интерфейс проиллюстрирован показанным на рисунке как B** и C**, где B** является туннелированием CCCP по SIP, а C** является пакетом конференции XML-событий, туннелированным по SIP. В одной реализации логический модуль GW (шлюза) ACP реализуется, чтобы позволить ACP, уже поддерживающим протокол SIP-CX, прозрачно интегрироваться в инфраструктуру.
Поскольку собственная сигнализация (к примеру, в этом случае сигнализация PSTN) не видима компоненту Focus, реализуется дополнительное установление связи безопасности (адресующая авторизация) между компонентом Focus и MCU ACP (и GW ACP).
MCU данных не нуждается в реализации SIP. Следовательно, попытка посредством клиента выполнить входящее коммутируемое подключение к конференции будет иметь результатом перенаправление к URI HTTP, указывающему на MCU данных. Отметим, что все вопросы безопасности (включая аутентификацию и авторизацию) могут рассматриваться непосредственно между клиентом данных и MCU данных с использованием PSOM.
Относительно состояния и уведомлений конференции, каждый MCU в системе хранит информацию о состоянии для каждой из конференций, для которых он выступает в качестве хоста. Эта информация представляет конкретное для мультимедиа представление MCU конференции. MCU помещает изменения в состоянии их конференции в основной компонент Focus по пакету конференции интерфейса C* XML-событий по HTTP. Основной компонент Focus динамически принимает индивидуальную информацию о состоянии от каждого MCU (по интерфейсу C*), объединяет информацию и распространяет готовое представление конференции клиентам (по интерфейсу C) согласно каждой клиентской подписке и правам доступа. Каждый заинтересованный клиент и потенциальный участник может SUBSCRIBE (подписаться) на интересующую конференцию (с помощью URI конференции) с помощью основного компонента Focus (по интерфейсу C).
В первое уведомление о состоянии конференции каждому абоненту компонент Focus включает всю информацию о конференции. Если микширование для конференции выполняется посредством нескольких мультимедийных MCU, URI мультимедийной конференции, маршрутизируемые к каждому из MCU, перечисляются как conf-URI конференции. Клиент анализирует XML-документ состояния конференции и инициализирует соответствующую собственную сигнализацию (к примеру, INVITE по интерфейсу D или MCU данных по интерфейсу L) в направлении MCU.
Использование SIP означает, что участник может присоединяться и выходить из конференции. Использование SIP также означает, что участник может изменить собственные мультимедийные потоки посредством отправки повторного INVITE в MCU. Этот вид операции называется "собственной сигнализацией" и показан как интерфейс D. Эти операции не затрагивают состояние других участников в конференции.
Ограниченные операции для управления другими участниками конференции (называемые "сторонней сигнализацией") через компонент Focus с помощью SIP также могут быть получены. Чтобы выполнять более универсальное управление конференциями, пользовательский клиент может реализовать CCCP-клиент. Используя CCCP по интерфейсу B, клиент может повлиять на собственное состояние, состояние других участников и состояние компонентов Focus/MCU, что может косвенно повлиять на состояние участников конференции. Управление конференциями с помощью CCCP логически выполняется для состояния конференции. Используя запросы CCCP, клиент выражает то, каким бы он хотел видеть состояние конференции. CCCP-сервер выполняет операцию и обновляет свое "главное" состояние конференции так, чтобы отразить изменения.
Рассмотрим, например, запрос "поместить конкретные мультимедиа конкретного участника в режим ожидания". Чтобы клиент запросил эту операцию, он сначала должен узнать о конкретном участнике с его активными потоками и затем явно указать этого участника и конкретный поток с помощью CCCP. Компонент Focus предоставляет достаточно универсальную информацию о состоянии в уведомлениях так, чтобы клиенты могли выдавать явные команды управления для системы конференцсвязи. Конечный ответ компонента Focus включает в себя состояние операции и может включать в себя затронутую часть состояния конференции. Отметим, что независимо от описанной транзакции CCCP, об изменении состояния конференции можно сообщать пользователям, подписанным на пакет состояния конференции, согласно их правам доступа.
Компонент Focus создает новую конференцию с помощью компонента MCU Factory. Компонент Focus включает в себя список доступных компонентов MCU Factory в системе или пуле с соответствующими URI, поддерживаемыми типами мультимедиа, и URI управления для каждого. Каждый компонент MCU Factory представляет логический набор MCU, имеющих поддерживаемый тип мультимедиа, где новые конференции могут быть выделены. Чтобы выделить новую конференцию, компонент Focus выбирает один совместимый компонент MCU Factory из таблицы и выдает запрос CCCP-примитива getMcu для своего URI управления (по интерфейсу F). CCCP-запрос на то, чтобы выбрать MCU, может содержать объект конференции, описывающий требуемое описание конференции и характеристики. Успешный ответ включает в себя URI управления MCU, которому адресуются CCCP-запросы. В случае сбоя компонент Focus пробует другой совместимый компонент MCU Factory. Отметим, что URI управления компонентом Factory MCU и URI управления MCU могут быть одинаковыми или различными URI согласно реализации компонента Factory MCU. Описанное разложение позволяет каждому поставщику MCU реализовать балансировку нагрузки (или другого вида логики) для своей фермы MCU, не затрагивая архитектуру.
Интерфейс управления между основным компонентом Focus и каждым MCU (интерфейс B*) служит для выдачи запросов от компонента Focus и может быть реализован с помощью CCCP. По этому интерфейсу компонент Focus выступает в качестве CCCP-клиента, а MCU выступает в качестве CCCP-сервера.
Далее предоставляется краткое изложение интерфейсов. Интерфейс A является SIP-интерфейсом для создания специальной (ad hoc) конференции; интерфейс B служит для cc-конференцсвязи (собственной и ограниченной сторонней) и CCCP по SIP; интерфейс B* служит для CCCP по HTTP; интерфейс B** служит для CCCP-туннелирования по SIP; интерфейс B*** - SIP-CX по SIP; интерфейс C служит для SUBSCRIBE/NOTIFY относительно пакета конференции по SIP; интерфейс C* служит для XML-событий пакета конференции по HTTP; интерфейс C** служит для XML-событий пакета конференции, туннелированных по SIP; интерфейс C*** служит для XML-событий пакета конференции как в SIP-CX; интерфейс D служит только для собственных SIP; интерфейс F служит для CCCP по HTTP только для создания/выделения конференции; интерфейс L служит для протокола данных (данные и собственная сигнализация); интерфейс М служит для мультимедиа (к примеру, RTP/RTPC для голоса и видео); интерфейс P служит для обмена данными между компонентом Focus Factory и компонентом Focus.
При использовании в данной заявке термины "компонент", "система" ссылаются на связанный с компьютером объект либо аппаратные средства, комбинацию аппаратных средств и программного обеспечения, программное обеспечение или программное обеспечение в ходе исполнения. Например, компонент может быть, но не только, процессом, запущенным на процессоре, процессором, жестким диском, несколькими устройствами накопления (оптического и/или магнитного носителя хранения), объектом, исполняемым файлом, потоком исполнения, программой и/или компьютером. В качестве иллюстрации, и приложение, запущенное на сервере, и сервер может быть компонентом. Один или более компонентов могут храниться внутри процесса и/или потока исполнения, и компонент может быть локализован на компьютере и/или распределен между двумя и более компьютерами.
Со ссылкой на фиг. 27 иллюстрируется блок-схема компьютера, выполненного с возможностью приводить в исполнение централизованную и распределенную конференцсвязь в соответствии с раскрытой архитектурой. Для того чтобы предусмотреть дополнительный контекст для его различных аспектов, фиг. 27 и последующее обсуждение предоставляют краткое общее описание подходящей вычислительной среды 3200, в которой различные аспекты изобретения могут быть реализованы. Хотя вышеприведенное описание дано в общем контексте машиноисполняемых инструкций, которые могут выполняться на одном или более компьютеров, специалистам в данной области техники должно быть понятно, что изобретение также может быть реализовано в комбинации с другими программными модулями и/или как комбинация аппаратных средств и программного обеспечения.
В общем, программные модули включают в себя процедуры, программы, компоненты, структуры данных и т.п., которые выполняют конкретные задачи и/или реализуют конкретные абстрактные типы данных. Более этого, специалисты в данной области техники должны принимать во внимание, что заявленные способы могут быть осуществлены на практике с другими конфигурациями вычислительных систем, в том числе с однопроцессорными или многопроцессорными вычислительными системами, миникомпьютерами, универсальными компьютерами, а также персональными компьютерами, карманными вычислительными устройствами, основанной на микропроцессорах или программируемой бытовой электронной аппаратурой и т.п., каждая из которых может быть функционально соединена с одним или более ассоциированных устройств.
Проиллюстрированные аспекты изобретения также могут быть осуществлены на практике в распределенных вычислительных окружениях, в которых определенные задачи выполняются удаленными обрабатывающими устройствами, которые связаны через сеть передачи данных. В распределенном вычислительном окружении программные модули могут быть размещены как в локальных, так и в удаленных запоминающих устройствах.
Компьютер типично включает в себя множество машиночитаемых носителей. Машиночитаемые носители могут быть любыми доступными носителями, к которым может быть осуществлен доступ компьютером, и включают в себя энергозависимые и энергонезависимые носители, съемные и несъемные носители. В качестве примера, но не ограничения, машиночитаемые носители могут содержать компьютерные носители хранения и среду передачи данных. Компьютерные носители хранения включают в себя энергозависимые и энергонезависимые, съемные и стационарные носители, реализованные любым способом или технологией хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерные носители хранения данных включают в себя, но не только, RAM, ROM, EEPROM, флэш-память или другую технологию памяти, CD-ROM, цифровые видеодиски (DVD) или другие оптические устройства хранения, магнитные кассеты, магнитную ленту, устройства хранения на магнитных дисках или другие магнитные устройства хранения, либо любой другой носитель, который может быть использован, чтобы хранить требуемую информацию, и к которому может получить доступ компьютер.
Согласно фиг. 27, примерная среда 2700 для реализации различных аспектов включает в себя компьютер 2702, причем компьютер 2702 включает в себя процессор 2704, системное запоминающее устройство 2706 и системную шину 2708. Системная шина 2708 соединяет системные компоненты, в том числе, но не только, системное запоминающее устройство 2706 с процессором 2704. Процессор 2704 может быть любым из различных предлагаемых на рынке процессоров. Архитектуры с двумя микропроцессорами и другие многопроцессорные архитектуры также могут быть использованы в качестве процессора 2704.
Системная шина 2708 может быть любой из нескольких типов шинных структур, которые могут дополнительно соединяться с шиной памяти (с контроллером памяти или без него), периферийной шиной и локальной шиной с помощью любой из множества предлагаемых на рынке шинных архитектур. Системное запоминающее устройство 2706 включает в себя постоянное запоминающее устройство (ROM) 2710 и оперативное запоминающее устройство (RAM) 2712. Базовая система ввода/вывода (BIOS) сохраняется в энергонезависимой памяти 2710, такой как ROM, EPROM, EEPROM, причем BIOS содержит базовые процедуры, которые помогают передавать информацию между элементами в компьютере 2702, к примеру, во время запуска. RAM 2712 также может включать в себя высокоскоростное RAM, такое как статическое RAM для кэширования данных.
Компьютер 2702 дополнительно включает в себя внутренний жесткий диск (HDD) 2714 (например, EIDE, SATA), причем этот внутренний жесткий диск 2714 также может быть выполнен с возможностью внешнего использования в подходящем шасси (не показано), накопитель 2716 на гибких магнитных дисках (FDD) (например, чтобы считывать или записывать на сменную дискету 2718) и накопитель 2720 на оптических дисках (например, осуществляющий считывание диска 2722 CD-ROM, или чтобы считывать или записывать на другие оптические носители большой емкости, такие как DVD). Жесткий диск 2714, накопитель 2716 на магнитных дисках и накопитель 2720 на оптических дисках могут быть подключены к системной шине 2708 посредством, соответственно, интерфейса 2724 жесткого диска, интерфейса 2726 накопителя на магнитных дисках и интерфейса 2728 накопителя на оптических дисках. Интерфейс 2724 для реализаций с внешним накопителем включает в себя, по меньшей мере, одну или обе из интерфейсных технологий универсальной последовательной шины (USB) или IEEE 1394 (FireWire). Другие технологии подключения внешних накопителей находятся в пределах рассмотрения настоящего изобретения.
Накопители и их ассоциированные машиночитаемые носители предусматривают энергонезависимое хранение данных, структур данных, машиноисполняемых инструкций и так далее. Для компьютера 2702 накопители и носители обеспечивают хранение любых данных в надлежащем цифровом формате. Несмотря на то, что описание машиночитаемых носителей, приведенное выше, ссылается на HDD, сменную магнитную дискету и съемные оптические носители, такие как CD или DVD, специалисты в данной области техники должны принимать во внимание, что другие типы носителей, которые являются пригодными для считывания компьютером, такие как ZIP-накопители, магнитные кассеты, карты флэш-памяти, картриджи и т.п., также могут быть использованы в примерной операционной среде, и, дополнительно, любые такие носители могут содержать машиноисполняемые инструкции для выполнения способов согласно заявленному изобретению.
Ряд программных модулей может быть сохранен в накопителях и RAM 2712, включая операционную систему 2730, одну или более прикладных программ 2732, другие программные модули 2734 и программные данные 2736. Все или части операционной системы, приложений, модулей, и/или данных могут также кэшироваться в RAM 2712. Следует принимать во внимание, что изобретение может быть реализовано с различными предлагаемыми на рынке операционными системами или комбинациями операционных систем.
Пользователь может вводить команды и информацию в компьютер 2702 через одно или более проводных/беспроводных устройств ввода данных, например, клавиатуру 2738 и указательное устройство, такое как мышь 2740. Другие устройства ввода данных (не показаны) могут включать в себя микрофон, ИК-пульт дистанционного управления, джойстик, игровую панель, перо, сенсорный экран и т.п. Эти и другие устройства ввода данных часто подключены к процессору 2704 через интерфейс 2742 устройств ввода, который соединяется с системной шиной 2708, но могут быть подключены посредством других интерфейсов, таких как параллельный порт, последовательный порт стандарта IEEE 1394, игровой порт, USB-порт, ИК-интерфейс и т.п.
Монитор 2744 или другой тип устройства отображения также подключен к системной шине 2708 через такой интерфейс, как видеоадаптер 2746. Помимо монитора 2744, компьютер в типичном варианте включает в себя другие периферийные устройства вывода данных (не показаны), такие как динамики, принтеры и т.п.
Компьютер 2702 может работать в сетевом окружении, используя логические подключения через проводную и/или беспроводную связь к одним или более удаленным компьютерам, таким как удаленный компьютер(ы) 2748. Удаленный компьютер(ы) 2748 может быть рабочей станцией, сервером, маршрутизатором, персональным компьютером, портативным компьютером, основанным на микропроцессоре развлекательным устройством, равноправным устройством или другим общим сетевым узлом, и типично включает в себя многие или все элементы, описанные относительно компьютера 2702, хотя в целях краткости только запоминающее устройство/устройство 2750 хранения проиллюстрировано. Проиллюстрированные логические подключения включают в себя проводные/беспроводные возможности подключения к локальной вычислительной сети (LAN) 2752 и/или боле крупным сетям, например, глобальной вычислительной сети (WAN) 2754. Такие сетевые окружения LAN и WAN являются общепринятыми в офисах и компаниях и способствуют корпоративным вычислительным сетям, таким как сети интранет, все из которых могут подключиться к сети глобальной связи, например Интернету.
При использовании в сетевой среде LAN, компьютер 2702 подключается к локальной сети 2752 через сетевой интерфейс проводной и/или беспроводной связи или адаптер 2756. Адаптер 2756 позволяет упрощать проводную или беспроводную связь с LAN 2752, которая может также включать в себя беспроводную точку доступа, расположенную в ней для того, чтобы обмениваться данными с беспроводным адаптером 2756.
При использовании в сетевой среде WAN, компьютер 2702 может включать в себя модем 2758 или подключаться к серверу связи в WAN 2754, или имеет другое средство для установления связи по WAN 2754, к примеру, посредством Интернета. Модем 2758, который может быть внутренним или внешним и проводным или беспроводным устройством, подключается к системной шине 2708 через интерфейс 2742 последовательного порта. В сетевой среде программные модули, показанные относительно компьютера 2702, или их части могут быть сохранены в удаленном запоминающем устройстве/устройстве 2750 хранения. Следует принимать во внимание, что показанные сетевые соединения являются примерными, и другие средства установления линии связи между компьютерами могут быть использованы.
Компьютер 2702 выполнен с возможностью обмениваться данными с любыми беспроводными устройствами или объектами, функционально находящимися в беспроводной связи, например, принтером, сканером, настольным и/или портативным компьютером, портативным цифровым помощником, спутником связи, любой единицей оборудования или местоположением, ассоциированным с обнаруживаемым беспроводными средствами тегом (например, киоском, новостным стендом, помещением для отдыха) и телефоном. Это включает в себя, по меньшей мере, беспроводные технологии Wi-Fi и Bluetooth™. Таким образом, связь может быть заранее заданной структурой, как в случае традиционной сети, или просто специальной связью, по меньшей мере, между двумя устройствами.
На фиг. 28 проиллюстрирована блок-схема примерной вычислительной среды 2800, которое упрощает распределенную мультимедийную конференцсвязь. Система 2800 включает в себя один или более клиентов 2802. Клиентом(ами) 2802 могут быть аппаратные средства и/или программное обеспечение (к примеру, потоки, процессы, вычислительные устройства). Клиент(ы) 2802 может, например, хранить куки-файл(ы) и/или ассоциированную контекстную информацию посредством использования настоящего изобретения.
Система 2800 также включает в себя один или более серверов 2804. Сервером(ами) 2804 также могут быть аппаратные средства и/или программное обеспечение (к примеру, потоки, процессы, вычислительные устройства). Серверы 2804, например, могут содержать потоки, чтобы выполнять преобразования, например, посредством применения архитектуры. Один из возможных обменов данными между клиентом 2802 и сервером 2804 может выполняться в форме пакета данных, выполненного с возможностью передачи между двумя или более вычислительными процессами. Пакет данных, например, может включать в себя куки-файл и/или ассоциированную контекстную информацию. Система 2800 включает в себя платформу 2806 связи (например, глобальную сеть передачи данных, такую как Интернет), которая может быть использована, чтобы содействовать обмену данными между клиентом(ами) 2802 и сервером(ами) 2804.
Связь может быть реализована посредством проводной (в том числе оптоволоконной) и/или беспроводной технологии. Клиент(ы) 2802 функционально подключены к одному или более клиентских хранилищ 2808 данных, которые могут быть использованы для того, чтобы сохранять информацию локально по отношению к клиенту(ам) 2802 (например, куки-файл(ы) и/или ассоциированную контекстную информацию). Аналогично, серверы 2804 функционально подключены к одному или более серверных хранилищ 2810 данных, которые могут быть использованы для того, чтобы сохранять информацию локально по отношению к серверам 2804.
То, что описано выше, включает в себя примеры раскрытого изобретения. Конечно, невозможно описать каждую вероятную комбинацию компонентов и/или методологий, но специалистам в данной области техники будет понятно, что многие дополнительные комбинации и перестановки допустимы. Следовательно, изобретение предназначено для охвата всех подобных изменений, модификаций и вариантов, которые попадают в пределы сущности и объема прилагаемой формулы изобретения. Более того, в пределах, в которых термин "включает" используется либо в подробном описании, либо в формуле изобретения, этот термин интерпретируется как «включающий в себя» способом, аналогичным термину "содержащий", как термин "содержащий" интерпретируется при использовании в качестве переходного слова в формуле изобретения.

Claims (20)

1. Компьютеризованная система конференцсвязи, содержащая: устройство хранения, которое хранит инструкции; и
модуль обработки, который осуществляет доступ к инструкциям и исполняет их, причем исполнение инструкций модулем обработки побуждает систему конференцсвязи обеспечивать компонент управления конференциями, который:
принимает запрос от клиента для создания сеанса конференции;
после приема запроса для создания сеанса конференции выделяет для сеанса конференции распределенный мультимедийный компонент, который обеспечивает клиенту мультимедиасеанс конференции; и
возвращает клиенту универсальный идентификатор ресурса распределенного мультимедийного компонента после того, как компонент управления конференциями выделил распределенный мультимедийный компонент для сеанса конференции.
2. Система конференцсвязи по п.1, в которой распределенный мультимедийный компонент является многоточечным устройством управления, которое приспосабливает, по меньшей мере, одно из данных, аудиосигналов, видеосигналов и сигналов мгновенного обмена сообщениями.
3. Система конференцсвязи по п.1, в которой компонент управления конференциями обеспечивает компонент уведомления, который принимает подписки клиентов на сеанс конференции, и
уведомляет подписавшихся клиентов для выполнения изменений в состоянии, ассоциированном с сеансом конференции.
4. Система конференцсвязи по п.1, в которой компонент управления конференциями обеспечивает компонент политик и списков, который поддерживает правила, которые управляют работой сеанса конференции и позволяют участнику присоединиться к сеансу конференции.
5. Система конференцсвязи по п.1, в которой компонент управления конференциями обеспечивает компонент аутентификации, который устанавливает безопасность для сеанса конференции посредством ограничения доступа к сеансу конференции на основе идентификационной информации участника.
6. Система конференцсвязи по п.1, в которой компонент управления конференциями обеспечивает компонент выделения, который выделяет распределенный мультимедийный компонент для сеанса конференции.
7. Система конференцсвязи по п.1, в которой компонент управления конференциями обеспечивает компонент диспетчеризации, который осуществляет диспетчеризацию сеанса конференции.
8. Система конференцсвязи по п.1, содержащая пул конференцсвязи из внешних интерфейсных серверов, каждый из которых запускает экземпляр сеанса конференции, причем пул внешних интерфейсных серверов включает в себя модуль обработки, при этом клиент осуществляет доступ к одному из внешних интерфейсных серверов для доступа к сеансу конференции.
9. Система конференцсвязи по п.8, в которой пул конференцсвязи из внешних интерфейсных серверов включает в себя выравниватель нагрузки, который балансирует нагрузку сеанса между внешними интерфейсными серверами.
10. Способ управления многосторонней конференцией, содержащий этапы, на которых:
принимают посредством компонента управления конференциями запрос от участника сеанса для создания сеанса конференции, причем компонент управления конференциями обеспечивается компьютерным устройством;
создают и конфигурируют сеанс конференции в ответ на запрос;
после приема запроса оценивают доступность распределенных многоточечных устройств управления (MCU) для мультимедийного доступа участником сеанса;
после оценки доступности распределенных MCU выделяют доступный MCU сеансу конференции для доступа к сеансу участником сеанса, причем доступный MCU является одним из распределенных MCU;
возвращают участнику сеанса посредством компонента управления конференциями универсальный идентификатор ресурса доступного MCU после выделения доступного MCU для сеанса конференции; и
аутентифицируют доступ участника к сеансу конференции.
11. Способ по п.10, дополнительно содержащий этап, на котором поддерживают информацию о состоянии сеанса конференции в базе данных.
12. Способ по п.10, дополнительно содержащий этапы, на которых:
принимают индивидуальную информацию о состоянии для каждого MCU из распределенных MCU, которое выделено для сеанса конференции;
формируют объединенную информацию о состоянии посредством объединения индивидуальной информации о состоянии для MCU, выделенных для сеанса конференции; и
распространяют объединенную информацию о состоянии каждому клиенту сеанса конференции.
13. Способ по п.10, дополнительно содержащий этап, на котором обновляют список сеанса на основе изменений в участниках сеанса.
14. Способ по п.10, дополнительно содержащий этап, на котором ассоциируют URI-адрес с каждым из MCU, причем участник сеанса осуществляет доступ к сеансу конференции через один из MCU.
15. Способ по п.10, в котором упомянутый запрос является запросом протокола инициирования сеанса (SIP).
16. Способ по п.10, дополнительно содержащий этап, на котором выполняют самозагрузку доступных MCU в сеанс конференции.
17. Способ по п.10, дополнительно содержащий этап, на котором присоединяются к доступному MCU с использованием входящего коммутируемого подключения к URI MCU, исходящего коммутируемого подключения с использованием URI MCU или прямого приглашения от доступного MCU к URI MCU, причем URI MCU идентифицирует доступное MCU.
18. Способ по п.10, дополнительно содержащий этап, на котором инициируют специальное приглашение для другого участника.
19. Способ по п.10, дополнительно содержащий этап, на котором представляют одно представление конференции для сеанса конференции через компонент управления конференциями.
20. Машиночитаемый носитель, который хранит инструкции, причем исполнение этих инструкций компьютерным устройством конфигурирует компьютерное устройство для обеспечения компонента централизованного управления конференциями, который:
принимает запрос от клиента для инициирования сеанса конференции;
создает экземпляр конференции для сеанса конференции в ответ на прием запроса;
создает и отправляет клиенту адрес сеанса конференции в качестве ответа на запрос;
выделяет для сеанса конференции распределенный MCU после приема запроса, причем компонент управления конференциями выделяет распределенный MCU для сеанса конференции на основе доступности типов мультимедиа, предоставляемых этим распределенным MCU;
возвращает клиенту универсальный идентификатор ресурса распределенного MCU после того, как компонент управления конференциями выделил распределенный MCU для сеанса конференции; и
управляет состоянием конференции во время сеанса конференции.
RU2009109214/07A 2006-09-15 2007-09-05 Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи RU2459371C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/522,024 2006-09-15
US11/522,024 US8817668B2 (en) 2006-09-15 2006-09-15 Distributable, scalable, pluggable conferencing architecture

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2012116580/08A Division RU2012116580A (ru) 2006-09-15 2012-04-24 Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи

Publications (2)

Publication Number Publication Date
RU2009109214A RU2009109214A (ru) 2010-09-20
RU2459371C2 true RU2459371C2 (ru) 2012-08-20

Family

ID=39184114

Family Applications (2)

Application Number Title Priority Date Filing Date
RU2009109214/07A RU2459371C2 (ru) 2006-09-15 2007-09-05 Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи
RU2012116580/08A RU2012116580A (ru) 2006-09-15 2012-04-24 Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи

Family Applications After (1)

Application Number Title Priority Date Filing Date
RU2012116580/08A RU2012116580A (ru) 2006-09-15 2012-04-24 Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи

Country Status (11)

Country Link
US (1) US8817668B2 (ru)
EP (1) EP2067302B1 (ru)
JP (1) JP5337698B2 (ru)
KR (1) KR101424301B1 (ru)
CN (2) CN102904733B (ru)
AU (1) AU2007296792B2 (ru)
BR (1) BRPI0714703A2 (ru)
CA (1) CA2660874C (ru)
MX (1) MX2009002288A (ru)
RU (2) RU2459371C2 (ru)
WO (1) WO2008033706A1 (ru)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2653280C2 (ru) * 2012-12-13 2018-05-07 Самсунг Электроникс Ко., Лтд. Способ управления устройством для регистрации информации об устройстве для периферийного устройства и устройство и система для этого
RU2653231C1 (ru) * 2016-12-16 2018-05-07 Общество с ограниченной ответственностью "Иридиум" Способ и система объединения компонентов для управления объектами автоматизации
RU184009U1 (ru) * 2018-05-31 2018-10-11 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации Система удаления остаточной информации из памяти терминалов и серверов многоточечной конференцсвязи
US10116505B2 (en) 2012-12-13 2018-10-30 Samsung Electronics Co., Ltd. Device control method for registering device information of peripheral device, and device and system thereof
RU2772345C2 (ru) * 2017-02-02 2022-05-19 Нотарайз, Инк. Система и способ для синхронизации взаимодействий между несколькими программными клиентами во встрече с нотариусом
US11443284B2 (en) 2017-02-02 2022-09-13 Notarize, Inc. System and method for synchronizing notary meeting interactions between multiple software clients

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1985093A1 (fr) * 2006-02-15 2008-10-29 France Télécom Procédé et dispositif de gestion d'au moins un groupe d'utilisateurs, produit programme d'ordinateur correspondant
US9094520B2 (en) * 2007-01-08 2015-07-28 Cisco Technology, Inc. Reconferencing capability for networked phones
US8682975B2 (en) * 2007-03-02 2014-03-25 Solacom Technologies Inc System and method for identity managed collaboration
US8103782B2 (en) * 2007-03-30 2012-01-24 Societe de Commercialisation des Produits de la Recherche Appliquee—SOCPRA, Sciences et Genie, S.E.C. Session mobility in a full-mesh conference using session initiation protocol
US8732236B2 (en) * 2008-12-05 2014-05-20 Social Communications Company Managing network communications between network nodes and stream transport protocol
US9369294B2 (en) * 2007-12-14 2016-06-14 Telecommunication Systems, Inc. Reverse 911 using multicast session internet protocol (SIP) conferencing of voice over internet protocol (VoIP) users
US20090168778A1 (en) * 2007-12-28 2009-07-02 Zulfiqar Ahmed Extending communication protocols
EP2272204B1 (en) * 2008-04-21 2018-12-26 Syngrafii Inc. System, method and computer program for conducting transactions remotely
US20110069141A1 (en) * 2008-04-30 2011-03-24 Mitchell April S Communication Between Scheduled And In Progress Event Attendees
KR101519935B1 (ko) * 2008-04-30 2015-05-14 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 이벤트 관리 시스템
CN101610324A (zh) * 2008-06-18 2009-12-23 深圳华为通信技术有限公司 提示呼叫进展状态的方法、会议控制设备以及会议系统
US8208000B1 (en) 2008-09-09 2012-06-26 Insors Integrated Communications Methods, systems and program products for managing video conferences
US8166184B2 (en) * 2008-09-26 2012-04-24 Microsoft Corporation Integrating enterprise identity authorization in conferences
US20110179157A1 (en) * 2008-09-26 2011-07-21 Ted Beers Event Management System For Creating A Second Event
US20100091687A1 (en) * 2008-10-15 2010-04-15 Ted Beers Status of events
US8849972B2 (en) 2008-11-25 2014-09-30 Polycom, Inc. Method and system for dispatching received sessions between a plurality of instances of an application using the same IP port
KR20130010910A (ko) 2008-12-05 2013-01-29 소우셜 커뮤니케이션즈 컴퍼니 실시간 커널
US9069851B2 (en) 2009-01-15 2015-06-30 Social Communications Company Client application integrating web browsing and network data stream processing for realtime communications
US8112480B2 (en) * 2009-01-16 2012-02-07 Microsoft Corporation Signaling support for sharer switching in application sharing
US8301879B2 (en) * 2009-01-26 2012-10-30 Microsoft Corporation Conversation rights management
US20100205540A1 (en) * 2009-02-10 2010-08-12 Microsoft Corporation Techniques for providing one-click access to virtual conference events
US7941551B2 (en) 2009-02-25 2011-05-10 Microsoft Corporation Tunneling of remote desktop sessions through firewalls
US20100220634A1 (en) * 2009-02-27 2010-09-02 Douglas Gisby Systems and methods for facilitating conference calls using security tokens
US8290135B2 (en) 2009-02-27 2012-10-16 Research In Motion Limited Systems and methods for facilitating conference calls using security keys
US20100235446A1 (en) * 2009-03-16 2010-09-16 Microsoft Corporation Techniques to make meetings discoverable
CN101594512B (zh) * 2009-06-30 2012-01-18 中兴通讯股份有限公司 实现高清多画面的终端、多点控制单元、系统及方法
US8169936B2 (en) 2009-12-22 2012-05-01 Motorola Solutions, Inc. Decoupled cascaded mixers architechture and related methods
EP2339812B1 (en) * 2009-12-23 2014-04-09 BlackBerry Limited Method for designating of hosting control for a conference call
US8520822B2 (en) 2009-12-23 2013-08-27 Blackberry Limited Method for designating of hosting control for a conference call
US8275843B2 (en) 2010-03-12 2012-09-25 Microsoft Corporation Collaborative conference experience improvement
US8875031B2 (en) * 2010-05-12 2014-10-28 Blue Jeans Network, Inc. Systems and methods for shared multimedia experiences in virtual videoconference rooms
US8290128B2 (en) * 2010-06-10 2012-10-16 Microsoft Corporation Unified communication based multi-screen video system
EP2424237A1 (en) * 2010-08-27 2012-02-29 Televic Conference NV Device for use in a digital conference system
JP5899710B2 (ja) * 2010-09-06 2016-04-06 株式会社リコー 伝送システム
US20120062687A1 (en) * 2010-09-13 2012-03-15 Polycom, Inc. Systems and methods for scheduling shared program content videoconferencing
US8705410B2 (en) * 2010-09-30 2014-04-22 Avaya Inc. Global conference roster for distributed bridges
WO2012060747A1 (en) * 2010-11-03 2012-05-10 Telefonaktiebolaget L M Ericsson (Publ) Signalling gateway, method, computer program and computer program product for communication between http and sip
US8712391B2 (en) * 2010-12-08 2014-04-29 Qualcomm Incorporated Client-managed group communication sessions within a wireless communications system
CN102025971A (zh) * 2010-12-15 2011-04-20 广东威创视讯科技股份有限公司 一种视频会议媒体服务器资源的动态分配方法
US8300790B2 (en) 2010-12-27 2012-10-30 Avaya Inc. Method and system for automatic conference call session migration
CN102136920B (zh) * 2010-12-28 2013-11-06 华为技术有限公司 网络会议的方法和装置
EP2487859B1 (en) * 2011-02-10 2014-04-30 BlackBerry Limited Method for authenticating client devices for a conference call
US8698872B2 (en) * 2011-03-02 2014-04-15 At&T Intellectual Property I, Lp System and method for notification of events of interest during a video conference
US9235826B1 (en) 2011-06-16 2016-01-12 Google Inc. Managing delayed participation in a communication session
US8711202B2 (en) 2011-07-26 2014-04-29 Lifesize Communications, Inc. Performing failover for a plurality of different types of videoconferencing devices
US20130061153A1 (en) * 2011-09-07 2013-03-07 Avaya Inc. System and Method for Inserting a Control System Into a Conference
WO2013067692A1 (zh) * 2011-11-09 2013-05-16 华为技术有限公司 一种多会议系统互通的方法及系统
JP5327917B2 (ja) * 2012-02-27 2013-10-30 Necインフロンティア株式会社 電子会議システム、帯域管理方法および帯域管理プログラム
US20140006977A1 (en) * 2012-03-30 2014-01-02 Karriem Lateff Adams Integrated social network internet operating system and management interface
US9083771B2 (en) * 2012-06-21 2015-07-14 Ibasis, Inc. System and methods for multi-participant teleconferencing using preferred forms of telecommunication
US10601880B2 (en) * 2015-07-17 2020-03-24 Avaya Inc. Conference reconstruction in SIP networks
US10742692B2 (en) 2012-08-09 2020-08-11 Avaya Inc. Snap-in invocation for call reconstruction
CN103634562B (zh) * 2012-08-24 2017-08-29 中国电信股份有限公司 用于视频会议的数据传送方法和系统
WO2014062509A1 (en) 2012-10-18 2014-04-24 Dolby Laboratories Licensing Corporation Systems and methods for initiating conferences using external devices
US20140122600A1 (en) * 2012-10-26 2014-05-01 Foundation Of Soongsil University-Industry Cooperation Conference server in a system for providing a conference service in rtcweb
FR2998995A1 (fr) * 2012-12-03 2014-06-06 France Telecom Procede de communication entre plusieurs utilisateurs munis de terminaux de communication, par l'intermediaire d'une espace virtuel de communication
US9559939B2 (en) * 2013-03-15 2017-01-31 Genesys Telecommunications Laboratories, Inc. System and method for handling resource failure in a hybrid contact center operations environment
US9591137B2 (en) 2013-03-15 2017-03-07 Genesys Telecommunications Laboratories, Inc. System and method for providing contact center services in a hybrid operations environment
US10277741B2 (en) 2013-03-15 2019-04-30 Genesys Telecommunications Laboratories, Inc. System and method for transmitting signaling and media from a hybrid contact center operations environment
US10154143B2 (en) 2013-03-15 2018-12-11 Genesys Telecommunications Laboratories, Inc. System and method for dynamically selecting a dial plan
US9948782B2 (en) 2013-03-15 2018-04-17 Genesys Telecommunications Laboratories, Inc. Hybrid cloud architecture with optimized local delivery
CN103281315A (zh) * 2013-05-13 2013-09-04 南昊(北京)科技有限公司 电子白板及其交互方法
US9065969B2 (en) * 2013-06-30 2015-06-23 Avaya Inc. Scalable web real-time communications (WebRTC) media engines, and related methods, systems, and computer-readable media
CN103369292B (zh) * 2013-07-03 2016-09-14 华为技术有限公司 一种呼叫处理方法及网关
CN103532829A (zh) * 2013-09-03 2014-01-22 国家电网公司 一种基于xmpp协议的即时通信系统电子白板接入方法
US20150092615A1 (en) * 2013-10-02 2015-04-02 David Paul Frankel Teleconference system with overlay aufio method associate thereto
US9118809B2 (en) 2013-10-11 2015-08-25 Edifire LLC Methods and systems for multi-factor authentication in secure media-based conferencing
US9118654B2 (en) 2013-10-11 2015-08-25 Edifire LLC Methods and systems for compliance monitoring in secure media-based conferencing
CN104601339B (zh) 2013-10-30 2018-05-25 华为技术有限公司 网真会议的控制方法、装置、服务器和终端设备
US9049299B2 (en) 2013-10-31 2015-06-02 Citrix Systems, Inc. Using audio signals to identify when client devices are co-located
JP2015156176A (ja) * 2014-02-21 2015-08-27 株式会社リコー セッション制御システム、通信システム、プログラム、及びセッション制御方法
US9516268B2 (en) 2014-03-28 2016-12-06 International Business Machines Corporation Maintaining audio video conference continuity
US9282130B1 (en) 2014-09-29 2016-03-08 Edifire LLC Dynamic media negotiation in secure media-based conferencing
US9131112B1 (en) 2014-09-29 2015-09-08 Edifire LLC Dynamic signaling and resource allocation in secure media-based conferencing
US9167098B1 (en) * 2014-09-29 2015-10-20 Edifire LLC Dynamic conference session re-routing in secure media-based conferencing
US9137187B1 (en) 2014-09-29 2015-09-15 Edifire LLC Dynamic conference session state management in secure media-based conferencing
US10425418B2 (en) * 2014-10-07 2019-09-24 Ricoh Company, Ltd. Information processing apparatus, communications method, and system
JP6593008B2 (ja) * 2014-10-07 2019-10-23 株式会社リコー 情報処理装置、通信方法、プログラム、システム
EP3244600B1 (en) 2015-01-30 2022-06-22 Huawei Technologies Co., Ltd. Method and apparatus for converting voice into text in multi-party call
US20160247123A1 (en) * 2015-02-24 2016-08-25 Cisco Technology, Inc. Converting Scheduling Information into Different Conferencing Domains
US10616278B1 (en) * 2015-03-30 2020-04-07 Amazon Technologies, Inc. Secure virtual meetings
US20170034235A1 (en) * 2015-07-27 2017-02-02 Browan Communications Inc. Electronic device, communication system and method for transmitting/receiving audio and video data
CN105391969A (zh) * 2015-12-14 2016-03-09 广东亿迅科技有限公司 一种分布式视频会议系统及终端入会的方法
CN105915355B (zh) * 2016-04-13 2019-11-12 邦彦技术股份有限公司 会议控制方法和装置
US10148707B2 (en) 2016-09-19 2018-12-04 International Business Machines Corporation System and method for maintaining a collaborative environment
US10038876B2 (en) * 2016-10-17 2018-07-31 Microsoft Technology Licensing, Llc Binding separate communication platform meetings
US10778728B2 (en) 2016-12-02 2020-09-15 Microsoft Technology Licensing, Llc. Cognitive resource selection
CN108347337B (zh) * 2017-01-23 2022-03-01 腾讯科技(深圳)有限公司 会议通信方法和装置
CN106941411B (zh) * 2017-01-24 2021-01-19 北京元心科技有限公司 终端管控方法及系统
DE102017108017A1 (de) 2017-04-13 2018-10-18 Unify Patente Gmbh & Co. Kg Verfahren zum Führen einer Audio- und/oder Videokonferenz
CN106878660B (zh) * 2017-04-20 2023-05-23 北京蓝海华业科技股份有限公司 一种多媒体远程会议系统
US10917445B2 (en) * 2017-04-20 2021-02-09 Saysearch, Inc. Communication sessions between computing devices using dynamically customizable interaction environments
US10275367B2 (en) * 2017-04-24 2019-04-30 Hewlett-Packard Development Company, L.P. Command source verification
CN108965772A (zh) * 2017-05-23 2018-12-07 中兴通讯股份有限公司 视讯会议实现方法及服务器、计算机可读存储介质
US10757155B2 (en) * 2017-05-24 2020-08-25 Nexmo, Inc. Method and server for real-time data streaming in a media session
KR102341022B1 (ko) * 2017-09-18 2021-12-17 삼성에스디에스 주식회사 컨퍼런스 시스템 및 상기 시스템에서의 컨퍼런스 접속 처리 방법
WO2019095084A1 (es) * 2017-11-17 2019-05-23 Latin Telecomunicaciones S.A. Interfaz de servicio del usuario y plataforma de gestión para videoconferencia y actividades de colaboración
US11621994B2 (en) * 2018-01-08 2023-04-04 Hewlett-Packard Development Company, L.P. Brokering servers based on remote access performance
RU2703357C2 (ru) * 2018-04-02 2019-10-16 Общество с ограниченной ответственностью "НеоБИТ" Способ защиты данных в системах конференцсвязи
CN112867989B (zh) * 2018-09-04 2024-07-02 阿韦瓦软件有限责任公司 基于流的组成以及监视服务器系统和方法
CN111131640A (zh) * 2018-10-31 2020-05-08 苏州璨鸿光电有限公司 多方影音通话控制系统及方法
CN111524314A (zh) * 2019-04-04 2020-08-11 重庆点控科技有限公司 会议应急系统
CN110086831A (zh) * 2019-05-23 2019-08-02 智者四海(北京)技术有限公司 用于网关的鉴权方法
US10904025B2 (en) * 2019-06-04 2021-01-26 International Business Machines Corporation Web meeting bookmarking system based on level of relevancy and importance
WO2020252409A1 (en) * 2019-06-13 2020-12-17 Mersive Technologies, Inc. Bridging video conference room system and associated methods
CN113840112A (zh) * 2020-06-24 2021-12-24 中兴通讯股份有限公司 会议级联方法及系统、终端、计算机可读存储介质
US11366583B1 (en) 2021-02-02 2022-06-21 Bank Of America Corporation Computer-to-computer users# edit and event transfer and synchronization
CN117319359A (zh) * 2022-06-24 2023-12-29 华为云计算技术有限公司 一种资源管理方法及系统
US11882173B1 (en) * 2022-09-12 2024-01-23 Sap Se Capture network communication via client extension

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343313B1 (en) * 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
RU2004125595A (ru) * 2002-01-23 2006-02-10 Хювэй Текнолоджиз Ко., Лтд. (CN) Система организации услуги видеоконференции, способ предоставления услуги видеоконференции и центр услуг

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263398A (ja) 1995-03-22 1996-10-11 Nippon Telegr & Teleph Corp <Ntt> 通信サービス方法及びシステム
US6430281B1 (en) 1996-03-14 2002-08-06 British Telecommunications Public Limited Company Intelligent telecommunications network providing automated call booking, call reconnection and diary booking services
US6310862B1 (en) 1997-06-24 2001-10-30 At&T Corp. Real-time multimedia conferencing over an ATM network using an intelligent ATM cable modem and hybrid fiber-coax access
US6272214B1 (en) 1997-11-24 2001-08-07 Telefonaktiebolaget Lm Ericsson (Publ) Automatic control of participation in telemeetings
US6438111B1 (en) 1998-05-22 2002-08-20 Avaya Technology Corp. Dynamically scaleable conference system
US6907449B2 (en) 1998-09-22 2005-06-14 Qwest Communications International, Inc. Conferencing system for simultaneous broadcast of audio and transmission of documents via push technology
US6408327B1 (en) 1998-12-22 2002-06-18 Nortel Networks Limited Synthetic stereo conferencing over LAN/WAN
WO2000052886A1 (en) 1999-03-02 2000-09-08 Microsoft Corporation Scalable multiparty conferencing and collaboration system and method of dynamically allocating system resources
US6584493B1 (en) 1999-03-02 2003-06-24 Microsoft Corporation Multiparty conferencing and collaboration system utilizing a per-host model command, control and communication structure
US6604129B2 (en) 1999-03-25 2003-08-05 At&T Corp. Method and apparatus for a conference call mediation service
US6564261B1 (en) 1999-05-10 2003-05-13 Telefonaktiebolaget Lm Ericsson (Publ) Distributed system to intelligently establish sessions between anonymous users over various networks
US7174365B1 (en) * 2000-11-08 2007-02-06 Polycom Israel Ltd. System and method for controlling one or more multipoint control units as one multipoint control unit
US7353251B1 (en) * 1999-12-23 2008-04-01 Polycom, Inc. Automated call launching
US6876734B1 (en) * 2000-02-29 2005-04-05 Emeeting.Net, Inc. Internet-enabled conferencing system and method accommodating PSTN and IP traffic
US7830824B2 (en) 2000-03-01 2010-11-09 Polycom, Inc. System and method for providing reservationless third party meeting rooms
US6704769B1 (en) * 2000-04-24 2004-03-09 Polycom, Inc. Media role management in a video conferencing network
WO2002019620A2 (en) 2000-08-28 2002-03-07 Nice Systems Ltd. Digital recording of ip based distributed switching platform
AU2002231282A1 (en) * 2000-11-02 2002-05-15 Polycom, Inc. Conferencing network resource management for call connectivity
US6810260B1 (en) 2000-11-21 2004-10-26 Telefonaktiebolaget Lm Ericsson Method and apparatus for automated call-back subscriber service
US6901448B2 (en) 2000-12-29 2005-05-31 Webex Communications, Inc. Secure communications system for collaborative computing
US6925645B2 (en) 2000-12-29 2005-08-02 Webex Communications, Inc. Fault tolerant server architecture for collaborative computing
WO2002054264A1 (en) 2000-12-29 2002-07-11 Webex Communications, Inc. Distributed network system architecture for collaborative computing
US6567813B1 (en) 2000-12-29 2003-05-20 Webex Communications, Inc. Quality of service maintenance for distributed collaborative computing
US20030167302A1 (en) 2000-12-29 2003-09-04 Min Zhu Scalable distributed network system for collaborative computing
US20020091769A1 (en) * 2001-01-11 2002-07-11 Drozdzewicz Piotr Jozef Conferencing method
US7107312B2 (en) 2001-02-06 2006-09-12 Lucent Technologies Inc. Apparatus and method for use in a data/conference call system for automatically collecting participant information and providing all participants with that information for use in collaboration services
US20020126201A1 (en) 2001-03-08 2002-09-12 Star-Bak Communication Inc. Systems and methods for connecting video conferencing to a distributed network
US20020136382A1 (en) 2001-03-22 2002-09-26 Alon Cohen System and method for providing simplified conferencing
EP1391105A4 (en) * 2001-04-30 2005-07-06 Polycom Inc AUDIO CONFERENCE SYSTEM AND METHOD
US20030014488A1 (en) 2001-06-13 2003-01-16 Siddhartha Dalal System and method for enabling multimedia conferencing services on a real-time communications platform
JP2003018303A (ja) 2001-06-28 2003-01-17 Hitachi Ltd 電子会議システム及び電子会議方法
US20030023690A1 (en) * 2001-07-26 2003-01-30 Sunit Lohtia Method and apparatus for providing selective delivery of notifications to users of multiple devices over a network
US6870916B2 (en) 2001-09-14 2005-03-22 Lucent Technologies Inc. Targeted and intelligent multimedia conference establishment services
US7636750B2 (en) * 2001-10-24 2009-12-22 Sprint Spectrum L.P. Method and system for controlling scope of user participation in a communication session
US20050226172A1 (en) 2001-12-15 2005-10-13 Richardson John W Video conference call set up
EP1454281B1 (en) * 2001-12-15 2012-02-08 Thomson Licensing Quality of service setup on a time reservation basis
US6839417B2 (en) 2002-09-10 2005-01-04 Myriad Entertainment, Inc. Method and apparatus for improved conference call management
JP3867655B2 (ja) 2002-10-29 2007-01-10 株式会社日立製作所 マルチメディアコミュニケーションシステム
US7298834B1 (en) * 2002-11-22 2007-11-20 3Com Corporation System and method for large capacity conference calls
US7701882B2 (en) 2003-02-10 2010-04-20 Intercall, Inc. Systems and methods for collaborative communication
US6944136B2 (en) 2003-02-28 2005-09-13 On-Demand Technologies, Inc. Two-way audio/video conferencing system
US7184531B2 (en) * 2003-06-05 2007-02-27 Siemens Communications, Inc. System and method for authorizing a party to join a conference
US20050018826A1 (en) 2003-07-21 2005-01-27 Benco David S. Conference call scheduling
US7987233B1 (en) * 2003-08-15 2011-07-26 Microsoft Corporation System and methods for facilitating a multiparty communications session with a dynamically designated session manager
US8321506B2 (en) * 2003-10-23 2012-11-27 Microsoft Corporation Architecture for an extensible real-time collaboration system
US7353255B2 (en) 2003-10-30 2008-04-01 International Business Machines Corporation System and apparatus for geographically distributed VoIP conference service with enhanced QoS
US8036358B2 (en) 2004-03-09 2011-10-11 Siemens Enterprise Communications, Inc. Distributed voice conferencing
US7552175B2 (en) 2004-04-30 2009-06-23 Microsoft Corporation Mechanism for controlling communication paths between conference members
US8767032B2 (en) * 2004-07-21 2014-07-01 Polycom, Inc. Conference unit controlling room functions
DE102004041882B4 (de) 2004-08-30 2006-05-18 Infineon Technologies Ag Kommunikationssystem, Verfahren zum Durchführen einer Umfrage, Konferenz-Medienmischeinrichtung und Verfahren zum Auswerten von Antwort-Kommunikationsdaten
US7532713B2 (en) 2004-09-23 2009-05-12 Vapps Llc System and method for voice over internet protocol audio conferencing
US8270320B2 (en) 2004-09-30 2012-09-18 Avaya Inc. Method and apparatus for launching a conference based on presence of invitees
JP4081068B2 (ja) 2004-11-18 2008-04-23 エヌ・ティ・ティ・コムウェア株式会社 通信会議システム
KR100703474B1 (ko) 2004-11-25 2007-04-03 삼성전자주식회사 밀착결합 멀티컨퍼런스를 이용한 단말에서의 경매 서비스방법 및 장치
US7870192B2 (en) 2004-12-16 2011-01-11 International Business Machines Corporation Integrated voice and video conferencing management
JP4700977B2 (ja) 2005-02-16 2011-06-15 富士通株式会社 多地点会議システム
US7668912B2 (en) 2005-03-03 2010-02-23 Seiko Epson Corporation Real-time one-button integrated support for networked devices
US7492730B2 (en) * 2005-04-19 2009-02-17 Polycom, Inc. Multi-site conferencing system and method
US20070002779A1 (en) 2005-06-15 2007-01-04 Samsung Electronics Co., Ltd. Method and system for providing PTT to conference
US20070050448A1 (en) 2005-08-25 2007-03-01 Polycom, Inc. Method and system for information collaboration over an IP network via handheld wireless communication devices
US20070133438A1 (en) 2005-12-14 2007-06-14 Cisco Technology, Inc. Method and system for reserving resources in a conferencing system
US7720091B2 (en) 2006-01-10 2010-05-18 Utbk, Inc. Systems and methods to arrange call back
US20070162553A1 (en) 2006-01-10 2007-07-12 Dewing Shane R Interactive moderated voice chat system
US7716284B2 (en) 2006-02-28 2010-05-11 Microsoft Corporation Subsystem-scoping architecture for breakout rooms in a virtual space
US8412773B1 (en) * 2006-06-28 2013-04-02 Insors Integrated Communications Methods, systems and program products for initiating a process on data network
US7961667B2 (en) * 2006-07-21 2011-06-14 International Business Machines Corporation Ad-hoc groups in SIP/SIMPLE
US8045489B2 (en) 2007-03-30 2011-10-25 Cisco Technology, Inc. Method and system for the automatic configuration of conference resources
US8300789B2 (en) 2007-04-30 2012-10-30 Cisco Technology, Inc. Method and system for identifying a multipoint control unit for hosting a conference
US8368738B2 (en) 2008-01-14 2013-02-05 Microsoft Corporation Joining users to a conferencing session
US20110271197A1 (en) 2010-04-30 2011-11-03 American Teleconferncing Services Ltd. Distributing Information Between Participants in a Conference via a Conference User Interface
US20110271210A1 (en) 2010-04-30 2011-11-03 American Teleconferncing Services Ltd. Conferencing Application Store
US20110271209A1 (en) 2010-04-30 2011-11-03 American Teleconferncing Services Ltd. Systems, Methods, and Computer Programs for Providing a Conference User Interface
US9106794B2 (en) 2010-04-30 2015-08-11 American Teleconferencing Services, Ltd Record and playback in a conference
US9189143B2 (en) 2010-04-30 2015-11-17 American Teleconferencing Services, Ltd. Sharing social networking content in a conference user interface
US20120246229A1 (en) 2011-03-21 2012-09-27 Microsoft Corporation Notifying Participants that a Conference is Starting

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343313B1 (en) * 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
RU2004125595A (ru) * 2002-01-23 2006-02-10 Хювэй Текнолоджиз Ко., Лтд. (CN) Система организации услуги видеоконференции, способ предоставления услуги видеоконференции и центр услуг

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2653280C2 (ru) * 2012-12-13 2018-05-07 Самсунг Электроникс Ко., Лтд. Способ управления устройством для регистрации информации об устройстве для периферийного устройства и устройство и система для этого
US10116505B2 (en) 2012-12-13 2018-10-30 Samsung Electronics Co., Ltd. Device control method for registering device information of peripheral device, and device and system thereof
RU2653231C1 (ru) * 2016-12-16 2018-05-07 Общество с ограниченной ответственностью "Иридиум" Способ и система объединения компонентов для управления объектами автоматизации
RU2772345C2 (ru) * 2017-02-02 2022-05-19 Нотарайз, Инк. Система и способ для синхронизации взаимодействий между несколькими программными клиентами во встрече с нотариусом
US11443284B2 (en) 2017-02-02 2022-09-13 Notarize, Inc. System and method for synchronizing notary meeting interactions between multiple software clients
RU184009U1 (ru) * 2018-05-31 2018-10-11 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации Система удаления остаточной информации из памяти терминалов и серверов многоточечной конференцсвязи

Also Published As

Publication number Publication date
CN101517963B (zh) 2012-11-07
JP5337698B2 (ja) 2013-11-06
BRPI0714703A2 (pt) 2013-09-17
CA2660874A1 (en) 2008-03-20
WO2008033706A1 (en) 2008-03-20
MX2009002288A (es) 2009-03-20
EP2067302A4 (en) 2013-06-19
RU2009109214A (ru) 2010-09-20
EP2067302A1 (en) 2009-06-10
US8817668B2 (en) 2014-08-26
US20080069011A1 (en) 2008-03-20
CN101517963A (zh) 2009-08-26
JP2010504041A (ja) 2010-02-04
EP2067302B1 (en) 2017-02-08
AU2007296792B2 (en) 2011-08-18
CN102904733B (zh) 2015-09-16
AU2007296792A1 (en) 2008-03-20
KR101424301B1 (ko) 2014-08-01
CA2660874C (en) 2016-11-01
CN102904733A (zh) 2013-01-30
KR20090052869A (ko) 2009-05-26
RU2012116580A (ru) 2013-10-27

Similar Documents

Publication Publication Date Title
RU2459371C2 (ru) Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи
US11700137B2 (en) Collaborative access to virtual desktops
US8300557B2 (en) Breakout rooms in a distributed conferencing environment
US8578465B2 (en) Token-based control of permitted sub-sessions for online collaborative computing sessions
US9525849B2 (en) Provision of video conferencing with load balancing
US8250141B2 (en) Real-time event notification for collaborative computing sessions
US11989697B2 (en) Using calendar information to authorize user admission to online meetings
RU2471234C2 (ru) Эмуляция функции блокирования и вестибюля в распределенной системе конференц-связи
US20030014488A1 (en) System and method for enabling multimedia conferencing services on a real-time communications platform
US7552175B2 (en) Mechanism for controlling communication paths between conference members
WO2007134305A2 (en) Apparatus, system, method and computer program product for collaboration via one or more networks
US20100223320A1 (en) Data distribution efficiency for online collaborative computing sessions
US20080091779A1 (en) Resource consumption reduction via meeting affinity
AU2011253547B2 (en) Distributable, scalable, pluggable conferencing architecture
US10334001B2 (en) Techniques for implementing telephone call back for a multimedia conferencing platform
US10412124B2 (en) Initiating a server-directed communication session

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20150526

MM4A The patent is invalid due to non-payment of fees

Effective date: 20200906