Inventu FVTerm Web Terminal Emulation Architecture
Client Browser
At the client browser, a URL to a standard HTML file provides the top-level for the emulation. This top-level frame loads all components (javascript, html and images) that provide the FastView terminal emulator. Depending on application and security requirements, the emulation frame then connects to the server using a mix of HTTP/HTML requests and Web Service calls. Web services are used to initiate a new session and when websockets are available they are switched to for the duration of the session.
Web service access to the FVTerm server application are achieved using standard Microsoft XML-over-HTTP(S) components. The client-side emulation framework selects the most efficient and up-to-date XML-over-HTTP library at load time (based on what is installed on the client PC).
Updates from the host are transferred to the browser using a Inventu exclusive HTTP-compatible compressed data-stream, which is then converted to HTML by the FastView Emulation Framework, which is Javascript based.
ASP.NET Web Application - FVTerm
The Inventu FVTerm Web Terminal Emulation installation program creates a folder under the default Internet Information Server (IIS) web applications folder named FVTerm, which is also the logical folder used by the client browser in constructing a URL to access the emulation screens (http://[servername]/fvterm/scterm.html is the default emulation primary HTML page).
Installed in the FVTerm folder are a set of HTML pages and ASMX (web services) along with their C# code-behind modules (ASMX.CS). These modules, using the Inventu SCWebControls .NET interface (a set of classes and objects that encapsulate the screen-to-web functionality for .NET), work in concert to deliver the terminal emulation environment, along with a javascript-based emulation framework, customer-modifiable style sheets and customer-modifiable keyboard/user interface definitions. For modern web browsers, Websockets should be configured to be active, and can improve response time and reduce network impact.
ViewerLib .NET Inventu Viewer Interface Objects
The ViewerLib interface is a set of classes designed for integration with terminal-based applications. In the Inventu FVTerm Web Terminal Emulation environment, it is encapsulated by the SCWebControls classes, while in the Inventu Viewer+ environment, the ViewerLib, as well as an extended set of SCWebControls is provided to enable full renovation of screens "on-the-fly".
Inventu Viewer Emulation Service
The Inventu Viewer Service (FlyServer.exe) runs as a standard Windows 32 or 64 bit service on Windows 7, Windows 10, Windows Server 2012 R2, Windows Server 2016 and Windows Server 2019+. It provides:
•Multi threaded protocol manager for each connected session (a thousand+ can run on a single server/VM depending on processor speed and number of vCPUs) - Uses Windows I/O Control Ports for optimum performance
•HTTP port processes XML-based requests from Administrator's Window to start/stop sessions, update configuration and provide emulation for a specific session
•Shared memory and event management architecture for efficient (fast) interfacing to the ViewerLib API Libraries.