Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений



Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
Система и способ для смешанного представления местно и удаленно хранящихся электронных сообщений
G06F3/048 - Вводные устройства для передачи данных, подлежащих преобразованию в форму, пригодную для обработки в вычислительной машине; выводные устройства для передачи данных из устройств обработки в устройства вывода, например интерфейсы (пишущие машинки B41J; преобразование физических переменных величин F15B 5/00,G01; получение изображений G06T 1/00,G06T 9/00; кодирование, декодирование или преобразование кодов вообще H03M; передача цифровой информации H04L)

Владельцы патента RU 2635887:

МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи (US)

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

 

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

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

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

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

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

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

Фиг. 1 - блок-схема примерной системы, которая предусматривает смешанное представление местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления.

Фиг. 2 - блок-схема, показывающая область отображения, которая может использоваться для представления местно хранящихся и удаленно хранящихся электронных сообщений смешанным способом в соответствии с вариантом осуществления.

Фиг. 3 - блок-схема последовательности осуществления операций способа для обеспечения смешанного представления местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления.

Фиг. 4 - блок-схема последовательности осуществления операций способа представления смешанного состояния, связанного с контейнером местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления.

Фиг. 5 - блок-схема последовательности осуществления операций дополнительного способа представления смешанного состояния, связанного с контейнером местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления.

Фиг. 6 - блок-схема последовательности осуществления операций способа выполнения смешанного поиска местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления.

Фиг. 7 - блок-схема последовательности осуществления операций способа выполнения смешанного поиска местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления.

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

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

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

I. Введение

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

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

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

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

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

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

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

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

II. Примерная система смешанного представления электронных сообщений

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

Как показано на Фиг. 1, система 100 содержит по меньшей мере один сервер 102 обмена электронными сообщениями и по меньшей мере одно устройство 106 пользователя, которое может средствами связи быть соединено с ним через сеть 104.

Сервер 102 обмена электронными сообщениями предназначен представлять основанное на процессоре электронное устройство, выполненное с возможностью приема электронных сообщений и посылки электронных сообщений различным другим объектам, в том числе другим серверам обмена электронными сообщениями. Сервер 102 обмена электронными сообщениями затем выполнен с возможностью взаимодействия с клиентами обмена электронными сообщениями, которые устанавливаются на устройствах пользователя (таких, как устройство 106 пользователя), чтобы позволить его пользователям получать доступ к электронным сообщениям, которые были приняты сервером 102 обмена электронными сообщениями, и посылать электронные сообщения другим устройствам пользователя через сервер 102 обмена электронными сообщениями. Копии электронных сообщений, принятых и отправленных сервером обмена электронными сообщениями, могут быть сохранены в удаленном хранилище 132. Удаленное хранилище 132 предназначено в широком плане представлять любое устройство или систему хранения, пригодные для хранения копий электронных сообщений.

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

Сеть 104 предназначена представлять любой тип сети или комбинацию сетей, пригодных для облегчения связи между электронными устройствами, такими как сервер 102 обмена электронными сообщениями и устройство 106 пользователя. Сеть 104 может содержать, например и без ограничения, глобальную сеть, локальную сеть, частную сеть, общедоступную сеть, пакетную сеть, сеть с коммутацией каналов, проводную сеть и/или беспроводную сеть.

Устройство 106 пользователя предназначено представлять электронное устройство на базе процессора, способное выполнять один или более компонентов программного обеспечения, которые установлены на нем. Только для примера и без ограничения, устройство 106 пользователя может содержать персональный компьютер, ноутбук, планшетный компьютер, смартфон, смарттелевидение, игровую консоль, персональный медиапроигрыватель, персонального цифрового секретаря, встроенное устройство и т.п.

Как дополнительно показано на Фиг. 1, устройство 106 пользователя содержит установленный на нем клиент 110 обмена электронными сообщениями. Клиент 110 обмена электронными сообщениями содержит программное обеспечение, которое, когда исполняется устройством 106 пользователя, взаимодействует с сервером 102 обмена электронными сообщениями, чтобы позволить пользователю составлять, посылать, получать, рассматривать, организовывать и как-либо иначе управлять электронными сообщениями. В варианте осуществления, в котором электронные сообщения содержат электронные письма, клиент 110 обмена электронными сообщениями может содержать почтовый клиент, такой как версия MICROSOFT® OUTLOOK®, опубликованная компанией Microsoft Corporation, Редмонд, штат Вашингтон. Однако, этот пример не предназначен служить ограничением.

Устройство 106 пользователя также содержит дисплей 112, которому установленные компоненты программного обеспечения могут предоставлять графическое содержание для его просмотра пользователем. Например, клиент 110 обмена электронными сообщениями 110 выполнен с возможностью заставить графический интерфейс 132 пользователя (GUI) предоставляться дисплею 112. GUI 132 содержит средство, посредством которого пользователь может вызывать различные функции и признаки клиента 110 обмена электронными сообщениями.

Устройство 106 пользователя также дополнительно содержит местное хранилище 114, которое здесь может упоминаться как местный кэш. Местное хранилище 114 предназначено для широкого представления любого типа устройства хранения или системы, пригодных для хранения электронных сообщений на устройстве 106 пользователя. Клиент 110 обмена электронными сообщениями выполнен с возможностью периодического взаимодействия с сервером 102 обмена электронными сообщениями через сеть 104, чтобы получать копии электронных сообщений, доступных клиенту 110 обмена электронными сообщениями в удаленном хранилище 132 и сохранять такие копии в местном хранилище 114. Например, в варианте осуществления, в котором электронные сообщения содержат электронные письма, клиент 100 обмена электронными сообщениями может периодически взаимодействовать с сервером 102 обмена электронными сообщениями через сеть 104, чтобы получать копии электронных писем от почтового ящика пользователя, хранящегося в удаленном хранилище 132, и сохранять такую скопированную электронную почту в местном хранилище 114. Когда копия электронного сообщения сохранена в местном хранилище 114, клиент 110 обмена электронными сообщениями может сделать электронное сообщение и информацию в отношении этого доступными для пользователя устройства 106 пользователя, даже если устройство 106 пользователя неспособно соединиться с сервером 102 обмена электронными сообщениями.

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

Для определения того, какое подмножество электронных сообщений скачивается и сохраняется в местном хранилище 114, может использоваться множество подходов. В одном из вариантов осуществления используется прокручивающееся временное окно (также упоминаемое здесь как "окно синхронизации"). В соответствии с таким подходом, только электронные сообщения, которые были получены в пределах прокручивающегося временного окна, скачиваются и сохраняются в местном хранилище 114. Временное окно, как говорят, "прокручивается", потому что оно смещается вперед во времени (например, прошлые 7 дней, прошлые 3 месяца и т.д.). По мере того, как временное окно смещается, электронные сообщения выходят за пределы "возраста" временного окна и удаляются из местного хранилища 114. Различные разрешающие способности по времени могут использоваться, чтобы определить, когда временное окно должно смещаться. Например, в одном из вариантов осуществления, временная разрешающая способность составляет 1 день.

В зависимости от реализации, длина прокручивающегося временного окна может или не может конфигурироваться пользователем. Например, в одном варианте осуществления, пользователь может взаимодействовать с клиентом 110 обмена электронными сообщениями, чтобы выбрать одно из множества заранее заданных временных окон прокрутки, каждое из которых имеет разную длину. В конкретной реализации пользователь может выбирать между 1-месячным, 3-месячным, 6-месячным и 12-месячным временным окном. В определенных реализациях пользователь может решить не использовать временное окно, когда копия всех электронных сообщений, хранящихся в удаленном хранилище 132, будет скачана и сохранена в местном хранилище 114. Однако, такой режим работы необязательно уместен для вариантов осуществления, описанных здесь, имеющих дело со смешанным представлением электронных сообщений.

Заметим, что описание прокручивающегося временного окна, представленное выше, представляет только один путь, которым подмножество электронных сообщений в удаленном хранилище 132 может быть выбрано для скачивания и сохранения в местном хранилище 114. Могут использоваться и другие способы. Дополнительно, используемый способ может изменяться в зависимости от типа электронного сообщения (например, если электронные сообщения представляют календарные данные, прокручивающееся временное окно может не использоваться).

Поскольку, как обсуждалось выше, клиент 110 обмена электронными сообщениями 110 скачивает и сохраняет в местном хранилище 114, по меньшей мере, некоторые из электронных сообщений пользователя, которые доступны в удаленном хранилище 132, клиент 110 обмена электронными сообщениями может позволить пользователю получать информацию о содержании и просмотреть содержание любого электронного сообщения, хранящегося в местном хранилище 114, даже когда устройство 106 пользователя неспособно соединиться с сервером 102 обмена электронными сообщениями. Дополнительно, так как клиент 110 обмена электронными сообщениями может скачать и сохранить в местном хранилище 114 только подмножество электронных сообщений пользователя, которые доступны в удаленном хранилище 132, клиент 110 обмена электронными сообщениями может уменьшить величину полосы пропускания, необходимую в сети 104 для скачивания электронных сообщений, объем вычислительной мощности устройства 106 пользователя, требующий синхронизации местно хранящихся электронных сообщений с удаленным хранилищем 132, и объем хранения пространственно используемый местным хранилищем 114 по сравнению с реализацией, в которой все электронные сообщения пользователя, доступные в удаленном хранилище 132, копируются в местное хранилище 114.

Как также показано на Фиг. 1, клиент 110 обмена электронными сообщениями содержит логику 122 смешанного представления, логику 124 смешанного состояния и логику 126 смешанного поиска. В варианте осуществления каждый из этих компонентов содержит программный модуль, который вызывается или является частью клиента 110 обмена электронными сообщениями.

Логика 122 смешанного представления работает, чтобы определить, когда устройство 106 пользователя соединяется с сервером 102 обмена электронными сообщениями. В ответ на определение того, что устройство 106 пользователя соединено с сервером 102 обмена электронными сообщениями, логика 122 смешанного представления работает, чтобы обеспечить смешанное представление электронных сообщений через GUI 132 так, чтобы пользователь мог одновременно просматривать как информацию об электронных сообщениях, которые кэшировались в местном хранилище 114, так и информацию об электронных сообщениях, хранящихся только в удаленном хранилище 132. Информация о таких электронных сообщениях может быть предоставлена пользователю плавным способом, так чтобы у пользователя было впечатление, что все электронные сообщения являются частью единого объединенного репозитария, даже при том, что информация о содержании таких электронных сообщений и само содержание таких сообщений могут быть получены из различных хранилищ. Кроме того, логика 122 смешанного представления работает так, что когда устройство 106 пользователя 106 соединяется с сервером 102 обмена электронными сообщениями, пользователь может просматривать информацию об электронных сообщениях и/или содержание электронных сообщений, хранящихся в удаленном хранилище 132, не требуя, чтобы такие удаленно хранящиеся электронные сообщения были скопированы в местное хранилище 114. Более подробная информация относительно способа работы логики 122 смешанного представления будет представлена ниже в разделе II.A.

Логика 124 смешанного состояния работает, чтобы представить смешанное состояние, связанное с контейнером электронных сообщений, пользователю устройства 106 пользователя в сценарии, в котором некоторые из электронных сообщений, хранящихся в контейнере, кэшируются в местном хранилище 114, а некоторые из электронных сообщений, хранящихся в контейнере, доступны только в удаленном хранилище 132. Смешанное состояние может содержать, например, подсчет элементов, который описывает множество электронных сообщений в контейнере, имеющем определенное состояние (например, содержится или не содержится в контейнере, считано или не считано, отмечено или не отмечено и т.п.).

Вообще говоря, в варианте осуществления, в котором смешанное состояние содержит подсчет элементов для контейнера, логика 124 смешанного состояния может определить подсчет элементов, беря сумму подсчета местных элементов и значение дельты. Подсчет местных элементов представляет количество электронных сообщений, хранящихся в местном хранилище 114, которые содержатся в контейнере и имеют определенное состояние. Величина дельты представляет последнюю известную разность между количеством удаленных элементов и количеством местных элементов, где количество удаленных элементов представляет множество электронных сообщений, хранящихся в удаленном хранилище 132, которые включаются в контейнер и имеют определенное состояние. Определяя счет элементов для контейнера таким способом, логика 124 смешанного состояния способна предоставить пользователю обновленный подсчет элементов для всего контейнера, даже когда пользователь предпринимает некоторые меры, которые изменяют только количество местных элементов, хотя устройство 106 пользователя находится в автономном состоянии. Дополнительно, определяя подсчет элементов для контейнера таким способом, логика 124 смешанного состояния способна предоставить пользователю обновленный подсчет элементов для всего контейнера во время процесса синхронизации, при котором такой обновленный подсчет элементов отражает изменения в подсчете местных элементов в результате такого процесса синхронизации. Более подробная информация, касающаяся такого способа работы логики 124 смешанного состояния, будет представлена ниже в разделе II.В.

Логика 126 смешанного поиска работает, чтобы позволить пользователю 106 устройства пользователя выполнять поиск кэшированных электронных сообщений, хранящихся в местном хранилище 114, а также электронных сообщений, хранящихся в удаленном хранилище 132, когда определено, что устройство 106 пользователя соединено с сервером 102 обмена электронными сообщениями. Результаты поиска, полученные как в результате поиска в местном хранилище 114, так и в результате поиска в удаленном хранилище 132, могут быть представлены на GUI 132. Когда пользователю требуется просмотреть содержание электронного сообщения, идентифицированного в результатах поиска и кэшировано в местном хранилище 114, логика 126 смешанного поиска получит содержание электронного сообщения из местного хранилища 114. Когда пользователь запрашивает просмотр содержания электронного сообщения, которое идентифицировано в результатах поиска и доступно только в удаленном хранилище 132, логика 126 смешанного поиска получит содержание электронного сообщения из удаленного хранилища 132 через взаимодействие с сервером 102 обмена электронными сообщениями, но не будет кэшировать содержание в местном хранилище 114. Более подробная информация, касающаяся способа работы логики 126 смешанного поиска будет обеспечена ниже в разделе II.C.

A. Примерные способы смешанного представления

На Фиг. 2 представлена блок-схема 200, предназначенная для демонстрации способа, в соответствии с которым логика 122 смешанного представления работает для обеспечения смешанного представления электронных сообщений через GUI 312, когда устройство 106 пользователя определяется как соединенное с сервером 102 обмена электронными сообщениями.

На Фиг. 2 область 202 отображения на GUI 132 управляется логикой 122 смешанного представления. Область 202 отображения может содержать, например, окно или область просмотра в пределах GUI 132, в котором представляется информация об электронных сообщениях пользователя. Такая информация может в широком смысле содержать любой элемент информации об электронном сообщении. Например, в варианте осуществления, в котором электронные сообщения содержат электронные письма, такая информация может содержать, в частности, отправителя электронного письма, сущность электронного письма, дату и/или время, когда электронное письмо было отправлено, дату и/или время, когда электронное письмо было получено, информацию о состоянии, касающуюся электронного письма (например, прочитано, не прочитано, отмечено, не отмечено) и т.п.

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

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

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

Как дополнительно показано на Фиг. 2, первый участок 204 области 202 отображения используется для представления информации об электронных сообщениях, которые попадают в окно синхронизации. Как обсуждалось выше, такое окно синхронизации может использоваться для определения, какие электронные сообщения копируются с удаленного хранилища 132 в местное хранилище 114. Поскольку электронные сообщения, информация о которых отображается на первом участке 204, обозначаются как 202 и хранятся в местном хранилище 114, в варианте осуществления логика 122 смешанного представления получает информацию об электронном сообщении, которая отображается в пределах первого участка 204 области 202 отображения, из местного хранилища 114, а не из удаленного хранилища 132. Такие данные, можно сказать, доступны "офлайн", как обозначено на Фиг. 2.

Как также показано на Фиг. 2, второй участок 206 области 202 отображения используется, чтобы представить информацию об электронных сообщениях, которые попадают за пределы окна синхронизации и, таким образом, не хранятся в местном хранилище 114. Так как электронные сообщения, информация о которых отображается на втором участке 206 области 202, не хранится в местном хранилище 114, в варианте осуществления, логика 122 смешанного представления получает информацию об электронных сообщениях, которая отображается в пределах второго участка 206 области 202 отображения, из удаленного хранилища 132 через взаимодействие внутри сервера 102 обмена электронными сообщениями, когда определено, что устройство 106 пользователя соединено с сервером 102 обмена электронными сообщениями. Такие данные, можно сказать, не доступны "офлайн", как указано на Фиг. 2.

Одновременно представляя информацию об электронных сообщениях, которые местно кэшируются в местном хранилище 114, и информацию об электронных сообщениях, которые хранятся удаленно в удаленном хранилище 132 в одной и той же области 202 отображения, как показано на Фиг. 2, логика 122 смешанного представления может создать у пользователя впечатление, что все электронные сообщения являются частью единого объединенного репозитария, даже притом, что логика 122 смешанного представления может получать информацию о таких электронных сообщениях и их содержание из различных хранилищ. Говоря иначе, логика 122 смешанного представления может создать у пользователя чувство, что он имеет доступ ко всем электронным сообщениям, хранящимся в удаленном хранилище 132, хотя логика 122 смешанного представления может получать некоторые электронные сообщения и информацию об этих электронных сообщениях из местного хранилища 114.

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

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

Дополнительно, в соответствии с примером варианта осуществления, показанным на Фиг. 2, когда пользователь выбрал электронное сообщение для просмотра, логика 122 смешанного представления получает содержание электронного сообщения и отображает такое содержание в пределах GUI 132. Если копия выбранного электронного сообщения хранится в местном хранилище 114, то логика 122 смешанного представления получит содержание электронного сообщения из местного хранилища 114. Однако если в местном хранилище 114 не хранится никакой копии выбранного электронного сообщения (то есть, выбранное электронное сообщение находится вне окна синхронизации), то логика 122 смешанного представления получит содержание электронного сообщения из удаленного хранилища 132 через взаимодействие с сервером 102 обмена электронными сообщениями. В этом последнем случае логика 122 смешанного представления не будет хранить копию удаленно хранящегося электронного сообщения в местном хранилище 114 как часть процесса представления. То есть хотя содержание удаленно сохраненного электронного сообщения может быть временно буферировано внутри памяти устройства 106 пользователя, чтобы облегчить его отображение, когда пользователь закрывает участок GUI 132, который используется для просмотра содержания удаленно хранящегося электронного сообщения, такие буферированные данные могут быть отброшены. Конечно, возможно, что в определенных ситуациях (например, по причинам характеристик) логика 122 смешанного представления может обеспечить сохранение копии удаленно хранящегося электронного сообщения внутри местного хранилища 114.

В одном из вариантов осуществления логика 122 смешанного представления может первоначально представлять только информацию об электронных сообщениях, которые попадают в окно синхронизации внутри области 202 отображения, даже при том, что было определено, что устройство 106 пользователя соединяется с сервером 102 обмена электронными сообщениями. В дальнейшем, в соответствии с таким вариантом осуществления логика 122 смешанного представления может обеспечить компонент в пределах GUI 132, с которым пользователь может взаимодействовать, чтобы также обеспечить отображение информации об электронных сообщениях, попадающих за пределы окна синхронизации, также внутри области 202 отображения смешанным способом, как описано выше. Такой интерактивный компонент может содержать или сопровождаться визуальным представлением его функции. Например, такой интерактивный компонент может содержать или сопровождаться текстом, заявляющим, что "На сервере есть еще сообщения, пожалуйста, щелкните здесь, чтобы их просмотреть", "Щелкните здесь, чтобы увидеть больше сообщений" или что-то вроде этого. Однако это просто примеры и ни в коем случае не предназначены для создания ограничений.

Заметим, что описание области 202 отображения было представлено только для иллюстрации. Область 202 отображения может иметь любой размер или форму в зависимости от реализации. Дополнительно, область 202 отображения целиком, возможно, не может просматриваться за один раз в пределах GUI 132 и/или дисплея 112 и могут использоваться прокрутка или другие подобные механизмы, чтобы просматривать выбранные участи области 202 отображения.

Дополнительно, хотя по Фиг. 2 может показаться, что информация об электронных сообщениях, которые содержатся в пределах окна синхронизации, представляется как непрерывный блок, который отделен от информации об электронных сообщениях, не находящейся в окне синхронизации, очень возможно, что такая информация может быть перемешана по всей области 202 отображения. Например, в варианте осуществления, в котором информация представляется как список, первое электронное сообщение, о котором информация представляется в списке, может находиться вне окна синхронизации, второе электронное сообщение, о котором информация представляется в списке, может находиться в окне синхронизации, и третья электронная информация, о которой информация представляется в списке, может быть за окном синхронизации. Чтобы расположить их иначе, участки 204 и 206 области 202 отображения могут быть смешаны или перемешаны. Это может произойти, например, благодаря способу, в котором такая информация сортируется, или по другим причинам.

На Фиг. 3 показана блок-схема 300 последовательности осуществления операций способа обеспечения смешанного представления местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления. Способ, показанный на блок-схеме 300, может выполняться, например, логикой 122 смешанного представления, как описано выше в отношении системы 100 на Фиг. 1. Однако способ не ограничивается этим вариантом осуществления и может быть полностью реализован другими компонентами или системами.

Как показано на Фиг. 3, способ согласно блок-схеме 300 последовательности выполнения операций начинается на этапе 302, на котором информация в отношении одного или более первых электронных сообщений отображается в GUI, визуализируемом на дисплее устройства пользователя, где содержание этих одного или более первых электронных сообщений сохраняется в местном хранилище устройства пользователя. Например, этот этап может повлечь за собой отображение информации об электронных сообщениях внутри окна синхронизации в GUI 132, визуализируемом на дисплее 112 устройства 106 пользователя, где такие электронные сообщения сохраняются в местном хранилище 114 устройства 106 пользователя.

На этапе 304 делается определение того, соединено ли устройство пользователя с сервером обмена электронными сообщениями. Например, этот этап может повлечь за собой определение того, является ли устройство 106 пользователя соединенным с сервером 106 обмена электронными сообщениями. Может использоваться множество способов, чтобы определить, существует ли такое соединение, в том числе, в частности, запрос обмена электронными сообщениями между устройством 106 пользователя и сервером 102 обмена электронными сообщениями 102, или просто определение, что устройство 106 пользователя имеет рабочее соединение с сетью 104.

На этапе 306, в ответ, по меньшей мере, на определение того, что устройство пользователя соединено с сервером обмена электронными сообщениями, информация об одном или более вторых электронных сообщений отображается в GUI одновременно с информацией, относящейся к одному или более из первых электронных сообщений, где содержание одного или более вторых электронных сообщений сохраняется в удаленном хранилище, доступном для сервера обмена электронными сообщениями, а не в местном хранилище. Например, этот этап может повлечь за собой в ответ, по меньшей мере, на определение того, что устройство 106 пользователя соединено с сервером 102 обмена электронными сообщениями, отображение информации об электронных сообщениях, не хранящихся в окне синхронизации на GUI 132, предоставленном дисплею 112 устройства 106 пользователя, где такие электронные сообщения сохраняются в удаленном хранилище 132, доступном для сервера 102 обмена электронными сообщениями, но не в местном хранилище 114.

В одном из вариантов осуществления способ, показанный на блок-схеме 300 последовательности выполнения операций, может дополнительно содержать обеспечение компонента интерфейса пользователя внутри GUI, с которым пользователь может взаимодействовать, чтобы обеспечить отображение информации, касающейся одного или более вторых электронных сообщений, в GUI одновременно с информацией, касающейся одного или более первых электронных сообщений. В дальнейшем, в соответствии с таким вариантом осуществления этап 306 может быть выполнен, по меньшей мере, в ответ на определение того, что устройство пользователя соединено с сервером обмена электронными сообщениями и что пользователь взаимодействовал с компонентом интерфейса пользователя. Как обсуждалось выше в отношении Фиг. 2, такой компонент интерфейса пользователя может содержать или сопровождаться визуальной индикацией, относящейся к его функции. Например, такой интерактивный компонент может содержать или сопровождаться текстом, заявляющим, что "На сервере есть больше сообщений, пожалуйста, щелкните здесь, чтобы просмотреть их", "Щелкните здесь, чтобы увидеть больше сообщений" или что-либо подобное.

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

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

B. Примеры методик представления информации о смешанном состоянии

На Фиг. 4 показана блок-схема 400 последовательности осуществления операций процесса, посредством которого логика 124 смешанного состояния 124 может работать, чтобы представить смешанное состояние, связанное с контейнером электронных сообщений пользователю устройства 106 пользователя в сценарии, в котором некоторые из электронных сообщений, хранящихся в контейнере, кэшируются в местном хранилище 114, а некоторые из электронных сообщений, хранящихся в контейнере, доступны только в удаленном хранилище 132. Контейнер может содержать, например, папку, которая используется, чтобы хранить все или подмножество электронных сообщений пользователя. Способ, соответствующий блок-схеме 400 последовательности выполнения операций, концентрируется на способе, в котором смешанное состояние сначала представляется пользователю после того, как запущен клиент 110 обмена электронными сообщениями. В способе, соответствующем блок-схеме 400 последовательности выполнения операций, смешанное состояние содержит подсчет элементов, который описывает количество электронных сообщений в контейнере, имеющем определенное состояние. Такое определенное состояние может содержать, например и в частности: содержится или не содержится в контейнере, считано или не считано, отмечено или не отмечено и т.п.

Только для иллюстрации, способ, соответствующий блок-схеме 400 последовательности выполнения операций, будет теперь описан со ссылкой на различные компоненты системы 100, как описано выше в отношении Фиг. 1. Однако специалисты в соответствующей области(-ях) должны понимать, что способ может быть также реализован другими компонентами или системами.

Как показано на Фиг. 4, способ, соответствующий блок-схеме 400 последовательности выполнения операций, начинается на этапе 402, на котором запускается клиент 110 обмена электронными сообщениями. В зависимости от реализации, этот этап может осуществляться многими путями. Например, этот этап может осуществляться, когда пользователь устройства 106 пользователя запускает клиента 110 обмена электронными сообщениями через взаимодействие с операционной системой устройства 106 пользователя или некоторым другим ее компонентом.

После этапа 402 управление переходит к этапу 404, во время которого логика 124 смешанного состояния загружает одно или более количеств местных элементов, связанных с контейнером, причем такие количества местных элементов хранятся в местном хранилище устройства 106 пользователя (например, местное хранилище 114). В соответствии с этим способом, количество местных элементов содержит представление множества электронных сообщений, хранящихся в местном хранилище 114, которые содержатся в контейнере и имеют определенное состояние. Количества местных элементов могут сохраняться для различных типов состояния. Например, для заданного контейнера может храниться количество местных элементов, которое представляет: множество электронных сообщений в контейнере, которые хранятся в местном хранилище 114, множество электронных сообщений в контейнере, которые считываются или не считываются и хранятся в местном хранилище 114, множество электронных сообщений, которые отмечаются или не отмечаются и хранятся в местном хранилище 114, и т.п.

После этапа 404 управление переходит к этапу 406, во время которого логика 126 смешанного состояния загружает одну или более величин дельты, связанных с контейнером, причем такие величины дельты хранятся в местном хранилище устройства 106 пользователя (например, в местном хранилище 114). В соответствии с этим способом, величина дельты представляет последнюю известную разность между количеством удаленных элементов и количеством местных элементов для контейнера, причем количество удаленных элементов представляет множество электронных сообщений, хранящихся в удаленном хранилище 132, которые содержатся в контейнере и имеют определенное состояние.

После этапа 406 управление переходит к этапу 408, во время которого логика 124 смешанного состояния вычисляет количества элементов для контейнера, суммируя каждое количество местных элементов, загруженное во время этапа 404, с соответствующей величиной дельты, загруженным во время этапа 406. Например, этот этап может повлечь за собой добавление количества местных элементов, которое определяет общее количество элементов, содержащихся в контейнере и хранящееся в местном хранилище 114, к величине дельты, которая определяет последнюю известную разность между общим количеством элементов, содержащихся в контейнере и хранящихся в удаленном хранилище 132, и количеством местных элементов. Как другой пример, этот этап может повлечь за собой добавление количества местных элементов, которое определяет общее количество непрочитанных элементов, содержащихся в контейнере и хранящихся в местном хранилище 114, к величине дельты, которая определяет последнюю известную разность между общим количеством непрочитанных элементов, содержащихся в контейнере и хранящихся в удаленном хранилище 132, и количеством местных элементов.

Во время этапа 408 логика 124 смешанного состояния также представляет количества элемента, вычисленные таким образом, на GUI 132, так чтобы они могли быть просмотрены пользователем устройства 106 пользователя. Этот этап может содержать отображение количеств элементов на месте или способ, который указывает, что такие количества элемента соответствуют контейнеру, для которого они были вычислены (например, рядом с графическим представлением контейнера, в строке состояния области навигации, которая отображает информацию об электронных сообщениях в контейнере, и т.п.).

После этапа 408 управление переходит к этапу 410 принятия решений, во время которого логика 124 смешанного состояния определяет, соединено ли устройство 106 пользователя с сервером 102 обмена электронными сообщениями или нет. Множество способов может использоваться, чтобы определить, существует ли такое соединение, в том числе, в частности, запрос обмена электронными сообщениями между устройством 106 пользователя и сервером 102 обмена электронными сообщениями или просто определение того, что устройство 106 пользователя имеет рабочее соединение с сетью 104.

Как показано на Фиг. 4, если во время этапа 406 принятия решений определено, что устройство 106 пользователя не соединено с сервером 102 обмена электронными сообщениями, то управление возвращается к этапу 408, во время которого логика 126 смешанного состояния продолжает показывать количества элементов для контейнера, как сумму количеств местных элементов для контейнера и соответствующих величин дельты, полученных во время этапа 406. Заметим, что хотя устройство 106 пользователя является офлайновым, количества местных элементов, загруженные во время этапа 404, могут обновляться в результате выполнения любого из множества действий пользователя устройства 106 пользователя, как будет обсуждаться ниже со ссылкой на блок-схему 500 последовательности выполнения операций, показанную на Фиг. 5. Таким образом, количества элементов для контейнера, которые отображаются во время этапа 408 в то время, как устройство 106 пользователя является офлайновым, будут суммой самых последних количеств местных элементов для контейнера (как результат офлайновых действий пользователя) плюс соответствующие величины дельты, полученные во время этапа 406. Заметим, что в некоторых вариантах осуществления, когда логика 124 смешанного состояния определяет, что устройство 106 пользователя не соединено с сервером 102 обмена электронными сообщениями и что величина дельты для определенного контейнера больше нуля (указывает, что имеются электронные сообщения, доступные в удаленном хранилище 132, которые не кэшируются в местном хранилище 114), то тогда логика 124 смешанного состояния может заставить инициировать индикатор, который уведомляет пользователя, что в удаленном хранилище 132 доступны дополнительные электронные сообщения. Например, такой индикатор может содержать текст, представленный на GUI 132, который заявляет, что "Имеется больше элементов - соединитесь с сервером, чтобы увидеть их", хотя это просто один из примеров. В дальнейшем, в соответствии с таким вариантом осуществления, когда значение дельты для конкретного контейнера равно нулю (указывает, что все электронные сообщения, доступные в удаленном хранилище 132, кэшируются в местном хранилище 114), никакая подобная индикация представляться не может.

Однако если во время этапа 410 принятия решений определено, что устройство 106 пользователя соединяется с сервером 102 обмена электронными сообщениями, то тогда управление переходит к этапу 412, во время которого инициируется процесс синхронизации, предназначенный для синхронизации состояния электронных сообщений, хранящихся в местном хранилище 114, и электронных сообщений, хранящихся в удаленном хранилище 132. Такой процесс синхронизации выполняется, потому что состояние электронных сообщений, хранящихся в местном хранилище 114 и/или удаленном хранилище 132, могло измениться (и, таким образом, стало несинхронизированным), в то время, когда устройство 106 пользователя было офлайновым, или в то время, когда клиент 110 обмена электронными сообщениями не работал. Например, пользователь мог изменить состояние одного или более электронных сообщений, хранящихся в местном хранилище 114, в то время, когда устройство 106 пользователя было офлайновым, или в то время, когда клиент 110 обмена электронными сообщениями не работал. В другом примере сервер 102 обмена электронными сообщениями мог изменить состояние одного или более электронных сообщений, доступных клиенту 110 обмена электронными сообщениями и хранящихся в удаленном хранилище 132, в то время, когда устройство 106 пользователя было офлайновым, или в то время, когда клиент 110 обмена электронными сообщениями не работал. Такой процесс синхронизации может также использоваться, чтобы переместить электронные сообщения из местного хранилища 114, которые вышли за пределы окна синхронизации.

В то время, когда выполняется процесс синхронизации, логика 124 смешанного состояния будет продолжать отображать количества элементов для контейнера как сумму количеств местных элементов для контейнера и соответствующих величин дельты, полученных во время этапа 406. Возможно, что в то время, как выполняется процесс синхронизации, количества местных элементов изменятся из-за такого процесса синхронизации (например, благодаря добавлению новых электронных сообщений в местное хранилище 114). Таким образом, количество элементов для контейнера, которые отображаются во время синхронизации, будет равно сумме самого последнего количества местных элементов для контейнера (полученных в результате процесса синхронизации) плюс соответствующая величина дельты, полученная на этапе 406.

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

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

На Фиг. 5 показана блок-схема 500 последовательности осуществления операций дополнительного процесса, посредством которого может работать логика 124 смешанного состояния, чтобы представить смешанное состояние, связанное с контейнером электронных сообщений, пользователю устройства 106 пользователя в сценарии, в котором некоторые из электронных сообщений, хранящихся в контейнере, кэшируются в местном хранилище 114, а некоторые из электронных сообщений, хранящихся в контейнере, доступны только в удаленном хранилище 132. Способ, показанный на блок-схеме 500 последовательности выполнения операций, сосредоточен на способе, в котором смешанное состояние представляется после того, как пользователь выполнил действие через клиента 110 обмена электронными сообщениями, который изменяет состояние электронного сообщения. Как и в случае блок-схемы 400 последовательности выполнения операций, смешанное состояние содержит количество элементов, которое описывает количество электронных сообщений в контейнере, имеющем конкретное состояние.

Только для иллюстрации, способ, показанный на блок-схеме 500 последовательности выполнения операций, будет теперь описан со ссылкой на различные компоненты системы 100, как было описано выше со ссылкой на Фиг. 1. Однако специалисты в данной области(-ях) техники должны понимать, что способ может быть реализован также и другими компонентами или системами.

Как показано на Фиг. 5, способ, соответствующий блок-схеме 500 последовательности выполнения операций, начинается на этапе 502, на котором пользователь использует клиент 110 обмена электронными сообщениями для выполнения действия на одном или более электронных сообщениях, которые располагаются в контейнере, так что общее количество электронных сообщений в контейнере, имеющем определенное состояние, изменяется. Такое действие может содержать, например, добавление электронного сообщения в контейнер, стирание или иное перемещение электронного сообщения из контейнера, считывание несчитанного электронного сообщения в контейнере, отмечание неотмеченного электронного сообщения в контейнере и т.п.

На этапе 504 принятия решения, в ответ на определение того, что действие этапа 502 произошло, логика 124 смешанного состояния определяет, хранится ли в местном хранилище 114 электронное сообщение, над которым было выполнено такое действие. Если электронное сообщение, над которым было выполнено действие, хранится в местном хранилище 114, то логика 124 смешанного состояния будет давать приращение вверх или вниз соответствующему количеству местных элементов в контейнере, как соответственно показано на этапе 506. Таким образом, например, если пользователь стер электронное сообщение из контейнера и электронное сообщение, которое было стерто, кэшировано в местном хранилище 114, то затем логика 124 смешанного состояния будет давать приращение вниз на единицу количеству местных элементов для этого контейнера. В другом примере, если пользователь считал несчитанное электронное сообщение в контейнере и электронное сообщение, которое было считано, кэшируется в местном хранилище 114, то затем логика 124 смешанного состояния будет давать приращение вниз на единицу количества местных несчитанных элементов для этого контейнера. Дополнительно, логика 124 смешанного состояния может также давать приращение вверх на единицу количеству местных считанных элементов для этого контейнера.

Однако если логика 124 смешанного состояния определяет во время этапа 504 принятия решения, что электронное сообщение(-я), над которым было выполнено действие на этапе 502, не хранится в местном хранилище 114 (то есть, хранится только в удаленном хранилище 132), то затем логика 124 смешанного состояния дает приращение вверх или вниз соответствующей величине дельты для контейнера соответственно, как показано на этапе 508. Таким образом, например, если пользователь стер электронное сообщение из контейнера и электронное сообщение, которое было стерто, не кэшировалось в местном хранилище 114, то затем логика 124 смешанного состояния дает приращение вниз на единицу величины дельты, представляющей разность между общим количеством удаленно хранящихся элементов в контейнере и количеством местных элементов для контейнера. В другом примере, если пользователь считал несчитанное электронное сообщение в контейнере и электронное сообщение, которое было считано, не кэшируется в местном хранилище 114, то затем логика 124 смешанного состояния дает приращение вниз на единицу для величины дельты, представляющей разность между общим количеством непрочитанных удаленно хранящихся элементов в контейнере и количеством местных непрочитанных элементов в контейнере. Дополнительно, логика 124 смешанного состояния может также давать приращение вверх на единицу значению дельты, представляющему разность между общим количеством считанных удаленно сохраненных элементов в контейнере и количеством местных считанных элементов в контейнере.

После этапа 506 или 508 управление переходит к этапу 510, во время которого логика 124 смешанного состояния вычисляет количество элементов для контейнера, суммируя количество местных элементов с соответствующей величиной дельты. Во время этапа 510 логика 124 смешанного состояния также представляет количество элементов, вычисленное таким образом, на GUI 132, так чтобы они могли быть просмотрены пользователем устройства 106 пользователя.

После этапа 510 управление передается этапу 512, во время которого инициируется процесс синхронизации, предназначенный для синхронизации состояния электронных сообщений, хранящихся в местном хранилище 114, и электронных сообщений, хранящихся в удаленном хранилище 132. Клиент 110 обмена электронными сообщениями может инициировать такой процесс синхронизации в соответствии с определяемым системой или пользователем расписанием в ответ на возникновение определенного события и т.п. Такой процесс синхронизации может быть необходим, поскольку состояние электронных сообщений, хранящихся в местном хранилище 114 и/или удаленном хранилище 132, могло измениться (и, таким образом, становиться несинхронным), начиная с появления предшествующей синхронизации. Например, пользователь мог изменить состояние одного или более электронных сообщений, хранящихся в местном хранилище 114, после появления предшествующей синхронизации. В другом примере, сервер 102 обмена электронными сообщениями мог изменить состояние одного или более электронных сообщений, доступных клиенту 110 обмена электронными сообщениями, и сохранить его в удаленном хранилище 132 после появления предшествующей синхронизации. Такой процесс синхронизации может также использоваться для перемещения из местного хранилища 114 электронных сообщений, которые вышли за пределы окна синхронизации.

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

Как показано на этапе 514 принятия решения, как только процесс синхронизации, инициируемый во время этапа 512, определяется как законченный, управление переходит к этапу 516.

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

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

Теперь будет представлен простой наглядный пример, чтобы помочь показать, как предшествующие способы, соответствующие блок-схемам 400 и 500 последовательности выполнения операций могут использоваться для представления пользователю информации о смешанном состоянии. Для целей этих примеров предполагается, что электронные сообщения являются электронными письмами, что соответствующий контейнер является папкой с названием "Mailbox" ("Почтовый ящик") и количество элементов, которое должно отображаться, равно количеству элементов в Mailbox.

Дополнительно следует предположить, что перед запуском клиента 110 обмена электронными сообщениями (и таким образом инициирования способа, соответствующего блок-схеме 400 последовательности выполнения операций), количество местных элементов для Mailbox равно 50 и величина дельты для элементов Mailbox равна 150 (то есть, когда вычислялась величина дельты для элементов Mailbox, в Mailbox имелось 200 удаленно хранящихся элементов и 50 местно хранящихся элементов).

Теперь предположим, что клиент обмена электронными сообщениями запускается в соответствии с этапом 402 блок-схемы 400 последовательности выполнения операций и логика 124 смешанного состояния загружает количество местных элементов для Mailbox, как указано выше, в соответствии с этапом 404, и загружает величину дельты для элементов Mailbox, как указано выше, в соответствии с этапом 406. Затем, во время этапа 408 логика 124 смешанного состояния вычисляет количество элементов для Mailbox как сумму количества местных элементов для Mailbox (50) и величины дельты для элементов Mailbox (150), давая в результате количество элементов, равное 200. Логика 124 смешанного состояния затем представит это количество элементов пользователю через GUI 132 дополнительно в соответствии с этапом 408.

Чтобы далее показать, как способы, соответствующие блок-схемам 400 и 500 последовательности выполнения операций, могут быть использованы для представления информации о смешанном состоянии пользователю, предположим, что в то время, как устройство 106 пользователя находится в офлайновом состоянии, пользователь добавил пять новых электронных писем в Mailbox. Так как это действие изменяет состояние Mailbox, это инициирует этап 502 на блок-схеме 500 последовательности выполнения операций. Дополнительно, так как это действие содержит местно хранящиеся электронные письма, оно приведет в результате к приращению вверх на пять количества местных элементов для Mailbox (создавая количество местных элементов, равное 55) в соответствии с этапом 506. Затем, во время этапа 510 количество элементов для Mailbox будет показано как 205 (количество местных элементов 55 значение дельты 150). Таким образом, пользователю будет показано, как его или ее действия, предпринятые офлайн, повлияют на состояние всего Mailbox, а не только те электронные письма, которые хранятся в местном хранилище 114.

Чтобы дополнительно показать, как способы, соответствующие блок-схемам 400 и 500 последовательности выполнения операций, могут использоваться для представления информации о смешанном состоянии пользователю, предположим, что в то время, как устройство пользователя 106 является офлайновым, сервер 102 обмена электронными сообщениями принимает 20 новых электронных писем в Mailbox ящике от имени пользователя и сохраняет их в удаленном хранилище 132, и также стирает 40 более старых электронных писем в Mailbox, которые находятся вне прокручивающегося временного окна и, таким образом, сохранены только в удаленном хранилище 132. В результате этого количество удаленных элементов для Mailbox равно 180. Предположим также, что после добавления пяти новых электронных писем к Mailbox в то время, когда устройство 106 пользователя находится в офлайновом состоянии, как обсуждалось выше, пользователь выключает устройство 106 пользователя. Позже пользователь включает устройство 106 пользователя снова и запускает клиент 110 обмена электронными сообщениями, инициируя этап 402 блок-схемы 400 последовательности выполнения операций.

В этом случае во время этапа 404 логика 124 смешанного состояния загружает количество местных элементов для Inbox (количество местных элементов = 55), во время этапа 406 логика 124 смешанного состояния загружает величину дельты для элементов Mailbox (величина дельты = 150) и во время этапа 408 логика 124 смешанного состояния количество элементов для Mailbox как 205 (55+150). Затем, на этапе 410 принятия решения управление передается на этап 412, потому что логика 124 смешанного состояния определяет, что устройство 106 пользователя теперь соединено с сервером 102 обмена электронными сообщениями.

На этапе 412 инициируется синхронизация. В результате синхронизации 20 новых электронных писем в Mailbox скачиваются в местное хранилище 114, приводя в результате к увеличению количества местных элементов в Mailbox с 55 до 75. Когда происходит синхронизация, логика 124 смешанного состояния продолжает отображать количество элементов в Inbox как сумму количества местных элементов (теперь 75) и величины дельты для элементов Mailbox (150), которая равна 225. Во время процесса синхронизации пять электронных писем, созданных местно в Mailbox, загружаются в удаленное хранилище 132, увеличивая количество удаленных элементов со 180 до 185.

Во время этапа 416 логика 124 смешанного состояния получает количества местных и удаленных элементов после синхронизации. В этом случае после синхронизации количество местных элементов для Inbox (входящие) будет равно 75 и количество удаленных элементов для Inbox будет равно 185. Следовательно, во время этапа 416 логика 124 смешанного состояния вычислит величину дельты для элементов Inbox, которое должно быть равно 110. Затем, во время этапа 418 логика 124 смешанного состояния отображает количество элементов для Inbox как 185, что является суммой количества местных элементов для Inbox (75) плюс величина дельты для элементов Inbox (110).

C. Примерные способы выполнения смешанного поиска

На Фиг. 6 показана блок-схема 600 последовательности осуществления операций первого способа, посредством которого логика 126 смешанного поиска может работать для выполнения смешанного поиска местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления. Только для иллюстрации, способ, соответствующий блок-схеме 600 последовательности выполнения операций, будет теперь описан со ссылкой на различные компоненты системы 100, как было описано раньше со ссылкой на Фиг. 1. Однако специалисты в соответствующей области(-ях) техники должны понимать, что способ может быть также реализован и другими компонентами или системами.

Как показано на Фиг. 6, способ, соответствующий блок-схеме 600 последовательности выполнения операций, начинается на этапе 602, во время которого пользователь вводит запрос в устройство 106 пользователя и инициирует поиск. Способ, которым может быть представлен такой запрос и посредством которого такой поиск может быть инициирован, может зависеть от реализации. Например, в одном из вариантов осуществления GUI 132 обеспечивает поле ввода текста, которое пользователь может использовать для введения запроса, и кнопку поиска, которую пользователь может активировать, чтобы инициировать поиск. Однако это только один пример и может использоваться множество известных механизмов ввода данных пользователем, чтобы подать запрос и инициировать поиск.

На этапе 604 логика 126 смешанного поиска локально выполняет поиск в отношении электронных сообщений, хранящихся в местном хранилище 114, основываясь на запросе, представленном на этапе 602. Логика 126 смешанного поиска может использовать любой из множества известных алгоритмов поиска, чтобы определить, какие электронные сообщения, хранящиеся в местном хранилище 114, могут быть идентифицированы как соответствующие запросу, введенному во время этапа 602. Если логика 126 смешанного поиска определяет, что какие-либо электронные сообщения, хранящиеся в местном хранилище 114, соответствуют запросу, то логика 126 смешанного поиска представляет информацию о таких электронных сообщениях на GUI 132. Представленная информация может, в широком смысле, содержать любой элемент информации об электронном сообщении. Например, в варианте осуществления, в котором электронные сообщения содержат электронные письма, такая информация может содержать, в частности, электронное письмо отправителя, сущность электронного письма, дату и/или время, когда электронное письмо было отправлено, дату и/или время, когда электронное письмо было получено, информацию о состоянии в отношении электронного письма (например, считано, не считано, отмечено, не отмечено) и т.п.

В некоторых вариантах осуществления для каждого соответствующего электронного сообщения, о котором информация представляется в результате местного поиска, выполняемого во время этапа 604, представляется также средство, посредством которого пользователь может инструктировать отображать содержание такого электронного сообщения на GUI 132. Например, средство может содержать компонент, который представляется совместно с информацией о каждом электронном сообщении, который, когда взаимодействует с пользователем, обеспечивает отображение содержания этого электронного сообщения в GUI 132. Дополнительно, в соответствии с такими вариантами осуществления, когда пользователь выбрал электронное сообщение для просмотра, логика 126 смешанного поиска получит содержание электронного сообщения из местного хранилища 114 и отобразит такое содержание в GUI 132.

После этапа 604 управление переходит к этапу 606 принятия решения, во время которого логика 126 смешанного поиска определяет, существуют ли в удаленном хранилище 132 доступные электронные сообщения, которые не кэшированы в местном хранилище 114. Способ, которым делается это определение, может изменяться в зависимости от реализации. Например, в одном варианте осуществления, логика 126 смешанного поиска определяет, что существуют электронные сообщения, доступные в удаленном хранилище 132, которые не кэшируются в местном хранилище 114, определяя, что используется окно синхронизации на временной основе, которое может давать в результате только подмножество электронных сообщений, доступных в удаленном хранилище 132, кэшируемых в местном хранилище 114. Однако могут также использоваться и другие способы.

Если логика 126 смешанного поиска определяет во время этапа 606 принятия решения, что нет никаких электронных сообщений, доступных в удаленном хранилище 132, которые также не кэшируются в местном хранилище 114, то способ, соответствующий блок-схеме 600 последовательности выполнения операций, заканчивается. Однако если логика 126 смешанного поиска определяет во время этапа 606 принятия решения, что существуют электронные сообщения, доступные в удаленном хранилище 132, которые не кэшированы в местном хранилище 114, управление передается на этап 608 принятия решения.

Во время этапа 608 принятия решения логика 126 смешанного поиска определяет, соединено ли устройство 106 пользователя с сервером 102 обмена электронными сообщениями или нет. Может использоваться множество способов для определения того, существует ли такое соединение, в том числе, в частности, запрос обмена электронными сообщениями между устройством 106 пользователя и сервером 102 обмена электронными сообщениями или просто принятие решения, что устройство 106 пользователя имеет рабочее соединение с сетью 104.

Если логика 126 смешанного поиска определяет во время этапа 608 принятия решения, что устройство 106 пользователя не соединяется с сервером 102 обмена электронными сообщениями, то способ блок-схемы 600 определения последовательности выполнения операций заканчивается. Однако если логика 126 смешанного поиска определяет во время этапа 608 принятия решения, что устройство 106 пользователя соединено с сервером 102 обмена электронными сообщениями, то тогда управление переходит к этапу 610.

Во время этапа 610 логика смешанного поиска обеспечивает отображение компонента интерфейса пользователя в GUI 132, который, когда активирован пользователем, проинструктирует сервер 102 обмена электронными сообщениями выполнять поиск в отношении доступных электронных сообщений, хранящихся в удаленном хранилище 132, основываясь на запросе, представленном во время этапа 602, и возвращать список, который идентифицирует любые соответствующие электронные сообщения. Такой компонент интерфейса пользователя может содержать или сопровождаться визуальным представлением его функции. Например, компонент интерфейса пользователя может содержать или сопровождаться текстом, который заявляет: "Продолжить поиск на сервере", "Искались только местные элементы, поэтому результаты поиска могут быть неполными - продолжайте искать на сервере" и т.п. Однако, это только примеры и они не предназначены для создания ограничений.

Если пользователь не активирует компонент интерфейса пользователя, представленный на GUI 132 во время этапа 610, то способ, соответствующий блок-схеме 600 последовательности выполнения операций, заканчивается. Однако если пользователь активирует компонент интерфейса пользователя, представленный на GUI 132, как показано на этапе 612, то управление переходит к этапу 614.

Во время этапа 614 сервер 102 обмена электронными сообщениями выполняет поиск в отношении доступных электронных сообщений, хранящихся в удаленном хранилище 132, основываясь на запросе, представленном во время этапа 602, и возвращает список, который идентифицирует любые соответствующие электронные сообщения. Логика 126 смешанного поиска представляет информацию о соответствующих электронных сообщениях на GUI 132. Представленная информация, в широком смысле, может содержать любой элемент информации об электронном сообщении.

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

Дополнительно, в соответствии с такими вариантами осуществления, когда пользователь выбрал электронное сообщение для просмотра, логика 126 смешанного поиска получает содержание электронного сообщения и отображает его в GUI 132. Если копия выбранного электронного сообщения хранится в местном хранилище 114, то логика 126 смешанного поиска получит содержание электронного сообщения из местного хранилища 114. Однако если в местном хранилище 114 не хранится никакой копии выбранного электронного сообщения (то есть выбранное электронное сообщение находится вне окна синхронизации), то логика 126 смешанного поиска получит содержание электронного сообщения из удаленного хранилища 132 через взаимодействие с сервером 102 обмена электронными сообщениями. В этом последнем случае логика 126 смешанного поиска не будет хранить копию удаленно хранящегося электронного сообщения в местном хранилище 114 как часть процесса представления. То есть хотя содержание удаленно хранящегося электронного сообщения может быть временно буферировано внутри памяти устройства 106 пользователя, чтобы облегчить его отображение, то когда пользователь закрыл участок GUI 132, который используется для просмотра содержания удаленно хранящегося электронного сообщения, такие буферированные данные могут быть выброшены.

На Фиг. 7 представлена блок-схема 700 последовательности осуществления операций второго способа для осуществления смешанного поиска местно хранящихся и удаленно хранящихся электронных сообщений в соответствии с вариантом осуществления. Способ, соответствующий блок-схеме 700 последовательности выполнения операций, может считаться вариантом способа, показанного на блок-схеме 600 последовательности выполнения операций, и описывается здесь, чтобы показать, что может использоваться множество альтернативных реализаций смешанного поиска. Только для иллюстрации, способ, соответствующий блок-схеме 700 последовательности выполнения операций, будет теперь описан со ссылкой на различные компоненты системы 100, как описано выше со ссылкой на Фиг. 1. Однако специалисты в данной области(-ях) техники должны понимать, что способ может быть реализован также и другими компонентами или системами.

Как показано на Фиг. 7, способ, соответствующий блок-схеме 700 последовательности выполнения операций, начинается на этапе 702, во время которого пользователь вводит запрос в устройство 106 пользователя и инициирует поиск. Способ, которым может быть представлен такой запрос и которым такой поиск может быть инициирован, зависит от реализации.

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

Во время этапа 704 логика 126 смешанного поиска предоставляет информацию о любых электронных сообщениях, идентифицированных в результате ограниченного местного поиска, в GUI 132. Представленная информация может, в широком смысле, содержать любой элемент информации об электронном сообщении. В некоторых вариантах осуществления для каждого соответствующего электронного сообщения, о котором предоставляется информация в результате ограниченного местного поиска, выполняемого во время этапа 704, также предоставляется средство, с помощью которого пользователь может предписать отображать содержание такого электронного сообщения в GUI 132. Например, данное средство может содержать компонент, который представляется связанным с информацией о каждом электронном сообщении, который, когда взаимодействует с пользователем, обеспечивает отображение содержания этого электронного сообщения в GUI 132. Дополнительно, в соответствии с такими вариантами осуществления, когда пользователь выбрал электронное сообщение для просмотра, логика 126 смешанного поиска получит содержание электронного сообщения из местного хранилища 114 и отобразит такое содержание на GUI 132.

В соответствии со способом по блок-схеме 700 последовательности выполнения операций, как часть этапа 704, логика 126 смешанного поиска также обеспечивает пользователю через GUI 132 указание того, что может иметься больше доступных результатов поиска, и предоставляет компонент, посредством которого пользователь может активировать дополнительный поиск. Например, логика 126 смешанного поиска может предоставить компонент интерфейса пользователя, который содержит или сопровождается словом "больше", по которому пользователь может затем щелкнуть, чтобы получить дополнительные результаты поиска. Однако, это просто один из примеров, и может использоваться большое разнообразие других представлений и компонентов интерфейса пользователя. Если пользователь не активирует компонент интерфейса пользователя, то способ, соответствующий блок-схеме 700 последовательности выполнения операций, заканчивается. Однако, если пользователь активирует компонент интерфейса пользователя, как показано на этапе 706, то управление переходит к этапу 708 принятия решения.

Во время этапа 708 принятия решения логика 126 смешанного поиска определяет, соединено ли устройство 106 пользователя с сервером 102 обмена электронными сообщениями или нет. Для определения того, существует ли такое соединение, может использоваться множество способов, в том числе, в частности, запрос обмена электронными сообщениями между устройством 106 пользователя и сервером 102 обмена электронными сообщениями, или просто принятие решения, что устройство 106 пользователя имеет рабочее соединение с сетью 104.

Если логика 126 смешанного поиска определяет во время этапа 708 принятия решения, что устройство 106 пользователя не соединено с сервером 102 обмена электронными сообщениями, то управление переходит к этапу 710. Во время этапа 710 логика 126 смешанного поиска выполняет не ограниченный сверху поиск в отношении электронных сообщений, хранящихся в местном хранилище 114, основываясь на запросе, предоставленном во время этапа 602. Поиск, выполняемый на этапе 704, не ограничен сверху, поэтому при нем будут выводиться все сообщения, которые определены как соответствующие.

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

В некоторых вариантах осуществления для каждого соответствующего электронного сообщения, о котором предоставляется информация в результате не ограниченного сверху местного поиска, выполняемого во время этапа 710, также предоставляется средство, посредством которого пользователь может предписать отображать содержание такого электронного сообщения в GUI 132. Например, средство может содержать компонент, предоставляемый вместе с информацией о каждом электронном сообщении, который, когда взаимодействует с пользователем, обеспечивает отображение содержания этого электронного сообщения в GUI 132. Дополнительно, в соответствии с такими вариантами осуществления, когда пользователь выбрал электронное сообщение для просмотра, логика 126 смешанного поиска получит содержание электронного сообщения из местного хранилища 114 и будет отображать такое содержание в GUI 132.

После этапа 710 управление передается этапу 712 принятия решения, во время которого логика 126 смешанного поиска определяет, имеются ли в удаленном хранилище 132 доступные электронные сообщения, которые не кэшируются в местном хранилище 114. Способ, которым делается это определение, может изменяться в зависимости от реализации. Например, в одном из вариантов осуществления логика 126 смешанного поиска определяет, что в удаленном хранилище 132 имеются доступные электронные сообщения, которые не кэшируются в местном хранилище 114, путем определения, что используется окно синхронизации на временной основе, которое может привести в результате только к подмножеству электронных сообщений, доступных в удаленном хранилище 132, кэшированных в местном хранилище 114. Однако могут использоваться также и другие способы.

Если логика 126 смешанного поиска определяет во время этапа 712 принятия решения, что в удаленном хранилище 132 нет никаких доступных электронных сообщений, которые также не кэшируются в местном хранилище 114, то способ, соответствующий блок-схеме 700 последовательности выполнения операций, заканчивается. Однако если логика 126 смешанного поиска определяет во время этапа 712 принятия решения, что в удаленном хранилище 132 имеются доступные электронные сообщения, которые не кэшируются в местном хранилище 114, управление переходит к этапу 714, во время которого логика 126 смешанного поиска через GUI 132 обеспечивает пользователю представление или предупреждение, что результаты не ограниченного сверху местного поиска могут быть неполными.

Как отмечено выше, во время этапа 708 принятия решения логика 126 смешанного поиска определяет, соединено ли устройство 106 пользователя с сервером 102 обмена электронными сообщениями 102 или нет. Если логика 126 смешанного поиска определяет во время этапа 708 принятия решения, что устройство пользователя 106 соединено с сервером 102 обмена электронными сообщениями, то управление переходит к этапу 716 принятия решения.

Во время этапа 716 принятия решения логика 126 смешанного поиска определяет, существуют ли в удаленном хранилище 132 доступные электронные сообщения, которые не кэшируются в местном хранилище 114. Если логика 126 смешанного поиска определяет во время этапа 716 принятия решения, что в удаленном хранилище 132 нет никаких доступных электронных сообщений, которые также не кэшируются в местном хранилище 114, то управление переходит к этапу 718 принятия решения.

Во время этапа 718 принятия решения логика 126 смешанного поиска определяет, является ли устаревшим поисковый индекс, который хранится местно по отношению к устройству 106 пользователя. Если логика 718 смешанного поиска решает, что поисковый индекс не является устаревшим, то управление переходит к этапу 710, который был описан ранее.

Если логика 126 смешанного поиска во время этапа 716 принятия решения определяет, что имеются электронные сообщения, доступные в удаленном хранилище 132, которые не кэшированы в местном хранилище 114, или если логика 126 смешанного поиска определяет во время этапа 718 принятия решения, что поисковый индекс является устаревшим, то управление переходит к этапу 720. Во время этапа 720 сервер 102 обмена электронными сообщениями выполняет не ограниченный сверху поиск в отношении доступных электронных сообщений, хранящихся в удаленном хранилище 132, основываясь на запросе, предоставленном на этапе 702, и получает в итоге список, идентифицирующий любые соответствующие электронные сообщения. Логика 126 смешанного поиска предоставляет информацию о соответствующих электронных сообщениях на GUI 132. Предоставленная информация, в широком смысле, может содержать любой элемент информации об электронном сообщении.

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

Дополнительно, в соответствии с такими вариантами осуществления, когда пользователь выбрал электронное сообщение для просмотра, логика 126 смешанного поиска получит содержание электронного сообщения и будет отображать такое содержание на GUI 132. Если копия выбранного электронного сообщения будет сохранена в местном хранилище 114, то логика 126 смешанного поиска получит содержание электронного сообщения из местного хранилища 114. Однако если в местном хранилище 114 не будет храниться никакая копия выбранного электронного сообщения (то есть, выбранное электронное сообщение находится вне окна синхронизации), то логика 126 смешанного поиска получит содержание электронного сообщения из удаленного хранилища 132 через взаимодействие с сервером 102 обмена электронными сообщениями. В этом последнем случае логика 126 смешанного поиска не будет хранить копию удаленно хранящегося электронного сообщения в местном хранилище 114 как часть процесса представления. То есть хотя содержание удаленно хранящегося электронного сообщения может быть временно буферировано в памяти устройства 106 пользователя, чтобы облегчить его отображение, когда пользователь закрыл участок GUI 132, который использовался для просмотра содержания удаленно хранящегося электронного сообщения, такие буферированные данные могут быть выброшены.

В соответствии с альтернативным вариантом осуществления, пользователь вводит запрос в устройство 106 пользователя и инициирует поиск. Если логика 126 смешанного поиска определяет, что устройство 106 пользователя соединено с сервером 102 обмена электронными сообщениями, то сервер 102 обмена электронными сообщениями выполняет не ограниченный сверху поиск в отношении доступных электронных сообщений, хранящихся в удаленном хранилище 132, основываясь на запросе, и возвращает список, идентифицирующий любые соответствующие электронные сообщения без дополнительного ввода от пользователя. Информация о соответствующих электронных сообщениях может быть представлена на GUI 132, используя смешанное представление, так что к содержанию местно кэшируемых соответствующих электронных сообщений можно получить доступ из местного хранилища 114, в то время как к содержанию соответствующих электронных сообщений, которые местно не кэшируются, можно получить доступ из удаленного хранилища 132.

В соответствии с еще одним дополнительным вариантом осуществления, пользователь вводит запрос в устройство 106 пользователя и инициирует поиск. Логика 126 смешанного поиска выполняет поиск в отношении электронных сообщений, хранящихся в местном хранилище 114, и также автоматически заставляет проводить не ограниченный сверху поиск в отношении электронных сообщений, доступных в удаленном хранилище 132, когда устройство 106 пользователя соединяется с сервером 102 обмена электронными сообщениями. В соответствии с таким вариантом осуществления, логика 126 смешанного поиска может сначала предоставить пользователю результаты местного поиска (который может давать результаты быстрее, чем удаленный поиск) и затем представить полный смешанный вид всех соответствующих электронных сообщений, доступных в удаленном хранилище 132, когда возвращаются результаты удаленного поиска. Все это может произойти без какого-либо дополнительного ввода от пользователя помимо передачи запроса и инициирования поиска.

III. Пример реализации системы на основе процессора

На Фиг. 8 показан пример компьютерной системы 800 на основе процессора, которая может использоваться для реализации различных описанные здесь вариантов осуществления. Например, система 800 может использоваться, чтобы реализовать сервер 102 обмена электронными сообщениями или устройство 106 пользователя, или и то, и другое, а также различные их субкомпоненты. Представленное здесь описание системы 800 приводится для целей иллюстрации и не предназначено для создания ограничений. Варианты осуществления могут быть реализованы в дополнительных типах компьютерных систем, как это должно быть известно специалистам в данной области(-ях) техники.

Как показано на Фиг. 7, система 800 содержит процессор 802, системную память 804 и шину 806, которая связывает различные системные компоненты, в том числе системную память 804 с процессором 802. Процессор 802 может содержать один или более процессоров или ядер процессора. Шина 806 представляет одну или более из любых нескольких типов структур шины, в том числе шину памяти или контроллер памяти, периферийную шину, ускоренный графический порт и шину процессора или локальную шину, используя любое множество архитектур шины. Системная память 804 содержит постоянную память (ROM) 808 и оперативную память (RAM) 810. Базовая система ввода-вывода (BIOS) 812 хранится в ROM 808.

Система 800 также имеет один или более следующих накопителей: накопитель 814 на жестких дисках для считывания и записи на жесткий диск, магнитный дисковод 816 для считывания или записи на съемный магнитный диск 818 и оптический дисковод 820 для считывания или записи на съемный оптический диск 822, такой как диск CD-ROM, ROM DVD, BLU-RAY™ или другие оптические носители. Накопитель 814 на жестких дисках, магнитный дисковод 816 и оптический дисковод 820 присоединяются к шине 806 через интерфейс 824 накопителя на жестких дисках, интерфейс 826 привода магнитного дисковода и интерфейс 828 оптического дисковода соответственно. Дисководы и связанные с ними считываемые компьютером носители обеспечивают энергонезависимое хранение считываемых компьютером команд, структур данных, программных модулей и других данных для компьютера. Хотя описаны жесткий диск, съемный магнитный диск и съемный оптический диск, для хранения данных могут использоваться и другие типы считываемых компьютером носителей, такие как карты флэш-памяти, цифровые видеодиски, оперативная память (RAM), постоянная память (ROM) и т.п.

Многочисленные программные модули могут храниться на жестком диске, магнитном диске, оптическом диске, ROM или RAM. Эти программные модули содержат операционную систему 830, одну или более прикладных программ 832, другие программные модули 834 и данные 836 программ. В соответствии с различными вариантами осуществления, программные модули могут содержать логику компьютерных программ, которая исполняется процессором 802, чтобы выполнить любую или все функции и признаки сервера 102 обмена электронными сообщениями и устройства 106 пользователя, а также любые их субкомпоненты, как описано в другом месте здесь. Программные модули могут также содержать логику компьютерных программ, которая, когда исполняется процессором 802, выполняет любой из этапов или операций, показанных или описанных со ссылкой на Фиг. 2-7.

Пользователь может вводить команды и информацию в систему 800 через устройства ввода данных, такие как клавиатура 838 и указывающее устройство 840. Другие устройства ввода данных (не показаны) могут содержать микрофон, джойстик, игровой контроллер, сканер и т.п. В одном из вариантов осуществления сенсорный экран обеспечивается совместно с дисплеем 844, чтобы позволить пользователю обеспечивать ввод данных от пользователя, применяя касание (например, пальцем или стилусом) к одной или более точкам на сенсорном экране. Эти и другие устройства ввода данных часто соединяются с процессором 802 через интерфейс 842 последовательного порта, который связывается с шиной 806, но могут присоединяться и через другие интерфейсы, такие как параллельный порт, игровой порт или универсальная последовательная шина (USB).

Дисплей 844 также соединяется с шиной 806 через интерфейс, такой как видеоадаптер 846. В дополнение к дисплею 844, система 800 может содержать другие периферийные устройства вывода (не показаны), такие как громкоговорители и принтеры.

Система 800 соединяется с сетью 848 (например, локальной сетью или глобальной сетью, такой как Интернет) через сетевой интерфейс или адаптер 850, модем 852 или другие средства для установления связи по сети. Модем 852, который может быть внутренним или внешним, присоединяется к шине 806 через интерфейс 842 последовательного порта.

Термины "носитель компьютерной программы" и "считываемый компьютером носитель", как они используются здесь, обычно относятся к непередаваемым носителям, таким как ROM 808 и RAM 810, используемым для реализации системной памяти 804, жесткому диску, связанному с дисководом 814 жесткого диска, съемному магнитному диску 818, съемным оптическим дискам 822, а также другим носителям, таким как карты флэш-памяти, цифровые видеодиски и т.п.

Как отмечено выше, компьютерные программы и модули (в том числе, прикладные программы 832 и другие программные модули 834) могут храниться на ROM 808, RAM 810, жестком диске, магнитном диске или оптическом диске. Такие компьютерные программы могут также быть получены через сетевой интерфейс 850 или интерфейс 842 последовательного порта. Такие компьютерные программы, когда исполняются процессором 802, позволяют системе 800 реализовать признаки вариантов осуществления, обсуждавшиеся здесь. Соответственно такие компьютерные программы представляют контроллеры системы 800.

Варианты осуществления также направлены на компьютерные программные продукты, содержащие программное обеспечение, хранящееся на любом считываемом компьютером носителе. Такое программное обеспечение, когда исполняется на одном или более устройствах обработки данных, заставляет устройство(-а) обработки данных работать, как описано здесь. Варианты осуществления могут использовать любой применяемый компьютером или считываемый компьютером носитель, известный в настоящее время или в будущем. Примерами считываемых компьютером носителей являются, в частности, устройства хранения данных, такие как ROM, RAM, жесткие диски, дискеты, CD-ROM, DVD ROM, zip-диски, ленты, устройства магнитного накопителя, оптические устройства хранения, устройства хранения на основе MEM, устройства хранения на основе нанотехнологии и т.п.

В альтернативных вариантах осуществления каждый сервер 102 обмена электронными сообщениями и устройство 106 пользователя, а также любые их субкомпоненты могут быть реализованы как аппаратурные логические/электрические схемы или как встроенное микропрограммное обеспечение. В соответствии с дополнительными вариантами осуществления, один или более из этих компонент могут быть реализованы в системе на чипе (SoC). SoC может содержать чип с интегральными схемами, который содержит один или более процессоров (например, микроконтроллер, микропроцессор, цифровой сигнальный процессор (DSP) и т.д.), память, один или более интерфейсов связи и/или дополнительные схемы, и/или встроенное микропрограммное обеспечение для выполнения его функций.

IV. Заключение

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

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

(a) отображают информацию, касающуюся одного или более первых электронных сообщений, в графическом пользовательском интерфейсе (GUI), визуализируемом на дисплее устройства пользователя, причем содержание одного или более первых электронных сообщений хранится в местном энергонезависимом запоминающем устройстве из состава устройства пользователя;

(b) определяют, соединено ли устройство пользователя с сервером обмена электронными сообщениями;

(c) в ответ, по меньшей мере, на определение того, что устройство пользователя соединено с сервером обмена электронными сообщениями, отображают информацию, касающуюся одного или более вторых электронных сообщений, в GUI одновременно с информацией, относящейся к одному или более первым электронным сообщениям, причем содержание одного или более вторых электронных сообщений хранится в удаленном хранилище, ассоциированном с сервером обмена электронными сообщениями, но не хранится в местном энергонезависимом запоминающем устройстве из состава устройства пользователя; и

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

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

3. Способ по п. 1, дополнительно содержащий этапы, на которых:

обеспечивают в пределах GUI компонент, с которым пользователь может взаимодействовать, чтобы проинструктировать отображать содержание выбранного одного из одного или более первых электронных сообщений в GUI; и

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

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

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

принимают запрос от пользователя устройства пользователя;

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

отображают информацию о по меньшей мере одном электронном сообщении, идентифицированном в результате выполнения первого поиска, в графическом пользовательском интерфейсе (GUI), визуализируемом на дисплее устройства пользователя;

определяют, соединено ли устройство пользователя с сервером обмена электронными сообщениями; и

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

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



 

Похожие патенты:

Изобретение относится к системе и способу обеспечения безопасных транзакций электронной коммерции. Технический результат заключается в повышении безопасности транзакций электронной коммерции.

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

Изобретение относится к области Интернет-технологий, в частности к отображению страниц. Техническим результатом является расширение арсенала технических средств отображения страниц.

Изобретение относится к области электронных платежей. Технический результат – расширение арсенала платежных устройств.

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

Изобретение относится к системе взаимодействия пользователей при совершении сделок с объектами недвижимости. Технический результат заключается в повышении безопасности проведения сделок с объектами недвижимости.

Изобретение относится к заказу товаров по сети Интернет. Техническим результатом является уменьшение нагрузки на основное процессорное устройство.

Изобретение относится к средствам для участия в рекламных/коммерческих мероприятиях. Техническим результатом является расширение арсенала средств обработки для осуществления покупки.

Изобретение относится к системе и способу выполнения банковской транзакции. Технический результат заключается в повышении безопасности выполнения банковских транзакций.

Группа изобретений относится к здравоохранению, а также наукометрическим способам и системам анализа данных о научно-исследовательских проектах с целью выявления перспективного проекта или направления исследования в предметной области «биомедицина» по максимальному количеству набранных баллов по оцениваемым критериям и построения рейтинга для нескольких оцениваемых проектов или направлений исследований по возрастанию или убыванию упомянутых баллов.

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

Изобретение относится к пользовательским интерфейсам. Технический результат заключается в повышении скорости ввода данных при управлении перемещением объекта.

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

Изобретение относится к области реализации на мобильных устройствах приложений, услуг и содержимого контента. Технический результат – обеспечение гарантированной доступности приложений, услуг и содержимого контента на мобильных устройствах.

Изобретение относится к устройствам отображения документа на дисплее с сенсорным экраном. Технический результат заключается в предотвращении повторных попыток пользователя выполнить практически неприменимую операцию перемещения.

Изобретение относится к области технологий «умного дома». Технический результат заключается в обеспечении автоматического без участия пользователя удаления интеллектуального сценария.

Изобретение относится к обеспечению защиты информации, вводимой через сенсорный экран. Технический результат – предотвращение утечки информации, вводимой через сенсорный экран.

Изобретение относится к электронным устройствам, которые позволяют пользователям взаимодействовать с элементом потока содержимого. Технический результат – снижение числа прерываний навигационного опыта пользователя во время взаимодействия с потоком содержимого.

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

Для установки специального программно-математического обеспечения на бортовом компьютере программно-аппаратного комплекса топопривязчика используют компакт-диск с загрузочным модулем, внешний дисковод CD-ROM с интерфейсным кабелем типа USB, клавиатуру с интерфейсным кабелем типа USB, манипулятор, источник питания, комплект технологических жгутов.

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении точности передачи данных. Способ, включающий обнаружение события многоточечного прикосновения к целевому объекту; определение того, является ли обнаруженное событие многоточечного прикосновения заранее заданным первым событием многоточечного прикосновения, причем первое событие многоточечного прикосновения используют для запуска переключения целевого объекта в режим безопасного отображения; переключение целевого объекта в режим безопасного отображения, в котором отображается только целевой объект, если обнаруженное событие многоточечного прикосновения является первым событием многоточечного прикосновения, при этом целевой объект содержит графический объект, текстовый объект, объект мультимедиа или оконный объект. 3 н. и 10 з.п. ф-лы, 13 ил.
Наверх