Method and apparatus allowing a limited client device to use the full resources of a networked server
First Claim
Patent Images
1. A thin-client system operative over a communications network, said system comprising:
- a server computer including a communication control device for sending and receiving messages over the network and an operating system, said server having access to a data base storing a dedicated application dedicated to said system and executable by said operating system; and
at least one thin-client device including display means, an external communication device for sending to and receiving messages from said server computer over said network, and dedicated client means for controlling said display means and said external communication device, said dedicated client means interpreting messages received from said server computer and generating messages recognizable by said server, said messages sent between said server computer and said client device conforming to a control-oriented protocol that restricts message communication to only messages describing certain preselected events associated with the dedicated application, wherein said preselected events include user control events caused by user action at said client device, each of said user control events being recognizable by a dedicated application running on said server as indicative of a certain control of said running application that is associated with said one of said preselected events and that is operable by a user at said client device to control said running application, and wherein said preselected events further include hardware events caused by user action at said client device and hardware events caused by conditions at said client device, and wherein a message from said client device to said server includes data representative of said one preselected event and excludes data representative of other user action performed in operation of said associated application control but not representative of said one event, and wherein said control-oriented protocol restricts message communication in windowing environments such that for edit boxes, loss of focus constitutes a significant event, whereby messages representing edit boxes will be transmitted only when such edit boxes have been made to lose focus;
for list boxes, selection from such a list box constitutes a significant event, whereby messages representing list boxes will be transmitted only when a selection from such a list box has been made and messages indicative of scrolling will not be transmitted;
for combo boxes, selection of a new value constitutes a significant event, whereby messages representing combo boxes will be transmitted only when a new value has been selected;
for scroll bars, arrival at a new scroll bar position after scrolling has stopped constitutes a significant event, whereby messages representing scroll bar movement will be transmitted only after scrolling has stopped at a new scroll bar position; and
for mouse button clicks, a button click on such a mouse constitutes a significant event, whereby only mouse button clicks will be transmitted and messages indicative of mere mouse movements alone will not be transmitted.
4 Assignments
0 Petitions
Accused Products
Abstract
A thin-client system operative over a communications network provides a thin-client device with access to a dedicated application present at a server. Messages between the client device and the server conform to a control-oriented protocol that restricts the type of message permissible for transmission to only those descriptive of certain preselected events that are necessary for execution of the dedicated application on the server and excludes transmission of user actions that otherwise would be transmitted to the server from the client device according to conventional display-based protocols.
109 Citations
3 Claims
-
1. A thin-client system operative over a communications network, said system comprising:
-
a server computer including a communication control device for sending and receiving messages over the network and an operating system, said server having access to a data base storing a dedicated application dedicated to said system and executable by said operating system; and
at least one thin-client device including display means, an external communication device for sending to and receiving messages from said server computer over said network, and dedicated client means for controlling said display means and said external communication device, said dedicated client means interpreting messages received from said server computer and generating messages recognizable by said server, said messages sent between said server computer and said client device conforming to a control-oriented protocol that restricts message communication to only messages describing certain preselected events associated with the dedicated application, wherein said preselected events include user control events caused by user action at said client device, each of said user control events being recognizable by a dedicated application running on said server as indicative of a certain control of said running application that is associated with said one of said preselected events and that is operable by a user at said client device to control said running application, and wherein said preselected events further include hardware events caused by user action at said client device and hardware events caused by conditions at said client device, and wherein a message from said client device to said server includes data representative of said one preselected event and excludes data representative of other user action performed in operation of said associated application control but not representative of said one event, and wherein said control-oriented protocol restricts message communication in windowing environments such that for edit boxes, loss of focus constitutes a significant event, whereby messages representing edit boxes will be transmitted only when such edit boxes have been made to lose focus;
for list boxes, selection from such a list box constitutes a significant event, whereby messages representing list boxes will be transmitted only when a selection from such a list box has been made and messages indicative of scrolling will not be transmitted;
for combo boxes, selection of a new value constitutes a significant event, whereby messages representing combo boxes will be transmitted only when a new value has been selected;
for scroll bars, arrival at a new scroll bar position after scrolling has stopped constitutes a significant event, whereby messages representing scroll bar movement will be transmitted only after scrolling has stopped at a new scroll bar position; and
for mouse button clicks, a button click on such a mouse constitutes a significant event, whereby only mouse button clicks will be transmitted and messages indicative of mere mouse movements alone will not be transmitted.
-
-
2. A method, of communication between a thin-client device and a server computer over a communication network for interfacing said client device with a dedicated application executable on said server, said method comprising the steps of:
-
a said thin-client device, generating a message descriptive of a preselected event recognizable by said application as indicative of a certain application control that is associated with said preselected event and that is operable by a user at said client device, said message generating step including the steps of including data representative of said preselected event and excluding data representative of user action performed in operation of said associated application control but not representative of said preselected event;
at said client device, transmitting said message generated in said generating step over said network to said server, at said application, receiving said message transmitted by said client device during said transmitting step, interpreting data received in said message and representative of said preselected event in order to recognize said application control associated with said preselected event;
generating an acknowledgement message descriptive of an acknowledgement event at said application;
transmitting said acknowledgement message over said network to said client device;
at said application, determining whether said application control recognized in said interpreting step necessitates a change in a user interface created by said application, and in a case where said application control necessitates a change in said user interface, generating a message descriptive of a change user interface event recognizable by said client device as indicative of an updated user interface and creating said updated user interface at said application;
transmitting said change user interface message to said client device whereupon said client device interprets said transmitted change user interface message to recognize how a corresponding user interface presented at said client device should be changed to correspond to said update user interface created at said application;
generating a message descriptive of a Hardware event recognizable by said application as indicative of a certain condition at said client device, each Hardware event being recognizable by said application as an event either caused by user action or caused by said client device without user action;
transmitting said messages descriptive of Hardware events over said network to said application; and
at said server, executing applications that include windowing environment application controls with each control associated with a preselected event for execution on said server in accordance with messages sent by said client device, wherein in said steps of executing applications with windowing environment controls further comprises the steps of;
for edit boxes, selecting as a significant event, a loss of focus whereby messages representing edit boxes will be transmitted only when such edit boxes have been made to lose focus;
for list boxes, selecting as a significant event, a selection from such a list box whereby messages representing list boxes will be transmitted only when a selection from such a list box has been made and messages indicative of scrolling will not be transmitted;
for combo boxes, selecting as a significant event, a selection of a new value whereby messages representing combo boxes will be transmitted only when a new value has been selected;
for scroll bars, selecting as a significant event, a new scroll bar position after scrolling has stopped whereby messages representing scroll bar movement will be transmitted only after scrolling has stopped at a new scroll bar position; and
for mouse button clicks, selecting as a significant event, a button click on such a mouse whereby only mouse button clicks will be transmitted and messages indicative of mere mouse movements alone will not be transmitted.
-
-
3. A method of providing communication between a thin-client device and a server computer over a communication network for interfacing said client device with a dedicated application executable on said server, said method comprising the steps of:
-
selecting as a significant event, from among all actions performed by a user at said client device in operating a certain application control, an action necessary for said dedicated application to respond to the user'"'"'s operation of said application control;
restricting communication of the user'"'"'s actions in operating said application control to messages transmitted from said client device to said server, descriptive of said significant event; and
selecting as significant events, acknowledgements of messages received, changes in user interface, Hardware events occurring at said client device, open session requests, list application requests, and close application requests, wherein, in windowing environments, said method includes;
for edit boxes, selecting as a significant event, a loss of focus whereby messages representing edit boxes will be transmitted only when such edit boxes have been made to lose focus;
for list boxes, selecting as a significant event, a selection from such a list box whereby messages representing list boxes will be transmitted only when a selection from such a list box has been made and messages indicative of scrolling will not be transmitted;
for combo boxes, selecting us a significant event, a selection of a new value whereby messages representing combo boxes will be transmitted only when a new value has been selected;
for scroll bars, selecting as a significant event, a new scroll bar position after scrolling has stopped whereby messages representing scroll bar movement will be transmitted only after scrolling has stopped at a new scroll bar position; and
for mouse button clicks, selecting as a significant event, a button click on such a mouse whereby only mouse button clicks will be transmitted and messages indicative of mere mouse movements alone will not be transmitted.
-
Specification