The Architecture
remoteX4 is built in PHP and interfaces with its users throuhg normal HTML pages with CSS and Javascipt. It consists of three layers:
the configuration, which is defined by the user/installer and determines the devices, commands, macros and activities available to a particular setup as well as the look of the activities and zones for each interface design
the backend, which takes care of the actual command and macro execution based on the configuration
the gui presenter, which renders the interface pages and communicates with the backend
All of the above make up the control software as mentionned in the Terminology of "The Problem" section.
This software needs to run on a control server. This, despite its name, can be a very inexpensive, low power consumption netbook or plug computer.
The configuration is defined using a different application, again web-based. For more information about this process see here.