The present invention relates to multimedia communication protocol, and more particularly to enhancing instant messaging with caller identification.
Instant Messaging (IM) allows sending and receiving messages in real-time independent of location and is intended for immediate end-user delivery. IM messages are typically grouped together in brief live conversations. IM is often available as a service within intranets and IP networks.
Session Initiation Protocol (SIP) is an applicaton-layer, text-based, client-server protocol modeled after HTTP/SMTP protocols. SIP is the standard IETF (Internet Engineering Task Force) signaling protocol used for setting up, controlling, and dismantling of interactive communication sessions such as Instant Messaging. Initially, SIP was developed for Internet telephony applications, multimedia distribution, and multimedia conferences.
SIP sessions between users are created by SIP invitations that carry session descriptions. The session descriptions allow users to agree on a set of compatible media types. SIP uses proxy servers to route requests to a user's current location, to authenticate and authorize users for services, to implement provider call-routing policies, and to provide features to users.
SIP has been extended to allow for IM. SIMPLE (SIP for Instant Messaging and Presence Leveraging) is an open standard IETF that includes a set of SIP extensions that support Presence and Instant Messaging. “Presence” is the availability of an individual to send or receive messages. Presence can exist independently of IM capabilities. IM capabilities are an enhancement to presence. Additionally, SIMPLE allows instant messages to be sent directly to other clients, rather than through a server or the Internet.
Referring now to
A caller identification system for an instant messaging service comprises a sender that generates a request to initiate a communication session. The request includes a request body that further includes data of two or more message content types, wherein the data is indicative of the sender, and a request header that indicates that the request body includes data of the two or more message content types. A recipient receives the request and initiates the communication session with the sender if the data indicates that the sender is a known sender.
A method for identification of a known user in an instant messaging service comprises generating an invite request that includes data indicative of a sender. The invite request is sent to a recipient user. It is determined whether the data indicates that the sender is a known user. A communication session is established if the sender is a known user.
Further areas of applicability of the present invention will become apparent from the detailed description provided hereinafter. It should be understood that the detailed description and specific examples, while indicating the preferred embodiment of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention.
The present invention will become more fully understood from the detailed description and the accompanying drawings, wherein:
The following description of the preferred embodiment(s) is merely exemplary in nature and is in no way intended to limit the invention, its application, or uses.
Referring now to
The invite request header 22 indicates a MIME content type of “multipart/mixed,” thereby indicating that the invite body 24 includes two or more content body parts, each having different MIME content types. Different parts of the invite body 24 are separated by a boundary separator. The boundary separator is specified in the invite request header 22. An exemplary enhanced invite request 20 including an SDP message and a gif image is shown in Appendix A. In further aspects of the invention, the invite body 24 may include a text message, audio files, video clips, or other content types. In still another aspect of the invention, the invite body 24 may include a URL or other reference that contains the necessary caller identification content.
Referring now to
The proxy server 46 receives the request message 48 from the first user 42. The request message 48 indicates that the second user 44 is the destination user. The proxy server 46 includes a database 50 of user information, such as the address for the second user 44. The proxy server 46 looks up the user information and forwards the request message 48 to the second user 44.
The second user 44 receives the request message 48. The second user 44 determines if the request message 48 includes the private code indicating that the first user 42 is a known user. The second user 44 may also receive any audio or visual data included with the request message 48 to determine if the first user 42 is a known user. The second user 44 generates a reply message 52 to indicate whether the request is accepted or rejected. The second user 44 sends the reply message 52 to the proxy server 46. The proxy server 46 forwards the reply message 52 to the first user 42. If the second user 44 accepted the request to initiate an IM session, the first user 42 can begin to send messages directly to the second user 44. In another aspect of the invention, the request message 48 may be sent to multiple recipients in order to initiate a group IM session.
In a further aspect of the invention, the information in the request message 48 may be encrypted. For example, the audio or visual data or the private code may be encrypted with the digital signature. In digital signature applications, the message is encrypted with a public key. The first user 42 and other known users use a public key obtained from the second user 44 to send messages to the second user 44. The second user 44 receives the encrypted message from the first user 42 and uses a private key to decrypt the encrypted message. The private key of the second user 44 corresponds to the public key distributed to the known users. In this manner, the second user 44 may authenticate that the first user 42 is a known user by way of the audio or visual data or the private code. Messages from unknown users can be automatically filtered out.
A method 60 for caller identification in IM applications is shown in
Alternatively, the second user may automatically generate a reject message at step 80 if the first user is not a known user. In this case, the proxy server does not transmit the necessary information to the first user, preventing the first user from establishing an IM session with the second user.
It is also to be understood that the present invention may be extended to other suitable protocols, such as Wireless Village (WV) instant messaging, presence protocol, and/or Extensible Messaging and Presence Protocol (XMPP).
The description of the invention is merely exemplary in nature and, thus, variations that do not depart from the gist of the invention are intended to be within the scope of the invention. Such variations are not to be regarded as a departure from the spirit and scope of the invention.
From: user1@somedomain.com
To: user2@anotherdomain.com
Date: Sun, 21 Mar. 1993 23:56:48-0800 (PST)
Subject: Sample Mulitpart INVITE Message
MIME-Version: 1.0
Content-type: multipart/mixed; boundary=“boundary”
—boundary
Content-type: application/SDP; charset=ISO-10646
v=0
o=audit 2890844526 2890842807 5 IN IP4 134.177.64.4
s=SDP seminar
c=IN IP4 MG141.nortelnetworks.com
t=2873397496 2873404696
m=audio 9092 RTP/AVP 0 3 4
—boundary
Content-type: Image/gif;
—boundary—