RU2523165C2 - Технологии автоматического диалога - Google Patents

Технологии автоматического диалога Download PDF

Info

Publication number
RU2523165C2
RU2523165C2 RU2010152843/08A RU2010152843A RU2523165C2 RU 2523165 C2 RU2523165 C2 RU 2523165C2 RU 2010152843/08 A RU2010152843/08 A RU 2010152843/08A RU 2010152843 A RU2010152843 A RU 2010152843A RU 2523165 C2 RU2523165 C2 RU 2523165C2
Authority
RU
Russia
Prior art keywords
dialog
conversation
rule
message
dialogue
Prior art date
Application number
RU2010152843/08A
Other languages
English (en)
Other versions
RU2010152843A (ru
Inventor
Майкл ЭФФРОНТИ
Эндрю БРАУНИНГЕР
Роберт Эмметт МАККАНН
Джеймс ЭДЕЛЕН
Хорхе ПЕРЕЙРА
Original Assignee
Майкрософт Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2010152843A publication Critical patent/RU2010152843A/ru
Application granted granted Critical
Publication of RU2523165C2 publication Critical patent/RU2523165C2/ru

Links

Images

Classifications

    • G06Q50/40
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • G06Q50/60
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72436User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for text messaging, e.g. SMS or e-mail

Abstract

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

Description

Уровень техники
Приложения электронной почты (почтовые программы) предоставляют пользователям возможность хранить сообщения в логических папках в рамках интерфейса, аналогичного интерфейсу, предоставленному посредством многих файловых систем. Почтовые приложения также могут давать возможность пользователям группировать сохраненные сообщения в логические "диалоги". Каждый диалог - это группа связанных сообщений, включающая в себя корневое сообщение и ответы на корневое сообщение или друг на друга. Когда скомпонованы как диалог, сообщения отображаются в пользовательском интерфейсе почтового приложения как список диалогов, сгруппированных по теме сообщения или цепочке диалога. Диалоги могут быть отсортированы по дате, а сообщения в рамках каждого диалога могут быть отсортированы на основе того, кто кому отвечает.
Несмотря на удобство, предлагаемое посредством групп сообщений, некоторые почтовые приложения ограничивают операции для диалога отдельными элементами диалога. Например, пользователь может не хотеть участвовать в цепочке диалога, обсуждающей варианты обеда с некоторыми коллегами. Пользователю может требоваться удалять отдельные элементы диалога по мере того, как они поступают, чтобы сохранять свою папку входящих сообщений свободной. Такие операции могут быть трудоемкими и длительными для пользователя, в частности, с учетом возрастающих объемов почтовых сообщений, которые пользователь может принимать за день. Следовательно, необходимы усовершенствования в технологиях управления и отображения элементов для того, чтобы разрешать эти и другие проблемы и расширять возможности работы пользователей в различных сценариях использования.
Сущность изобретения
Данная сущность изобретения предоставлена для того, чтобы представлять в упрощенной форме выбор концепций, которые дополнительно описаны ниже в подробном описании. Эта сущность не имеет намерением ни то, чтобы идентифицировать ключевые признаки или важнейшие признаки заявленного предмета изобретения, ни то, чтобы быть использованной так, чтобы ограничивать объем заявленного предмета изобретения.
Различные варианты осуществления, в общем, направлены на технологии автоматического ведения диалога для приложения обмена сообщениями. Некоторые варианты осуществления, в частности, направлены на действия автоматического ведения диалога, которые могут применяться по всей группе или цепочке диалога для приложения обмена сообщениями, такого как, например, почтовое приложение.
Один вариант осуществления, например, может содержать устройство, такое как вычислительное устройство, имеющее прикладную программу обмена сообщениями. Прикладная программа обмена сообщениями может содержать, помимо других элементов, модуль входящих сообщений, выполненный с возможностью приема входящего сообщения. Прикладная программа обмена сообщениями также может содержать модуль идентификации диалогов, функционально соединенный с модулем входящих сообщений, при этом модуль идентификации диалогов выполнен с возможностью определения того, что входящее сообщение является частью цепочки диалога, и ассоциирования входящего сообщения с цепочкой диалога посредством задания свойства идентификатора диалога входящего сообщения идентификатору диалога для цепочки диалога. Прикладная программа обмена сообщениями дополнительно может содержать модуль диспетчера диалогов, функционально соединенный с модулем идентификации диалогов, при этом модуль диспетчера диалогов выполнен с возможностью определения того, что правило диалога ассоциировано с цепочкой диалога, и применения правила диалога к входящему сообщению. Другие варианты осуществления описываются и приводятся в формуле изобретения.
Эти и другие признаки и преимущества должны становиться очевидными из прочтения последующего подробного описания и рассмотрения сопроводительных чертежей. Следует понимать, что как вышеприведенное общее описание, так последующее детальное описание являются только примерными и пояснительными, а не ограничивающими аспекты согласно формуле изобретения.
Краткое описание чертежей
Фиг. 1 иллюстрирует вариант осуществления операционного окружения.
Фиг. 2 иллюстрирует вариант осуществления вычислительного устройства.
Фиг. 3 иллюстрирует вариант осуществления почтового приложения.
Фиг. 4 иллюстрирует вариант осуществления первого вида диалога.
Фиг. 5 иллюстрирует вариант осуществления второго вида диалога.
Фиг. 6 иллюстрирует вариант осуществления третьего вида диалога.
Фиг. 7 иллюстрирует вариант осуществления четвертого вида диалога.
Фиг. 8 иллюстрирует вариант осуществления пятого вида диалога.
Фиг. 9 иллюстрирует вариант осуществления логической последовательности операций.
Фиг. 10 иллюстрирует вариант осуществления изделия.
Подробное описание изобретения
Различные варианты осуществления включают в себя физические или логические структуры, выполненные с возможностью осуществлять определенные операции, функции или услуги. Структуры могут содержать физические структуры, логические структуры или комбинацию вышеуказанных. Физические или логические структуры реализуются с использованием аппаратных элементов, программных элементов или комбинации вышеозначенного. Описания вариантов осуществления в отношении конкретных аппаратных или программных элементов, тем не менее, служат в качестве примеров, а не ограничений. Решения использовать аппаратные или программные элементы для того, чтобы фактически осуществлять на практике вариант осуществления, зависят от ряда внешних факторов, таких как требуемая скорость вычислений, уровень мощности, теплостойкость, бюджет цикла обработки, скорости передачи входных данных, скорости передачи выходных данных, ресурсы запоминающего устройства, скорости шин данных и другие проектные ограничения или ограничения производительности. Кроме того, физические или логические структуры могут иметь соответствующие физические или логические соединения, чтобы передавать информацию между структурами в форме электронных сигналов или сообщений. Соединения могут содержать проводные и/или беспроводные соединения, подходящие для информации или конкретной структуры. Следует отметить, что все ссылки на "один вариант осуществления" или "вариант осуществления" означают, что конкретный признак, структура или характеристика, описанные в связи с вариантом осуществления, включены, по меньшей мере, в один вариант осуществления. Вхождения фразы "в одном варианте осуществления" в различных местах подробного описания не обязательно ссылаются на идентичный вариант осуществления.
Различные варианты осуществления могут быть направлены на технологии автоматического ведения диалога для приложения обмена сообщениями. Технологии автоматического ведения диалога могут быть реализованы для любого приложения обмена сообщениями. Примеры приложений обмена сообщениями могут включать в себя, но не только, приложение обмена почтовыми сообщениями, программу обмена текстовыми сообщениями, программу обмена сообщениями по протоколу службы коротких сообщений (SMS), программу обмена сообщениями по протоколу службы мультимедийных сообщений (MMS), программу обмена речевыми сообщениями, программу обмена видеосообщениями и т.д. В одном варианте осуществления, технологии автоматического ведения диалога могут описываться в отношении почтового приложения в качестве примера, а не ограничения. Конкретные реализации могут реализовывать технологии автоматического ведения диалога с другими приложениями обмена сообщениями и, тем не менее, по-прежнему находиться в рамках объема по вариантам осуществления.
Различные варианты осуществления могут быть направлены на технологии автоматического ведения диалога для приложения обмена сообщениями, такого как почтовое приложение. В общем, почтовое приложение дает возможность пользователям составлять, отправлять и принимать сообщения по системам электронной связи. В некоторых вариантах осуществления, описанные технологии могут быть реализованы посредством одного или более элементов клиент-серверной системы обмена почтовыми сообщениями. В таких вариантах осуществления, сервер может поддерживать множество клиентов обмена сообщениями, принимать запросы и данные от клиентов, обрабатывать запросы, сохранять данные и возвращать результаты обработки клиентам. Соответственно, одна или более технологий агрегирования и отображения элементов могут быть реализованы как признаки в рамках клиентских почтовых приложений, серверных почтовых приложений, включающих в себя почтовые приложения на основе веб-технологий, предоставляющие доступ к почтовым службам через веб-обозреватель и/или посредством других типов приложений, программ или услуг, которые взаимодействуют с электронной почтой.
В некоторых вариантах осуществления, одна или более технологий автоматического ведения диалога могут быть реализованы в рамках клиентского почтового приложения или программы, такой как MICROSOFT OFFICE OUTLOOK®, прикладное программное обеспечение от Корпорации Microsoft, Редмонд, Вашингтон. В таких вариантах осуществления, описанные технологии могут выполняться посредством клиентского почтового приложения либо в онлайновом, либо в оффлайновом режиме. В оффлайновом режиме клиентское почтовое приложение может выполнять одну или более технологий автоматического ведения диалога для локально сохраненных или кэшированных почтовых сообщений. Можно принимать во внимание, что описанные технологии могут быть реализованы посредством почтового клиента любого типа в соответствии с описанными вариантами осуществления, в том числе, без ограничения, клиентов согласно интерфейсу прикладного программирования для электронной почты (MAPI), клиентов по протоколу передачи гипертекста (HTTP), клиентов по потовому протоколу 3 (POP3), клиентов по протоколу доступа к Интернет-службе сообщений (IMAP или IMAP4), клиентов по сетевому протоколу передачи новостей (NNTP) и т.д.
Альтернативно или дополнительно, одна или более технологий автоматического ведения диалога могут быть реализованы как признаки в рамках серверного почтового приложения или программы, такой как MICROSOFT EXCHANGE SERVER® от Корпорации Microsoft, Редмонд, Вашингтон. Сервер может предоставлять функциональность электронной почты, ведения календаря, контактов и задач и поддержку доступа на основе веб-технологий и с мобильных устройств к информации, а также хранение данных. Сервер может содержать или обмениваться данными с хранилищем сообщений для сохранения элементов, включающих в себя почтовые сообщения и другие данные, в почтовых ящиках и папках и может предоставлять интерфейс для обмена данными с различными почтовыми клиентами и разрешения доступа к хранилищу сообщений. Сервер также может содержать или обмениваться данными с каталогом, содержащим информацию о пользователях из системной и конфигурационной информации, которая может использоваться посредством подсистемы передачи сообщений, чтобы выполнять различные операции передачи и направления для почтовых сообщений, предназначенных для получателей на сервере, другом сервере в этой организации и/или для получателей в Интернете или других систем обмена сообщениями.
В некоторых вариантах осуществления, сервер может поддерживать различные веб-службы, включающие в себя функциональность доступа на основе веб-технологий, доступа с мобильных устройств и синхронизации, приложения на основе информационных служб Интернета (IIS) и интерфейса прикладного программирования Интернет-сервера (ISAPI), предоставляющие службы SMTP, NNTP, IMAP4 и POP3, чтобы давать возможность Интернет-пользователям осуществлять доступ к данным обмена сообщениями по множеству протоколов доступа в Интернет и HTTP-протоколов, в том числе удаленный вызов процедур (RPC) по HTTP-связи. В некоторых реализациях, данные могут форматироваться как сжатые беспроводные двоичные XML-данные (WbXML), чтобы эффективно использовать полосу пропускания для мобильных клиентов. В дополнение к стандартным Интернет-протоколам, сервер также может поддерживать связь по собственным или нестандартным протоколам, когда используется посредством компании или другой организации.
Почтовое приложение может предоставлять пользователям возможность хранить сообщения в логических папках в рамках интерфейса, аналогичного интерфейсу, предоставленному посредством многих файловых систем. Можно принимать во внимание, что термин "папка" может ссылаться на любой набор элементов, тем не менее, сохраненных и/или представленных в пользовательском интерфейсе. Хотя некоторые операционные системы или приложения могут не использовать термин "папка" при ссылке на набор элементов, такие сценарии имеют намерение покрываться посредством вариантов осуществления, которые описывают и иллюстрируют папки.
Почтовое приложение также может давать возможность пользователям и/или логике группировать сохраненные сообщения в логические диалоги, чтобы формировать группу сообщений или цепочку диалога. Каждый диалог может содержать группу связанных сообщений, включающую в себя, например, корневое сообщение и ответы на корневое сообщение или друг на друга. Когда пользователь выбирает, чтобы компоновать сообщения посредством диалога, сообщения отображаются в пользовательском интерфейсе почтового приложения как список диалогов, которые могут группироваться по теме сообщения или цепочке диалога. Диалоги могут быть отсортированы по дате, а сообщения в рамках каждого диалога могут быть отсортированы на основе того, кто кому отвечает.
В некоторых случаях, сообщения диалога могут храниться в нескольких папках. Например, пользователи могут вручную организовывать сообщения в различные папки. Пользователи также могут задавать одно или более правил фильтрации для автоматического разделения почтовых сообщений по определенным папкам на основе отправителя, темы или других критериев. Помимо этого, ответное сообщение, отправляемое пользователем, может сохраняться в папке отправленных элементов пользователя.
Несмотря на удобство, предлагаемое посредством цепочек сообщений, некоторые почтовые приложения ограничивают операции для диалога отдельными элементами диалога. Например, пользователь может не хотеть участвовать в цепочке диалога, обсуждающей варианты обеда с некоторыми коллегами. Пользователю может требоваться удалять отдельные элементы диалога по мере того, как они поступают, чтобы сохранять свою папку входящих сообщений свободной. Такие операции могут быть трудоемкими и длительными для пользователя, в частности, с учетом возрастающих объемов почтовых сообщений, которые пользователь может принимать в любой день.
Чтобы разрешать эти и другие проблемы, различные варианты осуществления могут реализовывать различные технологии автоматического ведения диалога для приложения обмена сообщениями. Некоторые варианты осуществления, в частности, направлены на технологии автоматического ведения диалога, которые могут применяться по всей группе сообщений или цепочке диалога для приложения обмена сообщениями, такого как, например, почтовое приложение.
Один вариант осуществления, например, может содержать устройство, такое как вычислительное устройство, имеющее прикладную программу обмена сообщениями, такую как почтовая прикладная программа. Прикладная программа обмена сообщениями может содержать, помимо других элементов, модуль входящих сообщений, выполненный с возможностью принимать входящее сообщение. Прикладная программа обмена сообщениями также может содержать модуль идентификации диалогов, функционально соединенный с модулем входящих сообщений, при этом модуль идентификации диалогов выполнен с возможностью определять то, что входящее сообщение является частью цепочки диалога, и ассоциировать входящее сообщение с цепочкой диалога посредством задания свойства идентификатора диалога входящего сообщения как идентификатора диалога для цепочки диалога. Прикладная программа обмена сообщениями дополнительно может содержать модуль диспетчера диалогов, функционально соединенный с модулем идентификации диалогов, при этом модуль диспетчера диалогов выполнен с возможностью определять то, что правило диалога ассоциировано с цепочкой диалога, и применять правило диалога к входящему сообщению. Таким образом, пользователь должен устанавливать правило диалога один раз, и правило диалога автоматически применяется ко всем сохраненным сообщениям в цепочке диалога, а также новым входящим сообщениям, которые являются частью этой цепочки диалога. Как результат, пользователь может иметь расширенные возможности обмена сообщениями.
Более конкретно, модуль диспетчера диалогов реализует технологии автоматического ведения диалога в форме действий на уровне диалога, которые могут применяться по всей группе сообщений или цепочке диалога. Действия на уровне диалога типично затрагивают некоторые или все сообщения во всей цепочке диалога. В отличие от этого, действия на уровне элемента типично затрагивают один элемент сообщения. Примеры правил диалога могут включать в себя, но не только, правило диалога "всегда удалять", правило диалога "всегда перемещать", правило диалога "всегда категоризовать", в числе других. Это просто несколько примеров, и любое число действий на уровне диалога может быть реализовано для цепочки диалога требуемым образом для данной реализации. Варианты осуществления не ограничены этим контекстом.
Фиг. 1 иллюстрирует блок-схему для операционного окружения 100, подходящего для осуществления на практике различных вариантов осуществления. Операционное окружение 100 может содержать элементы, созданные для реализации посредством однообъектного окружения или многообъектного распределенного окружения. Каждый элемент может быть реализован как аппаратный элемент, программный элемент или любая комбинация вышеозначенного, как требуется для данного набора проектных параметров или ограничений производительности. Примеры аппаратных элементов могут включать в себя устройства, компоненты, процессоры, микропроцессоры, схемы, схемные элементы (к примеру, транзисторы, резисторы, конденсаторы, индукторы и т.п.), интегральные схемы, специализированные интегральные схемы (ASIC), программируемые логические устройства (PLD), процессоры цифровых сигналов (DSP), программируемую пользователем вентильную матрицу (FPGA), запоминающие устройства, логические вентили, регистры, полупроводниковые устройства, кристаллы, микросхемы, наборы микросхем и т.п. Примеры программных элементов могут включать в себя любые программные компоненты, программы, приложения, компьютерные программы, прикладные программы, системные программы, машинные программы, программное обеспечение операционной системы, промежуточное программное обеспечение, микропрограммное обеспечение, программные модули, процедуры, подпрограммы, функции, способы, интерфейсы, программные интерфейсы, интерфейсы прикладного программирования (API), наборы инструкций, вычислительный код, компьютерный код, сегменты кода, сегменты компьютерного кода, слова, значения, символы или любую комбинацию вышеозначенного.
При использовании в данном документе термины "система", "подсистема", "компонент" и "модуль" имеют намерение ссылаться на связанный с применением компьютера объект, содержащий аппаратные средства, комбинацию аппаратных средств и программного обеспечения, программного обеспечения или программное обеспечение в ходе выполнения. Например, компонент может быть реализован как процесс, запущенный на процессоре, процессор, жесткий диск, несколько накопителей хранения (оптического и/или магнитного носителя хранения данных), объект, исполняемый файл, поток выполнения, программа и/или компьютер. В качестве иллюстрации, как приложение, запущенное на сервере, так и сервер может быть компонентом. Один или более компонентов могут постоянно размещаться внутри процесса и/или потока выполнения, и компонент может быть локализован на компьютере и/или распределен между двумя и более компьютеров требуемым образом для данной реализации. Варианты осуществления не ограничены этим контекстом.
В проиллюстрированном варианте осуществления, показанном на фиг. 1, операционное окружение 100 может содержать, помимо других элементов, клиентское вычислительное устройство 110 и серверное вычислительное устройство 130. Вычислительные устройства 110, 130 могут быть реализованы с использованием любого подходящего электронного устройства, имеющего вычислительные возможности и возможность связи. Примеры для вычислительных устройств 110, 130 могут включать в себя, но не только, мобильное устройство, персональное цифровое устройство, мобильное вычислительное устройство, смартфон, сотовый телефон, переносной телефон, одностороннее устройство поискового вызова, двухстороннее устройство поискового вызова, устройство обмена сообщениями, компьютер, персональный компьютер (PC), настольный компьютер, портативный компьютер, ноутбук, карманный компьютер, сервер, массив серверов или ферма серверов, веб-сервер, сетевой сервер, Интернет-сервер, рабочую станцию, миникомпьютер, мэйнфрейм, суперкомпьютер, сетевое устройство, устройство для доступа на основе веб-технологий, распределенную вычислительную систему, многопроцессорные системы, процессорные системы, бытовую электронную аппаратуру, программируемую бытовую электронную аппаратуру, телевизионный приемник, цифровой телевизионный приемник, абонентскую приставку, точку беспроводного доступа, базовую станцию, абонентскую станцию, мобильный абонентский центр, контроллер радиосети, маршрутизатор, концентратор, шлюз, мост, коммутатор, машину или комбинацию вышеозначенного. Хотя операционное окружение 100, как показано на фиг. 1, имеет ограниченное число узлов в определенной топологии, можно принимать во внимание, что операционное окружение 100 может включать в себя большее или меньшее число узлов в альтернативных топологиях требуемым образом для данной реализации.
Вычислительные устройства 110, 130 могут функционально соединяться через сеть 118 и соответствующие среды беспроводной или проводной связи. Вычислительные устройства 110, 130 могут координировать операции между собой. Координация может заключать в себе однонаправленный или двунаправленный обмен информацией. Например, вычислительные устройства 110, 130 могут передавать информацию по сети 118. Сеть 118 может содержать сеть с коммутацией пакетов, сеть с коммутацией каналов или комбинацию вышеозначенного. Информация может быть реализована как сообщения с данными, отправляемые через различные сетевые интерфейсы. Примерные сетевые интерфейсы включают в себя параллельные интерфейсы, последовательные интерфейсы и интерфейсы шин.
Вычислительные устройства 110, 130 могут реализовывать соответствующие вычислительные системы 120, 120a. Вычислительные системы 120, 120a могут включать в себя различные вычислительные элементы, такие как один или более процессоров, сопроцессоров, запоминающих устройств, наборов микросхем, контроллеров, периферийных устройств, интерфейсов, генераторов, синхронизирующих устройств, видеокарт, звуковых карт, мультимедийных компонентов ввода-вывода и т.д. Вычислительные системы 120, 120a могут реализовывать, помимо других элементов, соответствующие клиентские прикладные программы 122 и серверные прикладные программы 132. В примере, проиллюстрированном на фиг. 1, клиентские прикладные программы 122 могут содержать клиентское почтовое приложение 124 и другие приложения 126, а серверные прикладные программы 132 могут содержать серверное почтовое приложение 134 и другие приложения 136. В различных реализациях, клиентское почтовое приложение 124 и/или серверное почтовое приложение 134 может выполнять одну или более технологий агрегирования и отображения элементов в соответствии с описанными вариантами осуществления.
Приложения 126 могут содержать один или более типов прикладных программ, поддерживающих работу клиентского вычислительного устройства 110. Примерные прикладные программы могут включать в себя, без ограничения, приложение веб-обозревателя, телефонное приложение (к примеру, сотовое, VoIP, PTT), сетевое приложение, приложение обмена сообщениями (к примеру, IM, SMS, MMS), приложение для работы с календарем, приложение для управления контактами, приложение для управления задачами, приложение обработки текстов, приложение электронных таблиц, приложение управления базами данных, мультимедийное приложение (к примеру, видеопроигрыватель, аудиопроигрыватель, мультимедийный проигрыватель, цифровую камеру, видеокамеру, управление мультимедиа), приложение предоставления услуг на основе информации о местоположении (LBS), игровое приложение и т.д.
Приложения 136 могут содержать один или более типов прикладных программ, поддерживающих работу серверного вычислительного устройства 130. В различных реализациях, приложения 136 могут включать в себя серверные прикладные программы, поддерживающие работу серверного вычислительного устройства 130 как почтового сервера, веб-сервера и/или файлового сервера в соответствии с описанными вариантами осуществления. В некоторых случаях, одно или более приложений 136 может содержать сеть, сервер или версию на основе веб-технологий одного или более приложений 126. В таких случаях, приложения 126, 136 могут работать отдельно, например, когда клиентское вычислительное устройство 110 находится оффлайн, или могут взаимодействовать, когда клиентское вычислительное устройство 110 находится онлайн и подключено к серверному вычислительному устройству 130 через сеть 118.
Вычислительные системы 120, 120a также могут содержать соответствующие операционные системы 128, 138, подходящие для управления работой клиентского вычислительного устройства 110 и серверного вычислительного устройства 130. В некоторых вариантах осуществления, операционные системы 128, 138 могут содержать соответствующие клиентские и серверные версии операционной системы, такой как операционная система MICROSOFT WINDOWS® от Корпорации Microsoft, Редмонд, Вашингтон. Можно принимать во внимание, что другие подходящие операционные системы могут использоваться для клиентского вычислительного устройства 110 и/или серверного вычислительного устройства 130.
Вычислительные устройства 110, 130 могут содержать или обмениваться данными с хранилищем данных для сохранения элементов, таких как почтовые сообщения и другие данные в почтовых ящиках и папках. Со ссылкой на фиг. 1, хранилище данных может быть реализовано посредством базы 140 данных. В таких реализациях серверное вычислительное устройство 130 может предоставлять клиентскому вычислительному устройству 110 доступ к базе 140 данных, когда соединяется через сеть 118. Альтернативно или дополнительно, клиентское вычислительное устройство 110 может непосредственно осуществлять доступ к базе 140 данных через сеть 118. Хотя показаны как отдельные элементы в целях иллюстрации, можно принимать во внимание, что в некоторых вариантах осуществления, база 140 данных может являться частью клиентского вычислительного устройства 110 и/или серверного вычислительного устройства 130. Также можно принимать во внимание, что хранилище данных может постоянно размещаться на клиентском вычислительном устройстве 110, серверном вычислительном устройстве 130 и/или в базе 140 данных, и что, в некоторых вариантах осуществления, клиентское вычислительное устройство 110, серверное вычислительное устройство 130 и/или база 140 данных могут хранить соответствующие хранилища данных, которые могут синхронизироваться друг с другом.
В дополнение к соответствующим вычислительным системам 120, 120a, вычислительные устройства 110, 130 могут реализовывать соответствующую систему 150, 150a связи. Системы 150, 150a связи могут включать в себя различные элементы обмена данными, такие как передающее устройство, приемное устройство, приемо-передающее устройство, радиостанция, сетевой интерфейс, процессор полосы модулирующих частот, антенна, усилители, фильтры и т.д. В одном варианте осуществления, например, вычислительные устройства 110, 130 могут быть реализованы с использованием вычислительной архитектуры и архитектуры связи, как описано со ссылкой на фиг. 2.
Фиг. 2 предоставляет иллюстративную архитектуру для вычислительного устройства 200, подходящую для осуществления на практике различных вариантов осуществления. Вычислительное устройство 200 может представлять, например, клиентское вычислительное устройство 110 и/или серверное вычислительное устройство 130. Как показано, вычислительное устройство 200 иллюстрирует традиционную вычислительную архитектуру для персонального или серверного компьютера, включающего в себя систему обработки, содержащую процессор 204 и системное запоминающее устройство 206. Системное запоминающее устройство 206 может включать в себя, помимо других типов запоминающего устройства, оперативное запоминающее устройство (RAM) 208 и постоянное запоминающее устройство (ROM) 210. Система ввода-вывода, такая как базовая система ввода-вывода (BIOS), может реализовывать процедуры, чтобы помогать в передаче информации между элементами в рамках вычислительного устройства 200, к примеру, во время операций запуска, с использованием логики, сохраненной в ROM 210. Системная шина 212 функционально соединяет все элементы вычислительного устройства 200, чтобы упрощать операции передачи информации и обработки данных.
Вычислительное устройство 200 дополнительно включает в себя устройство 214 хранения данных большой емкости для сохранения операционной системы, такой как операционная система 128, а также других программных модулей 216 и программных данных 218. Устройство 214 хранения данных большой емкости также может сохранять различные прикладные программы, как подробнее описано ниже.
Устройство 214 хранения данных большой емкости подключается к процессору 204 через контроллер устройства хранения данных большой емкости (не показан), подключенный к системной шине 212. Устройство 214 хранения данных большой емкости и его ассоциированные машиночитаемые носители предоставляют энергонезависимое хранилище для вычислительного устройства 200. Хотя описание машиночитаемых носителей, содержащееся в данном документе, ссылается на устройство хранения данных большой емкости, такое как жесткий диск или накопитель CD-ROM, специалисты в данной области техники должны принимать во внимание, что машиночитаемыми носителями могут быть любыми доступные носители, к которым может осуществлять доступ вычислительное устройство 200. В качестве примера, а не ограничения, машиночитаемые носители могут содержать компьютерные носители хранения данных и среды связи. Компьютерные носители хранения включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерный носитель хранения данных включает в себя (но не только) запоминающее устройство по технологии RAM, ROM, EPROM, EEPROM, флэш-память или другой технологии полупроводниковых запоминающих устройств, CD-ROM, DVD или другое оптическое устройство хранения, магнитные кассеты, магнитную ленту, устройство хранения на магнитных дисках или другие магнитные устройства хранения, либо любой другой носитель, который может использоваться для того, чтобы сохранять требуемую информацию, и к которому можно осуществлять доступ посредством компьютера.
Согласно различным вариантам осуществления, вычислительное устройство 200 может работать в сетевом окружении с использованием логических соединений с удаленными компьютерами через сеть 118, которой, в некоторых реализациях, может быть сеть по протоколу управления передачей (TCP) и Интернет-протоколу (IP), к примеру, Интернет. Вычислительное устройство 200 может подключаться к сети 118 через сетевой интерфейс 220 (к примеру, проводной или беспроводной сетевой интерфейс), подключенный к системной шине 212. Можно принимать во внимание, что сеть 118 может содержать любой тип сети в соответствии с описанными вариантами осуществления, в том числе, без ограничения, глобальную вычислительную сеть (WAN), локальную вычислительную сеть (LAN) и/или сотовую телефонную сеть, и что сетевой интерфейс 220 может поддерживать различные транспортные уровни, такие как GPRS, CDMA 1xRTT, IEEE 802.11 и другие, для подключения к множеству сетей и/или удаленных компьютерных систем.
Вычислительное устройство 200 может включать в себя контроллер 222 ввода-вывода для приема и обработки ввода от ряда устройств 224 ввода. Пользователь может входить в команды и информацию в вычислительное устройство 200 через различные устройства 224 ввода, такие как клавиатура и указательное устройство, такие как мышь, шаровой манипулятор или сенсорная панель. Другие устройства ввода могут включать в себя микрофон, джойстик, игровой планшет, спутниковую антенну, сканер и т.п. Устройства 224 ввода могут подключаться к процессору 204 через контроллер 222 ввода-вывода, который подключается к системной шине 212, но могут подключаться посредством других интерфейсов и шинных структур, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). Контроллер 222 ввода-вывода также может предоставлять вывод в различные устройства 224 вывода, такие как монитор или другой тип дисплейного устройства, которое подключается через контроллер 222 ввода-вывода к системной шине 212. В различных реализациях, дисплейное устройство может представлять один или более пользовательских интерфейсов (UI) для пользователя в соответствии с описанными вариантами осуществления. В дополнение к дисплейному устройству, контроллер 222 ввода-вывода может предоставлять вывод на принтер, динамики и другие периферийные устройства.
Как упомянуто выше, определенное число программных модулей и файлов данных может сохраняться в устройстве 214 хранения данных большой емкости и RAM 208 вычислительного устройства 200. В примере, проиллюстрированном на фиг. 2, устройство 214 хранения данных большой емкости и RAM 208 могут сохранять операционную систему 128, а также одну или более клиентских прикладных программ 122, включающих в себя клиентское почтовое приложение 124 и другие приложения 126. Можно принимать во внимание, что в некоторых реализациях, устройство 214 хранения данных большой емкости и RAM 208 могут сохранять операционную систему 138, а также одну или более серверных прикладных программ 132, включающих в себя серверное почтовое приложение 134 и другие приложения 136.
Согласно различным вариантам осуществления, клиентское почтовое приложение 124 и/или серверное почтовое приложение 134 может реализовывать одну или более технологий автоматического ведения диалога. В одном варианте осуществления, например, клиентское почтовое приложение 124 и/или серверное почтовое приложение 134 может быть реализовано так, как описано со ссылкой на фиг. 3.
Фиг. 3 иллюстрирует один вариант осуществления почтового приложения 300, подходящего для осуществления на практике различных вариантов осуществления. Со ссылкой на фиг. 1 и 2, в некоторых реализациях, почтовое приложение 300 может работать в качестве клиентского почтового приложения 124 как одна из клиентских прикладных программ 122, которые постоянно размещаются на вычислительном устройстве 110. Альтернативно или дополнительно, почтовое приложение 300 может работать в качестве серверного почтового приложения 134 как одна из серверных прикладных программ 132, которые постоянно размещаются на вычислительном устройстве 130. Дополнительно, одна или более частей почтового приложения 300 могут быть распределены между клиентским почтовым приложением 124 и серверным почтовым приложением 134. Одна или более частей почтового приложения 300 также могут быть реализованы посредством прикладных программ в RAM 208 вычислительного устройства 200, на другом удаленном компьютере или в любом другом варианте, как должно быть очевидным специалистам в области техники компьютерного программного обеспечения.
Как показано, почтовое приложение 300 может включать в себя хранилище 310 элементов. Хотя хранилище 310 элементов показано как часть почтового приложения 300 в целях иллюстрации, а не ограничения, можно принимать во внимание, что хранилище 310 элементов может постоянно размещаться в различных местоположениях в соответствии с описанными вариантами осуществления. Например, хранилище 310 элементов может постоянно размещаться на клиентском вычислительном устройстве 110, серверном вычислительном устройстве 130 и/или в базе 140 данных. В качестве одного неограничивающего примера, хранилище 310 элементов почтового приложения 300 может постоянно размещаться в программных данных 218 вычислительного устройства 200 или в базе данных, и/или в одном или более файлов. В качестве другого неограничивающего примера, хранилище 310 элементов может постоянно размещаться полностью или частично в каталоге, указываемом пользователем в файловой системе операционной системы, такой как операционная система 128 или операционная система 138. В качестве другого неограничивающего примера, хранилище 310 элементов может постоянно размещаться полностью или частично в базе 140 данных, к которой может осуществляться доступ или для которой может выступать в качестве хоста серверное вычислительное устройство 130.
В примере, проиллюстрированном на фиг. 3, хранилище 310 элементов включает в себя папку 312 входящих сообщений, папку-корзину 314, папку 316 отправленных элементов, одну или более других папок 318 почтовых сообщений и один или более архивных файлов 320. Можно принимать во внимание, что термин "папка" или "файл" может ссылаться на любой набор элементов, тем не менее, сохраненных и/или представленных в пользовательском интерфейсе. Хотя некоторые операционные системы или приложения могут не использовать термин "папка" при ссылке на набор элементов, такие сценарии имеют намерение покрываться посредством вариантов осуществления, которые описаны и иллюстрируют папки. Также можно принимать во внимание, что другие разновидности папок и файлы могут быть реализованы в соответствии с описанными вариантами осуществления.
Почтовое приложение 300 может предоставлять пользователю возможность сохранять элементы в определенных логических папках, таких как папка 312 входящих сообщений, папка-корзина 314, папка 316 отправленных элементов и одна или более других папок 318 почтовых сообщений, к примеру, созданная пользователем папка для сохранения элементов, ассоциированных с определенным отправителем или получателем, темой (к примеру, проектом), содержимым (к примеру, текстом, вложением) или другими критериями. Пользователь может взаимодействовать с почтовым приложением 300 и вручную организовывать элементы в различные папки. Пользователь также может задавать одно или более правил фильтрации для автоматического разделения элементов по определенным папкам на основе отправителя, получателя, темы, содержимого или других критериев. Помимо этого, ответное сообщение, отправляемое пользователем в ответ на другие сообщения, может храниться в папке 316 отправленных элементов. Пользователи также могут сохранять устаревшие элементы в одном или более архивных файлов 320, которые могут быть реализованы как один или более файлов с расширением персональной таблицы хранения (.pst) на локальном жестком диске пользователя и/или любая другая подходящая структура архивных данных.
Почтовое приложение 300 может давать возможность пользователю группировать сохраненные сообщения в логические диалоги. Каждый диалог может содержать группу связанных элементов, включающую в себя, например, корневое сообщение и ответы на корневое сообщение или друг на друга. В некоторых случаях, связанные элементы диалога могут сохраняться в нескольких ячейках хранения, к примеру, в двух или более из папки 312 входящих сообщений, папки-корзины 314, папки 316 отправленных элементов, других папок 318 почтовых сообщений и архивных файлов 320.
Как показано, почтовое приложение 300 может включать в себя логику 330 управления элементами, которая может отвечать за выполнение некоторых или всех технологий агрегирования и отображения элементов, описанных в данном документе. В примере, проиллюстрированном на фиг. 3, логика 330 управления элементами включает в себя различные модули, причем каждый модуль представляет дискретные наборы логики для различных операций, выполняемых посредством логики 330 управления элементами.
Логика 330 управления элементами также может содержать другую логику для управления почтовым приложением 300, которая может поддерживать различные другие операции и возможности. Примерные операции и возможности могут включать в себя операции отправки и приема, операции сохранения и организации, операции фильтрации, операции сортировки, операции поиска, операции предварительного просмотра, возможности для синхронизации, возможности для осуществления доступа к данным обмена сообщениями, в том числе доступ на основе веб-технологий и доступ с мобильных устройств, возможности для обнаружения онлайнового/оффлайнового состояния пользователей, возможности для интегрирования почтового приложения 300 с функциональностью календаря, контактов и задач и/или любые другие признаки в соответствии с описанными вариантами осуществления.
В некоторых реализациях, логика 330 управления элементами может постоянно размещаться в рамках почтового приложения 300 как часть клиентских прикладных программ 122 на клиентском вычислительном устройстве 110 или как часть серверных прикладных программ 132 на серверном вычислительном устройстве 130. Тем не менее, можно принимать внимание, что логика 330 управления элементами альтернативно или дополнительно может осуществляться как машиноисполняемые инструкции, сохраненные на одном или более типов машиночитаемых носителей хранения данных во множестве местоположений в соответствии с описанными вариантами осуществления.
Хотя пример, проиллюстрированный на фиг. 3, включает в себя конкретный набор логики, можно принимать во внимание, что логика 330 управления элементами предоставляет примерную реализацию общей функциональности. Следует понимать, что последовательность логики не обязательно должна выполняться в представленном порядке, если не указано иное. Помимо этого, хотя логика 330 управления элементами может описываться как выполняющая определенную последовательность этапов, другие последовательности этапов также могут выполняться согласно альтернативным вариантам осуществления. Кроме того, некоторые отдельные этапы, выполняемые посредством логики 330 управления элементами, могут включать в себя несколько подэтапов, которые могут выполняться в различных последовательностях надлежащим образом для конкретного этапа. Кроме того, дополнительные этапы могут выполняться, или некоторые этапы могут опускаться посредством логики 330 управления элементами в зависимости от конкретной реализации.
В проиллюстрированном варианте осуществления, показанном на фиг. 3, логика 330 управления элементами может подразделяться на модуль 332 входящих сообщений, модуль 334 идентификации диалогов, модуль 336 диспетчера диалогов, модуль 338 извлечения сообщений и модуль 340 исходящих сообщений. Следует принимать во внимание, что эти модули могут совместно использовать одну или более общих инструкций. Кроме того, следует принимать во внимание, что логика 330 управления элементами может включать в себя другие модули 342 сообщений в дополнение к проиллюстрированным модулям, чтобы предоставлять дополнительную функциональность работы с сообщениями. Например, логика управления элементами может включать в себя модуль сообщений, который отфильтровывает почтовые сообщения со "спамом".
Когда выполняется посредством процессора 204, модуль 332 входящих сообщений взаимодействует с операционной системой 128, чтобы принимать входящие почтовые сообщения, которые принимаются от сети 118 посредством сетевого интерфейса 220. Например, модуль 332 входящих сообщений может использовать интерфейс, предоставленный посредством операционной системы 128, чтобы конфигурировать обратный вызов, который инструктирует операционной системе 128 предоставлять входящие почтовые сообщения в модуль 332 входящих сообщений. Когда модуль 332 входящих сообщений принимает входящее почтовое сообщение, модуль 332 входящих сообщений может выполнять одну или более операций обработки почтовых сообщений для входящего почтового сообщения. Например, модуль 332 входящих сообщений может определять то, включает или нет входящий почтовый адрес в себя свойство "кому", свойство "копия" или свойство "скрытая копия", которое указывает почтовый адрес, ассоциированный с активной учетной записью, поддерживаемой посредством вычислительных устройств 110, 130. В этом примере, модуль 332 входящих сообщений может формировать исходящее сообщение "возврат", когда свойство "кому", свойство "копия" или свойство "скрытая копия" входящего почтового сообщения указывают почтовый адрес, ассоциированный с неактивной учетной записью, которая ранее поддержана посредством вычислительных устройств 110, 130. После того, как модуль 332 входящих сообщений выполняет операции обработки почтовых сообщений для входящего почтового сообщения, модуль 332 входящих сообщений может предоставлять входящее почтовое сообщение в модуль 334 идентификации диалогов.
Логика 330 управления элементами может включать в себя модуль 334 идентификации диалогов, функционально соединенный с модулем 332 входящих сообщений. Модуль 334 идентификации диалогов выполнен с возможностью определять то, что входящее сообщение является частью цепочки диалога. Модуль 334 идентификации диалогов ассоциирует входящее сообщение с цепочкой диалога посредством задания свойства идентификатора диалога входящего сообщения как идентификатора диалога для цепочки диалога.
Когда выполняется посредством процессора 204, модуль 334 идентификации диалогов принимает входящие почтовые сообщения от модуля 332 входящих сообщений и пытается идентифицировать существующий диалог, ассоциированный с входящим почтовым сообщением. Если модуль 334 идентификации диалогов не может успешно идентифицировать существующий диалог, ассоциированный с входящим почтовым сообщением, модуль 334 идентификации диалогов может ассоциировать входящее почтовое сообщение с новым диалогом.
Модуль 334 идентификации диалогов может определять то, является или нет сообщение частью существующего диалога, рядом различных способов. В одном варианте осуществления, например, модуль 334 идентификации диалогов выполняет алгоритм, который ассоциирует входящее почтовое сообщение с существующим диалогом, когда одно или более следующих условий возникает:
(1) Входящее почтовое сообщение включает в себя свойство "в ответ на", которое указывает значение, которое соответствует значению, указываемому посредством свойства "идентификатор сообщения" сохраненного сообщения, ассоциированного с существующим диалогом;
(2) Входящее почтовое сообщение включает в себя свойство "ссылки", которое указывает значение, которое соответствует значению, указываемому посредством свойства "идентификатор сообщения" сохраненного сообщения, ассоциированного с существующим диалогом; и
(3) Нормализованное свойство "тема" входящей электронной почты соответствует нормализованному свойству "тема" сохраненного сообщения, ассоциированного с существующим диалогом.
Возникновение одного из этих условий может представлять примерный набор предварительных условий для предоставления возможности модулю 334 идентификации диалогов ассоциировать входящее почтовое сообщение с существующим диалогом. Тем не менее, могут быть реализации, в которых могут возникать дополнительные условия до того, как модуль 334 идентификации диалогов ассоциирует входящее почтовое сообщение с существующим диалогом. Например, одна реализация может ассоциировать принимаемое сообщение с существующим диалогом, когда условие (2) возникает, только если условие (1) не возникает.
Дополнительно или альтернативно, модуль 334 идентификации диалогов не выполняет действия, чтобы ассоциировать почтовые сообщения с диалогами. Вместо этого, модуль 334 идентификации диалогов может выполнять действия, чтобы ассоциировать почтовые сообщения с диалогами. Это включает в себя как входящие почтовые сообщения, так и исходящие почтовые сообщения.
После того, как модуль 334 идентификации диалогов ассоциирует входящее почтовое сообщение с существующим диалогом или ассоциирует входящее почтовое сообщение с новым диалогом, модуль 334 идентификации диалогов может сохранять в базе 350 данных сообщений входящее почтовое сообщение наряду с идентификатором диалога, который идентифицирует диалог, ассоциированный с входящим почтовым сообщением. В одной реализации, база 350 данных сообщений включает в себя таблицу, которая включает в себя строку для каждого почтового сообщения и столбец для каждого свойства почтового сообщения. Например, таблица может включать в себя столбец для свойства "кому" почтового сообщения, свойства "от кого" почтового сообщения, свойства "копия" почтового сообщения, свойства "дата" почтового сообщения, свойства "тема" почтового сообщения, свойства "тело" почтового сообщения и т.д. Кроме того, в этом случае, таблица может включать в себя столбец для идентификатора диалога, который идентифицирует диалог, ассоциированный с почтовым сообщением. Пример предоставлен в таблице 1 следующим образом:
Таблица 1
Кому От кого Тема Тело Идентификатор диалога ...
jones@microsoft.com smith@microsoft.com Офис в Атланте закрывается Сегодня офис в Атланте закрывается... 53713
ybara@microsoft.com barney@microsoft.com Обедаем сегодня? Хочу сходить на обед в полдень... 25415
barney@microsoft.com ybara@microsoft.com RE: Обедаем сегодня? Конечно, куда хочешь пойти? 25415
ybara@microsoft.com barney@microsoft.com RE: RE: Обедаем сегодня? Давай сходим в Mario's... 25415
Следует принимать во внимание, что таблица может включать в себя столбцы для многих других свойств почтовых сообщений. Эти другие свойства могут включать в себя свойство "X-MimeOLE", свойство "класс содержимого", свойство "версия MIME", свойство "тип содержимого", свойств "кодирование передачи содержимого", свойство "дата", свойство "идентификатор сообщения", свойство "X-MS-Has-Attach", свойство "X-MS-TNEF-Correlator", свойство "X-Priority", свойство "приоритет", свойство "важность", свойство "копия", свойство "скрытая копия" и т.д. Кроме того, легко можно заметить, что таблица 1 включает в себя последовательность почтовых сообщений, передаваемых между пользователем, ассоциированным с почтовым адресом "ybara@microsoft.com", и пользователем, ассоциированным с почтовым адресом "barney@microsoft.com", относительно того, следует или нет идти на обед. Следует отметить, что эти почтовые сообщения имеют один идентификатор диалога, приведенный в свойствах "идентификатор диалога". Таким образом, идентификаторы диалогов свойств "идентификатор диалога" этих почтовых сообщений указывают, что эти почтовые сообщения ассоциированы с общим диалогом.
Логика 330 управления элементами может включать в себя модуль 338 извлечения сообщений, функционально соединенный с модулем 336 диспетчера диалогов. Когда выполняется посредством процессора 204, модуль 338 извлечения сообщений предоставляет возможность пользователям извлекать почтовые сообщения, сохраненные в базе 350 данных сообщений. Когда почтовое приложение 300 реализуется посредством серверного вычислительного устройства 130, например, модуль 338 извлечения сообщений может принимать периодические запросы от клиентского почтового приложения 124 на клиентском вычислительном устройстве 110, чтобы извлекать новые сообщения, которые указывают почтовый адрес, ассоциированный с пользователем клиентского вычислительного устройства 110. В ответ на такие запросы модуль 338 извлечения сообщений может идентифицировать все новые почтовые сообщения в базе 350 данных сообщений, которые ранее не отправлены в клиентское вычислительное устройство 110. Если модуль 338 извлечения сообщений идентифицирует все такие новые почтовые сообщения, модуль 338 извлечения сообщений может отправлять идентифицированные почтовые сообщения, наряду с идентификаторами диалогов почтовых сообщений, в клиентское вычислительное устройство 110. После приема идентифицированных почтовых сообщений клиентское почтовое приложение на клиентском вычислительном устройстве 110 может представлять вид пользовательского интерфейса, в котором идентифицированные почтовые сообщения, наряду с ранее извлеченными почтовыми сообщениями, группируются по диалогу, с которым ассоциируются почтовые сообщения. Например, клиентское вычислительное устройство 110 может представлять вид пользовательского интерфейса, в котором почтовые сообщения, которые ассоциированы с диалогом, представляются как деревья почтовых сообщений. В другом случае, клиентское вычислительное устройство 110 может представлять интерфейс, который включает в себя отдельные списки почтовых сообщений для каждого диалога.
Логика 330 управления элементами может включать в себя модуль 340 исходящих сообщений, функционально соединенный с модулем 338 извлечения сообщений. Когда выполняется посредством процессора 204, модуль 340 исходящих сообщений предоставляет возможность пользователям отправлять исходящие почтовые сообщения. Например, модуль 340 исходящих сообщений может принимать запрос от клиентского почтового приложения 124 на клиентском вычислительном устройстве 110, чтобы отправлять исходящее почтовое сообщение. В этом примере, модуль 340 исходящих сообщений может ассоциировать исходящее почтовое сообщение с идентификатором диалога и включать этот идентификатор диалога в исходящее почтовое сообщение. После того, как модуль 340 исходящих сообщений ассоциирует исходящее почтовое сообщение с идентификатором диалога и включает этот идентификатор диалога в исходящее почтовое сообщение как свойство "идентификатор диалога" почтового сообщения, модуль 340 исходящих сообщений может инструктировать операционной системе 128 отправлять исходящее почтовое сообщение по сети 118.
Логика 330 управления элементами может включать в себя модуль 336 диспетчера диалогов, функционально соединенный с модулем 334 идентификации диалогов. Модуль 336 диспетчера диалогов, в общем, может быть выполнен с возможностью реализовывать различные технологии автоматического ведения диалога. Модуль 336 диспетчера диалогов реализует технологии автоматического ведения диалога в форме действий на уровне диалога, которые могут применяться по всей группе сообщений или цепочке диалога, управляемой посредством почтового приложения 300. Действия на уровне диалога типично затрагивают некоторые или все сообщения во всей цепочке диалога. В отличие от этого, действия на уровне элемента типично затрагивают один элемент сообщения.
Один из основных принципов помощи пользователям уменьшать объем служебной информации с функциональностью ведения диалогов состоит в предоставлении им простого способа оперировать с моделью диалогов. Модель диалогов теперь обоснованно представляет группу сообщений, с которыми взаимодействует пользователь. Предусмотрено две основных группы действий, которые должна поддерживать новая модель диалогов. Во-первых, модель диалогов продвигает то, что раньше было действиями уровня элемента, на уровень диалога и вводит новый набор действий специально для элементов диалога. Продвижение действий на уровне элемента заключается в пакетировании действий, которые ранее выполнялись по отдельности для сообщений, таких как "установить флаг", "категоризировать", "назначить" и т.д., так что пользователь задает одно правило диалога для всего диалога. Например, пользователь может устанавливать флаг для цепочки диалога и использовать его, чтобы легко устанавливать флаг для последнего сообщения в цепочке диалога. Кроме того, наличие видов уровня диалога дает возможность почтовому приложению 300 вводить вторую категорию действий, в частности, действия, которые оперируют конкретно с самой цепочкой диалога. Это набор операций, которые используют семантику "диалога", к примеру, правила диалога "всегда удалять" или "всегда перемещать".
Модуль 336 диспетчера диалогов выполнен с возможностью создавать правило диалога для цепочки диалога. Оператор или пользователь может создавать правило диалога для цепочки диалога посредством выбора одного или более сообщений из цепочки диалога и назначения правила диалога одному или более сообщений. Правило диалога задает набор действий на уровне диалога, чтобы выполнять для существующих и будущих сообщений, имеющих общее свойство идентификатора диалога для цепочки диалога. Существующие сообщения могут храниться в базе 350 данных сообщений. Будущие сообщения могут включать в себя новые входящие сообщения для почтового приложения 300, принимаемый от удаленного устройства по сети 118 и сетевому интерфейсу 220. Некоторые примеры правил диалога включают в себя, но не только, правило диалога "всегда удалять", правило диалога "всегда перемещать", диалог "всегда категоризовать", в числе других. Каждое из этих правил диалога описывается дополнительно ниже.
Как только модуль 336 диспетчера диалогов создает правило диалога для цепочки диалога, модуль 336 диспетчера диалогов сохраняет правило диалога в таблице действий в диалоге (CAT). CAT - это новая таблица, созданная для того, чтобы хранить информацию, требуемую для того, чтобы управлять действиями на уровне диалога. Именно в CAT "объект" диалога получает текущее действие, ассоциированное с ним. Это таблица в PST, которая содержит запись для каждого диалога, который имеет текущее действие или набор действий. Базовая структура CAT показана в таблице 2 следующим образом:
Таблица 2
Пример... Идентификатор диалога Всегда удалять Всегда перемещать Категоризировать Срок истечения
Да/Нет Да/Нет Назначение Да/Нет Категории
Всегда удалять 1 Да Да Удаленные элементы 11:08:55
6/8/07
Всегда перемещать 2 Да Contoso 13:40:51
6/9/07
Всегда категоризировать 3 Да Личное, семья 07:01:11
6/10/07
Как показано в таблице 2, CAT может содержать идентификатор диалога, параметр ("Да" или "Нет"), чтобы указывать, применяется или нет правило диалога к идентификатору диалога, и информацию, требуемую для того, чтобы реализовывать данное правило, такую как целевая папка для правила диалога "всегда перемещать" или имя категории для правила диалога "всегда категоризировать". CAT также предоставляет дату и время истечения, чтобы указывать, когда данное правило диалога должно действовать. Каждый раз, когда новое входящее сообщение поступает в модуль 332 входящих сообщений, и модуль 334 идентификации диалогов идентифицирует входящее сообщение как часть цепочки диалога, модуль 336 диспетчера диалогов обращается к CAT, которая выполняет последующие операции обработки сообщений для входящего сообщения в соответствии с различными правилами диалога, ассоциированными с цепочкой диалога.
Модуль 336 диспетчера диалогов выполнен с возможностью создавать правило диалога "всегда удалять", чтобы автоматически направлять входящее сообщение в папку удаленных элементов. Правило диалога "всегда удалять" - это признак опытного пользователя, что дает возможность пользователю автоматически перемещать новые элементы, которые поступают в диалог, в папку удаленных элементов, тем самым исключая входящее сообщение из папки входящих сообщений. Пользователь может создавать правило диалога "всегда удалять" посредством выбора элемента пользовательского интерфейса, такого как кнопка пользовательского интерфейса в модульной ленте в пользовательском интерфейсе.
Когда пользователь выбирает один элемент диалога, к примеру, сообщение для диалога, чтобы выделять один элемент диалога, и выбирает кнопку пользовательского интерфейса для "всегда удалять", модуль 336 диспетчера диалогов инициирует операции, чтобы создавать правило диалога "всегда удалять". Модуль 336 диспетчера диалогов сначала определяет то, имеет или нет диалог предварительно установленное существующее правило диалога "всегда удалять". Это может быть выполнено посредством проверки свойства элемента диалога, чтобы определять то, имеет или нет родительский элемент диалога текущее действие, ассоциированное с ним. Это свойство задается для сообщения, когда CAT-обработка осуществляется. Модуль 336 диспетчера диалогов формирует вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 3:
Таблица 3
Предлагаемая диалоговая строка Переключатели
Это должно перемещать текущие элементы в этом диалоге и все новые элементы, которые поступают, в папку удаленных элементов.
Нажмите OK, чтобы игнорировать этот диалог.
ОК
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь нажимает [OK], все отдельные сообщения в текущей папке для диалога перемещаются в папку удаленных элементов. Запись создается в CAT для этого диалога с использованием его PR_CONVERSATION_ID, если он еще не существует. Новые элементы диалога, которые поступают в этот диалог и совпадают с PR_CONVERSATION_ID, автоматически перемещаются в папку удаленных элементов. Эта логика подчиняется критериям истечения, заданным в CAT.
Когда несколько элементов диалога выделены, и пользователь выбирает кнопку пользовательского интерфейса для "всегда удалять", модуль 336 диспетчера диалогов инициирует операции, чтобы создавать правило диалога "всегда удалять". Модуль 336 диспетчера диалогов сначала определяет то, является или нет текущая папка для выбранных элементов диалога папкой удаленных элементов. Если нет, модуль 336 диспетчера диалогов формирует вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 4:
Таблица 4
Предлагаемая диалоговая строка Переключатели
Это должно перемещать текущие элементы в выбранные диалоги и разрешать новым элементам, которые поступают в них, - в папку удаленных элементов.
Нажмите OK, чтобы игнорировать эти диалоги.
ОК
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь нажимает [OK], все отдельные сообщения в текущей папке для выбранных диалогов перемещаются в папку удаленных элементов. Запись создается в CAT для каждого из диалогов с использованием PR_CONVERSATION_ID. Новые элементы, которые поступают в эти диалоги и совпадают с PR_CONVERSATION_ID, автоматически перемещаются в папку удаленных элементов. Эта логика подчиняется критериям истечения, заданным в CAT.
Пользователь может деактивировать текущее действие "всегда удалять" для диалога рядом различных способов. Чтобы деактивировать правило диалога "всегда удалять" для диалога, пользователь может переходить в папку удаленных элементов.
Когда один элемент диалога выделен и в настоящий момент подчиняется правилу диалога "всегда удалять", и текущая папка - это папка удаленных элементов, то пользовательский интерфейс в форме модульной ленты должен отображать кнопку пользовательского интерфейса "деактивировать правило всегда удалять", чтобы удалять правило диалога "всегда удалять" из цепочки диалога. Выбор кнопки пользовательского интерфейса инструктирует модулю 336 диспетчера диалогов формировать вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 5:
Таблица 5
Предлагаемая диалоговая строка Переключатели
Это должно прекращать удаление новых элементов, которые поступают в этот диалог.
Нажмите OK, чтобы прекращать игнорирование этого диалога и перемещать выбранный диалог в папку входящих сообщений.
ОК
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь выбирает [OK], все отдельные сообщения в цепочке диалога перемещаются в папку входящих сообщений. Модуль 336 диспетчера диалогов удаляет соответствующую запись для правила диалога "всегда удалять" из CAT.
Когда несколько элементов диалога выделены и в настоящий момент подчиняются правилу диалога "всегда удалять", и текущая папка - это папка удаленных элементов, то пользовательский интерфейс в форме модульной ленты должен отображать кнопку пользовательского интерфейса "деактивировать правило всегда удалять", чтобы удалять правило диалога "всегда удалять" из цепочки диалога. Выбор кнопки пользовательского интерфейса инструктирует модулю 336 диспетчера диалогов формировать вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 6:
Таблица 6
Предлагаемая диалоговая строка Переключатели
Это должно прекращать удаление новых элементов, которые поступают в эти диалоги.
Нажмите OK, чтобы прекращать игнорирование этих диалогов и перемещать выбранные диалоги в папку входящих сообщений.
ОК
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь выбирает [OK], все отдельные сообщения в выбранных диалогах перемещаются в папку входящих сообщений. Модуль 336 диспетчера диалогов удаляет соответствующие записи для правил диалога "всегда удалять" из CAT.
Необходимо отметить, что модуль 336 диспетчера диалогов не проверяет активированное/деактивированное состояние каждого диалога, когда находится в состоянии множественного вида, поскольку это может влиять на производительность почтового приложения 300, к примеру, приводить к замедлению при рендеринге вида. Чтобы повышать производительность, модуль 336 диспетчера диалогов не проверяет каждый диалог, а вместо этого по умолчанию предполагает, что все они имеют текущее действие, ассоциированное с ними. Альтернативно, модуль 336 диспетчера диалогов может проверять активированное/деактивированное состояние каждого диалога, когда находится в состоянии множественного вида, для данной реализации, когда производительность не является проблемой.
Модуль 336 диспетчера диалогов выполнен с возможностью создавать правило диалога "всегда перемещать", чтобы автоматически направлять входящее сообщение в папку целевых элементов. Правило диалога "всегда перемещать" - это другой признак опытного пользователя, который предоставляет возможность пользователю легко перемещать элементы конкретного диалога в выбранную им папку. Это гораздо проще создания обычного правила, и доступ осуществляется через кнопку в виде модульной ленты "переместить в папку".
Когда один элемент диалога выделен, и целевая папка выбрана, пользовательский интерфейс в форме модульной ленты должен отображать кнопку пользовательского интерфейса "всегда перемещать", чтобы инициировать операции для формирования правила диалога "всегда перемещать", чтобы перемещать сообщения в целевую папку. Выбор кнопки пользовательского интерфейса инструктирует модулю 336 диспетчера диалогов формировать вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 7:
Таблица 7
Предлагаемая диалоговая строка Переключатели
Это должно перемещать текущие элементы в этом диалоге и все новые элементы, которые поступают, в выбранную папку.
Нажмите OK, чтобы всегда перемещать этот диалог.
OK
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь нажимает [OK], все отдельные сообщения в текущей папке для диалога перемещаются в выбранную папку. Модуль 336 диспетчера диалогов создает новую запись в CAT для этого диалога с использованием его PR_CONVERSATION_ID, если он еще не существует. Модуль 336 диспетчера диалогов оценивает и автоматически перемещает новые элементы диалога с совпадающим PR_CONVERSATION_ID в целевую папку. Эта логика подчиняется критериям истечения, заданным в CAT.
Когда несколько элементов диалога выделены, и целевая папка выбрана, пользовательский интерфейс в форме модульной ленты должен отображать кнопку пользовательского интерфейса "всегда перемещать", чтобы инициировать операции для формирования правила диалога "всегда перемещать", чтобы перемещать сообщения для нескольких диалогов в целевую папку. Выбор кнопки пользовательского интерфейса инструктирует модулю 336 диспетчера диалогов формировать вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 8:
Таблица 8
Предлагаемая диалоговая строка Переключатели
Это должно перемещать текущие элементы в этих диалогах и все новые элементы, которые поступают, в выбранную папку.
Нажмите OK, чтобы всегда перемещать этот диалог.
OK
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь нажимает [OK], все отдельные сообщения в текущей папке для выбранных диалогов перемещаются в выбранную папку. Модуль 336 диспетчера диалогов создает запись в CAT для этих диалогов с использованием их PR_CONVERSATION_ID, если он еще не существует. Если PR_CONVERSATION_ID уже имеет правило диалога "всегда перемещать", ассоциированное с ним, он перезаписывает это правило. Он также сбрасывает время истечения ко времени по умолчанию. Новые элементы, которые поступают в этот диалог и совпадают с PR_CONVERSATION_ID, автоматически перемещаются в выбранную папку. Эта логика подчиняется критериям истечения, заданным в CAT.
Имеется несколько случаев исключения для правила диалога "всегда перемещать". Например, если пользователь выбирает папку удаленных элементов в качестве папки назначения для правила диалога "всегда перемещать", это по существу идентично правилу диалога "всегда удалять". Когда диалог выбирается в папке удаленных элементов, кнопка "всегда удалять" переключается в "деактивированное" состояние.
Пользователь может деактивировать правило диалога "всегда перемещать" рядом различных способов. Например, когда один элемент диалога выделен, модуль 336 диспетчера диалогов может определять то, подчиняется или нет элемент диалога в настоящий момент уже существующему правилу диалога "всегда перемещать". Это может быть выполнено посредством проверки свойства элемента диалога, чтобы определять то, имеет или нет родительский элемент диалога текущее действие, ассоциированное с ним. Это свойство задается для сообщения, когда CAT-обработка осуществляется. Пользовательский интерфейс в форме модульной ленты должен отображать кнопку пользовательского интерфейса "деактивировать правило всегда перемещать", чтобы удалять правило диалога "всегда перемещать" из цепочки диалога. Выбор кнопки пользовательского интерфейса инструктирует модулю 336 диспетчера диалогов формировать вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 9:
Таблица 9
Предлагаемая диалоговая строка Переключатели
Новые элементы в этом диалоге автоматически перемещаются в выбранную папку.
Нажмите OK, чтобы прекращать всегда перемещать новые элементы в выбранную папку.
OK
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь нажимает [OK], модуль 336 диспетчера диалогов прекращает текущее действие "всегда перемещать". Модуль 336 диспетчера диалогов удаляет запись для цепочки диалога из CAT. Элементы диалога необязательно могут перемещаться или не перемещаться из своего текущего местоположения на основе данной реализации.
Когда несколько элементов диалога выделены, пользовательский интерфейс в форме модульной ленты должен отображать кнопку пользовательского интерфейса "деактивировать правило всегда перемещать", чтобы удалять правило диалога "всегда перемещать" из цепочек сообщений. Выбор кнопки пользовательского интерфейса инструктирует модулю 336 диспетчера диалогов формировать вид пользовательского интерфейса, такой как диалоговое окно, имеющее следующие свойства, как показано в таблице 10:
Таблица 10
Предлагаемая диалоговая строка Переключатели
Новые элементы в выбранных диалогах автоматически перемещаются в другие папки.
Нажмите OK, чтобы прекращать всегда перемещать новые элементы в эти диалоги.
OK
CANCEL
Не показывать мне этот диалог снова. CHECK
UNCHECK
Когда пользователь нажимает [OK], модуль 336 диспетчера диалогов прекращает текущее действие "всегда перемещать" для всех диалогов, которые имеют действие, ассоциированное с ними. Модуль 336 диспетчера диалогов удаляет записи для цепочек сообщений из CAT. Элементы диалога необязательно могут перемещаться или не перемещаться из своего текущего местоположения на основе данной реализации.
Модуль 336 диспетчера диалогов выполнен с возможностью создавать правило диалога "всегда категоризовать", чтобы автоматически назначать категорию для входящего сообщения. Назначение категории элементу диалога автоматически активирует текущую классификацию для всей цепочки диалога.
При назначении категории с использованием соответствующей кнопки пользовательского интерфейса "всегда категоризовать" из пользовательского интерфейса в форме модульной ленты для одного элемента диалога, выбранные категории применяются ко всем элементам во всех папках для этого диалога. Это является текущим действием, и запись CAT создается автоматически. Это дополнение к другим категориям, которые могут существовать для любых отдельных сообщений. Например, допустим, что цепочка диалога имеет сообщения 1, 2, 3 и 4, причем сообщение 1 имеет категорию A, сообщение 3 имеет категорию B, и все сообщения 1-4 находятся в папке входящих сообщений. Если пользователь выбирает цепочку диалога и применяет действие "всегда категоризовать" с категорией C, результаты дополняются следующим образом:
Сообщение 1 - категории A+C
Сообщение 2 - категория C
Сообщение 3 - категории B+C
Сообщение 4 - категория C
Эти и другие принципы для элемента диалога "всегда категоризировать" могут описываться подробнее со ссылкой на фиг. 4-8.
Фиг. 4 иллюстрирует вариант осуществления видов 402, 404 диалога. Виды 402, 404 диалога представляют виды диалога, группирующие сообщения по цепочке диалога. Виды 402, 404 диалога иллюстрируют несколько сообщений 420, каждое из которых имеет индикатор категории. В виде 402 диалога, сообщение 420 имеет индикатор категории 410, который является пустым, тем самым указывая, что категория не назначена соответствующему сообщению 420. Когда несколько элементов диалога выбираются, и правило диалога "всегда категоризовать" применяется ко всем сообщениям во всех папках, которые содержат эти диалоги, то все сообщения 420 назначаются выбранной категории или категориям, указанным посредством индикаторов категорий 412, которые затенены.
Фиг. 5 иллюстрирует вариант осуществления видов 502, 504 диалога. Виды 502, 504 диалога также представляют виды диалога, группирующие сообщения по цепочке диалога. Когда модуль 336 диспетчера диалогов выполняет действия с сообщениями 420 выбранного типа сообщения, к примеру, всеми сообщениями для "Randy Byrne", например, модуль 336 диспетчера диалогов применяет выбранные категории только к сообщениям 420 выбранного типа сообщения. Как показано на фиг. 5, вид 504 диалога назначает выбранную категорию выбранным сообщениям 420, как указано посредством индикаторов категорий 412, которые затенены.
Фиг. 6 иллюстрирует вариант осуществления видов 602, 604 диалога. Виды 602, 604 диалога также представляют виды диалога, группирующие сообщения по цепочке диалога. Вид диалога 602 иллюстрирует, что некоторые из индикаторов 410 категорий затенены, тем самым указывая, что категория назначена соответствующим сообщениям 420. Модуль 336 диспетчера диалогов может удалять категорию в то время, когда один элемент диалога выделен. Например, когда пользователь выбирает кнопку пользовательского интерфейса "сбросить все категории" в пользовательском интерфейсе в форме модульной ленты, модуль 336 диспетчера диалогов удаляет все категории из всех сообщений во всех папках. Это является истиной, даже когда сообщение 420 имеет несколько назначенных категорий, как указано посредством одного индикатора категории 410, разделенного на несколько индикаторов 410 категорий. Это типично не является текущим действием. Модуль 336 диспетчера диалогов удаляет правило диалога "всегда категоризировать" из CAT.
Фиг. 7 иллюстрирует вариант осуществления видов 702, 704 диалога. Виды 702, 704 диалога также представляют виды диалога, группирующие сообщения по цепочке диалога. Цепочка 702 диалога иллюстрирует, что некоторые из индикаторов 410 категорий затенены, и дополнительно, что некоторые из сообщений 420 имеют несколько назначенных категорий, как указано посредством разделения одного индикатора категории 410 на несколько индикаторов 410 категорий согласно некоторым из сообщений 420. Модуль 336 диспетчера диалогов может удалять одну категорию из нескольких категорий, назначенных элементу диалога, в то время, когда один элемент диалога выделен. Например, когда пользователь выбирает кнопку пользовательского интерфейса "сбросить категорию" в пользовательском интерфейсе в форме модульной ленты, модуль 336 диспетчера диалогов удаляет только выбранную категорию из всех сообщений во всех папках. Например, сообщение 420 для "Michael Affronti", имеющего две категории, назначенные ему, модифицируется посредством модуля 336 диспетчера диалогов, чтобы удалять одну из двух категорий, как указано посредством нескольких индикаторов 410 категорий, становящихся одним индикатором категории 410. Это типично не является текущим действием. Модуль 336 диспетчера диалогов удаляет правило диалога "всегда категоризировать" для выбранной категории из CAT. Модуль 336 диспетчера диалогов может применять аналогичную логику каждый раз, когда несколько элементов диалога выделены, когда кнопка пользовательского интерфейса "сбросить категорию" активирована.
Фиг. 8 иллюстрирует вариант осуществления видов 802, 804 диалога. Виды 802, 804 диалога также представляют виды диалога, группирующие сообщения по цепочке диалога. Цепочка 802 диалога иллюстрирует, что некоторые из индикаторов 410 категорий затенены, и дополнительно, что некоторые из сообщений 420 имеют несколько назначенных категорий, как указано посредством разделения одного индикатора категории 410 на несколько индикаторов 410 категорий согласно некоторым из сообщений 420. Модуль 336 диспетчера диалогов может удалять одну категорию из нескольких категорий, назначенных элементу диалога, в то время, когда один элемент диалога выделен. Например, когда пользователь выбирает кнопку пользовательского интерфейса "сбросить категорию" в пользовательском интерфейсе в форме модульной ленты, модуль 336 диспетчера диалогов удаляет только выбранную категорию из всех сообщений во всех папках. Например, сообщение 420 для "Michael Affronti", имеющего две категории, назначенные ему, модифицируется посредством модуля 336 диспетчера диалогов, чтобы удалять одну из двух категорий, как указано посредством нескольких индикаторов 410 категорий, становящихся одним индикатором категории 410. Кроме того, модуль 336 диспетчера диалогов может быть выполнен с возможностью выполнять действия с сообщениями 420 выбранного типа сообщения, к примеру, всеми сообщениями для "Michael Affronti", например. В этом случае, модуль 336 диспетчера диалогов удаляет только выбранную категорию или категории из сообщений 420 одного типа сообщения.
Каждый раз, когда новое входящее сообщение поступает в модуль 332 входящих сообщений, и модуль 334 идентификации диалогов идентифицирует входящее сообщение как часть цепочки диалога, модуль 336 диспетчера диалогов определяет то, ассоциировано или нет правило диалога с цепочкой диалога, и если да, применяет правило диалога к входящему сообщению. Модуль 336 диспетчера диалогов обращается к CAT и выполняет последующие операции обработки сообщений для входящего сообщения в соответствии с различными правилами диалога, ассоциированными с цепочкой диалога.
В качестве примера, допустим, что пользователю по имени Michael нравится оставаться в начале большого списка почтовых сообщений в течение дня. Он имеет правила, которые перемещают почтовые сообщения из списка рассылки в различные папки, но по-прежнему прилагает огромные усилия, чтобы отслеживать обычную почту, которую он принимает в своей папке входящих сообщений. Один из его коллег начинает цепочку диалога в его список групповой рассылки, которую Michael принимает в своей папке входящих сообщений, о предстоящих играх плей-офф по баскетболу в колледже. Michael не заинтересован в участии в общем деле в этом году и хочет удалить цепочку из своей папки входящих сообщений. Он выбирает действие "всегда удалять", и вся цепочка перемещается в его папку удаленных элементов. По мере того как его коллеги продолжают общаться в цепочке, все последующие ответы скрыто помещаются в папку удаленных элементов Michael, сохраняя его папку входящих элементов свободной от разговоров этого диалога, при этом одновременно не вынуждая его создавать одноразовое правило или удалять себя из этого (обычно) важного сообщества.
В другом примере, допустим, что пользователь по имени Paul является делопроизводителем и постоянно перемещает почту в различные папки на основе проекта или пользователя, который отправил его. По мере того как новые диалоги поступают в его папку входящих сообщений, Paul может легко выполнять действия только с сообщениями, которые поступают в эту папку, и перемещать их в любое место. Конкретный диалог о проекте "Morandi" высвечивается на экране и продолжает быть активным, так что Paul использует действие "всегда перемещать", чтобы легко передвигать новые элементы в этом диалоге в папку "Morandi Project", когда они поступают.
В еще одном другом примере, допустим, что пользователь по имени Mary категоризирует новые сообщения по мере того, как они поступают. Когда последующие ответы поступают для диалога, Mary должна вручную категоризировать каждый элемент по отдельности каждый раз, когда новый элемент поступает. Mary использует действие "всегда категоризовать", чтобы распознавать, что новые элементы поступили в диалог, и автоматически применять корректные категории с первого сообщения до оставшейся части диалога.
В дополнение к применению правил диалога для входящих сообщений, модуль 336 диспетчера диалогов также применяет правила диалога к сохраненным сообщениям. База 350 данных сообщений сохраняет множество сообщений для каждой цепочки диалога. Когда модуль 336 диспетчера диалогов создает новое правило диалога для цепочки диалога, модуль 336 диспетчера диалогов применяет правило диалога к множеству сохраненных сообщений для соответствующей цепочки диалога.
Операции для вышеописанных вариантов осуществления дополнительно могут описываться в отношении одной или более логических последовательностей операций. Можно принимать во внимание, что характерные логические последовательности операций должны не обязательно выполняться в представленном порядке или в любом конкретном порядке, если не указано иное. Кроме того, различные действия, описанные относительно логических последовательностей операций, могут выполняться последовательным или параллельным способом. Логические последовательности операций могут быть реализованы с использованием одного или более аппаратных и/или программных элементов описанных вариантов осуществления или альтернативных элементов требуемым образом для данного набора проектных ограничений и ограничений производительности. Например, логические последовательности операций могут быть реализованы как логика (к примеру, инструкции компьютерной программы) для выполнения посредством логического устройства (к примеру, компьютера общего назначения или компьютера конкретной цели).
Фиг. 9 иллюстрирует один вариант осуществления логической последовательности 900 операций, подходящей для осуществления на практике различных вариантов осуществления. Логическая последовательность 900 операций может представлять некоторые или все операции, выполняемые посредством одного или более вариантов осуществления, описанных в данном документе.
В проиллюстрированном варианте осуществления, показанном на фиг. 9, логическая последовательность 900 операций может принимать входящее сообщение на этапе 902. Например, модуль 332 входящих сообщений взаимодействует с операционной системой 128, чтобы принимать входящие почтовые сообщения, которые принимаются от сети 118 посредством сетевого интерфейса 220. Например, модуль 332 входящих сообщений может использовать интерфейс, предоставленный посредством операционной системы 128, чтобы конфигурировать обратный вызов, который инструктирует операционной системе 128 предоставлять входящие почтовые сообщения в модуль 332 входящих сообщений. Когда модуль 332 входящих сообщений принимает входящее почтовое сообщение, модуль 332 входящих сообщений может выполнять одну или более операций обработки почтовых сообщений для входящего почтового сообщения. После того, как модуль 332 входящих сообщений выполняет операции обработки почтовых сообщений для входящего почтового сообщения, модуль 332 входящих сообщений может предоставлять входящее почтовое сообщение в модуль 334 идентификации диалогов.
Логическая последовательность 900 операций может определять то, что входящее сообщение является частью цепочки диалога, на этапе 904. Например, модуль 334 идентификации диалогов принимает входящие почтовые сообщения от модуля 332 входящих сообщений и пытается идентифицировать существующий диалог, ассоциированный с входящим почтовым сообщением. Если модуль 334 идентификации диалогов не может успешно идентифицировать существующий диалог, ассоциированный с входящим почтовым сообщением, модуль 334 идентификации диалогов может ассоциировать входящее почтовое сообщение с новым диалогом. Модуль 334 идентификации диалогов может использовать любое число различных алгоритмов и условий, чтобы явно или неявно определять то, является или нет сообщение частью цепочки диалога. Варианты осуществления не ограничены этим контекстом.
Логическая последовательность 900 операций может ассоциировать входящее сообщение с цепочкой диалога на этапе 906. Например, если модуль 332 входящих сообщений идентифицирует входящее сообщение как часть существующей цепочки диалога, модуль 334 идентификации диалогов ассоциирует входящее сообщение с цепочкой диалога посредством назначения входящему сообщению общего идентификатора диалога в соответствующем свойстве для входящего сообщения. Если модуль 332 входящих сообщений не идентифицирует входящее сообщение как часть существующей цепочки диалога, тем не менее, модуль 334 идентификации диалогов ассоциирует входящее почтовое сообщение с новым диалогом посредством назначения ему нового идентификатора диалога. После того, как модуль 334 идентификации диалогов ассоциирует входящее почтовое сообщение с существующим диалогом или ассоциирует входящее почтовое сообщение с новым диалогом, модуль 334 идентификации диалогов может сохранять в базе 350 данных сообщений входящее почтовое сообщение наряду с идентификатором диалога, который идентифицирует диалог, ассоциированный с входящим почтовым сообщением.
Логическая последовательность 900 операций может определять то, что правило диалога ассоциировано с цепочкой диалога, на этапе 908. Например, модуль 336 диспетчера диалогов выполняет поиск в CAT, чтобы определять то, ассоциировано или нет правило диалога с цепочкой диалога. Модуль 336 диспетчера диалогов может выполнять поиск в CAT с использованием любого числа различных критериев поиска, таких как, например, идентификатор диалога.
Логическая последовательность 900 операций может применять правило диалога к входящему сообщению на этапе 910. Например, когда модуль 336 диспетчера диалогов находит правило диалога, ассоциированное с цепочкой диалога, модуль 336 диспетчера диалогов применяет найденное правило диалога к входящему сообщению. Модуль 336 диспетчера диалогов выполняет определенные операции обработки сообщений для входящего сообщения, как задано посредством правила диалога, такие как удаление входящего сообщения, перемещение входящего сообщения, категоризация входящего сообщения, перенаправление входящего сообщения в другое почтовое приложение 300 для другого пользователя, ответ на входящее сообщение, копирование входящего сообщения или любые другие операции обработки сообщений, доступные посредством данного почтового приложения 300. Модуль 336 диспетчера диалогов также может использовать входящее сообщение и соответствующее правило диалога, чтобы активировать или инициировать последующие операции для других сообщений, сохраненных посредством базы 350 данных сообщений или прикладных программ, запущенных на вычислительных устройствах 110, 130.
Фиг. 10 иллюстрирует схему изделия 1000, подходящего для сохранения логики для различных вариантов осуществления. Как показано, изделие 1000 может содержать носитель 1002 хранения данных, чтобы сохранять логику 1004. Примеры носителя 1002 хранения данных могут включать в себя один или более типов машиночитаемых носителей хранения данных, допускающих сохранение электронных данных, в том числе энергозависимое запоминающее устройство или энергонезависимое запоминающее устройство, съемное или несъемное запоминающее устройство, стираемое или нестираемое запоминающее устройство, записываемое или перезаписываемое запоминающее устройство и т.д. Примеры логики 1004 могут включать в себя любые программные элементы, такие как программные компоненты, программы, приложения, компьютерные программы, прикладные программы, системные программы, машинные программы, программное обеспечение операционной системы, промежуточное программное обеспечение, микропрограммное обеспечение, программные модули, стандартные программы, подпрограммы, функции, способы, процедуры, программные интерфейсы, интерфейсы прикладного программирования (API), наборы инструкций, вычислительный код, компьютерный код, сегменты кода, сегменты компьютерного кода, слова, значения, символы или любую комбинацию вышеозначенного.
В одном варианте осуществления, например, изделие 1000 и/или машиночитаемый носитель 1002 хранения данных может сохранять логику 1004, содержащую выполняемые инструкции компьютерной программы, которые, когда выполняются посредством компьютера, инструктируют компьютеру осуществлять способы и/или операции в соответствии с описанными вариантами осуществления. Выполняемые инструкции компьютерной программы могут включать в себя любой подходящий тип кода, такой как исходный код, откомпилированный код, интерпретируемый код, исполняемый код, статический код, динамический код и т.п. Выполняемые инструкции компьютерной программы могут быть реализованы согласно заранее заданному машинному языку, способу или синтаксису для инструктирования компьютеру выполнять определенную функцию. Инструкции могут быть реализованы с использованием любого подходящего высокоуровневого, низкоуровневого, объектно-ориентированного, визуального, откомпилированного и/или интерпретированного язык программирования, такого как C, C++, Java, BASIC, Perl, Matlab, Pascal, Visual BASIC, язык ассемблера и другие.
Различные варианты осуществления могут быть реализованы с использованием аппаратных элементов, программных элементов или комбинации вышеозначенного. Примеры аппаратных элементов могут включать в себя любой из примеров, предоставленных ранее для логического устройства, и дополнительно включать в себя микропроцессоры, схемы, схемные элементы (к примеру, транзисторы, резисторы, конденсаторы, индукторы и т.д.), интегральные схемы, логические вентили, регистры, полупроводниковые устройства, кристаллы, микросхемы, наборы микросхем и т.д. Примеры программных элементов могут включать в себя любые программные компоненты, программы, приложения, компьютерные программы, прикладные программы, системные программы, машинные программы, программное обеспечение операционной системы, промежуточное программное обеспечение, микропрограммное обеспечение, программные модули, стандартные программы, подпрограммы, функции, способы, процедуры, программные интерфейсы, интерфейсы прикладного программирования (API), наборы инструкций, вычислительный код, компьютерный код, сегменты кода, сегменты компьютерного кода, слова, значения, символы или любую комбинацию вышеозначенного. Определение того, реализован вариант осуществления с использованием аппаратных и/или программных элементов, может варьироваться в соответствии с любым числом факторов, таких как требуемая скорость вычислений, уровень мощности, теплостойкость, бюджет цикла обработки, скорости передачи входных данных, скорости передачи выходных данных, ресурсы запоминающего устройства, скорости шин данных и другие проектные ограничения или ограничения производительности требуемым образом для данной реализации.
Некоторые варианты осуществления могут быть описаны с помощью выражения "соединенный" или "подключенный" наряду с его производными словами. Эти термины не обязательно служат в качестве синонимов друг для друга. Например, некоторые варианты осуществления могут быть описаны с использованием термина "подключенный" и/или "соединенный", чтобы указывать, что два или более элементов находятся в непосредственном физическом или электрическом контакте друг с другом. Тем не менее, термин "соединенный" также может означать, что два или более элементов не находятся в прямом контакте друг с другом, но при этом по-прежнему совместно работают или взаимодействуют друг с другом.
Следует подчеркнуть, что реферат раскрытия сущности предоставляется так, чтобы соответствовать 37 C.F.R. Section 1.72(b), требующему реферат, который должен давать возможность читателям быстро выявлять характер технического раскрытия сущности. Он представляется с пониманием того, что он не будет использоваться для того, чтобы интерпретировать или ограничивать объем или смысл формулы изобретения. Помимо этого, в вышеприведенном подробном описании можно видеть, что различные признаки группируются в одном варианте осуществления с целью упрощения раскрытия сущности. Этот способ раскрытия сущности не должен быть интерпретирован как отражающий намерение, что заявленные варианты осуществления требуют большего числа признаков, чем явно изложено в каждом пункте формуле изобретения. Наоборот, как отражает прилагаемая формула изобретения, предмет изобретения находится не во всех признаках одного раскрытого варианта осуществления. Таким образом, прилагаемая формула изобретения тем самым включается в подробное описание, причем каждый ее пункт является независимым как отдельный вариант осуществления. В прилагаемой формуле изобретения, термины "включающий в себя" и "в котором" используются как явные английские эквиваленты соответствующих терминов "содержащий" и "в котором", соответственно. Кроме того, термины "первый", "второй", "третий" и т.д. используются просто как метки и не имеют намерение налагать числовые требования на свои объекты.
Хотя предмет изобретения описан на языке, характерном для структурных признаков и/или технологических этапов, следует понимать, что предмет изобретения, заданный в прилагаемой формуле изобретения, не обязательно ограничен характерными признаками или действиями, описанными выше. Вместо этого, характерные признаки и действия, описанные выше, раскрываются как примерные формы реализации формулы изобретения.

Claims (12)

1. Компьютерно-реализуемый способ обработки сообщений, содержащий этапы, на которых:
принимают входящее сообщение;
определяют, что входящее сообщение является частью цепочки диалога, содержащей множество сохраненных сообщений;
связывают входящее сообщение с цепочкой диалога путем присвоения входящему сообщению идентификатора диалога для цепочки диалога;
создают правило диалога для цепочки диалога, при этом правило диалога устанавливается для цепочки диалога однократно;
сохраняют правило диалога для цепочки диалога в таблице действий в диалоге, при этом таблица действий в диалоге содержит множество столбцов, причем это множество столбцов содержит, по меньшей мере, идентификатор диалога, булев параметр для указания того, применяется ли правило диалога к идентификатору диалога, информацию, необходимую для реализации правила диалога, причем данная информация содержит, по меньшей мере, имя категории, и дату и время истечения срока действия для указания того, когда правило диалога должно действовать;
определяют, что правило диалога связано с цепочкой диалога;
применяют правило диалога к входящему сообщению; и
автоматически применяют правило диалога к множеству сохраненных сообщений в цепочке диалога.
2. Способ по п.1, в котором принимают входящее сообщение как сообщение электронной почты, текстовое сообщение, сообщение службы коротких сообщений, сообщение службы мультимедийных сообщений, речевое сообщение или видеосообщение.
3. Способ по п.1, в котором при создании правила диалога создают правило диалога "всегда удалять", чтобы автоматически направлять входящее сообщение в папку удаленных элементов.
4. Способ по п.1, в котором при создании правила диалога создают правило диалога "всегда перемещать", чтобы автоматически направлять входящее сообщение в папку целевых элементов.
5. Способ по п.1, в котором при создании правила диалога создают правило диалога "всегда категоризировать", чтобы автоматически назначать категорию для входящего сообщения.
6. Способ по п.1, в котором связывание входящего сообщения с цепочкой диалога дополнительно содержит по меньшей мере один из этапов, на которых:
определяют, что входящее сообщение включает в себя свойство "в ответ на", указывающее значение, которое соответствует значению, указываемому свойством "идентификатор сообщения" по меньшей мере одного сообщения, имеющегося в цепочке диалога;
определяют, что входящее сообщение включает в себя свойство "ссылки", указывающее значение, которое соответствует значению, указываемому посредством свойства "идентификатор сообщения" по меньшей мере одного сообщения, имеющегося в цепочке диалога; и
определяют, что нормализованное свойство "тема" входящего сообщения соответствует нормализованному свойству "тема" по меньшей мере одного сообщения, имеющегося в цепочке диалога.
7. Машиночитаемый носитель информации, содержащий команды, которые при их исполнении компьютерной системой предписывают компьютерной системе:
определять, что входящее сообщение является частью цепочки диалога, содержащей множество сохраненных сообщений;
связывать входящее сообщение с цепочкой диалога путем присвоения входящему сообщению идентификатора диалога для цепочки диалога;
создавать правило диалога для цепочки диалога, при этом правило диалога устанавливается для цепочки диалога однократно;
сохранять правило диалога для цепочки диалога в таблице действий в диалоге, при этом таблица действий в диалоге содержит множество столбцов, причем это множество столбцов содержит, по меньшей мере, идентификатор диалога, булев параметр для указания того, применяется ли правило диалога к идентификатору диалога, информацию, необходимую для реализации правила диалога, причем данная информация содержит, по меньшей мере, имя категории, и дату и время истечения срока действия для указания того, когда правило диалога должно действовать;
извлекать правило диалога, связанное с цепочкой диалога;
применять правило диалога к входящему сообщению; и
автоматически применять правило диалога к множеству сохраненных сообщений в цепочке диалога.
8. Машиночитаемый носитель информации по п.7, при этом правило диалога представляет собой правило диалога "всегда удалять", чтобы автоматически направлять входящее сообщение в папку удаленных элементов, правило диалога "всегда перемещать", чтобы автоматически направлять входящее сообщение в папку целевых элементов, или правило диалога "всегда категоризировать", чтобы автоматически назначать категорию для входящего сообщения.
9. Устройство для обработки сообщений, содержащее:
модуль входящих сообщений, выполненный с возможностью приема входящего сообщения;
модуль идентификации диалогов, функционально соединенный с модулем входящих сообщений, при этом модуль идентификации диалогов выполнен с возможностью определять, что входящее сообщение является частью цепочки диалога, и связывать входящее сообщение с цепочкой диалога посредством установки свойства "идентификатор диалога" входящего сообщения в идентификатор диалога для цепочки диалога, причем цепочка диалога содержит множество сохраненных сообщений; и
модуль диспетчера диалогов, функционально соединенный с модулем идентификации диалогов, при этом модуль диспетчера диалогов выполнен с возможностью:
создавать правило диалога для цепочки диалога, при этом правило диалога устанавливается для цепочки диалога однократно,
сохранять правило диалога для цепочки диалога в таблице действий в диалоге, при этом таблица действий в диалоге содержит множество столбцов, причем это множество столбцов содержит, по меньшей мере, идентификатор диалога, булев параметр для указания того, применяется ли правило диалога к идентификатору диалога, информацию, необходимую для реализации правила диалога, причем данная информация содержит, по меньшей мере, имя категории, и дату и время истечения срока действия для указания того, когда правило диалога должно действовать,
определять, что правило диалога связано с цепочкой диалога,
применять правило диалога к входящему сообщению и
автоматически применять правило диалога к множеству сохраненных сообщений в цепочке диалога.
10. Устройство по п.9, в котором сообщения содержат сообщения электронной почты, текстовые сообщения, сообщения службы коротких сообщений, сообщения службы мультимедийных сообщений, речевые сообщения или видеосообщения.
11. Устройство по п.9, в котором правило диалога представляет собой правило диалога "всегда удалять", чтобы автоматически направлять входящее сообщение в папку удаленных элементов, правило диалога "всегда перемещать", чтобы автоматически направлять входящее сообщение в папку целевых элементов, или правило диалога "всегда категоризировать", чтобы автоматически назначать категорию для входящего сообщения.
12. Устройство по п.9, содержащее базу данных сообщений, функционально соединенную с модулем диспетчера диалогов, при этом база данных сообщений выполнена с возможностью сохранения упомянутого множества сообщений для цепочки диалога.
RU2010152843/08A 2008-06-24 2009-05-18 Технологии автоматического диалога RU2523165C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/144,642 2008-06-24
US12/144,642 US8402096B2 (en) 2008-06-24 2008-06-24 Automatic conversation techniques
PCT/US2009/044292 WO2010008671A2 (en) 2008-06-24 2009-05-18 Automatic conversation techniques

Publications (2)

Publication Number Publication Date
RU2010152843A RU2010152843A (ru) 2012-06-27
RU2523165C2 true RU2523165C2 (ru) 2014-07-20

Family

ID=41432377

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2010152843/08A RU2523165C2 (ru) 2008-06-24 2009-05-18 Технологии автоматического диалога

Country Status (14)

Country Link
US (2) US8402096B2 (ru)
EP (1) EP2291820A4 (ru)
JP (1) JP5480894B2 (ru)
KR (1) KR20110040777A (ru)
CN (1) CN102067167A (ru)
AU (1) AU2009271517B2 (ru)
CA (1) CA2725046C (ru)
IL (1) IL209012A (ru)
MX (1) MX2010014056A (ru)
MY (1) MY172510A (ru)
RU (1) RU2523165C2 (ru)
TW (1) TWI479329B (ru)
WO (1) WO2010008671A2 (ru)
ZA (1) ZA201007810B (ru)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715678B2 (en) 2003-06-26 2017-07-25 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US8799808B2 (en) 2003-07-01 2014-08-05 Microsoft Corporation Adaptive multi-line view user interface
US7707255B2 (en) 2003-07-01 2010-04-27 Microsoft Corporation Automatic grouping of electronic mail
US7703036B2 (en) 2004-08-16 2010-04-20 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US8117542B2 (en) 2004-08-16 2012-02-14 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object
US8255828B2 (en) 2004-08-16 2012-08-28 Microsoft Corporation Command user interface for displaying selectable software functionality controls
US7895531B2 (en) 2004-08-16 2011-02-22 Microsoft Corporation Floating command object
US9015621B2 (en) 2004-08-16 2015-04-21 Microsoft Technology Licensing, Llc Command user interface for displaying multiple sections of software functionality controls
US7747966B2 (en) 2004-09-30 2010-06-29 Microsoft Corporation User interface for providing task management and calendar information
US20060072009A1 (en) * 2004-10-01 2006-04-06 International Business Machines Corporation Flexible interaction-based computer interfacing using visible artifacts
US8239882B2 (en) 2005-08-30 2012-08-07 Microsoft Corporation Markup based extensibility for user interfaces
US8689137B2 (en) * 2005-09-07 2014-04-01 Microsoft Corporation Command user interface for displaying selectable functionality controls in a database application
US9542667B2 (en) 2005-09-09 2017-01-10 Microsoft Technology Licensing, Llc Navigating messages within a thread
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
US8605090B2 (en) 2006-06-01 2013-12-10 Microsoft Corporation Modifying and formatting a chart using pictorially provided chart elements
US9727989B2 (en) 2006-06-01 2017-08-08 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US8201103B2 (en) 2007-06-29 2012-06-12 Microsoft Corporation Accessing an out-space user interface for a document editor program
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US8762880B2 (en) 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
US9588781B2 (en) 2008-03-31 2017-03-07 Microsoft Technology Licensing, Llc Associating command surfaces with multiple active components
US9665850B2 (en) 2008-06-20 2017-05-30 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US8402096B2 (en) 2008-06-24 2013-03-19 Microsoft Corporation Automatic conversation techniques
US9258142B2 (en) * 2009-02-05 2016-02-09 International Business Machines Corporation Message system for social networks
US9349120B2 (en) * 2009-04-08 2016-05-24 Blackberry Limited System and method for silencing notifications for a message thread
US9046983B2 (en) 2009-05-12 2015-06-02 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries
US8352561B1 (en) 2009-07-24 2013-01-08 Google Inc. Electronic communication reminder technology
US8521823B1 (en) 2009-09-04 2013-08-27 Google Inc. System and method for targeting information based on message content in a reply
US9098835B2 (en) * 2009-12-30 2015-08-04 Blackberry Limited Method and apparatus for updating flag data of associated messages
EP2369820B1 (en) * 2010-03-22 2016-04-06 BlackBerry Limited Management and display of grouped messages on a communication device
EP2381402A1 (en) 2010-04-21 2011-10-26 Research in Motion Corporation User interface methods and apparatus for use in communicating messages
US8407181B2 (en) * 2010-05-26 2013-03-26 Research In Motion Limited Email system providing enhanced conversation and category search features and related methods
US9241000B2 (en) 2010-09-22 2016-01-19 Abdullah Celik Erdal Trusted social network
US8533275B2 (en) * 2011-08-19 2013-09-10 Microsoft Corporation Synchronizing conversation structures in web-based email systems
US20130174029A1 (en) * 2012-01-04 2013-07-04 Freedom Solutions Group, LLC d/b/a Microsystems Method and apparatus for analyzing a document
US9166892B1 (en) * 2012-01-20 2015-10-20 Google Inc. Systems and methods for event stream management
US20130218988A1 (en) * 2012-02-21 2013-08-22 Research In Motion Limited Method, system and apparatus for managing related messages at a communication device
EP2632094A1 (en) * 2012-02-21 2013-08-28 Research In Motion Limited Method, system and apparatus for managing related messages at a communication device
US9412136B2 (en) * 2012-07-09 2016-08-09 Facebook, Inc. Creation of real-time conversations based on social location information
US8972324B2 (en) 2012-07-25 2015-03-03 Toytalk, Inc. Systems and methods for artificial intelligence script modification
US10223636B2 (en) 2012-07-25 2019-03-05 Pullstring, Inc. Artificial intelligence script tool
KR101909141B1 (ko) * 2012-07-27 2018-10-17 엘지전자 주식회사 전자기기 및 전자기기의 제어방법
US9171069B2 (en) 2012-07-31 2015-10-27 Freedom Solutions Group, Llc Method and apparatus for analyzing a document
CN104516662A (zh) * 2013-09-26 2015-04-15 诺基亚公司 用于在触屏设备中输入内容的方法和装置
US8949283B1 (en) 2013-12-23 2015-02-03 Google Inc. Systems and methods for clustering electronic messages
US9015192B1 (en) 2013-12-30 2015-04-21 Google Inc. Systems and methods for improved processing of personalized message queries
US9542668B2 (en) 2013-12-30 2017-01-10 Google Inc. Systems and methods for clustering electronic messages
US9767189B2 (en) 2013-12-30 2017-09-19 Google Inc. Custom electronic message presentation based on electronic message category
US9124546B2 (en) 2013-12-31 2015-09-01 Google Inc. Systems and methods for throttling display of electronic messages
US9306893B2 (en) 2013-12-31 2016-04-05 Google Inc. Systems and methods for progressive message flow
US9152307B2 (en) 2013-12-31 2015-10-06 Google Inc. Systems and methods for simultaneously displaying clustered, in-line electronic messages in one display
US10033679B2 (en) 2013-12-31 2018-07-24 Google Llc Systems and methods for displaying unseen labels in a clustering in-box environment
US10447621B2 (en) * 2014-09-04 2019-10-15 Microsoft Technology Licensing, Llc App powered extensibility of messages on an existing messaging service
US10122657B2 (en) 2014-10-29 2018-11-06 Paypal, Inc. Communication apparatus with in-context messaging
US10467630B2 (en) * 2015-01-06 2019-11-05 Adobe Inc. Organizing and classifying social media conversations to improve customer service
US9912618B2 (en) 2015-03-10 2018-03-06 International Business Machines Corporation Allow hidden and silent observers in a group conversation
US9883358B2 (en) * 2015-05-08 2018-01-30 Blackberry Limited Electronic device and method of determining suggested responses to text-based communications
USD759084S1 (en) * 2015-06-04 2016-06-14 Security Scorecard, Inc. Display screen or portion thereof with graphical user interface for security to reduce risk
US9998414B2 (en) 2015-11-05 2018-06-12 International Business Machines Corporation Peer-assisted mail thread management
US10645052B2 (en) 2016-09-26 2020-05-05 Microsoft Technology Licensing, Llc Service integration into electronic mail inbox
US11671383B2 (en) 2016-09-26 2023-06-06 Microsoft Technology Licensing, Llc Natural language service interaction through an inbox
US20180217848A1 (en) * 2017-01-27 2018-08-02 Blackberry Limited Enhanced message composition and management on a communication device
WO2019195706A1 (en) * 2018-04-05 2019-10-10 Sizung Inc. Digital conversation management
US11677705B2 (en) 2019-04-23 2023-06-13 International Business Machines Corporation Enriched message embedding for conversation deinterleaving
US11743213B2 (en) 2020-06-09 2023-08-29 Apple Inc. User interfaces for messages
US11922345B2 (en) * 2020-07-27 2024-03-05 Bytedance Inc. Task management via a messaging service

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7251640B2 (en) * 2003-09-15 2007-07-31 Philippe Baumard Method and system for measuring interest levels of digital messages
RU2327205C2 (ru) * 2003-02-25 2008-06-20 Майкрософт Корпорейшн Адаптивная система фильтрации ненужных сообщений

Family Cites Families (648)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0343824Y2 (ru) 1985-03-15 1991-09-13
US4823283A (en) 1986-10-14 1989-04-18 Tektronix, Inc. Status driven menu system
JPH0652282B2 (ja) 1987-06-04 1994-07-06 日置電機株式会社 Lcrメ−タ
US5243697A (en) 1989-03-15 1993-09-07 Sun Microsystems, Inc. Method and apparatus for selecting button functions and retaining selected options on a display
US5155806A (en) 1989-03-15 1992-10-13 Sun Microsystems, Inc. Method and apparatus for displaying context sensitive help information on a display
GB8918553D0 (en) 1989-08-15 1989-09-27 Digital Equipment Int Message control system
US5220675A (en) 1990-01-08 1993-06-15 Microsoft Corporation Method and system for customizing a user interface in an integrated environment
US5287514A (en) 1990-01-08 1994-02-15 Microsoft Corporation Method and system for customizing a user interface in a computer system
US5305435A (en) 1990-07-17 1994-04-19 Hewlett-Packard Company Computer windows management system and method for simulating off-screen document storage and retrieval
JPH04186425A (ja) 1990-11-21 1992-07-03 Hitachi Ltd メニュー表示方式
JPH04312186A (ja) 1991-04-10 1992-11-04 Mitsubishi Electric Corp グラフ作成方式
US5202828A (en) 1991-05-15 1993-04-13 Apple Computer, Inc. User interface system having programmable user interface elements
US5307086A (en) 1991-10-08 1994-04-26 International Business Machines Corporation Method of implementing a preview window in an object oriented programming system
JP2967961B2 (ja) 1991-12-16 1999-10-25 インターナショナル・ビジネス・マシーンズ・コーポレイション 月別の予定表表示の提示方法
US5323314A (en) 1991-12-31 1994-06-21 International Business Machines Corporation Method and system for graphic representation of meeting parameters in a data processing system
US5519606A (en) 1992-01-21 1996-05-21 Starfish Software, Inc. System and methods for appointment reconciliation
JPH0785216B2 (ja) 1992-02-07 1995-09-13 インターナショナル・ビジネス・マシーンズ・コーポレイション メニュー表示装置および方法
US5247438A (en) 1992-03-30 1993-09-21 Infoassist, Inc. Personal time management system and method
US5999173A (en) 1992-04-03 1999-12-07 Adobe Systems Incorporated Method and apparatus for video editing with video clip representations displayed along a time line
US5416895A (en) 1992-04-08 1995-05-16 Borland International, Inc. System and methods for improved spreadsheet interface with user-familiar objects
US5570109A (en) 1992-05-27 1996-10-29 Apple Computer, Inc. Schedule and to-do list for a pen-based computer system
US6236396B1 (en) 1992-05-27 2001-05-22 Apple Computer, Inc. Method and apparatus for controlling a scheduler
US5457476A (en) 1992-05-27 1995-10-10 Apple Computer, Inc. Method for controlling a computerized organizer
US5544295A (en) * 1992-05-27 1996-08-06 Apple Computer, Inc. Method and apparatus for indicating a change in status of an object and its disposition using animation
US5659693A (en) 1992-08-27 1997-08-19 Starfish Software, Inc. User interface with individually configurable panel interface for use in a computer system
US5412772A (en) 1992-10-13 1995-05-02 Novell, Inc. System for permitting a view of an object or a user interface to be exchanged between operating system environments
US5673403A (en) 1992-11-13 1997-09-30 International Business Machines Corporation Method and system for displaying applications of different operating systems on a single system using the user interface of the different operating systems
US5734915A (en) * 1992-11-25 1998-03-31 Eastman Kodak Company Method and apparatus for composing digital medical imagery
JPH06231186A (ja) 1993-02-03 1994-08-19 Fujitsu Ltd 文書処理装置
US5500936A (en) 1993-03-12 1996-03-19 Asymetrix Corporation Multi-media slide presentation system with a moveable, tracked popup menu with button and title bars
US5588107A (en) 1993-03-22 1996-12-24 Island Graphics Corporation Method and apparatus for selectably expandable menus
JPH06342357A (ja) 1993-06-01 1994-12-13 Mitsubishi Electric Corp ユーザインタフェース方式
US5461708A (en) 1993-08-06 1995-10-24 Borland International, Inc. Systems and methods for automated graphing of spreadsheet information
US5634128A (en) 1993-09-24 1997-05-27 International Business Machines Corporation Method and system for controlling access to objects in a data processing system
EP0870120A1 (en) * 1994-02-08 1998-10-14 PLASTIC BEARINGS & HOUSINGS AUSTRALASIA PTY.LTD. Plain bearing
EP0742918B1 (en) 1994-03-21 1997-10-15 Object Technology Licensing Corp. Apparatus and method for document processing
US5581677A (en) 1994-04-22 1996-12-03 Carnegie Mellon University Creating charts and visualizations by demonstration
WO1995031773A1 (en) 1994-05-16 1995-11-23 Apple Computer, Inc. Switching between appearance/behavior themes in graphical user interfaces
US6404433B1 (en) 1994-05-16 2002-06-11 Apple Computer, Inc. Data-driven layout engine
US5592602A (en) * 1994-05-17 1997-01-07 Macromedia, Inc. User interface and method for controlling and displaying multimedia motion, visual, and sound effects of an object on a display
US5555364A (en) 1994-08-23 1996-09-10 Prosoft Corporation Windowed computer display
US5579466A (en) 1994-09-01 1996-11-26 Microsoft Corporation Method and system for editing and formatting data in a dialog window
WO1996009579A1 (en) 1994-09-22 1996-03-28 Izak Van Cruyningen Popup menus with directional gestures
US5588108A (en) 1994-09-27 1996-12-24 Micrografx, Inc. System and method for generating graphics charts
US5721847A (en) * 1994-10-21 1998-02-24 Microsoft Corporation Method and system for linking controls with cells of a spreadsheet
US5831606A (en) 1994-12-13 1998-11-03 Microsoft Corporation Shell extensions for an operating system
US5625783A (en) 1994-12-13 1997-04-29 Microsoft Corporation Automated system and method for dynamic menu construction in a graphical user interface
US6038395A (en) * 1994-12-16 2000-03-14 International Business Machines Corporation System and method for implementing proxy objects in a visual application builder framework
US5760773A (en) 1995-01-06 1998-06-02 Microsoft Corporation Methods and apparatus for interacting with data objects using action handles
US5844588A (en) 1995-01-11 1998-12-01 Texas Instruments Incorporated DMD modulated continuous wave light source for xerographic printer
US5893125A (en) 1995-01-27 1999-04-06 Borland International, Inc. Non-modal database system with methods for incremental maintenance
US5873108A (en) 1995-02-27 1999-02-16 Fuga Corporation Personal information manager information entry allowing for intermingling of items belonging to different categories within a single unified view
US5893073A (en) 1995-02-27 1999-04-06 Sun Microsystems, Inc. Method and apparatus for representing recurring events
US6442527B1 (en) 1995-03-17 2002-08-27 Kathy A. Worthington System and method for personalized and customized time management
JP3498871B2 (ja) 1995-03-31 2004-02-23 ソニー株式会社 テレビジョン機能選択方法、テレビジョン受像機、およびテレビジョン受像機用リモートコマンダ
US6307574B1 (en) 1995-05-08 2001-10-23 Apple Computer, Inc. Graphical user interface with hierarchical structure for customizable menus and control objects
US5664208A (en) 1995-05-16 1997-09-02 Apple Computer, Inc. Methods and apparatuses for seamless compound document processing
US5644737A (en) 1995-06-06 1997-07-01 Microsoft Corporation Method and system for stacking toolbars in a computer display
US5778402A (en) 1995-06-07 1998-07-07 Microsoft Corporation Method and system for auto-formatting a document using an event-based rule engine to format a document as the user types
US5940847A (en) 1995-06-07 1999-08-17 Microsoft Corporation System and method for automatically correcting multi-word data entry errors
US5619631A (en) 1995-06-07 1997-04-08 Binaryblitz Method and apparatus for data alteration by manipulation of representational graphs
US5559875A (en) 1995-07-31 1996-09-24 Latitude Communications Method and apparatus for recording and retrieval of audio conferences
US5634100A (en) 1995-08-07 1997-05-27 Apple Computer, Inc. System and method for event parameter interdependence and adjustment with pen input
US5778404A (en) 1995-08-07 1998-07-07 Apple Computer, Inc. String inserter for pen-based computer systems and method for providing same
JP2986078B2 (ja) 1995-08-28 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション カレンダーの表示方法及び表示装置
US5872973A (en) * 1995-10-26 1999-02-16 Viewsoft, Inc. Method for managing dynamic relations between objects in dynamic object-oriented languages
US5821936A (en) 1995-11-20 1998-10-13 Siemens Business Communication Systems, Inc. Interface method and system for sequencing display menu items
US5793365A (en) 1996-01-02 1998-08-11 Sun Microsystems, Inc. System and method providing a computer user interface enabling access to distributed workgroup members
JPH09204289A (ja) 1996-01-29 1997-08-05 Canon Inc 文書編集装置
US5764960A (en) 1996-01-30 1998-06-09 International Business Machines Corporation Method and system for sharing a menu by multiple components in a component-based computer system
US5855006A (en) 1996-03-01 1998-12-29 Humware Personal activity scheduling apparatus
US6374304B1 (en) 1996-03-01 2002-04-16 Casio Computer Co., Ltd. Data communication system and information management apparatus having communication function adaptable to the system
US5838321A (en) 1996-05-06 1998-11-17 Ast Research, Inc. User interface with embedded objects for personal computers and the like
AU2651697A (en) 1996-05-10 1997-12-05 Hyper Net Inc. Message searching system and terminal
US6493006B1 (en) 1996-05-10 2002-12-10 Apple Computer, Inc. Graphical user interface having contextual menus
US5933841A (en) 1996-05-17 1999-08-03 Ameritech Corporation Structured document browser
US5963938A (en) 1996-05-17 1999-10-05 Novell Inc. Automatic, context-organizing, query interface
WO1997046962A1 (en) 1996-06-07 1997-12-11 At & T Corp. Finding an e-mail message to which another e-mail message is a response
US6085206A (en) 1996-06-20 2000-07-04 Microsoft Corporation Method and system for verifying accuracy of spelling and grammatical composition of a document
US6073108A (en) 1996-06-21 2000-06-06 Paul, Hastings, Janofsky & Walker Task-based classification and analysis system
US6434598B1 (en) 1996-07-01 2002-08-13 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
JPH1074217A (ja) 1996-07-01 1998-03-17 Hitachi Ltd 通信回線を利用するスケジュール管理システム及び記憶媒体
US5802530A (en) 1996-07-01 1998-09-01 Sun Microsystems, Inc. Web document based graphical user interface
US5899979A (en) 1996-07-22 1999-05-04 International Business Machines Corporation Method and system for automatically integrating scheduled work items onto an electronic calendar
US6154755A (en) 1996-07-31 2000-11-28 Eastman Kodak Company Index imaging system
US6016478A (en) * 1996-08-13 2000-01-18 Starfish Software, Inc. Scheduling system with methods for peer-to-peer scheduling of remote users
US5924089A (en) 1996-09-03 1999-07-13 International Business Machines Corporation Natural language translation of an SQL query
US5828376A (en) 1996-09-23 1998-10-27 J. D. Edwards World Source Company Menu control in a graphical user interface
US6018343A (en) * 1996-09-27 2000-01-25 Timecruiser Computing Corp. Web calendar architecture and uses thereof
US5842009A (en) 1996-09-30 1998-11-24 Apple Computer, Inc. System for automatically retrieving information relevant to a user's scheduled event
US5926806A (en) 1996-10-18 1999-07-20 Apple Computer, Inc. Method and system for displaying related information from a database
US5796393A (en) 1996-11-08 1998-08-18 Compuserve Incorporated System for intergrating an on-line service community with a foreign service
US6012075A (en) * 1996-11-14 2000-01-04 Microsoft Corporation Method and system for background grammar checking an electronic document
EP0847019A1 (en) 1996-12-04 1998-06-10 Koninklijke Philips Electronics N.V. Method and system for selecting an information item in an information processing system, and local station in such a system
TW401548B (en) 1996-12-20 2000-08-11 Sony Corp Method and apparatus for sending E-mail, method and apparatus for receiving E-mail, sending program supplying medium, receiving program supplying medium
US5966126A (en) 1996-12-23 1999-10-12 Szabo; Andrew J. Graphic user interface for database system
US5874953A (en) 1996-12-31 1999-02-23 International Business Machines Corporation Database graphical user interface with outline view
US5900875A (en) * 1997-01-29 1999-05-04 3Com Corporation Method and apparatus for interacting with a portable computer system
US7248150B2 (en) 1997-01-29 2007-07-24 Directed Electronics, Inc. Menu-driven remote control transmitter
US5999938A (en) 1997-01-31 1999-12-07 Microsoft Corporation System and method for creating a new data structure in memory populated with data from an existing data structure
US5864848A (en) 1997-01-31 1999-01-26 Microsoft Corporation Goal-driven information interpretation and extraction system
US5917489A (en) 1997-01-31 1999-06-29 Microsoft Corporation System and method for creating, editing, and distributing rules for processing electronic messages
US6990652B1 (en) * 1997-03-04 2006-01-24 National Instruments Corporation System and method for determining methods and properties to be invoked on objects in a graphical program
US6034683A (en) * 1997-03-26 2000-03-07 Netscape Communications Corporation Time line for desktop metaphor
WO1998044407A1 (en) 1997-03-28 1998-10-08 Sun Microsystems, Inc. Method and apparatus for configuring sliding panels
US5937160A (en) 1997-05-01 1999-08-10 Reedy Creek Technologies, Inc. Systems, methods and computer program products for updating hypertext documents via electronic mail
US6118480A (en) * 1997-05-05 2000-09-12 Flashpoint Technology, Inc. Method and apparatus for integrating a digital camera user interface across multiple operating modes
JPH10326171A (ja) 1997-05-09 1998-12-08 Internatl Business Mach Corp <Ibm> ウィンドウ表示装置および方法、並びに、制御プログラムを記録したコンピュータ読取り可能な記録媒体
US5940078A (en) 1997-06-17 1999-08-17 Sun Microsystems, Inc. Method and apparatus for changing the appearance of icon images on a computer display monitor
US6073142A (en) 1997-06-23 2000-06-06 Park City Group Automated post office based rule analysis of e-mail messages and other data objects for controlled distribution in network environments
US6384849B1 (en) 1997-07-14 2002-05-07 Microsoft Corporation Method for displaying controls in a system using a graphical user interface
DE19730112A1 (de) 1997-07-14 1999-01-21 Ericsson Telefon Ab L M Empfangs- und Speichervorrichtung für Übertragungseinheiten
JPH1139292A (ja) 1997-07-15 1999-02-12 Toshiba Corp 文書管理方法、文書検索方法、及び文書検索装置
US6073110A (en) 1997-07-22 2000-06-06 Siemens Building Technologies, Inc. Activity based equipment scheduling method and system
GB2328539B (en) 1997-08-22 2001-04-18 Ibm Data charting
JP2003526820A (ja) 1997-08-22 2003-09-09 ナトリフィシャル エルエルシー グラフィック表示内でウィンドウのサイズ変更および再配置を同時に行うための方法および装置
US6199102B1 (en) * 1997-08-26 2001-03-06 Christopher Alan Cobb Method and system for filtering electronic messages
JPH1174929A (ja) 1997-08-29 1999-03-16 Sharp Corp 電子メール処理方法及び電子メール処理プログラムを記録したコンピュータ読み取り可能な記録媒体
US6226642B1 (en) 1997-09-11 2001-05-01 International Business Machines Corporation Content modification of internet web pages for a television class display
US6882354B1 (en) 1997-09-17 2005-04-19 Sun Microsystems, Inc. Scroll bars with user feedback
US6433801B1 (en) 1997-09-26 2002-08-13 Ericsson Inc. Method and apparatus for using a touch screen display on a portable intelligent communications device
CA2309132A1 (en) * 1997-10-06 1999-04-15 Megg Associates, Inc. Single-document active user interface, method and system for implementing same
US6088707A (en) 1997-10-06 2000-07-11 International Business Machines Corporation Computer system and method of displaying update status of linked hypertext documents
US5970466A (en) 1997-10-06 1999-10-19 Impromed, Inc. Graphical computer system and method for appointment scheduling
US6134552A (en) 1997-10-07 2000-10-17 Sap Aktiengesellschaft Knowledge provider with logical hyperlinks
US6121965A (en) 1997-10-17 2000-09-19 Lucent Technologies Inc. User interface for graphical application tool
US6816904B1 (en) 1997-11-04 2004-11-09 Collaboration Properties, Inc. Networked video multimedia storage server environment
US6067551A (en) 1997-11-14 2000-05-23 Microsoft Corporation Computer implemented method for simultaneous multi-user editing of a document
US6216122B1 (en) 1997-11-19 2001-04-10 Netscape Communications Corporation Electronic mail indexing folder having a search scope and interval
US6188403B1 (en) * 1997-11-21 2001-02-13 Portola Dimensional Systems, Inc. User-friendly graphics generator using direct manipulation
US5898436A (en) 1997-12-05 1999-04-27 Hewlett-Packard Company Graphical user interface for digital image editing
US6137488A (en) 1997-12-05 2000-10-24 International Business Machines Corporation System for creating structured fields on electronic forms
EP0927926A3 (en) 1997-12-29 2000-06-28 Lucent Technologies Inc. System and method for providing a user definable indicator setting for graphical user interfaces
US6189024B1 (en) 1998-01-06 2001-02-13 Netscape Communications Corporation Browsing session recording playback and editing system for generating user defined paths and allowing users to mark the importance of items in the paths
US6750850B2 (en) 1998-01-07 2004-06-15 Microsoft Corporation Viewer system for a wireless device
US5960406A (en) 1998-01-22 1999-09-28 Ecal, Corp. Scheduling system for use between users on the web
US6211879B1 (en) 1999-01-13 2001-04-03 Planetweb, Inc. System and method for navigating in multiple windows
JP2938420B2 (ja) 1998-01-30 1999-08-23 インターナショナル・ビジネス・マシーンズ・コーポレイション ファンクション選択方法及び装置、ファンクションを選択するための制御プログラムを格納した記憶媒体、オブジェクトの操作方法及び装置、オブジェクトを操作するための制御プログラムを格納した記憶媒体、複合アイコンを格納した記憶媒体
US6219670B1 (en) 1998-02-18 2001-04-17 International Business Machines Corporation Method and apparatus for filtering a table list before opening with a graphical user interface
US6067087A (en) 1998-03-03 2000-05-23 Microsoft Corporation Method for building menus during idle times
GB2335822B (en) 1998-03-25 2003-09-10 Nokia Mobile Phones Ltd Context sensitive pop-up window for a portable phone
US6272488B1 (en) 1998-04-01 2001-08-07 International Business Machines Corporation Managing results of federated searches across heterogeneous datastores with a federated collection object
US6173316B1 (en) 1998-04-08 2001-01-09 Geoworks Corporation Wireless communication device with markup language based man-machine interface
US6038542A (en) * 1998-04-28 2000-03-14 Micron Electronics, Inc. System for notifying an individual of a previously scheduled event
US6330589B1 (en) 1998-05-26 2001-12-11 Microsoft Corporation System and method for using a client database to manage conversation threads generated from email or news messages
US6239798B1 (en) 1998-05-28 2001-05-29 Sun Microsystems, Inc. Methods and apparatus for a window access panel
US6396516B1 (en) 1998-05-29 2002-05-28 Plexus Systems, Llc Graphical user interface shop floor control system
US6043816A (en) 1998-05-29 2000-03-28 Hewlett-Packard Company User interface mechanism for maintaning quick access to important information in a windows-based computer environment
US6175363B1 (en) * 1998-05-29 2001-01-16 Hewlett-Packard Company Method and system to provide functionality access based on user approach to network and system management tasks
US6133915A (en) 1998-06-17 2000-10-17 Microsoft Corporation System and method for customizing controls on a toolbar
US6237135B1 (en) 1998-06-18 2001-05-22 Borland Software Corporation Development system with visual design tools for creating and maintaining Java Beans components
US6101480A (en) 1998-06-19 2000-08-08 International Business Machines Electronic calendar with group scheduling and automated scheduling techniques for coordinating conflicting schedules
US6269341B1 (en) 1998-07-01 2001-07-31 Day-Timers, Inc. Method and system for printing individualized calendars
US6727919B1 (en) 1998-07-07 2004-04-27 International Business Machines Corporation Flexible mouse-driven method of user interface
US6466240B1 (en) 1998-07-08 2002-10-15 Vadim Maslov Method for visually writing programs or scripts that transform structured text presented as a tree
JP3549403B2 (ja) 1998-07-14 2004-08-04 株式会社リコー ファイルシステム
US6493007B1 (en) 1998-07-15 2002-12-10 Stephen Y. Pang Method and device for removing junk e-mail messages
US6414700B1 (en) 1998-07-21 2002-07-02 Silicon Graphics, Inc. System for accessing a large number of menu items using a zoned menu bar
US6307544B1 (en) 1998-07-23 2001-10-23 International Business Machines Corporation Method and apparatus for delivering a dynamic context sensitive integrated user assistance solution
GB2340358B (en) 1998-07-31 2002-11-13 Sony Uk Ltd Video special effects
US6359634B1 (en) * 1998-08-25 2002-03-19 International Business Machines Corporation Method and computer program product for graphical user interface (GUI) organization control for extending GUI applications
GB2341052B (en) 1998-08-26 2003-05-14 Nokia Mobile Phones Ltd Wireless communication terminal
JP2000090098A (ja) 1998-09-09 2000-03-31 Hitachi Ltd データベース問い合わせ方法及びその実施装置並びにその処理プログラムを記録した媒体
US6507845B1 (en) * 1998-09-14 2003-01-14 International Business Machines Corporation Method and software for supporting improved awareness of and collaboration among users involved in a task
US6373507B1 (en) 1998-09-14 2002-04-16 Microsoft Corporation Computer-implemented image acquistion system
US6232971B1 (en) 1998-09-23 2001-05-15 International Business Machines Corporation Variable modality child windows
US6195094B1 (en) * 1998-09-29 2001-02-27 Netscape Communications Corporation Window splitter bar system
US6480865B1 (en) 1998-10-05 2002-11-12 International Business Machines Corporation Facility for adding dynamism to an extensible markup language
US6313854B1 (en) 1998-10-16 2001-11-06 International Business Machines Corporation Display mechanism for HTML frames
CA2347760A1 (en) 1998-10-21 2000-04-27 American Calcar Inc. Positional camera and gps data interchange device
US7107548B2 (en) 1998-10-28 2006-09-12 Yahoo! Inc. Method of controlling an internet browser interface and a controllable browser interface
US6341277B1 (en) * 1998-11-17 2002-01-22 International Business Machines Corporation System and method for performance complex heterogeneous database queries using a single SQL expression
US6941304B2 (en) 1998-11-17 2005-09-06 Kana Software, Inc. Method and apparatus for performing enterprise email management
US6313834B1 (en) 1998-11-23 2001-11-06 Ibm Multi-format and multi-view synchronized data editor
US6571245B2 (en) 1998-12-07 2003-05-27 Magically, Inc. Virtual desktop in a computer network
US20030097361A1 (en) 1998-12-07 2003-05-22 Dinh Truong T Message center based desktop systems
US6546417B1 (en) 1998-12-10 2003-04-08 Intellinet, Inc. Enhanced electronic mail system including methods and apparatus for identifying mime types and for displaying different icons
US6353451B1 (en) * 1998-12-16 2002-03-05 Intel Corporation Method of providing aerial perspective in a graphical user interface
US6342901B1 (en) 1998-12-22 2002-01-29 Xerox Corporation Interactive device for displaying information from multiple sources
TW460839B (en) 1999-01-08 2001-10-21 Lg Electronics Inc User interface method of image display device
US6635089B1 (en) 1999-01-13 2003-10-21 International Business Machines Corporation Method for producing composite XML document object model trees using dynamic data retrievals
US6493731B1 (en) 1999-01-27 2002-12-10 Xerox Corporation Document management system for recording and viewing the history of document use
US6584501B1 (en) 1999-02-03 2003-06-24 Compuware Corporation Method to display information representing network traffic on a computer display monitor
US6385769B1 (en) 1999-02-03 2002-05-07 International Business Machines Corporation Text based object oriented program code with a visual program builder and parser support for predetermined and not predetermined formats
US6459441B1 (en) 1999-03-03 2002-10-01 Dassault Systemes Software interface
US6369840B1 (en) 1999-03-10 2002-04-09 America Online, Inc. Multi-layered online calendaring and purchasing
US6429882B1 (en) 1999-03-15 2002-08-06 Sun Microsystems, Inc. User interface component
US6486896B1 (en) 1999-04-07 2002-11-26 Apple Computer, Inc. Scalable scroll controller
US6466236B1 (en) 1999-04-08 2002-10-15 Palm, Inc. System and method for displaying and manipulating multiple calendars on a personal digital assistant
US6457062B1 (en) 1999-04-08 2002-09-24 Palm, Inc. System and method for synchronizing multiple calendars over wide area network
US6603493B1 (en) 1999-04-13 2003-08-05 International Business Machines Corporation Method for arranging display elements
JP2001034775A (ja) 1999-05-17 2001-02-09 Fuji Photo Film Co Ltd 履歴画像表示方法
US7100112B1 (en) 1999-05-20 2006-08-29 Microsoft Corporation Dynamic properties of documents and the use of these properties
US6539374B2 (en) 1999-06-03 2003-03-25 Microsoft Corporation Methods, apparatus and data structures for providing a uniform representation of various types of information
GB2350911B (en) 1999-06-10 2004-06-09 Ibm Form data files generator
JP2000353130A (ja) 1999-06-11 2000-12-19 Hitachi Ltd 電子メール処理装置
EP1208150A4 (en) * 1999-06-11 2005-01-26 Sydney Hyman IMAGE FORMING MATERIAL
US6691281B1 (en) * 1999-06-15 2004-02-10 Microsoft Corporation Publishing/republishing data tables in HTML documents while maintaining formatting and functionality for restoring back the data tables
US6456304B1 (en) 1999-06-30 2002-09-24 Microsoft Corporation Procedural toolbar user interface
US6976035B1 (en) 1999-06-30 2005-12-13 Siverbrook Research, Pty. Ltd Method and system for navigating a history list
US6707454B1 (en) 1999-07-01 2004-03-16 Lucent Technologies Inc. Systems and methods for visualizing multi-dimensional data in spreadsheets and other data structures
US6433831B1 (en) 1999-07-16 2002-08-13 Thomson Licensing S.A. Method and apparatus for automatically setting time information in a multi-format digital television product
US6567509B1 (en) 1999-07-22 2003-05-20 International Business Machines Corporation Method and system to extend functionality of voice processing systems
US6484180B1 (en) 1999-08-02 2002-11-19 Oracle Corporation Accessing domain object data stored in a relational database system
US6621504B1 (en) 1999-08-06 2003-09-16 Avid Technology, Inc. Editor for effect tree parameters
US6513036B2 (en) 1999-08-13 2003-01-28 Mindpass A/S Method and apparatus for searching and presenting search result from one or more information sources based on context representations selected from the group of other users
US6806890B2 (en) 1999-08-17 2004-10-19 International Business Machines Corporation Generating a graphical user interface from a command syntax for managing multiple computer systems as one computer system
US8015049B1 (en) 1999-08-18 2011-09-06 S.F. Ip Properties 61 Llc On-line appointment system
US6538673B1 (en) 1999-08-23 2003-03-25 Divine Technology Ventures Method for extracting digests, reformatting, and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation
US20020123984A1 (en) 1999-08-23 2002-09-05 Naveen Prakash Dynamic query of server applications
GB2353679A (en) 1999-08-25 2001-02-28 Ibm Prioritized display of messages
US6799095B1 (en) 1999-09-08 2004-09-28 Rockwell Collins Method and apparatus for interactively displaying a route window for a flight management system
US6779042B1 (en) 1999-09-10 2004-08-17 Ianywhere Solutions, Inc. System, method, and computer program product for enabling on-device servers, offline forms, and dynamic ad tracking on mobile devices
US6405216B1 (en) 1999-09-17 2002-06-11 International Business Machines Corporation Internet-based application program interface (API) documentation interface
US6630943B1 (en) 1999-09-21 2003-10-07 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6732330B1 (en) 1999-09-30 2004-05-04 International Business Machines Corporation Scripting language blocks to support multiple scripting languages in a single web page
JP2001109673A (ja) 1999-09-30 2001-04-20 Internatl Business Mach Corp <Ibm> グループウェアにおけるユーザの状態表示方法およびそれに用いる装置
US7082567B1 (en) 1999-10-18 2006-07-25 Rose Blush Software Llc Enhanced human computer user interface system for searching and browsing documents
US6578192B1 (en) 1999-10-20 2003-06-10 International Business Machines Corporation Method and system for supporting dynamic document content expressed in a component-level language
US7134095B1 (en) 1999-10-20 2006-11-07 Gateway, Inc. Simulated three-dimensional navigational menu system
US7152207B1 (en) 1999-11-05 2006-12-19 Decentrix Inc. Method and apparatus for providing conditional customization for generating a web site
EP1104151A3 (en) 1999-11-24 2003-03-12 Nokia Corporation Mobile station having improved user interface providing application management and other functions
US6734880B2 (en) 1999-11-24 2004-05-11 Stentor, Inc. User interface for a medical informatics systems
US6924797B1 (en) 1999-11-30 2005-08-02 International Business Machines Corp. Arrangement of information into linear form for display on diverse display devices
US20010044736A1 (en) 1999-12-08 2001-11-22 Jacobs Paul E. E-mail software and method and system for distributing advertisements to client devices that have such e-mail software installed thereon
US20010034762A1 (en) 1999-12-08 2001-10-25 Jacobs Paul E. E-mall software and method and system for distributing advertisements to client devices that have such e-mail software installed thereon
US20010044741A1 (en) 1999-12-08 2001-11-22 Jacobs Paul E. E-mail software and method and system for distributing advertisements to client devices that have such e-mail software installed thereon
US6892196B1 (en) 1999-12-22 2005-05-10 Accenture Llp System, method and article of manufacture for a user programmable diary interface link
JP2001251476A (ja) 1999-12-27 2001-09-14 Nikon Corp 画像入出力装置および資料提示装置
US6686938B1 (en) * 2000-01-05 2004-02-03 Apple Computer, Inc. Method and system for providing an embedded application toolbar
US20020073091A1 (en) 2000-01-07 2002-06-13 Sandeep Jain XML to object translation
US6904449B1 (en) 2000-01-14 2005-06-07 Accenture Llp System and method for an application provider framework
US6701513B1 (en) * 2000-01-14 2004-03-02 Measurement Computing Corporation Program-development environment for use in generating application programs
US6621508B1 (en) 2000-01-18 2003-09-16 Seiko Epson Corporation Information processing system
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
JP2001222477A (ja) 2000-02-08 2001-08-17 Nec Corp 電子メール記事管理システム
US6446118B1 (en) 2000-02-29 2002-09-03 Designtech International, Inc. E-mail notification device
KR20010091344A (ko) 2000-03-14 2001-10-23 이병철 하나의 브라우저화면에서 다수의 인터넷 사이트에 접속할수 있는 다중창 웹 브라우저
US7565403B2 (en) 2000-03-16 2009-07-21 Microsoft Corporation Use of a bulk-email filter within a system for classifying messages for urgency or importance
US6683633B2 (en) 2000-03-20 2004-01-27 Incontext Enterprises, Inc. Method and system for accessing information
US6654791B1 (en) 2000-03-24 2003-11-25 International Business Machines Corporation Method and apparatus for processing electronic mail using an importance indicator
AU2001251123A1 (en) 2000-03-30 2001-10-15 Iqbal A. Talib Methods and systems for enabling efficient retrieval of data from data collections
US6633867B1 (en) 2000-04-05 2003-10-14 International Business Machines Corporation System and method for providing a session query within the context of a dynamic search result set
US6756999B2 (en) 2000-04-06 2004-06-29 Microsoft Corporation Method and system for clustering and grouping taskbar buttons
US20050091576A1 (en) 2003-10-24 2005-04-28 Microsoft Corporation Programming interface for a computer platform
AU2001250201A1 (en) 2000-04-10 2001-10-23 Research In Motion Limited System and method for bundling information
US6618732B1 (en) 2000-04-11 2003-09-09 Revelink, Inc. Database query handler supporting querying of textual annotations of relations between data objects
US20030206646A1 (en) 2000-04-24 2003-11-06 Brackett Charles C. Imaging system having means for creating, managing and selecting from list of exam descriptions
CN1366760A (zh) * 2000-04-28 2002-08-28 索尼株式会社 可携带信息终端装置
US6789107B1 (en) 2000-05-03 2004-09-07 International Business Machines Corporation Method and apparatus for providing a view of an electronic mail message
US7249325B1 (en) 2000-05-11 2007-07-24 Palmsource, Inc. Automatically centered scrolling in a tab-based user interface
JP4148634B2 (ja) 2000-05-25 2008-09-10 富士通株式会社 カーソル表示を制御するプログラムを格納した記憶媒体及びカーソル表示制御装置
US6785868B1 (en) 2000-05-31 2004-08-31 Palm Source, Inc. Method and apparatus for managing calendar information from a shared database and managing calendar information from multiple users
EP1295197A2 (en) 2000-06-14 2003-03-26 Koninklijke Philips Electronics N.V. User interface with dynamic menu option organization
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7346848B1 (en) * 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US7111238B1 (en) 2000-06-23 2006-09-19 Microsoft Corporation System and method for maintaining text formatting consistency within an electronic document
WO2002005079A2 (en) 2000-07-07 2002-01-17 Openwave Systems, Inc. Graphical user interface features of a browser in a hand-held wireless communication device
US7178098B2 (en) * 2000-07-13 2007-02-13 International Business Machines Corporation Method and system in an electronic spreadsheet for handling user-defined options in a copy/cut—paste operation
US6948134B2 (en) 2000-07-21 2005-09-20 Microsoft Corporation Integrated method for creating a refreshable Web Query
US6583798B1 (en) 2000-07-21 2003-06-24 Microsoft Corporation On-object user interface
WO2002019128A1 (en) 2000-08-29 2002-03-07 Eloquent Tool for collaborative edit/search of dyanamic objects
US6847989B1 (en) 2000-08-29 2005-01-25 International Business Machines Corporation Method and system for creating mail rules from existing mail
US20020029247A1 (en) * 2000-09-04 2002-03-07 Mikio Kawamoto Electronic-mail transmission/reception apparatus hierarchizing and displaying electronic mails based on specified condition
US6717593B1 (en) 2000-09-12 2004-04-06 Avaya Technology Corp. Mark-up language implementation of graphical or non-graphical user interfaces
US6871195B2 (en) * 2000-09-13 2005-03-22 E-Promentor Method and system for remote electronic monitoring and mentoring of computer assisted performance support
US6990654B2 (en) 2000-09-14 2006-01-24 Bea Systems, Inc. XML-based graphical user interface application development toolkit
US6934740B1 (en) 2000-09-19 2005-08-23 3Com Corporation Method and apparatus for sharing common data objects among multiple applications in a client device
US6832244B1 (en) 2000-09-21 2004-12-14 International Business Machines Corporation Graphical e-mail content analyser and prioritizer including hierarchical email classification system in an email
JP3530475B2 (ja) * 2000-09-25 2004-05-24 三洋電機株式会社 折畳式通信端末装置および情報表示方法
US6981209B1 (en) 2000-09-26 2005-12-27 Microsoft Corporation Automatic layout of vertical flow oriented characters within a defined area
US6988241B1 (en) * 2000-10-16 2006-01-17 International Business Machines Corporation Client side, web-based spreadsheet
US6895426B1 (en) 2000-10-17 2005-05-17 Microsoft Corporation Addresses as objects for email messages
KR100388254B1 (ko) 2000-10-21 2003-06-25 (주)비앤텍 다이어리 형식을 이용한 전자메일의 표시 및 제어하는 방법 및 그 시스템
US6534128B1 (en) * 2000-11-09 2003-03-18 3M Innovative Properties Company Inks and other compositions incorporating low viscosity, radiation curable, polyester urethane oligomer
US7263668B1 (en) 2000-11-09 2007-08-28 International Business Machines Corporation Display interface to a computer controlled display system with variable comprehensiveness levels of menu items dependent upon size of variable display screen available for menu item display
US6825859B1 (en) 2000-11-13 2004-11-30 Corel Corporation System and method for processing content changes of on-screen items
US7039875B2 (en) 2000-11-30 2006-05-02 Lucent Technologies Inc. Computer user interfaces that are generated as needed
US20020073156A1 (en) 2000-12-08 2002-06-13 Xerox Corporation Method and system for mail folder displays
GB2370192A (en) 2000-12-15 2002-06-19 Nokia Mobile Phones Ltd Mobile phone with electronic trash can
US7020848B2 (en) 2000-12-20 2006-03-28 Eastman Kodak Company Comprehensive, multi-dimensional graphical user interface using picture metadata for navigating and retrieving pictures in a picture database
US6898592B2 (en) 2000-12-27 2005-05-24 Microsoft Corporation Scoping queries in a search engine
US6925605B2 (en) * 2000-12-28 2005-08-02 International Business Machines Corporation Collating table for email
US6907423B2 (en) 2001-01-04 2005-06-14 Sun Microsystems, Inc. Search engine interface and method of controlling client searches
US7266768B2 (en) 2001-01-09 2007-09-04 Sharp Laboratories Of America, Inc. Systems and methods for manipulating electronic information using a three-dimensional iconic representation
US6801227B2 (en) 2001-01-16 2004-10-05 Siemens Medical Solutions Health Services Inc. System and user interface supporting user navigation and concurrent application operation
US20020099775A1 (en) 2001-01-25 2002-07-25 Anoop Gupta Server system supporting collaborative messaging based on electronic mail
US20020149623A1 (en) 2001-01-26 2002-10-17 Alan West State and data driven dynamic menu and toolbar architecture
EP1360597A4 (en) * 2001-02-15 2005-09-28 Suffix Mail Inc E-MAIL MESSAGING SYSTEM
CA2372380A1 (en) 2001-02-20 2002-08-20 Martin D. Levine Method for secure transmission and receipt of data over a computer network using biometrics
US7110936B2 (en) 2001-02-23 2006-09-19 Complementsoft Llc System and method for generating and maintaining software code
US6906717B2 (en) 2001-02-27 2005-06-14 Microsoft Corporation Multiple chart user interface
US20020133557A1 (en) 2001-03-03 2002-09-19 Winarski Donna Ilene Robinson Sorting e-mail
US7788598B2 (en) 2001-03-16 2010-08-31 Siebel Systems, Inc. System and method for assigning and scheduling activities
US6964025B2 (en) 2001-03-20 2005-11-08 Microsoft Corporation Auto thumbnail gallery
US7174514B2 (en) 2001-03-28 2007-02-06 Siebel Systems, Inc. Engine to present a user interface based on a logical structure, such as one for a customer relationship management system, across a web site
TW502180B (en) 2001-03-30 2002-09-11 Ulead Systems Inc Previewing method of editing multimedia effect
CA2343496C (en) 2001-04-03 2006-08-22 Ibm Canada Limited-Ibm Canada Limitee Transmission of locale information
JP2002318770A (ja) 2001-04-20 2002-10-31 Nec Corp 受信メール自動振り分け装置、受信メール自動振り分け方法、および受信メール自動振り分けプログラム
EP1255211A1 (en) 2001-04-30 2002-11-06 Sun Microsystems, Inc. Method and computer system for displaying a table with column header inscriptions having a reduced horizontal size
US20030098891A1 (en) 2001-04-30 2003-05-29 International Business Machines Corporation System and method for multifunction menu objects
US20020163538A1 (en) 2001-05-07 2002-11-07 Koninklijke Philips Electronics N.V. Electronic mail guide
US7039647B2 (en) 2001-05-10 2006-05-02 International Business Machines Corporation Drag and drop technique for building queries
US8171414B2 (en) 2001-05-22 2012-05-01 Netapp, Inc. System and method for consolidated reporting of characteristics for a group of file systems
JP3922894B2 (ja) 2001-06-06 2007-05-30 富士通株式会社 物流情報処理方法
KR20010079028A (ko) 2001-06-07 2001-08-22 서정운 인터넷 메일링 시스템
US20020186257A1 (en) 2001-06-08 2002-12-12 Cadiz Jonathan J. System and process for providing dynamic communication access and information awareness in an interactive peripheral display
US7188317B1 (en) 2001-06-13 2007-03-06 Microsoft Corporation Dynamic multiple window display having independently linked windows
US7233937B2 (en) 2001-06-18 2007-06-19 Siebel Systems, Inc. Method, apparatus, and system for searching based on filter search specification
US7334196B2 (en) 2001-06-25 2008-02-19 Siemens Medical Solutions Health Services Corporation User interface display navigation and item selection system
US8001465B2 (en) 2001-06-26 2011-08-16 Kudrollis Software Inventions Pvt. Ltd. Compacting an information array display to cope with two dimensional display space constraint
US6829745B2 (en) 2001-06-28 2004-12-07 Koninklijke Philips Electronics N.V. Method and system for transforming an XML document to at least one XML document structured according to a subset of a set of XML grammar rules
JP2003203084A (ja) 2001-06-29 2003-07-18 Hitachi Ltd 情報端末装置、サーバ、情報配信装置及び情報配信方法
US6826729B1 (en) 2001-06-29 2004-11-30 Microsoft Corporation Gallery user interface controls
JP2003015719A (ja) 2001-06-29 2003-01-17 Oki Electric Ind Co Ltd プロジェクトマネージメント支援システム
US7080355B2 (en) * 2001-07-06 2006-07-18 Logiclibrary, Inc. Targeted asset capture, identification, and management
US20030011638A1 (en) * 2001-07-10 2003-01-16 Sun-Woo Chung Pop-up menu system
US7620911B2 (en) * 2001-07-12 2009-11-17 Autodesk, Inc. Collapsible dialog window
US7251776B2 (en) 2001-07-13 2007-07-31 Netview Technologies, Inc. System and method for efficiently and flexibly utilizing spreadsheet information
US20030066025A1 (en) 2001-07-13 2003-04-03 Garner Harold R. Method and system for information retrieval
GB2377858B (en) * 2001-07-19 2005-04-20 Inventec Appliances Corp Method for simplifying cellular phone menu selection
US20030084035A1 (en) 2001-07-23 2003-05-01 Emerick Charles L. Integrated search and information discovery system
US20030097640A1 (en) 2001-07-25 2003-05-22 International Business Machines Corporation System and method for creating and editing documents
US7240323B1 (en) 2001-07-26 2007-07-03 Emc Corporation Plug and play interface for user actions
US7461077B1 (en) 2001-07-31 2008-12-02 Nicholas Greenwood Representation of data records
US20030025732A1 (en) * 2001-07-31 2003-02-06 Prichard Scot D. Method and apparatus for providing customizable graphical user interface and screen layout
US6950993B2 (en) * 2001-08-02 2005-09-27 Microsoft Corporation System and method for automatic and dynamic layout of resizable dialog type windows
US20030043200A1 (en) * 2001-08-09 2003-03-06 Urbanpixel Inc Interactive multi-level mapping in a multiple browser environment
US6999068B2 (en) * 2001-08-21 2006-02-14 Hewlett-Packard Development Company, L.P. System and method for enabling users to edit graphical images
US7046848B1 (en) 2001-08-22 2006-05-16 Olcott Peter L Method and system for recognizing machine generated character glyphs and icons in graphic images
US20030128243A1 (en) 2001-08-22 2003-07-10 Hiroyuki Okamoto Tree-structured diagram output method and program
US20030043211A1 (en) * 2001-09-05 2003-03-06 Kremer Karl Heinz Image-forming system having a graphic user interface with print option representation using thumbnail images
US6944818B2 (en) 2001-09-10 2005-09-13 Xerox Corporation Method and apparatus for the viewing and exploration of the content of hierarchical information
US20030050986A1 (en) 2001-09-13 2003-03-13 Matthews Charles R. System and method for community interfaces
JP3938857B2 (ja) 2001-09-21 2007-06-27 株式会社リコー 画像形成装置
JP2003108486A (ja) 2001-09-28 2003-04-11 Hitachi Kokusai Electric Inc 無線通信端末
US20030069892A1 (en) 2001-10-10 2003-04-10 International Business Machines Corporation Relational view of electronic objects
US7305402B2 (en) 2001-10-10 2007-12-04 International Business Machines Corporation Adaptive indexing technique for use with electronic objects
US7499907B2 (en) 2001-10-12 2009-03-03 Teradata Us, Inc. Index selection in a database system
JP2003141020A (ja) 2001-10-31 2003-05-16 Toshiba Tec Corp 情報保管出力システム及び情報保管出力サービス
US7032210B2 (en) 2001-11-11 2006-04-18 International Business Machines Corporation Method and system for generating program source code of a computer application from an information model
US20030177190A1 (en) 2001-11-27 2003-09-18 International Business Machines Corporation Method and apparatus for interaction with electronic mail from multiple sources
US7363590B2 (en) * 2001-11-27 2008-04-22 International Business Machines Corporation Calendar bar interface for electronic mail interaction
US7359936B2 (en) 2001-11-27 2008-04-15 International Business Machines Corporation Method and apparatus for electronic mail interaction with grouped message types
US20030163537A1 (en) 2001-11-27 2003-08-28 International Business Machines Corporation Method and apparatus for handling conversation threads and message groupings as a single entity
US6928613B1 (en) 2001-11-30 2005-08-09 Victor Company Of Japan Organization, selection, and application of video effects according to zones
GB2382683A (en) 2001-12-03 2003-06-04 Skinkers Ltd A message processing system
US20030135825A1 (en) 2001-12-05 2003-07-17 Matthew Gertner Dynamically generated mark-up based graphical user interfaced with an extensible application framework with links to enterprise resources
US6801230B2 (en) 2001-12-18 2004-10-05 Stanley W. Driskell Method to display and manage computer pop-up controls
TW527812B (en) 2001-12-25 2003-04-11 Inventec Corp Mobile communication electronic device and method for automatically simplifying function menu
JP4355121B2 (ja) * 2001-12-28 2009-10-28 パイオニア株式会社 電子メール送受信システムの管理方法
WO2003058519A2 (en) 2002-01-08 2003-07-17 Sap Aktiengesellschaft Enhanced email management system
US7039596B1 (en) 2002-01-18 2006-05-02 America Online, Inc. Calendar overlays
JP4490026B2 (ja) 2002-01-28 2010-06-23 日立オムロンターミナルソリューションズ株式会社 カスタマイズ可能な情報処理装置
US7421660B2 (en) 2003-02-04 2008-09-02 Cataphora, Inc. Method and apparatus to visually present discussions for data mining purposes
DE10204657A1 (de) 2002-02-05 2003-08-07 Rohde & Schwarz Nachrichtenanalyseeinrichtung und Verfahren zum Anzeigen von Nachrichten
US20030154254A1 (en) 2002-02-14 2003-08-14 Nikhil Awasthi Assisted messaging for corporate email systems
JP2003242178A (ja) 2002-02-20 2003-08-29 Fuji Photo Film Co Ltd フォルダ・アイコン表示制御装置
JP2002324055A (ja) 2002-02-20 2002-11-08 Internatl Business Mach Corp <Ibm> メッセージ処理方法
KR100475432B1 (ko) 2002-02-26 2005-03-10 삼성전자주식회사 그래픽 사용자 인터페이스의 디자인 변경 방법 및 이를 위한 기록매체
US6947928B2 (en) 2002-02-26 2005-09-20 International Business Machines Corporation Graphical user interface for building queries with hierarchical conditions
US6850255B2 (en) * 2002-02-28 2005-02-01 James Edward Muschetto Method and apparatus for accessing information, computer programs and electronic communications across multiple computing devices using a graphical user interface
JP4279499B2 (ja) 2002-03-01 2009-06-17 シャープ株式会社 情報処理装置
KR20030072539A (ko) 2002-03-04 2003-09-15 설정권 차량의 연비 측정시스템
JP4206673B2 (ja) 2002-03-04 2009-01-14 セイコーエプソン株式会社 画像または音声の入出力制御
US7003730B2 (en) 2002-03-08 2006-02-21 International Business Machines Corporation Graphical user interface to build event-based dynamic searches or queries using event profiles
US7386835B1 (en) 2002-03-22 2008-06-10 Emc Corporation Technique for graphical user interface modification
US20040117451A1 (en) 2002-03-22 2004-06-17 Chung Michael Myung-Jin Methods and systems for electronic mail internet target and direct marketing and electronic mail banner
US7899681B2 (en) 2002-03-29 2011-03-01 3M Innovative Properties Company Electronic management of sterilization process information
US7099656B2 (en) 2002-04-03 2006-08-29 International Business Machines Corporation Integrated calendar and phonemail system
US20030195937A1 (en) 2002-04-16 2003-10-16 Kontact Software Inc. Intelligent message screening
AU2003228616A1 (en) 2002-04-19 2003-11-03 Walker Digital, Llc Method for employing flat rate play
US20030200267A1 (en) 2002-04-22 2003-10-23 Garrigues James F. Email management system
JP2003316630A (ja) 2002-04-24 2003-11-07 Konica Minolta Holdings Inc 記録媒体
US20040012633A1 (en) * 2002-04-26 2004-01-22 Affymetrix, Inc., A Corporation Organized Under The Laws Of Delaware System, method, and computer program product for dynamic display, and analysis of biological sequence data
US7149983B1 (en) 2002-05-08 2006-12-12 Microsoft Corporation User interface and method to facilitate hierarchical specification of queries using an information taxonomy
US7395221B2 (en) 2002-05-09 2008-07-01 International Business Machines Corporation Intelligent free-time search
WO2003098500A1 (en) 2002-05-16 2003-11-27 Decision Curve Limited Method and apparatus for automatically producing spreadsheet-based models
US6972762B2 (en) 2002-05-21 2005-12-06 Microsoft Corporation System and method for interactive grouping of pie chart slices
US20040100504A1 (en) 2002-05-24 2004-05-27 Jored Sommer Item selection systems and methods of displaying the same
US7434163B2 (en) 2002-05-31 2008-10-07 Sap Aktiengesellschaft Document structures for delta handling in server pages
US20030227487A1 (en) 2002-06-01 2003-12-11 Hugh Harlan M. Method and apparatus for creating and accessing associative data structures under a shared model of categories, rules, triggers and data relationship permissions
US7287233B2 (en) 2002-06-05 2007-10-23 Sap Ag Minimization function for a computer user interface
US7113941B2 (en) 2002-06-05 2006-09-26 Sap Aktiengesellschaft Database access mechanisms for a computer user interface
GB2389499B (en) 2002-06-06 2005-09-28 Focus Solutions Group Plc Electronic data capture and verification
US7191411B2 (en) 2002-06-06 2007-03-13 Moehrle Armin E Active path menu navigation system
US7356537B2 (en) 2002-06-06 2008-04-08 Microsoft Corporation Providing contextually sensitive tools and help content in computer-generated documents
US8117263B2 (en) 2002-06-07 2012-02-14 At&T Intellectual Property I, L.P. Systems and methods for delivering time sensitive messages over a distributed network
US7464139B2 (en) 2002-06-07 2008-12-09 At&T Intellectual Property, I, L.P. Methods for establishing an instant message conference
EP1376337A1 (en) 2002-06-12 2004-01-02 Commerce One Operations, Inc. Action/command/business object application framework
US7721216B2 (en) 2002-06-18 2010-05-18 Microsoft Corporation Visual group interface for group connectivity
US20040001099A1 (en) 2002-06-27 2004-01-01 Microsoft Corporation Method and system for associating actions with semantic labels in electronic documents
US7634460B2 (en) 2002-06-28 2009-12-15 Sas Institute Inc. Computer-implemented data replacement graphical user interface system and method
US20040003351A1 (en) * 2002-06-28 2004-01-01 Microsoft Corporation Navigating a resource browser session
US7421442B2 (en) * 2002-07-02 2008-09-02 American Express Travel Related Services Company, Inc. System and method for data capture and reporting
US20050021521A1 (en) 2002-07-03 2005-01-27 Wycoff Robert E. Embedding Internet message board display links
US8874503B2 (en) 2002-07-15 2014-10-28 Jmw Productivity, Llc Method, system and apparatus for organizing information for managing life affairs
GB2391148B (en) 2002-07-19 2006-01-04 Autodesk Canada Inc Selecting functions via a graphical user interface
US6868424B2 (en) 2002-07-25 2005-03-15 Xerox Corporation Electronic filing system with file-placeholders
US7058902B2 (en) 2002-07-30 2006-06-06 Microsoft Corporation Enhanced on-object context menus
US20040030993A1 (en) * 2002-08-08 2004-02-12 Hong Huey Anna Onon Methods and apparatus for representing dynamic data in a software development environment
JP3845046B2 (ja) 2002-08-16 2006-11-15 株式会社ジャストシステム 文書管理方法および文書管理装置
US20040109025A1 (en) 2002-08-28 2004-06-10 Jean-Marie Hullot Computer program comprising a plurality of calendars
US20040044735A1 (en) 2002-08-30 2004-03-04 International Business Machines Corporation Method and system for organizing an email thread
EP1546972A1 (en) * 2002-09-09 2005-06-29 Apple Computer, Inc. A computer program comprising a plurality of calendars
JP2004102803A (ja) 2002-09-11 2004-04-02 Hitachi Software Eng Co Ltd 掲示板システム及び情報表示方法
US8032597B2 (en) 2002-09-18 2011-10-04 Advenix, Corp. Enhancement of e-mail client user interfaces and e-mail message formats
US20040056894A1 (en) * 2002-09-19 2004-03-25 Igor Zaika System and method for describing and instantiating extensible user interfaces
TW591398B (en) * 2002-09-26 2004-06-11 Tatung Co Method of implementing a plurality of system tray areas
US7386535B1 (en) 2002-10-02 2008-06-10 Q.Know Technologies, Inc. Computer assisted and/or implemented method for group collarboration on projects incorporating electronic information
US7657838B2 (en) 2002-10-08 2010-02-02 At&T Intellectual Property I, L.P. Preventing execution of programs that are embedded in email messages
US7317441B2 (en) 2002-10-09 2008-01-08 Mitsubishi Denki Kabushiki Kaisha Constant current circuit, drive circuit and image display device
US20040073503A1 (en) 2002-10-15 2004-04-15 Ramon Morales Method and system for managing and processing service requests
US7206813B2 (en) 2002-10-17 2007-04-17 International Business Machines Corporation Method, computer program product and apparatus for implementing professional use of instant messaging
US7296241B2 (en) 2002-10-18 2007-11-13 Microsoft Corporation System and method for managing a message view
JP2004145569A (ja) 2002-10-23 2004-05-20 Internatl Business Mach Corp <Ibm> 文書表示システム、文書表示方法、およびプログラム
US20040153968A1 (en) 2002-10-24 2004-08-05 Jennie Ching Method and system for user customizable asset metadata generation in a web-based asset management system
US20040230508A1 (en) 2002-10-29 2004-11-18 Minnis Raymond Albert System for generating financial statements using templates
US7200636B2 (en) 2002-11-01 2007-04-03 Sun Microsystems, Inc. Method and apparatus for applying personalized rules to e-mail messages at an e-mail server
US7469280B2 (en) * 2002-11-04 2008-12-23 Sun Microsystems, Inc. Computer implemented system and method for predictive management of electronic messages
JP2004159261A (ja) 2002-11-08 2004-06-03 Nippon Telegr & Teleph Corp <Ntt> スレッド生成方法、スレッド生成装置、スレッド生成プログラム、及び記録媒体
US20040100505A1 (en) 2002-11-21 2004-05-27 Cazier Robert Paul System for and method of prioritizing menu information
US20040153973A1 (en) 2002-11-21 2004-08-05 Lawrence Horwitz System and method for automatically storing and recalling application states based on application contexts
JP2005032041A (ja) 2003-07-07 2005-02-03 Nippon Telegr & Teleph Corp <Ntt> リンク先コンテンツの連続閲覧支援装置、連続閲覧支援方法、ポップアップウィンドウの表示制御方法および消去制御方法
US20040107197A1 (en) 2002-11-29 2004-06-03 Shen Yu Yong System, method and user interface allowing customized portfolio management
JP2004185464A (ja) 2002-12-05 2004-07-02 Ricoh Co Ltd 情報処理装置、プログラムおよび記録媒体
CA2414053A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
US20040119755A1 (en) 2002-12-18 2004-06-24 Nicolas Guibourge One hand quick dialer for communications devices
US7337401B2 (en) 2002-12-18 2008-02-26 Microsoft Corporation User interface element representation with simplified view
SE0203848D0 (sv) 2002-12-19 2002-12-19 Sca Hygiene Prod Ab Solid rolls dispenser
US7360174B2 (en) 2002-12-19 2008-04-15 Microsoft Corporation Contact user interface
AU2002953500A0 (en) 2002-12-20 2003-01-09 Redbank Manor Pty Ltd A system and method of requesting, viewing and acting on search results in a time-saving manner
US7376698B2 (en) 2002-12-20 2008-05-20 Sap Ag System for preserving scripting objects and cloning the objects to a new document in response to a reload of the new document
US7181689B2 (en) 2002-12-31 2007-02-20 Motorola Inc. Method for sorting and displaying a multiple user database
US20040133854A1 (en) 2003-01-08 2004-07-08 Black Karl S. Persistent document object model
US6950652B2 (en) 2003-01-08 2005-09-27 Vtech Telecommunications Limited Remote management of an external phonebook
US20060111931A1 (en) 2003-01-09 2006-05-25 General Electric Company Method for the use of and interaction with business system transfer functions
US20040135811A1 (en) 2003-01-14 2004-07-15 Craig Pickering Method and system for displaying data fields
US20040186775A1 (en) 2003-01-29 2004-09-23 Margiloff William A. Systems and methods for providing an improved toolbar
KR20040071813A (ko) * 2003-02-07 2004-08-16 황재엽 메일목록표시가 개선된 전자메일서비스방법
US7212208B2 (en) 2003-02-25 2007-05-01 Bahram Khozai System and method to present and display multiple data using enhanced box charts
US7539985B2 (en) 2003-02-26 2009-05-26 Bea Systems, Inc. Systems and methods for dynamic component versioning
US7636722B2 (en) 2003-02-28 2009-12-22 Bea Systems, Inc. System and method for describing application extensions in XML
US7206814B2 (en) 2003-10-09 2007-04-17 Propel Software Corporation Method and system for categorizing and processing e-mails
US9003295B2 (en) 2003-03-17 2015-04-07 Leo Martin Baschy User interface driven access control system and method
US6983889B2 (en) * 2003-03-21 2006-01-10 Home Comfort Zones, Inc. Forced-air zone climate control system for existing residential houses
US7823077B2 (en) 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
AU2003901411A0 (en) 2003-03-27 2003-04-10 Smart Internet Technology Crc Pty Limited E-mail management system and method
US7846023B2 (en) 2003-03-27 2010-12-07 Microsoft Corporation Application-centric user interface techniques
JP4340566B2 (ja) 2003-04-01 2009-10-07 株式会社リコー Webページ生成装置、組み込み装置、Webページ生成の制御方法、Webページ生成プログラム及び記録媒体
US7290218B2 (en) 2003-04-03 2007-10-30 At&T Bls Intellectual Property, Inc. Method of providing a user interface for a digital cross-connect system
US7188308B2 (en) 2003-04-08 2007-03-06 Thomas Weise Interface and method for exploring a collection of data
US7328409B2 (en) * 2003-04-17 2008-02-05 International Business Machines Corporation Method, system, and computer program product for user customization of menu items
US7290033B1 (en) 2003-04-18 2007-10-30 America Online, Inc. Sorting electronic messages using attributes of the sender address
US7343567B2 (en) 2003-04-25 2008-03-11 Microsoft Corporation System and method for providing dynamic user information in an interactive display
US20040215612A1 (en) 2003-04-28 2004-10-28 Moshe Brody Semi-boolean arrangement, method, and system for specifying and selecting data objects to be retrieved from a collection
US7337185B2 (en) * 2003-04-30 2008-02-26 Yahoo! Inc. System and method for providing an improved graphical user interface for search
JP4347123B2 (ja) 2003-05-02 2009-10-21 キヤノン株式会社 文書処理システムおよび文書処理方法およびコンピュータが読取り可能な記憶媒体およびプログラム
US7567964B2 (en) 2003-05-08 2009-07-28 Oracle International Corporation Configurable search graphical user interface and engine
EP1477894A3 (en) 2003-05-16 2006-10-25 Sap Ag System, method, computer program product and article of manufacture for manipulating a graphical user interface
RU2322687C2 (ru) 2003-05-17 2008-04-20 Майкрософт Корпорейшн Система и способ для обеспечения множественных воспроизведений содержания документов
US8275742B2 (en) 2003-05-19 2012-09-25 Sap Aktiengesellschaft Data importation and exportation for computing devices
CN1553377A (zh) 2003-05-26 2004-12-08 珠海金山软件股份有限公司 科学公式可视化编辑的系统及方法
US7584253B2 (en) 2003-05-27 2009-09-01 Sun Microsystems, Inc. Method and system for creating and tracking appointments and tasks from email messages
WO2004109557A1 (en) 2003-06-03 2004-12-16 Forbes Holten Norris, Iii Flexible, dynamic menu-based web-page architecture
US8447775B2 (en) 2003-06-13 2013-05-21 Microsoft Corporation Database query user interface to assist in efficient and accurate query construction
US7904323B2 (en) 2003-06-23 2011-03-08 Intel Corporation Multi-team immersive integrated collaboration workspace
US7421690B2 (en) 2003-06-23 2008-09-02 Apple Inc. Threaded presentation of electronic mail
US7178101B2 (en) 2003-06-24 2007-02-13 Microsoft Corporation Content template system
US7890852B2 (en) 2003-06-26 2011-02-15 International Business Machines Corporation Rich text handling for a web application
US9715678B2 (en) 2003-06-26 2017-07-25 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US7707255B2 (en) * 2003-07-01 2010-04-27 Microsoft Corporation Automatic grouping of electronic mail
US8799808B2 (en) * 2003-07-01 2014-08-05 Microsoft Corporation Adaptive multi-line view user interface
US20050005249A1 (en) * 2003-07-01 2005-01-06 Microsoft Corporation Combined content selection and display user interface
US7392249B1 (en) 2003-07-01 2008-06-24 Microsoft Corporation Methods, systems, and computer-readable mediums for providing persisting and continuously updating search folders
US7716593B2 (en) * 2003-07-01 2010-05-11 Microsoft Corporation Conversation grouping of electronic mail records
JP2005025550A (ja) 2003-07-03 2005-01-27 Fujitsu Ltd 電子文書管理装置および管理方法
US7565622B2 (en) 2003-07-10 2009-07-21 Lenovo (Singapore) Pte Ltd. Method and apparatus for modification of pointing device functions in conjunction with dynamic sorting, displaying, listing, and activation
US7027463B2 (en) 2003-07-11 2006-04-11 Sonolink Communications Systems, Llc System and method for multi-tiered rule filtering
WO2005008432A2 (en) * 2003-07-11 2005-01-27 Sonolink Communications Systems, Llc System and method for advanced rule creation and management within an integrated virtual workspace
US7085757B2 (en) 2003-07-11 2006-08-01 International Business Machines Corporation Abstract data linking and joining interface
JP4428952B2 (ja) 2003-07-14 2010-03-10 キヤノン株式会社 ユーザインタフェース制御装置及びその方法
US20050015361A1 (en) 2003-07-15 2005-01-20 International Business Machines Corporation Model content provider with reusable components for supporting a plurality of GUI API's
US8458164B2 (en) 2003-07-15 2013-06-04 International Business Machines Corporation Query model tool and method for visually grouping and ungrouping predicates
US20050044500A1 (en) * 2003-07-18 2005-02-24 Katsunori Orimoto Agent display device and agent display method
US20050021504A1 (en) * 2003-07-22 2005-01-27 Charles Atchison Methods, systems, and computer program products for querying a database for employee data and organizing the obtained data
US20050027779A1 (en) 2003-07-29 2005-02-03 Schinner Charles Edward System and method for organizing email messages
US7050987B2 (en) * 2003-08-05 2006-05-23 Sabre Inc. System and method for coordinating travel itineraries
JP2005056233A (ja) * 2003-08-06 2005-03-03 Nec Corp 移動体通信装置、移動体通信装置の電子メールの受信動作方法及びその電子メールの受信動作プログラム
US7325204B2 (en) * 2003-08-29 2008-01-29 Yahoo! Inc. Slideout windows
US7395500B2 (en) 2003-08-29 2008-07-01 Yahoo! Inc. Space-optimizing content display
KR100562905B1 (ko) 2003-09-02 2006-03-21 삼성전자주식회사 어플리케이션 프로그램 모듈의 동적 배치 방법
US8417704B2 (en) * 2003-09-09 2013-04-09 Hewlett-Packard Development Company, L.P. Extensible agent system and method
US7533115B2 (en) * 2003-09-16 2009-05-12 International Business Machines Corporation Method for managing persistent federated folders within a federated content management system
US20050071242A1 (en) 2003-09-30 2005-03-31 Nike International Ltd. Method and system for custom-manufacturing footwear
US7277572B2 (en) 2003-10-10 2007-10-02 Macpearl Design Llc Three-dimensional interior design system
US7548334B2 (en) 2003-10-15 2009-06-16 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
US20050144241A1 (en) 2003-10-17 2005-06-30 Stata Raymond P. Systems and methods for a search-based email client
US20050086135A1 (en) 2003-10-20 2005-04-21 Li-Chin Lu Automatic bookkeeping system
US6990637B2 (en) * 2003-10-23 2006-01-24 Microsoft Corporation Graphical user interface for 3-dimensional view of a data collection based on an attribute of the data
US7346769B2 (en) 2003-10-23 2008-03-18 International Business Machines Corporation Method for selective encryption within documents
US8103722B2 (en) 2003-10-29 2012-01-24 Inter-Tel, Inc. Endpoint status notification system
US20050117179A1 (en) 2003-11-06 2005-06-02 Tatsuo Ito Output information providing method, output information providing system, document outputting method, and document outputting system
US7356772B2 (en) 2003-11-25 2008-04-08 International Business Machines Corporation Multi-column user interface for managing on-line threaded conversations
US7480863B2 (en) 2003-11-26 2009-01-20 International Business Machines Corporation Dynamic and intelligent hover assistance
US7149731B2 (en) 2003-11-26 2006-12-12 International Business Machines Corporation Methods, systems and articles of manufacture for abstract query building with selectability of aggregation operations and grouping
US7434157B2 (en) 2003-12-09 2008-10-07 Microsoft Corporation Programmable object model for namespace or schema library support in a software application
US7711742B2 (en) 2003-12-11 2010-05-04 International Business Machines Corporation Intelligent data query builder
US20050132010A1 (en) 2003-12-12 2005-06-16 International Business Machines Corporation Scheduled electronic mail deletions
JP2005182353A (ja) 2003-12-18 2005-07-07 Nec Corp 電子メール検索システム、電子メール検索装置及び電子メール検索制御プログラム
US7454716B2 (en) 2003-12-22 2008-11-18 Microsoft Corporation Clustering messages
US7996514B2 (en) 2003-12-23 2011-08-09 Microsoft Corporation System and method for sharing information based on proximity
US7412437B2 (en) 2003-12-29 2008-08-12 International Business Machines Corporation System and method for searching and retrieving related messages
US7496385B2 (en) 2003-12-29 2009-02-24 International Business Machines Corporation Method for viewing information underlying lists and other contexts
US7631276B2 (en) 2003-12-29 2009-12-08 International Business Machines Corporation Method for indication and navigating related items
US7421664B2 (en) 2003-12-29 2008-09-02 International Business Machines Corporation System and method for providing a category separator in a list of documents
US7590694B2 (en) 2004-01-16 2009-09-15 Gozoom.Com, Inc. System for determining degrees of similarity in email message information
US20050172262A1 (en) 2004-01-30 2005-08-04 Ahika Corporation Site menu - browser toolbar-based user interface for navigating web site pages
US6956429B1 (en) 2004-02-09 2005-10-18 Fairchild Semiconductor Corporation Low dropout regulator using gate modulated diode
US7231590B2 (en) 2004-02-11 2007-06-12 Microsoft Corporation Method and apparatus for visually emphasizing numerical data contained within an electronic document
US7856596B2 (en) 2004-02-17 2010-12-21 Microsoft Corporation Method and system for separation of content and layout definitions in a display description
US7469385B2 (en) 2004-02-20 2008-12-23 Microsoft Corporation Methods and systems for abstraction of logical editing operations
JP2005236089A (ja) 2004-02-20 2005-09-02 Matsushita Electric Ind Co Ltd 三次元実装構造体、三次元実装構造体を備えた携帯用電子機器、および、三次元実装構造体の製造方法
US8122377B2 (en) 2004-03-09 2012-02-21 Siebel Systems, Inc. Preserving user interface customizations while upgrading an enterprise application
US7555707B1 (en) 2004-03-12 2009-06-30 Microsoft Corporation Method and system for data binding in a block structured user interface scripting language
KR101236619B1 (ko) 2004-03-15 2013-02-22 야후! 인크. 사용자 주석이 통합된 검색 시스템 및 방법
US9819624B2 (en) 2004-03-31 2017-11-14 Google Inc. Displaying conversations in a conversation-based email system
US7426713B2 (en) 2004-03-31 2008-09-16 International Business Machines Corporation Controlling a GUI display for a plug-in
US7814155B2 (en) * 2004-03-31 2010-10-12 Google Inc. Email conversation management system
US7912904B2 (en) 2004-03-31 2011-03-22 Google Inc. Email system with conversation-centric user interface
US7574674B2 (en) 2004-04-02 2009-08-11 Microsoft Corporation Method for controlling filename display for image and video file types
US7370282B2 (en) 2004-04-06 2008-05-06 Cary James C Grouping and displaying multiple tasks within an event object of an electronic calendar
WO2005109904A2 (en) * 2004-04-30 2005-11-17 Vulcan, Inc. Maintaining a graphical user interface state that is based on a selected type of content
CA2466253A1 (en) 2004-05-04 2005-11-04 Ibm Canada Limited - Ibm Canada Limitee Display of enlarged visual container graphical user interface (gui) components during gui layout or design
US20060026213A1 (en) * 2004-06-02 2006-02-02 Blackboard Inc. Content and portal systems and associated methods
US20050278656A1 (en) 2004-06-10 2005-12-15 Microsoft Corporation User control for dynamically adjusting the scope of a data set
JP4599898B2 (ja) 2004-06-11 2010-12-15 富士ゼロックス株式会社 画面表示制御のためのプログラム、方法及び携帯情報機器
US7954050B2 (en) 2004-06-25 2011-05-31 Icesoft Technologies Canada Corp. Systems and methods for rendering and increasing portability of document-based user interface software objects
US7509328B2 (en) 2004-06-25 2009-03-24 Sap Aktiengesellschaft Customizing software applications that use an electronic database with stored product data
US7437358B2 (en) 2004-06-25 2008-10-14 Apple Inc. Methods and systems for managing data
US20050289159A1 (en) 2004-06-29 2005-12-29 The Boeing Company Web-enabled real-time link selection apparatus and method
US8463872B2 (en) 2004-07-02 2013-06-11 Broadsoft Casabi, Llc Method and apparatus for a family center
US8572494B2 (en) * 2004-07-14 2013-10-29 International Business Machines Corporation Framework for development and customization of web services deployment descriptors
US8527499B2 (en) 2004-07-19 2013-09-03 Sap Ag Computer implemented method and system for a user search interface
US7844587B2 (en) 2004-07-23 2010-11-30 Oracle International Corporation Web-based user interface for searching metadata-driven relational databases
US7877266B2 (en) * 2004-07-28 2011-01-25 Dun & Bradstreet, Inc. System and method for using social networks to facilitate business processes
US20060026242A1 (en) * 2004-07-30 2006-02-02 Wireless Services Corp Messaging spam detection
US7720845B2 (en) * 2004-08-13 2010-05-18 Yahoo! Inc. Systems and methods for updating query results based on query deltas
US8117542B2 (en) 2004-08-16 2012-02-14 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object
US7703036B2 (en) 2004-08-16 2010-04-20 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US8255828B2 (en) 2004-08-16 2012-08-28 Microsoft Corporation Command user interface for displaying selectable software functionality controls
US7895531B2 (en) 2004-08-16 2011-02-22 Microsoft Corporation Floating command object
US9015621B2 (en) 2004-08-16 2015-04-21 Microsoft Technology Licensing, Llc Command user interface for displaying multiple sections of software functionality controls
US7505954B2 (en) * 2004-08-18 2009-03-17 International Business Machines Corporation Search bar with intelligent parametric search statement generation
US8239375B2 (en) 2004-08-31 2012-08-07 Research In Motion Limited Method of searching for personal information management (PIM) information and handheld electronic device employing the same
US7596594B2 (en) 2004-09-02 2009-09-29 Yahoo! Inc. System and method for displaying and acting upon email conversations across folders
US8150926B2 (en) 2004-09-09 2012-04-03 Microsoft Corporation Organizing electronic mail messages into conversations
US9189756B2 (en) 2004-09-21 2015-11-17 International Business Machines Corporation Case management system and method for collaborative project teaming
US7933862B2 (en) 2004-09-27 2011-04-26 Microsoft Corporation One click conditional formatting method and system for software programs
US7747966B2 (en) 2004-09-30 2010-06-29 Microsoft Corporation User interface for providing task management and calendar information
US7788589B2 (en) 2004-09-30 2010-08-31 Microsoft Corporation Method and system for improved electronic task flagging and management
US20060069686A1 (en) 2004-09-30 2006-03-30 Siemens Information And Communication Networks, Inc. System and method for predicting availability
US8126895B2 (en) 2004-10-07 2012-02-28 Computer Associates Think, Inc. Method, apparatus, and computer program product for indexing, synchronizing and searching digital data
US20060095865A1 (en) 2004-11-04 2006-05-04 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US8402384B2 (en) 2004-11-09 2013-03-19 Research In Motion Limited Dynamic bar oriented user interface
EP1835434A1 (en) 2004-11-12 2007-09-19 JustSystems Corporation Data processing device and data processing method
US8001476B2 (en) 2004-11-16 2011-08-16 Open Text Inc. Cellular user interface
US7793273B2 (en) 2004-11-23 2010-09-07 National Instruments Corporation Type propagation for automatic casting of output types in a data flow program
CN100458774C (zh) 2004-11-29 2009-02-04 国际商业机器公司 文档编辑器及文档编辑方法
TWI254878B (en) 2004-12-03 2006-05-11 Hon Hai Prec Ind Co Ltd System and method for operating file list on the web page
US20060132812A1 (en) 2004-12-17 2006-06-22 You Software, Inc. Automated wysiwyg previewing of font, kerning and size options for user-selected text
US7546522B2 (en) 2004-12-20 2009-06-09 Microsoft Corporation Method, system, and computer-readable medium for applying a global formatting scheme to a chart in an electronic document
US7487216B2 (en) 2005-01-18 2009-02-03 International Business Machines Corporation System and method for managing display of a multiple message electronic mail thread
US20060168522A1 (en) 2005-01-24 2006-07-27 Microsoft Corporation Task oriented user interface model for document centric software applications
US20060173824A1 (en) 2005-02-01 2006-08-03 Metalincs Corporation Electronic communication analysis and visualization
US8065369B2 (en) 2005-02-01 2011-11-22 Microsoft Corporation People-centric view of email
US7657868B2 (en) 2005-03-14 2010-02-02 Research In Motion Limited System and method for applying development patterns for component based applications
US7921372B2 (en) 2005-03-25 2011-04-05 Microsoft Corporation System and method for pinning tabs in a tabbed browser
US20060248012A1 (en) 2005-04-29 2006-11-02 Stefan Kircher Transmission of messages related to electronic documents
US7984057B2 (en) 2005-05-10 2011-07-19 Microsoft Corporation Query composition incorporating by reference a query definition
US7530029B2 (en) 2005-05-24 2009-05-05 Microsoft Corporation Narrow mode navigation pane
US7472376B2 (en) 2005-05-27 2008-12-30 Microsoft Corporation Method and system for customizations in a dynamic environment
US20060271869A1 (en) 2005-05-31 2006-11-30 Microsoft Corporation Custom task panes that provide accessibility to one or more functions of an application program
US7735059B2 (en) 2005-06-09 2010-06-08 Microsoft Corporation Winforms control hosting in unmanaged applications
US7886290B2 (en) * 2005-06-16 2011-02-08 Microsoft Corporation Cross version and cross product user interface
JP2007006373A (ja) 2005-06-27 2007-01-11 Konica Minolta Business Technologies Inc 書類データ管理システム、画像形成装置、書類データ管理方法、およびコンピュータプログラム
US7617479B2 (en) 2005-06-28 2009-11-10 International Business Machines Corporation Method and apparatus for generating service frameworks
US20070033250A1 (en) * 2005-08-02 2007-02-08 Microsoft Corporation Real-time conversation thread
US7653531B2 (en) 2005-08-25 2010-01-26 Multiling Corporation Translation quality quantifying apparatus and method
US8239882B2 (en) 2005-08-30 2012-08-07 Microsoft Corporation Markup based extensibility for user interfaces
US8689137B2 (en) 2005-09-07 2014-04-01 Microsoft Corporation Command user interface for displaying selectable functionality controls in a database application
US9542667B2 (en) 2005-09-09 2017-01-10 Microsoft Technology Licensing, Llc Navigating messages within a thread
US7627561B2 (en) 2005-09-12 2009-12-01 Microsoft Corporation Search and find using expanded search scope
US7739259B2 (en) 2005-09-12 2010-06-15 Microsoft Corporation Integrated search and find user interface
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
US20100011310A1 (en) 2005-09-30 2010-01-14 Nokia Corporation Method, Device, Computer Program and Graphical User Interface Used for the Selection, Movement and De-Selection of an Item
US7464343B2 (en) 2005-10-28 2008-12-09 Microsoft Corporation Two level hierarchy in-window gallery
US7484180B2 (en) 2005-11-07 2009-01-27 Microsoft Corporation Getting started experience
US8434021B2 (en) 2005-11-30 2013-04-30 Microsoft Corporation Centralized user interface for displaying contextually driven business content and business related functionality
US7925716B2 (en) 2005-12-05 2011-04-12 Yahoo! Inc. Facilitating retrieval of information within a messaging environment
US20070143662A1 (en) 2005-12-15 2007-06-21 Microsoft Corporation Inserting user interface elements into native applications
US7975224B2 (en) 2005-12-21 2011-07-05 Xerox Corporation WYSIWYG multifunction device finishing options
US8286159B2 (en) 2005-12-22 2012-10-09 Alan Joshua Shapiro Method and apparatus for gryphing a data storage medium
US7664821B1 (en) * 2006-01-26 2010-02-16 Stratify, Inc. Systems and methods for determining communication chains based on messages
US8001184B2 (en) * 2006-01-27 2011-08-16 International Business Machines Corporation System and method for managing an instant messaging conversation
US7720916B2 (en) 2006-02-28 2010-05-18 Microsoft Corporation Ordering personal information using social metadata
JP2007287136A (ja) 2006-03-23 2007-11-01 Oce Technologies Bv オブジェクトの順序付けられた集合に対する処理動作をプログラミングするためのシステム
US20070240057A1 (en) 2006-04-11 2007-10-11 Microsoft Corporation User interface element for displaying contextual information
US8209308B2 (en) 2006-05-01 2012-06-26 Rueben Steven L Method for presentation of revisions of an electronic document
US8131748B2 (en) 2006-05-12 2012-03-06 Sap Ag Search query formulation
US7831902B2 (en) 2006-05-31 2010-11-09 Microsoft Corporation Displaying interrelated changes in a grid
US9727989B2 (en) 2006-06-01 2017-08-08 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US8200762B2 (en) 2006-06-01 2012-06-12 Aol Inc. Displaying complex messaging threads into a single display
US8605090B2 (en) 2006-06-01 2013-12-10 Microsoft Corporation Modifying and formatting a chart using pictorially provided chart elements
US7856012B2 (en) * 2006-06-16 2010-12-21 Harris Corporation System and methods for generic data transparent rules to support quality of service
US9195372B2 (en) * 2006-06-28 2015-11-24 Scenera Technologies, Llc Methods, systems, and computer program products for grouping tabbed portion of a display object based on content relationships and user interaction levels
US20080005249A1 (en) 2006-07-03 2008-01-03 Hart Matt E Method and apparatus for determining the importance of email messages
US20080034304A1 (en) * 2006-08-02 2008-02-07 Feuerbacher Frank P Method, System, and Program Product for Focus Switching Delay in a Graphical User Interface
US7805705B2 (en) * 2006-08-04 2010-09-28 Apple Inc. Graphically depicting program code depth
US7793226B2 (en) * 2006-08-14 2010-09-07 International Business Machines Corporation Method and system for grouping and stacking tab user interface objects with icon status indicators
US20080046518A1 (en) 2006-08-16 2008-02-21 James I Tonnison Enhanced E-Mail System
JP2008047067A (ja) 2006-08-21 2008-02-28 Ricoh Co Ltd カプセル化文書管理装置、カプセル化文書管理方法及びカプセル化文書管理プログラム
AU2007290431B2 (en) 2006-08-30 2012-03-01 Thomson Reuters Enterprise Centre Gmbh Document-centric workflow based on document contents, metadata, and context
US7913292B2 (en) 2006-10-18 2011-03-22 Microsoft Corporation Identification and visualization of trusted user interface objects
US7870465B2 (en) * 2006-10-18 2011-01-11 Versteeg William C Reducing channel-change time
WO2008051276A2 (en) 2006-10-22 2008-05-02 Onepin, Inc. Short message service formatting for information exchange
US20080104505A1 (en) 2006-10-27 2008-05-01 Keohane Susann M Method, System and Program Product Supporting Customized Presentation of Toolbars Within a Document
JP2008117019A (ja) 2006-10-31 2008-05-22 Fuji Xerox Co Ltd 会議情報管理装置、会議再生装置、設備管理装置、会議システム及びプログラム
TW200821926A (en) 2006-11-07 2008-05-16 Sunplus Technology Co Ltd Method and system for function reference of development tool
US8191052B2 (en) 2006-12-01 2012-05-29 Murex S.A.S. Producer graph oriented programming and execution
US8307379B2 (en) 2006-12-21 2012-11-06 International Business Machines Corporation Determining an extension to use to process an input object to a call in a program
IL180566A (en) * 2007-01-04 2013-03-24 Boaz Fletcher Electronic messaging system and method
AR067297A1 (es) 2007-03-28 2009-10-07 Avery Dennison Corp Interfaz de usuario de tipo cinta para un programa de aplicacion
US7865868B2 (en) * 2007-03-28 2011-01-04 Microsoft Corporation .NET ribbon model for a ribbon user interface
US8201103B2 (en) 2007-06-29 2012-06-12 Microsoft Corporation Accessing an out-space user interface for a document editor program
US8762880B2 (en) 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
US8645863B2 (en) 2007-06-29 2014-02-04 Microsoft Corporation Menus with translucency and live preview
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US20090012984A1 (en) * 2007-07-02 2009-01-08 Equivio Ltd. Method for Organizing Large Numbers of Documents
US8225208B2 (en) 2007-08-06 2012-07-17 Apple Inc. Interactive frames for images and videos displayed in a presentation application
US7693940B2 (en) * 2007-10-23 2010-04-06 International Business Machines Corporation Method and system for conversation detection in email systems
US7802199B2 (en) 2007-11-30 2010-09-21 Microsoft Corporation Enable ribbon reloading via a proxy add-in
US20090152349A1 (en) 2007-12-17 2009-06-18 Bonev Robert Family organizer communications network system
US20090192845A1 (en) 2008-01-30 2009-07-30 Microsoft Corporation Integrated real time collaboration experiences with online workspace
US9665850B2 (en) 2008-06-20 2017-05-30 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US8402096B2 (en) 2008-06-24 2013-03-19 Microsoft Corporation Automatic conversation techniques
US9046983B2 (en) 2009-05-12 2015-06-02 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2327205C2 (ru) * 2003-02-25 2008-06-20 Майкрософт Корпорейшн Адаптивная система фильтрации ненужных сообщений
US7251640B2 (en) * 2003-09-15 2007-07-31 Philippe Baumard Method and system for measuring interest levels of digital messages

Also Published As

Publication number Publication date
CA2725046A1 (en) 2010-01-21
IL209012A (en) 2015-08-31
EP2291820A4 (en) 2013-06-12
IL209012A0 (en) 2011-01-31
CA2725046C (en) 2016-04-19
US20130159879A1 (en) 2013-06-20
ZA201007810B (en) 2012-02-29
MY172510A (en) 2019-11-28
JP5480894B2 (ja) 2014-04-23
AU2009271517B2 (en) 2014-05-22
KR20110040777A (ko) 2011-04-20
EP2291820A2 (en) 2011-03-09
US9338114B2 (en) 2016-05-10
AU2009271517A1 (en) 2010-01-21
TWI479329B (zh) 2015-04-01
WO2010008671A2 (en) 2010-01-21
US8402096B2 (en) 2013-03-19
WO2010008671A3 (en) 2010-03-11
RU2010152843A (ru) 2012-06-27
TW201001178A (en) 2010-01-01
CN102067167A (zh) 2011-05-18
JP2011525677A (ja) 2011-09-22
MX2010014056A (es) 2011-02-22
US20090319619A1 (en) 2009-12-24

Similar Documents

Publication Publication Date Title
RU2523165C2 (ru) Технологии автоматического диалога
US11928119B2 (en) Mining email inboxes for suggesting actions
US10594641B2 (en) Dynamic filter generation for message management systems
US10291560B2 (en) Integrated real-time email-based virtual conversation
KR101843604B1 (ko) 전자 통신 분류
US7941492B2 (en) Message data management
KR101965023B1 (ko) 시간 관리형 전자 메일 메시지 처리 기법
US8429542B2 (en) Switching of emails in a conversation thread
US9367599B2 (en) Search based specification for data synchronization
US20110196931A1 (en) Moderating electronic communications
US9882849B2 (en) Action assignment and tracking functionality for email
WO2007071588A1 (en) Publication to shared content sources using natural language electronic mail destination addresses and interest profiles registered by the shared content sources
US20140122621A1 (en) Methods and systems for organizing electronic messages
US10069780B2 (en) Methods and systems for structuring information of email messages
US10999230B2 (en) Relevant content surfacing in computer productivity platforms
US8135786B2 (en) Message-based technique for sharing distribution list contents within electronic messaging systems
CN110268429B (zh) 电子邮件内容的自动捆绑
US20170193051A1 (en) Systems and methods for automatic archiving, sorting, and/or indexing of secondary message content
US10931617B2 (en) Sharing of bundled content
US10469607B2 (en) Intelligently delivering notifications including summary of followed content and related content
US20080028070A1 (en) Method and system for remote management of online activities

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20150306