System and method for server virtual printer device name negotiation for mobile print support
First Claim
Patent Images
1. Method for printing to a virtual printer device in a system including a server and a remote client, each said server and said remote client architected to include at least a physical layer and an application layer, comprising the steps of:
- establishing a direct persistent application layer connection between said remote client and said server;
establishing agreement between said server and said remote client to negotiate at said application layer connection device protocol options;
communicating a printer name across said application layer connection from said remote client to said server for a virtual printer at said server associated with a printer device at said remote client;
operating a display server at said server selectively for communicating with a virtual display and, responsive to a user request for printing a file, for communicating a printer data stream generated at said server over said direct persistent application layer connection from said virtual printer at said server to said printer device at said remote client.
3 Assignments
0 Petitions
Accused Products
Abstract
Client/server negotiation of virtual display and/or printer device selection to control session attributes, job routing to customized subsystems, user access control, and so forth. Within the Telnet Protocol, sanctioned and used with the “DO, DONT, WILL, WONT” structure, during subnegotiation a client requests and a server agrees to a specific virtual device name for the session display and/or printer.
33 Citations
13 Claims
-
1. Method for printing to a virtual printer device in a system including a server and a remote client, each said server and said remote client architected to include at least a physical layer and an application layer, comprising the steps of:
-
establishing a direct persistent application layer connection between said remote client and said server;
establishing agreement between said server and said remote client to negotiate at said application layer connection device protocol options;
communicating a printer name across said application layer connection from said remote client to said server for a virtual printer at said server associated with a printer device at said remote client;
operating a display server at said server selectively for communicating with a virtual display and, responsive to a user request for printing a file, for communicating a printer data stream generated at said server over said direct persistent application layer connection from said virtual printer at said server to said printer device at said remote client. - View Dependent Claims (2)
communicating do-terminal-type and do-new-environment invitations from said server to said remote client;
communicating acknowledgment of said invitations from said remote client to said server;
and wherein said step of communicating a printer device name comprises the further steps of; entering a subnegotiation session including the steps of;
communicating from said server to said remote client a request for predefined environment variables and for user definable variables;
responsive to said request, communicating from said remote client to said server said printer device name as a user definable variable.
-
-
3. Method for client selection of a virtual terminal device in a system including a server and a remote client, said server and said client each being architected to include at least a physical layer and an application layer, comprising the steps of:
-
establishing an application layer connection across said application layers between said remote client and said server;
establishing agreement between said server and said remote client to negotiate options;
communicating a device name from said remote client to said server for a virtual printer device associated with said remote client; and
receiving across said application layer connection from said server tunneling data streams selectively comprising display data or a printer data stream printable without modification at said remote client. - View Dependent Claims (4)
communicating do-terminal-type and do-new-environment invitations from said server to said remote client;
communicating acknowledgment of said invitations from said remote client to said server;
and wherein said step of communicating a device name comprises the further steps of; entering a subnegotiation session including the steps of;
communicating from said server to said remote client a request for predefined environment variables and for user definable variables;
responsive to said request, communicating from said remote client to said server said device name as a user definable variable.
-
-
5. Method for operating a server in a system including said server and at least one remote client, each said server and said client being architected to include at least a physical layer and an application layer, to print to a virtual device named by said client, comprising the steps of:
-
accepting a persistent application layer connection across said application layer with said client;
establishing across said application layer connection agreement with said client to negotiate options;
responsive to said agreement, receiving from said client and loading into a subnegotiation buffer a parameter string including one or more predefined variables and user definable variables;
scanning said subnegotiation buffer for a user definable variable specifying a device name for a virtual printer device at said server associated with physical printer device said client;
operating a display server selectively for communicating across said persistent application layer connection with said virtual display device and, responsive to a user request for printing a file, for communicating with said virtual printer device at said server.
-
-
6. Method for operating a client in a system including a remote server to name and print from a virtual printer device at said remote server associated with said client, each said server and client architected to include an application layer and a physical layer, comprising the steps of:
-
establishing a persistent application layer connection with said server;
establishing agreement with said server to negotiate at said application layer device protocol options;
responsive to said agreement, sending across said application layer connection to said remote server a parameter string including a printer device name as one of one or more predefined variables and user definable variables.
-
-
7. A program storage device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for a client in a system including a remote server selectively to name and print from a virtual printer associated with said client, each said server and said client architected to include a plurality of layers including at least an application layer and a physical layer, said method steps comprising:
-
establishing a persistent application layer connection with said server;
establishing agreement with said server to negotiate device protocol options;
responsive to said agreement, sending across said application layer connection to said server a parameter string including a printer device name as one of one or more predefined variables and user definable variables.
-
-
8. A program storage device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for a server in a system including at least one remote client to enable said client to name and print from a virtual printer associated with said client, each said server and said client architected to include a plurality of layers including at least an application layer and a physical layer, said method steps comprising:
-
accepting a persistent application layer connection with said client;
establishing agreement with said client to negotiate device protocol options across said application layer connection;
responsive to said agreement, receiving from said client and loading into a subnegotiation buffer a parameter string including one or more predefined variables and user definable variables;
scanning said subnegotiation buffer for a user definable variable specifying a device name for a virtual printer device associated with said client;
operating a display server selectively for communicating across said application layer connection with a virtual display device and, responsive to a user request for printing a file, for communicating a data stream generated at said server to said virtual printer device for printing at said client.
-
-
9. A client in a system including a remote server, each said client and said server architected to include a plurality of layers including an application layer, comprising:
-
means for establishing a persistent application layer connection with said remote server;
means for establishing agreement with said remote server to negotiate device protocol options across said application layer connection;
means responsive to said agreement for sending to said remote server a parameter string including a printer device name as one of one or more predefined variables and user definable variables.
-
-
10. A server in a system including said server and at least one remote client, each said server and said client having an application level and a physical level, to enable said client to name and print from a virtual printer located at said server and associated with said client, comprising:
-
means for accepting a persistent connection at said application level with said client;
means for establishing agreement with said client to negotiate device protocol options across said persistent connection;
means responsive to said agreement for receiving from said client and loading into a subnegotiation buffer a parameter string including one or more predefined variables and user definable variables;
means for scanning said subnegotiation buffer for a user definable variable specifying a device name for a virtual printer device at said server associated with said client;
means for operating a display server selectively for communicating with a virtual display device at said application level and, responsive to a user request for printing a file, for communicating with said virtual printer device.
-
-
11. Method for printing across an application layer in a system including a server and at least one client, comprising the steps of:
-
establishing across said application layer a first interactive display session;
naming a virtual printer at said server associated with a printer device at said client during said first interactive session;
optionally terminating said first interactive display session;
during the establishment of a second printer interactive session across said application layer, said client selecting said virtual printer; and
during both said interactive sessions, operating a display server selectively for communicating with a virtual display device and, responsive to a user request for printing a file, for communicating a printer data stream from said virtual printer at said remote server for printing without conversion at said printer device.
-
-
12. Method for operating a server selectively to transmit a display data stream or a printer data stream to a remote client across the application layer of a system including a plurality of layers, comprising the steps of:
-
accepting a request from said client to establish a persistent application layer connection between said client and said server;
accepting agreement with said client to negotiate device protocol options;
receiving across said persistent application layer connection a printer name from said client for a virtual printer at said server associated with a printer device at said client;
operating a display server at said server selectively for transmitting across said persistent application layer connection said display data stream and responsive to a user request for printing a file for transmitting said printer data stream from said virtual printer to said printer device.
-
-
13. Method for operating a client selectively to receive a display data stream or a printer data stream from a remote server, comprising the steps of:
-
accepting a persistent application layer connection with said server;
accepting agreement with said server to negotiate device protocol options;
communicating across said application layer connection a printer name to said server for a virtual printer at said server associated with a printer device at said client;
selectively receiving across said application layer connection a display data stream from a display server at said server or receiving a printer data stream from said display server at said server for printing without conversion at said printer device.
-
Specification