WO1996021189A1 - Network support of supplemental local applications - Google Patents

Network support of supplemental local applications Download PDF

Info

Publication number
WO1996021189A1
WO1996021189A1 PCT/US1995/017108 US9517108W WO9621189A1 WO 1996021189 A1 WO1996021189 A1 WO 1996021189A1 US 9517108 W US9517108 W US 9517108W WO 9621189 A1 WO9621189 A1 WO 9621189A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
conφuter
workstation
network
information
Prior art date
Application number
PCT/US1995/017108
Other languages
French (fr)
Inventor
Randy W. Raynak
Viktor Kushnir
Original Assignee
Compuserve Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Compuserve Incorporated filed Critical Compuserve Incorporated
Priority to AU46929/96A priority Critical patent/AU4692996A/en
Publication of WO1996021189A1 publication Critical patent/WO1996021189A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates generally to a computer system that manages transitions
  • the present invention relates to a system for enabling a first workstation application
  • Subscribers usually connect to the network through a wide area network. Subscribers usually connect to the network through a wide area network. Subscribers usually connect to the network through a
  • communicate with the online information service may be provided by the service itself or it
  • the software is general purpose for the
  • online service and provides the base functionality needed to interact with the online service.
  • a subscriber may be interested in accessing
  • the travel planner may be able to get more information from an
  • This method of accessing the outside application may be
  • the subscriber may be required to leave the online service.
  • the subscriber may be required to invoke the special access software used to connect to
  • the subscriber may need to know special commands to access and use the outside
  • the subscriber may be required to make a
  • online information service provider doing so may not be desirable.
  • the online information service provider may not be desirable.
  • 5 general purpose access software provided by the online service may have to be modified to accommodate the outside apphcation thereby making the software more cumbersome and
  • the online service provider rather than the outside vendor, may
  • the present invention Supplemental Local Apphcation Protocol (hereinafter SLAP)-addresses the needs of both the subscribers and the online information service
  • SLAP Supplemental Local Apphcation Protocol
  • the present invention provides a mechanism to allow special apphcations, also
  • supplemental local apphcations to be supported by the online service.
  • the invention allows vendors of special
  • network may mean that more subscribers can connect through local, rather than long distance,
  • the invention allows subscribers, who have connected to the
  • the invention returns the subscriber to the general purpose
  • the present mvention manages the
  • the subscriber is not required to interrupt one session in order to start another.
  • the subscriber is not required to interrupt one session in order to start another.
  • invention facilitates transitions between the outside and online service host computers so that
  • Figure 1 is a schematic representation of one embodiment of the present invention for
  • Figure 2 is a state diagram that represents possible states and transitions for one embodiment of the present invention.
  • FIG. 3 is a flow diagram of the preferred system of workstation transitions for the
  • Figure 4 shows a preferred method for designing or modifying a supplemental local
  • Figures 5A and 5B show a connection diagram illustrating the steps of transferring a
  • FIG. 1A one embodiment of the present invention is shown.
  • Figure 1A is a schematic representation of one known method for allowing a user at a
  • the 5 workstation 10 may be connected to the network node 30 via a modem 20.
  • the modem 20 may be connected to the network node 30 via a modem 20.
  • connection may be through a cable modem or a modem pool server. Other options may be available as well.
  • the online service host computer 40 and a foreign host computer 50 are
  • the online service network node 30 manages the
  • the online service owns, operates,
  • the devices that belong to the online service may use a common language or protocol that facilitates, and possibly optimizes, communication and data
  • a host is considered foreign if it is not owned,
  • this software is provided by the online service so that it knows the online service
  • This online service general purpose access software may
  • the Information Manager 5 be referred to as the Information Manager or IM.
  • the IM manages the connection to the online information service and manages the presentation of information to the user.
  • the IM operates preferably in a multitasking, graphical interface environment such as the
  • the workstation 10 may be equipped with another
  • apphcation for accessing information residing on a foreign host computer 50 may serve a
  • the supplemental local apphcation operates preferably in a multitasking
  • supplemental local apphcation is provided by a third party, rather then the online service, it
  • the information that the user needs may be located on a foreign 50, rather than the
  • the workstation 10 which is running the
  • supplemental local apphcation may connect to the foreign host 50 via the online service network node 30.
  • the present invention manages a transition between the IM and online service host to
  • Figure 2 a state diagram, illustrates the
  • the user may request access to the supplemental local apphcation and
  • State 3 the online service host and IM confirm the request and coordinate the
  • the network node disconnects from the online service host and connects to the
  • the workstation is running the supplemental local apphcation rather
  • the supplemental local apphcation has control of the IMs connection to the
  • the user may use the supplemental local
  • the user may never know that the online service host arranged the transition
  • the transition to the fifth state (4a) occurs when the user requests a return to the IM.
  • the network node arranges to disconnect from the foreign host computer and connect to an
  • the user may decide to access a number of supplemental local apphcations before
  • the present invention serves the user's requests and may facilitate any
  • a protocol called the Supplemental Local Apphcation Protocol or SLAP, is used to
  • SLAP is understood by the IM and
  • Apphcation Protocol is called a SLAP apphcation.
  • SLAP provides a means for invoking a SLAP apphcation and a
  • Figure 3 presents a conceptual view of a preferred embodiment
  • Step 1 the IM invokes the SLAP apphcation. If the invocation is unsuccessful (Step 2),
  • Step 6 is executed and the
  • the user may be returned to the point he or she was before the SLAP request was initiated.
  • the IM passes to the SLAP apphcation a unique identifier or handle for the communication port through which the IM is connected to the network node
  • Step 6 the SLAP apphcation may then take control of the BV1
  • Step 7 after the IM minimizes, the SLAP apphcation starts running.
  • SLAP apphcation takes control of the IM's, and hence the workstation's, connection to the
  • the network node Because the network node has estabhshed a connection to the foreign host, the
  • momtor the state of another apphcation running on the workstation is unique to SLAP as
  • function of a multitasking operating system is to control the execution of apphcations.
  • Step 9 the user returns to the same point he or she
  • Figure 4 illustrates one embodiment in which the present invention may operate. Details of the
  • the SLAP apphcation source code may be modified so that it can
  • announcement provides verification that the transition between the IM and the SLAP
  • the announcement is preferably an ASCII string composed of the
  • the process of converting may be con ⁇ uted as a signed, sixteen bit integer value.
  • announcement may be terminated by a carriage return ⁇ CR>.
  • Step 2 the SLAP apphcation is installed on the workstation. As shown in Step 2,
  • the IM may invoke the apphcation and pass to the SLAP apphcation the
  • the format is, preferably, as
  • ⁇ application name> is an identifier sent to the IM by the network node when the user requests the SLAP apphcation.
  • the ⁇ executable file> is a path name to the SLAP apphcation.
  • the ⁇ command line parameters> consist of static text and substituted parameters that the IM
  • the type of the communications device (%device) tells the SLAP apphcation how to
  • the types of devices may include
  • the port parameter is set to the numeric value
  • the SLAP apphcation After setup, the SLAP apphcation, the EM, and the online service host apphcation may
  • FIGS 5 A and 5B show the steps
  • Information in italics refers to messaging details that the IM, SLAP
  • Step 1 the session may begin with an BVI
  • Step 2 the user initiates a request to be handled by the SLAP apphcation.
  • Step 3 the online
  • IM determines the SLAP apphcation exists, it responds to the online service host with an
  • Step 4 the online service host asks the IM to
  • the request includes the apphcation name that the SLAP
  • Step 6 determines that the apphcation exists. If the apphcation exists, the IM invokes the
  • the IM monitors the state of the apphcation.
  • Step 7 the IM tells the online
  • Step 9 If the transition between the IM and SLAP apphcation is
  • the SLAP apphcation takes control of the connection and communicates with the
  • Step 11 the IM maximizes and awaits a
  • the user may continue communicating with an online
  • the IM and online service host may once again use the online service
  • the present invention is unique because it manages transitions between two workstation apphcations, running in a graphical interface environment on a multitasking operating system, so that they may use the same network connection to access information residing on a host computer connected to the network.
  • the transitions are facihtated through a protocol known by the two workstation apphcations and an online service host to which the workstation is connected.
  • the present invention has been described in the form of preferred embodiments, but several modifications and variations to the invention could be made and fall within the scope of the subjoined claims.

Abstract

A system for network support of supplemental local applications allows one workstation (10) application, communicating with a host computer (30) on a network, to invoke a second workstation application that takes control of the first application's connection to the network. The first application waits for the second application to terminate and then resumes control of the network connection so that the user is returned to the same point in the work session. The transistions between the workstation applications are automatic and facilitated by the network through a protocol known by both workstation applications and the network. Although the user is aware of the change in applications, the user may never know that an on-line service host facilitated the transition between the applications.

Description

NETWORK SUPPORT OF SUPPLEMENTAL LOCAL APPLICATIONS
BACKGROUND AND SUMMARY OF THE INVENTION
The present invention relates generally to a computer system that manages transitions
between two workstation software apphcations, running in a graphical interface environment
on a multitasking operating system, so that they may use the same network connection to
access information residing on a host computer connected to the network. More particularly,
the present invention relates to a system for enabling a first workstation application,
communicating with a host computer on a wide area network, to invoke a second workstation
application and allow the second workstation application to take control of the first
workstation's connection to the wide area network and then resume control of the network
connection when the second workstation application terminates.
Today, online information services, such as CompuServe® Incorporated, offer their
subscribers access to information and services provided by a multitude of host computers
connected via a wide area network. Subscribers usually connect to the network through a
mode Once connected, subscribers access the information and services through software residing on the subscribers' workstations. Among the functions performed by the workstation
software are managing the connection to the wide area network and managing the
presentation of information to the subscriber. The access software that the subscriber uses to
communicate with the online information service may be provided by the service itself or it
may be provided by another vendor. In either case, the software is general purpose for the
online service and provides the base functionality needed to interact with the online service.
Online information services today provide a wealth of information and services to their
subscribers. In addition, they provide sophisticated software to help their subscribers access the information they need or want. Despite the variety of needs and interests that online
information services are able to meet, subscribers often have a desire to access information and
services that are not part of the product suite of the online information service provider (i.e.,
outside or special apphcations). For example, a subscriber may be interested in accessing
5 travel information in order to plan a trip. Although some travel information may be available
from the online service, the travel planner may be able to get more information from an
outside vendor that specializes in compiling and organizing up-to-date travel information f om
a variety of sources such as hotels, restaurants, and airlines. In addition, the information may
be easier to access and understand if the travel planner uses special purpose, rather than online
o service general purpose, access software for presentation and display.
Today, subscribers usually are required to leave the online service and connect to a host that is not part of the online service (i.e., an outside host) in order to access the outside
application. In most cases, subscribers use special access software to connect to and to
communicate with the outside host. This method of accessing the outside application may be
5 inconvenient and inefficient. First, the subscriber may be required to leave the online service. Next, the subscriber may be required to invoke the special access software used to connect to
and communicate with the outside host. Depending on the sophistication of the access
software, the subscriber may need to know special commands to access and use the outside
host. Finally, depending on the access mechanism, the subscriber may be required to make a
o long distance telephone call to connect to the outside host.
Although these outside applications could be integrated into the product suite of the
online information service provider, doing so may not be desirable. For example, the online
service's general purpose access software that is used to interact with the online service may
not have the functionality required to interact with a specialized, outside application. The
5 general purpose access software provided by the online service may have to be modified to accommodate the outside apphcation thereby making the software more cumbersome and
difficult to use. In addition, the online service provider, rather than the outside vendor, may
need to assume some responsibility for maintaining the outside apphcation.
The present invention- Supplemental Local Apphcation Protocol (hereinafter SLAP)-addresses the needs of both the subscribers and the online information service
providers. The present invention provides a mechanism to allow special apphcations, also
referred to as supplemental local apphcations, to be supported by the online service. These
special apphcations include software residing on an outside host computer as well as
workstation software for managing a connection to the outside host and managing the
presentation and display of information. First, the invention allows vendors of special
apphcations to make their products more accessible by making them available through the
wide area network of the online service provider. Access through the online service wide area
network may mean that more subscribers can connect through local, rather than long distance,
telephone calls. In addition, the invention allows subscribers, who have connected to the
online service using the online service's general purpose access software, to then use a
supplemental local apphcation to interact with the special apphcation residing on a host
computer that is not a part of the online service. Once the subscriber has finished interacting with the special apphcation, the invention returns the subscriber to the general purpose
software session with an online service host computer. The present mvention manages the
transitions between the online service software and the supplemental local apphcation so that
the subscriber is not required to interrupt one session in order to start another. In addition, the
invention facilitates transitions between the outside and online service host computers so that
the subscriber is not aware the transition is taking place.
The needs of subscribers are met because they may access outside apphcations without
actually leaving the online information service. In addition, subscribers may take full advantage of the outside apphcation because they can use special purpose, rather than general purpose, software to interact with the apphcation. Finally, the online information service provider's involvement with the outside apphcation may be minimized The online service
makes the outside apphcation accessible to a wide subscriber base, but it is not required to
assume the added responsibihties of maintaining the special purpose access software for the
workstation or the special apphcation residing on the foreign host. Furthermore, the online
service provider is not required to modify its general purpose access sofhvare to accommodate
a variety of special apphcations. The advantages of the present invention are explained further
by the accompanying drawings and detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a schematic representation of one embodiment of the present invention for
using a workstation to run general purpose and special purpose apphcations to access online service and foreign host computers, shown in two steps in Figures 1A and IB.
Figure 2 is a state diagram that represents possible states and transitions for one embodiment of the present invention.
Figure 3 is a flow diagram of the preferred system of workstation transitions for the
present invention.
Figure 4 shows a preferred method for designing or modifying a supplemental local
apphcation to communicate with the online service network.
Figures 5A and 5B show a connection diagram illustrating the steps of transferring a
network connection between a primary workstation apphcation and a supplemental local
apphcation. DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
Referring now to Figure 1A, one embodiment of the present invention is shown.
Figure 1A is a schematic representation of one known method for allowing a user at a
workstation 10 to connect to a host computer 40 through a network node 30. The
5 workstation 10 may be connected to the network node 30 via a modem 20. The modem
connection may be through a cable modem or a modem pool server. Other options may be available as well. The online service host computer 40 and a foreign host computer 50 are
connected via a wide area network. The online service network node 30 manages the
workstation's connections to the host computers. One network node is shown for simplicity
i o although actually more than one network node may be involved in the connection.
A distinction is made between online service network nodes/hosts and foreign hosts to
indicate who owns, operates, and maintains the equipment. The online service owns, operates,
and maintains the network node and online service host computer. Control over these devices,
as well as others that are part of the wide area network, allows the online service to define
15 how they will communicate. The devices that belong to the online service may use a common language or protocol that facilitates, and possibly optimizes, communication and data
transfers. As a result, new devices that understand the protocol may be integrated easily into
the online service wide area network. A host is considered foreign if it is not owned,
operated, or maintained by the online service. 0 Referring to Figure 1A, the connection to the host computer 40 is established,
preferably, through the general purpose access software running on the workstation 10.
Preferably, this software is provided by the online service so that it knows the online service
protocol and may take advantage of special features within the protocol that facilitate data
transfers and other communications. This online service general purpose access software may
5 be referred to as the Information Manager or IM. Preferably, the IM manages the connection to the online information service and manages the presentation of information to the user. The IM operates preferably in a multitasking, graphical interface environment such as the
Microsoft® Windows™ operating syste
Referring now to Figure IB, the workstation 10 may be equipped with another
apphcation for accessing information residing on a foreign host computer 50. It may serve a
specific purpose, and therefore, may be referred to as a special or supplemental local
apphcation. The supplemental local apphcation operates preferably in a multitasking,
graphical interface environment such as the Microsoft® Windows™ operating system. If the
supplemental local apphcation is provided by a third party, rather then the online service, it
may not understand details of the online service protocol and therefore, may not take
advantage of special protocol features that facilitate data transfers and other communications. Despite this possible limitation, the user may want to use the supplemental local apphcation
because it has special features, not present in the IM, for locating and displaying information.
In addition, the information that the user needs may be located on a foreign 50, rather than the
online service 40, host computer. Therefore, to take advantage of the supplemental local
apphcation, the supplemental local apphcation will be running and the workstation, in this
instance, is connected to the foreign host. The workstation 10, which is running the
supplemental local apphcation, may connect to the foreign host 50 via the online service network node 30.
The present invention manages a transition between the IM and online service host to
the supplemental local apphcation and foreign host. Figure 2, a state diagram, illustrates the
transition. The states and transitions described here are merely exemplary and illustrate a
preferred embodiment of the present invention. In the initial state (State 1), the user may not
be connected to the online service. When the user invokes the IM ( la), a connection is established between the user's workstation, the onhne service network node, and an online
service host (State 2).
At some point, the user may request access to the supplemental local apphcation and
the foreign host. This request is represented as transition 2a in the state diagram. In the third
state (State 3), the online service host and IM confirm the request and coordinate the
invocation of the supplemental local apphcation and connection to the foreign host. In the
next transition (3 a), the IM transfers control to the supplemental local apphcation and then
minimizes. The network node disconnects from the online service host and connects to the
foreign host. In the fourth state (State 4), the workstation is connected to the foreign host computer
via the network node. The workstation is running the supplemental local apphcation rather
than the IM. The supplemental local apphcation has control of the IMs connection to the
network node and the IM is in an inactive state. The user may use the supplemental local
apphcation to interact with the special apphcation residing on the foreign host computer.
Although the user is aware of the change between the IM and the supplemental local
apphcation, the user may never know that the online service host arranged the transition
between the programs running on the workstation and the transition between the host
computers.
The transition to the fifth state (4a) occurs when the user requests a return to the IM.
The network node arranges to disconnect from the foreign host computer and connect to an
onhne service host computer. An onhne service host then reactivates the IM which resumes
control of the network connection. Once again, the user is aware of the transition between the
supplemental local apphcation and the IM, but the user may never know that the online service
host arranged the transition between the programs running on the workstation and the
transition between the host computers. From State 4, the user may also request to disconnect from the online service (4b). When this request is made, the user returns to the initial state. As evident from the state
diagram, the user may decide to access a number of supplemental local apphcations before
ending the session. The present invention serves the user's requests and may facilitate any
number of transitions.
A protocol, called the Supplemental Local Apphcation Protocol or SLAP, is used to
manage the transitions between the apphcations running on the workstation and the transitions
between the online service and foreign host computers. SLAP is understood by the IM and
programs running on the online service host computers. The supplemental local apphcation
participates by accepting defined parameters passed on a command line and announcing itself
to the online service. SLAP permits apphcations that do not understand the details of the
online service protocol to nonetheless communicate and operate in the online service
environment. The supplemental local apphcation, which understands the Supplemental Local
Apphcation Protocol, is called a SLAP apphcation.
For the workstation, SLAP provides a means for invoking a SLAP apphcation and a
means for returning to the IM. Figure 3 presents a conceptual view of a preferred
embodiment of the present invention as h operates on the workstation. The present invention
operates when the user, who is connected to an online information service host via the IM, initiates a request to perform a task to be handled by the SLAP apphcation and a foreign host.
In Step 1, the IM invokes the SLAP apphcation. If the invocation is unsuccessful (Step 2),
the IM tries again up to five times (Step 3 and Step 4).
If the invocation is successful (through Step 2 or Step 4), Step 6 is executed and the
IM is minimized. The process of minimizing a workstation apphcation in a multitasking,
graphical interface environment is well known and is not explained here. When the IM
minimizes, it enters an inactive state, but it continues to run. As a result, information about the appearance of the workstation display and associated activities is preserved. Therefore,
the user may be returned to the point he or she was before the SLAP request was initiated.
In addition to minimizing, the IM passes to the SLAP apphcation a unique identifier or handle for the communication port through which the IM is connected to the network node
(Step 6). Using this information, the SLAP apphcation may then take control of the BV1
connection to the network node. The details of passing this information to the SLAP apphcation are explained in conjunction with Figure 4.
As shown in Step 7, after the IM minimizes, the SLAP apphcation starts running. The
SLAP apphcation takes control of the IM's, and hence the workstation's, connection to the
network node. Because the network node has estabhshed a connection to the foreign host, the
user may communicate with the foreign host via the SLAP apphcation. If the user tries to
maximize or switch to the HVI while the SLAP apphcation is running, the IM refuses to
respond to the request.
Although the IM is minimized and is technically inactive at this point, it has the abihty to momtor the state (active or not running) of the SLAP apphcation. The abihty of the DVI to
momtor the state of another apphcation running on the workstation is unique to SLAP as
implemented in a multitasking, graphical interface environment. It is well known that one
function of a multitasking operating system is to control the execution of apphcations.
Because the operating system performs this function, one apphcation running on the
workstation does not need to know whether other apphcations are running. However, one
objective of SLAP is to return the user to the IM session after the SLAP apphcation
terminates. This objective is accomplished through the IM's monitoring of the SLAP
apphcation. When the SLAP apphcation terminates (Step 8), the IM maximizes and takes
control of the connection (Step 9). As a result, the user returns to the same point he or she
was before the IM minimized. Referring now to Figure 4, setup details for the protocol are shown. Figure 4 illustrates one embodiment in which the present invention may operate. Details of the
protocol may vary without departing from the spirit and scope of the invention. To take
advantage of the protocol, the SLAP apphcation source code may be modified so that it can
announce itself to the online service and accept command line parameters (Step 1). The
announcement provides verification that the transition between the IM and the SLAP
apphcation succeeded. The announcement is preferably an ASCII string composed of the
characters ' ' (decimal 32) through '-' (decimal 126), inclusive. The process of creating an
ASCII string is known in the art and therefore, is not explained. Preferably, the announcement
format is as follows:
#<apphcation name>;<error check><CR> where <apphcation name> matches the apphcation name used by the online service host in a
request to invoke a SLAP apphcation and <error check> is the ASCII representation of the
sum of the ASCII values of the announcement bytes from '#' to ';', inclusive. The <error check> may be conφuted as a signed, sixteen bit integer value. The process of converting
integers to character strings is well known in the art and is not explained here. The
announcement may be terminated by a carriage return <CR>.
In Step 2, the SLAP apphcation is installed on the workstation. As shown in Step 2,
the name of the SLAP apphcation, along with an execution command, is added to the IM
initialization file. This information tells the IM about the SLAP apphcation so that at the
appropriate time, the IM may invoke the apphcation and pass to the SLAP apphcation the
information needed to take control of the network connection. The format is, preferably, as
follows:
application name> = <executable file><command line parameters>
where <application name> is an identifier sent to the IM by the network node when the user requests the SLAP apphcation. The <executable file> is a path name to the SLAP apphcation.
The <command line parameters> consist of static text and substituted parameters that the IM
may replace with current settings. The process of setting and reading a command line is well
known in the art and is not explained here. However, the information passed on the command
line is explained because it is through the command line, with the current settings, that the IM
is able to tell the SLAP apphcation how to take control of the connection to the network. The
available substitutable settings are:
%dir the current IM working directory
%userid the id used to log on in the current connection %port the current open communications port
%baud the current baud rate
%device the type of communications device in use
The type of the communications device (%device) tells the SLAP apphcation how to
interpret the communications port (%port) setting. The types of devices may include
"LOCAL," "NASI," and "NCSI." Preferably, the port parameter is set to the numeric value
for the identifier or open handle for the device.
After setup, the SLAP apphcation, the EM, and the online service host apphcation may
communicate using the protocol of the present invention. Figures 5 A and 5B show the steps
in the protocol. The form described here is merely a preferred or exenφlary embodiment. For
each step, the direction and a summary of the communication is shown. In addition, details of
the action are provided. Information in italics refers to messaging details that the IM, SLAP
apphcation, and online service host expect to send or receive.
Referring now to Figure 5 A, as shown in Step 1, the session may begin with an BVI
connection to an online service host. Both the IM and the online service host understand the
online service protocol so each may take advantage of special features in the protocol. In Step
2, the user initiates a request to be handled by the SLAP apphcation. In Step 3, the online
service host responds to the request by initiating an apphcation confirmation request from the IM to confirm that the SLAP apphcation has been installed on the user's workstation. If the
IM determines the SLAP apphcation exists, it responds to the online service host with an
apphcation confirmation response (Step 4). In Step 5, the online service host asks the IM to
invoke to SLAP apphcation. The request includes the apphcation name that the SLAP
5 apphcation is expected to use in its announcement. To respond to the request, the IM looks in
the IM intialization file for the requested SLAP apphcation and then makes a system call to
determine that the apphcation exists (Step 6). If the apphcation exists, the IM invokes the
SLAP apphcation and passes the current communication settings via the command line so that
the apphcation may assume control of the connection. The Evi then minimizes While
ι o minimized, the IM monitors the state of the apphcation. In Step 7, the IM tells the online
service host that the invocation of the SLAP apphcation was successful.
It is at this point that the SLAP apphcation starts communicating with the online
service network node. Technically, the SLAP protocol has been entered because the
supplemental local apphcation, which is not developed or maintained by the online service
is provider and therefore, does not understand details of the online service protocol, is
communicating with the online service. Referring now to Figure 5B, as shown in Step 8, the
SLAP apphcation announces itself to the online service host. The onhne service host responds
with an acknowledgment (Step 9). If the transition between the IM and SLAP apphcation is
successful, the SLAP apphcation takes control of the connection and communicates with the
0 foreign host (Step 10).
When the SLAP apphcation terminates (Step 11), the IM maximizes and awaits a
resume request from the online service host. After the resume request (Step 12) and an
acknowledgment by the IM (Step 13), the user may continue communicating with an online
service host via the IM. The IM and online service host may once again use the online service
5 protocol, rather than the SLAP protocol, to facilitate communications (Step 14). The present invention is unique because it manages transitions between two workstation apphcations, running in a graphical interface environment on a multitasking operating system, so that they may use the same network connection to access information residing on a host computer connected to the network. The transitions are facihtated through a protocol known by the two workstation apphcations and an online service host to which the workstation is connected. The present invention has been described in the form of preferred embodiments, but several modifications and variations to the invention could be made and fall within the scope of the subjoined claims.

Claims

WHAT IS CLAIMED IS:
(1.) A computer system that manages transitions between workstation apphcations said
system comprising: 5 a network node within a wide area network of online service and foreign host
computers; a workstation connected to said network node through a first computer program that
manages a network connection and manages the presentation of information;
a second computer program capable of managing the network connection and o managing the presentation of information to the user; and
a means for transferring network connection information from said first conφuter
program to said second conφuter program whereby said second conφuter program may take
control of said network connection and said first computer program may resume control of
said network connection when said second conφuter program terminates. 5 (2.) The conφuter system of Claim 1, further comprising:
means associated with first conφuter program, second computer program, and said
network node to communicate network connection and program state information.
(3.) The computer system of Claim 1, wherein said first computer program, after
transferring said network connection information enters an inactive state and monitors state of
o said second conφuter program.
(4.) The conφuter system of Claim 1, further comprising:
means associated with said network node for invoking said second computer program
and connecting said workstation to said foreign host conφuter.
(5.) The coπφuter system of Claim 1, wherein said first and said second coπφuter
5 programs operate in a graphical interface, multitasking environment. (6.) A method for transitioning between workstation apphcations, said method comprising
the steps of: providing a first computer program to manage a network connection and to manage
the presentation of information;
providing a second conφuter program to manage a network connection and to manage
the presentation of information;
providing a network node capable of communicating with said first and said second
conφuter programs; providing a means for said first computer program to transfer network connection
information to said second computer program so said second computer program may take control of said network connection;
providing a means for said first computer program to enter an inactive state and
monitor state said second computer program;
providing a means for said first coπφuter program to resume control of said network
connection when said second conφuter program terminates.
(7.) The method of Claim 6, wherein said first and second coπφuter programs operate in a
graphical interface, multitasking environment.
(8.) A system for managing transitions between workstation apphcations comprising:
a wide area network of online service and foreign host computers;
a network node for managing connections to said online service and said foreign host
computers;
a workstation capable of connecting to said network node;
a first computer program at said workstation for managing a connection to and
managing presentation of information from said online service host computer; a second computer program at said workstation for managing a connection to and
managing presentation of information;
a third conφuter program at said network node for managing said connections
whereby said first, said second, and said third computer programs may communicate using a
matching protocol;
said network node causes said workstation to invoke said second conφuter program;
said first conφuter program transfers network connection information to said second conφuter program so said second conφuter program may communicate with said network
node through said connection;
said first computer program monitors state of said second conφuter program so that
said first computer program may resume control of said connection when said second coπφuter program terminates.
PCT/US1995/017108 1994-12-30 1995-12-29 Network support of supplemental local applications WO1996021189A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU46929/96A AU4692996A (en) 1994-12-30 1995-12-29 Network support of supplemental local applications

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/366,979 1994-12-30
US08/366,979 US5680549A (en) 1994-12-30 1994-12-30 System for transferring network connections from first to second program where the first enters an inactive state and resumes control of connections when second terminates

Publications (1)

Publication Number Publication Date
WO1996021189A1 true WO1996021189A1 (en) 1996-07-11

Family

ID=23445442

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/017108 WO1996021189A1 (en) 1994-12-30 1995-12-29 Network support of supplemental local applications

Country Status (3)

Country Link
US (1) US5680549A (en)
AU (1) AU4692996A (en)
WO (1) WO1996021189A1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999057837A2 (en) * 1998-05-07 1999-11-11 Samsung Electronics Co., Ltd. Method and apparatus for universally accessible command and control information in a network
US6801507B1 (en) 1999-07-27 2004-10-05 Samsung Electronics Co., Ltd. Device discovery and configuration in a home network
US7043532B1 (en) 1998-05-07 2006-05-09 Samsung Electronics Co., Ltd. Method and apparatus for universally accessible command and control information in a network
US7200683B1 (en) 1999-08-17 2007-04-03 Samsung Electronics, Co., Ltd. Device communication and control in a home network connected to an external network
US7337217B2 (en) 2000-07-21 2008-02-26 Samsung Electronics Co., Ltd. Architecture for home network on world wide web
US7490293B1 (en) 1999-07-27 2009-02-10 Samsung Electronics Co., Ltd. Device discovery and control in a bridged home network
US7669206B2 (en) 2004-04-20 2010-02-23 Microsoft Corporation Dynamic redirection of streaming media between computing devices
US7900140B2 (en) 2003-12-08 2011-03-01 Microsoft Corporation Media processing methods, systems and application program interfaces
US7934159B1 (en) 2004-02-19 2011-04-26 Microsoft Corporation Media timeline
US7941739B1 (en) 2004-02-19 2011-05-10 Microsoft Corporation Timeline source
US8032833B1 (en) 1999-07-27 2011-10-04 Samsung Electronics Co., Ltd. Home network device information architecture
US9137034B2 (en) 1999-07-27 2015-09-15 Samsung Electronics Co., Ltd. Device customized home network top-level information architecture

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555529B2 (en) * 1995-11-13 2009-06-30 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6950991B2 (en) 1995-11-13 2005-09-27 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6437803B1 (en) 1998-05-29 2002-08-20 Citrix Systems, Inc. System and method for combining local and remote windows into a single desktop environment
US6370552B1 (en) 1997-05-14 2002-04-09 Citrix Systems, Inc. Apparatus and method for displaying application output in an HTML document
US6088515A (en) 1995-11-13 2000-07-11 Citrix Systems Inc Method and apparatus for making a hypermedium interactive
US5949975A (en) 1997-03-12 1999-09-07 Microsoft Corp. Method and system for negotiating capabilities when sharing an application program with multiple computer systems
US6157944A (en) * 1997-05-14 2000-12-05 Citrix Systems, Inc. System and method for replicating a client/server data exchange to additional client notes connecting to the server
US5941949A (en) * 1997-05-14 1999-08-24 Citrix Systems, Inc. System and method for transmitting data from a server application to more than one client node
US8516132B2 (en) 1997-06-19 2013-08-20 Mymail, Ltd. Method of accessing a selected network
US6571290B2 (en) 1997-06-19 2003-05-27 Mymail, Inc. Method and apparatus for providing fungible intercourse over a network
US6170014B1 (en) * 1998-03-25 2001-01-02 Community Learning And Information Network Computer architecture for managing courseware in a shared use operating environment
EP1086560A1 (en) 1998-06-19 2001-03-28 Netsafe, Inc. Method and apparatus for providing connections over a network
US6928469B1 (en) 1998-12-29 2005-08-09 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques
US6785713B1 (en) 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for communicating among a network of servers utilizing a transport mechanism
US6922724B1 (en) 2000-05-08 2005-07-26 Citrix Systems, Inc. Method and apparatus for managing server load
US6785726B1 (en) 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for delivering local and remote server events in a similar fashion
US6789112B1 (en) 2000-05-08 2004-09-07 Citrix Systems, Inc. Method and apparatus for administering a server having a subsystem in communication with an event channel
US7080387B2 (en) * 2000-09-28 2006-07-18 Sun Microsystems, Inc. System and method for mediating communication between software applications
JP3776706B2 (en) * 2000-10-04 2006-05-17 富士通株式会社 Data communication apparatus, data communication method, and computer-readable recording medium recording data communication program
NO20006127L (en) * 2000-12-01 2002-06-03 Ericsson Telefon Ab L M Method and arrangement for providing a virtual continuous connection
US6961773B2 (en) 2001-01-19 2005-11-01 Esoft, Inc. System and method for managing application service providers
US7406693B1 (en) * 2001-09-10 2008-07-29 Ncr Corporation Method of controlling applications
US8135843B2 (en) * 2002-03-22 2012-03-13 Citrix Systems, Inc. Methods and systems for providing access to an application
US7856470B2 (en) * 2005-05-27 2010-12-21 Microsoft Corporation Accepting an invitation sent to multiple computer systems
US8738703B2 (en) 2006-10-17 2014-05-27 Citrix Systems, Inc. Systems and methods for providing online collaborative support
US9003059B2 (en) * 2008-03-31 2015-04-07 Microsoft Technology Licensing, Llc Running applications in an online or offline mode based on the availability of the connection to the remote web server
US9787759B2 (en) * 2013-11-08 2017-10-10 Verizon Patent And Licensing Inc. Method and apparatus for providing shared user interface view
US9510083B2 (en) 2014-03-14 2016-11-29 Apple Inc. Managing connections of a user device
US10777300B2 (en) * 2018-09-28 2020-09-15 Helix OpCo, LLC Trait prediction coordination for genomic application environment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5426427A (en) * 1991-04-04 1995-06-20 Compuserve Incorporated Data transmission routing system

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4257096A (en) * 1978-10-23 1981-03-17 International Business Machines Corporation Synchronous and conditional inter-program control apparatus for a computer system
US5228137A (en) * 1985-10-29 1993-07-13 Mitem Corporation Method for controlling execution of host computer application programs through a second computer by establishing relevant parameters having variable time of occurrence and context
GB2191918B (en) * 1986-06-16 1990-09-05 Ibm Data display system
US4780821A (en) * 1986-07-29 1988-10-25 International Business Machines Corp. Method for multiple programs management within a network having a server computer and a plurality of remote computers
US5485370A (en) * 1988-05-05 1996-01-16 Transaction Technology, Inc. Home services delivery system with intelligent terminal emulator
US4891785A (en) * 1988-07-08 1990-01-02 Donohoo Theodore J Method for transferring data files between computers in a network response to generalized application program instructions
CA1341310C (en) * 1988-07-15 2001-10-23 Robert Filepp Interactive computer network and method of operation
US4949248A (en) * 1988-07-15 1990-08-14 Caro Marshall A System for shared remote access of multiple application programs executing in one or more computers
US5473772A (en) * 1991-04-02 1995-12-05 International Business Machines Corporation Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs
US5404519A (en) * 1989-10-11 1995-04-04 Texas Instruments Incorporated System for extending software calls to functions on another processor by means of a communications buffer
US5265239A (en) * 1991-04-08 1993-11-23 Ardolino Anthony A Method for remotely accessing service programs of a local processing system supporting multiple protocol stacks and multiple device drivers
US5315711A (en) * 1991-11-01 1994-05-24 Unisys Corporation Method and apparatus for remotely and centrally controlling a plurality of host processors
JPH05233570A (en) * 1991-12-26 1993-09-10 Internatl Business Mach Corp <Ibm> Distributed data processing system between different operating systems
AU3944793A (en) * 1992-03-31 1993-11-08 Aggregate Computing, Inc. An integrated remote execution system for a heterogenous computer network environment
US5410703A (en) * 1992-07-01 1995-04-25 Telefonaktiebolaget L M Ericsson System for changing software during computer operation
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
CA2107047C (en) * 1992-12-29 1998-04-28 Alan M. Bentley Switched circuit connection management over public data networks for wide area networks
WO1995004968A1 (en) * 1993-08-03 1995-02-16 Forte Software, Inc. Flexible multi-platform partitioning for computer applications
US5423003A (en) * 1994-03-03 1995-06-06 Geonet Limited L.P. System for managing network computer applications

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5426427A (en) * 1991-04-04 1995-06-20 Compuserve Incorporated Data transmission routing system

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999057837A3 (en) * 1998-05-07 2000-06-29 Samsung Electronics Co Ltd Method and apparatus for universally accessible command and control information in a network
US6466971B1 (en) 1998-05-07 2002-10-15 Samsung Electronics Co., Ltd. Method and system for device to device command and control in a network
AU758868B2 (en) * 1998-05-07 2003-04-03 Samsung Electronics Co., Ltd. Method and apparatus for universally accessible command and control information in a network
US7043532B1 (en) 1998-05-07 2006-05-09 Samsung Electronics Co., Ltd. Method and apparatus for universally accessible command and control information in a network
WO1999057837A2 (en) * 1998-05-07 1999-11-11 Samsung Electronics Co., Ltd. Method and apparatus for universally accessible command and control information in a network
US8032833B1 (en) 1999-07-27 2011-10-04 Samsung Electronics Co., Ltd. Home network device information architecture
US6801507B1 (en) 1999-07-27 2004-10-05 Samsung Electronics Co., Ltd. Device discovery and configuration in a home network
US9137034B2 (en) 1999-07-27 2015-09-15 Samsung Electronics Co., Ltd. Device customized home network top-level information architecture
US7490293B1 (en) 1999-07-27 2009-02-10 Samsung Electronics Co., Ltd. Device discovery and control in a bridged home network
US7200683B1 (en) 1999-08-17 2007-04-03 Samsung Electronics, Co., Ltd. Device communication and control in a home network connected to an external network
US7349967B2 (en) 2000-07-21 2008-03-25 Samsung Electronics Co., Ltd. Architecture for home network on world wide web with private-public IP address/URL mapping
US7337217B2 (en) 2000-07-21 2008-02-26 Samsung Electronics Co., Ltd. Architecture for home network on world wide web
US7900140B2 (en) 2003-12-08 2011-03-01 Microsoft Corporation Media processing methods, systems and application program interfaces
US7934159B1 (en) 2004-02-19 2011-04-26 Microsoft Corporation Media timeline
US7941739B1 (en) 2004-02-19 2011-05-10 Microsoft Corporation Timeline source
US7669206B2 (en) 2004-04-20 2010-02-23 Microsoft Corporation Dynamic redirection of streaming media between computing devices

Also Published As

Publication number Publication date
AU4692996A (en) 1996-07-24
US5680549A (en) 1997-10-21

Similar Documents

Publication Publication Date Title
US5680549A (en) System for transferring network connections from first to second program where the first enters an inactive state and resumes control of connections when second terminates
US6567848B1 (en) System for coordinating communication between a terminal requesting connection with another terminal while both terminals accessing one of a plurality of servers under the management of a dispatcher
EP1438672B1 (en) Method, apparatus and system for a mobile web client
CA2448918C (en) Method and system for automatically configuring a client-server network
EP0953248B1 (en) Automatic configuration for internet access device
US6813733B1 (en) Diagnostic system
EP0814589B1 (en) System and method for automated network reconfiguration
US5948108A (en) Method and system for providing fault tolerant access between clients and a server
US6473783B2 (en) Method and apparatus for sharing peripheral devices over a network
KR100264535B1 (en) Computer apparatus and method for communicating between software applications and computers on the world-wide web
JP3427933B2 (en) Processing long-term transactions in client-server systems
US5778178A (en) Method and apparatus for enabling real-time bi-directional transactions on a network
JP3490369B2 (en) Content information acquisition method, collaboration system and collaboration server
EP0956687B1 (en) Web request broker controlling multiple processes
US7024497B1 (en) Methods for accessing remotely located devices
JP3454500B2 (en) Information processing method, collaboration server, collaboration system, storage medium for storing information processing program
US6573911B2 (en) Communicating between stations
US20040148375A1 (en) Presentation service which enables client device to run a network based application
US20030220946A1 (en) Resource list management system
US6901425B1 (en) Computer apparatus and method including a disconnect mechanism for communicating between software applications and computers on the world-wide web
CN102404384A (en) Unified reconnection to multiple remote servers
US6205415B1 (en) Server and terminal emulator for persistent connection to a legacy host system with file transfer
WO1996018948A1 (en) Method and apparatus for providing simple, secure management of remote servers
US6938257B1 (en) Apparatus and method to provide persistence for application interfaces
US6327662B1 (en) Security through the use of tokens and automatically downloaded applets

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AM AT AU BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IS JP KE KG KP KR KZ LK LR LT LU LV MD MG MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TT UA UG UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase