Синхронизация данных презентации документа в режиме реального времени с помощью универсальной службы
Иллюстрации
Показать всеИзобретение относится к сетевым технологиям связи и, в частности, к онлайн презентации и вещанию. Техническим результатом является обеспечение синхронизации информации о пользовательском виде документа или другого контента в приложении с помощью собственных приложений клиента и веб-приложений, что позволяет участникам онлайн вещания видеть то, что видит презентер в своем собственном приложении. Предложено универсальное средство для синхронизации информации о пользовательском виде документа или другого контента в приложении среди собственных клиентских приложений и веб-приложений. Участникам онлайн вещания разрешено видеть то, что видит презентер в своем собственном приложении. В дополнение, специфичная для встречи информация, такая как время встречи и примечания, может быть синхронизирована, обеспечивая синхронизацию почти в режиме реального времени. Посредством разрешения участникам просматривать представленный документ в своих собственных приложениях участникам предоставлены возможности, обеспеченные этим приложением, такие как осуществление навигации по документу вручную. 3 н. и 17 з.п. ф-лы, 6 ил.
Реферат
[0001] В последнее время все чаще документы и другой цифровой контент совместно используются по Интернету или другим аналогичным частным сетям. Обычно докладчик инициирует онлайн встречу с одним или более другими пользователями и генерирует контент, который докладчик может желать совместно использовать с одним или более участниками онлайн встречи. На обычной онлайн встрече совместно используемый контент передается от докладчика (обычно через сервер) участникам аналогично видеопотоку, где поток презентации управляется докладчиком. Таким образом, участники имеют пассивную роль просмотра презентованного материала с темпом и в направлении докладчика.
[0002] Обычные презентации обычно включают в себя слайд-шоу, аудиомедиа или видеомедиа. Совместное использование экрана является другим общим способом. При совместном использовании экрана все содержимое экрана докладчиков или приложения графически передается участникам. Участники не могут взаимодействовать с экраном. Некоторые приложения разрешают участнику взять на себя управление, но это только поочередно, и это влияет на опыт (восприятие) всех участников. В то время как различные типы контента могут быть использованы смешанным способом, полная презентация обычно подвергается потоку единственного направления, управляемому докладчиком. Кроме того, онлайн презентация обычно инициируется через приложение онлайн встречи и презентованный контент встраивается в пользовательский интерфейс презентации различными путями. Например, если документ обработки текста или документ электронной таблицы используются в качестве части контента, их соответствующие контенты импортируются в презентацию, оставляя только внешний вид документа из своего собственного приложения. Ни одна из возможностей собственного приложения не наследуется в презентации.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0003] Настоящая сущность изобретения обеспечена, чтобы ввести выбор понятий в упрощенной форме, которые дополнительно описаны ниже в подробном описании. Эта настоящая сущность изобретения не предназначена, чтобы исключительно идентифицировать ключевые признаки или существенные признаки заявленной сущности изобретения, и при этом она не предназначена в качестве помощи при определении объема охраны заявленной сущности изобретения.
[0004] Варианты осуществления направлены на универсальное средство для синхронизации информации о визуальном представлении документа или другого контента на стороне пользователя в приложении по собственным клиентским и веб приложениям, позволяя участникам онлайн вещания видеть то, что видит докладчик в своем собственном приложении. В дополнение, специфичная для встречи информация, такая как время встречи и примечания, может быть синхронизирована, обеспечивая синхронизацию почти в режиме реального времени. Кроме того, посредством разрешения участникам просмотреть презентованный документ в своих собственных приложениях участникам предоставлены возможности, обеспеченные посредством этого приложения, такие как осуществление навигации по документу вручную и независимо таким образом, чтобы меры, принятые участником, не воздействовали на опыт других участников на встрече.
[0005] Эти и другие признаки и преимущества будут очевидны из прочтения последующего подробного описания и обзора прилагаемых чертежей. Должно быть понятно, что как предшествующее общее описание, так и последующее подробное описание являются объяснительными и не ограничивают аспекты, которые заявлены.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0006] Фиг. 1 иллюстрирует примерную архитектуру системы, обеспечивающей синхронизацию данных презентации документа в режиме реального времени, в соответствии с вариантами осуществления;
[0007] Фиг. 2 иллюстрирует главные компоненты и их взаимодействия в примерной системе для обеспечения синхронизации данных презентации документа в режиме реального времени;
[0008] Фиг. 3 иллюстрирует концептуальную диаграмму потока презентованного документа в примерной системе в соответствии с вариантами осуществления;
[0009] Фиг. 4 является сетевой средой, в которой может быть реализована система, в соответствии с вариантами осуществления;
[0010] Фиг. 5 является блок-схемой примерной вычислительной операционную среды, в которой могут быть реализованы варианты осуществления; и
[0011] Фиг. 6 иллюстрирует логическую блок-схему для процесса 600 для обеспечения синхронизации данных презентации документа в режиме реального времени в соответствии с вариантами осуществления.
ПОДРОБНОЕ ОПИСАНИЕ
[0012] Как кратко описано выше, информация относительно текущего визуального представления документа на стороне докладчика может быть синхронизирована между докладчиком и участником, чтобы совместно использовать визуальное представление в режиме реального времени и разрешить участникам следовать вместе с докладчиком, когда они перемещаются по документу. Дополнительно, пользователям могут быть предоставлены все возможности, обеспеченные собственным приложением на их клиентских машинах, с помощью которых они просматривают презентованный документ, например, осуществление навигации по документу вручную.
[0013] В последующем подробном описании ссылки сделаны на сопроводительные чертежи, которые являются его частью, и в котором специфичные варианты осуществления или примеры показаны посредством иллюстраций. Эти аспекты могут быть объединены, другие аспекты могут быть использованы, и структурные изменения могут быть сделаны, не отступая от сущности или объема охраны настоящего раскрытия. Последующее подробное описание не должно поэтому быть принято в ограничивающем смысле, и объем охраны настоящего изобретения определяется приложенной формулой изобретения и их эквивалентами. В то время как варианты осуществления будут описаны в общем контексте программных модулей, которые выполняют вместе с прикладной программой, которая работает в операционной системе на вычислительном устройстве, специалисты в данной области техники распознают, что эти аспекты могут также быть реализованы вместе с другими программными модулями.
[0014] В целом, программные модули включают в себя подпрограммы, программы, компоненты, структуры данных и другие типы структур, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Кроме того, специалисты в данной области техники оценят, что варианты осуществления могут осуществляться с другими конфигурациями компьютерной системы, включающей в себя переносные устройства, мультипроцессорные системы, основанную на микропроцессоре или программируемую бытовую электронику, мини-компьютеры, универсальные компьютеры и сопоставимые вычислительные устройства. Варианты осуществления могут также осуществляться в распределенной вычислительной среде, в которой задачи выполняются удаленными устройствами обработки, которые связаны через сеть связи. В распределенной вычислительной среде программные модули могут быть расположены как в локальных, так и в удаленных запоминающих устройствах.
[0015] Варианты осуществления могут быть реализованы как реализованный компьютером процесс (способ), вычислительная система или как изделие изготовления, например, компьютерный программный продукт или считываемые компьютером носители. Компьютерный программный продукт может быть компьютерным запоминающим носителем, считываемой компьютерной системой и кодированием компьютерной программы, которая содержит команды для того, чтобы вынуждать компьютер или вычислительную систему выполнять примерный процесс(ы). Считываемый компьютером запоминающий носитель может, например, быть реализован с помощью одного или более из: энергозависимой компьютерной памяти, энергонезависимой памяти, жесткого диска, флеш-карты, дискеты или компакт-диска и сопоставимых носителей.
[0016] На протяжении настоящего описания термин "платформа" может быть комбинацией компонентов программного обеспечения и аппаратного обеспечения для обеспечения синхронизации данных презентации документа в режиме реального времени с помощью универсальной службы. Примеры платформ включают в себя, но не ограничиваются, хостированную службу, выполняемую на множестве серверов, приложение, выполняемое в единственном вычислительном устройстве и сопоставимых системах. Термин "сервер" в целом обычно относится к вычислительному устройству, выполняющему одну или более программ в сетевой среде. Однако сервер может также быть реализован как виртуальный сервер (программы программного обеспечения), выполняемый на одном или более вычислительных устройствах, рассмотренных как сервер в сети. Больше подробностей об этих технологиях и примерных операциях обеспечено ниже.
[0017] Фиг. 1 иллюстрирует примерную архитектуру системы, обеспечивающей синхронизацию данных презентации документа в режиме реального времени, в соответствии с вариантами осуществления. Как иллюстрировано на диаграмме 100, мультимодальные службы 110 онлайн связи, службы 112 онлайн совместной работы и веб-службы 114 могут действовать как хост-узлы 108, в которых хостируется онлайн встреча с возможностями синхронизации данных презентации документа в режиме реального времени. Хостирование может быть достигнуто, используя общедоступные интерфейсы. Хост-узлы 108 могут быть в состоянии связываться с возможностями докладчика и участника (116, 118 и 120), предоставленными службой 106 совместного использования контента посредством реализации общедоступных интерфейсов. Хост-узлы 108 могут поддерживать интерфейсы для просмотра службы и вещания функционального набора. Хост-узлы 108, которые поддерживают эти интерфейсы, могут также хостировать возможности докладчика и участника в своих собственных веб-страницах или в средствах управления для полнофункциональных приложений 122 клиента.
[0018] В некоторых вариантах осуществления хост-узлы 108 могут не управлять пользовательскими возможностями, а просто загрузить (или перезагрузить) кадры докладчика или участника. Служба 106 совместного использования контента может обеспечить различные режимы для этих страниц, например, полный режим со всеми пользовательскими интерфейсами и встроенный режим, который показывает минимальный пользовательский интерфейс и разрешает хост-узлу отвечать на ключевые события. Служба докладчика и служба участника могут быть предоставлены службой 106 совместного использования контента. Они могут называться полнофункциональными клиентами 12 2 при презентации и посредством веб-страниц участника (браузера 126). Хост-узлы 108 могут также быть в состоянии вызвать эти службы.
[0019] Полнофункциональные клиенты 122 часто обеспечивают высококачественный пользовательский опыт для докладчика. Например, при использовании документа презентации (например, документа PowerPoint® посредством Microsoft Corp., Редмонд, Вашингтон) докладчику может быть предложен ряд средств управления, а также очень привлекательные переходы и анимации. Служба 106 совместного использования контента, которая расположена в центре 102 данных наряду со службами 104 приложения, может позволить докладчику оставаться в своих предпочтительных возможностях - полнофункциональный клиент или веб-клиент - и иметь полный контроль над вещанием. Чтобы обеспечить это, служба 106 совместного использования контента может предоставить службу докладчика, которая может включать в себя функции для начала и остановки сеанса вещания и для того, чтобы выгрузить текущее состояние презентации.
[0020] В соответствии с некоторыми вариантами осуществления полнофункциональные клиенты могут также быть рассмотрены как возможности участника до тех пор, пока полнофункциональные клиенты обеспечивают способы синхронизации их состояния к текущему состоянию данных совместного использования контента. Другие сценарии, которые могут включать участие полнофункционального клиента, могут включать в себя признак создания примечаний (возможности 128 примечаний). С помощью полнофункциональных клиентов 130 и веб-клиентов 132 в пределах возможностей 128 примечаний примечания могут быть связаны посредством гиперссылки с вещаемым документом. Так как документ и его текущее состояние известны, могут быть установлены полнофункциональные гиперссылки и соединения между примечаниями и переданными документами. Это может быть достигнуто посредством предоставления службы участника с функциями для присоединения к продолжающемуся сеансу вещания и для восстановления текущего состояния презентации.
[0021] Хост-узлы 108 могут гарантировать целостность данных файла, давая докладчику уверенность, что они представляют документ в его текущем состоянии и что оно останется неизменным во время вещания. Один способ достигнуть этого состоит в том, чтобы сделать копию файла и передать эту копию. Хост-узел может реализовать интерфейс, и полнофункциональные клиенты могут использовать его, чтобы сделать копию и выложить файл. Хост-узлы 108 могут также использовать дополнительный механизм, чтобы гарантировать целостность данных.
[0022] В соответствии с другими вариантами осуществления участникам может быть разрешено осуществлять навигацию по документу независимо от докладчика, и состояние каждого участника может быть отслежено. Кроме того, личности участников, местоположение частных сделанных заметок и т.д. могут также быть отслежены. Например, может быть обеспечена поддержка аннотации, разрешение участникам просматривать записи и другие комментарии, совместно используемые в режиме реального времени, и данные, ассоциированные с аннотацией, могут быть также синхронизированы.
[0023] Для каждого синхронизируемого документа служба 106 совместного использования контента может отследить текущее состояние, такое как страница, слайд, параграф, строка, на которой докладчик находится в данный момент времени. Текущее состояние может также включать в себя информацию, ассоциированную с другим контентом, например, в каком месте аудио- или видеомедиа презентации находится докладчик (позиционная информация), позиция признака анимации, ячейка/ряд/колонка представленной таблицы и т.д. Информация состояния может быть сохранена и отслежена для продолжающихся встреч. Таким образом, хранилище состояния может реализовываться как хранилище в оперативной памяти сервера и продолжаться в течение встречи (и возможно, в течение короткого периода после конца встречи). Некоторые из данных состояния могут постоянно изменяться (например, на каком слайде находится докладчик), тогда как некоторые данные состояния могут быть зафиксированы (например, название и местоположение оригинального презентуемого файла).
[0024] Хранилище состояния может быть отказоустойчивым хранилищем для восстановления после сбоев и перезагрузок сервера. Это может быть достигнуто клиентами, проверяющими настоящую службу с помощью ping-команды с регулярными интервалами, поэтому если конкретный сервер базы данных отказывает, балансировщик нагрузки может переадресовать запросы на новую машину базы данных, которая может затем повторно восполняться состоянием встречи в следующей ping-команде от полнофункционального клиента докладчика. Объем данных для повторного восполнения является небольшим и всегда доступным. Кроме того, существующий участник для сеанса вещания может не испытать прерывание в своем вещании (то есть его экран не отключится, например, он будет все еще видеть последнее успешно сохраненное и восстановленное состояние до тех пор, пока новая машина не создаст резервную копию и не восполнится новым состоянием).
[0025] Фиг. 2 иллюстрирует главные компоненты и их взаимодействия в примерной системе для того, чтобы разрешить синхронизацию данных презентации документа в режиме реального времени. Как продемонстрировано в диаграмме 200, веб-приложение 248 может обеспечить контент, который должен передаваться в сетевое хранилище 242, как иллюстрировано страницами 244. Служба 250 хост-узла вещания может инициировать сеанс связи вещания посредством простой загрузки страницы докладчика и обеспечения линии связи с файлом, который должен быть передан.
[0026] Полнофункциональный клиент 254 докладчика может затем послать обновления состояния относительно статуса презентации. Участники могут загрузить страницу 252 участника, которая может включать в себя соответствующий компонент веб-приложения, ассоциированный с типом презентованного документа (например, приложение презентации, приложение обработки текста, приложение электронной таблицы, приложение создания примечаний и т.д.). Компонент может загрузить переданный документ с помощью общедоступного интерфейса из основанного на облаке запоминающего устройства 246, и участник может запросить обновленное состояние, в то время как вещание продолжается.
[0027] Таким образом, сервер не хранит переданный документ, но хранит текущее состояние презентации во временном хранилище. При обычных обстоятельствах информация состояния может быть послана от докладчика на сервер и впоследствии участникам, когда состояние изменяется в клиентском приложении докладчика. Чтобы гарантировать отказоустойчивость вещания в случае сбоя сервера, информация состояния может также быть периодически послана на сервер таким образом, чтобы сервер резервного копирования мог быть разогнан быстро после того, как взять на себя роль сервера, который дал сбой, не прерывая онлайн презентацию. Сценарии и конфигурация, показанная на Фиг. 2, предназначены только в целях иллюстрации и не составляют ограничение вариантов осуществления.
[0028] Фиг. 3 иллюстрирует концептуальную диаграмму 300 потока представляемого документа в примерной системе в соответствии с вариантами осуществления. В системе, в соответствии с вариантами осуществления, может быть сначала определена информация, которая должна быть синхронизирована для рассматриваемого приложения(й). Затем может быть создана структура данных или другое средство представления этой информации, а также любая дополнительная информация, необходимая для функционирования процесса обмена. Приложения 362, 366, формирующие и потребляющие информацию, могут быть проверены, чтобы верифицировать, что они способны это делать. Затем может быть создана веб-служба 364 или другое средство обмена информацией между множественными приложениями.
[0029] Данные, которые должны быть синхронизированы, могут зависеть от приложения и типа рассматриваемого контента. Например, в документе презентации текущий номер слайда и текущий этап анимации могут быть необходимы для синхронизации, чтобы участник следовал за местом докладчика в документе. Аналогично, в документе обработки текстов страница/параграф/строка, в настоящее время презентуемая докладчиком, может быть включена в данные состояния.
[0030] После определения, какие данные должны быть синхронизированы, реализатор может определить, как представлять эти данные. Данные состояния могут быть смоделированы как структура данных, но они могут быть также представлены в другой форме. Приложения 362, 366, используемые докладчиком и участниками, должны быть способны создавать и потреблять соответствующие данные соответственно. Приложения могут быть собственными приложениями или веб-приложениями. Чтобы обмениваться данными между приложениями, может быть создана служба 364 или аналогичный объект. Служба 364 должна быть способна находиться в контакте посредством приложений из различных местоположений и поддерживать как выгрузку новых данных встречи, так и извлечение данных встречи. Служба 364 также должна быть в состоянии сохранять данные встречи для заданной части контента в некоторой форме в течение периода времени. Данные могут быть сохранены различными способами - на диске, в памяти и т.д.
[0031] В некоторых вариантах осуществления аутентификация и/или авторизация участников могут быть выполнены до передачи данных состояния. В других вариантах осуществления хост-узлу может быть разрешено информировать в некоторый момент во время вещания, что докладчик может быть "плохим" и ему нельзя доверять. В этом случае права разрешения докладчика могут быть обновлены и приняты согласно действиям. Кроме того, в онлайн вещании, в соответствии с вариантами осуществления, докладчики могут переключаться. Так как презентация просматривается на стороне клиента на основании данных состояния, вещание может продолжаться без прерывания, даже когда докладчик изменяется. После передачи данных состояния от одного докладчика следующие данные состояния могут прибыть от другого докладчика, делая переход гладким для участников. В таких случаях данные состояния могут также включать в себя идентификацию докладчика, чтобы идентифицировать участникам нового докладчика.
[0032] В системе в соответствии с вариантами осуществления любой тип контента может быть передан с синхронизацией данных презентации документа в режиме реального времени. Например, документы обработки текста, документы электронной таблицы, документы презентации, аудионосители, видеоносители, графические презентации, даже электронная почта или аналогичные текстовые и/или графические документы могут вещаться, используя данные состояния, чтобы синхронизировать участников с докладчиком.
[0033] Примерные системы на Фиг. 1-3 были описаны со специфичными конфигурациями, приложениями и взаимодействиями. Варианты осуществления не ограничиваются системами в соответствии с этими примерами. Система для разрешения синхронизации данных презентации документа в режиме реального времени может быть реализована в конфигурациях, применяющих меньше или дополнительные компоненты и выполняющих другие задачи. Кроме того, специфичные протоколы и/или интерфейсы могут быть реализованы аналогичным образом, используя принципы, описанные в настоящем описании.
[0034] Фиг. 4 является примерной сетевой средой, в которой могут быть реализованы варианты осуществления. Система для разрешения синхронизации данных презентации документа в режиме реального времени с помощью универсальной службы может быть реализована с помощью программного обеспечения, выполняемого на одном или более серверах 414, например, хостированной службы. Платформа может включать в себя основанную на веб-службу или приложение, основанную на облаке службу или приложение и подобное и связываться с приложениями клиента на индивидуальных вычислительных устройствах, таких как смартфон 413, ноутбук 412 или настольный компьютер 411 ('клиентские устройства') через сеть(и) 410. Один пример основанной на веб-службы может быть комплектом приложений для продуктивной работы, который обеспечивает обработку текста, электронную таблицу, связь, планирование, презентацию и аналогичные приложения клиентам через интерфейс браузера на клиентских устройствах. Такая служба может обеспечить пользовательскую синхронизацию данных презентации документа в режиме реального времени, как описано выше.
[0035] Приложения клиента, выполняемые на любом из устройств 411-413 клиента, могут облегчить связь с помощью приложения(й), выполняемого серверами 414 или на индивидуальном сервере 416. Приложение, выполняемое на одном из серверов, может облегчить вещание контента презентации и информации состояния от докладчика. Участники, использующие устройства 411-413 клиента, могут просматривать, осуществлять навигацию и управлять потоком контента, используя свои собственные приложения на клиентских устройствах, но также и повторно синхронизироваться с докладчиками с помощью информации состояния. Облегчающее приложение может извлечь соответствующие данные из хранилища 419 данных непосредственно или через сервер 418 базы данных и предоставить запрашиваемые службы (например, редактирование документа) пользователю(ям) через устройства 411-413 клиента.
[0036] Сеть(и) 410 может содержать любую топологию серверов, клиентов, поставщиков интернет-служб и коммуникационных носителей. Система в соответствии с вариантами осуществления может иметь статическую или динамическую топологию. Сеть(и) 410 может включать в себя безопасные сети, такие как корпоративная сеть, небезопасную сеть, такую как беспроводная открытая сеть или Интернет. Сеть(и) 410 может также координировать связь по другим сетям, таким как коммутируемая телефонная сеть общего пользования (PSTN) или сотовые сети. Кроме того, сеть(и) 410 может включать в себя беспроводные сети малой дальности, такие как Bluetooth или подобные. Сеть(и) 410 обеспечивает связь между узлами, описанными в настоящем описании. Посредством примера, а не ограничения, сеть(и) 410 может включать в себя беспроводные носители, такие как акустические, радиочастотные, инфракрасные и другие беспроводные носители.
[0037] Многие другие конфигурации вычислительных устройств, приложений, источников данных и систем распределения данных могут быть использованы для реализации платформы для разрешения синхронизации данных презентации документа в режиме реального времени с помощью универсальной службы. Кроме того, сетевая среда, рассмотренная на Фиг. 4, предназначена только в целях иллюстрации. Варианты осуществления не ограничиваются примерными приложениями, модулями или процессами.
[0038] Фиг. 5 и ассоциированное рассмотрение предназначены, чтобы обеспечить сущность изобретения, общее описание подходящей вычислительной среды, в которой могут быть реализованы варианты осуществления. Со ссылками на Фиг. 5 иллюстрирована блок-схема примерной вычислительной операционной среды для приложения в соответствии с вариантами осуществления, например, вычислительного устройства 500. В базовой конфигурации вычислительное устройство 500 может быть любым вычислительным устройством, облегчающим онлайн вещание документов с синхронизацией данных презентации в режиме реального времени, в соответствии с вариантами осуществления, и включает в себя по меньшей мере один блок 502 обработки и системную память 504. Вычислительное устройство 500 может также включать в себя множество блоков обработки, которые взаимодействуют при выполнении программ. В зависимости от точной конфигурации и типа вычислительного устройства системная память 504 может быть энергозависимой (такой, как RAM), энергонезависимой (такой, как ROM, флэш-память и т.д.) или некоторой их комбинацией. Системная память 504 обычно включает в себя операционную систему 505, подходящую для управления операцией платформы, такой как операционные системы WINDOWS® от MICROSOFT CORPORATION, Редмонд, Вашингтон. Системная память 504 может также включать в себя одно или более приложений, такие как приложение 522 хост-узла и модуль 524 совместного использования документа.
[0039] Хост-приложение 522 может обеспечивать онлайн вещание презентации, включающей в себя документы и контент любого типа. Через модуль 524 совместного использования документа участники вещания могут принять обновления информации состояния от докладчика, разрешающего им следовать визуальному представлению презентации на стороне докладчика локально с возможностью независимо осуществлять навигацию по презентации, управлять потоками и повторно синхронизироваться с докладчиком. Хост-приложение 522 и модуль 524 совместного использования документа могут быть отдельными приложениями или интегрированными модулями хостированной службы. Эта базовая конфигурация иллюстрирована на Фиг. 5 этими компонентами в пределах пунктирной линии 508.
[0040] Вычислительное устройство 500 может иметь дополнительные функции или функциональные возможности. Например, вычислительное устройство 500 может также включать в себя дополнительные устройства хранения данных (сменные и/или несменные), такие как, например, магнитные диски, оптические диски или лента. Такое дополнительное хранилище иллюстрировано на Фиг. 5 посредством сменного хранилища 509 и несменного хранилища 510. Считываемые компьютером запоминающие носители могут включать в себя энергозависимые и энергонезависимые, сменные и несменные носители, реализованные любым способом или технологией для хранения информации, такой как считываемые компьютером команды, структуры данных, программные модули или другие данные. Системная память 504, сменное хранилище 509 и несменное хранилище 510 являются всеми примерами считываемых компьютером запоминающих носителей. Считываемые компьютером запоминающие носители включают в себя, но не ограничиваются, RAM, ROM, EEPROM, флэш-память или другую технологию памяти, CD-ROM, универсальные цифровые диски (DVD) или другое оптическое запоминающее устройство, магнитную ленту, магнитное дисковое запоминающее устройство или другие магнитные устройства хранения данных или любой другой носитель, который может быть использован для хранения желаемой информации и который может быть доступен посредством вычислительного устройства 500. Любые такие считываемые компьютером запоминающие носители могут быть частью вычислительного устройства 500. Вычислительное устройство 500 может также иметь устройство(а) 512 ввода, такое как клавиатура, мышь, перо, голосовое устройство ввода, устройство ввода касанием и сопоставимые устройства ввода. Устройство (а) 514 вывода, такое как дисплей, динамики, принтер и другие типы устройств вывода, может быть также включено. Эти устройства известны в данной области техники и не должны быть подробно рассмотрены в настоящем описании.
[0041] Вычислительное устройство 500 может также содержать соединения 516 связи, которые разрешают устройству связываться с другими устройствами 518, например, по проводной или беспроводной сети в распределенной вычислительной среде, линии спутниковой связи, сотовой линии связи, сети малой дальности и сопоставимых механизмах. Другие устройства 518 могут включать в себя компьютерное устройство(а), которое выполняет приложения связи, веб-серверы и сопоставимые устройства. Соединение(я) 516 связи являются одним примером коммуникационных носителей. Коммуникационные носители могут включать в себя считываемые компьютером команды, структуры данных, программные модули или другие данные. Посредством примера, а не ограничения, коммуникационные носители включают в себя проводные носители, такие как проводная сеть или прямое проводное соединение, и беспроводные носители, такие как акустические, радиочастотные, инфракрасные и другие беспроводные носители.
[0042] Примерные варианты осуществления также включают в себя методы. Эти методы могут быть реализованы любым количеством путей, включая структуры, описанные в этом документе. Один такой путь осуществляется посредством машинных операций устройств типа, описанного в этом документе.
[0043] Другой дополнительный путь предназначен для одной или более индивидуальных операций методов, которые должны быть выполнены вместе с одним или более людьми-операторами, выполняющими некоторые методы. Эти люди-операторы не должны быть расположены друг с другом, но каждый может быть только с машиной, которая выполняет часть программы.
[0044] Фиг. 6 иллюстрирует логическую блок-схему процесса 600 для обеспечения синхронизации данных презентации документа в режиме реального времени в соответствии с вариантами осуществления. Процесс 600 может быть реализован на вычислительном устройстве или аналогичном электронном устройстве, способном выполнять команды с помощью процессора.
[0045] Процесс 600 начинается с операции 610, на которой контент обеспечивается участникам. Контент может быть выложен в сетевое запоминающее устройство таким образом, чтобы он мог быть доступен/извлечен приложениями клиента (полнофункциональными или универсальными) во время сеанса связи вещания. В некоторых вариантах осуществления контент может быть кэширован на стороне клиента и просмотрен во время сеанса связи. На операции 620 сеанс связи вещания начинается одним из клиентов докладчика (или полнофункциональным или простым) посредством связи с сервером, облегчающим онлайн презентацию. Во время сеанса связи вещания сервер, облегчающий онлайн презентацию, принимает обновления состояния от докладчика, как показано на операции 630. Обновления состояния могут быть приняты в ответ на изменения состояния на стороне докладчика или периодически, чтобы гарантировать отказоустойчивость системы.
[0046] На операции 640 участники могут быть обеспечены обновлениями состояния, которые приняты от докладчика и разрешены на операции 650, чтобы просмотреть переданный документ независимо от докладчика. Например, участник может повторно воспроизвести, воспроизвести медленнее или воспроизвести быстрее мультимедийный контент, изменить темп анимации, изменить на другое местоположение в документе обработки текста или документе электронной таблицы и т.д. Операции 630 и 640 могут быть выполнены в цикле таким образом, чтобы обновления были приняты от докладчика и обеспечены участникам в течение сеанса связи вещания. На дополнительной операции 660 участникам может быть разрешено повторно синхронизироваться с докладчиком, используя обновления состояния, передаваемые от сервера к участникам.
[0047] С точки зрения участника, участник будет следовать по ссылке (например, URL), принятой от хостирующей службы, присоединится к сеансу связи вещания и будет иметь представление документа, визуализируемое на своем клиентском устройстве, например, с помощью браузера). Участник может принять обновления состояния от докладчика (через хостирующую службу) периодически и/или после изменений на стороне докладчика и автоматически осуществлять навигацию по визуальному представлению документа, чтобы оставаться синхронным с докладчиком. Участнику может быть также разрешено вручную осуществлять навигацию по документу независимо от докладчика и синхронизироваться обратно с докладчиком на основании принятых обновлений состояния.
[0048] С точки зрения докладчика может быть инициирован сеанс связи вещания, и участники могут быть приглашены посредством посылки им линии связи с вещанием. Докладчику может быть разрешено осуществлять навигацию по презентованному документу, который повторно воспроизводиться для каждого участника, на основании обновлений состояния, посланных участникам через службу хост-узла. Докладчик может также завершить вещание в любом пункте.
[0049] Операции, включенные в процессе 600, предназначены для целей иллюстрации. Синхронизация данных презентации документа в режиме реального времени в соответствии с вариантами осуществления может быть реализована аналогичными процессами с меньшим количеством или дополнительными этапами, а также в другом порядке операций, используя принципы, описанные в настоящем описании.
[0050] Вышеупомянутое описание, примеры и данные обеспечивают полное описание изготовления и использования состава вариантов осуществления. Хотя сущность изобретения была описана на языке, специфичном для структурных признаков и/или методологических действий, должно быть понятно, что сущность изобретения, определенная в приложенной формуле изобретения, не обязательно ограничена конкретными признаками или действиями, описанными выше. Вместо этого конкретные признаки и действия, описанные выше, раскрыты как примерные формы реализации пунктов формулы изобретения и вариантов осуществления.
1. Компьютерно-реализуемый способ синхронизации данных презентации при онлайн вещании, содержащий этапы, на которых:
предоставляют посредством сервера контент множеству участников, причем контент содержит документ, в котором каждый участник из данного множества участников может осуществлять навигацию;
принимают посредством сервера обновление информации состояния от докладчика на основе статуса контента в клиентском приложении, ассоциированном с докладчиком, при этом обновление информации состояния содержит информацию касаемо визуального представления контента на стороне докладчика;
сохраняют посредством сервера информацию состояния от докладчика;
принимают от одного участника из упомянутого множества участников запрос обновления информации состояния; и
предоставляют посредством сервера обновление информации состояния этому одному участнику, причем данное предоставление обновления информации состояния обеспечивает клиентскому приложению участника, ассоциированному с