Movatterモバイル変換


[0]ホーム

URL:


US8495163B2 - Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions - Google Patents

Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions
Download PDF

Info

Publication number
US8495163B2
US8495163B2US10/999,909US99990904AUS8495163B2US 8495163 B2US8495163 B2US 8495163B2US 99990904 AUS99990904 AUS 99990904AUS 8495163 B2US8495163 B2US 8495163B2
Authority
US
United States
Prior art keywords
notification
subscription
recipient
subscribable
user
Prior art date
Legal status (The legal status 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 status listed.)
Active, expires
Application number
US10/999,909
Other versions
US20050210062A1 (en
Inventor
Joann J. Ordille
Nina M. Tandon
Patrick Tendick
Qian Yang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avaya Inc
Original Assignee
Avaya Inc
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 Avaya IncfiledCriticalAvaya Inc
Priority to US10/999,909priorityCriticalpatent/US8495163B2/en
Assigned to AVAYA TECHNOLOGY CORP.reassignmentAVAYA TECHNOLOGY CORP.ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: ORDILLE, JOANN J., TENDICK, PATRICK, YANG, QIAN, TANDON, NINA M.
Publication of US20050210062A1publicationCriticalpatent/US20050210062A1/en
Assigned to CITIBANK, N.A., AS ADMINISTRATIVE AGENTreassignmentCITIBANK, N.A., AS ADMINISTRATIVE AGENTSECURITY AGREEMENTAssignors: AVAYA TECHNOLOGY LLC, AVAYA, INC., OCTEL COMMUNICATIONS LLC, VPNET TECHNOLOGIES, INC.
Assigned to CITICORP USA, INC., AS ADMINISTRATIVE AGENTreassignmentCITICORP USA, INC., AS ADMINISTRATIVE AGENTSECURITY AGREEMENTAssignors: AVAYA TECHNOLOGY LLC, AVAYA, INC., OCTEL COMMUNICATIONS LLC, VPNET TECHNOLOGIES, INC.
Assigned to AVAYA INCreassignmentAVAYA INCREASSIGNMENTAssignors: AVAYA LICENSING LLC, AVAYA TECHNOLOGY LLC
Assigned to AVAYA TECHNOLOGY LLCreassignmentAVAYA TECHNOLOGY LLCCONVERSION FROM CORP TO LLCAssignors: AVAYA TECHNOLOGY CORP.
Assigned to BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THEreassignmentBANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THESECURITY AGREEMENTAssignors: AVAYA INC., A DELAWARE CORPORATION
Priority to US13/621,198prioritypatent/US9124643B2/en
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.reassignmentTHE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.SECURITY AGREEMENTAssignors: AVAYA, INC.
Assigned to BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THEreassignmentBANK OF NEW YORK MELLON TRUST COMPANY, N.A., THESECURITY AGREEMENTAssignors: AVAYA, INC.
Publication of US8495163B2publicationCriticalpatent/US8495163B2/en
Application grantedgrantedCritical
Assigned to CITIBANK, N.A., AS ADMINISTRATIVE AGENTreassignmentCITIBANK, N.A., AS ADMINISTRATIVE AGENTSECURITY INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: AVAYA INC., AVAYA INTEGRATED CABINET SOLUTIONS INC., OCTEL COMMUNICATIONS CORPORATION, VPNET TECHNOLOGIES, INC.
Assigned to AVAYA INC.reassignmentAVAYA INC.BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535Assignors: THE BANK OF NEW YORK MELLON TRUST, NA
Assigned to AVAYA INC.reassignmentAVAYA INC.BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 029608/0256Assignors: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Assigned to AVAYA INC.reassignmentAVAYA INC.BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639Assignors: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Assigned to VPNET TECHNOLOGIES, INC., AVAYA INTEGRATED CABINET SOLUTIONS INC., AVAYA INC., OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION)reassignmentVPNET TECHNOLOGIES, INC.BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001Assignors: CITIBANK, N.A.
Assigned to SIERRA HOLDINGS CORP., VPNET TECHNOLOGIES, INC., AVAYA TECHNOLOGY, LLC, AVAYA, INC., OCTEL COMMUNICATIONS LLCreassignmentSIERRA HOLDINGS CORP.RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS).Assignors: CITICORP USA, INC.
Assigned to GOLDMAN SACHS BANK USA, AS COLLATERAL AGENTreassignmentGOLDMAN SACHS BANK USA, AS COLLATERAL AGENTSECURITY INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: AVAYA INC., AVAYA INTEGRATED CABINET SOLUTIONS LLC, OCTEL COMMUNICATIONS LLC, VPNET TECHNOLOGIES, INC., ZANG, INC.
Assigned to CITIBANK, N.A., AS COLLATERAL AGENTreassignmentCITIBANK, N.A., AS COLLATERAL AGENTSECURITY INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: AVAYA INC., AVAYA INTEGRATED CABINET SOLUTIONS LLC, OCTEL COMMUNICATIONS LLC, VPNET TECHNOLOGIES, INC., ZANG, INC.
Assigned to WILMINGTON TRUST, NATIONAL ASSOCIATIONreassignmentWILMINGTON TRUST, NATIONAL ASSOCIATIONSECURITY INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: AVAYA INC., AVAYA INTEGRATED CABINET SOLUTIONS LLC, AVAYA MANAGEMENT L.P., INTELLISIST, INC.
Assigned to AVAYA TECHNOLOGY LLC, AVAYA, INC., OCTEL COMMUNICATIONS LLC, VPNET TECHNOLOGIESreassignmentAVAYA TECHNOLOGY LLCBANKRUPTCY COURT ORDER RELEASING THE SECURITY INTEREST RECORDED AT REEL/FRAME 020156/0149Assignors: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Assigned to WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENTreassignmentWILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENTINTELLECTUAL PROPERTY SECURITY AGREEMENTAssignors: AVAYA CABINET SOLUTIONS LLC, AVAYA INC., AVAYA MANAGEMENT L.P., INTELLISIST, INC.
Assigned to AVAYA HOLDINGS CORP., AVAYA INTEGRATED CABINET SOLUTIONS LLC, AVAYA INC., AVAYA MANAGEMENT L.P.reassignmentAVAYA HOLDINGS CORP.RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026Assignors: CITIBANK, N.A., AS COLLATERAL AGENT
Assigned to WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]reassignmentWILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]INTELLECTUAL PROPERTY SECURITY AGREEMENTAssignors: AVAYA INC., AVAYA MANAGEMENT L.P., INTELLISIST, INC., KNOAHSOFT INC.
Assigned to CITIBANK, N.A., AS COLLATERAL AGENTreassignmentCITIBANK, N.A., AS COLLATERAL AGENTINTELLECTUAL PROPERTY SECURITY AGREEMENTAssignors: AVAYA INC., AVAYA MANAGEMENT L.P., INTELLISIST, INC.
Assigned to AVAYA MANAGEMENT L.P., AVAYA INTEGRATED CABINET SOLUTIONS LLC, INTELLISIST, INC., AVAYA INC.reassignmentAVAYA MANAGEMENT L.P.RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386)Assignors: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Assigned to AVAYA INTEGRATED CABINET SOLUTIONS LLC, INTELLISIST, INC., AVAYA MANAGEMENT L.P., AVAYA INC.reassignmentAVAYA INTEGRATED CABINET SOLUTIONS LLCRELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436)Assignors: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Assigned to VPNET TECHNOLOGIES, INC., INTELLISIST, INC., AVAYA INC., HYPERQUALITY, INC., OCTEL COMMUNICATIONS LLC, CAAS TECHNOLOGIES, LLC, AVAYA INTEGRATED CABINET SOLUTIONS LLC, AVAYA MANAGEMENT L.P., HYPERQUALITY II, LLC, ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.)reassignmentVPNET TECHNOLOGIES, INC.RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001)Assignors: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
Assigned to AVAYA LLCreassignmentAVAYA LLC(SECURITY INTEREST) GRANTOR'S NAME CHANGEAssignors: AVAYA INC.
Activelegal-statusCriticalCurrent
Adjusted expirationlegal-statusCritical

Links

Images

Classifications

Definitions

Landscapes

Abstract

Methods and apparatus are disclosed for notifying one or more users of information, where the information has a plurality of attributes. A plurality of subscribable objects are provided to one or more of the users, where each of the subscribable objects comprises one or more of the plurality of attributes as required attributes and zero or more of the attributes as optional attributes. Subscription requests are received from one or more of the users based on at least one of the subscribable objects. The plurality of subscribable objects are based, for example, on a set of predefined templates. The predefined templates identify each of the plurality of attributes as a required attribute or an optional attribute. Each of the attributes is presented to a user using a display format selected based on a cardinality of the corresponding attribute. For example, the display format for a given attribute may comprise one or more of a user entry, a scrollable list and a check box.

Description

CROSS REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Application No. 60/554,232, filed Mar. 18, 2004, and is related to U.S. patent application Ser. No. 10/184,236, filed Jun. 26, 2002, entitled “Method and Apparatus for Automatic Notification and Response;” and U.S. patent application Ser. No. 10/184,325, filed Jun. 26, 2002, entitled “Method and Apparatus for Automatic Notification and Response Based on Communication Flow Expressions,” each incorporated by reference herein.
FIELD OF THE INVENTION
The present invention relates generally to communication methods and systems, and more particularly, to methods and systems that notify one or more users of information.
BACKGROUND OF THE INVENTION
Several technologies are available to notify users of events or new information. Typically, these technologies are based on email lists, bulletin boards, publish-subscribe systems, database triggers and filtering systems. A core issue in all of these systems is how the message to be sent is matched with interested subscribers. Email distribution lists and bulletin boards, for example, provide a fixed taxonomy of topics of interest. People subscribe to receive notifications for one or more topics by joining the email list or the bulletin board on that topic.
Publish-subscribe systems are also often organized with fixed taxonomies of topics. These systems are sometimes called topic-based (or type-based) publish-subscribe systems in the literature. Another category of publish-subscribe system is called the content-based publish-subscribe system. In these systems, attribute-value pairs in the message published are matched against user-specified constraints that are conjunctions of relational expressions over some of the attribute-value pairs (for example, item=car and price<$10,000) or, more generally selection queries in a normal form such as conjunctive normal form (for example, ((item=car) or (item=motorcycle)) and (price<$10,000)).
While such publish-subscribe systems provide an effective mechanism for notifying users of events or new information, they suffer from a number of limitations which, if overcome could make such publish-subscribe systems better suited for enterprise applications. For example, while some fee-based publish-subscribe systems are motivated to ensure that only authorized users are notified, they do not contain access control mechanisms that protect the content of the notifications. A need therefore exists for improved methods and apparatus that make such publish-subscribe systems suitable for use by enterprise applications. A further need exists for publish-subscribe methods and systems that provide improved security. Yet another need exists for publish-subscribe methods and systems that provide improved efficiency for enterprise users.
SUMMARY OF THE INVENTION
Generally, methods and apparatus are provided for notifying one or more users of information, where the information has a plurality of attributes. A plurality of subscribable objects are provided to one or more of the users, where each of the subscribable objects comprises one or more of the plurality of attributes as required attributes and zero or more of the attributes as optional attributes. Subscription requests are received from one or more of the users based on at least one of the subscribable objects. The plurality of subscribable objects are based, for example, on a set of predefined templates. The predefined templates identify each of the plurality of attributes as a required attribute or an optional attribute. In this manner, the predefined templates allow users to view the information based an associated user role.
According to another aspect of the invention, each of the attributes is presented to a user using a display format selected based on a cardinality of the corresponding attribute. For example, the display format for a given attribute may comprise one or more of a user entry, a scrollable list and a check box.
A more complete understanding of the present invention, as well as further features and advantages of the present invention, will be obtained by reference to the following detailed description and drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a network environment in which the present invention can operate;
FIG. 2 illustrates an exemplary notification and response system ofFIG. 1 in further detail;
FIG. 3 is a schematic block diagram illustrating an exemplary implementation of the subscription server ofFIG. 1 in further detail;
FIG. 4 illustrates the processing of notification and responses by the notification and response system in further detail;
FIG. 5 illustrates the types of privileges enforced by the subscription server ofFIG. 3;
FIG. 6 is a sample table illustrating an exemplary user database;
FIG. 7 is a sample table illustrating an exemplary user roles database that shows role membership of the users and roles;
FIG. 8 is a sample table illustrating an exemplary privileges database that lists a number of the exemplary privileges supported by the subscription server;
FIG. 9 is a sample table illustrating an exemplary user privileges database that shows the privileges for users and roles;
FIG. 10 is a sample table illustrating an exemplary user-user privileges database that shows the privileges of users and roles that apply to another user or an application;
FIG. 11 is a sample table illustrating an exemplary attributes database that lists the attributes of the hospital application;
FIG. 12 is a sample table illustrating an exemplary attribute values database that lists some possible values for the attributes ofFIG. 11;
FIG. 12 is a sample table illustrating an exemplary subscribable objects database for an exemplary hospital application;
FIG. 14 is a sample table illustrating an exemplary user-object privileges database that shows the privileges of users and roles that apply to subscribable objects;
FIG. 15 is a sample table illustrating an exemplary attribute template database incorporating features of the present invention;
FIG. 16 is a sample table illustrating an exemplary subscription table;
FIG. 17 is a flow chart describing an exemplary implementation of a request creation process, implemented by one or more applications to create notification requests;
FIG. 18 is a flow chart describing an exemplary implementation of a subscription processing routine, implemented by the subscription server ofFIG. 3;
FIG. 19 is a flow chart describing an exemplary implementation of a matching process that identifies those subscriptions with subscribable objects;
FIG. 20 is a flow chart describing an exemplary implementation of a matching process that employs a first approach to identify those subscriptions with no subscribable objects;
FIG. 21 is a flow chart describing an exemplary implementation of a matching process that employs a second approach to identify those subscriptions with no subscribable objects;
FIG. 22 is a flow chart describing an exemplary implementation of a communication flow generation process implemented by the subscription server ofFIG. 3;
FIG. 23 illustrates an exemplary user interface that allows a user to review one or more pending requests;
FIG. 24 illustrates an exemplary user interface that allows a user to enter, update or otherwise access subscriptions;
FIG. 25 illustrates an exemplary user interface that allows users to view, update or delete their notification profiles;
FIG. 26 illustrates an exemplary user interface that allows users to enter a new notification profile;
FIG. 27 illustrates an exemplary user interface that allows a user to subscribe to notifications; and
FIG. 28 illustrates an exemplary user interface that presents a list of subscriptions to the corresponding user.
DETAILED DESCRIPTION
FIG. 1 illustrates a network environment100 in which the present invention can operate. As shown inFIG. 1, one or more applications110-1 through110-N (hereinafter, collectively referred to as applications110) provide notification requests to asubscription server300, discussed below in conjunction withFIG. 3. As discussed hereinafter, the notification requests contain information that theapplications110 believe may be of interest to one or more users. According to one aspect of the invention, the subscribers have registered their interests with thesubscription server300 in the form of subscriptions recorded in asubscription database150. In one exemplary implementation, the users provide their subscriptions to thesubscription server300 using aself subscription portal170. Theself subscription portal170 enables users to create, modify, and delete subscriptions. Given the notification requests from theapplications110 and the subscriptions recorded in thesubscription database150, thesubscription server300 can perform a matching process to identify those users that should be notified of given information.
According to another aspect of the invention, thesubscription server300 employs subscribable objects that are specific things of potential interest to users. For example, using subscribable objects,applications110 can specify information of interest based on, e.g., customers or customer locations. A user can subscribe to a subscribable object. For example, a user can subscribe to the subscribable object for a customer to be notified about service requests from that customer.
In addition, subscribable objects can have access controls applied to them, so, for example, the set of users who can subscribe to a specific customer can be restricted. Privileges specify what a user or role can do. Privileges can apply with respect to a specific person or object, or they can apply more generally. For example, an application may have the privilege to notify a specific user, or it may be able to notify any user. Privileges can include the ability of a person or role to subscribe to a subscribable object or to an application.
In this manner, the portal170 can perform an initial access control when a user attempts to register a subscription to ensure that the user has the appropriate privileges required for the subscription. In addition, according to another aspect of the invention, the portal170 ensures that a user only sees objects during the registration process that the user is authorized to view. In addition, thesubscription server300 can perform a secondary check at run time to ensure that the users associated with matching subscriptions are authorized to receive the notifications.
According to yet another aspect of the invention, thesubscription server300 identifies the users having subscriptions that match the notification requests and provides a list of the matching users to a third party application, such as a notification andresponse system200, discussed below in conjunction withFIG. 2, that will actually notify the users. In one exemplary implementation, thesubscription server300 generates a communication flow (“commflow”) expression for the request that specifies who to contact (i.e., those users having subscriptions that match the request), under what conditions to contact (“only if Ann said yes”) and when to contact (“between 9 a.m. and 5 p.m. weekdays”). Recipients specify rules for refining communication flow expressions with details of how, i.e., which devices to use, and when to contact them. Recipients may also automatically delegate some requests to other recipients. The communication flow expression is provided to the notification andresponse system200 with the notification request that includes the content for the notification.
Subscriptions provide a mechanism for specifying in advance the application-specific events about which a user will be notified. Subscriptions enableapplications110 to create notification requests without having to generate a communication flow or explicitly identify the users to notify. Instead, thesubscription server300 uses subscription information to preprocess the request, identifying the users to notify and generating a communication flow. After this preprocessing, the notification andresponse system200 executes the communication flow. Furthermore, subscriptions provide an easy way for users to define the conditions under which they want to be notified (self subscription). Users can also define the conditions under which other users are to be notified (automatic subscription).
As discussed more fully below, a subscription may be created based on (i) subscribable objects that represent characteristics of a request to which a user can subscribe, e.g., a customer or customer location; (ii) zero or more attribute values that specify the values of request attributes that match a user's subscription; and (iii) optional rules that specify further conditions to be met for a request to match a user's subscription. A subscription could include any combination of mechanisms, e.g., a subscribable object and a rule. A rule could contain a condition, or it could refer to a general rule. A general rule contains a condition that can be reused in multiple subscriptions, and can be a subscribable object. Each subscription has an owner and a subscriber, and may also have a delegate. The owner is typically the creator of the subscription, while the subscriber is the primary user to be notified. The delegate is a second or alternate user to be notified, when specified. For a notification to match a subscription, it must match at least one subscribable object of the subscription. It also must match at least one value of each attribute specified on the subscription, and it must satisfy all of the subscription's rules.
Generally, theapplications110 provide notification requests to thesubscription server300 when they have information to publish (that may be of interest to one or more subscribers), in a manner described below in conjunction withFIG. 17. Thereafter, thesubscription server300 processes the notification requests and returns a status indication and request identifier to the associatedapplication110. Theapplication110 can use the request identifier, for example, to process, update, delete or evaluate the status of the request. In addition, if responses are received by theapplication110, the request identifier can be used to associate the received responses to the request.
FIG. 2 illustrates an exemplary notification andresponse system200. The exemplary notification andresponse system200 may be embodied, for example, as the Xui™ notification and response system, commercially available from Avaya, Inc. of Basking Ridge, N.J. and as described, for example, in U.S. patent application Ser. No. 10/184,236, filed Jun. 26, 2002, entitled “Method and Apparatus for Automatic Notification and Response;” and U.S. patent application Ser. No. 10/184,325, filed Jun. 26, 2002, entitled “Method and Apparatus for Automatic Notification and Response Based on Communication Flow Expressions,” each incorporated by reference herein.
Generally, as shown inFIG. 2, the notification andresponse system200 enables one or more applications110-1 through110-N to communicate with one or more recipients220-1 through220-N, hereinafter, collectively referred to asrecipients220, by a number of different media, such as electronic mail, telephone, web page, pager or facsimile. Generally, the notification and response system100 (i) sends requests to one ormore recipients220, using the medium specified by each individual recipient220 (and recorded for example, in a recipient preference and role database210); (ii) collects and processes responses; and (iii) forwards the responses to their final destination by means of the medium specified by the final destination. Roles provide a way of categorizing users and what they are allowed to do. The recipient preference androle database210 also allows roles that are specified in a communication flow to be resolved to individual recipient names at the time the requests are transmitted.
Theapplications110 create notification requests and submit them to the notification andresponse system200. The notification requests must contain a communication flow to execute. Once the notification andresponse system200 receives a notification request, the notification andresponse system200 executes the communication flow logic to notify therecipients220 and collect their responses. Generally, subscriptions specify criteria for deciding whether a user should be included in the communication flow for a request. A subscription belongs to a user and is specific to an application.
As discussed further below, the separation of the notification functionality provided by the notification andresponse system200 from the subscription processing functionality provided by thesubscription server300, according to another aspect of the invention, allows thesubscription server300 to handle issues like scalability, security and access controls, and availability.
FIG. 3 is a schematic block diagram illustrating an exemplary implementation of thesubscription server300 ofFIG. 1. As shown inFIG. 3, thesubscription server300 includes a computer system that interacts withmedia350. Thesubscription server300 comprises aprocessor320, anetwork interface325, amemory330, anoptional media interface335 and anoptional display340.Network interface325 allows thesubscription server300 to connect to a network, whilemedia interface335 allows thesubscription server300 to interact withmedia350, such as a Digital Versatile Disk (DVD) or a hard drive.Optional video display340 is any type of video display suitable for interacting with a human user of thesubscription server300. Generally,video display340 is a computer monitor or other similar video display.
As discussed further below in conjunction withFIGS. 18 through 22, thememory330 comprises asubscription processing routine1800, matchingprocesses1900,2000,2100 and a communicationflow generation process2200. Generally, thesubscription processing routine1800 processes notification requests received fromapplications110 and determines if they match any subscriptions, using one ormore matching processes1900,2000,2100. In addition, the communicationflow generation process2200 processes the matching subscriptions to generate communication flows that can be provided to a third party for delivery of the subscriptions. The communicationflow generation process2200 also ensures that the recipient of a notification has proper privileges.
In one exemplary implementation, thesubscription server300 provides an API that enablesapplications110 to create notification requests that notify users according to their subscriptions. As discussed further below in conjunction withFIG. 17, to create a notification request, an application (subject to access controls) (i) creates a notification request; (ii) identifies subscribable objects, if any, associated with the requests, e.g., a customer, and (iii) identifies attributes of the notification.
Once a notification request has been created by anapplication110 for subscription processing, thesubscription server300 processes the notification to identify users and generate a communication flow. Generally, as discussed further below in conjunction withFIGS. 18-21, the subscription server300 (i) identifies those subscriptions that are associated with theapplication110 and that also match at least one subscribable object of the request or else have no subscribable objects (i.e., if a subscription has any subscribable objects, at least one of them must match a subscribable object of the request; in addition, the owner of the subscription must have privileges to subscribe to at least one matching subscribable object); (ii) of the subscriptions that match based on subscribable objects or have no subscribable objects, the subscription server matches the attributes of the request to the attributes of the subscriptions (one value of each attribute of a subscription must match the value of the same attribute on the request); and (iii) evaluates the rules of the subscriptions, if any, based on the attributes of the request. All of the rules of a subscription must evaluate to true for a match. The subscriptions that match a request based on subscribable objects (or have no subscribable objects), and which also match based on attributes and rules, match the request and are selected for notification.
Once the subscriptions that match a request have been identified, thesubscription server300 employs a communication flow generation process2200 (FIG. 22) to identify the subscriber and optionally the delegate for the subscription, and includes those users in the communication flow for that request (subject to the privileges of the subscription owner). Specifically, the owner of the subscription must have the privilege to subscribe to a matching subscribable object, and also to notify the subscriber and delegate (if any). Subscriptions that do not have sufficient privileges are not added to the communication flow. Instead, appropriate errors are logged. For example, the subscriber is often the subscription owner, in which case the subscriber can be notified in the communication flow. If, however, the subscriber or delegate is not the owner, then the owner must have sufficient privileges to notify those users, or else an error occurs. The privileges of the subscription are also checked by the self subscription portal when the subscription is created or modified.
It should be noted that for each attribute (e.g., ZIP Code), the notification request can have at most one value (e.g., 07920). However, for a single attribute, a subscription may have any number of values. Both notification requests and subscriptions can have any number of subscribable objects.
For a high volume of requests and a large number of subscriptions, computational efficiency will become an issue in matching notification requests to subscriptions. There are several ways that the matching could be done in practice:
1. First of all, the subscription server could maintain a conventional tree type index on the subscribable object associations of the subscriptions. The subscription server could use this index to match the request to those subscriptions with the same subscribable objects as the request. The subscription server could then further filter the subscriptions based on their attribute values and rules.
2. It may be that some subscriptions have no associated subscribable objects. In this case, the request need only match the attribute values and rules of the subscription, and the approach above will not work. Instead the subscription server could maintain a bitmap index on the attribute values of the subscriptions. The subscription server could use this index to match the request to those subscriptions with the same attribute values as the request. The subscription server could then further filter the subscriptions based on rules.
FIG. 4 illustrates the processing of notification and responses by the notification andresponse system200 in further detail. As shown inFIG. 4, the exemplary notification andresponse system200 can send notifications to users using one ormore media types410, such as via telephone or email in an exemplary implementation, in accordance with user preferences recorded in anotification preferences database405.
Subscription Security
Privileges
Privileges identify what a user can do in thesubscription server300. These privileges are subscription server specific, and are distinct from database or operating system privileges. As shown inFIG. 5 and discussed further below, thesubscription server300 will provide for several types of privileges, including (i) unary privileges, which apply to a user or role; (ii) user privileges, which describe what a user or role can do vis-à-vis another user or application; and (iii) subscribable object privileges, which enable a user or role to subscribe to an object.
Roles
A role is treated as a type of user in thesubscription server300, but is not a person or application. A role can have privileges. Users can have roles, and thereby inherit privileges from those roles. A role can also have other roles, and thereby inherit privileges from those roles. A role cannot initiate a session with thesubscription server300, and thesubscription server300 cannot perform an activity on behalf of a role. A user or role can be granted a user privilege vis-à-vis a role. A role can be specified as the recipient in a subscription or escalation.
Objects
Thesubscription server300 will provide implicit or explicit access controls on the following subscription server objects: attributes; attribute values; requests; request attributes; rules; general rules; subscribable objects; and subscriptions. In other words, when performing an action involving these entities on the behalf of a user or application, thesubscription server300 will apply access controls on those objects.
Object Ownership
Thesubscription server300 will determine object ownership based on the following principles. The owner of a request and its attributes is the requestor (application). The owner of subscriptions, subscribable objects, attributes, and general rules is the creator (which could be an application). The owner of an attribute value is the attribute owner.
Access Controls
Access controls identify what a user can do to an object. Access controls apply to subscribable objects, requests, and other objects. Explicit access controls comprise a ternary relationship between user accounts, objects, and privileges. Access controls can also be implicit through object ownership. Generally, the object owner has all applicable privileges on the object and the object owner can grant and revoke privileges on the object.
A community of interested parties could benefit tremendously from a process that enabled them to be notified only of the events of interest to them. Typically, a publish-subscribe model is used. However, the publish-subscribe paradigm is in direct conflict with another overriding need of many enterprises to preserve the confidentiality of the information being published.
For example, consider a hospital system that needs to notify health care workers about patient events. There are many such possible events, and they could be of interest to many different people. For example, a cardiologist might want to subscribe to events for patients under their care, or public health officials might want to subscribe to cases of a specific disease. And yet, the confidentiality of the information in the notifications is paramount. In addition, it is important to preserve the confidentiality of the patient's existence in the system. For example, the cardiologist might subscribe to the collection of all of her patients as a single entity, or she might subscribe only to specific patients. In the former case, the subscribable object is the collection of the cardiologists patients. In the latter case, the subscribable objects are the individual patients. In the latter case, only people with a need to know would be allowed to see that a patient was available for inclusion in subscriptions. For example, a patient's primary care physician might be able to see and subscribe to the patient, but would not be able to see or subscribe to other patients of the cardiologist, or see or subscribe to the cardiologist's patient collection object.
As discussed further below, confidentiality is preserved through a specific privilege to subscribe that can be applied to subscribable objects. The privilege to subscribe is different from the privilege to create, modify, or delete subscriptions.
In addition to choosing subscribable objects for subscriptions, the creator (owner) of a subscription has the ability to cause other users to be notified about events. Specifically, the owner of a subscription may make another user the subscriber (this is known as automatic subscription), or the owner may delegate a subscription to another user. For example, a supervisor might create subscriptions for his direct reports, or the cardiologist above might delegate her subscription to another physician while she is away on vacation. These capabilities are different from standard publish-subscribe models, since those models only allow users to create subscriptions for themselves.
Since the present invention allows others to be notified, the subscription services of the present invention provide access controls on the ability to notify other users. For example, without this capability, a disgruntled employee, who is about to be fired, could create a subscription for the CEO that causes thousands of notifications per hour to be sent. Instead, a supervisor might have the capability of notifying his direct reports, and the cardiologist might have the capability to notify all of the physicians affiliated with the hospital.
WORKING EXAMPLE
The following example illustrates the workings of thesubscription server300 using a hospital notification system as an example.FIG. 6 is a sample table illustrating an exemplary user database600. As shown inFIG. 6, the User Database600 lists the users associated with the exemplary subscription services provided by the present invention for thesubscription server300 and portal170 that host the hospital application. Users identify themselves through their logins, and some of the users (e.g., ham, joann, and yangqian) are actual human users. The user hosp_app is a user that represents the hospital application. Through this user account, the hospital application creates its subscribable objects, attributes, and attribute values, and also generates notification requests. The last four users in the User Database600 (xui_user, xui_admin, hosp_user, hosp_admin) are actually roles. These roles may be assigned to human users, applications or other roles. All users, applications, and roles in the exemplary implementation are configurable; none are hard coded or assumed to exist by the system.
FIG. 7 is a sample table illustrating an exemplaryuser roles database700 that shows role membership of the users and roles. In the exemplary table ofFIG. 7, users ham and joann have the xui_admin role, which is for general administration of the subscription services. User yangqian has the xui_user role, which is a basic role that contains privileges common to all regular users. The hosp_user role is a role for users of the hospital application, and it has the xui_user role. The hosp_admin role is a role for hospital application administrators, and it has the hosp_user role.
FIG. 8 is a sample table illustrating an exemplary privileges database800 that lists a number of the exemplary privileges supported by thesubscription server300. Some of those privileges shown inFIG. 8 are granted on a specific user or subscribable object. Specifically, the privileges “Create Subscription To Application” and “Subscribe To Objects Owned By” apply to a specific application, while the privilege “Notify” applies to a specific user.
Typically, regular users would get most or all of their privileges through roles, which greatly simplifies administration of privileges. A user or role may have more than one role.FIG. 9 is a sample table illustrating an exemplary user privileges database900 that shows the privileges for the users and roles in the current example. The xui_admin role has very broad privileges (Create Any, Read Any, Update Any, Delete Any, Subscribe Any, Notify Any, Grant Any) that give administrators the power to modify the system as they wish. For example, an administrator may create user accounts, or delete or modify subscribable objects that belong to an application. Applications typically have more specific privileges. The hosp_app application has all create privileges except Create User, plus Notify Any. The hosp_app application does not require granted privileges to read, update, or delete objects it has created, since creation confers ownership and implicit privileges to read, update, or delete. The hosp_app application probably does not need the Notify Any privilege either, since it does not notify users directly. Instead, the owner of a subscription notifies the subscriber or delegate through the processing of a request by the subscription server. It is the owner of a matching subscription that needs privileges to notify.
FIG. 10 is a sample table illustrating an exemplary user-user privileges database1000 that shows the privileges of users and roles that apply to another user or an application. For example, the hosp_user role has the Create Subscriptions To Application privilege with respect to the hosp_app application. This means that user ntandon (Dr. Tandon), who has the hosp_user role, may use the portal to create subscriptions for the hospital application. (“Hospital Application” will appear in the portal on the list of applications to which she can subscribe.) Also, the hosp_admin role has the privilege Subscribe To Objects Owned By with respect to the hosp_app application. This means that the user ptendick, who has the hosp_admin role, may subscribe to any subscribable object owned by the hospital application. Finally, the user ntandon (Dr. Tandon) has the Notify privilege with respect to the user weiss (Dr. Weiss), so Dr. Tandon may delegate her subscriptions to Dr. Weiss, or even create a subscription for which Dr. Weiss is the subscriber.
FIG. 11 is a sample table illustrating anexemplary attributes database1100 that lists the attributes of the hospital application. Specifically, a notification request has an Event Type, a Status, and a Ward, among other attributes.FIG. 12 is a sample table illustrating anattribute values database1200 that lists some possible values for the attributes ofFIG. 11. For example, the attribute Status has values Good, Fair, Serious, and Critical.
The hospital application also has subscribable objects listed in thesubscribable objects database1300 ofFIG. 13. Each subscribable object shown inFIG. 13 has a type, which could be Patient or Patient List. The Patient type includes individual patients, while the Patient List type includes patient lists for doctors and patient lists for clinical trials. For example, there are two Patient List objects, called Dr. Tandon's Patients and Dr. Weiss' Patients.
FIG. 14 is a sample table illustrating an exemplary user-object privileges database1400 that shows the privileges of users and roles that apply to subscribable objects. Dr. Tandon's patients are P. Tendick, J. Ordille, and H. Slye, so she can subscribe to the subscribable objects for those patients, and also to the patient list “Dr. Tandon's Patients.” (The subscribable objects for those patients are distinct entities from the user accounts for those same individuals. For this application, a patient need not be a user. It just happens that the patients in this example are also users.) Dr. Weiss is the primary care physician for J. Ordille, H. Slye, and Q. Yang, but not for P. Tendick, so he can subscribe to patients J. Ordille, H. Slye, and Q. Yang, and also to his own patient list. The reason for having subscribable objects for both patients and patient lists is to make the subscriptions simpler and easier to maintain. For example, Dr. Weiss need not change his Patient List subscriptions as his patient list changes.
Dr. Tandon, a cardiologist, enters the portal170 to create a subscription, and sees that she can subscribe to the hospital application (hosp_app). This is because she has the hosp_user role, which has the privilege Subscribe to Application with respect to the hosp_app application. If she had the Subscribe Any privilege (either directly or through a role), she would see the entire list of applications. Dr. Tandon selects the hospital application, and finds she may subscribe by patient or by patient list. She decides to subscribe by patient list. Because there is a moderate number of Patient List subscribable objects (cardinality medium), the portal170 retrieves the list of all Patient List type subscribable objects owned by hosp_app, then checks to see if ntandon has the Subscribe Any privilege. Since she does not, the portal170 then filters the list on the set of subscribable objects to which user ntandon has the Subscribe To privilege. The portal170 then displays the list, which contains only the item Dr. Tandon's Patients, on the subscription form. Dr. Tandon creates a subscription to Dr. Tandon's Patients, but only for Admitted and Discharged events types. Then, she decides that she also needs to subscribe by patient. She enters the form to subscribe by patient, and on the list of patients to which she can subscribe, she sees J. Ordille, H. Slye, and P. Tendick, but not Q. Yang. She creates a subscription to P. Tendick for an event type of Status Changed. Dr. Tandon (user ntandon) is both the owner and the subscriber for this subscription. There is no delegate at this point.
If there were a large number of Patient List subscribable objects (cardinality large), the portal170 would provide the capability for the user to enter a partial string value, and the portal170 would return a list of matching subscribable objects, e.g., containing the string ‘Tendick’. If ntandon had the Subscribe Any privilege, the portal170 would display the entire list of matching subscribable objects. Otherwise, before displaying the list, the portal170 would then filter the list on the set of subscribable objects to which user ntandon had the Subscribe To privilege. Once the list of matching subscribable objects were displayed, the user could select zero or more to include in the subscription. The user also could enter the subscribable object names directly on the form. Through repeated use of these mechanisms, the user could enter multiple subscribable objects on the form. In any event, on submission of the subscription by the user, the portal170 would check whether the subscribable existed, and also whether the user had appropriate privileges to subscribe to the subscribable objects by the mechanisms described above. If a subscribable object on the subscription did not exist, or if the user did not have sufficient privileges to subscribe to an object on the subscription, the portal170 would display an error and not allow the submission of the subscription.
Dr. Weiss enters the portal to create a subscription, and also finds that he may subscribe by patient or by patient list. He decides to subscribe by patient list, and sees only Dr. Weiss' Patients. He creates a subscription to Dr. Weiss' Patients, but only for Admitted events. If Dr. Weiss tried to subscribe by patient, he would see J. Ordille, H. Slye, and Q. Yang, but not P. Tendick. He could subscribe to one or more patients in a single subscription.
If patient P. Tendick's status were upgraded from serious to fair, the hospital application would create a notification request with the subscribable objects P. Tendick and Dr. Tandon's Patients, with an event type attribute value of Status Changed and a status attribute value of Fair. Dr. Tandon's subscription to “Status Changed” events for P. Tendick would match the new request, but before adding Dr. Tandon (user ntandon) to the communication flow for the request, the subscription server would check to make certain user ntandon had sufficient privileges to subscribe to the P. Tendick object. The subscription server also would check to make sure the owner of the subscription (ntandon) had sufficient privileges to notify the subscriber (also ntandon). In this case, the owner may notify the subscriber, since a user may always notify her self.
Now Dr. Tandon enters the portal170 again, but this time she modifies the subscription to P. Tendick status changes so it is delegated to Dr. Weiss. She does this because she is going on vacation and wants to make sure someone is notified of changes in P. Tendick's status. She specifies the “and” communication flow operator, so both she and Dr. Weiss will be notified. Before allowing Dr. Tandon to submit the delegation, however, thesubscription portal170 checks to make sure Dr. Tandon has sufficient privileges to notify Dr. Weiss. Since user ntandon has the Notify privilege with respect to user weiss, the portal allows Dr. Tandon to submit the delegation.
If patient P. Tendick's status were upgraded from fair to good, the hospital application would create a notification request with the subscribable objects P. Tendick and Dr. Tandon's Patients, with an event type attribute value of “Status Changed” and a status attribute value of Good. Dr. Tandon's subscription to status change events for P. Tendick would again match the new request, but before adding Dr. Tandon and Dr. Weiss to the commflow for the request, the subscription server would check to make certain that user ntandon had sufficient privileges to subscribe to the P. Tendick object. Note that the subscription server only does this for the owner of the subscription, not the subscriber or delegate. The fact that Dr. Weiss does not have sufficient privileges to subscribe to patient P. Tendick is not relevant. The subscription server also checks to make sure the owner of the subscription (ntandon) has sufficient privileges to notify the subscriber and the delegate. As before, Dr. Tandon may notify herself, and she also may notify Dr. Weiss because she has a specific privilege to do so.
The reason for checking privileges when a request is processed by the subscription server is twofold: First of all, thesubscription portal170 is a separate process from thesubscription server300 and should not be trusted by it. In other words, thesubscription server300 must assume that thesubscription portal170 could allow the creation of a subscription with insufficient privileges. Second, privileges might change over time. For example, if patient P. Tendick left Dr. Tandon's care, Dr. Tandon might lose privileges to subscribe to P. Tendick's events, while Dr. Tandon's subscription might continue to exist. Similarly, Dr. Weiss might move to another practice, somehow causing Dr. Tandon to lose her privilege to notify him.
Subscription Portal170
After a user logs in to thesubscription portal170, the portal170 presents a list of applications that the user has access to. The list of applications is obtained from thesubscription server300 and is based on the privilege rules defined in the subscription server300 (and previously provided by the application). The privilege rule states that a particular user can subscribe to messages from thisapplication110.
In addition to the privilege rules, an application must provide a set of attributes as a classification attribute set, that is, a complete list of attributes that can be used to classify information, and users can use these attributes to register their subscriptions. The attributes in the classification set may or may not be part of the data that will be presented to the users. According to one aspect of the invention, an application can specify some of the attributes or attribute sets to be required, in order to limit the amount of data transferred from the application database to thesubscription server300. In other words, when subscribers input rules for their subscriptions, the presence of one of the required attributes or attribute sets is mandatory. For each of those required attributes or attributes sets, a list of optional attributes can be provided, as discussed below in conjunction withFIG. 15.
Another aspect of the invention recognizes that different users or sets of users may have a different view of the data. Thus, different users or sets of users (such as all users having a given role) can select a different required attribute when registering their subscriptions. Thus, the present invention provides a number of different templates that each specify a different required attribute (or set of required attributes) and zero or more corresponding optional attributes. In this manner, different users or sets of users can select a different attribute for their required attribute. For example, in an enterprise setting one group of users, such as users in a customer service organization, may be interested in registering their subscriptions by Company Name, while another group of users, such as users in a on-site technical support organization, may be interested in registering their subscriptions by Company Location.
FIG. 15 is a sample table illustrating an exemplaryattribute template database1500 incorporating features of the present invention. As shown inFIG. 15, each row in theattribute template database1500 corresponds to a different template that defines how users can register their subscriptions, where “FL#” indicates a field location number that identifies a customer location and “LHN#” indicates a legal hierarchy node that identifies an organization entity of a customer (such as a holding company, subsidiary or division). Each column in theattribute template database1500 corresponds to a different exemplary attribute that an application has defined for classification. Each template in theattribute template database1500 identifies a different attribute that can be employed as a required attribute (R). For each template, theattribute template database1500 identifies the corresponding attributes that can be used as optional attributes (O) for the template.
For example,row1510 indicates that the company name is a required attribute. When this required attribute is supplied, values for the optional attributes, severity, status, SEid, source, city, Province/state, Pn/Zip, country, product and region can also be supplied. Another example,row1520 indicates that the combination of city and province/state is required in this case.
For the classification attributes, a list of valid values can be provided by the application. For example, severity codes can be from 1 to 4. But for some attributes, users need to input possible values when they subscribe. Applications must provide some mechanism to validate these values.
Again, after a user logs in to thesubscription portal170, the portal170 presents a list of applications that the user has access to. Next to the application name is a list of the required attributes, which are links to different tables that are generated dynamically according to the data in attribute_map table in thesubscription server300, such as the subscription table1600 shown inFIG. 16. Generally, the first row in the exemplary table1600 identifies the required attribute. All the optional attributes, related to that required attribute, are listed underneath it. So the users can specify what type of notifications they want to receive, such as a required Company attribute with value Company A, and further specify details about the additional requirements that the notification has to meet, such as only high severity cases, or only cases in the United States.
In one exemplary implementation, when a user first logs in, thesubscription portal170 automatically creates a user account for the user in thesubscription server300. Also, a default role can optionally be assigned to this user to satisfy the basic needs of the user with reduced administration efforts. For example, if the default role can satisfy 70% of the users, then 70% of the administration efforts on assigning special roles can be saved.
Required attributes can be either subscribable objects or normal attributes. The benefits for defining subscribable objects is that a privilege rule can be associated with a subscribable object and that it will optimize the filtering process in the subscription server. However, for users, it is totally transparent for those two types of required attributes.
The format of every attribute in the subscription form available to the user, that is either a checkbox, list or search box, is defined by the cardinality table. By specifying the size of the attribute value group in the cardinality table, time is saved, and the trouble of counting the number of entries in the attribute table is avoided. The optimization is critical for some larger applications, and increases the scalability of thesubscription server300 and portal170 and makes the portal170 more user-friendly. Aninterface2700 that presents the attributes based on the cardinality table is discussed further below in conjunction withFIG. 27.
Processes
In the following discussion, it is assumed that a subscription has an owner, a subscriber, and possibly a delegate. The owner and the subscriber are typically the same. If they aren't the same, this is called automatic subscription. For a subscription to be added to the communication flow for a request, the owner must have privileges to notify the subscriber and the delegate (if any). Someone may always notify themselves, so if the subscriber is the owner, then the owner has sufficient privileges to notify the subscriber. If the subscriber is not the owner, the owner may also have the blanket privilege to notify anyone, or the privilege to notify the specific subscriber or delegate. For subscription with a delegate, the delegate is notified in addition to or instead of the subscriber.
FIG. 17 is a flow chart describing an exemplary implementation of arequest creation process1700, implemented by one ormore applications110 to create notification requests. As shown inFIG. 17, therequest creation process1700 initially establishes a database connection duringstep1710 to log the necessary notification requests. Thereafter, a test is performed duringstep1715 to determine if there are additional requests to be processed. If it is determined duringstep1715 that there are additional requests to be processed, then a notification request is created duringstep1720.
A further test is performed duringstep1725 to determine if there are additional subscribable objects to be processed. If it is determined duringstep1725 that there are additional objects to be processed, then one or more subscribable object records are created duringstep1730, until all the objects have been processed. Once it is determined duringstep1725 that there are no additional objects to be processed, then program control proceeds to step1735.
A further test is performed duringstep1735 to determine if there are additional attributes within the request to be processed. If it is determined duringstep1735 that there are additional attributes to be processed, then the values for the attributes are set duringstep1740, until all the attributes have been processed. Once it is determined duringstep1735 that there are no additional attributes to be processed, then program control proceeds to step1745.
A further test is performed duringstep1745 to determine if there are additional media, such as text and voice, to be processed. If it is determined duringstep1745 that there are additional media to be processed, then the notification content for the media is added duringstep1750, until all the media types have been processed. Once it is determined duringstep1745 that there are no additional media types to be processed, then the database transaction is committed duringstep1760 and program control returns to step1715.
Once it is determined duringstep1715 that there are no additional requests to be processed, then program control proceeds to step1780 where the database connection is closed.
FIG. 18 is a flow chart describing an exemplary implementation of asubscription processing routine1800, implemented by thesubscription server300 ofFIG. 3. As shown inFIG. 18, thesubscription processing routine1800 initially creates a database connection duringstep1810 and retrieves the newly created request records duringstep1820.
A test is performed duringstep1825 to determine if there are additional requests to be processed. If it is determined duringstep1825 that there are additional requests to be processed, then the next request record is retrieved duringstep1830.
As discussed further below in conjunction withFIG. 19, amatching process1900 is executed duringstep1840 to identify those subscriptions with subscribable objects. As discussed further below in conjunction withFIG. 20, amatching process2000 is executed duringstep1850 to identify those subscriptions with no subscribable objects.
A test is performed duringstep1855 to determine if there are additional subscriptions to be processed. If it is determined duringstep1855 that there are additional subscriptions to be processed, then the subscriber or delegate is added to the communication flow being generated duringstep1860, until all subscriptions have been processed. Once it is determined duringstep1855 that all subscriptions have been processed, program flow proceeds to step1865.
A further test is performed duringstep1865 to determine if there are additional media, such as text and voice, to be processed. If it is determined duringstep1865 that there are additional media to be processed, then the notification content for the media is added duringstep1870, until all the media types have been processed. Once it is determined duringstep1865 that there are no additional media types to be processed, then a request document is generated duringstep1875. The request is then submitted to the notification andresponse system200 duringstep1880 and the transaction is committed duringstep1885. Once it is determined duringstep1825 that there are no additional requests to be processed, then the database connection is closed duringstep1890.
FIG. 19 is a flow chart describing an exemplary implementation of amatching process1900 that identifies those subscriptions with subscribable objects. As indicated above, thematching process1900 is invoked by thesubscription processing routine1800 duringstep1840. As shown inFIG. 19, thematching process1900 initially receives a request identifier duringstep1910 as input from the callingsubscription processing routine1800. The identifier is used duringstep1920 to retrieve the subscribable objects associated with the request.
A test is performed duringstep1925 to determine if there are additional subscribable objects to process. If it is determined duringstep1925 that there are additional subscribable objects to process, then the next subscribable object is obtained duringstep1930. The subscriptions that have at least one matching object are then retrieved duringstep1940.
A further test is performed duringstep1945 to determine if there are additional subscriptions to process. If it is determined duringstep1945 that there are additional subscriptions to process, then the next subscription is obtained duringstep1950. A test is performed duringstep1955 to determine if any attributes of the subscription matches. It is noted that the attribute value for a request must match one specified attribute for a subscription, if the value is specified in the subscription. The subscription is added duringstep1960 to the matching set and program control returns to step1945.
Once it is determined duringstep1945 that there are no additional subscriptions to process, then program control returns to step1925. Once it is determined duringstep1925 that there are no additional subscribable objects to process, then the matching subscriptions are output duringstep1970.
FIG. 20 is a flow chart describing an exemplary implementation of amatching process2000 that employs a first approach to identify those subscriptions with no subscribable objects. As indicated above, thematching process2000 is invoked by thesubscription processing routine1800 duringstep1850. As shown inFIG. 20, thematching process2000 initially receives a request identifier duringstep2010 as input from the callingsubscription processing routine1800. All subscriptions are retrieved duringstep2015.
A test is performed duringstep2020 to determine if there are additional subscriptions to process. If it is determined duringstep2020 that there are additional subscriptions to process, then the next subscriptions is obtained duringstep2030. A test is performed duringstep2035 to determine if any attributes of the subscription matches. It is noted that the attribute value for a request must match one specified attribute for a subscription, if the value is specified in the subscription. The subscription is added duringstep2040 to the matching set and program control returns to step2020.
Once it is determined duringstep2020 that there are no additional subscriptions to process, then the matching subscriptions are output duringstep2045.
FIG. 21 is a flow chart describing an exemplary implementation of amatching process2100 that employs a second approach to identify those subscriptions with no subscribable objects. As indicated above, thematching process2100 is optionally invoked by thesubscription processing routine1800 duringstep1850. As shown inFIG. 21, thematching process2100 initially receives a request identifier duringstep2110 as input from the callingsubscription processing routine1800.
A search for candidate subscriptions is performed duringstep2120, based on relevance (where relevance is, for example, the number of attribute value matches). The number of attributes specified for the candidates is calculated duringstep2130, a filter is applied to the subscriptions duringstep2140 with the number of attributes equal to the relevance measure. The matching subscriptions are output duringstep2150.
In the following discussion, it is assumed that the communication flow for a request (as generated by the communication flow generation process2200) consists of zero or more subexpressions conjoined by the operator AND. Each subexpression corresponds to a matching subscription, and contains one or two recipients (the subscriber and/or the delegate). The notification andresponse system200 evaluates the communication flow by attempting to satisfy each subexpression. There are three possible delegation options:
    • NOT—Notify the delegate instead of the subscriber
    • AND—Notify the delegate and the subscriber
    • RACES—Attempt to notify both the delegate and the subscriber until one of them responds
For example, the communication flow for a request having four matching subscriptions may be expressed as:
    • (kevin) AND (dave) AND (ham RACES joann) AND (pat AND qian)
      where kevin is a subscriber without a delegate, dave is delegate with NOT (notify the delegate instead of the subscriber); the third expression is an example of a delegation with RACES; and the fourth expression is an example of a delegation with AND.
FIG. 22 is a flow chart describing an exemplary implementation of a communicationflow generation process2200 implemented by thesubscription server300 ofFIG. 3. As shown inFIG. 22, the communicationflow generation process2200 initially receives a set of matching subscriptions as input during step2105. A test is performed duringstep2110 to determine if there are additional subscriptions to be processed. The system processes the subscriptions in the list sequentially, adding a communication flow subexpression for each subscription, until there are no more subscriptions to process. Each communication flow subexpression is typically enclosed in parentheses. If it is determined duringstep2210 that there are additional subscriptions to be processed, then the next subscription is obtained duringstep2215.
A further test is performed duringstep2220 to determine if the user associated with the subscription has the appropriate privileges. Generally, the owner of subscription must have privileges to subscribe to an object on the request and to notify the subscriber and delegate. If it is determined duringstep2220 that user associated with the subscription does not have the appropriate privileges, then an error is logged duringstep2222. Each type of error (no object privilege, no notify privilege) can be logged separately for each subscription.
If it is determined duringstep2220 that user associated with the subscription has the appropriate privileges, then a further test is performed duringstep2225 to determine if the current subscription is the first subscription being added to the communication flow. The exemplary system conjoins the communication flow subexpressions for the subscription using the AND operator, so the AND operator must be appended to the commflow before adding subsequent terms.
If it is determined duringstep2225 that the current subscription is the first subscription being added to the communication flow, then a new communication flow subexpression is started duringstep2230. Each subexpression can have a term for the subscriber or a term for the delegate, or both. At this step, only the opening (left) parenthesis is provided. If, however, it is determined duringstep2225 that the current subscription is not the first subscription being added to the communication flow, then the AND operator is appended to the communication flow duringstep2228.
A further test is performed duringstep2235 to determine if the user associated with the subscription has a delegate. This decision indicates whether to add the delegate term to the subexpression for the subscription. If it is determined duringstep2235 that the user associated with the subscription has a delegate, then the delegate is added to the subexpression duringstep2240. Another test is performed duringstep2245 to determine if the delegation is expressed using the NOT option (notify the delegate instead of the subscriber). This decision thus indicates whether to substitute the delegate for the subscriber (skip adding a term for the subscriber), or include both. If it is determined duringstep2245 that the delegation is expressed using the NOT option, then program control proceeds to step2270, below. If, however, it is determined duringstep2245 that the delegation is not expressed using the NOT option, then another test is performed duringstep2250 to determine if the delegation is expressed using the RACES option (attempt to notify both the delegate and the subscriber until one of them responds). This decision thus indicates whether to use the RACES operator (attempt to notify both the delegate and the subscriber until one of them responds) or the AND operator (attempt to notify each regardless of how the other responds).
If it is determined duringstep2250 that the delegation is expressed using the RACES option, then RACES is added to the subexpression duringstep2255. If, however, it is determined duringstep2250 that the delegation is not expressed using the RACES option, then AND is added to the subexpression duringstep2260 before proceeding to step2265. If it was determined duringstep2235 that the user associated with the subscription does not have a delegate, then the subscriber is added to the subexpression duringstep2265. At this point, the closing (right) parenthesis of the subexpression is added to the subexpression.
A further test is performed duringstep2270 to determine if the subscription contains one or more escalations. Escalations for subscriptions can be retrieved from another table. An escalation for a subscription causes the user associated with the escalation to be notified if neither the subscriber nor the delegate (if applicable) responds. Thesubscription server300 also optionally provides the ability to register to receive escalations. Escalations are different from subscriptions in that while subscriptions specify the features of a request that make it of interest, escalations describe ways of dealing with exceptional circumstances. In other words, escalations provide a way of handling things about which someone should be notified, but for some reason no one is. Escalations aren't subscriptions, but they can be something you can subscribe to. An escalation could be based on the failure of notification of the subscriber in a subscription (in which case the escalation relates to a specific person), or it could be based on the failure to notify anyone for a request.
If it is determined duringstep2270 that the subscription contains one or more escalations, then the escalation term is added to the subexpression duringstep2275. The escalation term contains one term for each escalation record, with the delay for the individual escalation represented by the AFTER operator. The individual escalation terms are conjoined by the AND or RACES operator within the overall escalation term, which is enclosed in parentheses. The overall escalation term for all subscription escalations is conjoined with the existing subexpression using the AND or RACES operator. The entire subexpression for the subscription, including the escalation term, is then enclosed in parentheses and appended to the commflow for the request.
If it is determined duringstep2270 that the subscription does not contain one or more escalations, then program control proceeds directly to step2280, where the subexpression is added to the communication flow.
Once it is determined duringstep2210 that there are no additional subscriptions to be processed, then a further test is performed duringstep2285 to determine if the subscribable objects have escalations. Escalations for the subscribable objects of the request can be retrieved from another table. An escalation for a subscribable object causes the user associated with the escalation to be notified if no one responds to a notification request with that object. If it is determined duringstep2285 that the subscribable objects have escalations, then the escalation term is added to the communication flow duringstep2290. The escalation term contains one term for each escalation record for each subscribable object on the request, with the delay for the individual escalation represented by the AFTER operator. The individual escalation terms are conjoined by the AND or RACES operator within the overall escalation term, which is enclosed in parentheses. The overall escalation term for all subscribable object escalations is conjoined with the existing commflow using the AND or RACES operator. Finally, the communication flow string is output duringstep2295.
Third Party Subscription Delivery
As previously indicated, thesubscription server300 optionally provides the communication flows generated by the communicationflow generation process2200 to a third party, such as the notification andresponse system200, for delivery to end users. As previously indicated, theapplication110 sends a request proposal to thesubscription server300 that includes the Notification and Response System Request to be made, specified in XML or another appropriate specification language such as the Web Services Description Language (WSDL).
The XML for the Notification and Response System Request includes a line with a special string that marks where the communication flow needs to be inserted, as follows:
    • <target>%%COMMUNICATION_FLOW%%</target>
      The <target> element is used to specify the communication flow in the Request XML specification and thesubscription server300 replaces the string “%%COMMUNICATION_FLOW%%” with a generated communication flow expression.
As long as the special string to be replaced is unique in all specifications, it is not even necessary for thesubscription server300 to know that the field for the insertion is <target> or that the request specification is in XML. This technique works for the specification of any downstream service.
Exemplary Communication Flows for Escalation
To escalate for a single person not responding, say joann not responding, the communication flow would be expressed as:
    • joann races dave after +04:00
      Thus, if joann doesn't answer in within 4 hours, dave is also contacted. A response from one of them completes the entire communication flow. Similarly, to escalate on a delegation, the communication flows would be expressed as:
    • :Full delegation of joann to ham becomes:
    • ham races dave after +04:00
    • Shared delegation of joann to joann, ham becomes:
    • (joann races ham) races dave after +04:00
    • Parallel delegation of joann to joann, ham becomes:
    • (joann and ham) races dave after +04:00
In the last case, joann and ham must both respond before the four hours have passed to prevent the escalation. This last case assumes commflows in accordance with Version 2.5 of the Xui™ system and that users can only answer “Yes” and not “No” to the notification. Handling “No” is more complicated and requires V3.0 communication flows.
If the initial person contacted should continue to be contacted even if the escalated person responds, then the above examples are changed to have the following form:
    • joann and not dave after +04:00
To escalate for a group, any one of whom can answer to prevent the escalation, a V3.0 communication flow is needed.
Assume that you don't want the answer from one member of the group to cancel the notifications to the other members of the group, and that individuals can only answer “Yes” and not “No” to the notification. The group is ham, dave, joann and the escalation is to pat. The communication flow may be expressed as follows:
    • CONSULT {ham, dave, joann} races pat after +04:00
      It is noted that “CONSULT” is a parallel list operator that evaluates all of its children and waits for one of them to result in a TRUE or FALSE. This result is returned as the value of the operator, but the remaining operands are placed OUT-OF-BAND so that they can continue operation but have no affect on the outcome of the overall expression. They may additionally be tagged with an OUTOFBAND label. CONSULT evaluates to NORESULT until one of its children has evaluated to a truth-value of TRUE or FALSE, it then returns that result placing the rest of its children OUT-OF-BAND. If all of its children result in a truth-value of MAYBE, then this operator results in MAYBE.
If at least one member in the consult answers then Pat never receives the escalation. If Pat receives the escalation and answers, then all messages to the group in CONSULT are cancelled. This parallels the technique above for individuals and does not use the limitation that the recipients can't answer “No.”
If you want the group to continue to be notified even if the escalated person answers, then the communication flow is expressed as follows:
    • CONSULT {ham, dave, joann} and NOT pat after +04:00
      This communication flow uses the assumption that people cannot answer “No.”
For a more detailed discussion of the generation and evaluation of communication flows, see U.S. patent application Ser. No. 10/184,236, filed Jun. 26, 2002, entitled “Method and Apparatus for Automatic Notification and Response;” and U.S. patent application Ser. No. 10/184,325, filed Jun. 26, 2002, entitled “Method and Apparatus for Automatic Notification and Response Based on Communication Flow Expressions,” each incorporated by reference herein.
Exemplary User Interfaces
FIG. 23 illustrates anexemplary user interface2300 that allows a user to review one or more pending requests. In the example shown inFIG. 23, the request has three associated answers in asection2310. Two answers have associatedaudio recordings2315 and2320. According to one aspect of the present invention, the various users that have received the subscription request can see those other users who have responded (or all optionally users who received the request). In this manner, an ad-hoc community is created that allows the users to, for example, directly consult one another, if needed. Details of the request are included insection2320. In other words, since this group of users have received the same request, that share some common interest associated with the request.
In addition, theexemplary user interface2300 includes the following three questions insection2330 that allows a user to indicate whether they will take responsibility for the request:
    • Yes, I take responsibility for this;
    • No, I don't take responsibility for this case, but will follow its progress; or
    • No, I don't take responsibility for this case.
FIG. 24 illustrates anexemplary user interface2400 that allows a user to enter, update or otherwise access subscriptions. In the example shown inFIG. 24, theuser interface2400 provides afirst section2410 that allows a user to define notification preferences, such as points of contact and time profiles. In addition, theuser interface2400 includes asection2420 that allows a user to register subscriptions based on one or more different subscribable objects (i.e., those attributes identified as required attributes in the template database1500 (FIG. 15).
FIG. 25 illustrates anexemplary user interface2500 that allows users to view, update or delete their notification profiles. In the example shown inFIG. 25, a user has established notification profiles for 24×7, alarm setup and routine.FIG. 26 illustrates anexemplary user interface2600 that allows users to enter a new notification profile. In the example shown inFIG. 26, a user can specify parameters insection2610 for an initial notification and insection2620 for a reminder.
FIG. 27 illustrates anexemplary user interface2700 that allows a user to subscribe to notifications. In the example shown inFIG. 27, the user is registering to receive subscriptions based on FL. The user enters the desired FL number(s) infield2720, optionally with the assistance of a search tool2710 (for example, that lists all FL numbers having a prefix of a given size as the user enters the prefix). The entry infield2720 is an example of an attribute having a large cardinality, as the number of possible values is too large to present the user with all the FL options in theinterface2700. The case source, message type andseverity fields2730,2740,2770 are examples of attributes having a small cardinality, as the number of possible values is small and all the options can be presented to the user at the same time in theinterface2700, for example, using a check box. The Product and Product Family fields2750,2760 are examples of attributes having a medium cardinality, as the number of possible values is between the small set and the large set, and all the options can be presented to the user in theinterface2700, for example, using a scroll list.
FIG. 28 illustrates anexemplary user interface2800 that presents a list of subscriptions to the corresponding user. In the example shown inFIG. 28, the user is provided withcorresponding buttons2810,2820,2830 for each subscription to turn off, delegate or delete the subscription, respectively. In addition, abutton2840 is optionally provided to allow the user to specify the appropriate notification profile to employ for the subscription.
System and Article of Manufacture Details
As is known in the art, the methods and apparatus discussed herein may be distributed as an article of manufacture that itself comprises a computer readable medium having computer readable code means embodied thereon. The computer readable program code means is operable, in conjunction with a computer system, to carry out all or some of the steps to perform the methods or create the apparatuses discussed herein. The computer readable medium may be a recordable medium (e.g., floppy disks, hard drives, compact disks, or memory cards) or may be a transmission medium (e.g., a network comprising fiber-optics, the world-wide web, cables, or a wireless channel using time-division multiple access, code-division multiple access, or other radio-frequency channel). Any medium known or developed that can store information suitable for use with a computer system may be used. The computer-readable code means is any mechanism for allowing a computer to read instructions and data, such as magnetic variations on a magnetic media or height variations on the surface of a compact disk.
The computer systems and servers described herein each contain a memory that will configure associated processors to implement the methods, steps, and functions disclosed herein. The memories could be distributed or local and the processors could be distributed or singular. The memories could be implemented as an electrical, magnetic or optical memory, or any combination of these or other types of storage devices. Moreover, the term “memory” should be construed broadly enough to encompass any information able to be read from or written to an address in the addressable space accessed by an associated processor. With this definition, information on a network is still within a memory because the associated processor can retrieve the information from the network.
It is to be understood that the embodiments and variations shown and described herein are merely illustrative of the principles of this invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention.

Claims (15)

We claim:
1. A method of notifying one or more users of information, the method comprising:
building subscribable objects to provide to one or more registered recipients, wherein the registered recipients register their interests with a subscription server through a subscription portal that enable registered recipients to create, modify, and delete interests, wherein each of the subscribable objects is built based upon one or more predefined templates, and wherein each the predefined templates identifies required attributes and optional attributes corresponding to roles assigned to the registered recipients;
receiving, at a subscription server, a notification request, wherein the notification request comprises a subscribable object and a notification;
identifying, at the subscription server, at least one recipient of the notification;
creating, at the subscription server, a communication flow expression for the notification request, wherein the communication flow expression comprises an identifier of the at least one registered recipient and at least one condition for a transmission of the notification;
matching the subscribable object of the notification with at least one subscribable object of a subscription,
wherein the at least one recipient is assigned to at least one role,
wherein the at least one role identifies at least one privilege, and
wherein the at least one privilege permits the at least one role to subscribe to the at least one subscribable object; and
transmitting, from the subscription server, the communication flow expression and the notification request to a notification and response system, wherein the notification and response system executes the communication flow expression.
2. The method ofclaim 1, further comprising identifying the first recipient by matching an attribute identified in the notification request to the subscription information for the first recipient.
3. The method ofclaim 1, wherein the notification is transmitted to a recipient who is different from the first recipient.
4. The method ofclaim 1, wherein
the notification and response system is distinct from the subscription server,
and wherein the transmitting step further comprises transmitting the notification in accordance with at least one instruction.
5. The method ofclaim 1, wherein a first communication flow subexpression is added if a sender of the notification request has privileges that permit the sender to notify a first recipient.
6. The method ofclaim 1, wherein a first communication flow subexpression is added if a first recipient has privileges that permit the first recipient to receive the notification.
7. The method ofclaim 1, wherein subscription information for a first recipient identifies a characteristic of the notification request.
8. The method ofclaim 1, wherein subscription information for a first recipient identifies a condition to be met in order for a notification request to be matched with the first recipient.
9. A system for notifying one or more users of information, the system comprising:
a processor;
a memory for storing instructions that when executed cause the processor to:
building subscribable objects to provide to one or more registered recipients, wherein the registered recipients register their interests with a subscription server through a subscription portal that enable registered recipients to create, modify, and delete interests, wherein each of the subscribable objects is built based upon one or more predefined templates, and wherein each the predefined templates identifies required attributes and optional attributes corresponding to roles assigned to the recipients;
receive, at a subscription server, a notification request, wherein the notification request includes a subscribable object and a notification;
identify, at the subscription server, at least one recipient of the notification;
creating, at the subscription server, a communication flow expression for the notification request, wherein the communication flow expression comprises an identifier of the at least one recipient and at least one condition for a transmission of the notification;
matching the subscribable object of the notification with at least one subscribable object of a subscription,
wherein the at least one registered recipient is assigned to at least one role,
wherein the at least one role identifies at least one privilege, and
wherein the at least one privilege permits the at least one role to subscribe to the at least one subscribable object; and
transmitting, from the subscription server, the communication flow expression and the notification request to a notification and response system, wherein the notification and response system executes the communication flow expression.
10. The system ofclaim 9, wherein the notification is transmitted to a person other than a first recipient.
11. The system ofclaim 9, wherein the notification is transmitted if a first recipient has privileges that permit the first recipient to receive the notification.
12. The system ofclaim 9, wherein the notification is transmitted if a sender of the notification request has privileges that permit the sender to notify a first recipient.
13. The system ofclaim 9, wherein subscription information for a first recipient identifies a characteristic of the notification request.
14. The system ofclaim 9, wherein subscription information for a first recipient identifies a condition to be met in order for the notification request to be matched with the first recipient.
15. The system ofclaim 9, wherein the processor further identifies a first recipient by matching an attribute identified in the notification request to subscription information for the first recipient.
US10/999,9092002-06-262004-11-30Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptionsActive2027-10-23US8495163B2 (en)

Priority Applications (2)

Application NumberPriority DateFiling DateTitle
US10/999,909US8495163B2 (en)2004-03-182004-11-30Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions
US13/621,198US9124643B2 (en)2002-06-262012-09-15Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions

Applications Claiming Priority (2)

Application NumberPriority DateFiling DateTitle
US55423204P2004-03-182004-03-18
US10/999,909US8495163B2 (en)2004-03-182004-11-30Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions

Related Child Applications (1)

Application NumberTitlePriority DateFiling Date
US13/621,198ContinuationUS9124643B2 (en)2002-06-262012-09-15Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions

Publications (2)

Publication NumberPublication Date
US20050210062A1 US20050210062A1 (en)2005-09-22
US8495163B2true US8495163B2 (en)2013-07-23

Family

ID=34837590

Family Applications (7)

Application NumberTitlePriority DateFiling Date
US10/999,909Active2027-10-23US8495163B2 (en)2002-06-262004-11-30Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions
US10/999,891Active2027-07-15US7734731B2 (en)2004-03-182004-11-30Method and apparatus for a publish-subscribe system with third party subscription delivery
US11/083,069Active2028-06-05US8566311B2 (en)2004-03-182005-03-17Method and apparatus for notifying a user of a predefined changes to dynamic attributes
US11/083,365Expired - Fee RelatedUS8516045B2 (en)2004-03-182005-03-17Method and apparatus for automatic notification and response based on communication flow expressions having dynamic context
US11/083,070AbandonedUS20050249337A1 (en)2004-03-182005-03-17Method and apparatus for just in time education
US11/083,068Active2028-04-21US8001182B2 (en)2004-03-182005-03-17Method and apparatus for dynamically adjusting membership of a communication flow expression
US13/621,198Expired - LifetimeUS9124643B2 (en)2002-06-262012-09-15Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions

Family Applications After (6)

Application NumberTitlePriority DateFiling Date
US10/999,891Active2027-07-15US7734731B2 (en)2004-03-182004-11-30Method and apparatus for a publish-subscribe system with third party subscription delivery
US11/083,069Active2028-06-05US8566311B2 (en)2004-03-182005-03-17Method and apparatus for notifying a user of a predefined changes to dynamic attributes
US11/083,365Expired - Fee RelatedUS8516045B2 (en)2004-03-182005-03-17Method and apparatus for automatic notification and response based on communication flow expressions having dynamic context
US11/083,070AbandonedUS20050249337A1 (en)2004-03-182005-03-17Method and apparatus for just in time education
US11/083,068Active2028-04-21US8001182B2 (en)2004-03-182005-03-17Method and apparatus for dynamically adjusting membership of a communication flow expression
US13/621,198Expired - LifetimeUS9124643B2 (en)2002-06-262012-09-15Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions

Country Status (2)

CountryLink
US (7)US8495163B2 (en)
EP (4)EP1585251A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20130060801A1 (en)*2011-08-312013-03-07Robert Irven Beaver, IIIProduct Options Framework And Accessories
US9147213B2 (en)2007-10-262015-09-29Zazzle Inc.Visualizing a custom product in situ
US10608936B1 (en)*2018-10-102020-03-31Intuit Inc.Implementing data sharing features in legacy software applications
US12118598B2 (en)2021-03-302024-10-15Zazzle Inc.Generating and using tokens to request services and access to a product collaboration platform
US12314992B2 (en)2021-10-212025-05-27Zazzle Inc.Method and computer readable storage media for interfacing with third party platforms via collaboration sessions to customize products
US12412155B2 (en)2019-05-072025-09-09Zazzle Inc.System and method for role-based collaborative design of custom products based on manufacturing constraints

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US7334220B2 (en)*2004-03-112008-02-19Microsoft CorporationData driven test automation of web sites and web services
US8620816B2 (en)*2004-10-142013-12-31Google Inc.Information vault, data format conversion services system and method
US7461062B2 (en)*2004-12-012008-12-02International Business Machines CorporationJust-in-time publishing via a publish/subscribe messaging system using a subscribe-event model
US7383266B2 (en)*2004-12-012008-06-03International Business Machines CorporationJust-in-time publishing via a publish/subscribe messaging system having message publishing controls
US7657600B2 (en)*2005-01-032010-02-02Sap AktiengesellschaftResponding to electronic mail messages
US7773729B2 (en)*2005-04-282010-08-10Techradium, Inc.Digital notification and response system with real time translation and advertising features
US20070047439A1 (en)*2005-08-262007-03-01Lianjun AnMethod and apparatus of supporting business performance management with active shared data spaces
US7941515B2 (en)*2006-01-132011-05-10Cisco Technology, Inc.Applying a filter set to information provided to a subscribing client
GB0606226D0 (en)*2006-03-292006-05-10IbmA method for resolving a unit of work
JP4627281B2 (en)*2006-06-082011-02-09富士通株式会社 Communication support system, communication support method, and communication support program
US9171040B2 (en)*2006-10-102015-10-27International Business Machines CorporationMethods, systems, and computer program products for optimizing query evaluation and processing in a subscription notification service
US20080109481A1 (en)*2006-11-062008-05-08Sergio CatanzaritiContext based network search
US8082539B1 (en)*2006-12-112011-12-20Parallels Holdings, Ltd.System and method for managing web-based forms and dynamic content of website
US7895128B2 (en)*2007-02-272011-02-22Xerox CorporationSelf-training and self-testing systems and methods
US20090094067A1 (en)*2007-10-042009-04-09Searete LLC, a limited liability corporation ofSystems and methods for company internal optimization utilizing epigenetic data
US20090132308A1 (en)*2007-11-202009-05-21Microsoft CorporationSolution for Managed Personal Computing
US8132182B2 (en)*2007-12-282012-03-06International Business Machines CorporationParallel processing of triggering rules in SIP event notification filters
US7478135B1 (en)2008-03-282009-01-13International Business Machines CorporationOne-responder email feature
US20090248612A1 (en)*2008-03-312009-10-01Morris Robert PMethods, Systems, And Computer Program Products For Providing Prior Values Of A Tuple Element In A Publish/Subscribe System
US8495579B2 (en)*2008-04-092013-07-23International Business Machines CorporationTesting notification-based software applications
US8296409B2 (en)*2008-05-192012-10-23International Business Machines CorporationMethod for enabling on-demand communication services
US20100042912A1 (en)*2008-06-122010-02-18Eva WhitakerReminder and notification system for a parent
US20100070607A1 (en)*2008-09-162010-03-18Ingboo Inc.Scalable Method for Contextual Information Updates and Notification
US9196260B1 (en)*2008-10-012015-11-24Avaya Inc.System and method for automating voice checklists
US20100191546A1 (en)*2009-01-292010-07-29Anuradha KanamarlapudiMethods and apparatus to automatically generate subscriptions for healthcare event tracking and alerting systems
US8260784B2 (en)*2009-02-132012-09-04International Business Machines CorporationIndexing and searching JSON objects
JP5304475B2 (en)*2009-06-232013-10-02富士通株式会社 Information processing apparatus and information processing method
CH702088A2 (en)2009-10-272011-04-29Polycontact AgBuckle with a switch arrangement for detecting the locking state.
CH702289A2 (en)2009-11-192011-05-31Polycontact AgSwitch arrangement, in particular for installation in a buckle.
CH702391A2 (en)2009-12-022011-06-15Polycontact AgBelt buckle for a restraint system.
CA2721413C (en)2009-12-022014-11-04Research In Motion LimitedSystem and method for centrally distributing mobile content
CN102624637B (en)2011-01-272016-02-24阿里巴巴集团控股有限公司Quote Notification Method and device
US10268730B2 (en)*2011-01-312019-04-23Bmc Software, Inc.Focus-driven user interface
CH705101A2 (en)2011-06-032012-12-14Polycontact AgBuckle with a condition sensor for detecting the locking state of a seat belt system.
US8818944B2 (en)2011-06-302014-08-26Microsoft CorporationData change tracking and event notification
CN103580987B (en)*2012-07-302017-10-03百度在线网络技术(北京)有限公司The based reminding method and device of group's message in immediate communication tool
US11114194B2 (en)2015-10-012021-09-07Audacious InquiryNetwork-based systems and methods for providing readmission notifications
US20140278537A1 (en)*2013-03-152014-09-18Sandeep AntonyNetwork-based systems and methods for managing healthcare information
US20150046544A1 (en)*2013-08-082015-02-12Futurewei Technologies, Inc.Mirror Presence Between Websites
US9992292B2 (en)*2014-04-012018-06-05Noom, Inc.Wellness support groups for mobile devices
JP6434640B2 (en)*2014-11-042018-12-05華為技術有限公司Huawei Technologies Co.,Ltd. Message display method, message display device, and message display device
US20160269251A1 (en)*2015-03-132016-09-15Microsoft Technology Licensing, LlcSubscription for Communication Attributes
US10198525B2 (en)*2015-05-052019-02-05Sap SeAsset intelligence network
CN106506318A (en)*2015-09-072017-03-15南京跃豚智能科技有限公司A kind of information method for subscribing of group
CN107516283A (en)*2016-06-162017-12-26柳荣奎The matching system and method for learned lesson
CN113159910B (en)*2016-07-292025-04-11京东方科技集团股份有限公司 Method, device and system for notification
US10891326B2 (en)2017-01-052021-01-12International Business Machines CorporationRepresentation of a data analysis using a flow graph
CA2960654C (en)*2017-03-092018-11-06Ernest JugovicIntermediated access to entity information profiles
US11200485B2 (en)2017-05-222021-12-14Genesys Telecommunications Laboratories, Inc.Contact center system and method for advanced outbound communications to a contact group
US10554595B2 (en)*2017-05-222020-02-04Genesys Telecommunications Laboratories, Inc.Contact center system and method for advanced outbound communications to a contact group
US10388039B2 (en)2017-05-312019-08-20International Business Machines CorporationAccelerating data-driven scientific discovery
US10904696B2 (en)*2018-01-192021-01-26Vi-Ability, LLCEmergency preparation and response systems and related methods
US10681164B2 (en)*2018-05-032020-06-09Microsoft Technology Licensing, LlcInput and output schema mappings
CN109450658B (en)*2018-09-262021-10-22谭诚训Internet-based discussion method and system
US11315408B1 (en)*2018-09-282022-04-26CauZway, LLCEmergency communications system
US12067151B2 (en)2019-04-302024-08-20Enya Inc.Resource-efficient privacy-preserving transactions
US10635837B1 (en)2019-04-302020-04-28HealthBlock, Inc.Dynamic data protection
JP7458941B2 (en)*2020-09-012024-04-01シャープ株式会社 information processing equipment
KR20230171611A (en)*2022-06-142023-12-21한국전자통신연구원Broadcast Node and Method for Dynamic Management of Radio Resources and Heterogeneous Network Connectivity Therein
US11895192B1 (en)*2022-10-262024-02-06Splunk Inc.Managing subscriptions to resource updates made via a target interface
US12306822B2 (en)*2023-10-172025-05-20DevRev, Inc.Notifications of events of a system of record

Citations (187)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5559867A (en)1994-06-201996-09-24Sigma/Micro CorporationAutomated calling system with database updating
US5812865A (en)1993-12-031998-09-22Xerox CorporationSpecifying and establishing communication data paths between particular media devices in multiple media device computing systems based on context of a user or users
US5859967A (en)1996-07-091999-01-12Faxsav IncorporatedMethod and system for relaying communications from authorized users
US5873084A (en)1996-01-181999-02-16Sun Microsystems, Inc.Database network connectivity product
US5892909A (en)1996-09-271999-04-06Diffusion, Inc.Intranet-based system with methods for co-active delivery of information to multiple users
US5892906A (en)1996-07-191999-04-06Chou; Wayne W.Apparatus and method for preventing theft of computer devices
US5912947A (en)1994-06-201999-06-15Sigma/Micro CorporationPublic notification system and method
US5946386A (en)1996-03-111999-08-31Xantel CorporationCall management system with call control from user workstation computers
US5999978A (en)*1997-10-311999-12-07Sun Microsystems, Inc.Distributed system and method for controlling access to network resources and event notifications
US6021443A (en)1996-01-182000-02-01Sun Microsystems, Inc.Systems, software, and methods for routing events among publishers and subscribers on a computer network
US6026153A (en)1984-09-142000-02-15Aspect Telecommunications CorporationPersonal communicator telephone system
US6032188A (en)1997-03-122000-02-29Microsoft CorporationMethod and system for controlling data flow
US6037934A (en)1997-11-212000-03-14International Business Machines CorporationNamed bookmark sets
US6041360A (en)1997-11-212000-03-21International Business Machines CorporationWeb browser support for dynamic update of bookmarks
KR20000037554A (en)1998-12-012000-07-05이계철 Dynamic Routing Based Call Path Establishment and Reconfiguration Method of Asynchronous Transfer Mode Switching System
US6091724A (en)1997-11-202000-07-18International Business Machines CorporationRouting messages within a network using the data content of the message
US6098099A (en)1998-04-212000-08-01International Business Machines CorporationThird-party notification by network directory server
US6112246A (en)1998-10-222000-08-29Horbal; Mark T.System and method for accessing information from a remote device and providing the information to a client workstation
WO2000069132A1 (en)1999-05-112000-11-16Vista Group Pty LimitedTelecommunications system
US6158007A (en)1997-09-172000-12-05Jahanshah MorehSecurity system for event based middleware
US6173310B1 (en)*1999-03-232001-01-09Microstrategy, Inc.System and method for automatic transmission of on-line analytical processing system report output
US6195703B1 (en)1998-06-242001-02-27Emc CorporationDynamic routing for performance partitioning in a data processing network
US6201856B1 (en)1998-12-152001-03-13Ameritech CorporationEmergency telephone call notification service system and method
US6205148B1 (en)1996-11-262001-03-20Fujitsu LimitedApparatus and a method for selecting an access router's protocol of a plurality of the protocols for transferring a packet in a communication system
US6208995B1 (en)1997-11-242001-03-27International Business Machines CorporationWeb browser download of bookmark set
US6226360B1 (en)1998-05-192001-05-01At&T Corp.System and method for delivery of pre-recorded voice phone messages
WO2001054008A2 (en)1999-12-302001-07-26Makio KogaWorldwide early warning network and method of use
US20010018718A1 (en)1998-05-082001-08-30Ludtke Harold AaronMedia manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices
US20010046234A1 (en)2000-04-102001-11-29Hemant AgrawalMethod and apparatus for S.I.P./H. 323 interworking
US6343321B2 (en)1997-10-272002-01-29Sun Microsystems, Inc.Method and apparatus for network transport independence
US20020035607A1 (en)2000-05-252002-03-21Daniel CheckowayE-mail gateway system
US6381594B1 (en)1999-07-122002-04-30Yahoo! Inc.System and method for personalized information filtering and alert generation
US6404880B1 (en)1999-12-242002-06-11Alcatel Usa Sourcing, L.P.Method and apparatus for delivering critical information
US20020072348A1 (en)2000-12-132002-06-13Motorola, Inc.Mobile personal security monitoring service
US20020072966A1 (en)*2000-08-312002-06-13Eldering Charles A.System for providing targeted advertisements using advertiser-specific target groups
US20020091789A1 (en)1998-12-032002-07-11Sanjeev KatariyaScalable computing system for presenting customized aggregation of information
US6427001B1 (en)2001-06-072002-07-30Bellsouth Intellectual Property CorporationSystem and method for notification of 911 telephone calls using a link monitoring system
US20020103850A1 (en)2001-01-312002-08-01Moyer Stanley L.System and method for out-sourcing the functionality of session initiation protocol (SIP) user agents to proxies
US20020103898A1 (en)2001-01-312002-08-01Moyer Stanley L.System and method for using session initiation protocol (SIP) to communicate with networked appliances
US20020111855A1 (en)2001-01-232002-08-15Hammerstad Diane R.Delivery of time significant advertising
US20020112073A1 (en)2000-12-112002-08-15Melampy Patrick J.System and method for assisting in controlling real-time transport protocol flow through multiple networks via media flow routing
US20020116393A1 (en)2001-02-162002-08-22Matthew Aaron GoldsteinMethod for automatic electronic transmission of lost person information
US20020116336A1 (en)2001-02-052002-08-22Athanassios DiacakisMethod and device for displaying contact information in a presence and availability management system
US6442565B1 (en)1999-08-132002-08-27Hiddenmind Technology, Inc.System and method for transmitting data content in a computer network
US20020120760A1 (en)2000-05-262002-08-29Gur KimchiCommunications protocol
US6446114B1 (en)1998-07-132002-09-03At&T Corp.Messaging agent and method for retrieving and consolidating messages
US6457046B1 (en)1997-06-262002-09-24Fujitsu LimitedInformation providing apparatus for server and computer-readable recording medium storing information providing program for server
US6456594B1 (en)1996-10-312002-09-24Connect One, LlpMulti-protocol communications routing optimization
US6463462B1 (en)1999-02-022002-10-08Dialogic Communications CorporationAutomated system and method for delivery of messages and processing of message responses
US6480885B1 (en)1998-09-152002-11-12Michael OlivierDynamically matching users for group communications based on a threshold degree of matching of sender and recipient predetermined acceptance criteria
US6480578B1 (en)1995-06-292002-11-12Douglas C. AllportCommunity emergency telephone notification system
US20020169839A1 (en)2001-03-202002-11-14Bernel GoldbergMethod and system for modifying the content of e-mail transmissions based on customization settings
US6483804B1 (en)1999-03-012002-11-19Sun Microsystems, Inc.Method and apparatus for dynamic packet batching with a high performance network interface
WO2002093886A2 (en)2001-05-152002-11-21Avaya Technology Corp.Method and apparatus for automatic notification and response
US20020184521A1 (en)*2001-03-142002-12-05Microsoft CorporationAuthorizing a requesting entity to operate upon data structures
US6502093B1 (en)1999-07-212002-12-31Oracle CorporationApproach for publishing data in a relational database system
US20030009497A1 (en)2001-07-052003-01-09Allen YuCommunity based personalization system and method
US6507817B1 (en)1999-09-032003-01-14Cisco Technology, Inc.Voice IP approval system using voice-enabled web based application server
US20030014297A1 (en)2001-07-102003-01-16International Business Machines CorporationAutomated location-based disruption recovery and surrogate selection service
US20030018771A1 (en)*1997-07-152003-01-23Computer Associates Think, Inc.Method and apparatus for generating and recognizing speech as a user interface element in systems and network management
US20030036960A1 (en)2000-11-142003-02-20Ken SuzakiEmail transmitting method using computer interactive communication network and communication system thereof
US20030055829A1 (en)*2001-09-202003-03-20Rajit KamboMethod and apparatus for automatic notification of database events
US20030065874A1 (en)2001-09-102003-04-03Marron Pedro JoseLDAP-based distributed cache technology for XML
US6557054B2 (en)1994-05-312003-04-29Richard R. ReismanMethod and system for distributing updates by presenting directory of software available for user installation that is not already installed on user station
US6564261B1 (en)1999-05-102003-05-13Telefonaktiebolaget Lm Ericsson (Publ)Distributed system to intelligently establish sessions between anonymous users over various networks
US20030093417A1 (en)2001-11-152003-05-15Hideko KagimasaMethod and apparatus for document information management
US6578000B1 (en)1999-09-032003-06-10Cisco Technology, Inc.Browser-based arrangement for developing voice enabled web applications using extensible markup language documents
US20030119531A1 (en)2001-12-212003-06-26Patton Charles M.Dynamic selection of avatar policies based on physical device location and derived user control
US20030126250A1 (en)1999-12-142003-07-03Neeraj JhanjiSystems for communicating current and future activity information among mobile internet users and methods therefor
US20030135567A1 (en)1999-06-232003-07-17Mail Registry, Inc.Systems and methods for automatically forwarding electronic mail when the recipient is otherwise unknown
US6604093B1 (en)1999-12-272003-08-05International Business Machines CorporationSituation awareness system
US20030187992A1 (en)2001-05-072003-10-02Steenfeldt Rico WerniService triggering framework
US6633630B1 (en)1996-06-182003-10-14Cranberry Properties, LlcSystem for integrated electronic communications
US20030195698A1 (en)1993-05-182003-10-16Jones M. KellyNotification systems and methods with purpose message in notifications
US20030193558A1 (en)2002-04-102003-10-16International Business Machines CorporationMedia-enhanced greetings and/or responses in communication systems
US6643705B1 (en)1999-03-292003-11-04Microsoft CorporationRouting of electronic messages using a routing map and a stateful script engine
US6643661B2 (en)2000-04-272003-11-04Brio Software, Inc.Method and apparatus for implementing search and channel features in an enterprise-wide computer system
US6643684B1 (en)1998-10-082003-11-04International Business Machines CorporationSender- specified delivery customization
US6643682B1 (en)1999-09-222003-11-04International Business Machines CorporationPublish/subscribe data processing with subscription points for customized message processing
US20030215067A1 (en)2002-05-142003-11-20Ordille Joann J.Method and apparatus for automatic notification and response based on communication flow expressions
US20030217109A1 (en)2001-05-152003-11-20Ordille Joann J.Method and apparatus for automatic notification and response
US6654770B2 (en)2002-01-102003-11-25Mycarstats.Com, LlcAutomobile safety and maintenance information systems and methods and related services
US20030229722A1 (en)2002-06-112003-12-11Siemens Information And Communication Networks, Inc.Methods and apparatus for processing an instant message
US6671715B1 (en)2000-01-212003-12-30Microstrategy, Inc.System and method for automatic, real-time delivery of personalized informational and transactional data to users via high throughput content delivery device
US20040003058A1 (en)2002-06-262004-01-01Nokia, Inc.Integration of service registration and discovery in networks
US20040006606A1 (en)*2002-03-292004-01-08Len MarottaSystem and method for cataloging advertising stored online
US6680943B1 (en)1999-10-012004-01-20Nortel Networks LimitedEstablishing bi-directional communication sessions across a communications network
US20040015778A1 (en)*2002-03-162004-01-22Catherine BrittonElectronic healthcare management form creation
US20040015371A1 (en)*2002-07-162004-01-22Zachary ThomasSystem and method for managing job applicant data
US6687742B1 (en)1999-06-032004-02-03Toshiba Tec Kabushiki KaishaCommunication control method for electronic mail system
US6689742B1 (en)2000-02-252004-02-10Chancellors, Masters And Scholars Of The University Of OxfordNY-ESO-1 peptide derivatives, and uses thereof
US20040029626A1 (en)2002-08-072004-02-12Ed AnnunziataSystem and method for modifying actions of a group of characters via group interactions
US20040029625A1 (en)2002-08-072004-02-12Ed AnnunziataGroup behavioral modification using external stimuli
US20040028077A1 (en)2002-08-122004-02-12Gray Thomas A.Personalizable and customizable feature execution for IP telephony using operational semantics and deontic task trees
US20040039517A1 (en)2000-09-062004-02-26Alfred BiesingerIntegrated traffic monitoring system
US20040059705A1 (en)2002-09-252004-03-25Wittke Edward R.System for timely delivery of personalized aggregations of, including currently-generated, knowledge
US20040064387A1 (en)*2002-09-302004-04-01Clarke William D.Customized event messaging in an electronic bill presentment and payment system
US20040066925A1 (en)2002-03-292004-04-08Longboard, Inc.System and method of triggering services for call control
US6725333B1 (en)1999-04-222004-04-20International Business Machines CorporationSystem and method for managing cachable entities
US6728715B1 (en)2000-03-302004-04-27International Business Machines CorporationMethod and system for matching consumers to events employing content-based multicast routing using approximate groups
US20040095939A1 (en)1999-05-252004-05-20Jin YangMethod and apparatus for telecommunications using internet protocol
US20040111476A1 (en)2002-12-062004-06-10Nokia CorporationSystem, method and computer program product for the delivery of media content
US6754832B1 (en)1999-08-122004-06-22International Business Machines CorporationSecurity rule database searching in a network security environment
US20040153413A1 (en)2003-01-312004-08-05Gross John N.Notification system and method for media Queue
US6816878B1 (en)2000-02-112004-11-09Steven L. ZimmersAlert notification system
US20040225733A1 (en)*2003-05-062004-11-11Kaj TesinkMulticasting notification system
US20040254937A1 (en)2003-06-162004-12-16Peter GernoldGenerating data subscriptions based on application data
US20050021383A1 (en)*2003-07-252005-01-27Fliess Kevin V.Dynamic role generator
US20050021622A1 (en)2002-11-262005-01-27William CullenDynamic subscription and message routing on a topic between publishing nodes and subscribing nodes
US20050033657A1 (en)2003-07-252005-02-10Keepmedia, Inc., A Delaware CorporationPersonalized content management and presentation systems
US6868498B1 (en)1999-09-012005-03-15Peter L. KatsikasSystem for eliminating unauthorized electronic mail
US20050086469A1 (en)*2003-10-172005-04-21Microsoft CorporationScalable, fault tolerant notification method
US6886043B1 (en)2000-06-282005-04-26Nortel Networks LimitedCommunications network
US6895406B2 (en)2000-08-252005-05-17Seaseer R&D, LlcDynamic personalization method of creating personalized user profiles for searching a database of information
US20050114401A1 (en)2003-11-172005-05-26Conkel Dale W.Enterprise directory service domain controller replication alert and repair
US6910070B1 (en)2000-01-242005-06-21Oracle International CorporationMethods and systems for asynchronous notification of database events
US6919792B1 (en)1997-10-172005-07-19Thomson Licensing Inc.Control device and method in a system of household appliances
US20050165743A1 (en)2003-12-312005-07-28Krishna BharatSystems and methods for personalizing aggregated news content
US20050171958A9 (en)*2001-08-062005-08-04Qingwen ChengMethod and system for implementing policies, resources and privileges for using services in LDAP
US6965917B1 (en)1999-09-072005-11-15Comverse Ltd.System and method for notification of an event
US20050262016A1 (en)*2004-02-112005-11-24Mt One, Inc.Integrated on-line system for identifying and valuing foreclosure properties
US6971065B2 (en)2000-12-132005-11-29National Instruments CorporationAutomatically configuring a graphical program to publish or subscribe to data
US6990633B1 (en)2000-07-282006-01-24Seiko Epson CorporationProviding a network-based personalized newspaper with personalized content and layout
US20060056628A1 (en)2002-12-122006-03-16International Business Machines CorporationMethods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system
US7016477B2 (en)2001-11-272006-03-21Bellsouth Intellectual Property CorporationMethod of notifying a party of an emergency
US20060067309A1 (en)1998-09-242006-03-30Zhakov Vyacheslav ICall transfer using session initiation protocol (SIP)
US7032030B1 (en)1999-03-112006-04-18John David CodignottoMessage publishing system and method
US7049971B2 (en)2000-03-142006-05-23Guillory Andre PSystem for selective notification of severe weather events
US7084775B1 (en)2004-07-122006-08-01User-Centric Ip, L.P.Method and system for generating and sending user-centric weather alerts
US7103592B2 (en)2000-09-272006-09-05Pertinence Data IntelligenceMethod and apparatus providing recommendations based on automatically enriched user profile
US7133869B2 (en)2001-03-062006-11-07Knowledge Vector, Inc.Methods and systems for and defining and distributing information alerts
US20060253585A1 (en)2001-05-092006-11-09Fein Gene SMethod, apparatus and program product providing business processes using media identification and tracking of associated user preferences
US7216145B2 (en)2000-06-232007-05-08Mission Communications, LlcEvent notification system
US7219153B1 (en)2002-12-022007-05-15Cisco Technology, Inc.Methods and apparatus for distributing content
US7228331B2 (en)2004-05-042007-06-05Nokia, Inc.User oriented penalty count random rejection of electronic messages
US20070168550A1 (en)*2003-03-132007-07-19Yi-Min WangSummary-based routing for content-based event distribution networks
US7249197B1 (en)2000-10-202007-07-24Nortel Networks LimitedSystem, apparatus and method for personalising web content
US20070180490A1 (en)2004-05-202007-08-02Renzi Silvio JSystem and method for policy management
US20070179828A1 (en)2000-03-222007-08-02Alex ElkinMethod and system for top-down business process definition and execution
US7283045B1 (en)2006-01-262007-10-16The United States Of America As Represented By The Secretary Of The ArmySystem and method for semi-distributed event warning notification for individual entities, and computer program product therefor
US7287230B2 (en)2000-12-132007-10-23National Instruments CorporationConfiguring a GUI element to subscribe to data
US7305448B2 (en)2000-05-162007-12-04Sony CorporationInformation-presenting apparatus, information-presenting method, information-processing apparatus, information-processing method and program-storing medium
US20070299685A1 (en)2002-06-062007-12-27Microsoft CorporationMethods and Systems for Generating Electronic Program Guides
US20080005278A1 (en)2006-06-122008-01-03Betz Joseph PSystem and Method for Scalable Distribution of Semantic Web Updates
US20080046510A1 (en)2002-09-062008-02-21Beauchamp Tim JMethod for selectively sending a notification to an instant messaging device
US7346662B2 (en)2001-09-272008-03-18At&T Deleware Intellectual Property, Inc.Methods, systems, and products for indicating receipt of electronic mail
US7359493B1 (en)2002-04-112008-04-15Aol Llc, A Delaware Limited Liability CompanyBulk voicemail
US7372833B2 (en)2000-05-102008-05-13Nokia CorporationResource allocation in packet network
US7409430B2 (en)*2001-02-282008-08-05Sap AgNotification message distribution
US7418085B2 (en)2005-04-282008-08-26Techradium, Inc.Special needs digital notification and response system
US7458080B2 (en)2000-12-192008-11-25Microsoft CorporationSystem and method for optimizing user notifications for small computer devices
US20080313003A1 (en)2001-03-302008-12-18Racca Felix GDesigning business processes using parametric roles
US7469272B2 (en)2003-03-262008-12-23Microsoft CorporationSystem and method utilizing test notifications
US7474892B2 (en)2000-11-092009-01-06Palm, Inc.Notification mechanisms in a wireless device
US7496183B1 (en)2005-04-282009-02-24Techradium, Inc.Method for providing digital notification
US7519165B1 (en)2005-04-282009-04-14Techradium, Inc.Method for providing digital notification and receiving responses
US7522038B2 (en)2005-08-292009-04-21Stericycle, Inc.Emergency contact system and method
US20090110174A1 (en)2001-03-202009-04-30Worldcom, Inc.Caller treatment in a sip network
US20090110159A1 (en)*2003-10-142009-04-30Rohit Satish KalbagMessage delivery using a voice mail system
US7529850B2 (en)2005-03-112009-05-05International Business Machines CorporationMethod and system for rapid dissemination of public announcements
US7558558B2 (en)2004-06-072009-07-07Cml Emergency Services Inc.Automated mobile notification system
US7558951B2 (en)1999-09-152009-07-07Dw Holdings, Inc.System and method for secure transactions over a network
US20090204977A1 (en)*2003-11-282009-08-13Globestar SystemsEvent management system
US20090201919A1 (en)*1997-03-072009-08-13Web Telephony Llc.System for providing hosted telephone services to a subscriber via the internet
US7577581B1 (en)2000-10-312009-08-18Hewlett-Packard Development Company, L.P.Method for targeting promotions to individual associated with a vehicle
US20090235084A1 (en)*2001-11-062009-09-17Ferraro Eugene FAnonymous reporting system
US7624171B1 (en)2005-04-282009-11-24Techradium, Inc.Method for digitally notifying customers of a utility
US7626952B2 (en)2002-06-182009-12-01At&T Intellectual Property I, L.P.Device for aggregating, translating, and disseminating communications within a multiple device environment
US7664233B1 (en)2003-06-252010-02-16Everbridge, Inc.Emergency and non-emergency telecommunications notification system
US20100064020A1 (en)1999-11-232010-03-11Frank Michael WeyerMethod, apparatus and business system for online communication with online and offline recipients
US7684548B1 (en)2005-04-282010-03-23Techradium, Inc.Notification and response system with attendance tracking features
US7685245B1 (en)2005-04-282010-03-23Techradium, Inc.Digital notification and response system
US7685265B1 (en)2003-11-202010-03-23Microsoft CorporationTopic-based notification service
US7769611B1 (en)2000-11-032010-08-03International Business Machines CorporationSystem and method for automating travel agent operations
US7769496B1 (en)2007-08-102010-08-03Techradium, Inc.Method for centralized management of a hydrogen generation network
US7769495B1 (en)2007-08-102010-08-03Techradium, Inc.Power management system for a hydrogen generation network
US7773729B2 (en)2005-04-282010-08-10Techradium, Inc.Digital notification and response system with real time translation and advertising features
US7808378B2 (en)2007-10-172010-10-05Hayden Robert LAlert notification system and method for neighborhood and like groups
US7853250B2 (en)2003-04-032010-12-14Network Security Technologies, Inc.Wireless intrusion detection system and method
US7869576B1 (en)2005-04-282011-01-11Techradium, Inc.Power management system for a plurality of at least partially rechargeable vehicles
US7877694B2 (en)2003-12-052011-01-25Microsoft CorporationHosted notifications templates
US20110047078A1 (en)1995-02-132011-02-24Intertrust Technologies Corp.Trusted Infrastructure Support Systems, Methods and Techniques for Secure Electronic Commerce Electronic Transactions and Rights Management
US7904208B1 (en)2007-08-102011-03-08Tech Radium, Inc.Computer instructions for centralized management of a hydrogen generation network
US7937655B2 (en)2000-12-222011-05-03Oracle International CorporationWorkflows with associated processes
US8023621B2 (en)2006-01-172011-09-20LReady, Inc.Dynamic family disaster plan
US8051168B1 (en)2001-06-192011-11-01Microstrategy, IncorporatedMethod and system for security and user account integration by reporting systems with remote repositories
CA2486135C (en)2002-05-172012-11-27America Online, Inc.Providing supplemental contact information corresponding to a referenced individual

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5825865A (en)1991-10-041998-10-20Motorola, Inc.Temporary message routing and destination selection
IL111154A0 (en)*1993-10-211994-12-29Martino Ii John ASystems and methods for electronic messaging
US5509000A (en)*1994-06-101996-04-16Motorola, Inc.Method and apparatus for routing information in a communication system
JPH088967A (en)1994-06-221996-01-12Oki Electric Ind Co LtdCirculation main management method
US5742905A (en)*1994-09-191998-04-21Bell Communications Research, Inc.Personal communications internetworking
JPH09185655A (en)1996-01-081997-07-15Hitachi Ltd Workflow management system and workflow management method
US6100885A (en)*1996-07-062000-08-08International Business Machines CorporationSupporting modification of properties via a computer system's user interface
JP3359249B2 (en)1996-12-132002-12-24キヤノン株式会社 Data processing system, message transmission device, data transmission processing method of data processing system, and message transmission processing method of message transmission device
AU4476800A (en)1999-04-262000-11-10Stanford Global Link CorporationGlobal unified messaging system and method
US6990379B2 (en)*1999-12-302006-01-24Microsoft CorporationMethod and apparatus for providing a dynamic resource role model for subscriber-requester based protocols in a home automation and control system
US6816944B2 (en)2000-02-022004-11-09Innopath SoftwareApparatus and methods for providing coordinated and personalized application and data management for resource-limited mobile devices
US7213027B1 (en)2000-03-212007-05-01Aol LlcSystem and method for the transformation and canonicalization of semantically structured data
US7099886B2 (en)*2000-07-202006-08-29Microsoft CorporationMethod and apparatus for identifying programming object attributes
US20020099586A1 (en)*2000-11-222002-07-25National Britannia Group Ltd.Method, system, and computer program product for risk assessment and risk management
US6868544B2 (en)2000-12-082005-03-15Telcordia Technologies, Inc.Method and system for general-purpose interactive notifications
US20020116242A1 (en)*2001-02-222002-08-22Vercellone James J.Emergency response synchronization matrix
US20030004766A1 (en)*2001-03-222003-01-02Ford Motor CompanyMethod for implementing a best practice idea
US6484092B2 (en)2001-03-282002-11-19Intel CorporationMethod and system for dynamic and interactive route finding
US6563462B1 (en)*2001-10-172003-05-13Northrop Grumman CorporationMillimeter-wave camera for radiometric imaging and communications
US20030093327A1 (en)*2001-11-132003-05-15Bellsouth Intellectual Property CorporationSystems and methods for processing an electronic request to purchase goods or services
US8234222B2 (en)*2001-12-202012-07-31Benefit Resource, Inc.Benefit management system and method
US7555440B2 (en)*2002-04-292009-06-30At&T Intellectual Property I, L.P.Immediate next task dispatch system and method
US20040122693A1 (en)*2002-12-232004-06-24Michael HatscherCommunity builder
US7970889B2 (en)2003-12-112011-06-28International Business Machines CorporationIntelligent subscription builder

Patent Citations (198)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6026153A (en)1984-09-142000-02-15Aspect Telecommunications CorporationPersonal communicator telephone system
US20030195698A1 (en)1993-05-182003-10-16Jones M. KellyNotification systems and methods with purpose message in notifications
US5812865A (en)1993-12-031998-09-22Xerox CorporationSpecifying and establishing communication data paths between particular media devices in multiple media device computing systems based on context of a user or users
US6557054B2 (en)1994-05-312003-04-29Richard R. ReismanMethod and system for distributing updates by presenting directory of software available for user installation that is not already installed on user station
US5559867A (en)1994-06-201996-09-24Sigma/Micro CorporationAutomated calling system with database updating
US5912947A (en)1994-06-201999-06-15Sigma/Micro CorporationPublic notification system and method
US20110047078A1 (en)1995-02-132011-02-24Intertrust Technologies Corp.Trusted Infrastructure Support Systems, Methods and Techniques for Secure Electronic Commerce Electronic Transactions and Rights Management
US6480578B1 (en)1995-06-292002-11-12Douglas C. AllportCommunity emergency telephone notification system
US5873084A (en)1996-01-181999-02-16Sun Microsystems, Inc.Database network connectivity product
US6021443A (en)1996-01-182000-02-01Sun Microsystems, Inc.Systems, software, and methods for routing events among publishers and subscribers on a computer network
US5946386A (en)1996-03-111999-08-31Xantel CorporationCall management system with call control from user workstation computers
US6633630B1 (en)1996-06-182003-10-14Cranberry Properties, LlcSystem for integrated electronic communications
US5859967A (en)1996-07-091999-01-12Faxsav IncorporatedMethod and system for relaying communications from authorized users
US5892906A (en)1996-07-191999-04-06Chou; Wayne W.Apparatus and method for preventing theft of computer devices
US5892909A (en)1996-09-271999-04-06Diffusion, Inc.Intranet-based system with methods for co-active delivery of information to multiple users
US6456594B1 (en)1996-10-312002-09-24Connect One, LlpMulti-protocol communications routing optimization
US6205148B1 (en)1996-11-262001-03-20Fujitsu LimitedApparatus and a method for selecting an access router's protocol of a plurality of the protocols for transferring a packet in a communication system
US20090201919A1 (en)*1997-03-072009-08-13Web Telephony Llc.System for providing hosted telephone services to a subscriber via the internet
US6032188A (en)1997-03-122000-02-29Microsoft CorporationMethod and system for controlling data flow
US6457046B1 (en)1997-06-262002-09-24Fujitsu LimitedInformation providing apparatus for server and computer-readable recording medium storing information providing program for server
US20030018771A1 (en)*1997-07-152003-01-23Computer Associates Think, Inc.Method and apparatus for generating and recognizing speech as a user interface element in systems and network management
US6158007A (en)1997-09-172000-12-05Jahanshah MorehSecurity system for event based middleware
US6919792B1 (en)1997-10-172005-07-19Thomson Licensing Inc.Control device and method in a system of household appliances
US6343321B2 (en)1997-10-272002-01-29Sun Microsystems, Inc.Method and apparatus for network transport independence
US5999978A (en)*1997-10-311999-12-07Sun Microsystems, Inc.Distributed system and method for controlling access to network resources and event notifications
US6091724A (en)1997-11-202000-07-18International Business Machines CorporationRouting messages within a network using the data content of the message
US6211871B1 (en)1997-11-212001-04-03International Business Machines CorporationNamed bookmark sets
US6041360A (en)1997-11-212000-03-21International Business Machines CorporationWeb browser support for dynamic update of bookmarks
US6037934A (en)1997-11-212000-03-14International Business Machines CorporationNamed bookmark sets
US6208995B1 (en)1997-11-242001-03-27International Business Machines CorporationWeb browser download of bookmark set
US6098099A (en)1998-04-212000-08-01International Business Machines CorporationThird-party notification by network directory server
US20010018718A1 (en)1998-05-082001-08-30Ludtke Harold AaronMedia manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices
US6226360B1 (en)1998-05-192001-05-01At&T Corp.System and method for delivery of pre-recorded voice phone messages
US6195703B1 (en)1998-06-242001-02-27Emc CorporationDynamic routing for performance partitioning in a data processing network
US6446114B1 (en)1998-07-132002-09-03At&T Corp.Messaging agent and method for retrieving and consolidating messages
US6480885B1 (en)1998-09-152002-11-12Michael OlivierDynamically matching users for group communications based on a threshold degree of matching of sender and recipient predetermined acceptance criteria
US20060067309A1 (en)1998-09-242006-03-30Zhakov Vyacheslav ICall transfer using session initiation protocol (SIP)
US6643684B1 (en)1998-10-082003-11-04International Business Machines CorporationSender- specified delivery customization
US6112246A (en)1998-10-222000-08-29Horbal; Mark T.System and method for accessing information from a remote device and providing the information to a client workstation
KR20000037554A (en)1998-12-012000-07-05이계철 Dynamic Routing Based Call Path Establishment and Reconfiguration Method of Asynchronous Transfer Mode Switching System
US20020091789A1 (en)1998-12-032002-07-11Sanjeev KatariyaScalable computing system for presenting customized aggregation of information
US6201856B1 (en)1998-12-152001-03-13Ameritech CorporationEmergency telephone call notification service system and method
US6463462B1 (en)1999-02-022002-10-08Dialogic Communications CorporationAutomated system and method for delivery of messages and processing of message responses
US6483804B1 (en)1999-03-012002-11-19Sun Microsystems, Inc.Method and apparatus for dynamic packet batching with a high performance network interface
US7032030B1 (en)1999-03-112006-04-18John David CodignottoMessage publishing system and method
US6173310B1 (en)*1999-03-232001-01-09Microstrategy, Inc.System and method for automatic transmission of on-line analytical processing system report output
US6643705B1 (en)1999-03-292003-11-04Microsoft CorporationRouting of electronic messages using a routing map and a stateful script engine
US20040162943A1 (en)1999-04-222004-08-19International Business Machines CorporationSystem and method for managing cachable entities
US6725333B1 (en)1999-04-222004-04-20International Business Machines CorporationSystem and method for managing cachable entities
US6564261B1 (en)1999-05-102003-05-13Telefonaktiebolaget Lm Ericsson (Publ)Distributed system to intelligently establish sessions between anonymous users over various networks
WO2000069132A1 (en)1999-05-112000-11-16Vista Group Pty LimitedTelecommunications system
US20040095939A1 (en)1999-05-252004-05-20Jin YangMethod and apparatus for telecommunications using internet protocol
US6687742B1 (en)1999-06-032004-02-03Toshiba Tec Kabushiki KaishaCommunication control method for electronic mail system
US20030135567A1 (en)1999-06-232003-07-17Mail Registry, Inc.Systems and methods for automatically forwarding electronic mail when the recipient is otherwise unknown
US6381594B1 (en)1999-07-122002-04-30Yahoo! Inc.System and method for personalized information filtering and alert generation
US6502093B1 (en)1999-07-212002-12-31Oracle CorporationApproach for publishing data in a relational database system
US6754832B1 (en)1999-08-122004-06-22International Business Machines CorporationSecurity rule database searching in a network security environment
US6442565B1 (en)1999-08-132002-08-27Hiddenmind Technology, Inc.System and method for transmitting data content in a computer network
US6868498B1 (en)1999-09-012005-03-15Peter L. KatsikasSystem for eliminating unauthorized electronic mail
US6578000B1 (en)1999-09-032003-06-10Cisco Technology, Inc.Browser-based arrangement for developing voice enabled web applications using extensible markup language documents
US6507817B1 (en)1999-09-032003-01-14Cisco Technology, Inc.Voice IP approval system using voice-enabled web based application server
US6965917B1 (en)1999-09-072005-11-15Comverse Ltd.System and method for notification of an event
US7558951B2 (en)1999-09-152009-07-07Dw Holdings, Inc.System and method for secure transactions over a network
US6643682B1 (en)1999-09-222003-11-04International Business Machines CorporationPublish/subscribe data processing with subscription points for customized message processing
US6680943B1 (en)1999-10-012004-01-20Nortel Networks LimitedEstablishing bi-directional communication sessions across a communications network
US20100064020A1 (en)1999-11-232010-03-11Frank Michael WeyerMethod, apparatus and business system for online communication with online and offline recipients
US20030126250A1 (en)1999-12-142003-07-03Neeraj JhanjiSystems for communicating current and future activity information among mobile internet users and methods therefor
US6404880B1 (en)1999-12-242002-06-11Alcatel Usa Sourcing, L.P.Method and apparatus for delivering critical information
US6604093B1 (en)1999-12-272003-08-05International Business Machines CorporationSituation awareness system
WO2001054008A2 (en)1999-12-302001-07-26Makio KogaWorldwide early warning network and method of use
US6671715B1 (en)2000-01-212003-12-30Microstrategy, Inc.System and method for automatic, real-time delivery of personalized informational and transactional data to users via high throughput content delivery device
US6910070B1 (en)2000-01-242005-06-21Oracle International CorporationMethods and systems for asynchronous notification of database events
US6816878B1 (en)2000-02-112004-11-09Steven L. ZimmersAlert notification system
US6689742B1 (en)2000-02-252004-02-10Chancellors, Masters And Scholars Of The University Of OxfordNY-ESO-1 peptide derivatives, and uses thereof
US7049971B2 (en)2000-03-142006-05-23Guillory Andre PSystem for selective notification of severe weather events
US20070179828A1 (en)2000-03-222007-08-02Alex ElkinMethod and system for top-down business process definition and execution
US6728715B1 (en)2000-03-302004-04-27International Business Machines CorporationMethod and system for matching consumers to events employing content-based multicast routing using approximate groups
US20010046234A1 (en)2000-04-102001-11-29Hemant AgrawalMethod and apparatus for S.I.P./H. 323 interworking
US6643661B2 (en)2000-04-272003-11-04Brio Software, Inc.Method and apparatus for implementing search and channel features in an enterprise-wide computer system
US7372833B2 (en)2000-05-102008-05-13Nokia CorporationResource allocation in packet network
US7305448B2 (en)2000-05-162007-12-04Sony CorporationInformation-presenting apparatus, information-presenting method, information-processing apparatus, information-processing method and program-storing medium
US7424518B2 (en)2000-05-162008-09-09Sony CorporationInformation-presenting apparatus, information-presenting method, information-processing apparatus, information-processing method and program-storing medium
US20020035607A1 (en)2000-05-252002-03-21Daniel CheckowayE-mail gateway system
US20020120760A1 (en)2000-05-262002-08-29Gur KimchiCommunications protocol
US7216145B2 (en)2000-06-232007-05-08Mission Communications, LlcEvent notification system
US6886043B1 (en)2000-06-282005-04-26Nortel Networks LimitedCommunications network
US6990633B1 (en)2000-07-282006-01-24Seiko Epson CorporationProviding a network-based personalized newspaper with personalized content and layout
US6895406B2 (en)2000-08-252005-05-17Seaseer R&D, LlcDynamic personalization method of creating personalized user profiles for searching a database of information
US20020072966A1 (en)*2000-08-312002-06-13Eldering Charles A.System for providing targeted advertisements using advertiser-specific target groups
US20040039517A1 (en)2000-09-062004-02-26Alfred BiesingerIntegrated traffic monitoring system
US7103592B2 (en)2000-09-272006-09-05Pertinence Data IntelligenceMethod and apparatus providing recommendations based on automatically enriched user profile
US7249197B1 (en)2000-10-202007-07-24Nortel Networks LimitedSystem, apparatus and method for personalising web content
US7577581B1 (en)2000-10-312009-08-18Hewlett-Packard Development Company, L.P.Method for targeting promotions to individual associated with a vehicle
US7769611B1 (en)2000-11-032010-08-03International Business Machines CorporationSystem and method for automating travel agent operations
US7474892B2 (en)2000-11-092009-01-06Palm, Inc.Notification mechanisms in a wireless device
US20030036960A1 (en)2000-11-142003-02-20Ken SuzakiEmail transmitting method using computer interactive communication network and communication system thereof
US20020112073A1 (en)2000-12-112002-08-15Melampy Patrick J.System and method for assisting in controlling real-time transport protocol flow through multiple networks via media flow routing
US6971065B2 (en)2000-12-132005-11-29National Instruments CorporationAutomatically configuring a graphical program to publish or subscribe to data
US20020072348A1 (en)2000-12-132002-06-13Motorola, Inc.Mobile personal security monitoring service
US7287230B2 (en)2000-12-132007-10-23National Instruments CorporationConfiguring a GUI element to subscribe to data
US7458080B2 (en)2000-12-192008-11-25Microsoft CorporationSystem and method for optimizing user notifications for small computer devices
US7937655B2 (en)2000-12-222011-05-03Oracle International CorporationWorkflows with associated processes
US20020111855A1 (en)2001-01-232002-08-15Hammerstad Diane R.Delivery of time significant advertising
US20020103850A1 (en)2001-01-312002-08-01Moyer Stanley L.System and method for out-sourcing the functionality of session initiation protocol (SIP) user agents to proxies
US20020103898A1 (en)2001-01-312002-08-01Moyer Stanley L.System and method for using session initiation protocol (SIP) to communicate with networked appliances
US20020116336A1 (en)2001-02-052002-08-22Athanassios DiacakisMethod and device for displaying contact information in a presence and availability management system
US20020116393A1 (en)2001-02-162002-08-22Matthew Aaron GoldsteinMethod for automatic electronic transmission of lost person information
US7409430B2 (en)*2001-02-282008-08-05Sap AgNotification message distribution
US7133869B2 (en)2001-03-062006-11-07Knowledge Vector, Inc.Methods and systems for and defining and distributing information alerts
US20020184521A1 (en)*2001-03-142002-12-05Microsoft CorporationAuthorizing a requesting entity to operate upon data structures
US20020169839A1 (en)2001-03-202002-11-14Bernel GoldbergMethod and system for modifying the content of e-mail transmissions based on customization settings
US20090110174A1 (en)2001-03-202009-04-30Worldcom, Inc.Caller treatment in a sip network
US20080313003A1 (en)2001-03-302008-12-18Racca Felix GDesigning business processes using parametric roles
US20030187992A1 (en)2001-05-072003-10-02Steenfeldt Rico WerniService triggering framework
US20060253585A1 (en)2001-05-092006-11-09Fein Gene SMethod, apparatus and program product providing business processes using media identification and tracking of associated user preferences
US20030217109A1 (en)2001-05-152003-11-20Ordille Joann J.Method and apparatus for automatic notification and response
WO2002093886A2 (en)2001-05-152002-11-21Avaya Technology Corp.Method and apparatus for automatic notification and response
US6427001B1 (en)2001-06-072002-07-30Bellsouth Intellectual Property CorporationSystem and method for notification of 911 telephone calls using a link monitoring system
US8051168B1 (en)2001-06-192011-11-01Microstrategy, IncorporatedMethod and system for security and user account integration by reporting systems with remote repositories
US20030009497A1 (en)2001-07-052003-01-09Allen YuCommunity based personalization system and method
US20030014297A1 (en)2001-07-102003-01-16International Business Machines CorporationAutomated location-based disruption recovery and surrogate selection service
US20050171958A9 (en)*2001-08-062005-08-04Qingwen ChengMethod and system for implementing policies, resources and privileges for using services in LDAP
US20030065874A1 (en)2001-09-102003-04-03Marron Pedro JoseLDAP-based distributed cache technology for XML
US20030055829A1 (en)*2001-09-202003-03-20Rajit KamboMethod and apparatus for automatic notification of database events
US7346662B2 (en)2001-09-272008-03-18At&T Deleware Intellectual Property, Inc.Methods, systems, and products for indicating receipt of electronic mail
US20090235084A1 (en)*2001-11-062009-09-17Ferraro Eugene FAnonymous reporting system
US20030093417A1 (en)2001-11-152003-05-15Hideko KagimasaMethod and apparatus for document information management
US7016477B2 (en)2001-11-272006-03-21Bellsouth Intellectual Property CorporationMethod of notifying a party of an emergency
US20030119531A1 (en)2001-12-212003-06-26Patton Charles M.Dynamic selection of avatar policies based on physical device location and derived user control
US6654770B2 (en)2002-01-102003-11-25Mycarstats.Com, LlcAutomobile safety and maintenance information systems and methods and related services
US20040015778A1 (en)*2002-03-162004-01-22Catherine BrittonElectronic healthcare management form creation
US20040066925A1 (en)2002-03-292004-04-08Longboard, Inc.System and method of triggering services for call control
US20040006606A1 (en)*2002-03-292004-01-08Len MarottaSystem and method for cataloging advertising stored online
US20030193558A1 (en)2002-04-102003-10-16International Business Machines CorporationMedia-enhanced greetings and/or responses in communication systems
US7359493B1 (en)2002-04-112008-04-15Aol Llc, A Delaware Limited Liability CompanyBulk voicemail
US20090037548A1 (en)2002-05-142009-02-05Avaya Inc.Method and Apparatus for Automatic Notification and Response
US7436947B2 (en)2002-05-142008-10-14Avaya Inc.Method and apparatus for automatic notification and response based on communication flow expressions
US20030215067A1 (en)2002-05-142003-11-20Ordille Joann J.Method and apparatus for automatic notification and response based on communication flow expressions
CA2486135C (en)2002-05-172012-11-27America Online, Inc.Providing supplemental contact information corresponding to a referenced individual
US20070299685A1 (en)2002-06-062007-12-27Microsoft CorporationMethods and Systems for Generating Electronic Program Guides
US20030229722A1 (en)2002-06-112003-12-11Siemens Information And Communication Networks, Inc.Methods and apparatus for processing an instant message
US7626952B2 (en)2002-06-182009-12-01At&T Intellectual Property I, L.P.Device for aggregating, translating, and disseminating communications within a multiple device environment
US20040003058A1 (en)2002-06-262004-01-01Nokia, Inc.Integration of service registration and discovery in networks
US20070203741A1 (en)2002-06-262007-08-30Avaya Technology CorpMethod and Apparatus for Automatic Notification and Response
US20040015371A1 (en)*2002-07-162004-01-22Zachary ThomasSystem and method for managing job applicant data
US20040029626A1 (en)2002-08-072004-02-12Ed AnnunziataSystem and method for modifying actions of a group of characters via group interactions
US20040029625A1 (en)2002-08-072004-02-12Ed AnnunziataGroup behavioral modification using external stimuli
US20090082076A1 (en)2002-08-072009-03-26Sony Computer Entertainment America Inc.Emotion-based game character Manipulation
US7452268B2 (en)2002-08-072008-11-18Sony Computer Entertainment America Inc.System and method for modifying actions of a group of characters via group interactions
US20040028077A1 (en)2002-08-122004-02-12Gray Thomas A.Personalizable and customizable feature execution for IP telephony using operational semantics and deontic task trees
US20080046510A1 (en)2002-09-062008-02-21Beauchamp Tim JMethod for selectively sending a notification to an instant messaging device
US20040059705A1 (en)2002-09-252004-03-25Wittke Edward R.System for timely delivery of personalized aggregations of, including currently-generated, knowledge
US20040064387A1 (en)*2002-09-302004-04-01Clarke William D.Customized event messaging in an electronic bill presentment and payment system
US20050021622A1 (en)2002-11-262005-01-27William CullenDynamic subscription and message routing on a topic between publishing nodes and subscribing nodes
US7219153B1 (en)2002-12-022007-05-15Cisco Technology, Inc.Methods and apparatus for distributing content
US20040111476A1 (en)2002-12-062004-06-10Nokia CorporationSystem, method and computer program product for the delivery of media content
US20060056628A1 (en)2002-12-122006-03-16International Business Machines CorporationMethods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system
US20080249843A1 (en)2003-01-312008-10-09Gross John NNotification System and Method for Multiple Media Queues
US20040153413A1 (en)2003-01-312004-08-05Gross John N.Notification system and method for media Queue
US20070168550A1 (en)*2003-03-132007-07-19Yi-Min WangSummary-based routing for content-based event distribution networks
US7469272B2 (en)2003-03-262008-12-23Microsoft CorporationSystem and method utilizing test notifications
US7853250B2 (en)2003-04-032010-12-14Network Security Technologies, Inc.Wireless intrusion detection system and method
US20040225733A1 (en)*2003-05-062004-11-11Kaj TesinkMulticasting notification system
US20040254937A1 (en)2003-06-162004-12-16Peter GernoldGenerating data subscriptions based on application data
US7664233B1 (en)2003-06-252010-02-16Everbridge, Inc.Emergency and non-emergency telecommunications notification system
US7895263B1 (en)2003-06-252011-02-22Everbridge, Inc.Emergency and non-emergency telecommunications geo-notification system
US20050033657A1 (en)2003-07-252005-02-10Keepmedia, Inc., A Delaware CorporationPersonalized content management and presentation systems
US20050021383A1 (en)*2003-07-252005-01-27Fliess Kevin V.Dynamic role generator
US20090110159A1 (en)*2003-10-142009-04-30Rohit Satish KalbagMessage delivery using a voice mail system
US20050086469A1 (en)*2003-10-172005-04-21Microsoft CorporationScalable, fault tolerant notification method
US20050114401A1 (en)2003-11-172005-05-26Conkel Dale W.Enterprise directory service domain controller replication alert and repair
US7278065B2 (en)2003-11-172007-10-02Electronic Data Systems CorporationEnterprise directory service domain controller replication alert and repair
US7685265B1 (en)2003-11-202010-03-23Microsoft CorporationTopic-based notification service
US20090204977A1 (en)*2003-11-282009-08-13Globestar SystemsEvent management system
US7877694B2 (en)2003-12-052011-01-25Microsoft CorporationHosted notifications templates
US20050165743A1 (en)2003-12-312005-07-28Krishna BharatSystems and methods for personalizing aggregated news content
US20050262016A1 (en)*2004-02-112005-11-24Mt One, Inc.Integrated on-line system for identifying and valuing foreclosure properties
US7228331B2 (en)2004-05-042007-06-05Nokia, Inc.User oriented penalty count random rejection of electronic messages
US20070180490A1 (en)2004-05-202007-08-02Renzi Silvio JSystem and method for policy management
US7558558B2 (en)2004-06-072009-07-07Cml Emergency Services Inc.Automated mobile notification system
US7084775B1 (en)2004-07-122006-08-01User-Centric Ip, L.P.Method and system for generating and sending user-centric weather alerts
US7529850B2 (en)2005-03-112009-05-05International Business Machines CorporationMethod and system for rapid dissemination of public announcements
US7496183B1 (en)2005-04-282009-02-24Techradium, Inc.Method for providing digital notification
US7869576B1 (en)2005-04-282011-01-11Techradium, Inc.Power management system for a plurality of at least partially rechargeable vehicles
US7418085B2 (en)2005-04-282008-08-26Techradium, Inc.Special needs digital notification and response system
US7519165B1 (en)2005-04-282009-04-14Techradium, Inc.Method for providing digital notification and receiving responses
US7773729B2 (en)2005-04-282010-08-10Techradium, Inc.Digital notification and response system with real time translation and advertising features
US7624171B1 (en)2005-04-282009-11-24Techradium, Inc.Method for digitally notifying customers of a utility
US7684548B1 (en)2005-04-282010-03-23Techradium, Inc.Notification and response system with attendance tracking features
US7685245B1 (en)2005-04-282010-03-23Techradium, Inc.Digital notification and response system
US7522038B2 (en)2005-08-292009-04-21Stericycle, Inc.Emergency contact system and method
US8023621B2 (en)2006-01-172011-09-20LReady, Inc.Dynamic family disaster plan
US7283045B1 (en)2006-01-262007-10-16The United States Of America As Represented By The Secretary Of The ArmySystem and method for semi-distributed event warning notification for individual entities, and computer program product therefor
US20080005278A1 (en)2006-06-122008-01-03Betz Joseph PSystem and Method for Scalable Distribution of Semantic Web Updates
US7769495B1 (en)2007-08-102010-08-03Techradium, Inc.Power management system for a hydrogen generation network
US7904208B1 (en)2007-08-102011-03-08Tech Radium, Inc.Computer instructions for centralized management of a hydrogen generation network
US7769496B1 (en)2007-08-102010-08-03Techradium, Inc.Method for centralized management of a hydrogen generation network
US7808378B2 (en)2007-10-172010-10-05Hayden Robert LAlert notification system and method for neighborhood and like groups

Non-Patent Citations (83)

* Cited by examiner, † Cited by third party
Title
"EP Application No. 02 731 823.7 Office Action Dec. 23, 2009", , Publisher: EPO, Published in: EP.
"EP Application No. 02731823.7 Examination Report Nov. 28, 2008", , Publisher: EPO, Published in: EP.
"EP Application No. 05 251 608.5-2416 Office Action Mar. 20, 2009", , Publisher: EPO, Published in: EP.
"EP Application No. 05251607.7 Decision to Refuse Sep. 24, 2008", , Publisher: EPO, Published in: EP.
"EP Application No. 05251607.7 Office Action Apr. 18, 2006", , Publisher: EPO, Published in: EP.
"EP Application No. 05251607.7 Office Action Oct. 2, 2006", , Publisher: EPO, Published in: EP.
"EP Application No. 05251608.5 Office Action Apr. 6, 2006", , Publisher: EPO, Published in: EP.
"EP Application No. 05251608.5 Office Action Sep. 27, 2006", , Publisher: EPO, Published in: EP.
"EP Application No. 05251609.3 Office Action Aug. 29, 2006", , Publisher: EPO, Published in: EP.
"EP Application No. 05251609.3 Office Action Jan. 23, 2008", , Publisher: EPO, Published in: EP.
"Wireless Access Protocol (WAP) 1.2.1", "http://www.wapforum.org/what/technical-1-2-1.htm", Jun. 2000, Publisher: WAP Forum Jun. 2000 (WAP 1.2.1) Specifications.
Cardelli et al., "Service Combinators for Web Computing", "IEEE Transactions on Software Engineering", , pp. 309-316, vol. 25, No. 3.
Dalgic et al., "True Number Portability and Advanced Call Screening in a SIP-Based IP Telephony System", "IEEE Communications Magazine XP000835310", Jul. 1999, pp. 96-101, vol. 37, No. 7, Publisher: IEEE.
Dinardo, Carla, "CA Application No. 2,447,436 Office Action Jun. 13, 2008", , Publisher: CIPO, Published in: CA.
EP App. No. 02731823.7 Office Action Nov. 28, 2008.
EP App. No. 05251632.5 Office Action Apr. 11, 2006.
EP App. No. 05251632.5 Office Action Oct. 2, 2006.
EP App. No. 05251633.3 Office Action Apr. 6, 2006.
EP App. No. 05251633.3 Office Action Oct. 2, 2006.
Garcia Bolos R, EP App. No. 05251608.5 Decision to Refuse Mar. 20, 2009.
Garcia Bolos, R., "EP Application No. 05251607.7 European Search Report Jul. 27, 2005", , Publisher: EPO, Published in: EP.
Garcia Bolos, R., "EP Application No. 05251607.7 Summons to Oral Proceedings Feb. 15, 2008", , Publisher: EPO, Published in: EP.
Garcia Bolos, R., "EP Application No. 05251608.5 Search Report Jul. 27, 2005", , Publisher: EPO, Published in: EP.
Garcia Bolos, R., "EP Application No. 05251609.3 European Search Report Jul. 27, 2005", , Publisher: EPO, Published in: EP.
Garcia, Bolos R., "EP Application No. 05251608.5 Summons Sep. 17, 2008", , Publisher: EPO, Published in: EP.
Handley et al., "SIP: Session Initiation Protocol", "Network Working Group", Mar. 1999, pp. 1-153.
Hu, Jinsong, "U.S. Appl. No. 10/999,891 Notice of Allowance Jan. 13, 2010", , Publisher: USPTO, Published in: US.
Hu, Jinsong, "U.S. Appl. No. 10/999,891 Office Action Apr. 16, 2009", , Publisher: USPTO, Published in: US.
Hu, Jinsong, "U.S. Appl. No. 10/999,891 Office Action Jul. 9, 2009", , Publisher: USPTO, Published in: US.
Hu, Jinsong, "U.S. Appl. No. 10/999,891 Office Action Mar. 14, 2008", , Publisher: USPTO, Published in: US.
Ismail, Shawki S., "PCT Application No. PCT/US 02/15513 Office Action Jan. 26, 2010", , Publisher: PCT, Published in: PCT.
K. Tauchi, "JP Application No. 2002-590633 Office Action Jan. 7, 2008", , Publisher: JPO, Published in: JP.
Kim P, U.S. Appl. No. 10/999,890 Interview Summary Apr. 11, 2008.
Kim, Paul, "U.S. Appl. No. 10/999,890 Office Action Aug. 17, 2007", , Publisher: USPTO, Published in: US.
Kim, Paul, "U.S. Appl. No. 10/999,890 Office Action Aug. 29, 2008", , Publisher: USPTO, Published in: US.
Kim, Paul, "U.S. Appl. No. 10/999,890 Office Action Dec. 27, 2007", , Publisher: USPTO, Published in: US.
Kim, Paul, "U.S. Appl. No. 10/999,890 Office Action Feb. 1, 2007", , Publisher: USPTO, Published in: US.
Kim, Paul, "U.S. Appl. No. 10/999,890 Office Action May 11, 2007", , Publisher: USPTO, Published in: US.
Kim, Paul, "U.S. Appl. No. 12/243,416 Office Action Apr. 28, 2011", , Publisher: USPTO, Published in: US.
Kim, Paul, "U.S. Appl. No. 12/243,416 Office Action Feb. 23, 2011", , Publisher: USPTO, Published in: US.
Lennox et al., "CPL: A Language for User Control of Internet Telephony Services", Nov. 14, 2000, pp. 1-64, Publisher: Internet Engineering Task Force.
Lennox et al., "CPL: A Language for User Control of Internet Telephony Services", Nov. 21, 2001.
McConnell S, "Who Needs Software Engineering?," IEEE Software Jan. 2001.
Miklos, Zoltan, "Towards an Access Control Mechanism for Wide-area Publish/Subscribe Systems".
Murata et al., "Integrating routing and resource reservation mechanisms in real-time multicast protocols", "Proceedings of the 16th IEEE International Conference on Distributed Computing Systems XP010167618", May 27, 1996, pp. 141-148, Publisher: IEEE Computer Society.
Platzer, C., "PCT Application No. PCT/US 02/15513 International Search Report Apr. 28, 2003", , Publisher: PCT, Published in: PCT.
Porter We, U.S. Appl. No. 11/083,070 Office Action Oct. 28, 2010.
Porter, William Ernest, "U.S. Appl. No. 11/083,070 Office Action Aug. 3, 2010", , Publisher: USPTO, Published in: US.
Porter, William Ernest, "U.S. Appl. No. 11/083,070 Office Action Aug. 6, 2009", , Publisher: USPTO, Published in: US.
Porter, William Ernest, "U.S. Appl. No. 11/083,070 Office Action Mar. 3, 2010", , Publisher: USPTO, Published in: US.
Porter, William Ernest, "U.S. Appl. No. 11/083,070 Office Action Mar. 31, 2011", , Publisher: USPTO, Published in: US.
Reddy, Jacinta, "PCT Application No. PCT/US2002/15513 Partial International Search Report Feb. 3, 2003", , Publisher: PCT, Published in: PCT.
Rosenberg et al., "SIP: Session Initiation Protocol," RFC 3261, Jun. 2002.
Rosenberg et al., "The Heart of Wireless UC Control: Communications Personalization", "The Unified-View", 2000-2001, pp. 1-5.
Schulzrinne et al., "SIP Caller Preferences and Callee Capabilities", "Internet Draft, Columbia University", Nov. 2000, Publisher: Internet Engineering Task Force, Published in: US.
Sudo T, JP App. No. 2002-590633 Office Action Feb. 23, 2009.
Sudo, T., "JP Application No. 2002-590633 Office Action Sep. 28, 2009", , Publisher: JPO, Published in: JP.
T. Sudo, "JP Application No. 2002-590633 Office Action Feb. 9, 2009", , Publisher: JPO, Published in: JP.
Tanenbaum A, Structured computer organization, 2nd ed., Prentice-Hall 1984.
Tarumi et al., "Workflow Implementation with Rule-Based E-mail", "Journal of the Transactions of Information Processing Society of Japan", Jun. 15, 1995, pp. 1322-1331, vol. 36, No. 6, Publisher: Information Processing Society of Japan, Published in: JP.
Tauchi K, JP App. No. 2002-590633 Office Action Jan. 9, 2008.
Truong, Lan Dai T., "U.S. Appl. No. 10/184,236 Advisory Action Feb. 13, 2007", , Publisher: USPTO, Published in: IS.
Truong, Lan Dai T., "U.S. Appl. No. 10/184,236 Examiner's Answer Brief Sep. 3, 2009", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 10/184,236 Office Action Aug. 11, 2005", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 10/184,236 Office Action Mar. 10, 2006", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 10/184,236 Office Action Sep. 1, 2006", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 10/184,236 Office Action Sep. 11, 2006", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 11/743,994 Office Action Apr. 7, 2009", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 11/743,994 Office Action Nov. 25, 2009", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 12/243,442 Office Action Jun. 15, 2010", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 12/243,442 Office Action Jun. 7, 2011", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 12/243,442 Office Action Nov. 22, 2010", , Publisher: USPTO, Published in: US.
Truong, Lan Dai T., "U.S. Appl. No. 12/243,442 Restriction Requirement Feb. 3, 2011", , Publisher: USPTO, Published in: US.
Vahid F, "The Softening of Hardware," Computer Apr. 2003.
Wang et al., "Security Issues and Requrements for Internet-Scale Publish-Subscribe Systems", "Proceedings of the 35th Hawaii International Conference on System Sciences", Sep. 2002, Publisher: IEEE.
Won-Ho G, KR App. No. 10-2003-7014910 Office Action Nov. 10, 2008.
Won-Ho Gye, "KR Application No. 10-2003-7014910 Office Action Aug. 17, 2009", , Publisher: KIPO, Published in: KR.
Won-Ho Gye, "KR Application No. 10-2003-7014910 Office Action Jan. 14, 2010", , Publisher: KIPO, Published in: KR.
Won-Ho Gye, "KR Application No. 10-2003-7014910 Preliminary Rejection Nov. 10, 2008", , Publisher: KIPO, Published in: KR.
Yi D, U.S. Appl. No. 11/083,365 Office Action Oct. 28, 2010.
Yi, David, "U.S. Appl. No. 11/083,365 Office Action Feb. 3, 2011"Publisher: USPTO, Published in: US.
Yi, David, "U.S. Appl. No. 11/083,365 Office Action May 26, 2010", , Publisher: USPTO, Published in: US.
Yi, David, "U.S. Appl. No. 11/083,365 Office Action May 26, 2011", , Publisher: USPTO, Published in: US.

Cited By (10)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US9147213B2 (en)2007-10-262015-09-29Zazzle Inc.Visualizing a custom product in situ
US9183582B2 (en)2007-10-262015-11-10Zazzle Inc.Tiling process for digital image retrieval
US9355421B2 (en)2007-10-262016-05-31Zazzle Inc.Product options framework and accessories
US20130060801A1 (en)*2011-08-312013-03-07Robert Irven Beaver, IIIProduct Options Framework And Accessories
US8856160B2 (en)*2011-08-312014-10-07Zazzle Inc.Product options framework and accessories
US9436963B2 (en)2011-08-312016-09-06Zazzle Inc.Visualizing a custom product in situ
US10608936B1 (en)*2018-10-102020-03-31Intuit Inc.Implementing data sharing features in legacy software applications
US12412155B2 (en)2019-05-072025-09-09Zazzle Inc.System and method for role-based collaborative design of custom products based on manufacturing constraints
US12118598B2 (en)2021-03-302024-10-15Zazzle Inc.Generating and using tokens to request services and access to a product collaboration platform
US12314992B2 (en)2021-10-212025-05-27Zazzle Inc.Method and computer readable storage media for interfacing with third party platforms via collaboration sessions to customize products

Also Published As

Publication numberPublication date
US7734731B2 (en)2010-06-08
US8001182B2 (en)2011-08-16
US20050234993A1 (en)2005-10-20
US20050232401A1 (en)2005-10-20
US20050249337A1 (en)2005-11-10
EP1585276A1 (en)2005-10-12
US20050208941A1 (en)2005-09-22
EP1585277A1 (en)2005-10-12
EP1585251A1 (en)2005-10-12
EP1578073A1 (en)2005-09-21
US20050223070A1 (en)2005-10-06
US20130254285A1 (en)2013-09-26
US20050210062A1 (en)2005-09-22
US8516045B2 (en)2013-08-20
US9124643B2 (en)2015-09-01
US8566311B2 (en)2013-10-22

Similar Documents

PublicationPublication DateTitle
US8495163B2 (en)Method and apparatus for a publish-subscribe system with templates for role-based view of subscriptions
US20090030936A1 (en)Method and Apparatus for a Publish-Subscribe System with Access Controls
Malone et al.The information lens: An intelligent system for information sharing and coordination
Rice et al.Usage and Outcomes of Electronic Messaging at an R&DOrganization: Situational Constraints, Job Level, and Media Awareness
US7428531B2 (en)Customer information management system and method
US5216603A (en)Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants
US8271516B2 (en)Social networks service
Caliandro et al.Older people and smartphone practices in everyday life: An inquire on digital sociality of Italian older users
US20070043720A1 (en)System, apparatus and methods for storage, retrieval and exchange of personal profile data enabling consistent interpretation across multiple device, applications and data services
US20140244765A1 (en)System and method for messaging and notification.
US20150025904A1 (en)System and method for patient and healthcare-related messaging
US20230107408A1 (en)Contact tracing as a service using a database system
US20030130866A1 (en)System and method for facilitating the care of an individual and dissemination of infromation
US20070250408A1 (en)Data model for business relationships
US11552922B2 (en)Enhancing online contents based on digital alliance data
Schaffhausen et al.What patients and members of their support networks ask about transplant program data
Owolabi et al.mHealth: knowledge and use among doctors and nurses in public secondary health-care facilities of Lagos, Nigeria
Dwivedi et al.Telehealth systems: considering knowledge management and ICT issues
US10897487B2 (en)Communication-based digital alliance management
Mao et al.What influence virtual workers’ communication?: Exploring network inertia and media affordance theories
Cardenas et al.Who should get the scarce ICU bed? The US public’s view on triage in the time of COVID-19
JP3917686B2 (en) Database management system
JP2003058553A (en)Management server and program
WorkieKiribati Health Systems Strengthening Project (P176306)
HancockChatHealth: Text message support for new parents

Legal Events

DateCodeTitleDescription
ASAssignment

Owner name:AVAYA TECHNOLOGY CORP., NEW JERSEY

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ORDILLE, JOANN J.;TANDON, NINA M.;TENDICK, PATRICK;AND OTHERS;REEL/FRAME:016328/0221;SIGNING DATES FROM 20050218 TO 20050222

Owner name:AVAYA TECHNOLOGY CORP., NEW JERSEY

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ORDILLE, JOANN J.;TANDON, NINA M.;TENDICK, PATRICK;AND OTHERS;SIGNING DATES FROM 20050218 TO 20050222;REEL/FRAME:016328/0221

ASAssignment

Owner name:CITIBANK, N.A., AS ADMINISTRATIVE AGENT, NEW YORK

Free format text:SECURITY AGREEMENT;ASSIGNORS:AVAYA, INC.;AVAYA TECHNOLOGY LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:020156/0149

Effective date:20071026

Owner name:CITIBANK, N.A., AS ADMINISTRATIVE AGENT,NEW YORK

Free format text:SECURITY AGREEMENT;ASSIGNORS:AVAYA, INC.;AVAYA TECHNOLOGY LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:020156/0149

Effective date:20071026

ASAssignment

Owner name:CITICORP USA, INC., AS ADMINISTRATIVE AGENT, NEW Y

Free format text:SECURITY AGREEMENT;ASSIGNORS:AVAYA, INC.;AVAYA TECHNOLOGY LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:020166/0705

Effective date:20071026

Owner name:CITICORP USA, INC., AS ADMINISTRATIVE AGENT, NEW YORK

Free format text:SECURITY AGREEMENT;ASSIGNORS:AVAYA, INC.;AVAYA TECHNOLOGY LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:020166/0705

Effective date:20071026

Owner name:CITICORP USA, INC., AS ADMINISTRATIVE AGENT,NEW YO

Free format text:SECURITY AGREEMENT;ASSIGNORS:AVAYA, INC.;AVAYA TECHNOLOGY LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:020166/0705

Effective date:20071026

ASAssignment

Owner name:AVAYA INC, NEW JERSEY

Free format text:REASSIGNMENT;ASSIGNORS:AVAYA TECHNOLOGY LLC;AVAYA LICENSING LLC;REEL/FRAME:021156/0082

Effective date:20080626

Owner name:AVAYA INC,NEW JERSEY

Free format text:REASSIGNMENT;ASSIGNORS:AVAYA TECHNOLOGY LLC;AVAYA LICENSING LLC;REEL/FRAME:021156/0082

Effective date:20080626

ASAssignment

Owner name:AVAYA TECHNOLOGY LLC, NEW JERSEY

Free format text:CONVERSION FROM CORP TO LLC;ASSIGNOR:AVAYA TECHNOLOGY CORP.;REEL/FRAME:022677/0550

Effective date:20050930

Owner name:AVAYA TECHNOLOGY LLC,NEW JERSEY

Free format text:CONVERSION FROM CORP TO LLC;ASSIGNOR:AVAYA TECHNOLOGY CORP.;REEL/FRAME:022677/0550

Effective date:20050930

ASAssignment

Owner name:BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLAT

Free format text:SECURITY AGREEMENT;ASSIGNOR:AVAYA INC., A DELAWARE CORPORATION;REEL/FRAME:025863/0535

Effective date:20110211

Owner name:BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THE, PENNSYLVANIA

Free format text:SECURITY AGREEMENT;ASSIGNOR:AVAYA INC., A DELAWARE CORPORATION;REEL/FRAME:025863/0535

Effective date:20110211

ASAssignment

Owner name:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., PENNSYLVANIA

Free format text:SECURITY AGREEMENT;ASSIGNOR:AVAYA, INC.;REEL/FRAME:029608/0256

Effective date:20121221

Owner name:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., P

Free format text:SECURITY AGREEMENT;ASSIGNOR:AVAYA, INC.;REEL/FRAME:029608/0256

Effective date:20121221

ASAssignment

Owner name:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE, PENNSYLVANIA

Free format text:SECURITY AGREEMENT;ASSIGNOR:AVAYA, INC.;REEL/FRAME:030083/0639

Effective date:20130307

Owner name:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE,

Free format text:SECURITY AGREEMENT;ASSIGNOR:AVAYA, INC.;REEL/FRAME:030083/0639

Effective date:20130307

STCFInformation on status: patent grant

Free format text:PATENTED CASE

FEPPFee payment procedure

Free format text:PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAYFee payment

Year of fee payment:4

ASAssignment

Owner name:CITIBANK, N.A., AS ADMINISTRATIVE AGENT, NEW YORK

Free format text:SECURITY INTEREST;ASSIGNORS:AVAYA INC.;AVAYA INTEGRATED CABINET SOLUTIONS INC.;OCTEL COMMUNICATIONS CORPORATION;AND OTHERS;REEL/FRAME:041576/0001

Effective date:20170124

ASAssignment

Owner name:AVAYA INTEGRATED CABINET SOLUTIONS INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:044893/0531

Effective date:20171128

Owner name:OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION), CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:044893/0531

Effective date:20171128

Owner name:AVAYA INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 029608/0256;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:044891/0801

Effective date:20171128

Owner name:AVAYA INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST, NA;REEL/FRAME:044892/0001

Effective date:20171128

Owner name:AVAYA INTEGRATED CABINET SOLUTIONS INC., CALIFORNI

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:044893/0531

Effective date:20171128

Owner name:OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:044893/0531

Effective date:20171128

Owner name:AVAYA INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:044893/0531

Effective date:20171128

Owner name:VPNET TECHNOLOGIES, INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:044893/0531

Effective date:20171128

Owner name:AVAYA INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:045012/0666

Effective date:20171128

ASAssignment

Owner name:OCTEL COMMUNICATIONS LLC, CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:CITICORP USA, INC.;REEL/FRAME:045032/0213

Effective date:20171215

Owner name:VPNET TECHNOLOGIES, INC., NEW JERSEY

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:CITICORP USA, INC.;REEL/FRAME:045032/0213

Effective date:20171215

Owner name:SIERRA HOLDINGS CORP., NEW JERSEY

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:CITICORP USA, INC.;REEL/FRAME:045032/0213

Effective date:20171215

Owner name:AVAYA TECHNOLOGY, LLC, NEW JERSEY

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:CITICORP USA, INC.;REEL/FRAME:045032/0213

Effective date:20171215

Owner name:AVAYA, INC., CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:CITICORP USA, INC.;REEL/FRAME:045032/0213

Effective date:20171215

ASAssignment

Owner name:GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT, NEW YORK

Free format text:SECURITY INTEREST;ASSIGNORS:AVAYA INC.;AVAYA INTEGRATED CABINET SOLUTIONS LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:045034/0001

Effective date:20171215

Owner name:GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT, NEW Y

Free format text:SECURITY INTEREST;ASSIGNORS:AVAYA INC.;AVAYA INTEGRATED CABINET SOLUTIONS LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:045034/0001

Effective date:20171215

ASAssignment

Owner name:CITIBANK, N.A., AS COLLATERAL AGENT, NEW YORK

Free format text:SECURITY INTEREST;ASSIGNORS:AVAYA INC.;AVAYA INTEGRATED CABINET SOLUTIONS LLC;OCTEL COMMUNICATIONS LLC;AND OTHERS;REEL/FRAME:045124/0026

Effective date:20171215

ASAssignment

Owner name:WILMINGTON TRUST, NATIONAL ASSOCIATION, MINNESOTA

Free format text:SECURITY INTEREST;ASSIGNORS:AVAYA INC.;AVAYA MANAGEMENT L.P.;INTELLISIST, INC.;AND OTHERS;REEL/FRAME:053955/0436

Effective date:20200925

MAFPMaintenance fee payment

Free format text:PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment:8

ASAssignment

Owner name:VPNET TECHNOLOGIES, CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING THE SECURITY INTEREST RECORDED AT REEL/FRAME 020156/0149;ASSIGNOR:CITIBANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:060953/0412

Effective date:20171128

Owner name:OCTEL COMMUNICATIONS LLC, CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING THE SECURITY INTEREST RECORDED AT REEL/FRAME 020156/0149;ASSIGNOR:CITIBANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:060953/0412

Effective date:20171128

Owner name:AVAYA TECHNOLOGY LLC, CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING THE SECURITY INTEREST RECORDED AT REEL/FRAME 020156/0149;ASSIGNOR:CITIBANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:060953/0412

Effective date:20171128

Owner name:AVAYA, INC., CALIFORNIA

Free format text:BANKRUPTCY COURT ORDER RELEASING THE SECURITY INTEREST RECORDED AT REEL/FRAME 020156/0149;ASSIGNOR:CITIBANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:060953/0412

Effective date:20171128

ASAssignment

Owner name:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT, DELAWARE

Free format text:INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:AVAYA INC.;INTELLISIST, INC.;AVAYA MANAGEMENT L.P.;AND OTHERS;REEL/FRAME:061087/0386

Effective date:20220712

ASAssignment

Owner name:AVAYA INTEGRATED CABINET SOLUTIONS LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:063457/0001

Effective date:20230403

Owner name:AVAYA MANAGEMENT L.P., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:063457/0001

Effective date:20230403

Owner name:AVAYA INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:063457/0001

Effective date:20230403

Owner name:AVAYA HOLDINGS CORP., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:063457/0001

Effective date:20230403

ASAssignment

Owner name:WILMINGTON SAVINGS FUND SOCIETY, FSB (COLLATERAL AGENT), DELAWARE

Free format text:INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:AVAYA MANAGEMENT L.P.;AVAYA INC.;INTELLISIST, INC.;AND OTHERS;REEL/FRAME:063742/0001

Effective date:20230501

ASAssignment

Owner name:CITIBANK, N.A., AS COLLATERAL AGENT, NEW YORK

Free format text:INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:AVAYA INC.;AVAYA MANAGEMENT L.P.;INTELLISIST, INC.;REEL/FRAME:063542/0662

Effective date:20230501

ASAssignment

Owner name:AVAYA MANAGEMENT L.P., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:CAAS TECHNOLOGIES, LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:HYPERQUALITY II, LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:HYPERQUALITY, INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.), NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:VPNET TECHNOLOGIES, INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:OCTEL COMMUNICATIONS LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:AVAYA INTEGRATED CABINET SOLUTIONS LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:INTELLISIST, INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:AVAYA INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001);ASSIGNOR:GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT;REEL/FRAME:063779/0622

Effective date:20230501

Owner name:AVAYA INTEGRATED CABINET SOLUTIONS LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063705/0023

Effective date:20230501

Owner name:INTELLISIST, INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063705/0023

Effective date:20230501

Owner name:AVAYA INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063705/0023

Effective date:20230501

Owner name:AVAYA MANAGEMENT L.P., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063705/0023

Effective date:20230501

Owner name:AVAYA INTEGRATED CABINET SOLUTIONS LLC, NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063690/0359

Effective date:20230501

Owner name:INTELLISIST, INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063690/0359

Effective date:20230501

Owner name:AVAYA INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063690/0359

Effective date:20230501

Owner name:AVAYA MANAGEMENT L.P., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386);ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT;REEL/FRAME:063690/0359

Effective date:20230501

ASAssignment

Owner name:AVAYA LLC, DELAWARE

Free format text:(SECURITY INTEREST) GRANTOR'S NAME CHANGE;ASSIGNOR:AVAYA INC.;REEL/FRAME:065019/0231

Effective date:20230501

MAFPMaintenance fee payment

Free format text:PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment:12


[8]ページ先頭

©2009-2025 Movatter.jp