US20020178227A1 - Routing instant messages using configurable, pluggable delivery managers - Google Patents

Routing instant messages using configurable, pluggable delivery managers Download PDF

Info

Publication number
US20020178227A1
US20020178227A1 US09/866,410 US86641001A US2002178227A1 US 20020178227 A1 US20020178227 A1 US 20020178227A1 US 86641001 A US86641001 A US 86641001A US 2002178227 A1 US2002178227 A1 US 2002178227A1
Authority
US
United States
Prior art keywords
delivery
manager
policy
mechanisms
pluggable
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.)
Abandoned
Application number
US09/866,410
Inventor
Moshe Matsa
Julius Quiaot
Christopher Vincent
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to US09/866,410 priority Critical patent/US20020178227A1/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MATSA, MOSHE M. E., QUIAOT, JULIUS Q., VINCENT, CHRISTOPHER R.
Priority to JP2002147211A priority patent/JP4384839B2/en
Priority to US10/193,632 priority patent/US7284034B2/en
Publication of US20020178227A1 publication Critical patent/US20020178227A1/en
Priority to US11/037,857 priority patent/US7412490B2/en
Priority to US12/179,610 priority patent/US20080281937A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • This invention relates, in general, to instant messaging, and in particular, to providing a messaging environment in which configurable, pluggable delivery managers are used to route instant messages to intended recipients.
  • instant messaging In today's communication environments, instant messaging is common place. Users send messages to one or more intended recipients and expect that those messages will be delivered substantially instantly.
  • Various mechanisms are used for instant messaging, including one or more instant messaging protocols, such as the SameTime protocol offered by International Business Machines Corporation or Instant Messenger offered by AOL.
  • Other techniques are also used to send instant messages, such as pager gateways.
  • the shortcomings of the prior art are overcome and additional advantages are provided through the provision of a method of routing instant messages.
  • the method includes, for instance, defining, at runtime by a pluggable delivery manager, a delivery policy to be used to route an instant message to an intended recipient of the instant message, wherein the delivery policy is based upon a configuration of the pluggable delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms; and routing the instant message to the intended recipient using the delivery policy.
  • a method of routing instant messages includes, for instance, selecting a delivery manager to route an instant message to an intended recipient of the instant message, the delivery manager being pluggable; configuring, at runtime, the delivery manager, wherein the configuring comprises selecting a configuration for the delivery manager from a set of one or more configurations, the selecting using content of the instant message to make the selection; querying, by the delivery manager, a user configuration of the intended recipient to determine one or more delivery mechanisms supported by the intended recipient; determining, by the delivery manager, one or more available delivery mechanisms; identifying, by the delivery manager, one or more delivery mechanisms that are common to a result of the querying and the determining to yield one or more possible delivery mechanisms; selecting, from the one or more possible delivery mechanisms, at least one delivery mechanism supported by the delivery manager; and routing the instant message to the intended recipient using the at least one delivery mechanism.
  • a messaging environment in which delivery managers are plugged in, dynamically configured at runtime, and used to control the routing of instant messages from users to intended recipients.
  • the delivery managers determine and apply delivery policies, which are based on user configurations, currently available delivery mechanisms, and the configuration of the delivery managers.
  • an instant message delivery environment which integrates multiple protocols and notification services to provide a more robust, intelligent technique of synchronous communication.
  • FIG. 1 depicts one embodiment of a computing environment incorporating and using aspects of the present invention
  • FIG. 2 depicts one embodiment of the logic associated with routing an instant message using a configurable and pluggable delivery manager, in accordance with an aspect of the present invention
  • FIG. 3 depicts one example of an instant message, in accordance with an aspect of the present invention
  • FIG. 4 depicts one embodiment of a delivery manager database, in accordance with an aspect of the present invention.
  • FIG. 5 depicts one example of a delivery manager configuration database, in accordance with an aspect of the present invention.
  • FIG. 6 depicts one embodiment of a user configuration database, in accordance with an aspect of the present invention.
  • FIG. 7 depicts one example of a delivery mechanism database, in accordance with an aspect of the present invention.
  • FIG. 8 depicts a particular routing example, which uses aspects of the present invention.
  • a messaging environment in which delivery managers (i.e., routing logic modules) are plugged in, dynamically configured at run-time, and used to control the routing of instant messages from users to intended recipients (e.g., other users).
  • the delivery managers determine and apply delivery policies, which are based on user configurations, currently available delivery mechanisms, and the configuration of the delivery managers, to route the messages.
  • a computing environment 100 includes, for instance, at least one computing unit 102 coupled to at least one computing unit 104 via a connection 106 .
  • Each computing unit includes, for example, a personal computer, a workstation, a laptop computer, or any other type of computer.
  • each unit is a personal computer based on the UNIX architecture.
  • the connection is a standard connection, such as any type of wire connection, token ring, or network connection, to name just a few examples.
  • the connection is a communications channel, which may include one or more servers.
  • Executing on at least one of the computing units are one or more client applications that wish to send instant messages to one or more intended recipients (such as, users on Computing Unit 2 or other computing units).
  • the client applications run in a messaging environment, which supports multiple diverse delivery managers that are responsible for routing the messages.
  • the delivery managers can be dynamically added and/or configured at runtime.
  • the user can select at runtime which delivery manager to use and how it is to be configured for a particular message.
  • the delivery manager then uses a delivery policy to control delivery of that message.
  • the delivery policy is constrained by recipient configuration, delivery manager configuration, and available delivery mechanisms, as described below.
  • FIG. 2 One embodiment of the logic associated with routing an instant message from a user to an intended recipient is described with reference to FIG. 2. This logic is executed by, for instance, a client application of a computing environment.
  • an instant message 300 includes, for instance, a user name 302 indicating the intended recipient of the message; a message body 304 , including the message to be delivered to the intended recipient; and one or more optional properties 306 .
  • the properties include a variety of features, such as behavior (e.g., the priority of the message), an expiration date of when the message is to expire, and/or any other features, as desired.
  • a delivery manager responsible for routing the particular message, is selected, STEP 202 .
  • the client application presents a drop-down menu of a group of one or more available delivery managers, (e.g., available classes of delivery managers), and the user selects one of those managers.
  • the client application includes logic (e.g., a selection based on criteria, such as intended recipient, etc.) that selects a delivery manager from the group of available delivery managers.
  • the group of delivery managers is stored, for instance, within a database 400 (FIG. 4), which is accessible by the client application. That is, the database includes a list of available delivery managers.
  • the delivery managers are pluggable and hot-swappable (e.g., can be added and/or changed at runtime). In particular, multiple implementations and functional variants of delivery managers may exist simultaneously and be dynamically added, removed or changed.
  • each message is assigned to its own delivery manager.
  • a delivery manager may service multiple messages.
  • a configuration for the delivery manager is selected from, for instance, a delivery manager configuration database, STEP 206 .
  • a delivery manager configuration database 500 includes a configuration table 501 for each delivery manager.
  • Configuration table 501 includes one or more delivery manager configurations 502 for its respective delivery manager. These configurations are used to dynamically configure the delivery manager, at runtime.
  • the delivery manager is initialized with the selected configuration data, STEP 208 (FIG. 2). This dynamically configures the delivery manager, and the delivery manager is ready to begin message routing.
  • the delivery manager defines a routing policy to be used to route the message to the intended recipient, STEP 210 .
  • One component of defining the policy includes querying, by the delivery manager, a user configuration database to determine how the intended recipient would like to receive the message, STEP 212 .
  • a user configuration database 600 includes a delivery mechanism table 602 for each valid message recipient.
  • Each user's table includes configuration information 604 for one or more of the delivery mechanisms of the computing environment that are supported by that user. That is, each intended recipient is a logical user that has a presence at one or more logical locations, as defined by the table.
  • the configuration information includes an identification of each delivery mechanism supported by the user (e.g., Instant Messaging (IM) Protocol 2 , Email, Pager), and mechanism-specific configurations.
  • the user name of the message is used as an index into the user configuration database to locate the table corresponding to that user.
  • the delivery manager accesses the table to determine how the intended recipient desires to receive the message.
  • the user name is John Smith
  • the mechanisms for John Smith include: Instant Messaging Protocol 2 , Email and Pager.
  • the delivery manager in addition to querying the user configuration database to define a routing policy, the delivery manager also queries a Delivery Mechanism Database to determine the active delivery mechanisms of the computing environment, STEP 214 .
  • a Delivery Mechanism Database is depicted in FIG. 7.
  • a Delivery Mechanism Database 700 includes one or more delivery mechanisms 702 currently capable of sending messages. This database is dynamically updated by, for instance, the client application to reflect the current operating environment.
  • the intersection of the delivery mechanisms of Delivery Mechanism Configuration Table 602 and the active delivery mechanisms of Delivery Mechanism Database 700 specifies the set of mechanisms available for routing the assigned instant message.
  • the set of mechanisms include Instant Messaging Protocol 2 , Email and Pager. This set of mechanisms defines the routing policy to be used to route the message to the intended recipient.
  • the delivery manager implements the routing policy, as constrained, however, by its own configuration, STEP 216 (FIG. 2).
  • This constrained routing policy is referred to herein as the delivery policy.
  • the routing policy yields a set of mechanisms, which includes Instant Messaging Protocol 2 , Email and Pager, but the delivery manager configuration does not include Email (see FIG. 5), then the delivery manager is limited to using Instant Messaging Protocol 2 and Pager.
  • the delivery manager applies the delivery policy to send the message to the intended recipient.
  • the instant message is dispatched to one or more of the available delivery mechanisms of the delivery policy, serially or in parallel, as defined by the delivery policy.
  • the delivery manager dispatches the instant message to Instant Messaging Protocol 2 , and if the recipient is not available, then it initiates an alphanumeric page, after prompting the sender. This is indicated by the selected configuration (Normal Priority) of the delivery manager (see FIG. 5).
  • a selected delivery manager 800 is configured with Configuration 802 .
  • the delivery manager queries a Delivery Mechanism Configuration table 804 for John Smith and a Delivery Mechanisms Database 806 to define the routing policy to be used to send the message to John Smith.
  • the routing policy includes Instant Messaging Protocol 2 , Alphanumeric Pager, and Email.
  • the routing policy is constrained by configuration 802 . That is, the delivery manager cannot use a mechanism that is not available to the delivery manager.
  • the delivery manager defines a delivery policy, which is the routing policy constrained by configuration 802 .
  • the delivery policy includes Instant Messaging Protocol 2 ( 808 ) and Pager ( 810 ).
  • the delivery manager then uses one or more of the mechanisms of the delivery policy to route the message to John Smith.
  • the manner in which these mechanisms are used is defined by configuration 802 .
  • the message is first sent by Instant Messaging Protocol 2 , and then by pager, after prompting the sender.
  • the invention is not limited to such example.
  • additional and/or different delivery managers and/or delivery manager configurations are possible.
  • different recipients may have additional and/or different delivery mechanisms available to them.
  • additional and/or different message delivery mechanisms may be available.
  • the delivery environment integrates multiple protocols and notification services to assist in providing a more robust, intelligent technique of synchronous communication.
  • the environment provides robust message delivery by automatically leveraging and dynamically configuring many unreliable services simultaneously.
  • a user e.g., one logical user
  • the system assigns it to a delivery manager.
  • the delivery manager is an agent which assumes responsibility for routing the logical content of the message to the recipient.
  • Message recipients have corresponding profiles, which specify how they may be contacted via different delivery mechanisms or messaging services.
  • a delivery manager agent adheres to a delivery policy, which includes a message routing algorithm paired with an agent-specific configuration.
  • both the delivery managers and the delivery mechanisms are pluggable and hot-swappable, meaning that multiple implementations or functional variants may exist simultaneously and be dynamically added or removed.
  • Delivery mechanisms support a common set of instant messaging functionality, providing an abstraction over a wide variety of network protocols and notification services.
  • Delivery managers support a common message routing interface, with each variant implementing different delivery policies. Delivery policies may utilize any of the delivery mechanisms available at the time a message is dispatched. Delivery managers are selected on a per-message basis, according to user configurations, such as message priority.
  • one or more aspects of the present invention provide higher rates of successful message delivery, as compared to state of the art instant messaging solutions; incorporate delivery mechanisms not typically associated with instant messaging clients (e.g., pagers, e-mail); provide users with fine-grained, accurate control over message routing behavior, without requiring interaction on a per-message basis; and support new message delivery mechanisms (pluggable system components) that may be implemented and distributed apart from the core system, which allows incremental refinements and extensions.
  • the client-side delivery managers efficiently route messages by applying these constraints based on the current operating environment and individual message requirements.
  • the present invention can be included in an article of manufacture (e.g., one or more computer program products) having, for instance, computer usable media.
  • the media has embodied therein, for instance, computer readable program code means for providing and facilitating the capabilities of the present invention.
  • the article of manufacture can be included as a part of a computer system or sold separately.
  • At least one program storage device readable by a machine tangibly embodying at least one program of instructions executable by the machine to perform the capabilities of the present invention can be provided.

Abstract

Configurable, pluggable delivery managers are responsible for routing instant messages to intended recipients. A delivery manager is selected for a particular message, and that delivery manager defines, at runtime, a delivery policy to be used to route the instant message to an intended recipient of the message. The delivery policy is based upon a configuration of the delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms. The delivery manager routes the instant message using the delivery policy.

Description

    TECHNICAL FIELD
  • This invention relates, in general, to instant messaging, and in particular, to providing a messaging environment in which configurable, pluggable delivery managers are used to route instant messages to intended recipients. [0001]
  • BACKGROUND OF THE INVENTION
  • In today's communication environments, instant messaging is common place. Users send messages to one or more intended recipients and expect that those messages will be delivered substantially instantly. Various mechanisms are used for instant messaging, including one or more instant messaging protocols, such as the SameTime protocol offered by International Business Machines Corporation or Instant Messenger offered by AOL. Other techniques are also used to send instant messages, such as pager gateways. [0002]
  • Although instant messaging is a common practice, frequently there are situations in which the message does not reach the intended recipient. For example, the messaging protocol is down or the intended recipient does not have access to the protocol sending the message (e.g., no computer access). [0003]
  • Thus, there is still a need for a capability that enhances the success rate with which an instant message reaches the intended recipient. A further need exists for an environment that is capable of providing a configurable and flexible delivery policy to be used to route messages to intended recipients. [0004]
  • SUMMARY OF THE INVENTION
  • The shortcomings of the prior art are overcome and additional advantages are provided through the provision of a method of routing instant messages. The method includes, for instance, defining, at runtime by a pluggable delivery manager, a delivery policy to be used to route an instant message to an intended recipient of the instant message, wherein the delivery policy is based upon a configuration of the pluggable delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms; and routing the instant message to the intended recipient using the delivery policy. [0005]
  • In a further aspect of the present invention, a method of routing instant messages is provided. The method includes, for instance, selecting a delivery manager to route an instant message to an intended recipient of the instant message, the delivery manager being pluggable; configuring, at runtime, the delivery manager, wherein the configuring comprises selecting a configuration for the delivery manager from a set of one or more configurations, the selecting using content of the instant message to make the selection; querying, by the delivery manager, a user configuration of the intended recipient to determine one or more delivery mechanisms supported by the intended recipient; determining, by the delivery manager, one or more available delivery mechanisms; identifying, by the delivery manager, one or more delivery mechanisms that are common to a result of the querying and the determining to yield one or more possible delivery mechanisms; selecting, from the one or more possible delivery mechanisms, at least one delivery mechanism supported by the delivery manager; and routing the instant message to the intended recipient using the at least one delivery mechanism. [0006]
  • System and computer program products corresponding to the above-summarized methods are also described and claimed herein. [0007]
  • Advantageously, a messaging environment is provided, in which delivery managers are plugged in, dynamically configured at runtime, and used to control the routing of instant messages from users to intended recipients. The delivery managers determine and apply delivery policies, which are based on user configurations, currently available delivery mechanisms, and the configuration of the delivery managers. [0008]
  • In an aspect of the present invention, an instant message delivery environment is provided, which integrates multiple protocols and notification services to provide a more robust, intelligent technique of synchronous communication. [0009]
  • Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention.[0010]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other objects, features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which: [0011]
  • FIG. 1 depicts one embodiment of a computing environment incorporating and using aspects of the present invention; [0012]
  • FIG. 2 depicts one embodiment of the logic associated with routing an instant message using a configurable and pluggable delivery manager, in accordance with an aspect of the present invention; [0013]
  • FIG. 3 depicts one example of an instant message, in accordance with an aspect of the present invention; [0014]
  • FIG. 4 depicts one embodiment of a delivery manager database, in accordance with an aspect of the present invention; [0015]
  • FIG. 5 depicts one example of a delivery manager configuration database, in accordance with an aspect of the present invention; [0016]
  • FIG. 6 depicts one embodiment of a user configuration database, in accordance with an aspect of the present invention; [0017]
  • FIG. 7 depicts one example of a delivery mechanism database, in accordance with an aspect of the present invention; and [0018]
  • FIG. 8 depicts a particular routing example, which uses aspects of the present invention.[0019]
  • BEST MODE FOR CARRYING OUT THE INVENTION
  • In accordance with an aspect of the present invention, a messaging environment is provided, in which delivery managers (i.e., routing logic modules) are plugged in, dynamically configured at run-time, and used to control the routing of instant messages from users to intended recipients (e.g., other users). The delivery managers determine and apply delivery policies, which are based on user configurations, currently available delivery mechanisms, and the configuration of the delivery managers, to route the messages. [0020]
  • One embodiment of a computing environment incorporating and using aspects of the present invention is depicted in FIG. 1. As depicted in FIG. 1, a [0021] computing environment 100 includes, for instance, at least one computing unit 102 coupled to at least one computing unit 104 via a connection 106. Each computing unit includes, for example, a personal computer, a workstation, a laptop computer, or any other type of computer. As one example, each unit is a personal computer based on the UNIX architecture. Further, the connection is a standard connection, such as any type of wire connection, token ring, or network connection, to name just a few examples. Alternatively, the connection is a communications channel, which may include one or more servers.
  • Executing on at least one of the computing units (e.g., Computing Unit [0022] 1) are one or more client applications that wish to send instant messages to one or more intended recipients (such as, users on Computing Unit 2 or other computing units). The client applications run in a messaging environment, which supports multiple diverse delivery managers that are responsible for routing the messages.
  • In accordance with an aspect of the present invention, the delivery managers can be dynamically added and/or configured at runtime. Thus, the user can select at runtime which delivery manager to use and how it is to be configured for a particular message. The delivery manager then uses a delivery policy to control delivery of that message. The delivery policy is constrained by recipient configuration, delivery manager configuration, and available delivery mechanisms, as described below. [0023]
  • One embodiment of the logic associated with routing an instant message from a user to an intended recipient is described with reference to FIG. 2. This logic is executed by, for instance, a client application of a computing environment. [0024]
  • Referring to FIG. 2, initially, a user composes an instant message to be sent to the recipient, [0025] STEP 200. One example of such a message is depicted in FIG. 3. As shown, an instant message 300 includes, for instance, a user name 302 indicating the intended recipient of the message; a message body 304, including the message to be delivered to the intended recipient; and one or more optional properties 306. As one example, the properties include a variety of features, such as behavior (e.g., the priority of the message), an expiration date of when the message is to expire, and/or any other features, as desired.
  • Returning to FIG. 2, in addition to composing the message, a delivery manager, responsible for routing the particular message, is selected, [0026] STEP 202. For example, the client application presents a drop-down menu of a group of one or more available delivery managers, (e.g., available classes of delivery managers), and the user selects one of those managers. As a further example, the client application includes logic (e.g., a selection based on criteria, such as intended recipient, etc.) that selects a delivery manager from the group of available delivery managers.
  • The group of delivery managers is stored, for instance, within a database [0027] 400 (FIG. 4), which is accessible by the client application. That is, the database includes a list of available delivery managers. The delivery managers are pluggable and hot-swappable (e.g., can be added and/or changed at runtime). In particular, multiple implementations and functional variants of delivery managers may exist simultaneously and be dynamically added, removed or changed.
  • Referring again to FIG. 2, subsequent to selecting a particular class of delivery manager, an instance of the delivery manager is created and the message is assigned thereto, [0028] STEP 204. In the example presented herein, each message is assigned to its own delivery manager. However, in other embodiments, a delivery manager may service multiple messages.
  • Thereafter, a configuration for the delivery manager is selected from, for instance, a delivery manager configuration database, [0029] STEP 206. An example of one such database is depicted in FIG. 5. As shown, a delivery manager configuration database 500 includes a configuration table 501 for each delivery manager. Configuration table 501 includes one or more delivery manager configurations 502 for its respective delivery manager. These configurations are used to dynamically configure the delivery manager, at runtime.
  • In one embodiment, the particular configuration for the chosen delivery manager is selected based on the content of the message. For example, a value of one of the properties, such as priority, is used to determine which configuration is selected. That is, if Priority=Normal (see [0030] 306 of FIG. 3), then the configuration for Normal Priority (see FIG. 5) is selected. Similarly, if Priority=Urgent, then the configuration for Urgent Priority is selected.
  • Subsequent to selecting a configuration for the delivery manager, the delivery manager is initialized with the selected configuration data, STEP [0031] 208 (FIG. 2). This dynamically configures the delivery manager, and the delivery manager is ready to begin message routing.
  • As an initial step of the routing process, the delivery manager defines a routing policy to be used to route the message to the intended recipient, STEP [0032] 210. One component of defining the policy includes querying, by the delivery manager, a user configuration database to determine how the intended recipient would like to receive the message, STEP 212.
  • One example of a user configuration database is depicted in FIG. 6. A [0033] user configuration database 600 includes a delivery mechanism table 602 for each valid message recipient. Each user's table includes configuration information 604 for one or more of the delivery mechanisms of the computing environment that are supported by that user. That is, each intended recipient is a logical user that has a presence at one or more logical locations, as defined by the table.
  • The configuration information includes an identification of each delivery mechanism supported by the user (e.g., Instant Messaging (IM) [0034] Protocol 2, Email, Pager), and mechanism-specific configurations. The mechanism-specific configurations include data, such as recipient login names on specific servers (e.g., user=jsmith@im.net, etc.), public keys for encrypted messaging protocols, etc.
  • The user name of the message is used as an index into the user configuration database to locate the table corresponding to that user. The delivery manager accesses the table to determine how the intended recipient desires to receive the message. In the example depicted in FIG. 6, the user name is John Smith, and the mechanisms for John Smith include: [0035] Instant Messaging Protocol 2, Email and Pager.
  • Returning to FIG. 2, in addition to querying the user configuration database to define a routing policy, the delivery manager also queries a Delivery Mechanism Database to determine the active delivery mechanisms of the computing environment, [0036] STEP 214. One example of such a database is depicted in FIG. 7.
  • As shown in FIG. 7, a [0037] Delivery Mechanism Database 700 includes one or more delivery mechanisms 702 currently capable of sending messages. This database is dynamically updated by, for instance, the client application to reflect the current operating environment.
  • The intersection of the delivery mechanisms of Delivery Mechanism Configuration Table [0038] 602 and the active delivery mechanisms of Delivery Mechanism Database 700 specifies the set of mechanisms available for routing the assigned instant message. For instance, in the particular example depicted herein, the set of mechanisms include Instant Messaging Protocol 2, Email and Pager. This set of mechanisms defines the routing policy to be used to route the message to the intended recipient.
  • The delivery manager implements the routing policy, as constrained, however, by its own configuration, STEP [0039] 216 (FIG. 2). (This constrained routing policy is referred to herein as the delivery policy.) For example, if the routing policy yields a set of mechanisms, which includes Instant Messaging Protocol 2, Email and Pager, but the delivery manager configuration does not include Email (see FIG. 5), then the delivery manager is limited to using Instant Messaging Protocol 2 and Pager.
  • The delivery manager applies the delivery policy to send the message to the intended recipient. In particular, the instant message is dispatched to one or more of the available delivery mechanisms of the delivery policy, serially or in parallel, as defined by the delivery policy. In this example, the delivery manager dispatches the instant message to [0040] Instant Messaging Protocol 2, and if the recipient is not available, then it initiates an alphanumeric page, after prompting the sender. This is indicated by the selected configuration (Normal Priority) of the delivery manager (see FIG. 5).
  • An overview of the particular example described herein is illustrated in FIG. 8. As shown, a selected [0041] delivery manager 800 is configured with Configuration 802. The delivery manager queries a Delivery Mechanism Configuration table 804 for John Smith and a Delivery Mechanisms Database 806 to define the routing policy to be used to send the message to John Smith. In this example, the routing policy includes Instant Messaging Protocol 2, Alphanumeric Pager, and Email. The routing policy, however, is constrained by configuration 802. That is, the delivery manager cannot use a mechanism that is not available to the delivery manager. Thus, the delivery manager defines a delivery policy, which is the routing policy constrained by configuration 802. In this example, the delivery policy includes Instant Messaging Protocol 2 (808) and Pager (810).
  • The delivery manager then uses one or more of the mechanisms of the delivery policy to route the message to John Smith. The manner in which these mechanisms are used is defined by [0042] configuration 802. Thus, in this example, the message is first sent by Instant Messaging Protocol 2, and then by pager, after prompting the sender.
  • Although a particular example is described above, the invention is not limited to such example. For example, additional and/or different delivery managers and/or delivery manager configurations are possible. Further, different recipients may have additional and/or different delivery mechanisms available to them. Also, at various times, additional and/or different message delivery mechanisms may be available. [0043]
  • Described in detail above is a pluggable, agent-driven, constraint-based instant messaging delivery environment. The delivery environment integrates multiple protocols and notification services to assist in providing a more robust, intelligent technique of synchronous communication. The environment provides robust message delivery by automatically leveraging and dynamically configuring many unreliable services simultaneously. When a user (e.g., one logical user) composes a message and dispatches it to one or more intended recipients (e.g., one or more other logical users on the same or different computing units), the system assigns it to a delivery manager. The delivery manager is an agent which assumes responsibility for routing the logical content of the message to the recipient. Message recipients have corresponding profiles, which specify how they may be contacted via different delivery mechanisms or messaging services. A delivery manager agent adheres to a delivery policy, which includes a message routing algorithm paired with an agent-specific configuration. [0044]
  • In one aspect of the invention, both the delivery managers and the delivery mechanisms are pluggable and hot-swappable, meaning that multiple implementations or functional variants may exist simultaneously and be dynamically added or removed. Delivery mechanisms support a common set of instant messaging functionality, providing an abstraction over a wide variety of network protocols and notification services. Delivery managers support a common message routing interface, with each variant implementing different delivery policies. Delivery policies may utilize any of the delivery mechanisms available at the time a message is dispatched. Delivery managers are selected on a per-message basis, according to user configurations, such as message priority. [0045]
  • Advantageously, one or more aspects of the present invention provide higher rates of successful message delivery, as compared to state of the art instant messaging solutions; incorporate delivery mechanisms not typically associated with instant messaging clients (e.g., pagers, e-mail); provide users with fine-grained, accurate control over message routing behavior, without requiring interaction on a per-message basis; and support new message delivery mechanisms (pluggable system components) that may be implemented and distributed apart from the core system, which allows incremental refinements and extensions. The client-side delivery managers efficiently route messages by applying these constraints based on the current operating environment and individual message requirements. [0046]
  • The above-described computing environment and/or computing units are only offered as examples. The present invention can be incorporated and used with many types of computing units, computers, processors, nodes, systems, work stations, and/or environments without departing from the spirit of the present invention. [0047]
  • The present invention can be included in an article of manufacture (e.g., one or more computer program products) having, for instance, computer usable media. The media has embodied therein, for instance, computer readable program code means for providing and facilitating the capabilities of the present invention. The article of manufacture can be included as a part of a computer system or sold separately. [0048]
  • Additionally, at least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform the capabilities of the present invention can be provided. [0049]
  • The flow diagrams depicted herein are just examples. There may be many variations to these diagrams or the steps (or operations) described therein without departing from the spirit of the invention. For instance, the steps may be performed in a differing order, or steps may be added, deleted or modified. All of these variations are considered a part of the claimed invention. [0050]
  • Although preferred embodiments have been depicted and described in detail herein, it will be apparent to those skilled in the relevant art that various modifications, additions, substitutions and the like can be made without departing from the spirit of the invention and these are therefore considered to be within the scope of the invention as defined in the following claims. [0051]

Claims (47)

What is claimed is:
1. A method of routing instant messages, said method comprising:
defining, at runtime by a pluggable delivery manager, a delivery policy to be used to route an instant message to an intended recipient of the instant message, wherein the delivery policy is based upon a configuration of the pluggable delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms; and
routing said instant message to the intended recipient using said delivery policy.
2. The method of claim 1, wherein said defining of the delivery policy comprises:
defining a routing policy based on said user configuration and said one or more available delivery mechanisms, wherein said routing policy includes one or more possible delivery mechanisms; and
selecting from the routing policy at least one delivery mechanism to be included in the delivery policy, said selecting being based upon the configuration of the pluggable delivery manager.
3. The method of claim 1, wherein said defining of the delivery policy comprises:
determining, from the user configuration, one or more delivery mechanisms supported by said intended recipient;
determining which of said one or more delivery mechanisms supported by said intended recipient are included in the one or more available delivery mechanisms to yield one or more possible delivery mechanisms; and
determining which of the one or more possible delivery mechanisms are supported by the pluggable delivery manager, as indicated in the configuration of the pluggable delivery manager, a result of which defines the delivery policy.
4. The method of claim 3, wherein said routing comprises dispatching the instant message to at least one delivery mechanism of the delivery policy, as indicated by the delivery policy.
5. The method of claim 1, wherein said routing comprises dispatching the instant message to at least one delivery mechanism of the delivery policy, as indicated by the delivery policy.
6. The method of claim 1, further comprising selecting the pluggable delivery manager from a plurality of delivery managers.
7. The method of claim 1, further comprising configuring said pluggable delivery manager.
8. The method of claim 7, wherein said configuring comprises selecting a configuration for said pluggable delivery manager from a set of one or more configurations, wherein said selecting uses content of the instant message to make the selection.
9. The method of claim 7, wherein said configuring comprises configuring said pluggable delivery manager at runtime.
10. The method of claim 1, wherein the intended recipient is indicated by the instant message.
11. The method of claim 1, wherein at least one available delivery mechanism of said one or more available delivery mechanisms is pluggable.
12. A method of routing instant messages, said method comprising:
selecting a delivery manager to route an instant message to an intended recipient of the instant message, said delivery manager being pluggable;
configuring, at runtime, said delivery manager, wherein the configuring comprises selecting a configuration for said delivery manager from a set of one or more configurations, said selecting using content of the instant message to make the selection;
querying, by the delivery manager, a user configuration of the intended recipient to determine one or more delivery mechanisms supported by the intended recipient;
determining, by the delivery manager, one or more available delivery mechanisms;
identifying, by the delivery manager, one or more delivery mechanisms that are common to a result of the querying and the determining to yield one or more possible delivery mechanisms;
selecting, from the one or more possible delivery mechanisms, at least one delivery mechanism supported by the delivery manager; and
routing the instant message to the intended recipient using the at least one delivery mechanism.
13. The method of claim 12, wherein said at least one delivery mechanism supported by the delivery manager is included within the configuration of the delivery manager.
14. The method of claim 12, wherein said routing comprises dispatching, by the delivery manager, the instant message to one or more delivery mechanisms of the at least one delivery mechanism in accordance with a policy specified by said configuration of the delivery manager.
15. The method of claim 12, wherein at least one available delivery mechanism of said one or more available delivery mechanisms is pluggable.
16. A system of routing instant messages, said system comprising:
means for defining, at runtime by a pluggable delivery manager, a delivery policy to be used to route an instant message to an intended recipient of the instant message, wherein the delivery policy is based upon a configuration of the pluggable delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms; and
means for routing said instant message to the intended recipient using said delivery policy.
17. The system of claim 16, wherein said means for defining the delivery policy comprises:
means for defining a routing policy based on said user configuration and said one or more available delivery mechanisms, wherein said routing policy includes one or more possible delivery mechanisms; and
means for selecting from the routing policy at least one delivery mechanism to be included in the delivery policy, the selecting being based upon the configuration of the pluggable delivery manager.
18. The system of claim 16, wherein said means for defining the delivery policy comprises:
means for determining, from the user configuration, one or more delivery mechanisms supported by said intended recipient;
means for determining which of said one or more delivery mechanisms supported by said intended recipient are included in the one or more available delivery mechanisms to yield one or more possible delivery mechanisms; and
means for determining which of the one or more possible delivery mechanisms are supported by the pluggable delivery manager, as indicated in the configuration of the pluggable delivery manager, a result of which defines the delivery policy.
19. The system of claim 18, wherein said means for routing comprises means for dispatching the instant message to at least one delivery mechanism of the delivery policy, as indicated by the delivery policy.
20. The system of claim 16, wherein said means for routing comprises means for dispatching the instant message to at least one delivery mechanism of the delivery policy, as indicated by the delivery policy.
21. The system of claim 16, further comprising means for selecting the pluggable delivery manager from a plurality of delivery managers.
22. The system of claim 16, further comprising means for configuring said pluggable delivery manager.
23. The system of claim 22, wherein said means for configuring comprises means for selecting a configuration for said pluggable delivery manager from a set of one or more configurations, wherein the selecting uses content of the instant message to make the selection.
24. The system of claim 22, wherein said means for configuring comprises means for configuring said pluggable delivery manager at runtime.
25. The system of claim 16, wherein the intended recipient is indicated by the instant message.
26. The system of claim 16, wherein at least one available delivery mechanism of said one or more available delivery mechanisms is pluggable.
27. A system of routing instant messages, said system comprising:
means for selecting a delivery manager to route an instant message to an intended recipient of the instant message, said delivery manager being pluggable;
means for configuring, at runtime, said delivery manager, wherein said means for configuring comprises means for selecting a configuration for said delivery manager from a set of one or more configurations, the selecting using content of the instant message to make the selection;
means for querying, by the delivery manager, a user configuration of the intended recipient to determine one or more delivery mechanisms supported by the intended recipient;
means for determining, by the delivery manager, one or more available delivery mechanisms;
means for identifying, by the delivery manager, one or more delivery mechanisms that are common to a result of the querying and the determining to yield one or more possible delivery mechanisms;
means for selecting, from the one or more possible delivery mechanisms, at least one delivery mechanism supported by the delivery manager; and
means for routing the instant message to the intended recipient using the at least one delivery mechanism.
28. The system of claim 27, wherein said at least one delivery mechanism supported by the delivery manager is included within the configuration of the delivery manager.
29. The system of claim 27, wherein said means for routing comprises means for dispatching, by the delivery manager, the instant message to one or more delivery mechanisms of the at least one delivery mechanism in accordance with a policy specified by said configuration of the delivery manager.
30. The system of claim 27, wherein at least one available delivery mechanism of said one or more available delivery mechanisms is pluggable.
31. A system of routing instant messages, said system comprising:
a delivery policy defined, at runtime by a pluggable delivery manager, to be used to route an instant message to an intended recipient of the instant message, wherein the delivery policy is based upon a configuration of the pluggable delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms; and
said pluggable delivery manager to route said instant message to the intended recipient using said delivery policy.
32. A system of routing instant messages, said system comprising:
a delivery manager to route an instant message to an intended recipient of the instant message, wherein said delivery manager is pluggable, and configured, at runtime, by selecting, using content of the instant message, a configuration for said delivery manager from a set of one or more configurations;
said delivery manager being adapted to:
query a user configuration of the intended recipient to determine one or more delivery mechanisms supported by the intended recipient;
determine one or more available delivery mechanisms;
identify one or more delivery mechanisms that are common to a result of the query and the determination to yield one or more possible delivery mechanisms;
select, from the one or more possible delivery mechanisms, at least one delivery mechanism supported by the delivery manager; and
route the instant message to the intended recipient using the at least one delivery mechanism.
33. At least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform a method of routing instant messages, said method comprising:
defining, at runtime by a pluggable delivery manager, a delivery policy to be used to route an instant message to an intended recipient of the instant message, wherein the delivery policy is based upon a configuration of the pluggable delivery manager, a user configuration of the intended recipient, and one or more available delivery mechanisms; and
routing said instant message to the intended recipient using said delivery policy.
34. The at least one program storage device of claim 33, wherein said defining of the delivery policy comprises:
defining a routing policy based on said user configuration and said one or more available delivery mechanisms, wherein said routing policy includes one or more possible delivery mechanisms; and
selecting from the routing policy at least one delivery mechanism to be included in the delivery policy, said selecting being based upon the configuration of the pluggable delivery manager.
35. The at least one program storage device of claim 33, wherein said defining of the delivery policy comprises:
determining, from the user configuration, one or more delivery mechanisms supported by said intended recipient;
determining which of said one or more delivery mechanisms supported by said intended recipient are included in the one or more available delivery mechanisms to yield one or more possible delivery mechanisms; and
determining which of the one or more possible delivery mechanisms are supported by the pluggable delivery manager, as indicated in the configuration of the pluggable delivery manager, a result of which defines the delivery policy.
36. The at least one program storage device of claim 35, wherein said routing comprises dispatching the instant message to at least one delivery mechanism of the delivery policy, as indicated by the delivery policy.
37. The at least one program storage device of claim 33, wherein said routing comprises dispatching the instant message to at least one delivery mechanism of the delivery policy, as indicated by the delivery policy.
38. The at least one program storage device of claim 33, wherein said method further comprises selecting the pluggable delivery manager from a plurality of delivery managers.
39. The at least one program storage device of claim 33, wherein said method further comprises configuring said pluggable delivery manager.
40. The at least one program storage device of claim 39, wherein said configuring comprises selecting a configuration for said pluggable delivery manager from a set of one or more configurations, wherein said selecting uses content of the instant message to make the selection.
41. The at least one program storage device of claim 39, wherein said configuring comprises configuring said pluggable delivery manager at runtime.
42. The at least one program storage device of claim 33, wherein the intended recipient is indicated by the instant message.
43. The at least one program storage device of claim 33, wherein at least one available delivery mechanism of said one or more available delivery mechanisms is pluggable.
44. At least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform a method of routing instant messages, said method comprising:
selecting a delivery manager to route an instant message to an intended recipient of the instant message, said delivery manager being pluggable;
configuring, at runtime, said delivery manager, wherein the configuring comprises selecting a configuration for said delivery manager from a set of one or more configurations, said selecting using content of the instant message to make the selection;
querying, by the delivery manager, a user configuration of the intended recipient to determine one or more delivery mechanisms supported by the intended recipient;
determining, by the delivery manager, one or more available delivery mechanisms;
identifying, by the delivery manager, one or more delivery mechanisms that are common to a result of the querying and the determining to yield one or more possible delivery mechanisms;
selecting, from the one or more possible delivery mechanisms, at least one delivery mechanism supported by the delivery manager; and
routing the instant message to the intended recipient using the at least one delivery mechanism.
45. The at least one program storage device of claim 44, wherein said at least one delivery mechanism supported by the delivery manager is included within the configuration of the delivery manager.
46. The at least one program storage device of claim 44, wherein said routing comprises dispatching, by the delivery manager, the instant message to one or more delivery mechanisms of the at least one delivery mechanism in accordance with a policy specified by said configuration of the delivery manager.
47. The at least one program storage device of claim 44, wherein at least one available delivery mechanism of said one or more available delivery mechanisms is pluggable.
US09/866,410 2001-05-25 2001-05-25 Routing instant messages using configurable, pluggable delivery managers Abandoned US20020178227A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US09/866,410 US20020178227A1 (en) 2001-05-25 2001-05-25 Routing instant messages using configurable, pluggable delivery managers
JP2002147211A JP4384839B2 (en) 2001-05-25 2002-05-22 Route instant messages with a configurable and embeddable delivery manager
US10/193,632 US7284034B2 (en) 2001-05-25 2002-07-11 Transparent combination of instant message protocols
US11/037,857 US7412490B2 (en) 2001-05-25 2005-01-18 Routing instant messages using configurable, pluggable delivery managers
US12/179,610 US20080281937A1 (en) 2001-05-25 2008-07-25 Routing instant messages using configurable, pluggable delivery managers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/866,410 US20020178227A1 (en) 2001-05-25 2001-05-25 Routing instant messages using configurable, pluggable delivery managers

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US10/193,632 Continuation-In-Part US7284034B2 (en) 2001-05-25 2002-07-11 Transparent combination of instant message protocols
US11/037,857 Division US7412490B2 (en) 2001-05-25 2005-01-18 Routing instant messages using configurable, pluggable delivery managers

Publications (1)

Publication Number Publication Date
US20020178227A1 true US20020178227A1 (en) 2002-11-28

Family

ID=25347549

Family Applications (4)

Application Number Title Priority Date Filing Date
US09/866,410 Abandoned US20020178227A1 (en) 2001-05-25 2001-05-25 Routing instant messages using configurable, pluggable delivery managers
US10/193,632 Expired - Fee Related US7284034B2 (en) 2001-05-25 2002-07-11 Transparent combination of instant message protocols
US11/037,857 Expired - Fee Related US7412490B2 (en) 2001-05-25 2005-01-18 Routing instant messages using configurable, pluggable delivery managers
US12/179,610 Abandoned US20080281937A1 (en) 2001-05-25 2008-07-25 Routing instant messages using configurable, pluggable delivery managers

Family Applications After (3)

Application Number Title Priority Date Filing Date
US10/193,632 Expired - Fee Related US7284034B2 (en) 2001-05-25 2002-07-11 Transparent combination of instant message protocols
US11/037,857 Expired - Fee Related US7412490B2 (en) 2001-05-25 2005-01-18 Routing instant messages using configurable, pluggable delivery managers
US12/179,610 Abandoned US20080281937A1 (en) 2001-05-25 2008-07-25 Routing instant messages using configurable, pluggable delivery managers

Country Status (2)

Country Link
US (4) US20020178227A1 (en)
JP (1) JP4384839B2 (en)

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030023691A1 (en) * 2001-07-27 2003-01-30 Knauerhase Robert C. Routing messages using presence information
US20030172166A1 (en) * 2002-03-08 2003-09-11 Paul Judge Systems and methods for enhancing electronic communication security
US20030225924A1 (en) * 2002-02-12 2003-12-04 Edward Jung Logical routing system
US20040103318A1 (en) * 2002-06-10 2004-05-27 Akonix Systems, Inc. Systems and methods for implementing protocol enforcement rules
US20040109518A1 (en) * 2002-06-10 2004-06-10 Akonix Systems, Inc. Systems and methods for a protocol gateway
US20050055405A1 (en) * 2003-09-04 2005-03-10 International Business Machines Corporation Managing status information for instant messaging users
US20050055412A1 (en) * 2003-09-04 2005-03-10 International Business Machines Corporation Policy-based management of instant message windows
EP1613009A1 (en) * 2004-06-30 2006-01-04 Microsoft Corporation When-Free Messaging
US6985961B1 (en) * 2001-12-04 2006-01-10 Nortel Networks Limited System for routing incoming message to various devices based on media capabilities and type of media session
US20060123410A1 (en) * 2004-12-03 2006-06-08 International Business Machines Corporation Method and apparatus for defining, building and deploying pluggable and independently configurable install components
US20060123409A1 (en) * 2004-12-03 2006-06-08 International Business Machines Corporation Method and apparatus for creating a pluggable, prioritized configuration engine to be used for configuring a software during installation, update and new profile creation
US20060267802A1 (en) * 2002-03-08 2006-11-30 Ciphertrust, Inc. Systems and Methods for Graphically Displaying Messaging Traffic
US20070027992A1 (en) * 2002-03-08 2007-02-01 Ciphertrust, Inc. Methods and Systems for Exposing Messaging Reputation to an End User
US20070124577A1 (en) * 2002-06-10 2007-05-31 Akonix Systems and methods for implementing protocol enforcement rules
US20070195753A1 (en) * 2002-03-08 2007-08-23 Ciphertrust, Inc. Systems and Methods For Anomaly Detection in Patterns of Monitored Communications
US20070300286A1 (en) * 2002-03-08 2007-12-27 Secure Computing Corporation Systems and methods for message threat management
US20080177691A1 (en) * 2007-01-24 2008-07-24 Secure Computing Corporation Correlation and Analysis of Entity Attributes
US20080196099A1 (en) * 2002-06-10 2008-08-14 Akonix Systems, Inc. Systems and methods for detecting and blocking malicious content in instant messages
US20080281933A1 (en) * 2005-06-06 2008-11-13 Gregory Jensen Boss Session Management Enhancements for Instant Messaging Applications
US20090077260A1 (en) * 2000-11-16 2009-03-19 Rob Bearman Application platform
US7657616B1 (en) * 2002-06-10 2010-02-02 Quest Software, Inc. Automatic discovery of users associated with screen names
US7664822B2 (en) 2002-06-10 2010-02-16 Quest Software, Inc. Systems and methods for authentication of target protocol screen names
US7694128B2 (en) * 2002-03-08 2010-04-06 Mcafee, Inc. Systems and methods for secure communication delivery
US7756981B2 (en) 2005-11-03 2010-07-13 Quest Software, Inc. Systems and methods for remote rogue protocol enforcement
US20100192025A1 (en) * 2003-03-27 2010-07-29 Microsoft Corporation Availability and scalability in a messaging system in a manner transparent to the application
US7779156B2 (en) 2007-01-24 2010-08-17 Mcafee, Inc. Reputation based load balancing
EP2223280A1 (en) * 2007-11-16 2010-09-01 Microsoft Corporation Distributed messaging system with configurable assurances
US7882265B2 (en) 2002-06-10 2011-02-01 Quest Software, Inc. Systems and methods for managing messages in an enterprise network
US7903549B2 (en) 2002-03-08 2011-03-08 Secure Computing Corporation Content-based policy compliance systems and methods
US7937480B2 (en) 2005-06-02 2011-05-03 Mcafee, Inc. Aggregation of reputation data
US8045458B2 (en) 2007-11-08 2011-10-25 Mcafee, Inc. Prioritizing network traffic
US8132250B2 (en) 2002-03-08 2012-03-06 Mcafee, Inc. Message profiling systems and methods
US8160975B2 (en) 2008-01-25 2012-04-17 Mcafee, Inc. Granular support vector machine with random granularity
US8179798B2 (en) 2007-01-24 2012-05-15 Mcafee, Inc. Reputation based connection throttling
US8185930B2 (en) 2007-11-06 2012-05-22 Mcafee, Inc. Adjusting filter or classification control settings
US8204945B2 (en) 2000-06-19 2012-06-19 Stragent, Llc Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail
US8214497B2 (en) 2007-01-24 2012-07-03 Mcafee, Inc. Multi-dimensional reputation scoring
US8549611B2 (en) 2002-03-08 2013-10-01 Mcafee, Inc. Systems and methods for classification of messaging entities
US8561167B2 (en) 2002-03-08 2013-10-15 Mcafee, Inc. Web reputation scoring
US8578480B2 (en) 2002-03-08 2013-11-05 Mcafee, Inc. Systems and methods for identifying potentially malicious messages
US8589503B2 (en) 2008-04-04 2013-11-19 Mcafee, Inc. Prioritizing network traffic
US8621638B2 (en) 2010-05-14 2013-12-31 Mcafee, Inc. Systems and methods for classification of messaging entities
US8635690B2 (en) 2004-11-05 2014-01-21 Mcafee, Inc. Reputation based message processing
US8763114B2 (en) 2007-01-24 2014-06-24 Mcafee, Inc. Detecting image spam
USRE46174E1 (en) * 2001-01-18 2016-10-04 Genesys Telecommunications Laboratories, Inc. Method and apparatus for intelligent routing of instant messaging presence protocol (IMPP) events among a group of customer service representatives
US20160295402A1 (en) * 2015-03-30 2016-10-06 International Business Machines Corporation Handling instant message delivery media to end user
US9648168B2 (en) 2002-08-27 2017-05-09 Genesys Telecommunications Laboratories, Inc. Method and apparatus for optimizing response time to events in queue
USRE46776E1 (en) 2002-08-27 2018-04-03 Genesys Telecommunications Laboratories, Inc. Method and apparatus for optimizing response time to events in queue
USRE46852E1 (en) 2002-08-27 2018-05-15 Genesys Telecommunications Laboratories, Inc. Method and apparatus for anticipating and planning communication-center resources based on evaluation of events waiting in a communication center master queue

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8972717B2 (en) 2000-06-15 2015-03-03 Zixcorp Systems, Inc. Automatic delivery selection for electronic content
US6732101B1 (en) * 2000-06-15 2004-05-04 Zix Corporation Secure message forwarding system detecting user's preferences including security preferences
US7596599B1 (en) * 2002-07-31 2009-09-29 Facetime Communications, Inc. Management capabilities for real-time messaging networks
US7412481B2 (en) 2002-09-16 2008-08-12 Oracle International Corporation Method and apparatus for distributed rule evaluation in a near real-time business intelligence system
US8255454B2 (en) 2002-09-06 2012-08-28 Oracle International Corporation Method and apparatus for a multiplexed active data window in a near real-time business intelligence system
US8165993B2 (en) 2002-09-06 2012-04-24 Oracle International Corporation Business intelligence system with interface that provides for immediate user action
US7912899B2 (en) * 2002-09-06 2011-03-22 Oracle International Corporation Method for selectively sending a notification to an instant messaging device
US7945846B2 (en) 2002-09-06 2011-05-17 Oracle International Corporation Application-specific personalization for data display
US7899879B2 (en) 2002-09-06 2011-03-01 Oracle International Corporation Method and apparatus for a report cache in a near real-time business intelligence system
US7941542B2 (en) 2002-09-06 2011-05-10 Oracle International Corporation Methods and apparatus for maintaining application execution over an intermittent network connection
US7401158B2 (en) 2002-09-16 2008-07-15 Oracle International Corporation Apparatus and method for instant messaging collaboration
CN1525322A (en) * 2003-02-27 2004-09-01 Ħ��������˾ System and apparatus for dynamically downloading instant information protocol and method thereof
US7698367B2 (en) * 2003-03-06 2010-04-13 Siemens Communications, Inc. System and method for presence enabled e-mail delivery
US7761516B2 (en) * 2003-03-06 2010-07-20 Siemens Enterprise Communications, Inc. System and method for e-mail presence confirmation
US7539728B2 (en) * 2003-08-07 2009-05-26 International Business Machines Corporation Time sensitive electronic mail
US20050125496A1 (en) * 2003-12-03 2005-06-09 International Business Machines Corporation Automatically initiating an instant messaging action when a subscriber's availability status changes
ES2285030T3 (en) * 2003-12-08 2007-11-16 Research In Motion Limited METHOD AND DEVICE OF INSTANT MESSAGING.
US7430754B2 (en) * 2004-03-23 2008-09-30 Microsoft Corporation Method for dynamic application of rights management policy
EP1747642A4 (en) 2004-05-03 2007-10-24 Research In Motion Ltd User interface for integrating applications on a mobile communication device
US20060031317A1 (en) * 2004-06-04 2006-02-09 Wanrong Lin System for synthesizing instant message and presence attributes from polled, queried and event information sources
US20060047770A1 (en) * 2004-09-02 2006-03-02 International Business Machines Corporation Direct information copy and transfer between real-time messaging applications
US7730143B1 (en) * 2004-12-01 2010-06-01 Aol Inc. Prohibiting mobile forwarding
US7734695B2 (en) * 2005-03-08 2010-06-08 International Business Machines Corporation Personal and timed chat interface
US20070005711A1 (en) * 2005-07-01 2007-01-04 Imiogic, Inc. System and method for building instant messaging applications
FR2888706A1 (en) * 2005-07-12 2007-01-19 France Telecom METHOD FOR INTERPERSONAL RELATIONSHIP
US8706817B2 (en) * 2005-07-21 2014-04-22 International Business Machines Corporation Sender managed message privacy
US20070184855A1 (en) * 2006-02-03 2007-08-09 Research In Motion Limited Visual representation of contact location
US20070239830A1 (en) * 2006-04-05 2007-10-11 Barnes Thomas H Method and apparatus for instant message notification and forwarding
US8364122B2 (en) * 2006-12-21 2013-01-29 International Business Machines Corporation Delayed delivery messaging
US7885641B2 (en) 2007-06-18 2011-02-08 Research In Motion Limited Method and system for using subjects in instant messaging sessions on a mobile device
US20090100161A1 (en) * 2007-10-15 2009-04-16 International Business Machines Corporation System and method for managing communications
US9508059B2 (en) 2008-04-25 2016-11-29 T-Mobile Usa, Inc. Messaging device having a graphical user interface for initiating communication to recipients
US8843565B2 (en) * 2008-06-06 2014-09-23 International Business Machines Corporation Categorizing electronic messaging communications
US8281020B2 (en) * 2008-09-30 2012-10-02 Avaya Inc. Smart load balancing for call center applications
US20100306321A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Delivering messages using user-defined agents
US8032624B2 (en) * 2009-06-19 2011-10-04 Avaya Inc. Pluggable contact resolution
US8332758B2 (en) * 2009-11-25 2012-12-11 International Business Machines Corporation Plugin-based user interface contributions to manage policies in an IT environment
US9088624B2 (en) 2011-05-31 2015-07-21 Nokia Technologies Oy Method and apparatus for routing notification messages
US9147082B2 (en) * 2011-09-13 2015-09-29 Whorlr Llc Electronic messaging system with configurable delivery that maintains recipient privacy
US10574788B2 (en) * 2016-08-23 2020-02-25 Ebay Inc. System for data transfer based on associated transfer paths
US20210176198A1 (en) * 2019-12-06 2021-06-10 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Dynamically determining recipients of electronic messages

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4675507A (en) * 1985-04-17 1987-06-23 Matsushita Electric Industrial Co., Ltd. Heat cooking apparatus having a flat flexible heater
US4912457A (en) * 1988-12-21 1990-03-27 Ladd Electronics Detector and message annunciator device
US5408646A (en) * 1991-03-29 1995-04-18 International Business Machines Corp. Multipath torus switching apparatus
US5717741A (en) * 1992-08-26 1998-02-10 Bellsouth Corp. Method for handling telephonic messages
US5742668A (en) * 1994-09-19 1998-04-21 Bell Communications Research, Inc. Electronic massaging network
US5870549A (en) * 1995-04-28 1999-02-09 Bobo, Ii; Charles R. Systems and methods for storing, delivering, and managing messages
US5905777A (en) * 1996-09-27 1999-05-18 At&T Corp. E-mail paging system
US6012084A (en) * 1997-08-01 2000-01-04 International Business Machines Corporation Virtual network communication services utilizing internode message delivery task mechanisms
US6026404A (en) * 1997-02-03 2000-02-15 Oracle Corporation Method and system for executing and operation in a distributed environment
US6038296A (en) * 1997-10-07 2000-03-14 Lucent Technologies Inc. Internet/intranet user interface to a multimedia messaging system
US6075844A (en) * 1997-11-18 2000-06-13 At&T Corp. Messaging system with remote messaging recording device where the message is routed based on the spoken name of the recipient
US6147977A (en) * 1997-12-12 2000-11-14 Motorola, Inc. Method and apparatus for processing messages based on originator and recipient priorities
US6175859B1 (en) * 1998-10-28 2001-01-16 Avaya Technology Corp. Sender-defined time for reporting on the status of a sent message or of the message's recipient
US6260148B1 (en) * 1997-04-04 2001-07-10 Microsoft Corporation Methods and systems for message forwarding and property notifications using electronic subscriptions
US6301609B1 (en) * 1999-07-07 2001-10-09 Lucent Technologies Inc. Assignable associate priorities for user-definable instant messaging buddy groups
US20020087704A1 (en) * 2000-11-30 2002-07-04 Pascal Chesnais Systems and methods for routing messages to communications devices over a communications network
US6430604B1 (en) * 1999-08-03 2002-08-06 International Business Machines Corporation Technique for enabling messaging systems to use alternative message delivery mechanisms
US20020116477A1 (en) * 1999-12-08 2002-08-22 Parvathi Somashekar Technique for configuring network deliverable components
US6463462B1 (en) * 1999-02-02 2002-10-08 Dialogic Communications Corporation Automated system and method for delivery of messages and processing of message responses
US20020160757A1 (en) * 2001-04-26 2002-10-31 Moshe Shavit Selecting the delivery mechanism of an urgent message
US20030105821A1 (en) * 1999-01-11 2003-06-05 Niraj A. Shah Improved server and method for routing messages to achieve unified communications

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05347621A (en) * 1992-06-12 1993-12-27 Matsushita Electric Ind Co Ltd Composite medium communication server equipment
JP3431185B2 (en) * 1992-07-24 2003-07-28 株式会社東芝 Communication device and communication method
US5408656A (en) * 1992-09-23 1995-04-18 International Business Machines Corporation Method and system for non-specific address data retrieval in a data storage subsystem which includes multiple datasets stored at specific addresses
JPH07250094A (en) * 1994-03-11 1995-09-26 Ricoh Co Ltd Delivery system for electronic mail
US5675507A (en) 1995-04-28 1997-10-07 Bobo, Ii; Charles R. Message storage and delivery system
JPH08172440A (en) * 1994-12-16 1996-07-02 Canon Inc Data communication system and its data transfer method
JPH09134319A (en) * 1995-10-03 1997-05-20 Sony Electron Inc User interface for personal communication routing system and rule processing
JP3451512B2 (en) * 1996-01-12 2003-09-29 日本電信電話株式会社 Multimedia information delivery method and system
US5761286A (en) * 1996-03-19 1998-06-02 At&T Corp Method for enabling communications between calling an called multmedia terminals
JP3782867B2 (en) * 1997-06-25 2006-06-07 株式会社日立製作所 Information reception processing method and computer / telephony integration system
JP3755270B2 (en) * 1997-12-25 2006-03-15 カシオ計算機株式会社 Communications system
US6157945A (en) * 1998-07-01 2000-12-05 Ricoh Company, Ltd. Digital communication device and method including a routing function
JP2000172584A (en) * 1998-12-03 2000-06-23 Matsushita Electric Ind Co Ltd Device and method for transmitting and receiving electronic mail
JP3454740B2 (en) * 1999-02-26 2003-10-06 日本電信電話株式会社 Real-time information distribution system
US6691162B1 (en) * 1999-09-21 2004-02-10 America Online, Inc. Monitoring users of a computer network
US7844666B2 (en) * 2000-12-12 2010-11-30 Microsoft Corporation Controls and displays for acquiring preferences, inspecting behavior, and guiding the learning and decision policies of an adaptive communications prioritization and routing system
US6993564B2 (en) * 2000-12-22 2006-01-31 At&T Corp. Method of authorizing receipt of instant messages by a recipient user
US20020116336A1 (en) * 2001-02-05 2002-08-22 Athanassios Diacakis Method and device for displaying contact information in a presence and availability management system
US6771756B1 (en) * 2001-03-01 2004-08-03 International Business Machines Corporation System and method to facilitate team communication

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4675507A (en) * 1985-04-17 1987-06-23 Matsushita Electric Industrial Co., Ltd. Heat cooking apparatus having a flat flexible heater
US4912457A (en) * 1988-12-21 1990-03-27 Ladd Electronics Detector and message annunciator device
US5408646A (en) * 1991-03-29 1995-04-18 International Business Machines Corp. Multipath torus switching apparatus
US5717741A (en) * 1992-08-26 1998-02-10 Bellsouth Corp. Method for handling telephonic messages
US5742668A (en) * 1994-09-19 1998-04-21 Bell Communications Research, Inc. Electronic massaging network
US6350066B1 (en) * 1995-04-28 2002-02-26 Bobo, Ii Charles R. Systems and methods for storing, delivering, and managing messages
US5870549A (en) * 1995-04-28 1999-02-09 Bobo, Ii; Charles R. Systems and methods for storing, delivering, and managing messages
US5905777A (en) * 1996-09-27 1999-05-18 At&T Corp. E-mail paging system
US6026404A (en) * 1997-02-03 2000-02-15 Oracle Corporation Method and system for executing and operation in a distributed environment
US6260148B1 (en) * 1997-04-04 2001-07-10 Microsoft Corporation Methods and systems for message forwarding and property notifications using electronic subscriptions
US6012084A (en) * 1997-08-01 2000-01-04 International Business Machines Corporation Virtual network communication services utilizing internode message delivery task mechanisms
US6038296A (en) * 1997-10-07 2000-03-14 Lucent Technologies Inc. Internet/intranet user interface to a multimedia messaging system
US6075844A (en) * 1997-11-18 2000-06-13 At&T Corp. Messaging system with remote messaging recording device where the message is routed based on the spoken name of the recipient
US6147977A (en) * 1997-12-12 2000-11-14 Motorola, Inc. Method and apparatus for processing messages based on originator and recipient priorities
US6175859B1 (en) * 1998-10-28 2001-01-16 Avaya Technology Corp. Sender-defined time for reporting on the status of a sent message or of the message's recipient
US20030105821A1 (en) * 1999-01-11 2003-06-05 Niraj A. Shah Improved server and method for routing messages to achieve unified communications
US6463462B1 (en) * 1999-02-02 2002-10-08 Dialogic Communications Corporation Automated system and method for delivery of messages and processing of message responses
US6301609B1 (en) * 1999-07-07 2001-10-09 Lucent Technologies Inc. Assignable associate priorities for user-definable instant messaging buddy groups
US6430604B1 (en) * 1999-08-03 2002-08-06 International Business Machines Corporation Technique for enabling messaging systems to use alternative message delivery mechanisms
US20020116477A1 (en) * 1999-12-08 2002-08-22 Parvathi Somashekar Technique for configuring network deliverable components
US20020087704A1 (en) * 2000-11-30 2002-07-04 Pascal Chesnais Systems and methods for routing messages to communications devices over a communications network
US20020160757A1 (en) * 2001-04-26 2002-10-31 Moshe Shavit Selecting the delivery mechanism of an urgent message

Cited By (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8204945B2 (en) 2000-06-19 2012-06-19 Stragent, Llc Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail
US8272060B2 (en) 2000-06-19 2012-09-18 Stragent, Llc Hash-based systems and methods for detecting and preventing transmission of polymorphic network worms and viruses
US8583745B2 (en) 2000-11-16 2013-11-12 Opendesign, Inc. Application platform
US20090077260A1 (en) * 2000-11-16 2009-03-19 Rob Bearman Application platform
USRE46174E1 (en) * 2001-01-18 2016-10-04 Genesys Telecommunications Laboratories, Inc. Method and apparatus for intelligent routing of instant messaging presence protocol (IMPP) events among a group of customer service representatives
US20110029688A1 (en) * 2001-02-12 2011-02-03 Open Design, Inc. Logical routing system
US8819273B2 (en) 2001-02-12 2014-08-26 Opendesign, Inc. Logical routing system
US7269627B2 (en) * 2001-07-27 2007-09-11 Intel Corporation Routing messages using presence information
US20030023691A1 (en) * 2001-07-27 2003-01-30 Knauerhase Robert C. Routing messages using presence information
US20070299927A1 (en) * 2001-07-27 2007-12-27 Intel Corporation Routing messages using presence information
US6985961B1 (en) * 2001-12-04 2006-01-10 Nortel Networks Limited System for routing incoming message to various devices based on media capabilities and type of media session
US7809854B2 (en) * 2002-02-12 2010-10-05 Open Design, Inc. Logical routing system
US20030225924A1 (en) * 2002-02-12 2003-12-04 Edward Jung Logical routing system
US7694128B2 (en) * 2002-03-08 2010-04-06 Mcafee, Inc. Systems and methods for secure communication delivery
US7779466B2 (en) 2002-03-08 2010-08-17 Mcafee, Inc. Systems and methods for anomaly detection in patterns of monitored communications
US20030172166A1 (en) * 2002-03-08 2003-09-11 Paul Judge Systems and methods for enhancing electronic communication security
US20070300286A1 (en) * 2002-03-08 2007-12-27 Secure Computing Corporation Systems and methods for message threat management
US20070027992A1 (en) * 2002-03-08 2007-02-01 Ciphertrust, Inc. Methods and Systems for Exposing Messaging Reputation to an End User
US8549611B2 (en) 2002-03-08 2013-10-01 Mcafee, Inc. Systems and methods for classification of messaging entities
US8561167B2 (en) 2002-03-08 2013-10-15 Mcafee, Inc. Web reputation scoring
US8578480B2 (en) 2002-03-08 2013-11-05 Mcafee, Inc. Systems and methods for identifying potentially malicious messages
US20060267802A1 (en) * 2002-03-08 2006-11-30 Ciphertrust, Inc. Systems and Methods for Graphically Displaying Messaging Traffic
US8132250B2 (en) 2002-03-08 2012-03-06 Mcafee, Inc. Message profiling systems and methods
US8069481B2 (en) 2002-03-08 2011-11-29 Mcafee, Inc. Systems and methods for message threat management
US20070195753A1 (en) * 2002-03-08 2007-08-23 Ciphertrust, Inc. Systems and Methods For Anomaly Detection in Patterns of Monitored Communications
US7693947B2 (en) 2002-03-08 2010-04-06 Mcafee, Inc. Systems and methods for graphically displaying messaging traffic
US8042181B2 (en) 2002-03-08 2011-10-18 Mcafee, Inc. Systems and methods for message threat management
US8042149B2 (en) 2002-03-08 2011-10-18 Mcafee, Inc. Systems and methods for message threat management
US8631495B2 (en) 2002-03-08 2014-01-14 Mcafee, Inc. Systems and methods for message threat management
US7903549B2 (en) 2002-03-08 2011-03-08 Secure Computing Corporation Content-based policy compliance systems and methods
US7870203B2 (en) 2002-03-08 2011-01-11 Mcafee, Inc. Methods and systems for exposing messaging reputation to an end user
US7664822B2 (en) 2002-06-10 2010-02-16 Quest Software, Inc. Systems and methods for authentication of target protocol screen names
US7707401B2 (en) 2002-06-10 2010-04-27 Quest Software, Inc. Systems and methods for a protocol gateway
US8195833B2 (en) 2002-06-10 2012-06-05 Quest Software, Inc. Systems and methods for managing messages in an enterprise network
US20070124577A1 (en) * 2002-06-10 2007-05-31 Akonix Systems and methods for implementing protocol enforcement rules
US20080196099A1 (en) * 2002-06-10 2008-08-14 Akonix Systems, Inc. Systems and methods for detecting and blocking malicious content in instant messages
US7818565B2 (en) 2002-06-10 2010-10-19 Quest Software, Inc. Systems and methods for implementing protocol enforcement rules
US7774832B2 (en) 2002-06-10 2010-08-10 Quest Software, Inc. Systems and methods for implementing protocol enforcement rules
US7882265B2 (en) 2002-06-10 2011-02-01 Quest Software, Inc. Systems and methods for managing messages in an enterprise network
US20040109518A1 (en) * 2002-06-10 2004-06-10 Akonix Systems, Inc. Systems and methods for a protocol gateway
US7657616B1 (en) * 2002-06-10 2010-02-02 Quest Software, Inc. Automatic discovery of users associated with screen names
US20040103318A1 (en) * 2002-06-10 2004-05-27 Akonix Systems, Inc. Systems and methods for implementing protocol enforcement rules
US9648168B2 (en) 2002-08-27 2017-05-09 Genesys Telecommunications Laboratories, Inc. Method and apparatus for optimizing response time to events in queue
USRE47138E1 (en) 2002-08-27 2018-11-20 Genesys Telecommunications Laboratories, Inc. Method and apparatus for anticipating and planning communication-center resources based on evaluation of events waiting in a communication center master queue
USRE46853E1 (en) 2002-08-27 2018-05-15 Genesys Telecommunications Laboratories, Inc. Method and apparatus for anticipating and planning communication-center resources based on evaluation of events waiting in a communication center master queue
USRE46776E1 (en) 2002-08-27 2018-04-03 Genesys Telecommunications Laboratories, Inc. Method and apparatus for optimizing response time to events in queue
USRE46852E1 (en) 2002-08-27 2018-05-15 Genesys Telecommunications Laboratories, Inc. Method and apparatus for anticipating and planning communication-center resources based on evaluation of events waiting in a communication center master queue
US20100192025A1 (en) * 2003-03-27 2010-07-29 Microsoft Corporation Availability and scalability in a messaging system in a manner transparent to the application
US8135794B2 (en) * 2003-03-27 2012-03-13 Microsoft Corporation Availability and scalability in a messaging system in a manner transparent to the application
US20050055405A1 (en) * 2003-09-04 2005-03-10 International Business Machines Corporation Managing status information for instant messaging users
US20100250692A1 (en) * 2003-09-04 2010-09-30 International Business Machines Corporation Managing Status Information for Instant Messaging Users
US20050055412A1 (en) * 2003-09-04 2005-03-10 International Business Machines Corporation Policy-based management of instant message windows
EP1613009A1 (en) * 2004-06-30 2006-01-04 Microsoft Corporation When-Free Messaging
US8635690B2 (en) 2004-11-05 2014-01-21 Mcafee, Inc. Reputation based message processing
US7475396B2 (en) 2004-12-03 2009-01-06 International Business Machines Corporation Method and apparatus for defining, building and deploying pluggable and independently configurable install components
US8156485B2 (en) 2004-12-03 2012-04-10 Google Inc. Method and apparatus for creating a pluggable, prioritized configuration engine to be used for configuring a software during installation, update and new profile creation
US20060123410A1 (en) * 2004-12-03 2006-06-08 International Business Machines Corporation Method and apparatus for defining, building and deploying pluggable and independently configurable install components
US20060123409A1 (en) * 2004-12-03 2006-06-08 International Business Machines Corporation Method and apparatus for creating a pluggable, prioritized configuration engine to be used for configuring a software during installation, update and new profile creation
US7937480B2 (en) 2005-06-02 2011-05-03 Mcafee, Inc. Aggregation of reputation data
US8380792B2 (en) 2005-06-06 2013-02-19 International Business Machines Corporation Session management enhancements for instant messaging applications
US20080281933A1 (en) * 2005-06-06 2008-11-13 Gregory Jensen Boss Session Management Enhancements for Instant Messaging Applications
US7756981B2 (en) 2005-11-03 2010-07-13 Quest Software, Inc. Systems and methods for remote rogue protocol enforcement
US9544272B2 (en) 2007-01-24 2017-01-10 Intel Corporation Detecting image spam
US9009321B2 (en) 2007-01-24 2015-04-14 Mcafee, Inc. Multi-dimensional reputation scoring
US10050917B2 (en) 2007-01-24 2018-08-14 Mcafee, Llc Multi-dimensional reputation scoring
US20080177691A1 (en) * 2007-01-24 2008-07-24 Secure Computing Corporation Correlation and Analysis of Entity Attributes
US8578051B2 (en) 2007-01-24 2013-11-05 Mcafee, Inc. Reputation based load balancing
US8179798B2 (en) 2007-01-24 2012-05-15 Mcafee, Inc. Reputation based connection throttling
US7949716B2 (en) 2007-01-24 2011-05-24 Mcafee, Inc. Correlation and analysis of entity attributes
US8214497B2 (en) 2007-01-24 2012-07-03 Mcafee, Inc. Multi-dimensional reputation scoring
US8763114B2 (en) 2007-01-24 2014-06-24 Mcafee, Inc. Detecting image spam
US8762537B2 (en) 2007-01-24 2014-06-24 Mcafee, Inc. Multi-dimensional reputation scoring
US7779156B2 (en) 2007-01-24 2010-08-17 Mcafee, Inc. Reputation based load balancing
US8621559B2 (en) 2007-11-06 2013-12-31 Mcafee, Inc. Adjusting filter or classification control settings
US8185930B2 (en) 2007-11-06 2012-05-22 Mcafee, Inc. Adjusting filter or classification control settings
US8045458B2 (en) 2007-11-08 2011-10-25 Mcafee, Inc. Prioritizing network traffic
EP2223280A1 (en) * 2007-11-16 2010-09-01 Microsoft Corporation Distributed messaging system with configurable assurances
EP2223280A4 (en) * 2007-11-16 2012-08-08 Microsoft Corp Distributed messaging system with configurable assurances
US8160975B2 (en) 2008-01-25 2012-04-17 Mcafee, Inc. Granular support vector machine with random granularity
US8589503B2 (en) 2008-04-04 2013-11-19 Mcafee, Inc. Prioritizing network traffic
US8606910B2 (en) 2008-04-04 2013-12-10 Mcafee, Inc. Prioritizing network traffic
US8621638B2 (en) 2010-05-14 2013-12-31 Mcafee, Inc. Systems and methods for classification of messaging entities
US20160294737A1 (en) * 2015-03-30 2016-10-06 International Business Machines Corporation Handling instant message delivery media to end user
US10080135B2 (en) * 2015-03-30 2018-09-18 International Business Machines Corporation Handling instant message delivery media to end user
US10085146B2 (en) * 2015-03-30 2018-09-25 International Business Machines Corporation Handling instant message delivery media to end user
US20160295402A1 (en) * 2015-03-30 2016-10-06 International Business Machines Corporation Handling instant message delivery media to end user

Also Published As

Publication number Publication date
US7284034B2 (en) 2007-10-16
JP2003101588A (en) 2003-04-04
US7412490B2 (en) 2008-08-12
US20080281937A1 (en) 2008-11-13
US20020178231A1 (en) 2002-11-28
JP4384839B2 (en) 2009-12-16
US20050125499A1 (en) 2005-06-09

Similar Documents

Publication Publication Date Title
US7412490B2 (en) Routing instant messages using configurable, pluggable delivery managers
EP2218211B1 (en) Processing of network content and services for mobile or fixed devices
US8051057B2 (en) Processing of network content and services for mobile or fixed devices
US7363345B2 (en) Electronic notification delivery mechanism selection based on recipient presence information and notification content
US7725542B2 (en) Forwarding IM messages to E-mail
US6868544B2 (en) Method and system for general-purpose interactive notifications
US7529801B2 (en) Method and system for multiple instant messaging login sessions
US6779022B1 (en) Server that obtains information from multiple sources, filters using client identities, and dispatches to both hardwired and wireless clients
EP1021897B1 (en) Messaging application having a plurality of interfacing capabilities
US20040158609A1 (en) Forwarding to automatically prioritized IM accounts based upon priority and presence
US20070143414A1 (en) Reference links for instant messaging
CA2544717C (en) Storing, sending and receiving text message threads on a wireless communication device
WO2011131262A1 (en) Controlling message delivery in publish/subscribe messaging
US7826406B2 (en) Storing, sending and receiving text message threads on a wireless communication device
CA2496283C (en) Method and apparatus for pushing e-mail to wireless communication devices
US20060086798A1 (en) Deferred email message system and service
US20030018721A1 (en) Unified messaging with separate media component storage
EP0869639A2 (en) Message tracking
KR20070067613A (en) E-mail protocol for instant message
EP1713220B1 (en) Method and apparatus for pushing e-mail to wireless communication devices
Marti Active messenger: Email filtering and mobile delivery
EP1540903B1 (en) Method and apparatus for pushing e-mail to wireless communication devices

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MATSA, MOSHE M. E.;QUIAOT, JULIUS Q.;VINCENT, CHRISTOPHER R.;REEL/FRAME:011893/0439

Effective date: 20010521

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION