Первоначальные мультимедиа-данные и разветвление при управлении вызовом третьей стороны (3рсс)

Иллюстрации

Показать все

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

Реферат

УРОВЕНЬ ТЕХНИКИ

Различные приложения связи предназначены для того, чтобы сделать связь проще и доступнее за счет предоставления пользователям различной информации и функциональных возможностей. Например, пользователь может иметь возможность устанавливать связь с пользователями с помощью различных способов связи, таких как телефонные вызовы, текстовые сообщения, мгновенный обмен сообщениями (IM) и т.п. Помимо непосредственного установления пользователем связи с другой стороной, для соединения двух или более участников может также использоваться третья сторона. Например, система управления вызовом третьей стороны (3РСС) позволяет третьей стороне соединять при разговоре две или более сторон. С помощью 3РСС вызов может устанавливаться между двумя устройствами связи через интернет-протокол (устройствами IP-связи), одним устройством IP-связи и телефоном или двумя телефонами. К примерам 3РСС относятся некоторые услуги, оказываемые операторами, а также услуги набора номера щелчком по ссылке на Интернет-сайте, которые позволяют пользователю щелкать мышью по ссылке на странице в Интернете, которая, в свою очередь, соединяет пользователя с лицом, ассоциированным с данным веб-узлом, таким как представитель отдела обслуживания клиентов.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

На фиг.1 показан пример вычислительной среды;

на фиг.2 показана система связи для изменения направления вызова, инициируемого управляющим сервером, на обратное; и

на фиг.3 показан иллюстративный процесс изменения направления вызова, инициируемого управляющим сервером, на обратное.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

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

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

Ниже со ссылкой на фиг.1 описывается иллюстративная вычислительная среда для компьютера 100, используемого в различных вариантах осуществления. Показанный на фиг.1 компьютер может иметь конфигурацию сервера, настольного или мобильного компьютера или вычислительного устройства какого-либо иного типа и включает в себя центральный процессор 5 (CPU), системную память 7, включающую в себя оперативное запоминающее устройство 9 (RAM) и постоянное запоминающее устройство (ROM) 10, и системную шину 12, которая соединяет память с центральным процессором (CPU) 5.

Базовая система ввода/вывода, содержащая основные подпрограммы, которые помогают передавать информацию между элементами внутри компьютера, например, во время запуска, хранится в ROM 10. Компьютер 100 дополнительно включает в себя массовое запоминающее устройство 14 для хранения операционной системы 16, приложение 24 связи и прочие программные модули 25, которые подробно описываются ниже.

Массовое запоминающее устройство 14 соединяется с CPU 5 через контроллер запоминающего устройства (не показан), соединенный с шиной 12. Массовое запоминающее устройство 14 и ассоциированные с ним машиночитаемые носители образуют энергонезависимое запоминающее устройство для компьютера 100. Хотя приведенное здесь описание машиночитаемых носителей относится к массовому запоминающему устройству, такому как жесткий диск или дисковод компакт-дисков (CD-ROM), машиночитаемыми носителями могут быть любые имеющиеся носители, доступ к которым может осуществляться с помощью компьютера 100.

В качестве примера, а не ограничения, машиночитаемые носители могут содержать компьютерную среду хранения и коммуникационную среду. Компьютерная среда хранения включает в себя энергозависимую и энергонезависимую, съемную и несъемную среду, реализованную с помощью любого способа или технологии хранения информации, такой как машиночитаемые команды, структуры данных, программные модули или иные данные. Компьютерная среда хранения информации включает в себя в качестве неограничивающих примеров RAM, ROM, стираемое программируемое постоянное запоминающее устройство (EPROM), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), флэш-память или иную технологию твердотельной памяти, CD-ROM, цифровой универсальный диск (DVD) или другой оптический носитель, магнитные кассеты, магнитные ленты, запоминающее устройство на магнитных дисках или иные магнитные запоминающие устройства или какой-либо иной носитель, который может использоваться для хранения требуемой информации и доступ к которому может осуществляться с помощью компьютера 100.

Компьютер 100 работает в сетевой среде с использованием логических соединений с удаленными компьютерами через сеть 18, такую как Интернет. Компьютер 100 может соединяться с сетью 18 через блок 20 сетевого интерфейса, соединенный с шиной 12. Сетевое соединение может быть беспроводным и/или проводным. Блок 20 сетевого интерфейса может также использоваться для соединения с другими типами сетей или удаленных вычислительных систем. Компьютер 100 может также включать в себя контроллер 22 ввода-вывода для приема и обработки входных данных от ряда других устройств, в том числе клавиатуру, мышь или электронное перо (на фиг.1 не показано). Аналогичным образом, контроллер 22 ввода-вывода может обеспечивать ввод-вывод на IP-телефон 19, экран дисплея 23, показывающий пользовательский интерфейс 27, принтер или какое-либо иное устройство вывода.

Основная сеть 28 является сетью, ответственной за связь с мобильными устройствами 29. Основная сеть 28 может включать в себя как беспроводные, так и проводные компоненты. Например, основная сеть 28 может включать в себя вышку сотовой связи, которая связана с сетью проводных телефонов. Как правило, вышка сотовой связи передает информацию к мобильным устройствам, таким как сотовые телефоны, ноутбуки, карманные персональные компьютеры, линии дальней связи, и от них.

Шлюз 27 направляет сообщения между основной сетью 28 и IP-сетью 18. Например, сервер 21 связи может направлять вызов или какое-либо иное сообщение на мобильное устройство по основной сети 28 и/или направлять вызов или какое-либо иное сообщение на пользовательское устройство по IP-сети 18. Шлюз 27 обеспечивает средство для передачи информации от IP-сети к основной сети. С другой стороны, пользователь с устройством, соединенным с основной сетью, может направлять вызов клиенту по IP-сети 18.

Управляющий сервер 30, такой как сервер управления вызовом третьей стороны (3РСС), выполнен с возможностью инициирования соединения между двумя или более устройствами, например, между двумя телефонами, телефоном и IP-устройством или двумя IP-устройствами. Например, управляющий сервер 30 может инициировать соединение между IP-телефоном 19 и клиентом 17, мобильным устройством 29 и IP-телефоном 19 или двумя другими устройствами. Как правило, 3РСС обеспечивает в контроллере, таком как управляющий сервер 30, установку и управление линий связи между двумя или более другими сторонами. 3РСС широко используется для услуг, оказываемых операторами, конференц-связи и услуг набора номера щелчком по ссылке на Интернет-сайте. Например, в сценарии набора номера щелчком по ссылке на Интернет-сайте пользователь может щелкать мышью по ссылке на странице в Интернете, которая заставляет управляющий сервер 30 соединять пользователя с пользователем, ассоциированным с данным веб-узлом.

Как вкратце упоминалось выше, несколько программных модулей и файлов данных может храниться в массовом запоминающем устройстве 14 и RAM 9 компьютера 100, в том числе операционная система 16, подходящая для управления работой компьютера, такую как операционная система WINDOWS COMMUNICATION SERVER®, WINDOWS SERVER® или WINDOWS 7® компании MICROSOFT CORPORATION (г. Редмонд, штат Вашингтон). Массовое запоминающее устройство 14 и RAM 9 могут также хранить один или более программный модуль. В частности, массовое запоминающее устройство 14 и RAM 9 могут хранить одну или более прикладную программу 24 и программный модуль 25.

Приложение 24 связи выполнено с возможностью обработки информации, относящейся к сеансу связи, который устанавливается между вычислительным устройством 100 и одним или более другим устройством. В соответствии с одним вариантом осуществления, приложение 24 связи является таким приложением, как OFFICECOMMUNICATOR® компании MICROSOFT. Приложение 24 связи может использоваться во время периодов проведения сеансов связи между вычислительным устройством 100 (например, IP-телефоном 19) и одним или более другим устройством. Эти сеансы связи могут устанавливаться непосредственно между устройствами и/или косвенно через управляющий сервер, такой как управляющий сервер 30. Даже в том случае, если вызов устанавливается между двумя или более конечными точками с использованием управляющего сервера в качестве промежуточного звена, информационный поток между конечными точками может быть настроен таким образом, что одна конечная точка рассматривается как вызывающая сторона, а другая конечная точка рассматривается как вызываемая сторона для данного вызова. Например, предположим, что управляющий сервер 30 инициирует вызов вычислительному устройству 100. После того, как управляющий сервер 30 устанавливает соединение с вычислительным устройством 100 с использованием приложения 24 связи, управляющий сервер 30 изменяет направление потока сообщений между вычислительным устройством 100 и управляющим сервером 30 на обратное таким образом, что вычислительное устройство 100 рассматривается как источник сигналов вызова (вызывающая сторона), а управляющий сервер 30 становится устройством, которое вызывают (вызываемой стороной). Соединение также устанавливается между вычислительным устройством 100, управляющим сервером 30 и вторым устройством (например, клиентом 17 и/или мобильным устройством 29), которое является конечной точкой для вызова. Первоначальные мультимедиа-данные и разветвление в данном случае доступны вычислительному устройству 100 после изменения направления потока сообщений между вычислительным устройством 100 и управляющим сервером 30 на обратное. Как правило, первоначальные мультимедиа-данные относятся к мультимедийной информации (например, звуковой информации и видеоинформации), обмен которой осуществляется перед тем, как конкретная сессия принимается вызываемой стороной. Первоначальные мультимедиа-данные могут возникать с момента отправки запроса INVITE до тех пор, пока сессия не будет принята вызываемой стороной. Первоначальные мультимедиа-данные могут протекать в любом направлении между вызывающей стороной и вызываемой стороной. Первоначальные мультимедиа-данные обычно используются для отправки вызывных тонов и объявлений с использованием либо звуковых потоков, либо двухтональных многочастотных (DMTF) событий. Разветвление относится к направлению запроса Протокола инициализации сеанса (SIP) на множество SIP-адресов и возврату ответов вызывающей стороне. Однако в предшествующих решениях требовалось, чтобы первый запрос INVITE инициировался от вызывающей стороны, а не управляющего сервера. Кроме того, во время соединения вычислительное устройство 100 может отсылать информацию о сеансах через одну или более конечных точек (т.е. клиент 17). В приведенном ниже описании представлена более подробная информация относительно изменения потока сообщений во время вызова.

На фиг.2 показана система связи для изменения направления вызова, инициируемого управляющим сервером, на обратное. Как показано, система 200 включает в себя клиента 1 (205) и клиента 2 (206), который подсоединен к IP-сети 18, клиента 3 (207), который подсоединен к IP-сети 2, мобильное устройство 1 (208) и мобильное устройство 2 (209), которые подсоединены к основной сети 28, сервер 210 связи, включающий в себя диспетчер связи 222, управляющий сервер 250, шлюз 27 основной сети, шлюз 215, сервер-посредник 216, IP-шлюз 217 коммутируемой телефонной сети общего пользования (PSTN), подсоединенный к учрежденческой автоматической телефонной станции (PBX) 225 через PSTN 220, телефон 1 (230) и телефон 2 (232).

Сервер 210 связи выполнен с возможностью направления входящей связи соответствующим получателям. В соответствии с одним вариантом осуществления, сервер 210 связи функционирует на операционной системе OFFICECOMMUNICATION SERVER® компании Microsoft. По меньшей мере, некоторые из устройств (205-209) сконфигурированы с использованием приложения связи, такого как OFFICECOMMUNICATOR® компании Microsoft. Могут также использоваться иные приложения связи.

В соответствии с одним вариантом осуществления, сервер связи 210 использует SIP для сеансов связи. Для получения дополнительной информации по данному стандартизованному протоколу производственной вычислительной сети см. документ RFC 3261 Рабочей группы инженеров Интернет (IETF), который можно найти по адресу: http://www.ietf.org/rfc/rfc3261.txt. Вообще, SIP определяет стандарт для установления сеанса, его завершения и мультимедийного согласования между двумя сторонами, который широко используется для сигнализации вызова при передаче речи по протоколу IP (VoIP).

Как правило, сервер 210 связи направляет сообщения/вызовы в конечные точки по IP-сети (вызовы с IP на IP); направляет вызовы в коммутируемую телефонную сеть общего пользования (PSTN)/PBX (вызовы с IP на PSTN) и может также направлять вызовы получателям с использованием других сетей, таких как основные сети (сети, обслуживаемые операторами связи). Сервер связи 210 может быть подсоединен к этим сетям через один или более шлюзов. Шлюз транслирует сигнальную и мультимедийную информацию между сетью и инфраструктурой передачи речи по протоколу IP. Шлюз 215 может состоять из одного или более устройств. Например, шлюз 215 может быть реализован в виде сервера-посредника 216 и IP-PSTN-шлюза 217, либо функциональные возможности сервера-посредника и IP-PSTN могут быть включены в шлюз, как показано. Как правило, IP-PSTN-шлюз 217 представляет собой шлюз, который располагается между стационарным телефоном (т.е. телефоном 1 или телефоном 2) и Клиентом агента пользователя SIP (т.е. клиентом 1, клиентом 2, клиентом 3). Шлюз 217 позволяет человеку звонить на любой (допустимый) телефонный номер с любого совместимого с SIP клиентского приложения.

Сервер-посредник 216 обеспечивает трансляцию сигнальной и мультимедийной информации между инфраструктурой VoIP и шлюзом. Сервер-посредник 216 также связывает Сервер 210 связи с PBX 225. Со стороны сервера связи мультимедийный сервер 216 прослушивает взаимный транспортный адрес TLS. TLS (Безопасность на транспортном уровне) является протоколом для установления безопасного соединения между клиентом и сервером. Протокол TLS (безопасность на транспортном уровне) способен аутентифицировать как клиента, так и сервер и создавать между ними шифрованное соединение. Протокол TLS (безопасность на транспортном уровне) является расширяемым, что означает, что для любой из указанных целей могут добавляться новые алгоритмы при условии, что как сервер, так и клиент знают о новых алгоритмах. Со стороны шлюза сервер-посредник прослушивает один транспортный адрес TCP/IP. Как правило, сервер-посредник 216 конфигурируется для: трансляции SIP по TCP (со стороны шлюза) на SIP по взаимному TLS (со стороны Службы голосовой связи в пределах организации); шифрования и дешифрования SRTP (Безопасного протокола передачи данных в реальном времени) со стороны сервера связи; трансляции потоков мультимедийной информации между сервером связи и шлюзом; соединения клиентов, находящихся вне сети, с внутренними компонентами протокола ICE (Установление интерактивного соединения), который обеспечивает обход мультимедийной информацией транслятора сетевых адресов (NAT) и брандмаузэров; и действия посредника для потоков вызовов, которые не поддерживаются шлюзом, таких как вызовы от удаленных рабочих по клиенту службы голосовой связи в пределах организации.

Сервер 210 связи может быть выполнен с возможностью предоставления услуг связи для одного или более местоположений. Например, сервер 210 связи может использоваться для фирмы, имеющей филиалы, которые соединяются с использованием IP-сети 18 и/или иных IP-сетей (например, IP-сети 2 (212)). Например, Клиент 3 может находиться в филиале, в то время как сервер 210 связи находится в центральном офисе.

Управляющий сервер 250 может быть выполнен в виде 3РСС-сервера и используется для инициализации и управления соединением между двумя или более устройствами, например, между двумя телефонами, телефоном и IP-устройством или двумя IP-устройствами. Управляющий сервер 250 может также быть выполнен в виде двухстороннего пользовательского агента (B2BUA). Двусторонний пользовательский агент (B2BUA) является объектом, который принимает запрос и обрабатывает его как сервер пользовательского агента (UAS). Чтобы определить, как должен осуществляться ответ на запрос, он действует как клиент пользовательского агента (UAC) и генерирует запросы. В отличие от прокси-сервера, он поддерживает состояние диалога и участвует в запросах, отправляемых по диалогам, которые он установил. Управляющий сервер 250 может инициировать вызов на основе запроса, выполненного из различных источников. Например, управляющий сервер 250 может инициировать вызов на основе запроса от сервера 210 связи, прямой запрос от пользователя (т.е. через оператора), с помощью услуги набора номера щелчком по ссылке на Интернет-сайте и т.п.

Как правило, для установления сеанса голосовой связи между двумя или более конечными точками используются два отдельных канала. Одним каналом является канал передачи информации (VoIP), а другим каналом является канал сигнализации (SIP), который определяет характеристики сеанса, а также управляет каналом передачи информации. Эти каналы устанавливаются непосредственно между двумя конечными точками, причем одна конечная точка инициирует запрос на установление сеанса голосовой связи с другой конечной точкой, а мультимедийная информация передается непосредственно между конечными точками через Протокол реального времени (RTP).

В ряде случаев конечная точка не может начинать сеанс передачи речи по протоколу IP (VoIP) ввиду ограничения полосы частот, например, в мобильных устройствах с доступом к сети передачи данных с ограниченной полосой частот (например, в мобильном устройстве 208). Например, мобильное устройство 208 может иметь достаточную полосу пропускания для регистрации в качестве конечной точки в целях IM и присутствия, но не для сеанса VoIP. В этом случае управляющий сервер 250 может действовать как мост для содействия мобильному устройству 208 в установлении сеанса голосовой связи с одним или более другим устройством. В данном примере мобильное устройство 208, использующее свое приложение связи, может запрашивать управляющий сервер 250 об его соединении с другой конечной точкой (например, клиентом 205), либо управляющий сервер 250 может получать запрос от сервера 210 связи на соединение мобильного устройства 208 с клиентом 205.

Нижеследующий пример представлен в целях объяснения и не является ограничительным. Способ, описанный с использованием SELF-REFER (САМОАДРЕСАЦИИ) с запросом SDP-less INVITE для обеспечения 3РСС SIP, может применяться множеством различных способов и, следовательно, не ограничивается примерами, которые описаны здесь. В данном примере предположим, что мобильное устройство 208 не имеет достаточной полосы пропускания для установления сеанса VoIP, но имеет достаточную полосу пропускания для установления канала SIP.

Сначала мобильное устройство 208 отправляет запрос серверу 210 связи на соединение с клиентским устройством 205. В данном случае канал связи не может быть установлен непосредственно между этими двумя устройствами. По существу, сервер связи 210 запрашивает управляющий сервер 250 о содействии в соединении мобильного устройства 208 с клиентским устройством 205. Управляющий сервер 250 отправляет SIP SDP-LESS INVITE в шлюз 27 основной сети на инициирование вызова с мобильным устройством 208. После соединения мобильного устройства 208 управляющий сервер 250 осуществляет самоадресацию вызова, инициируемого с мобильным устройством 280, путем отправки SIP-запроса SELF-REFER в шлюз. Данный запрос самоадресации является запросом шлюзу на передачу вызова, который только что был установлен между шлюзом и мобильным устройством 208, назад на управляющий сервер 250, который запрашивал выполнение вызова.

В данном случае вызов переключается с управления управляющим сервером 250 на инициирование мобильным устройством 208. После принятия запроса на передачу самоадресации шлюз инициирует передачу путем отправки SIP INVITE в управляющий сервер 250. Когда запрос INVITE принимается управляющим сервером 250, он осуществляет доступ к Предложению SIP-SDP (информации мультимедиа-сеанса), принимаемому от шлюза, и использует эту информацию для соединения с клиентским устройством 205. На данном этапе управляющий сервер 250 действует как двухсторонний агент, который соединяет вызов между мобильным устройством 208 и клиентским устройством 205.

Что касается оставшегося потока вызова между мобильным устройством 208 и клиентским устройством 205, информация, отправляемая мобильным устройством 208, может передаваться на клиентское устройство 205, а информация, отправляемая клиентским устройством 205, может передаваться на мобильное устройство 208. Соединение устройства описанным способом не требует специальной логики с целью передачи информации о SIP-разветвлении или первом ICE удаленной стороне. Вместо этого информация от вызываемой стороны к вызывающей стороне передается таким же образом, каким она передавалась бы, если бы они были соединены напрямую. Даже если управляющий сервер участвует в установлении соединения между устройствами, вызывающая сторона и вызываемая сторона соединяются таким образом, что информация о разветвлении вызываемой стороны может передаваться назад вызывающей стороне таким же образом, каким вызывающая сторона разговаривала бы с вызываемой стороной при прямом соединении. Такой способ соединения также позволяет обеспечивать поток информации о первом ICE между вызывающей стороной и вызываемой стороной, что содействует в установлении соединения с мультимедийной информацией между сторонами, участвующими в сеансе связи. Вместо того, чтобы управляющему серверу сначала приходилось запрашивать информацию от одной конечной точки (вызываемая сторона/вызывающая сторона), а затем передавать также и в другую конечную точку через UPDATE/re-INVITE, в данном случае одна конечная точка подключается таким образом, что данная конечная точка может передавать информацию о сеансе на управляющий сервер 250 через предварительные/окончательные ответы или запросы SIP, которые управляющий сервер затем передает во встречном направлении в другую конечную точку через те же ответы/запросы. Управляющий сервер конфигурируется как для передач во встречном направлении окончательных ответов, так и для предварительных ответов с разветвлением и информацией о первом ICE. Это помогает вызывающей стороне узнать число конечных точек, на которое разветвлялся вызов, ускорять установление сеанса передачи мультимедийной информации между конечными точками завершения передачи мультимедийной информации и обеспечивать поток первоначальных мультимедиа-данных. Управляющий сервер не завершает передачу мультимедийной информации. Вместо этого он завершает сигнальные аспекты сеанса, и мультимедийная информация передается непосредственно между двумя конечными точками (вызываемой стороной и вызывающей стороной).

Как отмечалось выше, в других примерах может использоваться такое перенаправление потока вызова. Например, управляющий сервер 250 может инициировать вызов на основе запроса, выполняемого непосредственно от пользователя (т.е. через оператора и/или запрос на набор номера щелчком по ссылке на Интернет-сайте). В данном примере предположим, что управляющий сервер 250 получил запрос на соединение клиента 205 с клиентом 206. Описанный выше процесс применяется аналогичным образом без необходимости использования шлюза для подключения передачи речи к устройству. После того, как управляющий сервер 250 соединяет одного из клиентов, он может отправлять запрос на самоадресацию непосредственно клиенту для передачи вызова назад на управляющий сервер. После самоадресации управляющий сервер 250 действует как двухсторонний агент между клиентом 205 и клиентом 206.

На фиг.3 описывается типовой процесс 300 изменения направления вызова, инициируемого управляющим сервером, на обратное. При чтении описания представленных здесь подпрограмм следует понимать, что логические операции различных вариантов осуществления реализуются (1) в виде последовательности исполняемых на компьютере действий или программных модулей, выполняемых на вычислительной системе и/или (2) в виде взаимосвязанных логических схем или схемных модулей вычислительной машины в вычислительной системе. Реализация является вопросом выбора, зависящего от требований к функционированию вычислительной системы, реализующей данное изобретение. В соответствии с этим, логические операции, которые объяснены и составляют описанные здесь варианты осуществления, различным образом именуются как операции, структурные устройства, действия или модули. Указанные операции, структурные устройства, действия и модули могут быть реализованы в программном обеспечении, встроенных программах, в специализированной цифровой логике и любой совокупности их.

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

Переходя к операции 320, управляющий сервер инициирует вызов в первую конечную точку. В соответствии с одним вариантом осуществления, первая конечная точка будет считаться вызывающей стороной после того, как управляющий сервер самоадресует вызов себе.

При переходе к операции 330 информационный поток между управляющим сервером и первой конечной точкой изменяет направление на обратное. Управляющий сервер самоадресует вызов, инициируемый с первой конечной точкой, путем отправки SIP-запроса SELF-REFER. Запрос самоадресации является запросом на передачу вызова, который только что был установлен, назад на управляющий сервер.

Переходя к операции 340, управляющий сервер инициирует вызов во вторую конечную точку. После того, как управляющий сервер принимает запрос INVITE, который генерируется в ответ на SIP-запрос SELF-REFER, управляющий сервер осуществляет доступ к принимаемому Предложению SIP-SDP (информации мультимедиа-сеанса) и использует эту информацию для соединения со второй конечной точкой.

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

Затем процесс переходит к конечной операции и возвращается к обработке других действий.

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

1. Способ, исполняемый в процессоре вычислительного устройства, для изменения направления потока для вызова на обратное, содержащий:установление первого вызова к первому устройству от управляющего сервера; при этом первое устройство является вызываемой стороной, а управляющий сервер является вызывающей стороной в первом вызове;изменение направления потока для первого вызова на обратное с использованием запроса на передачу первого вызова назад управляющему серверу так, что первое устройство становится вызывающей стороной, а управляющий сервер становится вызываемой стороной так, что после изменения направления потока на обратное первому устройству становятся доступными предварительные мультимедиа-данные и разветвление, причем предварительные мультимедиа-данные содержат аудио и видео, которыми обмениваются между первым устройством и управляющим сервером до того, как управляющим сервером осуществлено принятие сеанса связи; иустановление вызова между первым устройством и вторым устройством так, что первое устройство принудительно отправляет информацию о сеансе второму устройству.

2. Способ по п. 1, в котором изменение направления потока первого вызова на обратное содержит отправку управляющим сервером запроса самоадресации, который запрашивает передачу вызова назад управляющему серверу.

3. Способ по п. 2, дополнительно содержащий в ответ на запрос самоадресации отправку приглашения к управляющему серверу и осуществление управляющим сервером доступа к информации мультимедиа-сеанса, ассоциированной с приглашением, и отправку приглашения ко второму устройству с информацией мультимедиа-сеанса.

4. Способ по п. 3, в котором установление первого вызова к первому устройству от управляющего сервера содержит отправку запроса SIP SDP-LESS INVITE, который используется при установлении первого вызова с первым устройством.

5. Способ по п. 4, в котором запрос SIP SDP-LESS INVITE принимается шлюзом, который выполнен с возможностью вызова первого устройства.

6. Способ по п. 4, в котором запрос самоадресации принимается шлюзом, который выполнен с возможностью отправки запроса SIP INVITE к управляющему серверу.

7. Способ по п. 1, в котором первый вызов и второй вызов устанавливаются посредством SIP-сообщений.

8. Способ по п. 7, в котором управляющий сервер действует как двухсторонний агент между первым устройством и вторым устройством после соединения второго устройства с управляющим сервером.

9. Способ по п. 8, в котором управляющий сервер обрабатывает окончательные ответы и предварительные ответы для установления информации о разветвлении и предварительном ICE.

10. Способ по п. 7, в котором управляющий сервер является управляющим сервером вызова третьей стороны, который инициирует вызов к первому устройству в ответ на выбор на веб-сайте.

11. Считываемый компьютером носитель информации, хранящий исполняемые компьютером инструкции для изменения направления потока для вызова на обратное с привлечением вычислительного устройства, подсоединенного к серверу связи через приложение связи, содержащий:установление первого вызова к первому устройству от управляющего сервера; при этом первое устройство является вызываемой стороной, а управляющий сервер является вызывающей стороной;изменение направления потока для первого вызова на обратное так, что первое устройство становится вызывающей стороной, а управляющий сервер становится вызываемой стороной так, что после изменения направления потока на обратное первому устройству становятся доступными предварительные мультимедиа-данные и разветвление, причем предварительные мультимедиа-данные содержат аудио и видео, которыми обмениваются между первым устройством и управляющим сервером до того, как управляющим сервером осуществлено принятие сеанса связи; при этом изменение направления потока первого вызова на обратное содержит отправку управляющим сервером запроса самоадресации, который запрашивает передачу первого вызова назад управляющему серверу; иустановление вызова между первым устройством и вторым устройством так, что первое устройство принудительно отправляет информацию о сеансе второму устройству через управляющий сервер; при этом управляющий сервер обрабатывает окончательные ответы и предварительные ответы для установления информации о разветвлении и предварительном ICE после установления соединения между первым устройством и вторым устройством.

12. Считываемый компьютером носитель информации по п. 11, дополнительно содержащий в ответ на запрос самоадресации отправку приглашения к управляющему серверу и осуществление управляющим сервером доступа к информации мультимедиа-сеанса, ассоциированной с приглашением, и отправку приглашения ко второму устройству с информацией мультимедиа-сеанса.

13. Считываемый компьютером носитель информации по п. 12, в котором установление первого вызова к первому устройству от управляющего сервера содержит отправку запроса SIP SDP-LESS INVITE, который используется при установлении первого вызова с первым устройством.

14. Считываемый компьютером носитель информации по п. 13, в котором запрос SIP SDP-LESS INVITE принимается шлюзом, который выполнен с возможностью вызова первого устройства.

15. Считываемый компьютером носитель информации по п. 14, в котором запрос самоадресации принимается шлюзом, который выполнен с возможностью отправки запроса SIP INVITE управляющему серверу.

16. Считываемый компьютером носитель информации по п. 13, в котором управляющий сервер действует как двухсторонний агент между первым устройством и вторым устройством после соединения второго устройства с управляющим сервером.

17. Система для изменения направления потока для вызова на обратное, содержащая:сетевое соединение, которое выполнено с возможностью соединения с IP-сетью;процессор и считываемый компьютером носитель;операционную среду, хранящуюся на считываемом компьютером носителе, исполняемую в процессоре и управляющую процессом, действующим для:установления первого вызова к первому устройству с использованием управляющего сервера; при этом первое устройство является вызываемой стороной, а управляющий сервер является вызывающей стороной;изменения направления потока для первого вызо