USO0RE41848E

(19) United States (12) Reissued Patent

(10) Patent Number: US RE41,848 E (45) Date of Reissued Patent: Oct. 19, 2010

Daniell et al.

(54)

(75)

SYSTEM USING TRANSPORT PROTOCOL OBJECTS LOCATED AT AGENT LOCATION TO GENERATE SESSION ID AND TO PROVIDE TRANSLATION BETWEEN DIFFERENT INSTANT MESSAGING PROTOCOLS

6,463,078 B1 6,535,486 B1

10/2002 Engstrom et a1. ......... .. 370/466 3/2003 Naudus et a1. ...... .. 370/235 6,549,937 B1 * 4/2003 Auerbach et a1. . 709/206 6,629,163 B1

9/2003

Balassanian .... ..

710/33

6,738,822 B2

5/2004 Fukasawa et a1. .

709/231

2002/0087704 A1 7/2002 2002/0118809 A1 8/2002 2002/0163934 A1 * 11/2002

Inventors: William Todd Daniell, Marietta, GA

(US); Lee G. Friedman, Alpharetta, GA

Chesnais et a1. .......... .. 709/228 Eisenberg ............ .. 379/20201 Moore et a1. ..... .. 379/465

2003/0054810 A1

3/2003 Chen et a1.

2004/0015723 A1 *

1/2004

455/422

Pham et a1. ............... .. 713/201

(US); Larry Graham Kent, Jr., OTHER PUBLICATIONS

Loganville, GA (US); Joel A. Davis, Marietta, GA (US); Brian Keith Daigle, Marietta, GA (US)

Peter SaintiAndre, “Jabber FAQ” May 13, 2001, jabberorg, pp. 1*36.*

(73) Assignee: AT&T Intellectual Property I, L.P., Reno, NV (US)

(21) (22)

Appl. No .:

Filed:

Peter SaintiAndre, “XML Messaging With Jabber” Oct. 6, 2000, O’Reilly Media, Inc. pp. 1*3.* Instant Messaging/Presence Protocol Requirements Day et al.; Feb. 2000. A Model for Presence and Instant Messaging Day et al., Feb.

12/286,136 Sep. 24, 2008

2000. Related US. Patent Documents

Extensible Markup Language @(ML) 1.0 (Second Edition)

Reissue of:

(64)

Patent No.:

6,976,092

Issued:

Dec. 13, 2005

Appl. No.:

10/274,40s

Filed:

Oct. 18, 2002

W3C XML Core Working Group (WG); Oct. 6, 2000. Common Presence and Instant Messaging: Message Format Atkins et al., Feb. 20, 2002. Common Presence and Instant Messaging (CPIM) Presence Information Data Format Sugano et al.; May 2002. Common Presence and Instant Messaging (CPIM) Crocker

US. Applications: (60)

Provisional application No. 60/419,613, ?led on Oct. 17, 2002, and provisional application No. 60/411,336, ?led on

(51)

Int. Cl. G06F 15/16

et al.; Aug. 14,2002.

(Continued)

Sep. 17,2002.

Primary ExamineriLe Luu (74) Attorney, Agent, or

(2006.01)

FirmiThomas,

Kayden,

Horstemeyer & Risley, LLP

(52) (58)

US. Cl. ....................... .. 709/246; 709/227; 709/202

(57)

Field of Classi?cation Search ................ .. 709/246,

709/227, 202, 206, 228; 713/201; 379/202.01;

A system and method are presented in Which a plurality of transport protocol objects (TPOs) are instantiated at an IM user agent. In one embodiment, each of the plurality of TPOs is adapted to provide a translation between a ?rst IM proto col and a different IM protocol.

370/465

See application ?le for complete search history.

(56)

ABSTRACT

References Cited U.S. PATENT DOCUMENTS 5,497,373 A

3/1996

Hulen et a1.

20 Claims, 14 Drawing Sheets

.............. .. 370/250

& AESTRACTION SERVER CDNTACTl USER

cONTAcTz MSN USER

AGENT

AGENT

YAHOO

m IM AESTRACTION OBJECT SESSION

COLLECTION 190 I92

L4 AOL

SERVER

VAHOO SERVER

194 vga

MSN SERVER

MESSAGE ROUTER

12s BELLSOUTH IM

AOL TFO

EELLSOUTH CLIENT LOCATION

US RE41,848 E Page 2

OTHER PUBLICATIONS

Daniell, et al., patent application entitled “ServeriBased Message Protocol Translation,” ?led Oct. 18, 2002, (s.n. 10/274,478), 52 pages (combined spec. and ?gures). Daniell, et al., patent application entitled “Message Client With Multiple Message System Consolidation,” ?led Oct. 18, 2002 (s.n. 10/274,405), 51 pages (combined spec. and

?gures). http : //WWW.malVino .com/ep/startup .htm, entitled: Startup Programs, printed Mar. 2, 2004, pp. 7.

http://doWnload.com.com./300(¥2150410148311.html? tag=1st*(%1, entitled: C/Net DoWnload.com; Trillian 0.74 popular, printed Mar. 2, 2004, pp. 2. JD. Ramsdell, The MITRE Corporation, entitled: Simple Instant Messaging and Presence 1.3 Protocol, dated Jun. 2001, p. 19. http://WWW.ceruleanstudios.com/, entitled: TrillianiCom municate With Flexibility and Style, printed Mar. 2, 2004, p. 15.

PCT International Search Reportilnt’l Appl. No.: PCT.US03/29225, mailed Jun. 21, 2004, p. 6. PCT International Search Reportilnt’l Appl. No.: PCT/ US03/29066, mailed May 11, 2004, p. 7. PCT International Search Reportilnt’l Appl. No. PCT/ US03/29226, mailed May 5, 2004, p. 6. Instant Messaging/Presence Protocol Requirements Day et al.; Feb. 2000. A Model for Presence and Instant Messaging Day et al., Feb. 2000.

Extensible Markup Language @(ML) 1.0 (Second Edition) W3C XML Core Working Group (WG); Oct. 6, 2000. Common Presence and Instant Messaging: Message Format Atkins et al.; Feb. 20, 2002. Common Presence and instant Messaging (CPIM) Presence Information Data Format Sugano et al.; May 2002. Common Presence and Instant Messaging (CPIM) Crocker

et al.; Aug. 14,2002. * cited by examiner

US. Patent

0a. 19, 2010

Sheet 1 or 14

US RE41,848 E

BELLSOUTH SERVER BELLSOUTH IM SERVER

ABSTRACTION SERVER

IM ABSTRACTION OBJECT

m

1&9

15% SESSION

MESSAGE ROUTER

COLLECTION

USER IN FO

-_--- -------------------- --------- - - - - - - . - ----- ------- ---.-.--_._____-- - - . . _

---- v _ _

- . __. ____ ___

BELLSOUTH IM USER AGENT

USER INFORMATION

O I O G i I I

USER BELLSOUTH LOGIN NAME USER BELLSOUTH PASSWORD USER AOL LOGIN NAME AND PASSWORD USER YAHOO LOGIN NAME AND PASSWORD USER MSN LOGIN NAME AND PASSWORD USER OTHER PROTOCOL LOGIN NAME AND PASSWORD

CONTACT1 AT AOL CONTACT1 AT YAHOO CONTACT2 AT MSN BELLSOUTH CLIENT LOCATION

,

US. Patent

Oct. 19, 2010

Sheet 2 or 14

US RE41,848 E

AOL Gateway Options

BellSouth® Messenger To use this feature you must have an existing AOL Screen name.

Setting this option will automatically sign you in to AOL Instant Messenger and display your online AOL contacts each time you start Bellsouth Messenger. AOL Screen Name

lldaniell

] ‘1104a

102a

AOL Password

| Xxxxxx

I ‘J 108a

AOL Gateway Status

10l3a

omine 1015a

107a

[Sign 0:] [Sign Off)‘ @5535] MSN Gateway Options

BellSouth® Messenger To use this feature you must have an existing MSN Sign-in name.

Setting this option will automatically sign you in to MSN Messenger and display your online MSN contacts each time you start

Bellsouth Messenger. MSN Screen Name

r104b

[email protected] I MSN Password

r106b

[xxxxxx

1

MSN Gateway Status

j-103b

sign'in Name Examples [email protected] [email protected]

[email protected]

102D

US. Patent

Oct. 19, 2010

Sheet 3 0f 14

US RE41,848 E

124

j

ABSTRACTION SERVER ,

0

1

__

IM ABSTRACTION OBJECT

3-0



15Gb

SESSION COLLECTION

19o



_

5%

T

USER

INFORMATION

AOL

MSN

SESSION

SESSION

LOGIN AND‘ PASS

OBJECT

OBJECT

CONTACT1. AOL CONTACT1: YAHOO

7192

J





7

11.92

W

YAHOO SESSION OBJECT

CONTACT2: MSN

BELL-SOUTH SESSION OBJECT

1_.Q

*

MESSAGE ROUTER

<-———_'

T

l

22 AOL TPO

YAHOO TPO

MSN TPO

E2

BELLSOUTH TPO

BELLSOUTH 210. -|M USER AGENT

BELLSOUTH CLIENT LOCATION v-

-—_

----

------------------------------------------ -_

.

US. Patent

5129

0a. 19, 2010

222

Sheet 4 or 14

3.1

US RE41,848 E

‘is



ABSTRACTION SERVER

CONTACT1

CONTACT1

CONTACTZ

AOL

YAHOO

MSN

USER

AGENT

USER

?§0————————-—\ ——

USER

AGENT

AGENT

*

'

'M AESL'EQQ'ON E9

SESSION COLLECTION y

r

£5.19

y

Q12

r

190, 192,

12.11

___1____194 196

AOL

YAHOO

MSN

SERVER

SERVER

sERvER

\——————————J

»

-

+

17o ‘MESSAGE

1

ROUTER

“?i

x_____

\ F r

J\

r r

J

i

F

r

J

326

129 ~

BELLSOUTH

IM

SERVER

r'mlr"

F

222

P"

V

L

~

V

32.

I

V

23A

Y

Y

m

11_5 BELLSOUTH

AOL TPO

YAHOO TPO

MSN TPO

BELLSOUTH TPO

IM USER AGENT

BELLSOUTH CLIENT LOCATION 4.1.2.................................... --

--

____ _

FIG. 3

US. Patent

0a. 19, 2010

US RE41,848 E

Sheet 5 0f 14

Add Contact

BeI|South® Messenger IM Service

201

BellSouth.net

v

AOL/AIM BellSouthnet

User Name Examples

[email protected] [email protected]

myname@‘im.bellsouth.net

MSN Jabber BelISouth . net

First Name

Y

Last Name

FIG. 4A

US. Patent

0a. 19, 2010

Sheet 6 0f 14

US RE41,848 E

BellSouth® Messenger 5

3m

\‘

0

m0 "I EMLWM3“E

‘II/30a

H 9 In.

A g ®oawg§nmLAlMT.sWBeéKCrEdfh?N A

FnenE (3/5)

w

305 <

D prgr

mdWayghfwnmo

.Umw@t. ‘2Mun%[email protected]

302

>u m

>m mm M w Mw

m m

w m m

V

4

CHAT ADD

306

SEND

FIG. 4B

US. Patent

0a. 19, 2010

Sheet 7 0f 14

US RE41,848 E

ABSTRACTION SERVER

Ti IM ABSTRACTION OBJECT

12% USER INFORMATION

Hi

E SESSION COLLECTION

“13%;;

22_1 AOL TPO

W SESSION OBJECTS

1a

223

YAHOO TPO

221

MSN TPO

BELL SOUTH TPO

---.-

____________ ---- - -

& BELLSOUTH IM USER AGENT BELLSOUTH CLIENT LOCATION

- - . - - - n - n - . . _ - - - -‘

US. Patent

0a. 19, 2010

Sheet 8 0f 14

£3.22

Q

:LQ

CONTACT1 AOL USER

CONTACT1 YAHOO USER

CONTACT2 MSN USER

AGENT A

AGENT n

AGENT M

V

@

I

AOL

Q BELLSOUTH IM USER AGENT A

r



Q.

\ SERVER

US RE41,848 E

I

31_4

1%

YAHOO

MSN

BELLEV'OUTH

SERVER

SERVER

SERVER

n

L

M

L

F

i H

r

j r

J 130

IM ABSTRACTION OBJECT

1Q SESSION COLLECTION '

191

193

195, 197 r

Z_l

r

LL

r

2253

;_.______)

v

g 1 5

AOL

YAHOO

MSN

BELL-

TPO

TPO

TF'O

SOUTH

TF'O

1

I

1

“MESSAGE ROUTER g

‘L

A}

J

,

ABSTRACTION SERVER

L

1%

FIG. 6

US. Patent

Oct. 19, 2010

BELLSOUTH ||v| USER

IM

USER INFORMATION 502

SERVER r126

BELLSOUTH TPO

r226 IM

ABSTRACTION OBJECT

r130

US RE41,848 E

FIG. 7

AGENT (115

BELLSOUTH

Sheet 9 0f 14

US. Patent

0a. 19, 2010

Sheet 10 0f 14

Ffb‘éiiw“

US RE41,848 E

F I G. 8

AGENT [115 510

INSTANTIATE

IBN'IELLSOUTH

BELLSOUTH

TPO

sERvERr126 ‘COMMUNICATE

CONVEY

WITH

$§5L$OUTH

USER

BELLSOUTHIM

LOGIN

sERvER

504

512

$5???" 5"

516 U 508

‘M

REQUEST

ABSTRACTION

:EBLSOUTH

OBJECT

INSTANT'AT'ON

F130 Y

AOL

SERVER r310

AOL USER

AGENT r320

SESSION ID

STORE

INFORMATION 518

AS SESSION

OBJEC r

LOOKUP LOGIN INFORMATION

AOL

GENERATE

506

US. Patent

Oct. 19, 2010

Sheet 11 or 14

US RE41,848 E

FIG. 9 AGENT [115 A 522

BELLSOUTH

INSTANTIATE

|M

AOL TPO

SERVER r126 USER LOGIN

$§SLSOUTH

504

r226 M

520

ABSTRACTION T

OBJEC 1/130 ‘I

AOL Tpo

INSTANTIATION

LQOKUP LOGIN INFORMATION 506

r220

v 524 COMMUNICATE WITH AOL IM

gglévER

AOL USER

AGENT [-320

SERVER

STORE INFORMATION AS SESSION 528 OBJECT 530 GENERATE SESSIO

King‘

526 CONVEY SESSION

TOKEN

US. Patent

Oct. 19, 2010

Sheet 12 or 14

332%?“

US RE41,848 E

FIG. 10

AGENT r115 II

BELLSOUTH IM SERVER

546 RELAY XML

:ESLSOUTH

PRESENCE

INFORMATION

544

IM

DETERMINE SESSION USING SESSION ID

ABSTRACTION OBJECT

A 532 GENERATE AOL NATIVE QUERY FOR PRESENCE

540 ENCAPSULATE PRESENCE INFORMATION USING XML

A01-

POLL

TPO

AOL SERVER USING

RELAY AOL" NATIVE

QUERY FOR

538

K 310 PRESENCE v

AOL SERVER AOL USER

AGENT [320

DETERMINE PRESENCE INFORMATION OF CONTACT 535

RELAY XML PRESENCE INFORMATION 542

US. Patent

0a. 19, 2010

Sheet 13 0f 14

US RE41,848 E

RECEIVE

BELLSOUTI-I USER INPUT FOR IM IM USER

1 1

sEssIoN INITIATIoN

AGENP 115 A

,

548

BELLSOUTH IM SERVER

f- 126 ISSUE XML INVITATION 550

BELLSOUTH FOR CHAT SESSION TPO 227

IM

ABSTRACTION OBJECT

552 I

RELAY XML

AOL

TPO

INVITATION

r220 TFZQNZSfE

AOL

NATIVE INVITATION 554

556

560

RELAY AOL-NAT'VE INVITATION

SERVER {.310

v 557 RELAY

AOL USER

AGENT r320

RELAY AOL-NATIVE ACCEPTANCE

55a ISSUE AoL NATIVE

AOL-NATIVE INVITATION

ACCEPTANCE

v

US. Patent

0a. 19, 2010

Sheet 14 or 14

BELLSOUTH

US RE41,848 E

FIG 1 2

IM USER

_

AGENT W115 566 RELAY XML

BELLSOUTH IM

SERVER r126

568 CHAT SESSION

ACCEPTANCE

ESTABLISHED XML MESSAGE

BELLSOUTH

J

TPO

K227 564

IM

DETERMINE

ABSTRACTION

APPROPR'ATE CHAT

OBJECT

SESSION AOL-NATIVE MESSAGE 570

563

RELAY XML AOL TPO

-/

ACCEPTANCE

r220

'

V

AOL-NATIVE MESSAGE

ENCAPSULATE

AOL- NATIVE

/

572

ACCEPTANCE

"s‘gévER

usING XML 562

AOL-NATIVE MESSAGE

AOL

J

USER

AGENT ['320

+

574

US RE41,848 E 1

2

SYSTEM USING TRANSPORT PROTOCOL OBJECTS LOCATED AT AGENT LOCATION TO GENERATE SESSION ID AND TO PROVIDE TRANSLATION BETWEEN DIFFERENT INSTANT MESSAGING PROTOCOLS

server for this type of approach, any failure in the path resulted in loss of all messaging with a particular service. Additionally, a failure in the server often resulted in loss of

all services provided by that server. Moreover, because all messages to other services were routed through the server, the server was required to process all of the messages to all

of the services, thereby resulting in greater delays in all ser Matter enclosed in heavy brackets [ ] appears in the original patent but forms no part of this reissue speci?ca

vlces.

tion; matter printed in italics indicates the additions made by reissue.

the Internet Engineering Task Force (IETF) began soliciting

In view of this incompatibility among the various vendors,

input from the Internet community to address the problems of incompatibility. This resulted in the adoption of several recommendations by the IETF. For example, Request for Comments (RFC) 2778 and RFC 2779 provide guidelines for presence and IM. However, apart from general features associated with IM, RFC 2778 and RFC 2779 provide very little instruction for actually implementing IM by various

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the bene?t of US. provisional

patent application Ser. No. 60/411,336, ?led Sep. 17, 2002, which is incorporated herein by reference in its entirety. Additionally, this application claims the bene?t of US. pro

visional [patent application ?led on Oct. 17, 2002, having Express Mail mailing label number 924321225 US,] appli cation Ser. No. 60/419,613, ?led Oct. 17, 2002, which is incorporated herein by reference in its entirety. FIELD OF DISCLOSURE

20

vendors. This lack of instruction resulted in further study by mem bers of the IETF, who published several memos and recom mendations for Common Presence and Instant Messaging (CPIM). However, the IETF efforts only address a fraction

of the problems dealing with interoperability. 25

The present disclosure relates generally to the Internet and, more particularly, to systems and methods for providing

Thus, a heretofore-unaddressed need exists in the industry to address the aforementioned de?ciencies and inadequa cies.

interoperability between various Internet protocols. BACKGROUND

SUMMARY 30

In recent years, the Internet community has grown at an

cols. Brie?y described, in architecture, one embodiment of the system comprises an instant messaging (IM) user agent, and

astounding rate. Similarly, the number of products directed to the Internet has grown concomitantly with the dramatic

growth of the Internet community. Among the products directed to the Internet are email products, instant messaging

35

plurality of TPOs is adapted to provide a translation between

Internet protocol (VoIP) products, and many more products

a ?rst IM protocol and a different IM protocol. The IM user

that employ the Internet as the backbone for their operations.

agent transmits and receives IM messages using the ?rst IM 40

this regard, one embodiment of the method comprises the 45

conducive to fast capitalization of such an expanding mar ket. Thus, while many of the products from the various ven

dors provide largely similar services, the discrepant tech nologies used by the various vendors produce problems of interoperability between the various products. For example,

50

On-Line (AOL) provide relatively similar instant messaging (IM) services, the underlying protocols employed by the 55

of the plurality of servers transmits and receives IM mes

Other systems, methods, features, and advantages will be 60

translation must exist for each protocol for which there is

desired interoperability.

cations with a particular service was routed from server to

receives IM messages using the ?rst IM protocol, while each

or become apparent to one with skill in the art upon exami

ability between protocols used by the various vendors, a

provide interoperability. Unfortunately, since all communi

tions between the plurality of TPOs and a plurality of servers, and providing a communication pathway between the IM user agent and the plurality of servers through the plurality of instantiated TPOs. In one embodiment, each of the plurality of TPOs is adapted to provide a translation between a ?rst IM protocol and a different IM protocol. An

sages using one of the different IM protocols.

product, another translation must occur between Microsoft’ s

Thus, in the past, each IM service had a translation proto col for as many other IM services to which it sought to

(TPOs) at an instant messaging (IM) user agent location

IM user agent at the IM user agent location transmits and

Microsoft’s IM product to communicate with AOL’s IM protocol and AOL’s protocol. As one can see, for interoper

steps of instantiating a plurality of transport protocol objects having an IM user agent, establishing a plurality of connec

while vendors such as Microsoft, Yahoo, and America

various vendors differ vastly. Thus, in order for Microsoft’s IM product to communicate with Yahoo’s IM product, the underlying protocol must be translated from Microsoft’s protocol to Yahoo’s protocol. Similarly, in order for

protocol. The present disclosure also provides methods for provid ing interoperability between various Internet protocols. In

Internet users, which is, in turn, generating a further expan sion of products directed to the Internet. This positive

feedback cycle results in various vendors launching their own Internet products using various technologies that are

a plurality of transport protocol objects (TPOs) instantiated at an IM user agent location. In one embodiment, each of the

(IM) products, video conferencing products, voice-over The rapid expansion of Internet-directed products is gen erating an accompanying increase in the sophistication of

The present disclosure provides systems and methods for providing interoperability between various Internet proto

nation of the following drawings and detailed description. It is intended that all such additional systems, methods, features, and advantages be included within this description. BRIEF DESCRIPTION OF THE DRAWINGS

65

Many aspects of the disclosure can be better understood

with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead

US RE41,848 E 3

4

being placed upon clearly illustrating the principles of the

one example embodiment, among others, the user informa

present invention. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the sev

tion is transmitted and stored on the abstraction server 124 as XML-structured information because XML provides a ver

eral vieWs. FIG. 1A is a block diagram shoWing one embodiment of a

satile approach that is compatible With almost any other Internet-based technology. In short, XML is a markup lan guage for documents containing structured information,

user agent uploading user information to a server.

Which contains both content (e.g., Words, pictures, etc.) and

FIGS. 1B and 1C are diagrams shoWing example user interfaces for providing a login name and a passWord.

some indication of What role that content plays (e.g., content in a section heading has a different meaning from content in a footnote, Which means something different than content in a ?gure caption or content in a database table, etc.). The

FIG. 2 is a block diagram shoWing one embodiment of a

user agent instantiating a plurality of transport protocol objects (TPOs) at a client.

XML speci?cation titled “Extensible Markup Language @(ML) 1.0 (Second Edition), W3C Recommendation 6 Oct.

FIG. 3 is a block diagram shoWing one embodiment of a user agent communicating With a plurality of servers

2000” (referred to herein as “the XML speci?cation”) by W3C is hereby incorporated by reference as if set forth in its

through the plurality of TPOs at the client.

entirely.

FIG. 4A is a diagram shoWing an example user interface

for providing contact information. FIG. 4B is a diagram shoWing an example user interface

shoWing contact information. FIG. 5 is a block diagram shoWing another embodiment of a user agent instantiating a plurality of transport protocol

20

objects (TPOs) at a server.

FIG. 6 is a block diagram shoWing another embodiment of a user agent communicating With a plurality of servers

through the plurality of TPOs at the server. FIGS. 7 through 12 are data-?ow diagrams outlining the

25

FIGS. 1B and 1C shoW tWo embodiments of user inter

faces 102a, 102b for inputting login names and passWords at the BellSouth IM user agent 115. Prior to being presented 30

onto a BellSouth IM user’s AOL account. As shoWn in FIG. 35

102a provides an input box 106a adapted to receive the AOL passWord associated With the AOL login name. Upon enter ing the AOL login name and the AOL passWord, the AOL

and equivalents. Additionally, While the interplay betWeen 40

user interface provides a status indication 108a to the Bell South IM user. The status indication 108a indicates Whether or not the BellSouth IM user is online at AOL. The status

indication 108a Will only indicate that the user is online if the user has selected the sign-on option at some point.

or a server computer, among others.

FIG. 1A is a block diagram shoWing an example embodi ment of a system having an instant messaging (IM) abstrac

1B, the AOL user interface 102a provides an input box 104a adapted to receive the AOL login name (or screen name) of the BellSouth IM user. Similarly, the AOL user interface

contrary, the intent is to cover all alternatives, modi?cations, several components are shoWn in process space for convenience, it Will be clear to one of ordinary skill in the art that the components in the process space may correspond to objects that are created during processes at a client computer

the user interfaces 102a, 102b, a BellSouth IM user prefer

ably enters a BellSouth login name (e.g., username) and password. FIG. 1B shoWs a user interface 102a for signing

Reference is noW made in detail to the description of the embodiments as illustrated in the draWings. While several embodiments are described in connection With these draWings, there is no intent to limit the invention to the embodiment or embodiments disclosed herein. On the

mechanism may be provided for a user to create an account

With other message services.

relationship of various TPOs With a user agent and a server.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

If, for example, a BellSouth user has a BellSouth IM account, an America On-Line (AOL) IM account, a Yahoo IM account, a Microsoft NetWork (MSN) IM account, or any other IM account, then the BellSouth user may provide an IM login name and passWord for each of the user’s accounts as part of the user information 150a. The inputting of the user information 150a is shoWn in FIGS. 1B and 1C. Thus, it should be clear that in at lest one example embodiment, a

45

Additionally, the AOL user interface provides sign-on 103a

tion object 130. As shoWn in the non-limiting example of

and sign-off 105a options to the BellSouth IM user so that

FIG. 1A, a BellSouth IM user agent 115 at a BellSouth client location 110 is in communication With a BellSouth server 120. The BellSouth server 120 may comprise an IM server 126 and an abstraction server 124. The IM server 126 is

50

the BellSouth IM user can manually initiate and terminate a login to the AOL server. FIG. 1C shoWs a user interface 102b for signing onto a BellSouth IM user’s MSN account. Similar to the AOL user

adapted to handle normal IM functions, While the abstrac tion server 124 is adapted to handle translations of IM func

tions from various protocols into XML-structured informa tion. The BellSouth IM user agent 115 may be a softWare application that assists a user in communicating With con tacts via an IM session. In this regard, the BellSouth IM user agent 115 is located at a BellSouth client location 110, Which may be a personal computer, a handheld computer, a

55

IM user. The status indication 108b indicates Whether or not

cellular telephone having IM capabilities; an i-pager, or any

netWork-compatible device.

the BellSouth IM user is online at MSN. Additionally, the 60

to one or more data entry screens displayed to the user), the user agent 115 to the abstraction server 124 through a com

munication line 160 and other conventional mechanisms. In

MSN user interface provides sign-on 103b and sign-off105b options to the BellSouth IM user so that the BellSouth IM user can manually initiate and terminate a login to the MSN server. Furthermore, since multiple MSN IM accounts may

When a BellSouth IM user (not shoWn) provides user information 150a at the BellSouth IM user agent 115 (e.g., through one or more conventional input devices in response

user information 150a is transmitted by the BellSouth IM

interface, the MSN user interface 102b provides an input box 104b adapted to receive the MSN login name of the BellSouth IM user. Also, the MSN user interface provides 102b an input box 106b adapted to receive the MSN pass Word associated With the MSN login name. Upon entering the MSN login name and the MSN passWord, the MSN user interface provides a status indication 108b to the BellSouth

65

exist at different domains, the MSN user interface provides examples 109 of sign-in names. As shoWn in an example embodiment in FIG. 2, after a setup process, Which itself may launch a login process, the

US RE41,848 E 5

6

BellSouth user inputs a user BellSouth login name and a

ID in the MSN session object 194, and the BellSouth session ID in the BellSouth session object 196.

BellSouth password at a user interface (not shown) located at the BellSouth IM user agent 115. This information is con veyed to an IM abstraction object 130 located on the abstrac tion server 124. The IM abstraction object 130 accesses the user information 150b to retrieve login names and passwords for each of the IM accounts of the BellSouth IM user. In some embodiments, the BellSouth login user-name and password may be different from a username and password

Typically, after the BellSouth user at the BellSouth IM user agent 115 has been logged onto the various servers 310,

312, 314, 126 and the logon information has been stored as

the respective session objects 190, 192, 194, 196 using its respective session IDs, an add-contact user interface is pro vided to the BellSouth IM user. An example add-contact user interface 202 is shown in FIG. 4A. As shown in FIG. 4A, the add-contact user interface 202 may comprise a drop-down menu 201 that includes descriptions for each of the Bell South IM user’s IM accounts. Thus, the BellSouth IM user may add contacts from any account for which the BellSouth LM user also has an account. For example, if the BellSouth

for a native BellSouth IM session. Upon retrieving this information, the IM abstraction object 130 generates a request to the BellSouth IM user agent 115. The request includes information for instantiating a variety of TPOs. Thus, upon receiving the request, the BellSouth IM user agent 115 instantiates a BellSouth transport protocol object (TPO) 226, an AOL TPO 220, a Yahoo TPO 222, and an

IM user wishes to add an AOL contact, then the BellSouth IM user would select the AOL IM service option on the drop-down menu 201. The add-contact user interface further

MSN TPO 224 at the BellSouth client location 10. Thus, as

comprises input boxes 203, 205, 206, 207 for the contact’s

shown in FIG. 2, by providing a single BellSouth IM user login and password, multiple TPOs are instantiated because the information needed to instantiate the various TPOs is

20

already stored at the IM abstraction object 130. Other

IM logon name, the contact’s ?rst name, the contact’s last name, and the contact’s nickname. Thus, upon selecting the AOL IM service option on the drop-down menu 201, the

embodiments include transport mechanisms launched or

BellSouth IM user may enter one or more information ?elds

activated in other manners.

related to the contact. Additionally, the add-contact user

Since the TPOs 220, 222, 224, 226 are instantiated at the client location 110, in accordance with one example embodiment, the translation from XML to the BellSouth protocol, the translation from XML to the AOL protocol, the translation from XML to the Yahoo protocol, and the transla

interface 202 comprises another drop-down menu 208 that 25

tion from XML to the MSN protocol each occurs at the

client location, thereby relinquishing resources of the

30

abstraction server 124 for other functions.

FIG. 3 is a block diagram showing one embodiment in which instantiated TPOs 220, 222, 224, 226 log on to their

respective IM servers 310, 312, 314, 126 to provide interop

erability between the various protocols. Upon being

35

instantiated, each of the TPOs 220, 222, 224, 226 communi cates with its respective server 310, 312, 314 to establish a

session, and upon receiving tokens or other session identi? ers from its respective server 310, 312, 314, 126, each TPO 220, 222, 224 generates a session identi?er (ID). The session

40

45

Yahoo TPO 222 communicates with the Yahoo server 312

using the Yahoo-native protocol, etc. In this regard, each of the TPOs 220, 222, 224, 226 appears as a native client to

each of the servers 310, 312, 314, 126. In other words, the

50

MSN TPO 224 appears as an MSN client to the MSN server

314; the AOL TPO 220 appears as anAOL client to the AOL server 310, etc. Thus, none ofthe servers 310,312,314, 126

modify their respective IM protocols or IM interfaces because the servers 310, 312, 314, 126 are in communication with objects that behave as virtual native clients to those

55

servers 310,312,314,126. The message router 170 stores the session information as

shared session objects 190, 192, 194, 196 in the session collection 180. Thus, the AOL TPO 220 generates an AOL session ID, which is conveyed to the message router 170 for

60

session ID in theYahoo session object 192, the MSN session

would be stored on the BellSouth IM user’s AOL account since the AOL TPO 220 is providing an interface to the BellSouth IM user’ s AOL account. Similarly, if aYahoo con stored on the Yahoo server at the user’s Yahoo account. Likewise, addition of a BellSouth contact and an MSN con

tact would update the BellSouth IM user’s accounts on the BellSouth server and the MSN server, respectively. Once the contact information has been entered and stored on the respective servers, the contact information will be available to the BellSouth IM user for any subsequent IM session, including from the BellSouth IM user agent 115 at the Bell

South client location 110 and other locations. Additionally, the contact information, once it has been entered and stored, will also be available from other native clients at that native client location and other locations. In another embodiment, the BellSouth IM user would be able to access pre-existing contact information that is already stored on the various servers 310, 312, 314. Thus, rather than adding new contacts, when the various TPOs 220, 222, 224 establish a connection to their respective serv ers 310, 312, 314, the contact information from the servers 310, 312, 314 will be displayed to the BellSouth IM user at the user interface. One example of this is shown in FIG. 4B. FIG. 4B shows an example contact list 302. As shown in FIG. 4B, the various contacts are automatically grouped

together by their respective TPOs 303, 305, 307. Thus, all

storage in the AOL session object 190. Similarly, the Yahoo TPO 222, the MSN TPO 224, and the BellSouth TPO 226 each generates aYahoo session ID, an MSN session ID, and a BellSouth session ID, respectively. The session IDs are conveyed to the message router 170, which stores the Yahoo

options similar to the AOL contact would be available for the MSN contact, the BellSouth contact, and the Yahoo contact. Once the contact information has been entered, the contact information is stored on its respective server. Thus, if an AOL contact is added, then the AOL contact information

tact is added, then the Yahoo contact information would be

ID and the session information are conveyed back to the message router 170. It is worthwhile to note that the TPOs

220, 222, 224, 226 communicate with the various servers 310, 312, 314, 126 in the native protocol ofthe various serv ers. Thus, for example, the AOL TPO 220 communicates with the AOL server 310 using an AOL-native protocol; the

permits the BellSouth IM user to select a group in which to categoriZe the contact. As a default, the AOL contact would be categorized in an AOL-contacts group. Similarly, if the BellSouth IM user wishes to add an MSN contact, a BellSouth contact, or a Yahoo contact, then

MSN contacts 305 are grouped together, all AOL 307 con

65

tacts are grouped together, etc. It will be clear, however, that the groupings may be changed by the BellSouth IM user according to the BellSouth IM user’s preference. Also, for each of the contacts, an indication 304 appears beside the contact’s name, which indicates the presence status of the

US RE41,848 E 7

8

contact. These indications 304, in a preferred embodiment arc shown in different colors to easily differentiate differ ences in presence information (e.g., not present, present,

The presence information of CONTACTl from the Yahoo server 312 and the presence information of CONTACT2 from the MSN server 314 are each determined in a similar

busy, etc.). Thus, for example, the indication 304 for avail able contacts (e.g., Larry, Amit, Sharon, etc.) may be shoWn

of the servers 310, 312, 314, 126, the respective TPOs 220,

in green (shoWn in FIG. 4B as hashed circles), the indication

222, 224, 226 determine the presence of the respective con

304 for unavailable contacts (e.g., BigHat, Johnnie, Gene,

fashion. Thus, as seen from FIG. 3, upon logging into each

circles), and the indication 304 for busy contacts (e.g., Judy,

tacts. The presence information for each of the contacts is ultimately relayed back to the BellSouth user at the Bell South IM user agent 115. In other Words, the BellSouth IM

Mitch, etc.) may be shoWn in red (shoWn in FIG. 4B as ?lled

user noW has presence information on each of the contacts

circles).

on the various servers 310, 312, 314, 126. At this point, if CONTACTl is present on AOL, and if the

etc.) may be shoWn in grey (shoWn in FIG. 4B as clear

In addition to the available contacts, the contact list 302 includes user options 306, Which permit the user to chat With

BellSouth user Wishes to engage in an IM chat session With

CONTACTl through the AOL server 310, then the Bell

a contact, add a neW contact, or send a message or ?le to a

contact, all of Which Would initiate another interface area

South user initiates an IM chat session With CONTACTl

(e.g., WindoW, screen, etc. (not shoWn)) for the user to accomplish those functions, as Would be understood by one of ordinary skill in the art. The user interface also provides

from the BellSouth IM user agent 115. The BellSouth IM

the user With additional menus 308, such as an edit menu, an

options menu, a sign-on menu, and a help screen. Since, as

20

the XML-structured invitation and generates a thread ID, Which is used, in one form or another, to track the thread from the BellSouth IM user agent 115 and the AOL IM agent 320. In addition to generating the thread ID, the AOL TPO

described above, the various TPOs 220, 222, 224, 226 pro vide a virtual native client to the various servers 310, 312,

314, 126, a single user interface may aggregate all of the contact information from all of the servers 310, 312, 314, 126 and display them to the user on a single screen. The display of all contacts on all servers 310, 312, 314, 316 on a single screen permits the user to consolidate all of the con tacts in a single user interface, thereby simplifying user IM

interactions. After a user logs onto IM sessions through the various

25

30

35

CONTACTl at the AOL user agent 320. If CONTACTl at the AOL user agent 320 accepts the invitation, then the AOL user agent 320 issues an AOL native acceptance, Which is relayed to the AOL server 310. The AOL server 310 further conveys the AOL-native accep tance to the AOL TPO 220. The AOL TPO 220 receives the

AOL-native acceptance and encapsulates the AOL-native 40

initiated by the TPOs 220, 222, 224, 226, the evaluation of the various servers for presence information may also be initiated by the server or the client. Alternatively, the pres ence information may be continually refreshed to the various

TPOs 220, 222, 224, 226 by the servers 310, 312, 314, 126

an AOL client location. Since the AOL TPO 220 provides the AOL server 310 With AOL-native information related to the

thread ID, each invitation may be properly delivered to

AOL server 310 and the Yahoo server 312, and presence

information of CONTACT2 is determined from the MSN server 314. While the polling for presence is shoWn as being

220 translates the XML-structured invitation into an AOL native invitation. The AOL TPO 220 issues the AOL-native invitation to the AOL server 310, Which relays the AOL native invitation to CONTACTl at an AOL user agent 320 at

TPOs 220, 222, 224, 226, presence information related to the contacts is further determined by the various TPOs 220, 222, 224, 226. This is shoWn With reference to FIG. 3. Thus, for example, if the BellSouth IM user has added CON TACTl having an AOL IM address and aYahoo IM address, and CONTACT 2 having only an MSN account, then pres ence information of CONTACTl is determined from the

user agent 115 issues an XML-structured invitation to the message router 170. The message router 170 receives the XML-structured invitation and conveys the XML-structured invitation to the AOL TPO 220. The AOL TPO 220 receives

acceptance to produce an XML-structured acceptance. The XML-structured acceptance is relayed to the message router 170 by the AOL TPO 220. Since the XML-structured accep tance includes information related to the thread ID for that particular IM session, the message router 170 relays the XML-structured acceptance to the proper BellSouth IM user

45

agent 115. Upon receiving the BellSouth-native acceptance, a chat session is established betWeen the BellSouth IM user

Without the polling of the servers for the presence informa tion. In operation, the AOL TPO 220 may generate an AOL

and CONTACTl.

native presence query to determine Whether or not CON

generates an XML-structured message. The BellSouth TPO 226 conveys the XML-structured message to the message

TACTl is present. The AOL server 310 is polled using the

During the chat session, the BellSouth user agent 115 50

AOL-native presence query. The AOL server 310 receives

router 170, Which subsequently routes the XML-structured

the query and generates AOL-native presence information,

message to the AOL TPO 220 based on the message ID. The AOL TPO 220 translates the XML-structured message into

Which indicates Whether or not CONTACTl is present. The AOL-native presence information is relayed to the AOL TPO 220. As With other native information coming doWn to any

an AOL-native message, and conveys the AOL-native mes

TPO, the AOL TPO 220 encapsulates the AOL-native pres

sage to the AOL server 310. In addition to routing the XML structured message, the message router 170 may further

ence information to generate XML-structured presence

modify the message by, for example, adding additional

information having an appropriate session ID. The XML structured presence information is relayed to the message router 170 by the AOL TPO 220. The message router 170 receives the XML-structured presence information from the AOL TPO 220, and correlates the XML-structured presence information to the established session using session object

55

XML tags or tracking information, encrypting all or sensi 60

190. Using the AOL session object 190 identi?ed by the session ID from the AOL TPO 220, the message router 170 relays the XML-structured presence information to the Bell South IM user agent 115.

65

tive portions of the message, etc. The AOL server 310 receives the AOL-native message from the TPO 220 and relays the AOL-native message to CONTACTl at the AOL user agent 320. Similarly, the AOL user agent 320 generates an AOL native message. Of course the representative native user

agents 320, 322, 324 could also be replaced in part by a plurality of IM user agents similar to the BellSouth IM user

agent 115 having the various TPOs 220, 222, 224, 226. The

System using transport protocol objects located at agent location to ...

Sep 24, 2008 - http://doWnload.com.com./300(Â¥2150410148311.html? ..... directed to the Internet are email products, instant messaging. (IM) products, video ..... IM user wishes to add an AOL contact, then the BellSouth. IM user would select ...

2MB Sizes 4 Downloads 256 Views

Recommend Documents

Using the Wave Protocol to Represent ... - Research at Google
There are several challenges in aggregating health records from multiple sources, including merging data, preserving proper attribution, and allowing.

RECIPES LOCATED AT RECIPE MARKETING_Desserts.pdf ...
Page 1 of 1. RECIPES LOCATED AT RECIPE MARKETING. DESSERTS. Ambrosia. Apple Crisp. Apples. Baked Apples. Boiled Apples With Currants.

real time transport protocol pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. real time ...

A User Location and Tracking System using Wireless Local Area ...
A User Location and Tracking System using Wireless Local Area Network. Kent Nishimori ... Area Network signal strength and Geographical. Information ..... The initial K-nearest neighbor algorithm [1] takes all of the K selected reference points and a

System and method for obtaining and using location specific information
Sep 1, 2010 - supports the coordinate entry or linked to an existing Web ..... positions to any GPS receiver that is within the communica tion path and is tuned ...

RECIPES LOCATED AT RECIPE MARKETING.pdf
Apple Cake. Apple Coffee Bread. Apple Crisp. Apple Custard Pie. Apple Griddlecakes. Apple Griddlecakes. Apple Loaf Pound Cake. Apple Tart.

System and method for obtaining and using location specific information
(73) Assignee: Apple Inc., Cupertino, CA (US). (21) App1.No.: 12/874,155. (22) Filed: Sep. 1, 2010. Related US. Patent Documents. Reissue of: (64) Patent No.:.

X Window System Protocol - XFree86
standards, such as the Inter-Client Communication Conventions Manual and the X Logical Font. Description .... the depth, in which case the least significant bits are used to hold the pixmap data, and the values of the unused ...... True and the bytes

Method and system for building and using intelligent vector objects
Nov 6, 2001 - maintenance, repair and operations (MRO) Work Within an equipment-related ?eld ..... 8. class %ClassList; #IMPLIED. 9. style %StyleSheet; # ..... commercially available auto-tracing programs knoWn to those skilled in the art, ...

Located at: Denver Mart Colorado - Big Industry Show
logo for your company will be prominently featured in our print, online, and email marketing efforts as well as being displayed on the banner at registration. You'll ...

EURASIP-Adaptive Transport Layer Protocol for Highly Dynamic ...
EURASIP-Adaptive Transport Layer Protocol for Highly Dynamic Environment 0.807.pdf. EURASIP-Adaptive Transport Layer Protocol for Highly Dynamic ...

a distributed multi-agent system to solve airline ...
problems it has several specialized software agents that implements heuristic ... agents compete to find the best solution for each problem. ... monitors all the flights checking if they follow the ... each crew rank, and costs related with hotels an

The Academy Staff/Business Entrance is located at ... -
The Academy Staff/Business Entrance is located at 75 Nancy Pelosi Drive. Three to four hour parking is available along the streets surrounding the Academy.

a distributed multi-agent system to solve airline ...
prototype of a multiple resource decision support system. ... integer mathematical problem that maximizes total profit to the airline while .... will start a CFP (call for proposal) through the crew- ... credDut y. Number of minutes to be paid case t

X Window System Protocol - The XFree86 Project
Except as contained in this notice, the name of the Open Group shall not be used in advertising or otherwise to promote the sale, use ...... application developer is more conscious that they are writing the application in a nonportable ...... Shift,

STCP: A Generic Transport Layer Protocol for Wireless Sensor Networks
Dept. of Computer Science. University of ... port layer protocol for energy-constrained sensor networks. We ... SYSTEM MODEL .... The nodes maintain a buffer.

Air India Transport Services Recruitment 2018 for Customer Agent ...
Page 1 of 11. 1. AIR INDIA AIR TRANSPORT SERVICES LIMITED. (A WHOLLY OWNED SUBSIDIARY OF AIR INDIA LTD.) WALK-IN RECRUITMENT. Air India Air Transport Services Limited (AIATSL) wishes to engage on. immediate basis Indian Nationals (Male / Female) who

Partial Mocks using Forwarding Objects
Feb 19, 2009 - ... 2007 Google, Inc. Licensed under a Creative Commons. Attribution–ShareAlike 2.5 License (http://creativecommons.org/licenses/by-sa/2.5/).

Partial Mocks using Forwarding Objects
Feb 19, 2009 - quack after the race. EasyMock.replay(mock);. Duck duck = OlympicDuck.createInstance();. Duck partialDuck = new ForwardingDuck(duck) {.

X Window System Protocol - The XFree86 Project
8-bit signed integer. INT16. 16-bit signed integer. INT32. 32-bit signed integer. CARD8. 8-bit unsigned integer. CARD16. 16-bit unsigned integer. CARD32 .... Some numeric value falls outside the range of values accepted by the ... KEYSYMS with numeri

Surface position location system and method
Sep 18, 2003 - British Micro, “Operating Guide to Grafpad”, 1982, 28 pp. Primary ExamineriVijay Shankar. (74) Attorney ..... memory of an associated microprocessor subsystem. That location, or address may in-tum be used to ... and the structural

System Integration Test Location: Bangalore ... -
Role: System Integration Test. Location: Bangalore. Experience: 2- 5 yrs. Tasks: - Strong experience in Automotive Embedded Software Development using C ...

Air India Transport Services Recruitment 2018 for Customer Agent ...
GovNokri.in. Whoops! There was a problem loading this page. Retrying... Air India Transport Services Recruitment 2018 for Customer [email protected].

3.Transport Costs Optimization Using Up-To-Date Road Traffic ...
vehicle-to-infrastructure communication systems. In this paper we .... Page 3 of 11. 3.Transport Costs Optimization Using Up-To-Date Road Traffic Information.pdf.