Уровень техники
Современные электронные системы календарного планирования позволяют пользователям управлять календарными данными, такими как собрания, встречи, праздники, личное время и т.п., через пользовательский интерфейс электронного календаря способом, подобным управлению такими данными в ручном календаре кроме всех добавленных умений, ожидаемых от электронных систем, таких как возможность легко вводить и редактировать данные и возможность просматривать данные во множестве разных видов, например суточные просмотры, недельные просмотры и т.д. Одним отдельным преимуществом электронных систем календарного планирования является возможность запланировать собрания с одним или более участниками и/или ресурсами (например, комнаты для заседаний, оборудование видеотелеконференций и т.п.) на основе данных о незанятости или занятости (данных о доступности), которые могут быть получены для желаемых участников собрания и/или ресурсов перед тем, как выполняется планирование. Например, если организатор собрания желает организовать собрание с тремя участниками в данной комнате для заседаний, организатор может запросить данные о том, когда желательные участники и комната для заседаний доступны.
Согласно способам и системам предшествующего уровня техники данные о доступности потенциальных участников (например, служащих данной организации) и/или данные о доступности ресурсов организации (например, комнаты для заседаний, оборудование для видео- и телеконференций и т.д.) публикуются на периодической основе в одной или более папках общедоступных данных для доступа через приложения календарного планирования организатора собрания. К сожалению, с помощью таких способов и систем данные о незанятости/занятости (доступности) для потенциальных участников и/или потенциальных ресурсов являются актуальными только в момент последней публикации данных в папках общедоступных данных. Соответственно, данные о доступности часто являются устаревшими в момент времени, когда организатор собрания планирует собрание. Если организатор планирует собрание в течение периода, в котором данные о доступности устарели, собрание может быть запланировано на основе ошибочных данных о доступности одного или более участников или ресурсов. В результате, собрание не может быть посещено одним или более людьми, а желаемый ресурс может находиться в использовании другой стороной во время запланированного собрания. Дополнительно, с помощью таких систем возможность найти данные о доступности типично ограничена относительно короткими периодами в будущем, и потенциальные участники имеют очень небольшой контроль над тем, кто может найти данные об их доступности.
Именно относительно этих и других соображений настоящее изобретение было реализовано.
Сущность изобретения
Данная сущность изобретения предоставлена для того, чтобы представить в упрощенной форме выбор концепций, которые дополнительно описаны ниже в осуществлении изобретения. Эта сущность не предназначена, ни чтобы идентифицировать ключевые признаки или неотъемлемые признаки заявленного предмета изучения, ни чтобы использоваться как помощь в определении рамок заявленного предмета изучения.
Настоящее изобретение решает вышеуказанные и другие проблемы, предоставляя способы, системы и компьютерные продукты для предоставления данных о доступности в реальном времени (данных о незанятости/занятости) для потенциальных участников собрания и/или ресурсов. Согласно варианту осуществления изобретения служба доступности запрашивается на предмет данных о доступности одного или более участников и/или ресурсов собрания. Служба доступности определяет идентичность сервера электронных почтовых ящиков, на котором сохранены текущие календарные данные в реальном времени для желательных участников и/или ресурсов. Если электронный почтовый ящик для одного или более участников или ресурсов поддерживается на сервере электронных почтовых ящиков, ассоциативно связанном с другой службой доступности, запрос данных доступности передается от первой службы доступности второй службе доступности, ассоциативно связанной с соответствующим сервером почтовых ящиков.
Запрошенные данные извлекаются службой доступности из одного или более серверов почтовых ящиков, имеющих данные для каждого участника и/или ресурса. Согласно одному варианту осуществления участники могут устанавливать разрешения на свои соответствующие данные о доступности, чтобы ограничить количество и типы данных, которые могут быть извлечены данным лицом, запрашивающим данные. После того как запрошенная доступность возвращается службе доступности от соответствующего сервера почтовых ящиков, служба доступности затем передает возвращенные данные о доступности обратно запрашивающему приложению календарного планирования для использования в планировании собрания с желательными участниками и/или ресурсами.
Согласно другому варианту осуществления запросы данных и ответы данных, отправленные и принятые между запрашивающим приложением календарного планирования и службами доступности и одним или более серверами почтовых ящиков, отформатированы согласно расширяемому языку разметки (XML), чтобы позволить запросам данных и выборкам быть более эффективными. Дополнительно, интерфейсы прикладного программирования (API) раскрываются для предоставления возможности третьесторонним запрашивающим приложениям понимать форматирование и разметку запросов и ответов данных, отправленных и возвращенных через службы приложений.
Эти и другие признаки и улучшения, которые характеризуют настоящее изобретение, будут ясны из чтения последующего осуществления изобретения и обзора ассоциативно связанных чертежей. Нужно понимать, что и упомянутое выше общее описание, и последующее осуществление изобретения являются только примерными и объяснительными, а не ограничивающими изобретение, как заявлено.
Краткое описание чертежей
Фиг.1 иллюстрирует примерное вычислительное операционное окружение для вариантов осуществления настоящего изобретения.
Фиг.2 является упрощенной блок-схемой, иллюстрирующей взаимодействие между запрашивающим приложением календарного планирования и службой доступности и одним или более серверами почтовых ящиков согласно вариантам осуществления настоящего изобретения.
Фиг.3 является логической блок-схемой алгоритма, показывающей иллюстративную процедуру запроса и получения данных о доступности одного или более участников и/или ресурсов для использования посредством запрашивающего приложения календарного планирования.
Осуществление изобретения
Как кратко описано выше, варианты осуществления настоящего изобретения направлены на способы, системы и компьютерные продукты для извлечения данных о доступности в реальном времени (данных о незанятости/занятости) через службу доступности для использования посредством запрашивающего приложения календарного планирования для планирования собраний и/или использования ресурса с одним или более участниками и/или ресурсами. В последующем осуществлении изобретения сделаны ссылки на сопровождающие чертежи, которые формируют часть данного документа, и в которых показаны посредством иллюстраций конкретные варианты осуществления или примеры. Эти варианты осуществления могут комбинироваться, могут быть использованы другие варианты осуществления, и могут быть сделаны структурные изменения без отступления от духа и цели настоящего изобретения. Последующее осуществление изобретения, поэтому, не дано в ограничивающем смысле, и объем настоящего изобретения определен приложенной формулой изобретения и ее эквивалентами.
Обращаясь теперь к чертежам, на которых одинаковые номера ссылаются на одинаковые элементы по всем нескольким чертежам, будут описаны аспекты настоящего изобретения и примерное вычислительное операционное окружение. Фиг.1 и последующее обсуждение предназначены, чтобы предоставить краткое общее описание подходящего вычислительного окружения, в котором может быть осуществлено изобретение. В то время как изобретение будет описано в общем контексте программных модулей, которые выполняются в связи с прикладной программой, которая работает в операционной системе на персональном компьютере, специалисты в области техники признают, что изобретение может быть также осуществлено в комбинации с другими программными модулями.
Как правило, программные модули включают в себя алгоритмы, программы, компоненты, структуры данных и другие типы структур, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Более того, специалисты в данной области техники оценят, что изобретение может быть реализовано на практике с другими конфигурациями вычислительных систем, включающими в себя карманные устройства, многопроцессорные системы, основанную на микропроцессорах или программируемую бытовую электронную аппаратуру, миникомпьютеры, универсальные вычислительные машины и т.п. Изобретение может быть реализовано на практике в распределенных вычислительных окружениях, в которых задачи выполняются удаленными обрабатывающими устройствами, которые связаны через сеть связи. В распределенном вычислительном окружении программные модули могут размещаться и на локальных, и на удаленных устройствах хранения данных.
Варианты осуществления изобретения могут быть реализованы как вычислительный процесс (способ), вычислительная система или как продукт производства, такой как компьютерный программный продукт или машиночитаемые носители информации. Компьютерный программный продукт может быть компьютерным носителем информации, читаемым вычислительной системой, и кодированной компьютерной программой инструкций для выполнения вычислительного процесса. Компьютерный программный продукт может также быть сигналом, распространяющимся по несущей частоте, читаемым вычислительной системой и кодированной компьютерной программой инструкций для выполнения вычислительного процесса.
Со ссылкой на фиг.1, одна примерная система осуществления изобретения включает в себя вычислительное устройство, такое как вычислительное устройство 100. В элементарной конфигурации вычислительное устройство 100 обычно включает в себя, по меньшей мере, один процессор 102 и системную память 104. В зависимости от точной конфигурации и типа вычислительного устройства системная память 104 может быть энергозависимой (такой как RAM), энергонезависимой (такой как ROM, флэш-память и т.д.) или некоторой комбинацией обеих. Системная память 104 типично включает в себя операционную систему 105, подходящую для управления работой сетевого персонального компьютера, такую как операционные системы семейства WINDOWS® от корпорации MICROSOFT Редмонд, штат Вашингтон. Системная память 104 может также включать в себя одно или более приложений 106 системы программного обеспечения и может включать в себя программные данные 107. Эта элементарная конфигурация иллюстрирована на фиг.1 компонентами в пределах пунктирной линии 108.
Согласно вариантам осуществления изобретения приложение 106 может содержать многие типы приложений системы программного обеспечения, таких как программа электронной почты, программа календарного планирования, программа просмотра Интернета и т.п. Примером таких программ является OUTLOOK®, разработанный корпорацией MICROSOFT. Приложение 106 может включать в себя ряд других типов приложений системы программного обеспечения, включающих в себя многофункциональное приложение системы программного обеспечения для предоставления многих других типов функциональностей. Такое многофункциональное приложение может включать в себя ряд программных модулей, таких как программа текстовой обработки, программа работы с электронными таблицами, программа презентации слайдов, программа базы данных и т.п. Примером такого многофункционального приложения является OFFICE™, разработанный корпорацией MICROSOFT. Согласно вариантам осуществления настоящего изобретения, приложение 106 является иллюстративным для любого приложения системы программного обеспечения, с помощью которого электронный документ (включающий в себя сообщения электронной почты) может быть создан или отредактирован и в котором пользовательский интерфейс с упрощенной информацией может использоваться для предоставления информации, ассоциативно связанной с выбранным элементом текста, элементом данных или другим объектом в электронном документе.
Вычислительное устройство 100 может иметь дополнительные признаки или функциональность. Например, вычислительное устройство 100 может также включать в себя дополнительные устройства хранения данных (съемные и/или несъемные), такие как, например, магнитные диски, оптические диски или ленту. Такое дополнительное запоминающее устройство проиллюстрировано на фиг.1 посредством съемного запоминающего устройства 109 и несъемного запоминающего устройства 110. Компьютерные носители хранения данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители, осуществленные любым способом или технологией для хранения информации, такой как читаемые компьютером инструкции, структуры данных, программные модули или другие данные. Системная память 104, съемное запоминающее устройство 109 и несъемное запоминающее устройство 110 - все являются примерами компьютерных носителей хранения данных. Компьютерные носители хранения данных включают в себя, но не ограничены этим, RAM, ROM, EEPROM, флэш-память или другую технология памяти, CD-ROM, цифровые многофункциональные диски (DVD) или другой оптический накопитель, магнитные кассеты, магнитную ленту, накопитель на магнитных дисках или другие устройства магнитных накопителей, или любой другой носитель, который может быть использован, чтобы хранить желаемую информацию, и в который может получить доступ вычислительное устройство 100. Любые такие компьютерные носители хранения данных могут быть частью устройства 100. Вычислительное устройство 100 может также иметь устройство(а) 112 ввода, такое как клавиатура, мышь, перо, устройство голосового ввода, сенсорное устройство ввода и т.д. Выходное устройство(а) 114, такое как дисплей, динамики, принтер и т.д., может также быть включено в состав. Эти устройства хорошо известны в области техники, и нет необходимости их подробно здесь обсуждать.
Вычислительное устройство 100 может также содержать соединения 116 связи, которые позволяют устройству связываться с другими вычислительными устройствами 118, такие как по сети в распределенном вычислительном окружении, например интранете или Интернете. Соединение 116 связи - это один пример среды связи. Среда связи может типично быть осуществлена машиночитаемыми инструкциями, структурами данных, программными модулями или другими данными в модулированном информационном сигнале, таком как несущее колебание или другой механизм распространения, и включает в себя любую среду для доставки информации. Термин "модулированный информационный сигнал" означает сигнал, который обладает одной или несколькими характеристиками, заданными или измененными таким способом, как кодирование информации в сигнале. В качестве примера, но не в качестве ограничения, среда связи включает в себя проводную среду, такую как проводная сеть или непосредственное проводное соединение, и беспроводную среду, такую как акустическая среда, радиочастота, инфракрасное излучение и другая беспроводная среда. Термин машиночитаемый носитель, как используемый в данном документе, включает в себя и носитель хранения данных, и среду связи.
Фиг.2 является упрощенной блок-схемой, иллюстрирующей взаимодействие между запрашивающим приложением календарного планирования и службой доступности и одним или более серверами почтовых ящиков согласно вариантам осуществления настоящего изобретения. Согласно вариантам осуществления организатор собрания или другой пользователь, желающий запланировать собрание с одним или более потенциальными участниками и/или одним или более потенциальными ресурсами (например, комнаты для заседаний, оборудование видео- и телеконференций и т.д.), может запросить данные о доступности незанят/занят для желательных участников или ресурсов с помощью приложения 106 календарного планирования организатора. Когда запрос собрания инициируется через приложение 106 календарного планирования, запрос или запрашивание данных передается от приложения 106 службе 210 доступности по распределенной вычислительной сети, такой как Интернет или интранет 205. Следует понимать, все компоненты, описанные в данном документе, могут работать на локальном вычислительном устройстве, так что запрос данных о доступности не передается по распределенной вычислительной сети 205, а передается службе 210 доступности, поддерживаемой на локальном компьютере 100. Данные о доступности собрания извлекаются службой доступности из одного или более серверов почтовых ящиков для возврата приложению 106 календарного планирования, как описано ниже.
Согласно вариантам осуществления служба 210 доступности - это приложение системы программного обеспечения, имеющее достаточные исполняемые компьютером инструкции для приема запроса данных о доступности от приложения 106 и для передачи запроса данных о доступности одному или более серверам 215 почтовых ящиков для получения информации о доступности в реальном времени для одного или более потенциальных участников и/или ресурсов. Как описано ниже, служба 210 доступности дополнительно работает, чтобы передавать запрос данных о доступности дополнительной службе 220 доступности, если данные, запрошенные посредством данного запроса данных, находятся на дополнительном сервере 225 почтовых ящиков, который доступен из дополнительной службы 220 доступности. Согласно этому варианту осуществления, когда данные возвращаются от дополнительного сервера 225 почтовых ящиков дополнительной службе 220 доступности, данные затем передаются обратно первой или запрашивающей службе 210 доступности для окончательной передачи обратно запрашивающему приложению 106.
Серверы 215, 225 почтовых ящиков являются приложениями системы программного обеспечения, имеющими достаточные машиноисполняемые инструкции для приема и хранения данных электронной почты, календарных данных, данных о состоянии доступности (данные о незанятости/занятости), данные о контактах, данные о задачах и т.п. для одного или более людей (потенциальных участников) и/или ресурсов. Например, данные серверы 215, 225 почтовых ящиков могут управляться организацией для хранения, приема и отправки данных электронной почты, включающих в себя данные календарного планирования и данные об использовании ресурса, для людей и ресурсов, связанных с организацией, и управляемых или поддерживаемых ею.
Также может быть предусмотрен сервер доступа клиентов (не показан на фиг.2), который является приложением системы программного обеспечения, имеющим достаточные машиноисполняемые инструкции для разрешения доступа к электронной почте и данным календарного планирования посредством приложений электронной почты и календарного планирования на стороне клиента, управляемыми разрешенными пользователями ассоциативно связанного сервера почтовых ящиков. То есть сервер доступа клиентов работает как канал от приложений 106 электронной почты и календарного планирования отдельного клиента до серверов 215, 225 почтовых ящиков, в которых информация электронной почты и календарного планирования может быть сохранена. Следует принимать во внимание согласно вариантам осуществления настоящего изобретения службы 210, 220 доступности могут замещать сервер доступа клиентов для разрешения извлечения данных доступности на данном сервере почтовых ящиков клиентским приложением 106.
Согласно вариантам осуществления изобретения каждая из служб доступности, серверов почтовых ящиков и сервер доступа клиентов могут работать как независимые приложения, которые совместно расположены на одной операционной платформе (например, одном сервере). Примером такой единой операционной платформы для совместного расположения и работы служб доступности, серверов почтовых ящиков и серверов доступа клиентов является EXCHANGE®, разработанная корпорацией MICROSOFT Редмонд, штат Вашингтон.
Альтернативно, каждая из служб доступности, сервер почтовых ящиков или сервер доступа клиентов могут работать на отдельных операционных платформах (например, отдельных серверах), где отдельные компоненты могут обращаться друг к другу, как описано в данном документе, через распределенную вычислительную сеть 205. Например, как описано ниже, запрос данных о доступности, принятый первой службой 210 доступности, может быть передан второй или дополнительной службе 220 доступности, работающей на другой платформе или сервере, если данные, отвечающие на запрос, ассоциативно связаны со второй службой доступности. Альтернативно, ряд серверов почтовых ящиков или других примеров одного сервера почтовых ящиков могут быть совместно расположены на единой серверной платформе, а другой работающий пример единой службы 210 доступности может быть запрограммирован для извлечения данных из каждого сервера 215, 225 почтовых ящиков.
Фиг.3 является логической блок-схемой алгоритма, показывающей иллюстративную процедуру запроса и извлечения данных о доступности одного или более участников и/или ресурсов для использования посредством запрашивающего приложения календарного планирования. Имея описанную примерную архитектуру работы и операционное окружение вариантов осуществления настоящего изобретения относительно фиг.1 и 2, последующее является описанием примерной работы вариантов осуществления настоящего изобретения относительно извлечения данных о доступности одного или более потенциальных участников и/или ресурсов, запрашивающим организатором собрания. В целях простоты термин "участник" используется далее в документе, чтобы ссылаться на человека или ресурс, для которого запрашиваются данные о доступности. Ссылаясь затем на фиг.3, процедура 300 начинается на этапе 305 начала и переходит на этап 310 подготовки, где запрос собрания подготавливается организатором собрания в клиентском приложении 106 календарного планирования (например, OUTLOOK®, разработанном корпорацией Microsoft). Например, организатор собрания может желать запланировать собрание руководящего состава для трех членов руководства, и организатор может желать запланировать собрание в определенной комнате для заседаний. Чтобы запланировать желаемое собрание, организатор собрания с помощью приложения 106 вводит или выбирает имена желательных участников и желательную комнату для заседаний для собрания.
Следует принимать во внимание, запрос собрания может быть подготовлен с помощью пользовательского интерфейса запроса собрания приложения 106, с помощью которого организатор может ввести желательные имена/идентификации желательных участников или с помощью которого организатор может выбрать желательных участников из каталога потенциальных участников и ресурсов, поддерживаемых организацией или учреждением организатора. На этапе 315 решения после представления на рассмотрение запроса собрания, чтобы определить, может ли каждый из потенциальных участников быть запланирован в желательное время собрания, приложение 106 определяет участников по каталогу людей и/или ресурсов, чтобы определить, являются ли введенные имена и/или идентификации правильными. Например, если организатор собрания вручную набирает имя желательного участника в пользовательском интерфейсе 106, и организатор делает орфографическую ошибку в имени одного из потенциальных участников, организатору может быть представлено сообщение об ошибке о том, что введенный потенциальный участник не находится в каталоге потенциальных участников, которым организатор может отправить запросы о собрании.
На этапе 320 отправки приложение 106 передает запрос данных о доступности (запрос данных о незанятости/занятости) службе 210 доступности для извлечения данных о доступности каждого из желательных участников собрания. То есть запрос данных, переданный от приложения 106, существует в целях определения того, свободны ли желательные участники собрания (ничего в настоящее время не запланировано) или заняты (собрание или другая встреч запланирована в настоящее время) в желательное время собрания. Следует принимать во внимание, если определяется, что один или более из желательных участников заняты в желательное время собрания, организатор собрания может выбрать альтернативное время собрания для желательного собрания. То есть служба доступности обеспечивает организатора информацией о незанятости/занятости, чтобы позволить организатору принять решения о том, когда запланировать собрание.
На этапе 325 определения служба 210 доступности принимает запрос данных о доступности от приложения 106 и определяет, связан ли он ассоциативно с сервером 215 почтовых ящиков, содержащим имена/идентификации желательных участников собрания. Согласно варианту осуществления служба 210 доступности делает грамматический анализ списка желательных участников и/или ресурсов, принятый в запросе данных, чтобы определить, что сервер почтовых ящиков содержит данные электронной почты и/или данные календарного планирования для каждого из найденных по ссылке участников. Согласно одному варианту осуществления служба 210 приложений сравнивает желательных участников по списку людей и/или ресурсов в каталоге информации, который идентифицирует людей и/или ресурсы данной организации и который идентифицирует сервер 215, 225 почтовых ящиков, на котором хранится информация электронной почты и календарного планирования для этих людей и/или ресурсов. Пример такого каталога информации включает в себя Active Directory®, разработанный корпорацией MICROSOFT. Следует принимать во внимание, любое число баз данных людей и/или ресурсов может использоваться для хранения информации, такой как местоположение сервера почтовых ящиков, ассоциативно связанного с данными людьми и/или ресурсами, и может запрашиваться службой 210 приложений, как описано в данном документе.
Если служба 210 доступности определяет, что данные о доступности одного или более из желательных участников расположены на сервере 225 почтовых ящиков, ассоциативно не связанном с принимающей службой 210 доступности, служба 210 доступности может передать запрос данных дополнительной службе 220 доступности, ассоциативно связанной с дополнительным сервером 225 почтовых ящиков, на котором хранится информация для одного или более желательных участников. Следует принимать во внимание, информация для одного или более желательных участников может храниться на одном сервере 215 почтовых ящиков, а информация о доступности второго одного или более желательных участников может храниться на дополнительном сервере 225 почтовых ящиков, управляемом другой организацией, которой принадлежат второй один или более желательных участников/ресурсов.
Как описано выше, каждая из службы 210 доступности и дополнительной службы 220 доступности могут быть отдельными примерами единой службы доступности, управляемой одной организацией, для извлечения данных о доступности из разных серверов 215, 225 почтовых ящиков, или разными примерами единого сервера 215, 225 почтовых ящиков, ассоциативно связанного с разными объектами в одной организации. Например, первая служба 210 доступности и ассоциативно связанный сервер 215 почтовых ящиков могут функционировать для производственного подразделения организации, а дополнительная служба 220 доступности и сервер 225 почтовых ящиков могут функционировать для другого подразделения той же организации, например подразделения продаж. Первая служба 210 доступности может определять идентификацию для дополнительной службы 220 доступности, ассоциативно связанной с дополнительным сервером 225 почтовых ящиков, на котором хранится желаемая информация, из каталога информации, который ассоциативно связывает информацию по желательным участникам собрания с данным сервером 225 почтовых ящиков и ассоциативно связанной дополнительной службой 220 доступности.
На этапе 335 извлечения данных служба доступности определяет, имеет ли организатор собрания разрешения извлечь запрашиваемые данные о доступности желательного участника или ресурса, как описано ниже. Если организатор имеет соответствующие разрешения, запрос данных о доступности отправляется серверу 215, 225 почтовых ящиков одной из ассоциативно связанных служб 210, 220 доступности, и извлекаются данные о доступности (данные о незанятости/занятости) для упомянутых участников. Например, если запрос собрания существует для вторника в 14:30, запрос данных о доступности извлечет из серверов 215, 225 почтовых ящиков данные для каждого из упомянутых участников/ресурсов для определения того, свободны ли каждый из упомянутых участников и/или ресурсов или заняты во вторник в 14:30.
Согласно вариантам осуществления настоящего изобретения отдельные люди (потенциальные участники) могут устанавливать разрешения на извлечение данных по данным своего индивидуального календарного планирования, которые ограничат типы данных о доступности, которые могут быть извлечены. Также, разрешения могут быть установлены для ограничения типов данных о доступности, которые могут быть извлечены для данного ресурса организации (например, оборудования видео- и телеконференций). Следует принимать во внимание, данные календарного планирования, сохраненные данным человеком, могут быть данными, которые рассматриваются как приватная или иная чувствительная информация. Например, данный человек может желать, чтобы данные о его доступности не могли быть получены в течение периода, в котором он проводит собрания относительно чувствительной информации. Или данный человек может поставить предел или ограничить извлечение данных о доступности после определенного времени в будущем. Например, данный человек может желать, чтобы данные о доступности не были доступны из его календаря после шести месяцев от текущей даты. Подобным образом, организация может ограничить доступ к определенным ресурсам организации для определенных запрашивающих организаторов собраний или в течение определенных периодов времени.
Отдельный потенциальный участник или администратор ресурсов организации может установить разрешения по данным о доступности через пользовательский интерфейс, управляемый клиентским приложением 106 календарного планирования. Следует принимать во внимание, согласно этому варианту осуществления администратор организации может установить определенные ограничения и/или лимиты на извлекаемые данные о доступности всех потенциальных участников собрания данной организации и/или для всех доступных ресурсов организации, или администратор может установить разные типы разрешений на извлечение информации для разных людей или классов людей и/или ресурсов.
Так как данные о доступности запрашиваемых участников извлекаются службами 210, 220 доступности из серверов 215, 225 почтовых ящиков, на которых сохранена информация о доступности различных людей и/или ресурсов, информация является информацией реального времени относительно времени, когда запрос данных принимается на сервере 215, 225 почтовых ящиков. То есть серверы 215, 225 почтовых ящиков содержат информацию календарного планирования в реальном времени, введенную каждым или для каждого потенциального участника для данной организации в противоположность периодически публикуемому снимку информации о доступности. Таким образом, трудность приема устаревших данных о доступности, как в случае предшествующих способов и систем, устраняется.
На этапе 340 возврата данные о доступности, отвечающие запросу данных о доступности, возвращаются службе 210 доступности от сервера 215 почтовых ящиков. Альтернативно, если данные о доступности возвращаются от дополнительного сервера 225 почтовых ящиков, данные возвращаются дополнительной службе 220 доступности и затем переправляются запрашивающей службе 210 доступности. Данные о доступности, отвечающие запросу данных, затем передаются от службы 210 доступности обратно запрашивающему приложению 106. На этапе 345 организации собрания запрашивающее приложение 106 использует возвращенные данные о доступности, чтобы определить, может ли желаемое собрание быть организовано в дату и время, запрошенные организатором собрания. То есть, если все желательные участники и/или ресурсы доступны в запрошенные дату и время собрания, тогда собрание может быть организовано для желательных участников и/или ресурсов в запрошенные дату и время. Однако если возвращенные данные о доступности указывают, что один или более желательных участников заняты в запрошенное время собрания, тогда процесс, описанный в данном документе, может быть повторен для определения данных о доступности желательных участников в другое время собрания.
Следует принимать во внимание, согласно вариантам осуществления настоящего изобретения, пользовательский интерфейс может быть предоставлен приложением 106, чтобы предоставить возможность организатору собрания запросить данные о доступности каждого из потенциальных участников в течение очень продолжительного периода в будущем, так что организатор собрания может запланировать собрание на дату и время, которые доступны для всех желательных участников. То есть организатор не опрашивается на предмет того, чтобы предложить конкретную дату и время для того, чтобы определить, все ли желательные участники и/или ресурсы доступны в эту конкретную дату и время, с последующим вторым запросом второй потенциальной даты и времени, если первая дата и время недоступны для всех желательных участников. Организатор может использовать варианты осуществления настоящего изобретения, чтобы видеть данные о доступности каждого из желательных участников и/или ресурсов для данного периода времени, например следующих шести месяцев, так что организатор собрания может выбрать желательную дату и время собрания из возвращенных данных о доступности. Процедура 300, иллюстрированная на фиг.3, заканчивается на этапе 395 завершения.
Согласно вариантам осуществления настоящего изобретения запросы данных и ответы, отправленные между компонентами 106, 210, 215, 220, 220, 225, описанными выше, включающие в себя запросы данных о доступности, отправленные от приложения 106 серверам почтовых ящиков через службы доступности, и ответные данные, возвращенные запрашивающему приложению от служб доступности, структурированы согласно самоописывающему языку, такому как расширяемый язык разметки (XML) для улучшения эффективности, с помощью которой компоненты могут работать по запросам данных и ответам. Как хорошо известно специалистам в области техники, расширяемый язык разметки позволяет данным быть отформатированными и структурированными так, что компоненты данных могут быть идентифицированы согласно самоописывающим тегам разметки. Например, запрос данных о доступности согласно вариантам осуществления настоящего изобретения может быть передан между компонентами, описанными на фиг.2 и 3, как XML-структурированное сообщение, где каждый компонент сообщения ассоциативно связан с самоописывающим тегом разметки. Например, время собрания может быть ассоциативно связано с тегом времени собрания, дата собрания может быть ассоциативно связана с тегом даты собрания, участник может быть ассоциативно связан с тегом участника, желательный ресурс может быть ассоциативно связан с тегом ресурса и т.п.
Файл XML-схемы может быть ассоциативно связан с XML-структурированным запросом данных, который определяет грамматику XML, синтаксис и определения, ассоциативно связанные с XML-структурированным запросом данных. То есть файл XML-схемы, ассоциативно связанный с запросом данных, определяет значение каждого из XML-тегов, примененных к запросу данных. Таким образом, любой принимающий компонент, например, служба 210, 220 доступности или серверы 215, 225 индивидуальных почтовых ящиков могут использовать запрос данных согласно XML-структуре в соответствии с определениями, примененными к запросу согласно файлу XML-схемы. Таким образом, любой принимающий или использующий компонент запроса данных, который работает, чтобы потреблять XML, может читать и использовать запрос данных на основе ассоциативно связанного файла XML-схемы.
Согласно этому варианту осуществления, если дополнительная служба 220 доступности и дополнительный сервер 225 почтовых ящиков управляются организацией, отличной от организатора собрания, где дополнительная служба доступности и дополнительный сервер почтовых ящиков управляются согласно отличным или, возможно, несовместимым компьютерным системам программирования и операционным системам от систем организатора собрания, дополнительная служба 220 доступности и дополнительный сервер 225 почтовых ящиков могут, тем не менее, прочитать и ответить на запрос данных, если дополнительная служба 220 доступности и дополнительный сервер 225 почтовых ящиков функционируют так, чтобы потреблять XML согласно ассоциативно связанному файлу XML-схемы. Например, если имена желательных участников и желательные интервалы времени собраний ассоциативно связаны с XML-тегами, которые определены ассоциативно связанным файлом XML-схемы, принимающая дополнительная служба доступности и принимающий дополнительный сервер 225 почтовых ящиков (согласно настоящему примеру) могут понять данные, которые запрошены через запрос данных, посредством извлечения имен участников и времен собрания из запроса данных, определяя эти данные в запросе данных согласно XML-тегам, ассоциативно связанным с этими данными в запросе и определенными для этих данных ассоциативно связанным файлом XML-схемы. Также данные о доступности, возвращенные от служб 210, 220 доступности и серверов 215, 225 почтовых ящиков, могут быть структурированы согласно расширяемому языку разметки для передачи обратно приложению 106, чтобы позволить приложению 106 более эффективно прочитать и понять возвращенные данные.
Согласно другому варианту осуществления один или более интерфейсов прикладного программирования (API) могут быть раскрыты для разрешения одному или более приложениям 106 календарного планирования получать данные о доступности от серверов почтовых ящиков через службы доступности, описанные в данном документе. Таким образом, каждому запрашивающему приложению 106 (включая третьесторонние приложения календарного планирования) не требуется развивать отдельные способы для извлечения данных из соответствующих серверов почтовых ящиков. Например, интерфейс прикладного программирования, такой как GetCalendarViews(), может быть сделан доступным запрашивающим приложениям для опроса одного или более серверов почтовых ящиков через службы доступности, как описано выше. Ряд параметров может быть передан с помощью API для запроса других объемов и типов данных. Например, один параметр может идентифицировать потенциального участника или ресурс по адресу электронного почтового ящика. Другой параметр может определять период времени, в течение которого запрашиваются данные о доступности. Другие параметры могут использоваться для фильтрации данных, которые возвращаются в ответ на запрос, на основе одного или более свойств фильтрации.
Как описано в данном документе, способы и системы предоставлены для извлечения данных о доступности в реальном времени для одного или более потенциальных участников собрания или ресурсов. Специалистам в области техники будет очевидно, что различные модификации и вариации могут быть сделаны в настоящем изобретении без отступления от объема и духа изобретения. Другие варианты осуществления настоящего изобретения будут очевидны специалистам в области техники из обсуждения описания и практического применения изобретения, раскрытого в данном документе.
название | год | авторы | номер документа |
---|---|---|---|
МЕХАНИЗМ СИНХРОНИЗАЦИИ КОМПЛЕКТА ПРИЛОЖЕНИЙ ДЛЯ ПРОДУКТИВНОЙ РАБОТЫ И БИЗНЕС-ПРИЛОЖЕНИЙ | 2006 |
|
RU2419849C2 |
РАСПРЕДЕЛЯЕМАЯ, МАСШТАБИРУЕМАЯ, ПОДКЛЮЧАЕМАЯ АРХИТЕКТУРА КОНФЕРЕНЦСВЯЗИ | 2007 |
|
RU2459371C2 |
ОТСЛЕЖИВАНИЕ И РЕДАКТИРОВАНИЕ РЕСУРСА В СЕАНСЕ СОТРУДНИЧЕСТВА В РЕАЛЬНОМ ВРЕМЕНИ | 2007 |
|
RU2434279C2 |
ПРЕДОСТАВЛЕНИЕ ЦИФРОВЫХ ПРЕДСТАВЛЕНИЙ ИДЕНТИФИКАЦИИ | 2008 |
|
RU2463715C2 |
СИСТЕМА И СПОСОБ, ОТНОСЯЩИЕСЯ К ДОСТУПУ ИНФОРМАЦИИ | 2004 |
|
RU2335799C2 |
ДИНАМИЧЕСКОЕ КОНФИГУРИРОВАНИЕ, ВЫДЕЛЕНИЕ И РАЗВЕРТЫВАНИЕ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ | 2007 |
|
RU2429529C2 |
СПОСОБ ДЛЯ ОБМЕНА ДАННЫМИ | 2009 |
|
RU2517697C2 |
МОДЕЛИ, ИНТЕРФЕЙСЫ И ПРИНЦИПЫ ДЕЙСТВИЯ СИСТЕМЫ, РАСШИРЯЮЩЕЙ КОММУНИКАЦИИ И МИНИМИЗИРУЮЩЕЙ ПЕРЕБОИ С ПОМОЩЬЮ ПРЕДПОЧТИТЕЛЬНОГО И СИТУАЦИОННОГО КОДИРОВАНИЯ | 2004 |
|
RU2420805C2 |
СПОСОБ И СИСТЕМА ПРИЕМА ЗАКАЗОВ | 2003 |
|
RU2324221C2 |
ПРИКЛАДНОЙ ПРОГРАММНЫЙ ИНТЕРФЕЙС ДЛЯ ИЗВЛЕЧЕНИЯ И ПОИСКА ТЕКСТА | 2005 |
|
RU2412476C2 |
Изобретение относится к электронным системам календарного планирования. Техническим результатом является расширение функциональных возможностей электронных систем календарного планирования за счет предоставления данных о незанятости/занятости в реальном времени для потенциальных участников собрания или ресурсов. Данные о доступности в реальном времени предоставляются для потенциальных участников собрания и/или ресурсов. Служба доступности запрашивается на предмет данных о доступности одного или более участников и/или ресурсов собрания. Служба доступности определяет идентичность сервера электронного почтового ящика, на котором сохранены текущие календарные данные в реальном времени для желательных участников и/или ресурсов. Запрошенные данные извлекаются службой доступности из одного или более серверов почтовых ящиков, имеющих данные для каждого участника и/или ресурса. Потенциальные участники могут устанавливать разрешения на свои соответствующие данные о доступности, чтобы ограничить количество и типы данных, которые могут быть извлечены тем, кто запрашивает данные. Запросы данных и ответы данных могут быть структурированы согласно расширяемому языку разметки (XML), и интерфейсы прикладного программирования (API) могут быть раскрыты для предоставления возможности запрашивающим приложениям эффективно вызывать службу доступности для данных о доступности. 3 н. и 14 з.п. ф-лы, 3 ил.
1. Машиночитаемый носитель, содержащий выполняемые компьютером инструкции, которые, при выполнении компьютером, осуществляют способ получения данных о доступности одного или более потенциальных участников собрания, содержащий этапы, на которых:
принимают в первой службе доступности запрос данных о доступности для события, связанного с конкретным собранием и инициированного через календарное приложение с помощью организатора собрания;
сравнивают с помощью первой службы доступности одного или более потенциальных участников собрания со списком людей в директории информации, причем директория информации идентифицирует один или более почтовых серверов, на которых сохраняется информация для одного или более потенциальных участников собрания;
определяют с помощью первой службы доступности первый почтовый сервер, который включает в себя данные о доступности в режиме реального времени для первого потенциального участника собрания из одного или более потенциальных участников собрания, и второй почтовый сервер, который включает в себя данные о доступности в режиме реального времени для второго потенциального участника из одного или более потенциальных участников собрания, причем второй почтовый сервер связан со второй службой доступности, при этом вторая служба доступности отличается от первой службы доступности;
определяют, позволяют ли полномочия для отдельных календарных данных, установленные первым потенциальным участником собрания из одного или более потенциальных участников собрания, извлекать с помощью календарного приложения данные о доступности в режиме реального времени для первого потенциального участника собрания из одного или более потенциальных участников собрания, причем полномочия конфигурированы для ограничения количества и типа данных о доступности в режиме реального времени, которые могут быть извлечены календарным приложением;
после определения, что данные о доступности в режиме реального времени для первого потенциального участника собрания могут быть извлечены календарным приложением, определяют тип данных о доступности в режиме реального времени, которые могут быть извлечены с помощью календарного приложения, причем тип данных о доступности в режиме реального времени представляет собой, по меньшей мере, одно из типа занятости/незанятости данных о доступности и детализированного типа данных о доступности;
запрашивают с помощью первой службы доступности данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены посредством календарного приложения для первого потенциального участника собрания из одного или более потенциальных участников собрания из первого почтового сервера;
запрашивают с помощью первой службы доступности данные о доступности в режиме реального времени для второго потенциального участника собрания из второй службы доступности;
принимают в первой службе доступности данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены посредством календарного приложения для первого потенциального участника собрания из одного или более потенциальных участников собрания, причем данные о доступности в режиме реального времени указывают, занят или не занят первый потенциальный участник собрания из одного или более потенциальных участников собрания для того, чтобы участвовать в событии, связанном с конкретным собранием;
принимают с помощью первой службы доступности данные о доступности в режиме реального времени для второго потенциального участника собрания из второй службы доступности; и
пересылают данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены календарным приложением для первого потенциального участника собрания из одного или более потенциальных участников собрания, и данные о доступности в режиме реального времени для второго потенциального участника собрания от первой службы доступности календарному приложению.
2. Машиночитаемый носитель по п.1, дополнительно содержащий инструкции для организации собрания с одним или более потенциальными участниками собрания на основании данных о доступности в режиме реального времени, принятых с помощью календарного приложения для одного или более потенциальных участников собрания.
3. Машиночитаемый носитель по п.1, причем упомянутый тип занятости/незанятости данных о доступности в режиме реального времени, которые могут быть извлечены с помощью организатора собрания на основе календарного приложения для одного или более потенциальных участников собрания, содержит информацию, показывающую даты и время, когда один или более потенциальных участников собрания незаняты, а также даты и время, когда один или более потенциальных участников собрания заняты.
4. Машиночитаемый носитель по п.1, причем прием запроса данных о доступности в первой службе доступности включает в себя прием запроса собрания, инициированного календарным приложением для одного или более потенциальных участников собрания.
5. Машиночитаемый носитель по п.1, причем прием запроса данных о доступности в первой службе доступности включают в себя прием запроса данных о доступности как запроса данных, структурированных согласно расширяемому языку разметки (XML).
6. Машиночитаемый носитель по п.1, дополнительно содержащий инструкции для предоставления интерфейса прикладного программирования (API) в форме GetCalendarViews() для запроса у первой службы доступности данных о доступности в режиме реального времени для одного или более потенциальных участников собрания.
7. Машиночитаемый носитель по п.1, причем упомянутый детализированный тип данных о доступности в режиме реального времени, которые могут быть извлечены календарным приложением для одного или более потенциальных участников собрания, содержит одно или более из группы, состоящей из секретной информации, уязвимой информации и ограниченной информации.
8. Машиночитаемый носитель по п.3, причем тип занятости/незанятости данных о доступности в режиме реального времени, которые могут быть извлечены календарным приложением для одного или более потенциальных участников собрания, содержит одно или более из группы, состоящей из общедоступной информации, неуязвимой информации и неограниченной информации.
9. Машиночитаемый носитель по п.1, причем определяется, что не разрешено извлечение данных о доступности в режиме реального времени для первого потенциального участника собрания из одного или более потенциальных участников собрания посредством календарного приложения.
10. Система для получения данных о доступности для одного или более участников запрошенного собрания, содержащая:
один или более почтовых серверов, причем один или более почтовых серверов хранят отдельные календарные данные для одного или более участников запрошенного собрания;
устройство хранения службы доступности;
блок обработки службы доступности, соединенный с одним или более почтовыми серверами и устройством хранения службы доступности, причем блок обработки службы доступности выполнен с возможностью:
принимать в первой службе доступности запрос, инициированный через календарное приложение, для события, связанного с конкретным собранием;
сравнивать с помощью первой службы доступности одного или более участников запрошенного собрания со списком людей в директории информации, причем директория информации идентифицирует один или более почтовых серверов;
определять с помощью первой службы доступности первый почтовый сервер, который включает в себя данные о доступности в режиме реального времени для первого участника запрошенного собрания из одного или более участников запрошенного собрания, и второй почтовый сервер, который включает в себя данные о доступности в режиме реального времени для второго участника запрошенного собрания из одного или более участников запрошенного собрания, причем второй почтовый сервер связан со второй службой доступности, при этом вторая служба доступности отличается от первой службы доступности;
определять, позволяют ли полномочия для отдельных календарных данных, установленные первым участником запрошенного собрания из одного или более участников запрошенного собрания, извлекать с помощью календарного приложения данные о доступности в режиме реального времени для первого участника запрошенного собрания из одного или более участников запрошенного собрания, причем полномочия конфигурированы для ограничения количества и типа данных о доступности, которые могут быть извлечены календарным приложением;
после определения, что данные о доступности для первого участника запрошенного собрания могут быть извлечены календарным приложением, определять тип данных о доступности, которые могут быть извлечены календарным приложением, причем тип данных о доступности представляет собой, по меньшей мере, общедоступный тип данных о доступности или секретный тип данных о доступности;
запрашивать с помощью первой службы доступности данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены посредством календарного приложения, связанного с первым участником запрошенного собрания из одного или более участников запрошенного собрания, из первого почтового сервера;
запрашивать с помощью первой службы доступности данные о доступности в режиме реального времени для второго участника запрошенного собрания из второй службы доступности;
принимать в первой службе доступности данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены посредством календарного приложения для первого участника запрошенного собрания из одного или более потенциальных участников собрания, причем данные о доступности в режиме реального времени указывают, занят или не занят первый участник запрошенного собрания из одного или более потенциальных участников собрания для того, чтобы участвовать в событии, связанном с конкретным собранием;
принимать с помощью первой службы доступности данные о доступности в режиме реального времени для второго участника запрошенного собрания из второй службы доступности; и
пересылать данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены календарным приложением для первого участника запрошенного собрания из одного или более участников запрошенного собрания, и данные о доступности в режиме реального времени для второго участника запрошенного собрания от первой службы доступности календарному приложению.
11. Система по п.10, в которой общедоступный тип данных о доступности, связанных с одним или более участниками запрошенного собрания, содержит информацию, показывающую даты и время, когда один или более участников запрошенного собрания не заняты, и даты и время, когда один или более участников запрошенного собрания заняты.
12. Система по п.10, в которой секретный тип данных о доступности, связанных с одним или более участниками запрошенного собрания, содержит одно или более из группы, состоящей из секретной информации, уязвимой информации и ограниченной информации.
13. Реализуемый на компьютере способ получения данных о доступности в режиме реального времени для одного или более потенциальных участников собрания, содержащий этапы, на которых:
принимают в первой службе доступности запрос данных о доступности для события, связанного с конкретным собранием и инициированного через календарное приложение;
сравнивают с помощью первой службы доступности одного или более потенциальных участников собрания со списком людей в директории информации, причем директория информации идентифицирует один или более почтовых серверов, на которых сохраняется информация для одного или более потенциальных участников собрания;
определяют с помощью первой службы доступности первый почтовый сервер, который включает в себя данные о доступности в режиме реального времени для первого потенциального участника собрания из одного или более потенциальных участников собрания, и второй почтовый сервер, который включает в себя данные о доступности в режиме реального времени для второго потенциального участника из одного или более потенциальных участников собрания, причем второй почтовый сервер связан со второй службой доступности, при этом вторая служба доступности отличается от первой службы доступности;
определяют, позволяют ли полномочия для отдельных календарных данных, установленные первым потенциальным участником собрания из одного или более потенциальных участников собрания, извлекать с помощью календарного приложения данные о доступности в режиме реального времени для первого потенциального участника собрания из одного или более потенциальных участников собрания, причем полномочия конфигурированы для ограничения количества и типа данных о доступности, которые могут быть извлечены календарным приложением;
после определения, что данные о доступности в режиме реального времени для первого потенциального участника собрания могут быть извлечены календарным приложением, определяют тип данных о доступности, которые могут быть извлечены календарным приложением, причем тип данных о доступности представляет собой, по меньшей мере, одно из типа занятости/незанятости данных о доступности или детализированного типа данных о доступности;
запрашивают с помощью первой службы доступности данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены посредством календарного приложения для первого потенциального участника собрания из одного или более потенциальных участников собрания из первого почтового сервера;
запрашивают с помощью первой службы доступности данные о доступности в режиме реального времени для второго потенциального участника собрания из второй службы доступности;
принимают в первой службе доступности данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены посредством календарного приложения для первого потенциального участника собрания из одного или более потенциальных участников собрания, причем данные о доступности в режиме реального времени указывают, занят или не занят первый потенциальный участник собрания из одного или более потенциальных участников собрания для того, чтобы участвовать в событии, связанном с конкретным собранием;
принимают с помощью первой службы доступности данные о доступности в режиме реального времени для второго потенциального участника собрания из второй службы доступности; и
пересылают данные о доступности в режиме реального времени упомянутого типа, которые могут быть извлечены календарным приложением для первого потенциального участника собрания из одного или более потенциальных участников собрания, и данные о доступности в режиме реального времени для второго потенциального участника собрания от первой службы доступности календарному приложению.
14. Способ по п.13, в котором прием запроса данных о доступности в первой службе доступности включает в себя прием запроса данных о доступности как запрос данных, структурированных согласно расширяемому языку разметки (XML).
15. Способ по п.13, в котором детализированный тип данных о доступности, имеющих полномочия, установленные одним или более потенциальными участниками собрания, содержит одно или более из группы, состоящей из секретных данных, данных, связанных с датой позднее заранее определенной точки во времени, и уязвимых данных.
16. Способ по п.13, в котором тип занятости/незанятости данных о доступности, которые могут быть извлечены календарным приложением для одного или более потенциальных участников собрания, содержит, по меньшей мере, одно или более из группы, состоящей из общедоступной информации, неуязвимой информации и неограниченной информации.
17. Способ по п.13, в котором определяется, что не разрешено извлечение данных о доступности в режиме реального времени для первого потенциального участника собрания из одного или более потенциальных участников собрания посредством календарного приложения.
US 6216110 B1, 10.04.2001 | |||
US 6085166 A, 04.07.2000 | |||
US 20020138326 A1, 26.09.2002 | |||
RU 2004130424 A, 18.03.2003 | |||
Бесколесный шариковый ход для железнодорожных вагонов | 1917 |
|
SU97A1 |
Прибор, замыкающий сигнальную цепь при повышении температуры | 1918 |
|
SU99A1 |
RU 99111947 A, 20.05.2001 | |||
СПОСОБ СОГЛАСОВАНИЯ БЛОКОВ ДАННЫХ О СОБЫТИЯХ С ИХ ВРЕМЕННЫМИ ЗНАЧЕНИЯМИ | 2001 |
|
RU2261478C2 |
Токосъемное устройство для крупных высоковольтных электрических машин | 1958 |
|
SU116691A1 |
Авторы
Даты
2011-11-27—Публикация
2006-09-06—Подача