Динамическое управление списком контактов

Иллюстрации

Показать все

Изобретение относится к средствам динамического управления информацией списков контактов в мультимодальной системе связи. Технический результат заключается в уменьшении времени на управление списком контактов. Определяют профиль пользователя. Определяют информацию о контактах, ассоциированную с контактами, в списке контактов для пользователя. Вычисляют взвешенные коэффициенты для каждого из контактов на основе информации о контактах. Вычисляют общий вес для каждого контакта на основе взвешенных коэффициентов, ассоциированных с каждым контактом. Упорядочивают список контактов на основе общего веса каждого контакта в списке контактов. Представляют упорядоченный список контактов пользователю через дисплей устройства, ассоциированного с пользователем. Обновляют взвешенные коэффициенты в качестве реакции на изменения в информации о контактах и основываясь на обратной связи от множества ассоциированных с пользователем устройств, отображающих список контактов, на основе одной или более возможностей каждого устройства и соответствующих возможностей контактов в списке контактов. Динамически переупорядочивают список контактов на основе обновленных взвешенных коэффициентов. Настраивают и переупорядочивают список контактов для каждого из множества ассоциированных с пользователем устройств. 3 н. и 16 з.п. ф-лы, 8 ил.

Реферат

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

[0001] Современные системы связи, которые могут обеспечивать большое число возможностей, включающих в себя интеграцию различных модальностей связи с различными службами, делают возможным более широкий массив связи между людьми. Приложения для социальных сетей, мультимодальные корпоративные приложения связи и сопоставимые приложения являются примерами быстро распространяющихся систем связи, использующих преимущества современных возможностей.

[0002] Многие приложения связи или служба (например, обмен мгновенными сообщениями, приложения передачи голоса по IP «VOIP» и т.п.) применяют механизм для поддержания контактов. Такие механизмы, как правило, управляются вручную конечным пользователем и их сложно, если возможно, передавать или поддерживать по различным службам. Пользователи могут тратить значительное количество времени на управление этими контактами и иметь дело со сложными длинными списками контактов, которые могут или могут не быть часто использованы. По мере развития систем связи, становятся преобладающими мультимодальные связи, связи в режиме реального времени или не в режиме реального времени, управление информацией о контакте между различными приложениями/службами становится все более сложной задачей.

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

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

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

[0005] Эти и другие признаки и преимущества будут очевидны из прочтения нижеследующего подробного описания и просмотра ассоциированных чертежей. Следует понимать, что и вышеприведенное общее описание и нижеследующее подробное описание являются поясняющими и не ограничивают аспекты, как заявлено.

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

[0006] Фиг. 1 - схема, иллюстрирующая примерную унифицированную систему связи, где варианты осуществления могут быть реализованы для предварительного заполнения списков контактов;

[0007] Фиг. 2 - блок-схема, иллюстрирующая компоненты и ресурсы в динамическом управлении списками контактов;

[0008] Фиг. 3 - концептуальная схема, иллюстрирующая динамическое управление списками контактов на основе информации из различных источников согласно вариантам осуществления;

[0009] Фиг. 4 - скриншот примерного пользовательского интерфейса для обеспечения динамически управляемой информации о контакте пользователю;

[0010] Фиг. 5 - блок-схема различных компонентов и процессов в примерной системе динамического управления контактами согласно вариантам осуществления;

[0011] Фиг. 6 - сетевое окружение, где система согласно вариантам осуществления может быть реализована;

[0012] Фиг. 7 - блок-схема примерного вычислительного операционного окружения, где варианты осуществления могут быть реализованы; и

[0013] Фиг. 8 иллюстрирует логическую схему последовательности операций для процесса динамического управления списками контактов согласно вариантам осуществления.

ПОДРОБНОЕ ОПИСАНИЕ

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

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

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

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

[0018] В данном описании термин «платформа» может представлять собой объединение компонентов аппаратного и программного обеспечения для управления мультимодальными системами связи. Примеры платформ включают в себя, но не ограничиваясь этим, службу хостирования, исполняемую на множестве серверов, приложение, исполняемое на одном сервере, и сопоставимые системы. Термин «сервер» обычно относится к вычислительному устройству, исполняющему одну или несколько программ программного обеспечения, как правило, в сетевом окружении. Однако сервер также может быть реализован как виртуальный сервер (программами программного обеспечения), исполняемый на одном или нескольких вычислительных устройствах, просматриваемых в сети в качестве сервера. Больше подробностей об этих технологиях и примерных операциях приводится ниже по тексту. Кроме того, термин «динамический», используемый вместе с поддержанием списков контактов, предназначен для иллюстрации различия между традиционными подходами, где статически хранящаяся и управляющаяся информация используется с жесткими правилами, и вариантами осуществления, которые делают возможным создание и обновление информации контактов на основе часто меняющихся параметров, таких как присутствие абонента, пользовательское(ие) устройство(а), типы беседы и схожие параметры.

[0019] Фиг. 1 включает в себя схему 100, иллюстрирующую примерную унифицированную систему связи, где могут быть реализованы варианты осуществления для динамического управления списками контактов. Унифицированная система связи является примером современных систем связи с широким спектром возможностей и служб, которые могут быть обеспечены абонентам. Унифицированная система связи является системой связи в режиме реального времени, содействующей обмену мгновенными сообщениями, присутствию, аудио-видео конференции, веб-конференции и подобных функциональностей.

[0020] В унифицированной системе связи («UC», unified communication), такой как система, показанная на схеме 100, пользователи могут осуществлять связь с помощью различных конечных устройств (102, 104), которые являются клиентскими устройства системы UC. Каждое клиентское устройство может быть способно исполнять одно или несколько приложений связи для голосовой связи, видеосвязи, обмена мгновенными сообщениями, совместного использования приложения, совместного использования данных и подобного. В дополнение к их расширенной функциональности, конечные устройства также могут содействовать традиционным телефонным вызовам через внешнее соединение, например через PBX (АТС) 124 к телефонной сети общего пользования («PSTN», Public Switched Telephone Network). Конечные устройства могут включать в себя любой тип смартфона, сотового телефона, любого вычислительного устройства, исполняющего приложение связи, интеллектуальной автомобильной консоли и усовершенствованных телефонных устройств с дополнительной функциональностью.

[0021] Сеть(и) 110 UC включает в себя некоторое число серверов, выполняющих различные задачи. Например, серверы 114 UC обеспечивают функциональности регистрации, присутствия и маршрутизации. Функциональность маршрутизации позволяет системе осуществлять маршрутизацию вызовов для пользователя к любому из клиентских устройств, назначенных пользователю на основе политик, установленных пользователем, и/или по умолчанию. Например, если пользователь не является доступным через обычный телефон, то вызов может быть переадресован на сотовый телефон пользователя, и если он не отвечает, может быть использовано некоторое число опций голосовой почты. Поскольку конечные устройства могут оперировать дополнительными режимами связи, серверы 114 UC могут обеспечивать доступ к этим дополнительным режимам связи (например, обмену мгновенными сообщениями, видеосвязи и т.д.) через сервер 112 доступа. Сервер 112 доступа находится в сети периметра и обеспечивает возможность соединения через сеть(и) 110 UC с другими пользователями в одном из дополнительных режимов связи. Серверы 114 UC могут включать в себя серверы, которые выполняют объединения описанных выше функциональностей, или специализированные серверы, которые обеспечивают только конкретную функциональность. Например, домашние серверы, обеспечивающие функциональность присутствия, серверы маршрутизации, обеспечивающие функциональность маршрутизации, и так далее. Подобным образом, сервер 112 доступа может обеспечивать множественные функциональности, такие как защита брандмауэром и возможность соединения, или только конкретные функциональности.

[0022] Сервер 118 аудио/видео (A/V) конференции обеспечивает возможности аудио- и/или видеоконференции, содействуя им по внутренней или внешней сети. Сервер-посредник 116 осуществляет посредничество при передаче сигналов и носителей к и от других типов сетей, таких как PSTN или сотовая сеть (например, вызовы через PBX 124 или с мобильного телефона 122). Сервер-посредник 116 может также действовать как пользовательский агент протокола инициализации сеанса (SIP).

[0023] В системе UC пользователи могут обладать одним или несколькими идентификационными элементами, которые необязательно ограничиваются телефонным номером. Идентификационный элемент может принимать любую форму, в зависимости от интегрированных сетей, такую как номер телефона, унифицированный идентификатор ресурса (URI) протокола инициализации сеанса (SIP) или любой другой идентификатор. Несмотря на то, что любой протокол может быть использован в системе UC, SIP является обычно используемым способом.

[0024] SIP является протоколом управления (передачи сигналов) прикладного уровня для создания, модифицирования и завершения сеансов с одним или несколькими участниками. Он может быть использован для создания двухсторонних, многосторонних или многоадресных сеансов, которые включают в себя телефонные вызовы по Интернету, мультимедийное распространение и мультимедийные конференции. SIP спроектирован, чтобы быть независимым от лежащего в основе транспортного уровня.

[0025] Клиенты SIP могут использовать протокол управления передачей («TCP») для соединения с серверами и другими конечными точками SIP. SIP первоначально используется при установке и завершении голосовых или видео-вызовов. Однако он может быть использован в любом приложении, где инициализация сеанса является требованием. Они включают в себя событие подписки и уведомления, мобильности терминала и тому подобное. Голосовые и/или видеосвязи, как правило, выполняются по отдельным протоколам сеанса, как правило, по протоколу реального времени («RTP»).

[0026] Система UC может обеспечивать платформу для социальных сетей, мультимодальных корпоративных связей и схожих окружений. Когда абоненты принимают участие в таком окружении, они разрабатывают список(и) контактов как часть получения преимуществ от возможностей их расширенного приложения(ий) связи. В системе в соответствии с вариантами осуществления, списки контактов для различных приложений могут быть динамически управляемыми в связи с различными устройствами и приложениями совместной работы и связи и с установленными приоритетами на основе взвешенных коэффициентов, таких как тип и частота связи между абонентом и контактами, возможности и типы устройства/приложения, время суток, день недели, однозначно заданные отношения и схожие параметры. Более подробные примеры приведены ниже по тексту.

[0027] В то время как примерная система по Фиг. 1 была описана с конкретными компонентами, такими как сервер-посредник, сервер A/V и схожие устройства, варианты осуществления не ограничиваются этими компонентами или системными конфигурациями и могут быть реализованы с другой системной конфигурацией, применяющей меньшее количество компонентов или дополнительные компоненты. Функциональность систем динамического управления списками контактов на основе различных источников и весовых коэффициентов также может быть распределена между компонентами системы по-разному в зависимости от возможностей компонентов и системных конфигураций. Кроме того, варианты осуществления не ограничиваются унифицированными системами связи. Подходы, обсуждаемые в данном описании, могут быть применены к любому обмену данными в сетевом окружении связи, используя принципы, описанные в настоящем документе.

[0028] Фиг. 2 представляет собой блок-схему, иллюстрирующую компоненты и ресурсы при динамическом управлении списками контактов. Как упоминалось выше по тексту, система в соответствии с вариантами осуществления может динамически управлять списком(ами) контактов пользователя на основе взвешенных коэффициентов, вычисленных из различных источников. Некоторая информация, используемая при определении приоритетов, может включать в себя частоту связи/совместной работы, тип связи, время суток, день недели, однозначно заданные отношения и подобные пользовательские предпочтения.

[0029] Различные типы информации, которые могут быть использованы при установлении приоритетов списков контактов, показаны в четырех категориях на схеме 200. Пользовательская информация 232 может включать в себя любую информацию, ассоциированную с профилем пользователя. Примеры пользовательской информации 232 могут включать в себя отношения, однозначно заданные пользователем (например, менеджер, члены команды и т.д.), возможности пользовательского приложения/ устройства (например, модальность беседы), пользовательское местоположение (например, дома, на работе, в общественном месте), текущее время суток и/или день недели для пользователя и однозначные пользовательские предпочтения.

[0030] Информация 234 о контакте относится к информации, ассоциированной с конкретными контактами в списке контактов, такой как отношения однозначно заданные контактами, возможности устройства/приложения контакта, местоположение контакта, текущее время суток и/или день недели для контакта и сопоставимая информация. Информация 236 связи охватывает информацию, ассоциированную с прошлыми беседами с отдельными контактами. Она может включать в себя частоту связи, время связи, длительность связи, модальность связи (например, аудио, видео, электронная почта, обмен мгновенными сообщениями, совместная работа с данными, совместное использование приложения, совместное использование белой доски, мультимодальная беседа, мультимодальная конференция и т.д.), число людей, вовлеченных в связь, была ли связь инициирована пользователем или контактом (или третьей стороной) и схожую информацию. Другая информация 238 может включать в себя любые источники оставшейся релевантной информации, такой как сетевые условия, правила администратора и тому подобное.

[0031] Информация, описанная выше по тексту, может быть использована для вычисления взвешенных коэффициентов для установления приоритетов (240) списков контактов. Нижеследующее представляет собой некоторые примерные сценарии. Коэффициенты для установления приоритетов списка контактов сперва могут быть взвешены на основе очевидных пользовательских предпочтений. Тип прошлой связи с контактами также может быть взвешен в соответствии с модальностью связи. Например, электронная почта более формальна, чем мгновенное сообщение или аудио вызовы. Таким образом, беседы по электронной почте могут принимать меньший коэффициент веса. Подобным образом, контакты, с которыми часто осуществляется связь, могут обладать более высокими приоритетами, нежели контакты, с которыми связь осуществляется реже. Время суток и/или день недели для прошлых связей могут помочь определить приоритет контактов (например, если коллега осуществляет связь не в рабочее время, этот контакт может обладать более высоким приоритетом, нежели другие коллеги). Подобным образом, текущее время суток и/или день недели для пользователя и контакта(ов) может определять, как контакты должны быть упорядочены. Контакты, с которыми прошлые связи происходили строго в рабочее время, могут быть смещены по приоритету ниже в нерабочее время для пользователя. Пользователь и контакты могут находиться в разных часовых поясах. Таким образом, соответствующее время может рассматриваться при установлении приоритетов списка контактов. Другим примером коэффициента, который может быть принят во внимание, являются возможности приложения/устройства пользователя и/или контактов. Например, если пользователь в настоящее время обладает своим карманным устройством, действующим без возможностей электронной почты или видео, контакты с которыми в основном пользователь осуществлял связь по электронной почте или видеоконференции могут быть смещены по приоритету ниже.

[0032] После того, как установлены приоритеты списка контактов, он может быть отображен пользователю (242) через его устройство связи или могут быть выполнены другие действия 244. Другие действия 244 могут включать в себя сохранение списка(ов) контактов (246) в локальном или удаленном хранилищах данных, обновление списка(ов) (248) контактов посредством удаления редких или неиспользуемых контактов/добавления новых контактов, обеспечение пользовательских напоминаний (250) о редких контактах, изменениях в приоритете списка(ов) контактов и схожие действия.

[0033] Фиг. 3 включает в себя концептуальную схему 300, иллюстрирующую динамическое управление списками контактов на основе информации из различных источников в соответствии с вариантами осуществления. Несмотря на то, что система в соответствии с вариантами осуществления, вероятнее всего включает в себя некоторое число серверов и служб, которые проиллюстрированы на Фиг. 1, на Фиг. 3 показаны только те, которые имеют отношение к вариантам осуществления.

[0034] Пользователь 370 может принимать участие в различных связях и совместных работах через одно или несколько приложений и устройств (372, 374 и 376) по социальной сети, корпоративной сети, частной сети или схожим сетям. Некоторые из этих сетей могут быть для профессионального использования, другие для личного использования. Сети и службы совместной работы/связи могут быть совместимы, делая возможным или невозможным обмен данными. Пользователь 370 может взаимодействовать с другими пользователями и внешними контактами через службу 364 связи, исполняемую на сервере 360 связи в связи с одним из устройств 372, 374 или 376. Одним из инструментов пользователя 370 для участия в беседах является список 368 контактов. Список 368 контактов обеспечивает не только информацию о контакте для выбранного человека и ресурсов, но также позволяет контактам быть сгруппированными для легкости использования, обеспечивает дополнительную информацию, такую как информация присутствия, ассоциированная с контактами, и тому подобное.

[0035] Взвешенные коэффициенты для динамического управления списком 368 контактов могут быть вычислены модулем 366 установления приоритетов списка контактов службы 364 связи на основе данных, принятых из различных источников. Например, некоторое число хранилищ 354 данных контакта может быть доступно в системе связи, например каталог всех системных абонентов или хранилищ отличительных данных для различных групп абонентов. Сервер 352 каталога также может быть источником для информации о контакте. Подобным образом данные, связанные с прошлыми связями (тип, модальность, длительность, время и т.д.), могут быть приняты от сервера 356 UC, другого(их) сервера(ов) 358 связи или схожих источников. Сервер 362 присутствия может обеспечивать местоположение, время и схожую информацию о контактах и/или пользователе 370.

[0036] Согласно некоторым вариантам осуществления данные из этих различных источников могут быть проанализированы, сгруппированы и для упорядочения списка 368 контактов могут быть вычислены взвешенные коэффициенты, как описано выше по тексту. Некоторая информация может быть результатом интеллектуального анализа данных в различных хранилищах данных, ассоциированных с пользователем. Таким образом, период интеллектуального анализа данных для определения взвешенных коэффициентов (например, за последние 6 месяцев или за любой другой предварительно определенный период) может быть определен автоматически или задан пользователем 370. Правила для сбора данных для вычисления взвешенных коэффициентов могут быть дополнительно настраиваемыми на основе атрибутов пользователей или типов связи. Например, различные периоды времени могут быть заданы для интеллектуального анализа данных хранилищ контактов для различных абонентских уровней (информация менеджера может быть извлечена из записей за прошлый год, информация ассистента может быть извлечена из записей за последние шесть месяцев, данные для связи по электронной почте могут быть собраны за более длительный период в сравнении с данными для голосовых вызовов и т.д.).

[0037] Несмотря на то, что варианты осуществления описаны со ссылкой на «контакты», этот термин не следует толковать как ограниченный списком контактов в контексте приложения электронной почты или ведения календаря. Контакт, как используется в настоящем описании, относится к более широкому пониманию партнеров связи по различным сетям, участвующих в беседах, применяющих одну или несколько модальностей.

[0038] Примерные системы на фиг. 1, 2 и 3 были описаны с конкретными компонентами, такими как серверы связи, серверы каталогов, серверы присутствия и т.п., варианты осуществления не ограничены системами связи в соответствии с этим примерными конфигурациями. Мультимодальная система связи, применяющая динамическое управление списком контактов, может быть реализована в конфигурациях, применяющих меньшее количество компонентов или дополнительные компоненты и выполняющих другие задачи.

[0039] Фиг. 4 представляет собой снимок экрана пользовательского интерфейса для обеспечения пользователю динамически управляемой информации о контакте. Приложения связи, такие как приложение 364 связи по Фиг. 3, применяющие динамически управляемые списки контактов, могут использовать любой тип пользовательского интерфейса, например, один с выбранными признаками (особенностями) показан на снимке 400 экрана.

[0040] Пользовательский интерфейс может включать в себя изображение (478), имя и статус (480), а также текущее местоположение (482) пользователя. Графические иконки 484 для активации различных режимов связи (например, телефонный вызов, конференц-связь, обмен текстовыми сообщениями и т.д.) могут обеспечивать пользователю альтернативные способы инициирования (или ответа) различных сеансов связи. Участок пользовательского интерфейса (486) может позволить абоненту выбирать из числа различных опций для связи, таких как выбор контакта из списка контактов или выбор группы.

[0041] Контакты могут быть представлены в виде единого списка или категорированы на группы, как описано выше по тексту. Примерные категории, проиллюстрированные на схеме 400, включают в себя недавние контакты (не развернуты на фигуре), отдел 488 продаж, личные контакты 490 и управление 492. Как обсуждалось выше по тексту, установление приоритетов контактов в списке и/или категорирование контактов могут быть выполнены посредством вычисления взвешенных коэффициентов на основе информации, ассоциированной с пользователем, контактами, прошлыми сеансами связи, текущим окружением (время, местоположение, возможности устройства/приложения и т.д.). Информация для вычисления взвешенных коэффициентов может быть получена из различных источников, таких как те, которые обсуждались в связи с Фиг. 2 и 3. Пользователю и/или администратору может быть позволено задавать правила для вычисления взвешенных коэффициентов, модифицировать местоположение контакта в списке или выполнять сопоставимые действия. Контакты могут быть отображены в различных формах, включающих в себя текстовые, графические и другие формы представления, которые могут включать в себя дополнительную функциональность.

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

[0043] Фиг. 5 иллюстрирует блок-схему 500 различных компонентов и процессов в примерной системе динамического управления контактами согласно вариантам осуществления.

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

[0045] Второй этап может включать в себя вычисление весов для контактов на основе различных коэффициентов 502. Вес контакта задает относительное расстояние контакта от пользователя. Общий вес для контакта может быть вычислен на основе различных взвешенных коэффициентов 502. Примерные коэффициенты включают в себя: частоту связи 504 с контактом (например, контакт, с которым пользователь осуществляет связь три раза в день, может иметь больший вес по сравнению с другим контактом, с которым переписка по электронной почте или его вызов выполняется раз в день); тип связи 514, такой как входящая, исходящая, групповая связь и т.д. (например, связь начатая пользователем к контакту может нести больший вес, чем связь инициированная связью контакта или группы); модальность связи 512, такая как электронная почта, обмен мгновенными сообщениями, телефон и т.д. (например, пользователь может использовать обмен мгновенными сообщениями для большинства контактов, но телефон только для личных контактов); время суток/день недели и продолжительность (например, связь после рабочего времени или более длинные беседы могут задавать более высокий вес для контакта).

[0046] Другие коэффициенты могут включать в себя время суток (или день недели) 506, заданные пользователем отношения 508, число участников в групповых связях 516, возможности и типы 510 клиентского приложения для пользователя и контактов, возможности и типы 518 клиентского устройства для пользователя и контактов. Система в соответствии с вариантами осуществления может также применять алгоритм «старения» для отрицательного приращения веса для контактов, с которыми контакт не осуществляется часто. Это в свою очередь может сместить контакт в списке ниже по приоритету.

[0047] Затем кэш списка контактов может быть создан для вычисления динамического списка (520) контактов. Система может создавать кэш некоторого числа контактов, с которыми пользователь осуществлял связь в прошлом. Кэш также может включать в себя контакты, которые были однозначно добавлены пользователем в список контактов. Кэш может быть совместно использован несколькими устройствами и приложениями (534, 536 и 538), ассоциированными с пользователем, такими как приложения электронной почты, приложения связи, приложения для социальных сетей, приложения совместной работы, настольные устройства, карманные устройства, интеллектуальные телефоны и схожие типы.

[0048] Согласно некоторым вариантам осуществления кэш списка контактов может быть сохранен в перемещаемом профиле для пользователя, обеспечивая возможность доступа с различных устройств и конечных точек. Список контактов с весами и другими атрибутами контакта также может быть поддержан в унифицированном хранилище 522 контактов, ассоциированном с пользовательским профилем. Это хранилище может быть ассоциировано с конкретной службой связи/совместной работы или другой централизованной базой данных. Любое приложение или устройство с доступом к этому центральному хранилищу может запрашивать список частых контактов.

[0049] Другой этап при динамическом управлении списками контактов представляет собой отображение списка(ов) через приложение совместной работы/связи. Приложение может осуществлять вызов в централизованный список для получения частых контактов, которые являются релевантными для модальностей, поддерживаемых приложением и/или устройством. Например, если приложение дает возможность бесед лишь с помощью телефона и обмена мгновенными сообщениями и без электронной почты, оно может запрашивать список контактов для частых контактов, которые имеют SIP URI или Tel URI, соответственно для поддержания бесед с помощью обмена мгновенными сообщениями и телефона. Другим примером может быть телефонное приложение, которое запрашивает список частых контактов с возможностью содействия голосовой связи.

[0050] Поскольку данные хранятся для объекта контакта, корреляция различных механизмов передачи сигналов обеспечена в одном единственном месте и приложение может осуществлять фильтрацию данных контакта для отображения на основе поддерживаемого протокола передачи сигналов. Кроме того, если список частых контактов хранится в централизованном местоположении, он обеспечивает легкий доступ ко всем приложениям. Визуализация частых контактов может быть настроена для различных приложений (528, 523 и 532). Согласно другим вариантам осуществления приложения могут быть обеспечены доступом к интерфейсу для редактирования/вычисления весов для контактов и обновления их в централизованном пользовательском профиле.

[0051] Как описано выше по тексту, пользователю может быть позволено обеспечивать ввод для настройки динамического списка контактов. Система в соответствии с некоторыми вариантами осуществления может обеспечивать пользователю опции для управления динамическим списком контактов. Пользователь может задавать его/ее предпочтения, которые могут быть использованы системой для задания списка контактов. Такие опции могут включать в себя, но не ограничиваясь этим, предпочтения, основанные на приложении, устройстве, времени суток, отношении, местоположении и подобном. Кроме того, приложения и устройства, визуализирующие настроенные списки контактов, могут обеспечивать дополнительную обратную связь системе для динамического вычисления весов (540) контактов.

[0052] Согласно дополнительным вариантам осуществления динамическое управление списками контактов может включать в себя удаление старых или неиспользуемых контактов из списков. Алгоритм «старения» может быть применен к механизму 524 неиспользуемых контактов для отрицательного приращения веса контактов, связь с которыми не осуществлялась часто. Поскольку система содержит знание различных метаданных, связанных с контактами, она может предлагать пользователю удаление таких контактов из списка контактов, или напоминать пользователю осуществить контакт (526) с ними, помогая при общем управлении контактами. Очистка списка контактов может быть особой для устройств и приложений. Например, контакт может быть частью унифицированного хранилища контакта, ассоциированного с пользовательским профилем, но пользователь может желать больше не отображать этот контакт в его/ее списке контактов для приложения обмена мгновенными сообщениями.

[0053] Фиг. 6 представляет собой примерное сетевое окружение, где варианты осуществления могут быть реализованы. Платформа, обеспечивающая динамическое управление контактом в системах связи, может быть реализована через программное обеспечение, исполняемое на одном или нескольких серверах 618, например служба хостирования. Платформа может осуществлять связь с клиентскими приложениями на отдельных вычислительных устройствах, таких как сервер 613 или портативный компьютер 612 и настольный компьютер 611 ('клиентские устройства') через сеть(и) 610.

[0054] Как описано выше по тексту, модуль установления приоритетов контактов в связи со службой или приложением связи может быть использован для управления списками контактов, устанавливая приоритеты контактов на основе взвешенных коэффициентов и других метаданных, а также модифицируя списки на основе схожих коэффициентов. Приложение или служба связи, исполняемые на серверах 618 или отдельном сервере 614, могут принимать ввод от пользователей через клиентские устройства 611, 612 или 613, получать данные контакта/пользователя/связи из хранилищ(а) 616 данных и обеспечивать пользователю(ям) списки контактов с установленными приоритетами. В других вариантах осуществления списки контактов с установленными приоритетами могут быть пере