СПОСОБ И СТРУКТУРА ДЛЯ ПРЕДОСТАВЛЕНИЯ ИНФОРМАЦИИ О ГРУППЕ СВЯЗИ КЛИЕНТУ
METHOD AND STRUCTURE FOR PROVISION OF INFORMATION ON COMMUNICATION GROUP TO CLIENT

Область техники, к которой относится изобретение
Настоящее изобретение относится в целом к способу и структуре предоставления информации о группе связи клиенту. В частности, изобретение предназначено для того, чтобы производить поиск информации об активных группах связи более легким и более эффективным образом.
Уровень техники изобретения и предшествующий уровень техники
До последнего времени терминалы мобильной связи использовались главным образом для совершения голосовых вызовов и передачи ограниченных текстовых сообщений, таких как SMS (служба коротких сообщений). Они являются довольно простыми телекоммуникационными услугами, которые используют твердо устоявшиеся технологии, главным образом для одиночных соединений по коммутируемым линиям.
Однако теперь быстро развивается множество новых телефонных услуг, которые стали возможны посредством введения новых технологий связи, предоставляющих большую пропускную способность сети и более высокие скорости передачи. Например, технологии GPRS (система пакетной радиосвязи общего пользования) и WCDDMA (широкополосный множественный доступ с кодовым разделением каналов) появляются в настоящее время для того, чтобы поддерживать услуги беспроводной телефонии, требующие широкого диапазона скоростей передачи данных и различные протоколы. Направлением сегодня также является переход к передаче с коммутацией пакетов, предоставляющей большую пропускную способность и гибкость. Кроме того, на рынке также появляются новые сложные терминалы, имеющие цветные дисплеи с высоким разрешением и различными кодеками (кодерами/декодерами) для передачи визуальной информации.
Некоторые услуги могут включать в себя передачу видеоинформации в реальном времени, так же как и аудиоинформации, и могут дополнительно включать в себя передачу данных, представляющих изображения, текст, документы, аудиофайлы и видеофайлы во множестве разных форматов и комбинаций. Такие услуги обычно именуются как услуги "мультимедиа", этот термин будет использован в этом описании, чтобы представить любые телефонные услуги, которые включают в себя передачу информации в дополнение к обычному голосовому вызову.
Преобладающей задачей или целью в области телекоммуникаций является соединить все услуги в один транспортный механизм - протокол Интернета (IP), не обращая внимания на тип услуг, сети доступа и технологии. Недавно архитектура сети услуг, названная "подсистемой передачи мультимедийных данных по IP-сетям " (IMS - IP Multimedia Subsystem), была разработана программой партнерства 3-го поколения (3GPP) как открытый стандарт, чтобы предоставить операторам сетей доступа возможность предложить услуги мультимедиа в пакетной области.
IMS-сеть, содержащая различные элементы разных сетей для того, чтобы управлять услугами, может быть объединена с любым типом сети доступа и является независимой от используемой технологии доступа, предусматривается, что сеть доступа может удовлетворять требованиям услуг в терминах пропускной способности, QoS (качества обслуживания) и т. д. Следовательно, IMS является платформой для развития услуг на основе IP-транспорта, не ограниченных каким-либо ограниченным набором услуг. Протокол связи, названный "протоколом инициации сеанса связи" (SIP), был определен IETF (инженерной проблемной группой Интернет) как общий протокол управления сеансом связи для того, чтобы поддерживать широкий диапазон основанных на IP услуг. SIP является исключительно сигнализирующим протоколом для создания, модификации и завершения сеансов связи с одним или более участниками.
Некоторые услуги, которые могут быть реализованы, например, посредством IMS-решения, предполагают связь в группе многочисленных участников, иногда именуемой как "список контактов". Клиент может создать группу, выбирая участников, которые должны быть включены в группу, и активируя услугу для некоторого типа связи между участниками в этой группе. Когда услуга активирована, и группа создана, определенные правила связи также устанавливаются для того, чтобы определить, как должна быть проведена связь. Услуга требует, чтобы одно или более приложений были активизированы в сети обслуживания.
Например, может быть создана группа голосовой беседы, и форма связи может быть определена, чтобы быть так называемым механизмом "нажми, чтобы говорить", таким как IMS-концепция POC (нажми, чтобы говорить по сотовой связи). Участник в группе затем может нажать определенную кнопку или комбинацию кнопок на его/ее мобильном терминале, чтобы активизировать односторонние голосовые каналы, иногда упоминаемые как полудуплексные, к каждому из других участников в группе всякий раз, когда он/она хочет что-нибудь сказать. В другом примере может быть создана другая группа, чтобы играть в электронную игру в реальном времени, затрагивающую участников группы. В других примерах текстовые сообщения, документы или изображения могут быть обменяны в группе, или может быть проведена конференция с использованием полнодуплексных голосовых каналов.
Фиг. 1 иллюстрирует сценарий связи для создания группы связи согласно предыдущему уровню техники. Первый мобильный клиент "A" принадлежит домашней сети 100, например, посредством подписки к этой сети, которая способна предоставить услуги для группы связи посредством IMS-сети. Предполагается, что ядро услуги (не показано), в этом случае IMS-ядро, осуществлено в сети 100 для управления сеансами связи, когда активизируются различные услуги.
Среди прочего сеть 100 включает в себя сервер 102 или подобный для сохранения данных конфигурации приложения для активных услуг и клиентов, в частности, групп связи. В этом описании этот сервер называется "сервер управления группой" 102, ссылаясь на его функцию в этом контексте. В случае IMS, сервер 102 может включать в себя сервер "XCAP" (протокол доступа к XML-конфигурации), управляющий данными конфигурации, сохраненными в формате XML (расширяемый язык разметки), и/или "XDMS" (сервер управления XML-данными). Сеть 100 дополнительно включает в себя множество серверов 104 приложений, из которых только один показан, для работы различных приложений, как требуется, чтобы предоставлять конкретные услуги клиентам. В этом случае сервер 104 приложений выполнен с возможностью управлять групповыми услугами для клиента A.
Клиент A хочет создать дискуссионную группу с использованием голосового разговора с выбранными участниками, включающими в себя клиента "B", принадлежащего другой мобильной сети 106, так же как и любым другим числом дополнительных клиентов C, D…, принадлежащих другим домашним сетям, как указано штриховыми линиями на чертеже. Следует отметить, что клиентам A, B, C, D… не нужно обязательно использовать свои соответствующие домашние сети в качестве сетей доступа, а могут точно также быть в роуминге в других сетях. Кроме того, некоторые из клиентов A, B, C, D… могут принадлежать одной и той же домашней сети, и т.д.
Для того, чтобы создать разговорную группу, содержащую клиентов A, B, C, D.., с помощью сети 100, клиент A первоначально отправляет запрос 108 создания группы серверу 102 управления группой в сети 100. Это сообщение 108 обычно содержит идентификатор и сетевой адрес для каждого участника и указание активируемой услуги. В ответ на это устанавливается идентичность группы для этой группы, которая может быть сконфигурирована сервером управления абонентами или подобным, не показан, в домашней сети 100, таким как HSS (домашний сервер абонентов). Идентичность группы типично является сетевым адресом, который должен быть использован участниками группы для связи с сетевым ресурсом, управляющим группой. Например, если группа является группой конференции, идентичность группы будет сетевым адресом используемого связывающего устройства (моста) для конференц-связи. Кроме того, активированная услуга требует, чтобы некоторые приложения были активизированы в ассоциативно связанном сервере 104 приложений. Следовательно, установленная идентичность группы также укажет на конкретный сервер 104 приложений для того, чтобы управлять активированной услугой для клиента A.
В контексте IMS запрос 108 создания группы является XCAP-сообщением, имеющим конкретное поле адреса, которое используется для хранения записи группы в правильной позиции в XML-базе данных. Кроме того, идентичностью группы является PSI (открытый идентификатор услуги), типично SIP URI (унифицированный идентификатор ресурса).
1
Идентичность группы, в этом случае PSI, таким образом, сохраняется в сервере 102 управления группой вместе со списком идентичностей участников группы и данными конфигурации соответствующего приложения (в XML-формате) согласно вызванной услуге, как схематически представлено списком L участников. Вышеупомянутый протокол XCAP позволяет клиенту A читать, записывать и модифицировать данные конфигурации приложения в любой момент времени, когда группа существует. В частности, клиент A может добавить новых участников в группу или удалить участников из группы или расформировать группу в целом.
Затем, после того, как группа была создана, любой участник может передать информацию, например, голосовую, всем другим участникам в группе, активизируя групповую услугу.
В IMS-услугах используемый терминал затем сначала выдаст сообщение, названное SIP INVITE (PSI) или "приглашение PSI", IMS-сети всякий раз, когда он/она хочет передать информацию другим, для того, чтобы установить канал связи с другим участником.
В настоящее время существует проблема в том, что не существует автоматического механизма для уведомления выбранных участников в группе о факте того, что они стали участниками созданной группы. Следовательно, создателю группы, т. е. клиенту A, нужно информировать других клиентов об их членстве, например, вызывая или отправляя электронную почту, SMS или подобное каждому участнику. Это может быть утомительной задачей, если в группу включено большое количество участников. Существует также потенциальный риск того, что эта информация теряется или неуместно перехватывается другими.
Другая проблема в том, что, так как другие клиенты могут также создать свои группы с выбранными участниками, и каждая соответствующая группа будет сохранена в домашней IMS-сети ее создателя, конкретный клиент может присутствовать в списках нескольких групп, каждый из которых сохраняется локально в различных узлах и сетях в зависимости от создателей групп. В результате становится все более и более трудным для мобильных пользователей отслеживать активные группы связи при участии во множественных группах. Следовательно, пользователь может иногда не быть осведомленным о том, что является участником в конкретной группе.
Кроме того, не существует никакого автоматического механизма для того, чтобы позволить участникам узнать, что группа была расформирована, и снова создатель группы должен информировать их об этом факте. В основном, созданная группа будет существовать до тех пор, пока ее создатель не расформирует группу.
Например, клиент может захотеть отвергнуть членство в нежелательных группах или может просто захотеть разузнать, участником каких групп он/она является. В настоящее время способом, доступным для поиска членства в группе, является только проведение поиска в каждой сети, что является обременительным, ненадежным и формирует большой сетевой трафик, если исследуется множество сетей. Поэтому необходимо простое и надежное решение для создания информации о членстве в группе, доступной клиентам, так что клиент может легко узнать, участником какой из активных групп связи он/она является.
Сущность изобретения
Целью настоящего изобретения является уменьшить или устранить проблемы, изложенные выше. В частности, целью является разрешить поиск или прием информации о членстве в активных группах связи, так что клиент может определить, участником каких групп он/она является в настоящий момент.
Эта и другие цели достигаются способом и структурой для создания информации о группе связи, доступной участникам группы. Запрос создания группы принимается от первого клиента в первой домашней сети первого клиента, для создания новой группы, которая включает в себя, по меньшей мере, второго клиента, и сохраняется список участников группы, включающей в себя второго клиента. Уведомление о событии в группе отправляется из первой домашней сети, по меньшей мере, во вторую домашнюю сеть второго клиента, чтобы объявить, что второй клиент является участником в новой группе.
Если группа содержит множество участников, принадлежащих разным домашним сетям, уведомление о событии в группе отправляется из первой домашней сети в домашние сети участников группы, чтобы информировать упомянутые сети, что их соответствующие клиенты стали участниками новой группы.
Период TTL (время жизни) в предпочтительном варианте устанавливается для списка участников, в течение этого периода список рассматривается как действительный, и список затем обновляется только перед окончанием TTL, если группа продолжает существовать, отправляя сообщение обновления с новым TTL в домашние сети участников в списке.
Если идентификационные данные (идентичность) группы назначены группе, которые хранятся вместе с упомянутым списком участников группы, уведомление о событии в группе будет включать в себя идентификационные данные группы.
Этапы приема, сохранения и отправки в предпочтительном варианте выполняются сервером управления группой в первой домашней сети. Кроме того, сервер управления группой во второй домашней сети в предпочтительном варианте поддерживает список групп для второго клиента, содержащий идентичности множества групп связи, участником которых является второй клиент. Новая группа добавляется в список групп, если второй клиент становится участником упомянутой новой группы. С другой стороны, существующая группа удаляется из списка групп, если второй клиент удаляется как участник из упомянутой существующей группы, или если группа в целом расформировывается.
Сервер управления группой во второй домашней сети может отправить уведомление о членстве в группе, содержащее упомянутый список групп, второму клиенту в ответ на прием запроса информации о членстве от второго клиента. Сервер управления группой во второй домашней сети может также автоматически отправлять уведомление о членстве в группе второму клиенту всякий раз, когда упомянутый список групп изменяется.
Согласно одному варианту осуществления запрос модификации группы может быть принят от первого клиента для добавления нового участника в группу. Новый участник затем сохраняется в упомянутом списке участников группы, и уведомление о событии в группе отправляется из первой домашней сети в домашнюю сеть нового участника, чтобы проинформировать упомянутую домашнюю сеть нового участника о том, что он/она стал(а) участником группы.
Согласно другому варианту осуществления запрос модификации группы может быть принят от первого клиента для удаления участника из группы, удаленный участник затем удаляется из упомянутого списка участников группы, и сообщение о недействительности членства отправляется из первой домашней сети в домашнюю сеть удаленного участника, чтобы информировать упомянутую домашнюю сеть удаленного участника о том, что он/она был(а) удален из группы. Сообщение о недействительности членства может быть сообщением обновления с TTL, установленным в ноль, таким образом, указывая, что членство удаленного участника стало недействительным.
Согласно еще одному варианту осуществления сервер управления группой во второй домашней сети может принять сообщение отказа от группы от отказывающегося клиента для отказа от членства в группе. В этом случае отвергнутая группа удаляется из списка групп для отказывающегося клиента, и сообщение отказа от членства отправляется первой домашней сети, чтобы объявить о том, что отказывающийся клиент был удален из группы.
Настоящее изобретение дополнительно заключает в себе структуру для создания информации о группе связи, доступной участникам группы, содержащую сервер управления группой, который выполнен с возможностью принимать запрос создания группы от первого клиента для новой группы, включающей в себя, по меньшей мере, второго клиента, и сохранять список участников в группе, включающей в себя второго клиента. Сервер управления группой дополнительно выполнен с возможностью отправлять уведомление о событии в группе в домашнюю сеть второго клиента, чтобы объявить о том, что второй клиент стал участником новой группы.
Если группа содержит множество участников, принадлежащих разным домашним сетям, сервер управления группой дополнительно выполнен с возможностью отправлять уведомление о событии в группе в домашние сети участников группы, чтобы объявить о том, что их соответствующие клиенты стали участниками новой группы.
Сервер управления группой в предпочтительном варианте дополнительно выполнен с возможностью устанавливать период TTL (время жизни) для списка участников, в течение которого он должен быть действителен, и обновлять список только перед окончанием TTL, если группа продолжает существовать, отправляя сообщение обновления с новым TTL в домашние сети участников в списке.
Если группе назначена идентичность группы, которая хранится вместе с упомянутым списком участников группы, уведомление о событии в группе будет включать в себя идентичность группы.
Сервер управления группой может быть дополнительно выполнен с возможностью сохранять список групп для третьего клиента, содержащий идентичности групп множества групп связи, участником которых является третий клиент. Сервер управления группой может также быть выполнен с возможностью добавлять новую группу в список групп, когда третий клиент становится участником упомянутой новой группы, и удалять существующую группу из списка групп, если третий клиент удаляется как участник из упомянутой существующей группы, или если группа расформировывается в целом.
Сервер управления группой может быть дополнительно выполнен с возможностью отправлять уведомление о членстве в группе, содержащее упомянутый список групп, третьему клиенту в ответ на прием запроса информации о членстве от третьего клиента. Сервер управления группой может также быть выполнен с возможностью автоматически отправлять уведомление о членстве в группе, содержащее упомянутый список групп, третьему клиенту всякий раз, когда упомянутый список изменяется.
Согласно дополнительным вариантам осуществления сервер управления группой может быть дополнительно выполнен с возможностью принимать запрос модификации группы от первого клиента для добавления нового участника в группу, сохранять нового участника в упомянутом списке участников группы и отправлять уведомление о событии в группе в домашнюю сеть нового участника, чтобы объявить о том, что он/она стал(а) участником группы.
Сервер управления группой может быть дополнительно выполнен с возможностью принимать запрос модификации группы от первого клиента для удаления участника из группы, удалять удаляемого участника из упомянутого списка участников группы и отправлять сообщение о недействительности членства в домашнюю сеть удаленного участника, чтобы объявить о том, что он/она был(а) удален из группы. Сообщение о недействительности членства в предпочтительном варианте является сообщением обновления с TTL, установленным в ноль, таким образом, указывая, что членство удаленного участника стало недействительным.
Сервер управления группой может быть дополнительно выполнен с возможностью принимать сообщение об отказе от группы от отказывающегося клиента для отказа от членства в группе, удалять отвергнутую группу из списка групп для отказывающегося клиента и отправлять сообщение отказа от членства в домашнюю сеть отказывающегося клиента, чтобы объявить о том, что упомянутый отказывающийся клиент был удален из группы.
Настоящее изобретение дополнительно заключает в себя систему связи для того, чтобы сделать информацию о группе связи доступной участникам группы, содержащую первый сервер управления группой в домашней сети первого клиента и второй сервер управления группой в домашней сети второго клиента. Первый сервер управления группой выполнен с возможностью принимать запрос создания группы от первого клиента для создания новой группы, включающей в себя, по меньшей мере, второго клиента, и хранить список участников группы, включающей в себя второго клиента. Первый сервер управления группой дополнительно выполнен с возможностью отправлять уведомление о событии в группе второму серверу управления группой, чтобы объявить о том, что второй клиент стал участником новой группы. Второй сервер управления группой выполнен с возможностью сохранять список групп для второго клиента, содержащий идентичности множества групп связи, участником которых является второй клиент, и добавлять новую группу в список групп в ответ на прием уведомления о событии в упомянутой группе.
Дополнительные признаки и преимущества настоящего изобретения станут явными из детального описания, приведенного ниже.
Краткое описание чертежей
Теперь настоящее изобретение будет описано более детально посредством предпочтительных вариантов осуществления и со ссылкой на сопровождающие чертежи, на которых:
Фиг. 1 является блок-схемой, иллюстрирующей процедуру создания группы связи согласно предшествующему уровню техники.
Фиг. 2 является блок-схемой, иллюстрирующей процедуру создания группы связи в соответствии с настоящим изобретением.
Фиг. 3 является блок-схемой, иллюстрирующей процедуру модификации группы связи посредством добавления участника согласно одному варианту осуществления.
Фиг. 4 является блок-схемой, иллюстрирующей процедуру модификации группы связи посредством удаления участника, согласно другому варианту осуществления.
Фиг. 5 является блок-схемой, иллюстрирующей процедуру отказа от членства в группе связи, согласно другому варианту осуществления.
Фиг. 6 является блок-схемой, иллюстрирующей процедуру управления членством в группе связи в соответствии с одним аспектом настоящего решения.
Фиг. 7 является блок-схемой, иллюстрирующей процедуру управления членством в группе связи в соответствии с другим аспектом настоящего решения.
Фиг. 8 - это схематическая блок-схема сервера управления группой в соответствии с настоящим решением.
Описание предпочтительных вариантов осуществления
Следует отметить, что настоящее изобретение связано с управлением членством в группах связи независимо от того, какой тип(ы) услуг связи используется. Таким образом, описание того, как групповые услуги вызываются или используются, не является необходимым, чтобы понять настоящее изобретение, и последующее детальное описание, поэтому, будет сфокусировано скорее на членстве в группе, чем на самих услугах.
Теперь будет описан предпочтительный вариант осуществления настоящего изобретения, первоначально со ссылкой на фиг. 2. Блок-схема, показанная на чертеже, логически разделена на две области посредством штриховой центральной граничной линии с областью 200A домашней сети первого клиента A слева и областью 200B домашней сети второго клиента B справа. Как и на фиг. 1, домашняя сеть клиента A способна предоставлять услуги своим клиентам, предполагающие создание групп связи. Сетевые области 200A, 200B содержат серверы 202A и 202B управления группой, соответственно и серверы 204A и 204B приложений соответственно. Серверы 202A и 202B управления группой могут быть подобными, но они будут действовать по-разному в контексте настоящего решения, как будет очевидно из описания ниже. Таким образом, в дополнение к функциям, описанным ниже, сервер 202A может быть дополнительно сконфигурирован и иметь такие же функции, что и сервер 202B, и наоборот. Настоящее изобретение, в целом, не ограничено какими-либо отдельными типами серверов 202A и 202B до тех пор, пока они могут выполнять фундаментальные этапы настоящего решения.
Как и в известной процедуре, описанной выше, клиент A намеревается создать группу связи для использования некоторого вида групповой услуги, например, как упомянуто выше. Группа будет содержать участников, выбранных клиентом A, включающих в себя клиента B. Как и в предыдущем примере, клиенты A и B могут быть в настоящий момент подключены к сетям, отличным от своих домашних сетей, но они могут, конечно, все еще связываться со своими домашними сетями, как описано ниже. Детальные механизмы этой связи не обязательно описывать, чтобы понять настоящее решение.
1
Сначала, клиент A отправляет запрос создания группы на этапе 2.1 серверу 202A управления группой в сети 200A, содержащий информацию об идентичности и сетевой адрес для каждого выбранного участника в группе, и указание задействуемой услуги. Запрос создания группы может также содержать имя группы в свободном тексте, как необязательно определено клиентом A, далее в данном документе, как правило, такое как псевдоним, описание, тип группы или подобное, упоминается как "имя группы", например, "наша футбольная команда". Запрос создания группы дополнительно содержит предложенную идентичность группы в виде сетевого адреса, такого как "sip:myteam@league.com". Сервер 202A затем назначает идентификационные данные (идентичность) группе, например, предложенные. Если предложенная идентичность группы занята или недействительна некоторым образом, сеть отвергнет предложенную идентичность группы и необязательно предложит другую. Назначенная идентичность группы (и имя группы, если принята) затем сохраняется вместе с принятыми данными идентичности/адреса для всех участников и данными конфигурации, связанными с вызванной услугой, в списке L участников, как иллюстрировано следующим этапом 2.2. До сих пор процедура в основном является такой же, что и в известном предыдущем уровне техники, описанном в соединении с фиг. 1.
Согласно настоящему решению сервер 202A дополнительно отправляет "уведомление о событии в группе" на этапе 2.3 серверу 202B управления группой в сети 200B клиента B для того, чтобы объявить о том, что была создана группа, в которую клиент B включен в качестве участника. Это уведомление содержит тип события (например, "добавлен участник группы"), идентичность группы, например PSI, и также, в предпочтительном варианте, принятое имя группы, как указано выше. Если используется сеть IMS, уведомление о событии в группе в предпочтительном варианте отправляется на этапе 2.3 как SIP-опубликованное сообщение, называемое "SIP PUBLISH" ("SIP-публикация"). В предпочтительном варианте осуществления это сообщение направляется по сетевому адресу клиента B, а сеть 200B (например, SIP-сеть) конфигурируется, чтобы направлять сообщение серверу 202B вместо клиента B, когда принимается комбинация типа события и адреса клиента B (URI). Таким образом, серверу 202A не нужно искать адрес (URI) сервера 202B.
В действительности, сервер 202A также отправляет групповое уведомление соответствующим серверам управления группами в домашних областях других выбранных участников группы, не показаны, как схематически иллюстрировано штриховыми стрелками на этапе 2.4. Кроме того, назначенная идентичность группы, например PSI, может также быть отправлена (не показано) клиенту A, которую он/она будет использовать в качестве ссылки для того, чтобы сделать какие-либо модификации в группе, такие как добавление или удаление участников.
2
2
С другой стороны, сервер 202B управления группой в сети 200B сохраняет принятую идентичность группы (и имя группы, если принято) на этапе 2.5. Таким же образом, сервер 202B может потенциально также принимать дополнительные подобные групповые уведомления от других соответствующих серверов управления группами в других сетях, не показаны, всякий раз, когда создается группа, в которую клиент B включен в качестве участника, как схематически иллюстрировано на этапе 2.6 штриховыми стрелками. Когда такие групповые уведомления принимаются, сервер 202B сохраняет приложенные идентичности групп (например, PSI) в списке L групп для этого отдельного клиента B. Список L групп для клиента B, таким образом, пополняется в течение времени и может потенциально содержать множество идентичностей групп (и соответствующие имена групп), принятых от серверов управления группами в различных сетях.
2
1
2
Таким образом, информация о членстве в активных группах для конкретного клиента, в этом случае B, собирается в одном месте в сервере 202B, который может быть легко доступен клиенту. Соответственно, этап 2.7 окончательно иллюстрирует, что клиент B выбирает эту информацию из списка L групп, делая соответствующий запрос информации о членстве серверу 202B (например, "получить PSI"). На практике, списки L и L могут быть сохранены и поддерживаться любым подходящим образом, например, в средстве хранения на соответствующем сервере, или в отдельных узлах баз данных. Настоящее изобретение, таким образом, не ограничено в этом отношении.
1
Более того, ограниченный период времени, например "TTL (время жизни)", может быть установлен для списка L участников созданной группы, в течение которого список считается действующим. Сервер управления группой, управляющий списком, может быть сконфигурирован так, чтобы "обновлять" список только перед окончанием TTL или регулярно (например, раз в неделю), если группа продолжает существовать, отправляя сообщение обновления с новым TTL всем участникам в списке или скорее их соответствующим домашним сетям, даже если изменения не были сделаны.
1
Как правило, клиент может в любое время получить действующий список групп от локального сервера управления группами в домашней сети. Дополнительно возможно для клиента, например клиента B, отклонить членство в любой нежелательной группе, которая может встретиться в его списке групп, например, отправляя соответствующее сообщение отказа локальному домашнему серверу, например серверу 202B (должен быть описан более детально ниже). Сообщение отказа затем будет передано серверу управления группами, где поддерживается отвергнутая группа, например серверу 202A, где отказывающийся клиент будет удален из списка участников группы, например списка L. Необязательно, отказывающийся клиент B может извлечь адресную информацию о сервере 202A в локальном сервере 202B, которая может быть использована, чтобы передать сообщение отказа непосредственно серверу 202A.
2
2
На фиг. 2 была иллюстрирована процедура для того, чтобы сделать информацию о членстве легкодоступной, когда создается новая группа связи. Как упомянуто выше, клиент может не знать о том, что является участником в некоторых группах. Таким образом, в любое время клиент B может извлечь список L групп из сервера 202B для того, чтобы точно определить, участником каких групп он является, принимая уведомление о членстве в группе в ответ на отправку соответствующего запроса информации о членстве серверу 202B управления группами. Согласно альтернативным вариантам осуществления уведомление о членстве в группе может быть автоматически отправлено клиенту B от сервера 202B, как только он/она стал(а) участником группы связи, или, более обычно, всякий раз, когда его/ее список L групп изменяется любым способом. Клиент может таким образом подписаться на такие события, например, посредством SIP-сообщения "SIP SUBSCRIBE" ("SIP-подписка") (событие = SIP-профиль) и автоматически принимать уведомления о происходящих событиях членства в группах.
1
Подобным образом, клиент A может также изменять уже существующий список L участников, когда он создан согласно описанному выше, например, добавляя нового участника X к группе, что иллюстрировано в блок-схеме, показанной на фиг. 3. На этом чертеже соответствующие элементы имеют те же номера ссылок, что и на фиг. 2, хотя "B" был изменен на "X".
1
Клиент A сначала отправляет запрос модификации группы серверу 202A управления группой на этапе 3.1, содержащий идентичность группы (например, PSI) и инструкцию добавить клиента X к группе, включающую его/ее идентичность и сетевой адрес. В ответ на это сервер 202A добавляет клиента X в список L участников группы на этапе 3.2. Сервер 202A дополнительно отправляет уведомление о событии в группе (например, SIP PUBLISH) на этапе 3.3 серверу 202X управления группой, содержащее тип события (например, "добавлен участник группы"), идентичность группы (например, PSI) и необязательно ассоциативно связанное имя группы, чтобы объявить, что клиент X теперь является участником группы. Сообщение, отправленное на этапе 3.3, может по существу быть таким же, что и отправленное на этапе 2.3 в предыдущем примере.
2
В настоящем примере предполагается, что сервер 202X управления группой поддерживает список L групп от имени клиента X, содержащий одну или более групп, участником которых клиент X является в настоящее время. В ответ на прием уведомления о событии в группе на этапе 3.3 сервер 202X на этапе 3.4 добавляет запись 300 в список с новой группой, владельцем которой является клиент A. Таким образом, клиент X может в любое время вызвать список из сервера 202X, как иллюстрировано на этапе 3.5, и узнать, что он/она стал(а) участником группы клиента A.
1
Подобным образом, клиент A может также изменить список L участников группы, удаляя из него участника группы, что иллюстрировано на блок-схеме, показанной на фиг. 4. Также на этом чертеже соответствующие элементы имеют те же номера ссылок, что и на фиг. 2.
1
2
2
Клиент A сначала отправляет запрос модификации группы, содержащий идентичность группы (например, PSI) и инструкцию удалить клиента B из группы, серверу 202A управления группой на этапе 4.1. В ответ на это сервер 202A удаляет клиента B из списка L участников на этапе 4.2. Сервер 202A может также отправить сообщение недействительности членства на этапе 4.3 серверу 202B, чтобы объявить, что клиент B больше не является участником группы. Сервер 202A может эффективно удалить группу из списка L групп на сервере 202B, отправляя сообщение обновления для участника B с TTL, установленным в ноль, в качестве сообщения о недействительности членства, таким образом, указывая, что членство B стало недействительным. Обновленное состояние события затем немедленно истечет, и, следовательно, сервер 202B удаляет группу из списка L. Как похоже на предыдущие примеры, измененный TTL может быть адресован клиенту B, но будет направлен серверу 202B на основе комбинации тип события/клиент B.
В ответ на прием сообщения о недействительности членства на этапе 4.3, например, с TTL=0, сервер 202B на этапе 4.4 удаляет запись 400 для группы клиента A из списка. При извлечении или приеме списка в более поздний момент времени на этапе 4.5 клиент B узнает, что он/она больше не является участником группы, созданной клиентом A.
2
Альтернативно, сервер 202A может просто удерживаться от отправки каких-либо дополнительных сообщений обновления клиенту B, что рано или поздно закончится истечением срока действия записи группы в списке L, в зависимости от текущего значения TTL. Таким образом, этап 4.3 может быть опущен, но запись группы задержится в списке до тех пор, пока не истечет срок ее действия.
1
Если группа расформировывается в целом, может быть выполнена похожая процедура, как описано в предыдущем примере на фиг. 4. Однако отличие состоит в том, что сервер 202A затем стирает весь список L и отправляет сообщение о недействительности членства серверам управления группами всякого и каждого участника, как на этапе 4.3 выше, в предпочтительном варианте, как сообщение обновления с TTL=0 для всех участников, таким образом, указывая, что их членство стало недействительным. В этом способе каждая ассоциативно связанная сеть информируется, что их клиенты больше не являются участниками группы, и, следовательно, удаляет группу из соответствующего списка групп.
Альтернативно, будет достаточным удержать от отправки любому клиенту любое дополнительное сообщение обновления, что рано или поздно заканчивается истечением срока группы в каждом локальном сервере. Таким образом, сети будут удалять записи группы клиента A из списков групп всех участников, так что все клиенты в группе создателя могут узнать, что они больше не являются участниками группы при извлечении списка.
Как упомянуто выше, клиент может использовать информацию о группе, чтобы отвергнуть членство в любой нежелательной группе, встречающейся в его/ее списке групп. Таким образом, если клиент не желает принимать участие в конкретной группе, весь трафик, формируемый в группе, направленный этому клиенту, может быть блокирован сетью обслуживания этого клиента. Однако механизмы блокировки групповой связи с конкретным клиентом лежат вне рамок настоящего изобретения и поэтому не будут описаны здесь дополнительно. Альтернативно, клиент может активно отозвать свое членство, как описано ниже.
2
1
Более детальный пример альтернативной процедуры, когда клиент B отказывается от членства в группе, созданной клиентом A, будет теперь описан со ссылкой на фиг. 5. Первоначально, отказывающийся клиент B отправляет сообщение отказа от группы серверу 202B управления группой в своей домашней сети 200B, на первом этапе 5.1. Сервер 202B затем удаляет запись 400 для этой группы из списка L групп на следующем этапе 5.2. Сервер 202B дополнительно отправляет соответствующее сообщение отказа от членства серверу 202A управления группой, где хранится отвергнутая группа, на этапе 5.3, чтобы объявить, что отказывающийся клиент B был удален из группы. В ответ на это сервер 202A удаляет отказывающегося клиента B из списка L участников группы на этапе 5.4. Кроме того, сервер 202A может на конечном этапе 5.5 необязательно отправляет соответствующее сообщение отказа участника создателю группы клиенту A, объявляющее, что клиент B был отозван из группы.
В ранее описанных процедурах, иллюстрированных на фиг. 2-5, должно быть очевидно, что различные этапы не всегда должны обязательно выполняться в данном порядке. Например, сервер 202A может выполнять этап 2.3 перед этапом 2.2, или этап 3.3 перед этапом 3.2, или этап 4.3 перед этапом 4.2, или этап 5.5 перед этапом 5.4. Также сервер 202B может выполнить этап 5.3 перед этапом 5.2 и так далее.
Со ссылкой на блок-схему, показанную на фиг. 6, теперь будет описана основная процедура, чтобы сделать информацию о членстве в группе легкодоступной участникам в группе связи в соответствии с настоящим изобретением. Эта процедура выполняется в соответствующем сервере или подобном оборудовании в сети обслуживания, способной предоставить услуги групповой связи клиентам, например, сервера 202A в примерах на фиг. 2, 3 или 4.
На первом этапе 600 от клиента принимается запрос создания группы, таким же образом, как на этапе 2.1 на фиг. 2, определяющий множество участников, которые должны быть объединены в новую группу. На следующем этапе 602 список участников создается и сохраняется для запрошенной группы так, как на этапе 2.2 на фиг. 2. Кроме того, на следующем этапе 604 отправляется уведомление о событии в группе, например сообщение, отправленное на этапе 2.3 на фиг. 2, каждому участнику в группе или, скорее, соответствующему серверу управления группой в домашней сети каждого участника, чтобы проинформировать каждую соответствующую сеть о том, что их клиент стал участником новой группы. Как упомянуто выше, уведомление о событии в группе может быть направлено такому серверу, даже когда адресовано участнику/клиенту.
В самой основной форме процедура может закончиться здесь, после этапа 604, если изменения не сделаны в группе. Однако в некоторый момент времени на следующем этапе 606 от клиента, создавшего группу, принимается запрос модификации группы, такой как любой из запросов, принятых на этапах 3.1 и 4.1 на фиг. 3 и 4 соответственно. Затем определяется на этапе 608, на какой тип события указывает запрос, т. е. какую модификацию клиент хочет сделать. Если, как указано в запросе, в группу должен быть добавлен определенный участник, например, согласно процедуре на фиг. 3, этот участник добавляется в соответствующий список участников на этапе 610. Уведомление о событии в группе затем отправляется новому участнику (или, скорее, серверу управления группой в его/ее домашней сети) на этапе 612, чтобы информировать его/ее домашнюю сеть о том, что он/она стал(а) участником этой группы.
Альтернативно, если участник должен быть удален из группы, этот участник удаляется из списка участников на этапе 614, например, как на этапе 4.2 на фиг. 4. Уведомление о событии в группе, например, сообщение о недействительности членства из этапа 4.3, затем отправляется удаленному участнику (или, скорее, серверу управления группой в его/ее домашней сети) на этапе 616, чтобы информировать его/ее домашнюю сеть о том, что он/она больше не является участником в группе. После любого из этапа 612 и этапа 616 процесс может вернуться к этапу 606, если принят дополнительный запрос модификации группы. Должно быть отмечено, что этапы 614 и 616 могут в основном также выполняться, если группа расформировывается в целом, в таком случае процесс завершится после отправки уведомления о событии в группе всем участникам на этапе 616.
Вышеописанная процедура на фиг. 6 теперь будет описана, как выполняемая в сервере управления группой в противоположной сети участника группы со ссылкой на блок-схему, показанную на фиг. 7, таком, как сервер 202B в примерах на фиг. 2 или 4 или сервер 202X в примере на фиг. 3. Однако сервер 202A может также быть сконфигурирован выполнять эту процедуру в подобной ситуации.
На первом этапе 700 уведомление о событии в группе для конкретного клиента как правило принимается от сервера в другой сети, как сообщение, отправленное на этапе 604 выше. Затем определяется на этапе 702, на какой тип события ссылается уведомление. Если клиент стал участником группы, новая запись для этой группы добавляется в ассоциативно связанный список групп клиента на этапе 704, например, согласно этапу 2.5 на фиг. 2 или этапу 3.4 на фиг. 3. Должно быть отмечено, что группа может быть либо вновь созданной группой, либо уже существующей. С другой стороны, если клиент удаляется из группы, например, посредством приема сообщения о недействительности членства на этапе 4.3 в процедуре на фиг. 4, эта группа удаляется из списка участников на этапе 706. После любого из этапа 704 и этапа 706 уведомление может быть необязательно отправлено клиенту на этапе 708, если сервер сконфигурирован делать так автоматически, или же по запросу. В любом случае процесс может вернуться к этапу 700, если принято дополнительное уведомление о событии в группе.
Должно быть отмечено, что сервер управления группой согласно настоящему изобретению в предпочтительном варианте сконфигурирован действовать как любой из серверов 202A, 202B и 202X, описанных выше. Таким образом, изобретенный сервер управления группой в предпочтительном варианте способен поддерживать списки участников и отправлять уведомления о событии в группе другим связанным серверам управления группами (как вышеописанный сервер 202A), так же как и поддерживать списки групп, принимать уведомления о событиях в таких группах и соответственно информировать клиентов (как вышеописанные серверы 202B, X).
В заключение, теперь будет описан изобретенный сервер управления группой в целом со ссылкой на фиг. 8, иллюстрирующую схематическую блок-схему сервера 800, содержащего множественные логические блоки 802-812. Следует отметить, что различные блоки в нем являются исключительно логическими, а на практике описанные функции могут быть осуществлены многими разными способами, использующими соответствующее аппаратные и программные средства, которые, однако, лежат в области знаний специалиста в данной области техники, и поэтому нет необходимости описывать их более детально.
Блок 802 приема запроса создания и модификации группы сконфигурирован принимать запросы создания и модификации группы от клиентов, например, как на вышеописанных этапах 2.1, 3.1, 4.1 и 5.1. Блок 804 управления списком участников сконфигурирован поддерживать списки участников групп для клиентов, например, как на вышеописанных этапах 2.2, 3.2, 4.2 и 5.4. Блок 806 уведомления о событии в группе сконфигурирован отправлять уведомления о событии в группе другим серверам управления группами, например, как на вышеописанных этапах 2.3, 2.4, 3.3, 4.3 и 5.3.
Блок 808 приема события в группе сконфигурирован принимать уведомления о событии в группе от других серверов управления группами, например, как на вышеописанных этапах 2.3, 2,6, 3.3, 4.3 и 5.3. Блок 810 управления списком групп сконфигурирован поддерживать списки групп для клиентов, например, как на вышеописанных этапах 2.5, 3.4, 4.4 и 5.2. В заключение, блок 812 уведомления о членстве сконфигурирован принимать запросы о членстве и уведомлять клиентов о текущем состоянии его/ее списка группы, например, как на вышеописанных этапах 2.7, 3.5, 4.5 и 5.5.
Настоящее изобретение предоставляет простое, но эффективное, решение, позволяющее сделать информацию о членстве в группах связи более доступной клиентам, так что клиент может узнать, участником какой из активных групп связи он/она является, без сложного поиска. Кроме того, эта информация доступна без значительной задержки, как только один сервер вышел на связь. Клиент, создающий группу, также избавлен от заботы информировать участников о их членстве в группе, так как эта информация делается доступной посредством настоящего решения, в частности, если участники автоматически уведомляются, как только они становятся участниками. Конфиденциальность также улучшена, так как нет необходимости предоставлять эту информацию посредством вызова, отправки электронной почты и т.д., что может быть, к сожалению, перехвачено. Для клиентов также возможно хранить их собственную информацию в связи с их списками групп, например, какие-либо идентичности (PSI) открытых групп, к которым они могут присоединиться в будущем.
В то время как изобретение было описано со ссылкой на конкретные примерные варианты осуществления, описание предназначено только иллюстрировать изобретенную концепцию и не должно быть воспринято как ограничивающее объем изобретения, который определен прилагаемой формулой изобретения.