The GTViewer Data Server is a back-end component used to distribute GTViewer datasets to GTViewer clients including GTViewer for Windows, GTViewer for iOS, and GTViewer for Android.
Traditionally, GTViewer dataset distribution has been left to the customers to implement by whatever means worked best for their environment. This process ranges from Xcopy or Robocopy, to Systems Management Server (SMS), to elaborate PowerShell scripts, to USB Drive Duplicators. All of these solutions met the workflow needs of the customers, but it was difficult for GTI to make a "one size fits all" solution that would meet everyone's needs. Because of this broad set of requirements, we had not attempted a solution until we enter the world of device apps with GTViewer for iOS and GTViewer for Android that restricted an application to a sandboxed area on the devices making it difficult to get information onto the device for the application to use. The solution was to create the GTViewer Data Server to distribute the GTViewer datasets to these devices.
The GTViewer Data Server is fairly simple. It uses a list of valid users and a list of available GTViewer Dataset Projects. Users are members of a Group which grants them access to Projects of the same group. A Project contains all of the files that compose a GTViewer dataset in a compressed and encrypted format. For GTViewer for iOS and GTViewer for Android, users connect to the GTViewer Data Server, authenticate themselves, then select any of the Projects available to their group to download. The Projects are downloaded, decompressed, and decrypted for use in the Application's sandbox. If updates are made to the Project's GTViewer dataset, the user will see that an update is available on the server and the updated files can be downloaded. A standalone application for Windows called the GTViewer Data Client is also available to perform the same tasks on the Windows platform.
A tool called GTManifest is also available for preparing and updating the Projects distributed by the GTViewer Data Server. It will compare current and previous GTViewer datasets, determine which files have changed, compress and encrypt the files, and provide an update for the GTViewer Data Server. A .NET Assembly version of GTManifest is also available to help streamline the Project management with PowerShell or any tool that can utilize .NET Assemblies.
The GTViewer Data Server support two web server platforms: IIS/ASP.NET and Linux/Apache. The IIS/ASP.NET version provides all of the product's features and is designed for high volume use. The Linux/Apache version provides basic functionality and will run on the GTViewer Server Box or other Linux/Apache servers.