Twain Function Call Remoting via Proxy Application
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional Twain-compliant device control techniques fail in distributed multi-user, multi-session environments, as they require unique vendor-specific hardware drivers for each device and limit support to a single device or application per session, preventing simultaneous use of multiple devices and applications.
Innovation Solution
The solution involves remoting Twain function calls from a server to a client system using a proxy application, which communicates with the server and makes appropriate function calls to the Twain framework, allowing multiple applications and devices to be supported simultaneously, with message filtering and bandwidth-efficient multiplexing and compression of image data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If unique vendor-specific hardware drivers are loaded for each Twain-compliant device on the server, then each device can be controlled individually, but the device complexity and memory requirements increase significantly
Solution Approach 1:
The patent introduces a virtual channel as an intermediary layer between the server and client systems. This virtual channel acts as a mediator that handles Twain function calls remotely, allowing the server to communicate with Twain-compliant devices through the client system without requiring the server to load multiple vendor-specific drivers. The virtual channel protocol standardizes the communication interface, enabling device compatibility while simplifying server-side driver management.
2Adaptability or versatility
If the virtual channel supports one application per session, then the session management is simplified, but multiple Twain-compliant devices and applications cannot be supported simultaneously
Solution Approach 1:
The patent segments the Twain function call processing into distinct components: a server-side component that manages sessions, a virtual channel protocol layer, and a client-side proxy application. This segmentation allows multiple Twain applications and devices to be supported within a single session by routing their function calls through the virtual channel to appropriate proxy applications on the client system, while maintaining simplified session management on the server.
Solution Approach 2:
The virtual channel protocol is designed with universal functionality to handle multiple Twain applications and devices simultaneously within a single session. The protocol provides a standardized interface that can accommodate various Twain-compliant devices and applications, enabling one session to serve multiple functions and devices without requiring separate session management for each.
3Reliability
If all Twain function calls are transmitted over the virtual channel, then complete functionality is maintained, but communication traffic and bandwidth consumption increase
Solution Approach 1:
The patent extracts and filters unnecessary data from the Twain function calls before transmission over the virtual channel. By analyzing the function calls and identifying only the essential information that needs to be transmitted, the system reduces the volume of data sent over the network while maintaining complete functionality. This extraction process eliminates redundant information and minimizes bandwidth consumption.
Solution Approach 2:
The virtual channel protocol modifies the parameters of Twain function calls during transmission. The protocol optimizes data formats, compresses image data, and adjusts transmission parameters to reduce bandwidth requirements while preserving the essential functionality of the Twain calls. This parameter transformation enables efficient communication with minimal overhead.
Data Source
AI summary
A mechanism for remoting Twain function calls within a user session to a client system is disclosed. By hooking Twain function calls made by a Twain application on the server, the Twain function calls may be remoted over a virtual connection to a client system. A proxy application corresponding to the server-based Twain application is created on the client system. The proxy application communicates with the server and makes the appropriate function calls to the remainder of the Twain framework. The use of the proxy application allows multiple applications and devices to be supported simultaneously. Messages sent over the virtual connection are filtered prior to transmission thereby limiting the amount of required communication traffic. A multiplexor and demultiplexor are utilized in order to efficiently use bandwidth on the virtual channel. The present invention additionally compresses image data prior to transmission over the virtual channel.


