Совместное использование службы
Иллюстрации
Показать всеИзобретение относится к средствам совместного использования ресурсов. Технический результат заключается в обеспечении возможности совместного использования ресурсов в любой момент времени во время использования ресурсов. Принимают данные, введенные пользователем, которые указывают, что текущее приложение в устройстве должно быть использовано совместно со вторым устройством в сети. Определяют данные состояния, которые указывают на конкретное состояние указанного текущего приложения. Обрабатывают выбор изображения на дисплее устройства, при этом указанное изображение представляет указанное текущее приложение в конкретном состоянии взаимодействия с указанным устройством. Отправляют сообщение, описывающее данные упомянутого изображения, для представления этого изображения во втором пользовательском устройстве в сети, при этом сообщение описывает данные, указывающие на текущее приложение, и содержит сетевой адрес для указанного текущего приложения и указанные данные состояния для получения доступа к текущему приложению во втором пользовательском устройстве в указанном конкретном состоянии взаимодействия. 7 н. и 20 з.п. ф-лы, 12 ил.
Реферат
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
Приложения с совместным использованием контента стали одними из наиболее широко используемых и популярных приложений в Интернете. В то же время стремительно развивается использование устройств беспроводной связи, которые быстро вытесняют устройства с традиционными проводными соединениями. Например, одна из популярных областей включает совместное использование аудиофайлов, а также формирование и совместное использование списка музыкальных произведений (плей-листов) множеством мобильных беспроводных устройств. Но даже это широкое совместное использования не достигает такой степени совместного использования контента, которой пользуются двое или более друзей, находящихся в одной комнате. Например, друзья, находящиеся в одной комнате, могут одновременно слушать одну и ту же музыку и комментировать текущую музыкальную фразу или пассаж. Кроме того, когда каждый из друзей запускает приложение в своем мобильном устройстве и обнаруживает заслуживающий внимания объект, например новый ресторан, находящийся поблизости, он может показать этот результат другу, который может взять это устройство и запустить приложение из той же точки, например, получить рейтинговые оценки или номер телефона этого ресторана. Такой вид совместного использования включает совместное использование сетевого ресурса начиная с некоторого момента времени между началом и концом предоставления сетевой службы, ассоциированной с данным сетевым ресурсом, и называется в данном документе совместным использованием службы с промежуточного момента времени (mid-service sharing).
НЕКОТОРЫЕ ПРИМЕРЫ ВАРИАНТОВ ВЫПОЛНЕНИЯ ИЗОБРЕТЕНИЯ
Было обнаружено, что существует потребность в совместном использовании приложения, например сетевого ресурса, с промежуточного момента времени разнообразными пользовательскими узлами в сети, независимо от того, как далеко они находятся друг от друга.
Согласно одному из вариантов выполнения настоящего изобретения, считываемый компьютером носитель переносит инструкции, которые, при выполнении их процессором, заставляют устройство по меньшей мере выполнить выбор изображения в этом устройстве. Изображение представляет некоторое приложение, например сетевой ресурс, находящийся в определенном состоянии взаимодействия с указанным устройством. Инициируется отправка сообщения. Сообщение определяет данные изображения для представления его в другом пользовательском устройстве.
Согласно другому варианту выполнения настоящего изобретения устройство содержит по меньшей мере один процессор и по меньшей мере одну память, содержащую компьютерный программный код. Память и компьютерный программный код выполнены так, что при взаимодействии с процессором заставляют устройство по меньшей мере выбрать изображение на дисплее в устройстве. Изображение представляет приложение, такое как сетевой ресурс, находящийся в определенном состоянии взаимодействия с устройством. Устройство инициирует отправку сообщения, в котором описаны данные изображения для представления его в другом пользовательском устройстве.
Согласно еще одному варианту выполнения настоящего изобретения устройство содержит средство для выбора изображения для отображения в указанном устройстве. Изображение представляет приложение, например сетевой ресурс, находящийся в определенном состоянии взаимодействия с устройством. Устройство содержит средства для отправки сообщения, в котором описаны данные изображения для представления его в другом пользовательском устройстве.
Согласно еще одному варианту выполнения настоящего изобретения предложен способ, включающий обеспечение доступа для приема сообщения, в котором описаны данные состояния для первого пользовательского устройства, для получения доступа к сетевому ресурсу в состоянии взаимодействия со вторым пользовательским устройством. Передают поток медиаданных. Этот поток медиаданных синхронизуют с потоком медиаданных, передаваемым во второе пользовательское устройство.
Согласно еще одному варианту выполнения настоящего изобретения считываемый компьютером носитель переносит инструкции, которые, при их выполнении процессором, заставляют устройство по меньшей мере выполнять прием сообщения, в котором описаны данные состояния для первого пользовательского устройства, для получения доступа к сетевому ресурсу в состоянии взаимодействия со вторым пользовательским устройством. Инициируется отправка потока медиаданных. Этот поток медиаданных синхронизируется с потоком медиаданных, который передается во второе пользовательское устройство.
Согласно еще одному варианту выполнения настоящего изобретения устройство включает средство для приема сообщения, в котором описаны данные о состоянии первого пользовательского устройства, для получения доступа к сетевому ресурсу в состоянии взаимодействия со вторым пользовательским устройством. Имеется также средство для отправки потока медиаданных. Поток медиаданных синхронизируется с потоком медиаданных, передаваемых во второе пользовательское устройство.
Дополнительные аспекты, функции и преимущества изобретения будут очевидны из последующего подробного описания, в котором иллюстрируются несколько конкретных вариантов выполнения настоящего изобретения, и его реализации, включая наилучший способ реализации изобретения. Могут существовать другие варианты выполнения настоящего изобретения, и некоторые его детали могут быть изменены различными очевидными способами без выхода за рамки изобретения. Соответственно, чертежи и описание должны рассматриваться в качестве иллюстративных, но не ограничивающих изобретение.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Варианты выполнения настоящего изобретения иллюстрируются примерами на чертежах, где:
на фиг.1А показана схема системы для совместного использования службы, начиная с промежуточного момента времени, согласно одному из вариантов выполнения настоящего изобретения;
на фиг.1В показана схема, иллюстрирующая использование мобильного устройства, показанного в системе на фиг.1А, согласно одному из вариантов выполнения настоящего изобретения;
на фиг.2А показаны компоненты модуля для совместного использования службы с промежуточного момента времени согласно одному из вариантов выполнения настоящего изобретения;
на фиг.2В показано сообщение для совместного использования службы с промежуточного момента времени согласно одному из вариантов выполнения настоящего изобретения;
на фиг.3А показаны компоненты модуля агрегированного канала согласно одному из вариантов выполнения настоящего изобретения;
на фиг.3В показана структура обратного сообщения согласно одному из вариантов выполнения настоящего изобретения;
на фиг.4А показана последовательность операций для первого процесса в пользовательском устройстве для совместного использования службы с промежуточного момента времени согласно одному из вариантов выполнения настоящего изобретения;
на фиг.4В показана последовательность операций для второго процесса в пользовательском устройстве для совместного использования службы с промежуточного момента времени согласно одному из вариантов выполнения настоящего изобретения;
на фиг.5 показана последовательность операций для процесса в сервере для одновременного совместного использования потокового контента согласно одному из вариантов выполнения настоящего изобретения;
на фиг.6 показаны аппаратные средства, которые могут использоваться для реализации варианта выполнения настоящего изобретения;
на фиг.7 показан набор микросхем, который можно использовать для реализации варианта выполнения настоящего изобретения, и
на фиг.8 показан терминал, который может использоваться для реализации варианта выполнения настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ ПРИМЕРОВ ВЫПОЛНЕНИЯ ИЗОБРЕТЕНИЯ
Раскрыты способ, устройство и программное обеспечение для совместного использования разнесенных пользовательских устройств с промежуточного момента времени предоставления службы. В последующем описании с целью пояснения сформулированы многочисленные конкретные детали, обеспечивающие полное понимание вариантов выполнения настоящего изобретения. Однако для специалистов очевидно, что варианты выполнения настоящего изобретения могут быть осуществлены и без этих конкретных деталей или с использованием их эквивалентов. В других случаях известные конструкции и устройства показаны в виде блок-схем, чтобы избежать излишнего усложнения описания вариантов выполнения настоящего изобретения.
Хотя несколько вариантов выполнения настоящего изобретения рассматриваются в отношении совместного использования музыкального потока с промежуточного момента времени в различных мобильных телефонах, варианты выполнения настоящего изобретения не ограничены этим контекстом. Явно подразумевается, что другие приложения по рендерингу (отображению) контента и другие локальные приложения или сетевые ресурсы: например, помимо прочего, сайты всемирной паутины, базы данных, навигационные системы, рендеринг других медиаданных, социальные сети, передача файлов, электронная почта, мгновенный обмен сообщениями - представляют собой совместное использование службы с промежуточного момента времени двумя или более пользователями любого узла в сети, включая любой проводной или беспроводной телефон, карманное устройство, компьютер, телевизионную приставку или другое устройство.
На фиг.1А показана система 101 для совместного использования службы с промежуточного момента времени согласно одному из вариантов выполнения настоящего изобретения. Система 101 содержит сеть 105 и сетевые узлы 121а, 121b, 131 и 141. Узел 131 является хост-узлом (местом размещения) сетевого ресурса, доступного для других узлов сети 105, включая узел 121а, узел 121b и узел 141.
В различных вариантах выполнения настоящего изобретения узлы 121а, 121b, 131 и 141 могут быть любым типом неподвижного терминала, мобильного терминала или переносного терминала, включая настольные компьютеры, ноутбуки, телефоны, станции, блоки, устройства, мультимедийные планшеты, Интернет-узлы, коммуникаторы, персональные цифровые секретари (PDA), мобильные телефоны, мобильные устройства связи, аудио/видеоплееры, цифровые камеры/видеокамеры, телевизоры, цифровые видеомагнитофоны, игровые устройства, устройства определения местоположения или любую их комбинацию. Кроме того, в этих узлах может иметься встроенный источник питания (например, подключаемый сетевой адаптер), ограниченный источник энергии (например, аккумулятор) или и то, и другое. Далее предполагается, что узлы 121а, 121b, 131 и 141 могут поддерживать пользовательский интерфейс любого типа (например, «носимое» устройство и т.д.). В иллюстрируемом варианте выполнения настоящего изобретения узлы 121а и 121b представляют собой беспроводные мобильные терминалы для сотовых телефонов (каждый из них называется мобильной станцией и более подробно описан ниже со ссылкой на фиг.10). Сотовые телефоны 121а и 121b соединены с сетью 105 посредством беспроводных линий 107а и 107b, соответственно.
Например, система 105 связи системы 100 может содержать одну или более проводных и/или беспроводных сетей, таких как сеть для передачи данных (не показана), беспроводная сеть (не показана), телефонная сеть (не показана) или любая их комбинация, при этом каждая такая сеть может содержать от нуля до нескольких узлов. Предполагается, что сеть для передачи данных может быть любой локальной сетью (LAN, local area network), городской сетью (MAN, metropolitan area network), глобальной сетью (WAN, wide area network), Интернетом или любой другой подходящей сетью с коммутацией пакетов, такой как коммерческая частная сеть с коммутацией пакетов, например частная кабельная или оптоволоконная сеть, или любой их комбинацией. Кроме того, беспроводная сеть может быть, например, сетью сотовой связи и может использовать различные технологии, включая многостанционный доступ с кодовым разделением каналов (СОМА), широкополосный многостанционный доступ с кодовым разделением каналов (WCDMA), технологию улучшенных скоростей передачи данных для глобального развития (EDGE, enhanced data rates for global evolution), пакетную радиосвязь общего назначения (GPRS, General Packet Radio Service), глобальную систему для мобильной связи (GSM, global system for mobile communication), мультимедийную подсистему с протоколом Интернет (IMS, Internet multimedia subsystem), универсальную мобильную телекоммуникационную систему (UMTS, universal mobile telecommunication system) и т.д., а также любую другую подходящую среду связи, например, доступ в стандарте WiMAX, сети стандарта (LTE, long term evolution), связь в стандарте Wi-Fi, спутниковую связь и т.п. В различных вариантах выполнения настоящего изобретения система 105 связи или ее части могут поддерживать связь с использованием любого протокола, например, протокола для работы в Интернете (IP).
Обмен информацией происходит между сетевыми узлами системы 101 согласно одному или большему количеству протоколов (включая, например, известные и стандартные протоколы). В контексте настоящего описания протокол включает набор правил, определяющий, как узлы взаимодействуют друг с другом, на основе информации, передаваемой по линиям связи. Протоколы работают на различных уровнях функционирования каждого узла, от генерации и приема физических сигналов различных типов до выбора каналов для преобразования этих сигналов в информационный формат, заданный этими сигналами, и идентификации того программного приложения, которое отвечает за передачу или прием информации. Концептуально различные уровни протоколов для обмена информацией по сети описаны в эталонной модели взаимодействия открытых систем (OSI, Open System Interconnection). Эталонная модель OSI более подробно описана в Разделе 1.1 справочника под названием «Interconnections, Second Edition» автор Radia Perlman, опубликовано в сентябре 1999 г.
Широко известна модель клиент - сервер, которая используется для описания взаимодействия компьютерных процессов. Согласно модели клиент - сервер, клиентский процесс отправляет сообщение, включая запрос, в процесс сервера, а процесс сервера реагирует путем предоставления услуги. Процесс сервера может также возвратить сообщение с ответом на клиентский процесс. Часто клиентский процесс и процесс сервера выполняются в различных компьютерных устройствах, называемых хостами, и связываются через сеть с использованием одного или более протоколов сетевой связи. Термин «сервер» традиционно используется для описания процесса, который предоставляет услугу, или хостового компьютера, в котором работает этот процесс. Аналогично, термин «клиент» традиционно используется для описания процесса, который осуществляет запрос, или хостового компьютера, в котором работает этот процесс. В контексте настоящего описания термины «клиент» и «сервер» относятся к процессам, а не к хостовым компьютерам, если из контекста не очевидно обратное. Кроме того, процесс, выполняемый сервером, может быть разбит на несколько процессов, выполняемых в нескольких хостах (иногда называемых уровнями) по причинам, которые, помимо прочего, включают надежность, масштабируемость и избыточность. Известным клиентским процессом, доступным в большинстве узлов, подключенных к сети связи, является клиент Всемирной паутины (называемый веб-браузером или просто браузером), который взаимодействует посредством сообщений, форматированных согласно протоколу передачи гипертекста (HTTP), со сколь угодно большим числом серверов, называемых серверами Всемирной паутины, которые обеспечивают создание веб-страниц. В иллюстрируемом варианте выполнения настоящего изобретения узел 141 содержит браузер 103, в то время как мобильные терминалы 121а и 121b содержат браузеры, которые не показаны, чтобы не заслонять другие признаки варианта выполнения настоящего изобретения. Аналогично узел 131 содержит веб-сервер, который не показан.
Узел 131 является хостом для сетевого ресурса 133 и соединен с базой 151 данных на считываемых компьютером носителях. Как известно, если процессор совместно используется для нескольких процессов, программные процессы, работающие в процессоре, можно загружать в память и извлекать из памяти. Когда процесс загружают в память, сохраняют запись программных инструкций на тот момент, когда процесс был загружен, а также текущую ячейку памяти и значения всех переменных и констант, используемых процессом. Эта информация представляет состояние процесса во время загрузки и она хранится на одном или нескольких считываемых компьютером носителях в узле 131. Аналогично, когда приложение приостанавливают, его состояние сохраняют. Состояние 135 ресурса 133 показано на фиг.1А.
В некоторых вариантах выполнения настоящего изобретения сетевой ресурс 133 представляет собой сервер для рендеринга контента. В некоторых таких вариантах выполнения настоящего изобретения контент для рендеринга сохраняют в базе 151 данных в структуре 153 данных контента. В иллюстрируемом варианте выполнения настоящего изобретения плей-листы для одного или более пользователей также хранятся в базе 151 данных; например, объединенный плей-лист хранится в базе 151 данных в структуре 155 данных плей-листа.
Каждый пользовательский узел содержит дисплей для представления данных человеку, этот дисплей имеет экраны или проекторы для представления визуальных данных и динамики или соответствующие разъемы для представления аудиоданных. Например, узел 121а содержит экран 123а дисплея, узел 121b содержит экран 123b дисплея и узел 141 содержит экран 143 дисплея. Каждое визуальное представление обычно содержит одно или более изображение, например такие как изображение 127а на экране 123а, изображение 127b на экране 123b и изображение 147 на экране 143. В контексте настоящего изобретения под изображением понимается полная или частичная часть визуального отображения, например часть, ассоциированная с локальным или клиентским приложением или сетевым ресурсом.
Пользовательские узлы 121а, 121b и 141 типично содержат один или более модулей службы обмена сообщениями, таких как модуль 109 службы обмена сообщениями, используемый для посылки сообщений между узлами. Известно множество служб обмена сообщениями, например электронная почта (e-mail) с использованием протокола РОР3, служба мгновенного обмена сообщениями (IM, instant messaging), обмен текстовыми сообщениями между сотовыми телефонами с использованием протокола службы коротких сообщений (SMS) и обмен медиаданными между сотовыми телефонами в рамках службы передачи мультимедиасообщений (MMS). MMS представляет собой расширение SMS, которое допускает большую длину сообщений, а для вывода на экран контента сообщения использует протокол приложений беспроводной связи (WAP, Wireless Application Protocol).
Согласно некоторым вариантам выполнения настоящего изобретения один или более пользовательских узлов содержат модуль 125 совместного использования. В некоторых вариантах выполнения настоящего изобретения модуль 125 совместного использования позволяет пользователю захватить изображение на дисплее и отправить его в сообщении в узел другого пользователя с помощью модуля 109 службы обмена сообщениями. Не требуется, чтобы у другого пользователя также имелся модуль 125 совместного использования. В некоторых вариантах выполнения настоящего изобретения сообщение содержит данные, которые указывают приложение и его состояние, например сетевой ресурс 133 и его состояние 135, чтобы пользователь принимающего узла мог получить доступ к приложению в этом же состоянии, то есть в промежуточной точке службы. В некоторых вариантах выполнения настоящего изобретения, включающих сетевой ресурс для осуществления рендеринга контента, доступ в промежуточной точке службы включает передачу в реальном времени потока определенного контента в удаленное пользовательское устройство, синхронизированную с передачей потока некоторого контента в передающий узел, даже если это требует запуска потока к удаленному пользовательскому устройству с середины контента. В некоторых из этих вариантов выполнения настоящего изобретения пользовательское выражение относительно конкретного состоянии приложения передают другому пользователю по другому каналу, нежели канал для потоковой передачи контента, например, с использованием модуля 109 службы обмена сообщениями.
Хотя на фиг.1А для примера показан конкретный набор узлов, процессов и структур данных, в других вариантах выполнения настоящего изобретения могут участвовать большее или меньшее количество узлов, процессов и структур данных. Кроме того, хотя процессы и структуры данных показаны в виде отдельных блоков в определенном взаимном расположении, в других вариантах выполнения настоящего изобретения такие процессы или структуры данных или их части могут быть разделены, объединены или расположены некоторым другим способом.
На фиг.1В поясняется использование мобильного устройства в системе, показанной на фиг.1А, согласно одному из вариантов выполнения настоящего изобретения. Мобильное устройство 161, такое как узел 121а, содержит дисплей 163 с сенсорным экраном, на котором имеется изображение 167. В иллюстрируемом варианте выполнения настоящего изобретения мобильный узел 161 является приемным узлом, а изображение 167 представляет часть экрана дисплея передающего узла на промежуточной стадии службы. На основании этой графической подсказки пользователь мобильного устройства 161, прежде чем начать активизацию приложения, быстро понимает, что он (пользователь) приглашен для совместного использования этого приложения. В иллюстрируемом варианте выполнения настоящего изобретения пользователь дотрагивается до экрана 163 около центра изображения 167 для активизации приложения в показанном состоянии. Таким образом, посылка кому-либо сообщения с использованием встроенного модуля службы обмена сообщениями предоставляет этому пользователю прямой доступ непосредственно к работающему приложению. В некоторых вариантах выполнения настоящего изобретения сообщение обеспечивает не только доступ к приложению, но и все полномочия для доступа к службе, текущему состоянию и контенту, ассоциированному с этим приложением, включая скрытый или личный материал. Такое решение способствует обнаружению одноранговых партнеров и расширяет использование совместно используемого приложения, аналогично распространению компьютерных вирусов.
На фиг.2А показаны компоненты модуля 201 для совместного использования службы с промежуточного момента времени согласно одному из вариантов выполнения настоящего изобретения. Модуль 201 содержит графический интерфейс пользователя 203, преобразователь 205 скриншот/миниатюра, интерфейс 207 клиентского приложения, интерфейс 209 сервера приложений, данные 211 о состоянии приложения и интерфейс 213 службы обмена сообщениями.
Модуль 203 графического интерфейса пользователя (GUI) предоставляет пользователю возможность управления совместным использованием службы с промежуточного момента времени. Например, в некоторых вариантах выполнения настоящего изобретения модуль GUI предоставляет кнопку SHARE APP (совместное использование приложения), которую пользователь активизирует с помощью курсора или посредством касания, указывая время захвата изображения с экрана или другой информации о состоянии приложения. В некоторых вариантах выполнения настоящего изобретения часть экрана, захватываемая в качестве изображения, определяется путем ввода пользователем данных в форме одного или более положений курсора или положений касания, позволяющих окружить область экрана, которая войдет в изображение. В некоторых вариантах выполнения настоящего изобретения модуль 203 GUI также предоставляет скриншот (снимок экрана), переданный другим пользователем. В иллюстрируемом варианте выполнения настоящего изобретения модуль 203 GUI содержит модуль 215 захвата/представления скриншота, обеспечивающий захват и представление скриншотов.
В некоторых вариантах выполнения настоящего изобретения совместно используемый сетевой ресурс допускает передачу выражений пользователя многочисленным пользователям без необходимости того, чтобы локальный пользователь отправлял сообщения по отдельности каждому пользователю, разделяющему этот сетевой ресурс. В таких вариантах выполнения настоящего изобретения модуль 203 GUI содержит модуль 217 захвата/представления выражений 217. Этот модуль 217 позволяет определить касание или перемещение курсора пользователем для выявления, какие буквы, символы или изображения должны использоваться в выражении. Аналогично, модуль 217 представляет буквы, символы и изображения, принятые из сетевого ресурса и переданные другими пользователями. Например, на фиг.1В выражение «Помнишь эту песню?!» представлено вместе с изображением сетевого ресурса, который включает представление метаданных о песне, таких как идентификатор для проигрываемой песни и исполнителя.
В некоторых вариантах выполнения настоящего изобретения используется физическая кнопка для указания времени начала совместного использования службы с промежуточного момента времени, весь экран захватывается в качестве изображения, а для указания передаваемого выражения используются физические клавиши, поэтому модуль 203 GUI может отсутствовать.
Модуль 205 преобразователя скриншот/миниатюра позволяет преобразовать изображение, которое имеет полное разрешение захваченного экрана, в изображение меньшего размера, называемое миниатюрой, которое содержит подмножество (например, 1/16) пикселей от изображения с полным разрешением. Пиксели захваченного с экрана изображения составляют битовый массив скриншота части изображения на дисплее. Миниатюра представляет собой уменьшение битового массива скриншота. Часто контекст исходного изображения сохраняется в миниатюре в достаточной для пользователя степени, чтобы он смог решить, интересует ли его предлагаемое приложение в предлагаемом состоянии. В некоторых вариантах выполнения настоящего изобретения в удаленное пользовательское устройство вместо исходного изображения посылают миниатюру, чтобы сохранить пропускную способность канала для обмена сообщениями или пространство на экране дисплея локального пользователя. В некоторых вариантах выполнения настоящего изобретения изображение-миниатюру отправляют в первом сообщении, за которым в последующих сообщениях передают полное изображение; а модуль 205 заменяет изображение-миниатюру полным изображением для его отображения модулем 203 GUI. В некоторых вариантах выполнения настоящего изобретения изображение-миниатюра не используется и модуль 205 отсутствует.
В некоторые варианты выполнения настоящего изобретения входит модуль 207 клиентского интерфейса для приложения, позволяющий модулю совместного использования определить текущее состояние клиентского процесса, такого как браузер, в локальном устройстве, которое связано с процессом сервера, ассоциированным с сетевым ресурсом. Например, в некоторых вариантах выполнения настоящего изобретения модуль 207 определяет данные состояния клиентского процесса, включая любые разрешения (credentials), позволяющие пользователю получить доступ к контенту или службам сетевого ресурса, включая разрешения, позволяющие пользователю другого пользовательского устройства получить доступ к файлам, принадлежащим пользователю локального устройства. В некоторых вариантах выполнения настоящего изобретения состояние браузера включает веб-адрес, с которым связывается браузер, например имя унифицированного указателя ресурса (URL), как хорошо известно в данной области техники, с любыми параметрами, такими как критерии поиска, представляемые в поисковую систему. В некоторых вариантах выполнения настоящего изобретения модуль 209 клиентского приложения дополнительно способен использовать данные состояния клиента, принятые в сообщении для совместного использования от другого пользователя, чтобы заставить клиентский процесс перейти именно в это конкретное состояние в локальном устройстве.
В некоторые варианты выполнения настоящего изобретения входит модуль 209 интерфейса сервера приложений, позволяющий модулю совместного использования определять текущее состояние сетевого ресурса. Например, в некоторых вариантах выполнения настоящего изобретения модуль 209 посылает сообщение с запросом в удаленный ресурс с указателем на структуру данных, в которой это состояние хранится. Указатель включается в данные состояния, посылаемые другому пользователю. В некоторых вариантах выполнения настоящего изобретения модуль 207 посылает сообщение с запросом в удаленный ресурс для полной записи конкретного состояния; и данные состояния, отправленные другому пользователю, содержат эту полную запись. Известны способы получения этих данных состояния из сетевого ресурса, например в рамках виртуальной опции «пауза», разрешенной в некоторых сетевых ресурсах. В некоторых вариантах выполнения настоящего изобретения состояние полностью описывается значением одного или более параметров, которые передаются в сетевой ресурс, например критериями поиска для поисковой системы. В некоторых вариантах выполнения настоящего изобретения модуль 209 интерфейса сервера приложений посылает данные состояния, принятые в сообщении для совместного использования от другого пользователя, в сетевой ресурс, чтобы заставить сетевой ресурс перейти в это конкретное состояние. В некоторых вариантах выполнения настоящего изобретения состояние клиентского процесса достаточно, чтобы воспроизвести состояние принимающего пользовательского устройства, и модуль 209 интерфейса сервера приложений отсутствует.
Данные 211 о состоянии приложения содержат данные, которые указывают на состояние приложения, такого как сетевой ресурс и клиентский процесс, в то время, когда этот ресурс должен быть использован совместно с другим пользователем. В некоторых вариантах выполнения настоящего изобретения структура 211 данных состояния содержит указатель на структуру данных сетевого ресурса.
Модуль 213 интерфейса службы обмена сообщениями выполнен с возможностью вставки скриншота или изображения-миниатюры в сообщение, передаваемое другому пользователю, например в MMS-сообщение, для контакта с локальным пользователем. В некоторых вариантах выполнения настоящего изобретения модуль 213 интерфейса службы обмена сообщениями передает в сообщении данные 211 состояния вместо или в дополнение к изображению-миниатюре или изображению скриншота. Кроме того, в некоторых вариантах выполнения настоящего изобретения интерфейс 213 службы обмена сообщениями передает выражения, принятые из сетевого ресурса, в интерфейс GUI для представления локальному пользователю миниатюры или изображения скриншота; или передает выражения, вводимые локальным пользователем в сетевой ресурс, для передачи одному или большему количеству пользователей.
На фиг.2В показана структура сообщения 221 о совместном использовании службы согласно одному из вариантов выполнения настоящего изобретения. Сообщение 221 о совместном использовании содержит поле 223 совместно используемого скриншота, поле 225 адреса сетевого ресурса и поле 227 состояния сетевого ресурса. Поле 223 совместно используемого скриншота содержит данные, которые указывают на скриншот или изображение-миниатюру, выбранные отправителем для показа контекста приложения в устройстве отправителя. В некоторых вариантах выполнения настоящего изобретения данные в поле 223 представляют собой просто указатели на файл изображения в сети. В некоторых вариантах выполнения настоящего изобретения, например, в тех, в которых используется агрегированный канал, поле 223 совместно используемого скриншота отсутствует.
Поле 225 адреса сетевого ресурса содержит данные, которые указывают на приложение, например сетевой ресурс, с которым взаимодействовал отправитель, когда был захвачен скриншот или миниатюра. В некоторых вариантах выполнения настоящего изобретения поле 225 адреса сетевого ресурса содержит данные, которые указывают URL сетевого ресурса. В некоторых вариантах выполнения настоящего изобретения поле 225 адреса сетевого ресурса содержит данные, которые указывают на IP адрес и номер порта в стандарте протокола, оба из которых хорошо известны в данной области техники.
Поле 227 состояния сетевого ресурса содержит данные, которые указывают на определенное состояние взаимодействия между передающим пользовательским устройством и приложением, например указатель на структуру данных с состоянием сетевого ресурса. В некоторых вариантах выполнения настоящего изобретения поле 227 состояния сетевого ресурса содержит данные, которые указывают на состояние клиентского процесса в передающем пользовательском устройстве, включая любые учетные данные, разрешающие доступ к сетевому ресурсу или его контенту.
На фиг.3А показаны компоненты модуля 301 агрегированного канала согласно одному из вариантов выполнения настоящего изобретения. Модуль 301 агрегированного канала входит в состав сетевого ресурса (например, модуль 137 в ресурсе 133) и выполнен с возможностью одновременной потоковой передачи контента многочисленным пользователям, которые подключились к службе потоковой передачи в ответ на сообщение о совместном использовании от пользователя. Поскольку многие из приглашенных пользователей входят в контакт со службой потоковой передачи в середине контента, эти пользователи пропускают первую часть контента и принимают контент в текущей точке рендеринга приглашающего пользователя.
В иллюстрируемом варианте выполнения настоящего изобретения модуль 301 агрегированного канала содержит модуль совместно используемого плей-листа 303, список клиентов, совместно использующих структуру 305 данных текущего контента, модуль 307 совместно используемых выражений клиентов и модуль 309 рендеринга текущего контента 309.
Модуль 303 совместно используемого плей-листа принимает от пользователей редакторские поправки для совместно используемого плей-листа, например в структуру 155 данных объединенного плей-листа в базе 151 данных, и обновляет плей-лист, добавляя или стирая записи в структуре данных этого плей-листа. В некоторых вариантах выполнения настоящего изобретения редакторские поправки для объединенного плей-листа принимаются в сообщениях, посылаемых модулем 109 службы обмена сообщениями в каждом пользовательском устройстве. Объединенные плей-листы известны, например, их предлагает SPOTIFY™.
В структуре 305 данных совместно используемого клиентами текущего контента хранятся данные, которые указывают на сетевые адреса клиентских процессов для рендеринга контента, при этом для таких клиентов имеет место одновременный рендеринг одного и того же контента в режиме реального времени. В некоторых вариантах выполнения настоящего изобретения структура 305 данных содержит адреса для сообщений по обратному каналу, например сетевой адрес для электронной почты, мгновенного сообщения, SMS или MMS. Пользователи этих клиентских процессов объединены в группы на основе принятия приглашения по совместному использованию контента, например, посланного в сообщении 221 о совместном использовании.
Модуль 307 совместно используемых выражений клиентов принимает сообщения, переданные в сетевой ресурс от клиента, например в сообщении по обратному каналу, таком как SMS-сообщение, которое содержит текст, символы или изображения, по отдельности или в некоторой комбинации. Затем модуль 307 передает это выражение во все другие пользовательские устройства путем использования адресов сообщений по обратному каналу, хранящихся в структуре 305 данных.
Модуль 309 рендеринга текущего контента передает в потоке текущую точку текущего контента в реальном времени одновременно во все клиентские процессы рендеринга контента, перечисленные в структуре 305 данных. Кроме того, модуль 309 рендеринга контента принимает данные, вводимые любым пользователем, о следующем контенте из объединенного плей-листа для потоковой передачи во все клиентские процессы рендеринга контента, перечисленные в структуре 305 данных.
Хотя на фиг.2А и фиг.3А с целью иллюстрации показан ко