System and method for public consumption of communication events between arbitrary processes
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-003/00
G06F-009/44
G06F-009/46
G06F-013/00
G06F-015/16
출원번호
UP-0809249
(2004-03-25)
등록번호
US-7827561
(2010-11-22)
발명자
/ 주소
McKee, Timothy P.
Arcuri, Michael P.
Sareen, Chaitanya D.
출원인 / 주소
Microsoft Corporation
대리인 / 주소
Shook, Hardy & Bacon L.L.P
인용정보
피인용 횟수 :
6인용 특허 :
134
초록▼
A system and method for public consumption of communication events between arbitrary processes. In one embodiment, mechanisms are provided by which the system can effectively act to broker a user's communications and thus act as a type of automated assistant. The invention is provided in a notificat
A system and method for public consumption of communication events between arbitrary processes. In one embodiment, mechanisms are provided by which the system can effectively act to broker a user's communications and thus act as a type of automated assistant. The invention is provided in a notification user context system which determines when it is appropriate or not appropriate to interrupt a user with a notification based on the user's context (i.e., availability to interruption). The system provides for processes to be informed when these notification events are occurring, thus allowing the processes to act on these types of events on the user's behalf. In one example embodiment, a calendaring program may be a type of process that is registered to be informed when communication events occur. When the calendaring program is informed that a notification from another program (e.g., e-mail, instant messaging, etc.) has been refused due to the user being busy, the calendaring program may evaluate the sender, and if appropriate respond with a customized busy announcement that indicates a time when the user may next be available.
대표청구항▼
The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows: 1. A method for registering a process in a system where communication events occur that are related to notifications, the method comprising: providing a user context including a user cont
The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows: 1. A method for registering a process in a system where communication events occur that are related to notifications, the method comprising: providing a user context including a user context state, the user context defining a communication event to be performed in response to a notification for at least one value of the user context state; providing a rule that specifies at least one condition for modifying the defined communication event; receiving a message to register a process for communication events; registering the process in response to the received message, the registered process being a program that includes data regarding the user context state that is outside data maintained by other components of the system; receiving an indication that the user context state has changed value; and evaluating a sender, in response to the occurrence of the defined communication event or the modified defined communication event, to determine whether the registered process will send a customized message to the sender, wherein the evaluation of the sender comprises determining whether the sender has been placed on a list of persons entitled to receive the customized message. 2. The method of claim 1, wherein one type of communication event occurs when a notification from a sender is not delivered to a user due to a user's context. 3. The method of claim 2, wherein in response to receiving a communication event, the registered process provides a customized message to the sender of the notification that includes data about the user. 4. The method of claim 3, wherein the registered process is a calendaring program and the data about the user indicates a time when the user may next be available. 5. The method of claim 3, wherein the data about the user includes at least one alternative contact for the user. 6. A method for registering a process in a user context system, the user context system including a user context state and a rule, wherein a communication event to be performed in response to a notification is defined for at least one value of the user context state, and the rule includes at least one condition for modifying the defined communication event, the method comprising: sending a message for registering a process, the registered process being a program that has data regarding the user context state that is outside data maintained by other components of the user context system; evaluating a sender, in response the occurrence of the defined communication event or the modified defined communication event, to determine whether the registered process will send a customized message to the sender, wherein the evaluation of the sender comprises determining whether the sender has been placed on a list of persons entitled to receive the customized message, and providing the registered process with information regarding the communication event. 7. The method of claim 6, wherein the defined communication event is related to a notification that is sent from a sender to a user. 8. The method of claim 7, wherein the information regarding the defined communication event indicates that the notification did not reach the user. 9. The method of claim 8, wherein the information regarding the defined communication event includes a copy of the notification. 10. The method of claim 6, wherein the data provided to the registered process comprises data regarding the user's activities. 11. The method of claim 6, wherein the registered process provides a customized message to the sender of the notification that includes data regarding the user. 12. One or more computer-readable storage media having stored thereon computer-executable instructions including instructions for implementing a notification system comprising: a user context process for setting a user context including a user context state and at least one user rule, the user context and the at least one user rule being made available to a user for modification in accordance with a preference of the user, wherein a communication event to be performed in response to a notification is defined for at least one value of the user context state, and the at least one rule includes at least one condition for modifying the communication event; a receiving component which receives notifications from a sending component and under specified conditions delivers the notifications to the user; and a registered process, the registered process being a program that has data regarding the user context state that is outside data maintained by other components of the notification system; wherein when the sending component sends a notification to the receiving component, if the notification is not delivered to the user then a message is sent to the registered process regarding the non-delivery of the notification and wherein a sender who is associated with the sending component is evaluated to determine whether the registered process will send a customized message to the sender, the evaluation of the sender comprising determination of whether the sender has been placed on a list of persons entitled to receive the customized message. 13. The media of claim 12, wherein the specified conditions under which a notification will not be delivered to a user are determined according to a user context. 14. The media of claim 12, wherein in response to receiving a message regarding the non-delivery of a notification the registered process provides a customized message to the sending component that includes data about the user. 15. The media of claim 14, wherein the registered process is a calendaring program and the data about the user indicates a time when the user may next be available. 16. The media of claim 14, wherein the data about the user indicates at least one alternative contact for the user. 17. One or more computer-readable storage media having stored thereon computer-executable instructions including instructions for implementing a user context system, comprising: a first process for setting a user context including a user context state and at least one user rule, the user context and the at least one user rule being made available to a user for modification in accordance with at least one preference of the user, wherein a communication event to be performed in response to a notification is defined for at least one value of the user context state , and the at least one rule includes at least one condition for modifying the communication event; a second process for generating a notification; and a third process that is registered; wherein the registered third process receives an event message in response to the notification not being delivered to the user, and wherein a sender of the notification who is associated with the second process is evaluated to determine whether the registered third process will send a customized message to the sender when the notification does not reach the user, the evaluation of the sender comprising a determination of whether the sender has been placed on a list of persons entitled to receive the customized message. 18. The media of claim 17, wherein the second process is a communication program. 19. The media of claim 18, wherein the communication program comprises one of an email or instant messaging program. 20. The media of claim 17, wherein the registered third process is a program that has data regarding the user that is outside data that is maintained by other components of the user context system. 21. The media of claim 20, wherein the registered third process is a calendaring program that has data regarding the user's scheduled activities. 22. The media of claim 20, wherein the registered third process provides a customized message to the sender of the notification which includes information regarding the user. 23. The media of claim 22, wherein the customized message indicates a time when the user may next be available. 24. The media of claim 17, wherein the user context that is set by the first process indicates when the user is not available to interruption. 25. The media of claim 24, wherein when the registered third process receives an event message indicating that a notification was not delivered to the user, the registered third process sends a customized message indicating when the user may next be available. 26. The media of claim 17, wherein the evaluation of the sender comprises a determination of whether or not the sender has been placed in a category that the user has selected. 27. One or more computer-storage media storing computer-useable instructions that, when executed by a computing device, perform a method for providing information regarding communication events, at least one communication event occurring when a notification is not delivered to a user, comprising: providing a user context including a user context state, the user context defining a communication event to be performed in response to a notification for at least one value of the user context state; providing a rule that specifies at least one condition for modifying the defined communication event; receiving a message to register a process for communication events; registering the process in response to the received message, the registered process being a program that includes data regarding the user context state that is outside data maintained by other components of the system; receiving an indication that the user context state has changed value; and evaluating a sender, in response to the occurrence of the defined communication event or the modified defined communication event, to determine whether the registered process will send a customized message to the sender, wherein the evaluation of the sender comprises determining whether the sender has been placed on a list of persons entitled to receive the customized message. 28. The computer storage media storing computer-useable instructions that, when executed by a computing device, perform a method according to claim 27, further comprising computer-usable instructions for enabling the evaluation of a notification in accordance with the user context in order to determine whether the notification will be delivered to the user. 29. The computer storage media storing computer-useable instructions that, when executed by a computing device, perform a method according to claim 28, wherein if the notification is not delivered to the user, then a communication event occurs which is delivered to the registered process. 30. The computer storage media storing computer-useable instructions that, when executed by a computing device, perform a method according to claim 27, wherein if a customized message is sent, the customized message is made to include data about the user. 31. The computer storage media storing computer-useable instructions that, when executed by a computing device, perform a method according to claim 30, wherein the data about the user indicates a time when the user may next be available.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (134)
Rapaport,Jeffrey A.; Rapaport,Seymour A.; Clarke,Jeffrey E.; Rinehart,Eric R.; Bergens,Michael U., Adaptive communication methods and systems for facilitating the gathering, distribution and delivery of information related to medical care.
Bloomfield Marc A. (Lighthouse Point FL) Andrew Christopher A. H. (Orem UT) Magid Peter G. (Boca Raton FL), Apparatus and method for manipulating an object in a computer system graphical user interface.
Mital Vijay,GBX ITX WD1 3TQ ; Maude Peter,GBX ITX HG1 2ET, Apparatus and method for storing, navigating among and adding links between data items in computer databases.
Powers,Craig R.; Gardner,Kenneth C.; Beauchamp,Tim J.; Netsch,Tana Christine; Nicholls,Geoffrey Deane Owen, Architecture for general purpose near real-time business intelligence system and methods therefor.
J. Paul Dourish ; John O. Lamping ; Thomas Rodden GB, Collaborative document management system with customizable filing structures that are mutually intelligible.
Niblack Carlton Wayne, Computer file directory system displaying visual summaries of visual data in desktop computer documents for quickly identifying document content.
Jon R. Berry ; Robert F. Day ; Eric R. Flo ; Joseph H. Matthews ; Richard S. Turner, Jr., Computer operating system that defines default document folder for application programs.
Lev Ran,Etai; Glixman,Shahar; Ben Shaul,Israel; Bortnikov,Vita; Kaminsky,Daniel; Ben Kiki,Danit; Zach,Idan; Cidon,Israel, Double-proxy remote data access system.
Isensee, Scott Harlan; Poston, Ricky Lee; Tsao, I-Hsing, File manager system providing faster and more efficient interactive user access to files in computer displays.
Meijer Ronald ; Hebenthal Douglas C. ; Dillingham Lara N. ; Stebbens Kim A. ; Jacoby James D. ; Romano Anthony C., Integration of physical and virtual namespace.
Johnston ; Jr. Robert G. (Cupertino CA) Stern Mark L. (Cupertino CA) Evans David L. (Cupertino CA), Method and apparatus for improved manipulation of data between an application program and the files system on a computer.
Cahill ; Jr. Robert B. (Grapevine TX), Method and apparatus for linking electronic mail and an electronic calendar to provide a dynamic response to an electron.
Mander Richard ; Rose Daniel E. ; Salomon Gitta ; Wong Yin Yin ; Oren Timothy ; Booker Susan ; Houde Stephanie, Method and apparatus for organizing information in a computer system.
Mander, Richard; Rose, Daniel E.; Salomon, Gitta; Wong, Yin Yin; Oren, Timothy; Booker, Susan; Houde, Stephanie, Method and apparatus for organizing information in a computer system.
Ainsbury Robert D. ; Al Hussein Hussein K. ; Hinnant Michael C. ; Lahham Muwaffaq M. ; Ludin Stephen L. ; Putterman Daniel S. ; Shotton Frederick R. ; Tejada Wilfredo M., Method and apparatus for performing data collection, interpretation and analysis, in an information platform.
Poliquin Lynn R. (Goffstown NH) Arrowsmith Russell (Merrimack NH) Lewis Lundy (Mason NH) Tracy William (Chelmsford MA), Method and apparatus for policy-based alarm notification in a distributed network management environment.
McIntosh Heather A. (Nahant MA) Priyadarshan Eswar (Reading MA) Ruberg Alan (Foster City CA) Shea Timothy (Charlestown MA 4), Method and apparatus for providing collection browsers.
Harding, Andrew Richard; Kowalski, Lee Anne; Russell, John David, Method and system for delivering integrated user assistance information and traditional help from the same source.
Cornelius, Shawn S.; Huffman, Arnold Z.; Klug, Matthew C.; Krahn, Richard R.; Su, Eric C.; Sweeney, Michael S., Method and system for translating data associated with a relational database.
Bloomfield Marc A. (Lighthouse Point FL) Kliger Scott A. (Boynton Beach FL), Method for providing a readily distinguishable template and means of duplication thereof in a computer system graphical.
Mukundan,Anil; Coker,John; Coppens,William E., Method, apparatus, and system for implementing caching of view custom options in a framework to support web-based applications.
Morris Steve ; Lei James ; Narayen Shantanu ; Khosla Aditya, Methods and apparatuses for presenting a collection of digital media in a media container.
Glasser Daniel S. ; McCurdy Ann Elizabeth ; Price Robert M., Methods and arrangements for controlling resource access in a networked computing environment.
Reed Michael (Chicago IL) Bestick Greg (Lacosta CA) Greenhalgh Carol (Austin TX) Bastin Norman J. (Chicago IL) Carlton Ron (San Marcos CA) Frank Stanley D. (Chicago IL) Good Dale (Evanston IL) Holman, Multimedia search system using a plurality of entry path means which indicate interrelatedness of information.
Hunt, Joseph R; Garcia, Julio Cesar, Object oriented database interface encapsulation that allows for chronologically overlapping transactions in a multi-threaded environment.
Slivka Benjamin W. ; Martineau Teresa Anne ; Brown Christopher Ralph ; Pitt George ; Nakajima Satoshi ; Ramasubtamanian Sankar ; Sheldon Mike, Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document.
Carter John B. ; Davis Scott H. ; Frank Steven J., Remote access and geographically distributed computers in a globally addressable storage environment.
Horvitz, Eric J.; Steckler, Paul A.; Pierce, Shaun D.; Fang, Lijiang; Lucovsky, Mark H.; Wu, Winnie C., Schemas for a notification platform and related information services.
Theimer Marvin M. (Mountain View CA) Spreitzer Michael J. (Tracy CA) Weiser Mark D. (Palo Alto CA) Goldstein Richard J. (San Francisco CA) Terry Douglas B. (San Carlos CA) Schilit William N. (Palo Al, Selective delivery of electronic messages in a multiple computer system based on context and environment of a user.
Lamping John O. ; Dourish James P. ; Edwards Warren K. ; LaMarca Anthony G. ; Petersen Karin ; Salisbury Michael P. ; Terry Douglas B. ; Thornton James D., Self-contained document management based on document properties.
Hazama, Kensuke; Hisashi, Nishio; Chiu, Li-Teh; Jin, James; Pang, Marrisa, Stand alone data management system for facilitating sheet metal part production.
Thomas Michael W. ; Allard James E. ; Howard Michael ; Chung Sophia ; Ferroni Cameron ; Henbenthal Douglas C. ; Ludeman John ; Stebbens Kim ; Sanders ; II Henry L. ; Treadwell ; III David R., System and method for administering a meta database as an integral component of an information server.
Cote Joseph Paul-Emile Pierre ; Thomas Stephen David, System and method for detection of, notification of, and automated repair of problem conditions in a messaging system.
Lamb, Steven D.; Feldstein, Adam M., System and method for dynamically adjusting data values and enforcing valid combinations of the data in response to remote user input.
Brown Eric William ; Chang Rong Nickle ; Ellozy Hamed Abdelfattah ; Prager John Martin ; So Edward Cholchin, System and method for hierarchically grouping and ranking a set of objects in a query context based on one or more rela.
Dennis, Michael W.; Freed, Michele L.; Plastina, Daniel; Flo, Eric R.; Kays, Jr., David E.; Corrington, Robert E., System and method for implementing group policy.
Michael W. Dennis ; Michele L. Freed ; Daniel Plastina ; Eric R. Flo ; David E. Kays, Jr. ; Robert E. Corrington, System and method for implementing group policy.
Watanabe, Ryoji; Fung, Henry T.; Schwartz, Paul D., System and method for installing and servicing an operating system in a computer or information appliance.
Amir, Arnon; Niblack, Carlton Wayne; Pass, Norman Jerome; Petkovic, Dragutin; Ponceleon, Dulce Beatriz; Srinivasan, Savitha; Syeda-Mahood, Tanveer Fathima, System and method for linking an audio stream with accompanying text material.
Klein Johannes (San Francisco CA) Upton ; IV Francis R. (Saratoga CA), System and method for optimizing message flows between agents in distributed computations.
Mendez Daniel J. ; Riggins Mark D. ; Wagle Prasad ; Ying Christine C., System and method for using a global translator to synchronize workspace elements across a network.
Sciammarella,Eduardo Agusto; Rekimoto,Junichi; Oba,Haruo; Imamura,Makoto; Agata,Hideyuki; Hayashi,Masakazu; Kuninori,Masato, System for managing data objects.
Saether Christian D. (Seattle WA) Stoppani ; Jr. Peter (Woodinville WA), System of device independent file directories using a tag between the directories and file descriptors that migrate with.
Decoste Marc-Andre,CAX ; Desbois Daniel,CAX ; Hebert Marc,CAX ; Krul Thomas,CAX ; Michaud Nicholas,CAX ; Mondry A. Michael,CAX ; Sheasby Michael C.,CAX ; Talavera Luis,MXX, Taxonomy of objects and a system of non-modal property inspectors.
David T. Berquist ; Peter M. Eisenberg ; Mitchell B. Grunes ; Timothy A. Mertens ; Cindy L. Munson ; Martin A. Kenner ; John M. Kruse, Topography of software notes.
Kevin G. Rivette ; Irving S. Rappaport ; Luke Hohmann ; David Puglia ; David Goretsky ; Adam Jackson ; Charles Rabb, Jr. ; David W. Smith ; Brian Park ; Warren Thornthwaite ; Jorge A. Navar, Using hyperbolic trees to visualize data generated by patent-centric and group-oriented data processing.
O'Sullivan, Patrick J.; Stern, Edith H.; Weir, Robert C.; Willner, Barry E.; Willner, Marjorie R., Content and context based handling of instant messages.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.