The present invention is related generally to computer networks and, more particularly, to a system and method for multi-protocol communication in a computer network.
Computer networks, such is the Internet, are extensively used for storage and retrieval of a vast reservoir of information. Person to person communication, in the form of electronic mail (e-mail), has also become widely accepted as replacement for conventional mail and facsimile. Any individual who has access to the Internet can establish an e-mail account in communicate with other individuals on the Internet.
With older forms of communication, such as telephones, a user need only know the telephone number they wish to call. A caller may have a particular local service provider and a different long distance carrier, while the callee may have a different long distance carrier and local service provider than the caller. However, the local service providers and long distance carriers of the caller and callee are irrelevant because the telephone system uses a standard communication protocol.
Similarly, e-mail communication uses a standard communication protocol that allows the transmission of messages between users that may have different service providers. A message sender can subscribe to or obtain an account with a first service provider and still send an e-mail message to a recipient even when the recipient subscribes to a second service provider. This is true even when each service provider may have a unique communication protocol to communicate with its own subscribers because the communication between subscribers utilizes a standard communication protocol. The communication is handled by the services themselves. That is, subscriber A tells service provider 1 to send a message subscriber B on service provider 2, and service provider 1 uses a protocol common to service providers 1 and 2 to relay the message from subscriber A to subscriber B via service 2.
A new form of e-mail communication, known as instant messaging, is gaining popularity among users of the Internet. As shown in a recent popular movie, xe2x80x9cYou""ve Got Mail,xe2x80x9d two individuals can engage in an ongoing electronic communication without the need for entering the message recipient""s e-mail address for each individual transmission. The advantage of instant messaging is that two or more individuals may engage in an ongoing electronic xe2x80x9cchatxe2x80x9d by simply typing a message on the keyboard and pressing the xe2x80x9cEnterxe2x80x9d button on the computer keyboard or by clicking on a xe2x80x9cSendxe2x80x9d icon to the computer display screen. Another popular feature that some Internet service providers offer is presence data that allows a user to monitor another subscriber""s activity or presence on the Internet. As those skilled in the art can appreciate, the term xe2x80x9cpresencexe2x80x9d refers to an individual being logged onto a particular service.
Unfortunately, service providers do not utilize a standard communication protocol for instant messaging or activity data. As a result, a particular service provider only supports instant messaging and activity data between its own subscribers. If a user wishes to send an instant message to a particular individual that subscribes to a second service provider, the user must also subscribe to the second service provider and logon to the second service provider system to engage in instant messaging session with the particular individual. At the very least, this is a cumbersome procedure. In addition, even if an individual subscribes to two different service providers, he cannot engage in an instant messaging session with participants who are subscribers to the different service providers.
Therefore, it can be appreciated that there is a significant need for a communication system that will allow individuals to engage in an instant messaging session even if the individuals are subscribers to different service providers. The present invention provides this, and other advantages, as will be apparent from the following detailed description and accompanying figures.
A system and method for multi-protocol messaging communication on a computer network includes a user interface that allows the entry of data messages and/or commands and a conversion platform that translates the messages and/or commands to the unique messaging format and protocol supported by one or more service providers.
The invention is particularly useful for instant messaging on a computer network, such as the Internet, where a variety of service providers support instant messaging in a unique format and protocol applicable only to that service provider. The present invention provides a conversion platform that converts from a standard communication protocol used by the user interface to the messaging format and protocol used by each of the service providers.
In one embodiment, the user interface is coupled to the conversion platform by an application programming interface (API). The API provides a set of methods and functions to support commands that are recognized by one or more of the service providers. The API allows independent development of an application software program that can effectively communicate with the various service providers by using program calls using the standardized data structure of the API.
The function calls to the API are access the conversion platform and are routed to a services protocol module for each of the service providers. The services protocol module converts from the unified functionality of the API to the unique messaging format and protocol of its respective service provider. Certain commands that are supported by only selected service providers will be routed only to the service protocol modules that support the particular command. Following conversion of the API command to the unique messaging format and protocol of the service provider(s), the converted message is transmitted to each service provider.
Data, such as messages and/or commands, received from the service providers are processed in a reverse fashion with the respective services protocol module converting the message and/or command to a standardized format utilized by the API. The API provides the data and/or command to the application software program using the standardized data structures defined by the API.
The system also supports multi-protocol real-time presence of contacts on the computer network. A query message regarding user status may be sent to one or more of the service providers via the API and conversion platform. Responses received from the service providers are processed by the conversion platform in the API and provided to the application software program. Similarly, when a user logs on to a computer network, the user""s presence may be reported to others via a function call to the API and the conversion platform to report the user""s presence to the service provider.