`USOO7191233B2
`
`(12) United States Patent
`(10) Patent No.:
`US 7,191,233 B2
`Miller
`(45) Date of Patent:
`Mar. 13, 2007
`
`(54) SYSTEM FOR AUTOMATED, MID-SESSION,
`USER-DIRECTED, DEVICE-TO-DEVICE
`SESSION TRANSFER SYSTEM
`
`working Architecture Conference Proceedings,
`Piscataway, NJ, Apr. 12, 1999. pp. 54-65.*
`
`1999.
`
`IEEE,
`
`(75)
`
`Inventor: Michael J. lVliller, Germantown, MD
`(US)
`
`(73) Assignee: TeleCommunication Systems, Inc.,
`Aimapolis, MD (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 701 days.
`
`(21) Appl. No.: 09/953,408
`
`(22) Filed:
`
`Sep. 17, 2001
`
`(65)
`
`Prior Publication Data
`US 2003/0055977 A1
`Mar. 20, 2003
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 15/173
`(2006.01)
`G06F 15/16
`(52) U.S. Cl.
`....................................... 709/227; 709/223
`(58) Field of Classification Search ................ 709/204,
`709/227. 228, 229, 230, 238, 223; 455/405,
`455/509
`See application file for complete search history.
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`................ 709/227
`11/2004 Wang et a1.
`6,826,613 B1 *
`................ 455/509
`11/2001 Leedom. Jr.
`2001/0036835 A1 "‘
`5/2002 Belfiore et al.
`............. 709/226
`2002/0059425 A1 *
`.. 455/405
`5/2002 Griflith et a1.
`........
`2002/0065064 A1 *
`709/230
`10/2002 Govindarajan et a1.
`2002/0143971 A1 *
`OTHER PUBLICATIONS
`
`Pinto, Alexandre S., “TINAibased Environment for Mobile Mul-
`timedia Services,” 1999, Telecommunications Information Net-
`
`’1‘ cited by examiner
`
`Primary ExamineriPaul H. Kang
`(74) Attorney, Agent, or Firm7William H. Bellman
`
`(57)
`
`ABSTRACT
`
`A session transfer module of a session server provides the
`capability to a user to direct a transfer of an on-going session
`from one device to another device while maintaining the
`session. The session transfer module is invoked by a user in
`a way consistent with the user interface of the client appli-
`cation, including by a graphical user command, a command
`line prompt, or a voice command. The client provides a
`selection of possible devices that may receive the redirected
`session. The session transfer module receives the selected
`device with the session redirect command over a commu—
`nication network. The communication network may be
`wired (e.g., public switched telephone network (“PSTN”),
`lnternet, etc.,) a wireless network (e.g., digital telephone
`network, pager network, etc.,) or a combination of the wired
`and Wireless networks. The session transfer module may be
`configured to discontinue the session with the current device
`and to block any subsequent messages of the transferring
`session from reaching the device. The session transfer
`module may be further configured to access a device profile
`from a device profile database to convert
`the blocked
`messages into a format compatible to the format and/or
`modality of the redirected device. The session transfer
`module may be further configured to push the session to the
`redirected device in response to an activation (e.g., log-on)
`of the redirected device by the user. Alternatively,
`the
`session transfer module may be further configured to push
`the session back to the device in response to a time-out in the
`activation of the redirected device.
`
`43 Claims, 4 Drawing Sheets
`
`am
`
`RECEIVE
`
`REDIFIEO’T
`COMMAND
`
`
`
`INTERCEP'I' ANV
`MESSAGES
`FOE DEVICE
`
`
`
`CONVERT STATE
`OF SESSION FOR
`REDIREC’TED
`
`
`DEVICE
`SET
`
`
`AC IVATIDN
`TIMER
`
`
`Unified Patents |nc., Ex. 1001, pg. 1
`
`Unified Patents Inc., Ex. 1001, pg. 1
`
`
`
`U.S. Patent
`
`Mar. 13, 2007
`
`Sheet 1 014
`
`US 7,191,233 B2
`
`100 ‘3
`
`I DATABASE .
`
`SESSION
`SERVER
`
`‘55
`
`DATA
`HANDLER
`
`SERVER
`
`
` If
` APPLICATION
`1E
`
`
`MESSAGE
`
`II ROUTER
`
`105
`
`I WIRELESS
`
`GATEWAY
`
`110
`
`lp
`
`GATEWAY
`
`11
`
`5
`
`WIRELESS
`NETWORK
`
`13°
`
`WIRED
`NETWORK
`
`
`
`
`WIRELESS 00. WIRELESS
`CLIENT
`
`
`WIRED
`CLIENT
`
`120
`
`120
`
`125
`
`125
`
`Unified Patents |nc., Ex. 1001, pg. 2
`
`Unified Patents Inc., Ex. 1001, pg. 2
`
`
`
`U.S. Patent
`
`Mar. 13, 2007
`
`Sheet 2 of4
`
`US 7,191,233 B2
`
`
`
`2515.
`
`SESSION MANAGER
`
`
`
`
`
`
`
`SESSION
`SESSION
`TRANSFER
`MANAGER
`
`
`HANDLER
`
`
`
`
`DEVICE
`
`Unified Patents |nc., Ex. 1001, pg. 3
`
`Unified Patents Inc., Ex. 1001, pg. 3
`
`
`
`U.S. Patent
`
`Mar. 13, 2007
`
`Sheet 3 of4
`
`US 7,191,233 B2
`
`3.011
`
`
` RECEIVE
`REDIRECT
`
`
`COMMAND
`
`
`305
`
`
`
`
`FOR DEVICE
`1O
`
`
`
`SESSION
`
`INTERCEPT ANY
`
`MESSAGES
`
`RECEIVE
`
`HISTORY
`
`31 5
`
`ACCESS REDIRECT
`DEVICE PROFILE
`
`320
`
`
`
`
`CONVERT STATE
`
`
`
`OF SESSION FOR
`
`
`
`REDIRECT ED
`
`DEVICE
`
`
` SET
`ACTIVATION
`
`325
`
`330
`
`TIMER
`
`
`
`Fig. 3A
`
`Unified Patents |nc., Ex. 1001, pg. 4
`
`Unified Patents Inc., Ex. 1001, pg. 4
`
`
`
`U.S. Patent
`
`Mar. 13, 2007
`
`Sheet 4 of4
`
`US 7,191,233 B2
`
`CHECK
`FOR
`
`
`
`ACTIVATION
`
`
`
`335
`
`
`
`TIMER
`EXPIRED?
`
`
`Y fl
`
`340
`
`345
`
`RETURN TO
`ORIGINAL
`
`STATE
`
`355
`
`SET
`ACTIVATION
`TIMER
`
`360
`
` Y E $ F
`
`M $
`
`TIMER
`EXPIRED
`
`375
`
`380
`
`345
`
`ig. BB
`
`Unified Patents |nc., Ex. 1001, pg. 5
`
`Unified Patents Inc., Ex. 1001, pg. 5
`
`
`
`US 7,191,233 B2
`
`1
`SYSTEM FOR AUTOMATED, MID-SESSION,
`USER-DIRECTED, DEVICE-TO-DEVICE
`SESSION TRANSFER SYSTEM
`
`TECHNICAL FIELD
`
`The invention generally relates to session management in
`a distributed computer networ<. More particularly,
`the
`invention relates to a user-directed transfer of an on-going
`software-based session from one device to another device.
`
`DESCRIPTION OF THE RELATED ART
`
`
`
`In today’s information intensive society, it is not uncom-
`mon for a user to have several communication-enabled
`devices (e.g., a cellular phone, a pager, a wireless personal
`digital assistant). A typical user may have a desktop com-
`puter system to perform information transactions (or ses-
`sions) such as sending/receiving electronic mail (“e-mail”),
`browsing the Internet for information and communicating
`via instant messaging. However, the size and weight of a
`typical desktop computer system are among several features
`that prevent users from taking a desktop computer system
`while the users are mobile. Moreover, the typical commu—
`nication conduits that provide session services to desktop
`computer systems are normally tied to stationary interfaces.
`As a result, many users have tumed to a variety of
`untethered and lighter weight devices to perform these
`information transactions while the user is mobile. Laptop
`computers with wireless modems are an example, as are
`enhanced text pagers, wireless handheld devices, personal
`digital assistants (PDA), and wireless mobile phones with
`integrated dis plays. The wireless handheld may have a small
`screen with a reduced keyboard coupled in a compact form
`factor. The fomi factor is typically small enough to allow the
`wireless handheld to be carried around conveniently on a
`user. Wireless handhelds typically have the capability to
`perform similar information transactions that a user would
`expect from his/her desktop computer in a format compat-
`ible with the reduced screen si7e.
`
`Along with wireless handhelds, personal digital assistants
`(“PDAs”) and Wireless Application Protocol (“WAP”) tele-
`phones have also been configured to perform similar infor-
`mation transactions but formatted to conform to the limita-
`tions of the respective graphical interfaces, as well as other
`limitations, of each type of device. With the wide variety of
`devices, a user may have many options in which to conduct
`a software application session. In fact, many users often
`have multiple communication—enabled devices.
`However, a user may be conducting a session on a first
`device and wish to switch to a second device. This decision
`may be based on a variety of factors such as proximity to the
`second device, mobility of the second device, safety con—
`cerns, a preference for a particular type of graphical user
`interface, modality of interaction with the user interface, or
`other additional capabilities of the second device, etc. In
`conventional systems, the user would have to discontinue
`the current session on the first device and reinitiate a new
`session on the second device. Although reinitiating a new
`session on a second device is an adequate solution, a user
`may be facing the loss of a session history of the session, a
`time delay related to the logging off and reinitiating, or other
`similar inconveniences. Accordingly, the conventional tech-
`nique of switching devices may not be entirely satisfactory.
`
`2
`
`
`SUMMARY OF THE INVENTION
`
`In accordance with the principles of the present invention,
`a method for redirecting an on-going, software-based ses-
`sion is disclosed. The method includes conducting a session
`with a first device and specifying a second device. The
`method further includes discontinuing the session on the first
`device and resuming the session on the second device. In
`addition to transferring from device to device, the data might
`need to be changed, either in format, for instance from
`HTML to WML, or in modality, for instance from voice to
`text or text to voice.
`One aspect of the present invention provides for a system
`for transferring a session. The system includes a network, a
`first device, a second device, and a session server. The
`session server is configured to provide a session service
`between the first device and the session server over the
`network. The session server is further configured to transfer
`a session from the first device to the second device in
`response to a redirect command from the first device.
`Another aspect of the present invention provides for a
`computer readable storage medium on which is embedded
`one or more computer programs. The one or more computer
`programs are implementing a method for redirecting a
`session. The one or more computer programs includes a set
`of instructions for conducting a session with a first device
`and specifying a second device. The set of instructions
`further include discontinuing the session on the first device
`and resuming the session on the second device.
`Additional aspects and novel features ofthe invention will
`be set forth in part in the description which follows and in
`part will become apparent to those skilled in the art upon
`examination of the following or may be learned by practice
`of the invention.
`
`DESCRIPTION OF DRAWINGS
`
`Features and aspects ofthe present invention will become
`apparent
`to those skilled in the art from the following
`description with reference to the drawings, in which:
`FIG. 1 illustrates a computer network in which an exem—
`plary embodiment of a session transfer module may be
`implemented;
`FIG. 2 illustrates a software architecture of an exemplary
`embodiment of the session transfer module according to the
`principles of the present invention; and
`FIG. 3 is a key to FIGS. 3A73B, which together illustrate
`an exemplary flow diagram of the session transfer module
`according to the principles of the present invention.
`
`DETAILED DESCRIPTION OF TH:
`
`
`
`PR 4 F 4 RED EMBODIMENTS
`
` LIJ
`
`For simplicity and illustrative purposes, the principles of
`the present invention are described by referring mainly to an
`exemplary embodiment thereof. Although an embodiment of
`the invention may be practiced in an instant messaging
`environment or a Web browsing environment, one of ordi-
`nary skill
`in the art will readily recognize that the same
`principles are equally applicable to, and can be implemented
`in, any session-oriented environments, and that any such
`variation does not depart from the true spirit and scope of the
`present
`invention. Moreover,
`in the following detailed
`description, references are made to the accompanying draw-
`ings, which illustrate specific embodiments in which the
`present invention may be practiced. Electrical, mechanical,
`logical and structural changes may be made to the embodi-
`
`10
`
`15
`
`30
`
`35
`
`4o
`
`45
`
`7
`
`6O
`
`65
`
`Unified Patents |nc., Ex. 1001, pg. 6
`
`Unified Patents Inc., Ex. 1001, pg. 6
`
`
`
`US 7,191,233 B2
`
`3
`ments without departing from the spirit and scope of the
`present
`invention. The following detailed description is,
`therefore, not to be taken in a limiting sense and the scope
`of the present invention is defined by the appended claims
`and their equivalents.
`In accordance with the principles ofthe present invention,
`a session transfer module of a session server provides the
`capability to initiate a transfer of an on-going session from
`a first device to a second device while maintaining the
`session and its context. The session transfer module may be
`invoked by a client software application executing on the
`first device in a way consistent with the modality of the user
`interface, including by a graphical user command selection,
`a voice command, or a command line prompt. '111e client of
`the first device may be configured to provide a selection of
`possible devices that may receive the redirected session. The
`session transfer module may be further configured to receive
`the identification of the selected second device (or redirected
`device) with the session redirect command over a commu-
`nication network. The communication network may be a
`wired (e.g., public switched telephone network (“PSTN”),
`Internet, ctc.,) a wireless network (e.g., digital telephone
`network, pager network, ctc.,) or a combination of the wired
`and wireless networks.
`
`The session transfer module may be further configured to
`discontinue the session with the first device and to block any
`subsequent messages of the transferring session from reach-
`ing the first device. The session transfer module may be
`further configured to access a device profile from a device
`profile database to convert the blocked messages as well as
`the messages comprising the prior message history (or
`session history) into a format compatible with the redirected
`device, where the format may include parameters such as
`data format. modality, etc. The session transfer module may
`be further configured to push the session to the redirected
`device either asynchronously or in response to an activation
`(e.g., log-on) of the redirected device by the user. Addition-
`ally, the session transfer module may be further configured
`to push the session back to the first device in response to a
`time-out in the activation of the redirected device.
`
`In another aspect of the present invention, the session
`transfer module may be configured to accept a session
`history of a first device during the redirection process. The
`first device may be provided with the capability of trans-
`mitting the session history of the session to the session
`transfer module. The session transfer module may be con—
`figured to direct a data handler module to reformat
`the
`session history to conform to the data format and/or modal-
`ity compatible according to the redirected device profile in
`response to the receipt of the session history. Subsequently,
`the session transfer module may be further configured to
`transmit the reformatted session history to the redirected
`device. Thus, a user may be provided with a complete
`history of the session at the redirected device.
`Alternatively, the session transfer module may access a
`session history of the session maintained by a session
`handler module. The session handler module may be con-
`figured to provide the session management tasks between a
`device and the session server, which may include maintain-
`ing a session history of the session. The session transfer
`module may be further configured to direct a data handler
`module to reformat the session history to conform to the data
`format and/or modality compatible according to the redi—
`rected device profile. Subsequently,
`the session transfer
`module may be further configured to transmit the reformat-
`
`10
`
`30
`
`35
`
`4o
`
`45
`
`7
`
`6O
`
`65
`
`4
`ted session history to the redirected device. Thus, a user may
`be provided with a complete history of the session at the
`redirected device.
`FIG. 1 illustrates a communication network 100 where an
`exemplary embodiment may be practiced in accordance with
`the principles of the present invention. In particular, the
`communication network 100 includes an application ser-
`vices network 105, one or more protocol gateways that may
`be wireless—based 110 or wire—based (e.g., an lntemet Pro—
`tocol (“IP”) protocol gateway 115), and wireless and wired
`clients, 120 and 125, respectively.
`The wireless and wired protocol gateways, 110 and 115,
`may be configured to interface with the application services
`network 105 via a network 112. The network 112 may be
`configured to provide a communication channel between the
`application services network 105 and the protocol gateways,
`110 and 115. The network 112 may be implemented by a
`local area network, a token ring network, a wide area
`network, the lntemet or some combination thereof.
`The wireless protocol gateway 110 may be further con-
`figured to interface with the wireless clients 120 via a
`wireless network 130. The wireless network 130 may be
`configured to provide wireless communication protocol sup—
`port for the wireless clients 125. The wireless network 130
`may be configured to support wireless network protocols
`such as Cellular Digital Packet Data, Mobitex,
`IEEE
`801.11b, Wireless Application Protocol, Global System for
`Mobiles, and other similar protocols.
`The wireless clients 120 may be implemented on a
`text—pager, a personal digital assistant, a wireless mobile
`telephone with or without
`integrated displays and other
`similar devices. Each of the wireless clients 120, as well as
`the wired clients 125, may be configured to execute a client
`program which may be implemented as a software program,
`utility and/or subroutine to interface with the application
`services network 105. The client may be configured to
`provide the software (e.g., utilities, application specific
`software, ctc.,) to support the session services designated for
`each type of wireless/wired client devices, 120 and 125.
`Moreover, a client may be configured to have a preferred
`mode ofinteraction, i.e., modality. For instance, a client may
`be configured to provide a graphical manner, e.g., a graphi-
`cal user interface,
`to redirect or transfer command for
`transferring a current session of client to another device
`without discontinuing the session. Alternatively, a client
`may be configured to provide a command line prompt for a
`user to input the redirect command into the client. Altcma-
`tively, a client may be configured to provide a voice com—
`mand to input the redirect command into the client. It is to
`be understood that this invention is not limited to these
`modes of user interaction with the client application.
`The client software of the wireless/wired client devices,
`120 and 125 may be further configured to provide a selection
`of devices that a transferring session may be redirected
`thereto. The selection may be provided in a graphical
`method (e.g., a dialog box, a menu selection, etc.) according
`to the constraints of each device. The selection of the
`redirected device may also be forwarded from the user of a
`wireless/wired client device, 120 and 125 to the session
`server 140.
`
`Similarly, the wired protocol gateways 115 may be con-
`figured to interface with the wired clients 120 via a wired
`network 135. The wired network 135 may be configured to
`provide wired communication protocol support for the wired
`clients 125. The wired network 135 may be configured to
`support protocols such as Transmission Control Protocol/
`
`Unified Patents |nc., Ex. 1001, pg. 7
`
`Unified Patents Inc., Ex. 1001, pg. 7
`
`
`
`US 7,191,233 B2
`
`5
`
`10
`
`15
`
`30
`
`35
`
`5
`Internet Protocol, X.25, IEEE 802.5, IEEE 802.3, Asynchro—
`nous Transfer Mode, and other network protocols.
`The wired clients 125 may be implemented as a laptop
`computer with a telephone modem, a desktop computer with
`a telephone modem, server/client, and other similar com-
`puting platforms. Each of the wired clients 125 may be
`configured to execute a client implemented by a software
`program, utility and’or subroutine to interface with the wired
`network 135 and, subsequently,
`the application services
`network 105. Accordingly, messages from wireless clients
`120 and]or wired clients 125 are transmitted to their protocol
`gateways, 110 and 115, respectively, over their respective
`networks, 110 and 115, respectively. The protocol gateways,
`110 and 115, may be configured to encapsulate the trans-
`mitted messages to the network protocol of the application
`services network 105. Similarly, as messages are transmitted
`from the application services network 105 to the clients, 120
`and 125, the protocol gateways, 110 and 115, reformat the
`transmitted mes sages into the respective network protocol of
`the clients, 120 and 125.
`The application services network 105 may be configured
`to provide a variety of services to the wireless and wired
`clients, 120 and 125,
`respectively. These services may
`include session—based services such instant messaging, data—
`base querying. and other similar services. The supporting ,
`applications of these session based-services may be pro-
`vided by an application server 140. The application server
`140 may be configured to provide an application such as
`instant messaging application, a web application, a database
`querying application, and other similar applications. The
`application server 140 may be implemented by any nLunber
`of commercially available servers or high performance
`computers. Because the specific type of session to be used
`in the present invention will vary according to individual
`needs, the present invention is not limited to any specific
`type of session and may thus utilize any type of session that
`may be provided to a user which may reasonably accomplish
`the goals of the present invention.
`The application server 140 may be further configured to
`interface with the components of the application services
`network 105, which may include a session server 145, a
`plurality of message routers 150, a plurality of databases
`155, and a data handler module 160.
`The session server 145 may be configured to provide
`session-based services to the users of the wireless and wired
`clients, 120 and 125. A session-based service may be an
`instant messaging service, messaging service, a database
`query, a Web browsing session, and the like. Additionally,
`although FIG. 1 depicts a single session server 145, it is to
`be understood that the present invention is not limited to one ,
`session server, but rather, the present invention may include
`any reasonable number of session servers, clustered or
`otherwise configured to interoperate. Accordingly, the single
`session server depicted in FIG. 1 is for illustrative purposes
`only and thus is not meant to limit the present invention in
`any respect.
`The session server 145 is further configured to interface
`with the mes sage routers 150. The message routers 150 may
`be configured to authenticate the messages of the session
`between wireless/wired clients, 120 and 125, and the session
`server 145. The message routers 150 may be further con-
`figured to route the messages of the session between the
`session server 145 and to the appropriate protocol gateway,
`110, 115, of the communication network 100 depending on
`the network used by the wireless/wired clients, 120 and 125.
`Additionally, the message routers 150 may be further con-
`figured to transfer messages to and from the application
`
`4o
`
`45
`
`6O
`
`65
`
`6
`server 140 directly. Thus, for example, wired client 125 may
`communicate with a wireless client 120.
`The session server 145 may be configured to access the
`databases 155 to retrieve information to support the type of
`session services provided to each user and to ascertain the
`validity of each user. The databases 155 may be imple—
`mented in a variety of ways. However, as is readily apparent
`to those ofordinary skill in the art, the differences among the
`variety of implementations have no effect on the scope and
`spirit of the present invention. Additionally, the databases
`155 may be configured to provide device profile information
`to the device manager 215 and’or user preference data to the
`application server 140.
`The session server 145 may be further configured to
`interface with the data handler module 160. The data handler
`module 160 may be configured to provide data transforma-
`tion services for the session server 145
`Although FIG, 1 illustrates an example of the logical
`configuration of the various components of the of the
`application services network 105, it should be noted that that
`the various components may be physically linked in a
`variety of methods such as a local area network, a bus
`architecture, and other similar networking architecture.
`Accordingly, the configuration of the application services
`network 105 depicted in FIG. 1 is for illustrative purposes
`only and thus is not meant to limit the present invention in
`any respect.
`FIG. 2 illustrates a block diagram of the software archi—
`tecture of an exemplary embodiment of the session transfer
`module included in the session server 145 shown in FIG. 1.
`In particular,
`the session server 145 includes a session
`manager 205, a session handler 210, a device manager 215,
`and a session transfer module 220.
`The session manager 205 of the session server 105 may be
`configured to provide the management function for the
`session server 105 for the users. The management functions
`may include determining the type of services available to a
`user, the number of sessions. load—balancing of the sessions,
`registration of new users, etc.
`As part of the session server 145, the session handler
`module 210 is configured to manage an individual session
`for each of the wireless/wired clients 120, 125. The session
`handler module 210 may provide at least authentication of
`the messages transmitted and message acknowledgement
`during a session.
`Also part of the session server 145, the device manager
`215 is configured to provide device profiles to the session
`handler module 210. A user may be registered to access the
`session server 145 through multiple devices. When a user
`logs into the session server 145, the session handler module
`210 is notified by a log—on message of the type of client
`device is being utilized by the user. The session handler
`module 210 then retrieves the device profile from the device
`manager 215. The retrieved device profile is then used by the
`session handler module 210 to transfer information in a
`data—forrnat and/or modality compatible with the client
`device. The device manager 215 may be further configured
`to access database 155 to retrieve the device profile. The
`device profile may be stored on a single disk ofthe database
`155 or may be stored across multiple disks of the database
`155.
`The retrieved device profile is also utilized by the data
`handler module 160 (shown in FIG. 1). The data handler
`module 160 may be configured to provide data transforma-
`tion services to the session manager 205. The session
`transfer module 220 may be configured to provide the
`capability of transferring a session from one client device of
`
`Unified Patents |nc., Ex. 1001, pg. 8
`
`Unified Patents Inc., Ex. 1001, pg. 8
`
`
`
`US 7,191,233 B2
`
`7
`a user to another client device of the user. The session
`transfer module 220 may be invoked in a way consistent
`with the client user interface, including by using a graphical
`command, a command line prompt, or a voice command,
`The “Redirect” or “Transfer Session” command may be
`configured to provide a redirected device of the user to
`accept the transferred session. The session transfer module
`220 may be further configured to discontinue or suspend the
`session with the transferring device and to block any sub-
`sequent messages of the transferring session from reaching
`the transferring device.
`The session transfer module 220 of the session server 145
`is further configured to access a device profile from the
`device manager 215 to facilitate the conversion of the
`blocked messages into a format compatible with the redi-
`rected device. The session transfer module 220 is further
`configured to push the transferring session to the redirected
`device in response to an activation (e.g.,
`log—on) of the
`redirected device by the user. Additionally,
`the session
`transfer module is further configured to push an alert to the
`redirected device to notify the user that the session is waiting
`and that the user can access it by activating the session on
`the redirected device. Moreover, the session transfer module
`is further configured to push the session back to the device
`in response to a time-out in the activation of the redirected '
`device.
`
`10
`
`15
`
`The session transfer module 220 may be configured to
`optionally accept a transaction (or session) history of the
`transferring device during the redirection process. The
`device may be provided with the capability of transmitting
`the session history of the device to the session transfer
`module 220. The session transfer module 220 may be
`configured to reformat the session history to conform to the
`data format and/or modality compatible according to the
`redirected device profile in response to the receipt of the
`session history. Subsequently. the session transfer module
`220 may be further configured to transmit the reformatted
`session history to the redirected device. Thus, a user may be
`provided with a complete history of the session at
`the
`redirected device. Alternatively, the session transfer module
`220 may be configured to transmit a portion of the session
`history that is compatible with the memory requirements of
`the redirected device. This particular feature may be a user
`preference setting and/or a network administrative setting.
`FIGS. 3A73B,
`together,
`illustrate an exemplary flow
`diagram 300 of the session transfer module 225 of the
`session server 140 shown in FIG. 2 in accordance with the
`principles of the present invention. In particular, referring to
`FIG. 3A. the session transfer module 225 is invoked when
`the session server 145 receives a redirect or transfer com-
`mand from a wireless/wired client 120,125, in step 305.
`In step 310, the session transfer module 220 is configured
`to intercept any messages destined for the first client device.
`Additionally, the session transfer module 220 may be con-
`figured to block any messages for the first client device. The
`intercepted messages or blocked messages may be stored
`temporarily in a memory in the session server 145 allocated
`by the session transfer module 220. Any messages queued
`for transfer from the first client device are subsequently
`released by the session transfer module 220.
`In step 315,
`the session transfer module 220 may be
`configured to receive a transaction or session history from
`the transferring device. The session history may be stored
`temporarily in a memory space allocated by the session
`transfer module 220 in the session server 105. Alternatively,
`the session handler 210 or application server 140 may be
`
`30
`
`35
`
`4o
`
`45
`
`6O
`
`65
`
`8
`configured to maintain a session history of the session for the
`transferring device, which may be accessed by the session
`transfer module 220.
`In step 320,
`the session transfer module 220 may be
`configured to access the device profile of the selected second
`client (or redirected) device from the device manager 215.
`The retrieved device profile is utilized by the session transfer
`module 220 to direct
`the data handler module 160 to
`reformat or convert the stored messages into a data format
`compatible and/or modality (e.g., WML for WAP devices,
`HDML, for pre—WAP telephones, HTML for desktop brows—
`ers, VoiceXML for voice browsers, etc.) with the redirected
`device.
`In step 325, the state of the session is converted to a state
`compatible with the redirected device by the session transfer
`module 220 according the device profile. For example, the
`redirected device may have a different user preference
`settings, data preferences, modality, and/or command
`library.
`the session transfer module 220 sets an
`In step 330,
`activation timer. The activation timer is configured to pro-
`vide a time limit for the user to log on to the redirected
`device. The length of the activation timer may be preset by
`a service provider or the amount of time may be set by the
`user. Additionally, the session transfer module 220 may be
`further configured to transmit a notification (or alert) mes-
`sage to the redirected device to inform that a current
`on—going session is awaiting to be resumed.
`Referring to FIG. 3B, in step 335, the session transfer
`module 220 determines whether the user has activated the
`redirected device, If the session transfer module 220 detects
`the activation of the redirected device,
`in step 340, the
`session transfer module 220 pushes the converted session to
`the redirected device over the network 100 as a normal
`session with the converted transaction log. Subsequently, the
`session transfer module 220 returns to an idle state, in step
`345.
`Otherwise, in step 350, the session transfer module 220
`determines whether the activation time has expired. If the
`activation timer has not expired, the