A method for controlling image acquisition devices associated with a client, the method comprising the steps of:
- (a) providing a client communicating with a server using a presentation-level protocol, said client executing a proxy application associated with an application executing on a server;
- (b) receiving at said proxy application, from a server via a network, a command directed to an image-acquisition device associated with the client;
- (c) issuing the received command to the associated image-acquisition device;
- (d) receiving, from the image-acquisition device, a response to the issued event;
- and
- (e) transmitting to the server via a network, the received response.
- The method of claim 1 wherein step (b) comprises receiving, from a server via a network using a protocol selected from the group consisting of ICA, RDP and X-WINDOWS, a command directed to an image-acquisition device associated with a client.
- The method of claim 1 wherein step (c) comprises issuing to the image-acquisition device a TWAIN API call based on the received command.
- The method of claim 1 wherein step (c) comprises issuing to the image-acquisition device a device driver call based on the received command.
- The method of claim 1 wherein step (c) comprises directly issuing to the image-acquisition device a command based on the received command.
- The method of claim 1 wherein step (c) comprises issuing to the associated image-acquisition device a command based on the received command, the issued command including an indication to suppress display of a dialog box to a user.
- The method of claim 6 further comprising the step of displaying a second dialog box to a user in lieu of the suppressed dialog box.
- The method of claim 1 further comprising the step of receiving, from a second server via the network, a second command directed to the image-acquisition device associated with the client.
- The method of claim 1 further comprising the step of receiving, from the server via the network, a second command directed to a second image-acquisition device associated with the client.
- The method of claim 1 further comprising the step of receiving, from a second server via the network, a second command directed to a second image-acquisition device associated with the client.
- The method of claim 1 wherein step (d) comprises receiving, from the image-acquisition device, data representing an image.
- The method of claim 11 wherein step (e) comprises:
- (e-1) transmitting to the server compressed image data.
- The method of claim 12 wherein step (e) comprises:
- (e-1) determining that the image data comprises more than one bit for each pixel location prior to transmitting the compressed image data to the server.
- The method of claim 13 wherein step (e-2) comprises:
- (e-2-1) compressing the image data using a first compression algorithm to form first compressed image data;
- (e-2-2) compressing the image data using a second compression algorithm to form second compressed image data;
- and
- (e-2-3) selecting for transmission the smaller of the first compressed image data and the second compressed image data.
- The method of claim 12 further comprising the step of compressing compressed image data during transmission to the server.
- The method of claim 1 further comprising, before step (d), the steps of:
- receiving input from a user of the client;
- and
- determining whether to transmit the received input to the server.
- A method for remotely controlling image acquisition apparatus associated with a client, the method comprising the steps of:
- receiving, from a client via a network, an image acquisition event;
- providing the received event to an application program associated with the event;
- receiving, from the application program, a response to the transmitted event;
- and
- transmitting, via a network, the received response to a proxy application associated with the application program, said proxy application executing on the client.
- The method of claim 17 wherein step (b) comprises:
- (b-1) determining, from the received event, an application program associated with the received event;
- and
- (b-2) providing the received event to the determined application program.
- The method of claim 17 wherein step (c) comprises receiving, via a network, an intercepted TWAIN API call.
- The method of claim 17 further comprising the step of:
- receiving, from a client via a network, data representing an image acquired by apparatus associated with the client.
- The method of claim 20 further comprising the step of:
- decompressing the received image acquisition data.
- The method of claim 17 further comprising:
- receiving an image acquisition event from a second client via the network.
- The method of claim 22 further comprising the step of:
- providing the image acquisition event received from the second client to a second instance of an application program associated with the event.
- An article of manufacture having embodied thereon computer-readable program means for controlling image acquisition devices associated with a client, said client communicating with a server using a presentation-level protocol, said client further executing a proxy application associated with a Twain application executing on a server, the article of manufacture comprising:
- computer-readable program means for receiving, from the server via a network, a command directed to an image-acquisition device associated with the client;
- computer-readable program means for issuing the received command to the proxy application executing on the associated image-acquisition device;
- computer-readable program means for receiving, from the image-acquisition device, a response to the issued event;
- and
- computer-readable program means for transmitting to the server via a network, the received response.
- The article of manufacture of claim 24 wherein the computer-readable program means for receiving a command directed to an image-acquisition device further comprises:
- computer-readable program means for receiving, from a server via a network using a protocol selected from the group consisting of ICA, RDP and X-WINDOWS, a command directed to an image-acquisition device associated with a client.
- The article of manufacture of claim 24 wherein the computer-readable program means for issuing the received command to the associated image-acquisition device further comprises:
- computer-readable program means for issuing to the image-acquisition device a TWAIN API call based on the received command.
- A method for controlling image acquisition devices communicating with a client, the method comprising the steps of:
- receiving a command from a server directed to an image acquisition device communicating with a client;
- issuing a TWAIN API call based on the received command to the image-acquisition device communicating with the client;
- receiving, from the image-acquisition device, a response to the issued command;
- and
- transmitting to the server the received response.
- The method of claim 27 wherein step (b) comprises issuing to the image-acquisition device a device driver call based on the received command.
- The method of claim 27 wherein step (b) comprises directly issuing to the image-acquisition device a command based on the received command.
- The method of claim 27 wherein step (b) comprises issuing to the associated image-acquisition device a command based on the received command, the issued command including an indication to suppress display of a dialog box to a user.
- The method of claim 30 further comprising the step of displaying a second dialog box to a user in lieu of the suppressed dialog box.
- The method of claim 27 further comprising the step of receiving, from a second server via a network, a second command directed to the image-acquisition device associated with the client.
- The method of claim 27 further comprising the step of receiving, from the server, a second command directed to a second image-acquisition device associated with the client.
- The method of claim 27 further comprising the step of receiving, from a second server via a network, a second command directed to a second image-acquisition device associated with the client.
- The method of claim 27 wherein step (c) comprises receiving, from the image-acquisition device, data representing an image.
- The method of claim 35 wherein step (d) comprises:
- (d-1) determining that the image data comprises one bit for each pixel location;
- and
- (d-2) transmitting to the server, via a network, the image data.
- The method of claim 35 wherein step (d) comprises:
- (d-1) determining that the image data comprises more than one bit for each pixel location;
- (d-2) compressing the image data;
- and
- (d-3) transmitting to the server the compressed image data via a network.
- The method of claim 37 wherein step (d-2) comprises:
- (d-2-1) compressing the image data using a first compression algorithm to form first compressed image data;
- (d-2-2) compressing the image data using a second compression algorithm to form second compressed image data;
- and
- (d-2-3) selecting for transmission the smaller of the first compressed image data and the second compressed image data.
- The method of claim 37 further comprising the step of compressing compressed image data during transmission to the server.
- The method of claim 27 further comprising, before step (c), the steps of:
- receiving input from a user of the client;
- and
- determining whether to transmit the received input to the server.