IP Library Granted Patent US 8,484,350
Granted Patent B2
US 8,484,350 · App. 12/095,779 · Granted Jul 9, 2013

Messaging service

Inventors: Jan Muntermann (Langen, DE); Natasa Milic-Frayling (Cambridge, GB)
Assignee: Microsoft Corporation
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 8,484,350
App. No.
12/095,779
Granted
Jul 9, 2013
Kind
B2
Abstract

A messaging service is described which provides application agnostic and cross-platform messaging. Senders compile message content components and specify message preferences. The messaging service calculates a utility and cost of sending the message over different types of communication channel. A communication channel is selected using the cost and utility information and the message service formats the message content components for the particular communication channel. The message is then sent for example, as email, SMS, MMS or other suitable type depending on the selected channel. The utility is calculated using the sender message preferences, communication channel attributes, sending and recipient device attributes and preferably also, but not essentially, preferences of the recipient.

Claims (32)

1. A message server arranged to send a message from a sending entity to a recipient entity over one of a plurality of communication channels, said message server comprising:

an input arranged to receive message attribute values associated with the message and one or more message content parts for the message, the message content parts having been identified as components to be sent to the message server from the sending entity by user selections at a web-based communication link between the sending entity and the message server;

an input arranged to access communication channel attribute values associated with one or more of the communication channels, sending-entity attribute values associated with the sending entity and recipient-entity attribute values associated with the recipient entity;

a processor arranged to calculate a utility of sending the message over at least one of the communication channels on the basis of at least some of the message attribute values, communication channel attribute values, sending-entity attribute values, and recipient-entity attribute values; and

an output arranged to recompile one or more of the message content parts for sending over one of the communication channels, said communication channel having been selected on the basis of the calculated utility, wherein the output is further arranged to send information to the sending entity about any message content parts omitted from the message.

2. A message server as claimed in claim 1 wherein the sending entity and the recipient entity each comprise messaging application software, the sending entity application software being incompatible with the recipient entity application software and wherein the output is arranged to format the message content parts for compatibility with the recipient entity application software.

3. A message server as claimed in claim 1 wherein the processor is also arranged to calculate the utility on the basis of a cost of sending the message.

4. A message server as claimed in claim 1 wherein said input is arranged to receive recipient message preference attribute values and wherein the utility is calculated also on the basis of at least some of those recipient message preference attribute values.

5. A message server as claimed in claim 1 wherein said input is arranged to receive external context information and wherein the utility is calculated also on the basis of at least some of that external context information, the external context information including information from RSS feeds.

6. A message server as claimed in claim 1 wherein said processor is arranged to form a utility relation vector covering the relation of utilities when sending the message via one communication channel compared to another.

7. A message server as claimed in claim 6 wherein said processor is also arranged to form a cost relation vector.

8. A message server as claimed in claim 7 wherein the processor is arranged to concatenate the utility relation vector and cost relation vector and to apply a metric to the concatenated vector to enable the communication channels to be ranked.

9. A message server as claimed in claim 8 wherein the output is also arranged to send information about message status to the sending entity and or the recipient entity.

10. A message server as claimed claim 1 wherein the output is also arranged to send information to the recipient entity about any message content parts omitted from the user selections for sending.

11. A method of sending a message from a message server to a recipient entity over one of a plurality of communication channels using one or more computer executable instructions stored on a computer-readable storage media, the executable instructions when executed on a processor implement the method comprising the steps of:

receiving message attribute values associated with the message and one or more message content parts for the message, the message content parts having been identified as components to be sent to the message server from the sending entity by user selections at a web-based communications link between a sending entity and the message server;

accessing communication channel attribute values associated with one or more of the communication channels, sending-entity attribute values associated with the sending entity, and recipient-entity attribute values associated with the recipient entity;

calculating a utility of sending the message over at least one of the communication channels on the basis of at least some of the message attribute values, communication channel attribute values, sending-entity attribute values, and recipient-entity attribute values; and

sending information to the sending entity about any message content parts omitted from the message.

12. A method as claimed in claim 11 wherein the sending entity and the recipient entity each comprise messaging application software, the sending entity application software being incompatible with the recipient entity application software and wherein the step of formatting one or more of the message content parts comprises doing so for compatibility with the recipient entity application software.

13. A method as claimed in claim 12 which further comprises:

calculating the utility on the basis of a cost of sending the message.

14. A method as claimed in claim 13 which further comprises:

receiving recipient message preference attribute values and wherein the utility is calculated also on the basis of at least some of those recipient message preference attribute values.

15. A method as claimed in claim 14 which further comprises:

receiving external context information and calculating the utility on the basis of at least some of the external context information.

16. A method as claimed in claim 11 which further comprises:

forming a utility relation vector covering a relation of utilities when sending the message via one communication channel compared to another.

17. A method as claimed in claim 16 which further comprises:

forming a cost relation vector.

18. A method as claimed in claim 17 which further comprises:

concatenating the utility relation vector and cost relation vector and applying a metric to the concatenated vector to enable the communication channels to be ranked in terms of utility and cost.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2008
From: MUNTERMANN, JAN; MILIC-FRAYLING, NATASA
To: MICROSOFT CORPORATION
Reel/Frame 021319/0780 →
Priority Claims (1)
EP 05026309 · Dec 2, 2005 · regional
Continuity (1)
Related Publication 20080294735A1 · Nov 27, 2008