IP Library Granted Patent US 9,667,671
Granted Patent B2
US 9,667,671 · App. 13/892,628 · Granted May 30, 2017

Method and system for facilitating communication between message consumers and message producers

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,667,671
App. No.
13/892,628
Granted
May 30, 2017
Kind
B2
Abstract

A method and system for facilitating communication between message producers and message consumers is disclosed. When a message producer is interested in identifying a message consumer for processing generated messages, the message producer declares a consumer identification rule. A messaging service manager identifies a set of suitable message consumers by comparing the consumer identification rule with a set of attributes associated with each of the message consumers registered with the messaging service manager and assigns channels associated with the set of identified message consumers to the message producer. The message producer may select a channel associated with a message consumer to initiate communication between the message producer and the message consumer.

Claims (50)

1. A method for facilitating communication between message consumer devices and message, producer devices, the method comprising:

in an application server communicably connected to one or more message consumer devices and message producer devices via a computer network:

receiving, by one or more processors, a consumer identification rule from a message producer device over the communication network, wherein the consumer identification rule comprises one or more parameters associated with a task, wherein the one or more parameters comprise a message format requirement and a function requirement, the function requirement comprising a requirement to print a message;

clustering, by the one or more processors, a set of attributes associated with each of the message consumer devices to generate one or more clusters, based on a second semantic weight associated with each of the set of attributes, wherein each of the set of attributes comprises a message format capability and a function capability, the function capability comprising a capability to print the message;

comparing, by the one or more processors, the consumer identification rule with the set of attributes associated with each of the message consumer devices, wherein the comparison comprises:

assigning, by the one or more processors, a first semantic weight to each of the one or more parameters in the consumer identification rule, and

determining, by the one or more processors, a cumulative semantic weight of the consumer identification rule, wherein the cumulative semantic weight corresponds to a weighted mean of the first semantic weight assigned to each of the one or more parameters, wherein the cumulative semantic weight of the consumer identification rule is compared with a centroid of each cluster of the one or more clusters;

identifying, by the one or more processors, a valid first set of message consumers dynamically from the message consumer devices to process the task, based on the comparison of the consumer identification rule with the set of attributes stored in a knowledge base;

assigning, by the one or more processors, a physical communication channel associated with at least one message consumer device from the first set of message consumer devices to the message producer device; and

initiating, by the one or more processors, communication between the message producer device and the at least one message consumer device in real-time through the physical communication channel,

wherein the at least one message consumer device receives the message via the physical communication channel and prints the message.

2. The method of claim 1 , further comprising registering, by the one or more processors, the message consumer devices, wherein the set of attributes are defined for each of the message consumers during the registration.

3. The method of claim 2 , wherein the set of attributes associated with each of the message consumer devices is represented by a node.

4. The method of claim 2 , further comprising assigning, by the one or more processors, a dedicated physical communication channel to each of the message consumer devices during the registration.

5. The method of claim 1 , wherein the first set of message consumer devices are identified based on a degree of similarity between the consumer identification rule and the set of attributes, wherein the degree of similarity is determined based on the comparison between the consumer identification rule and the set of attributes.

6. The method of claim 1 , further comprising generating, by the one or more processors, an error notification and transmitting, by the one or more processors through a transceiver, the error notification to the message producer device when no message consumer device is identified based on the comparison between the consumer identification rule with the set of attributes.

7. The method of claim 6 , further comprising modifying, by the one or more processors, the consumer identification rule on reception of the error notification, wherein the modified consumer identification rule is compared with the set of attributes to identify a second set of message consumer devices from the message consumer devices.

8. The method of claim 1 , wherein the set of attributes further comprises a set of message processing rules and a set of security parameters.

9. The method of claim 8 , wherein the set of message processing rules comprises a message type and a set of actions performed by the message consumer devices on receiving a message.

10. The method of claim 8 , wherein the set of quality of service parameters comprises at least one of speed, reliability, performance, or load handling of the message consumer devices.

11. The method of claim 8 , wherein the set of security parameters comprises at least one of level of confidentiality, public or private access to the message consumer device or network of the message consumer device.

12. An application server for facilitating communication between message consumer devices and message producer devices via a computer network, the application server comprising:

one or more processors configured to:

receive a consumer identification rule from a message producer device over the communication network, wherein the consumer identification rule comprises one or more parameters associated with a task, wherein the one or more parameters comprise a message format requirement and a function requirement, the function requirement comprising a requirement to print a message;

cluster a set of attributes associated with each of the message consumer devices to generate one or more clusters, based on a second semantic weight associated with each of the set of attributes, wherein each of the set of attributes comprises a message format capability and a function capability, the function capability comprising a capability to print the message;

compare the consumer identification rule with the set of attributes associated with each of the message consumer devices, wherein the comparison comprises:

assigning a first semantic weight to each of the one or more parameters in the consumer identification rule, and

determining a cumulative semantic weight of the consumer identification rule, wherein the cumulative semantic weight corresponds to a weighted mean of the first semantic weight assigned to each of the one or more parameters, wherein the cumulative semantic weight of the consumer identification rule is compared with a centroid of each cluster of the one or more clusters;

identify a valid first set of message consumer devices dynamically from the message consumer devices to process the task, based on the comparison of the consumer identification rule with the set of attributes stored in a knowledge base;

assign a physical communication channel associated with at least one message consumer device from the first set of message consumer devices to the message producer device; and

initiate communication between the message producer device and the at least one message consumer device in real-time through the physical communication channel,

wherein the at least one message consumer device receives the message via the physical communication channel and prints the message.

13. The application server of claim 12 , wherein the one or more processors are further configured to register the message consumer devices, wherein a rule manager is configured to define the set of attributes for each of the message consumer devices during the registration.

14. The application server of claim 13 , wherein the one or more processors are further configured to assign a dedicated physical communication channel to each of the message consumer devices during the registration.

15. The application server of claim 13 , wherein the set of attributes associated with each of the message consumer devices is represented by a node.

16. The application server of claim 12 , wherein the first set of message consumer devices are identified based on a degree of similarity between the consumer identification rule and the set of attributes, wherein the degree of similarity is determined based on the comparison of the consumer identification rule with the set of attributes.

17. The application server of claim 12 , wherein the one or more processors are further configured to generate an error notification and returning the error notification to the message producer device when no message consumer device is identified based on the comparison of the consumer identification rule with the set of attributes.

18. The application server of claim 17 , wherein the consumer identification rule is modified by the message producer device, wherein the modified consumer identification rule is compared with the set of attributes to identify a second set of message consumer devices from the message consumers.

19. A computer program product for use with a computer, the computer program product comprising a non-transitory computer-readable medium storing a computer-readable program code embodied therein for facilitating communication between message consumer devices and message producer devices via a computer network, the computer-readable program code is executable by one or more processors in the computer to:

receive a consumer identification rule from a message producer device over the communication network, wherein the consumer identification rule comprises one or more parameters associated with a task, wherein the one or more parameters comprise a message format requirement and a function requirement, the function requirement comprising a requirement to print a message;

cluster a set of attributes associated with each of the message, to generate one or more clusters, based on a second semantic weight associated with each of the set of attributes, wherein each of the set of attributes comprises a message format capability and a function capability, the function capability comprising a capability to print the message;

compare the consumer identification rule with the set of attributes associated with each of the message consumer devices, wherein the comparison comprises:

assigning a first semantic weight to each of the one or more parameters in the consumer identification rule, and

determining a cumulative semantic weight of the consumer identification rule, wherein the cumulative semantic weight corresponds to a weighted mean of the first semantic weight assigned to each of the one or more parameters, wherein the cumulative semantic weight of the consumer identification rule is compared with a centroid of each cluster of the one or more clusters;

identify at least one valid message consumer device dynamically from the message consumers, to process the task, based on the comparison of the consumer identification rule with the set of attributes associated with each of the message consumer devices, wherein the set of attributes are stored in a knowledge base;

assign a physical communication channel associated with the at least one message consumer device to the message producer device; and

initiate communication between the message producer device and the at least one message consumer device in real-time through the physical communication channel,

wherein the at least one message consumer device receives the message via the physical communication channel and prints the message.

20. The method of claim 3 , wherein the centroid, of each cluster of the one or more clusters, is determined based on a mean of the second semantic weight associated with the set of attributes of the message consumer devices.

21. The application server of claim 15 , wherein the centroid, of each cluster of the one or more clusters, is determined based on a mean of the second semantic weight associated with the set of attributes of the message consumer devices.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2025
From: XEROX CORPORATION
To: GENESEE VALLEY INNOVATIONS, LLC
Reel/Frame 073842/0479 →
SECOND LIEN NOTES PATENT SECURITY AGREEMENT Recorded Jul 2, 2025
From: XEROX CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 071785/0550 →
FIRST LIEN NOTES PATENT SECURITY AGREEMENT Recorded Apr 11, 2025
From: XEROX CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 070824/0001 →
SECURITY INTEREST Recorded Feb 13, 2024
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 066741/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT RF 064760/0389 Recorded Feb 13, 2024
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: XEROX CORPORATION
Reel/Frame 068261/0001 →
SECURITY INTEREST Recorded Nov 20, 2023
From: XEROX CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 065628/0019 →
SECURITY INTEREST Recorded Jun 22, 2023
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 064760/0389 →
RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 062740/0214 Recorded May 18, 2023
From: CITIBANK, N.A., AS AGENT
To: XEROX CORPORATION
Reel/Frame 063694/0122 →
SECURITY INTEREST Recorded Nov 10, 2022
From: XEROX CORPORATION
To: CITIBANK, N.A., AS AGENT
Reel/Frame 062740/0214 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2013
From: RAAJARATNAM, PREETHI RAJ; PERIASAMY, SELVAKUMAR , ,; BAKTHAVACHALU, ARUN , ,; LIU, HUA , ,
To: XEROX CORPORATION
Reel/Frame 030407/0109 →