This is a comprehensive view of the system. Further down this page, each component is described in more details while keeping it simple to provide an aerial perspective.

End-User Interactions with the System
Software Client Applications
The main interactions are coming through client applications built in C# using Microsoft Xamarin. and optimized for portrait phones and tablets.
Note: Although currently only the Android versions are actively maintained, the source code is compatible with Windows, iOS, Mac and Linux.

Harmony
Application used to control all devices and locations. Turn on/off activities and sub-activities, send direct commands to any device, monitor DLNA network and access the system’s logs.
This is the main application used on phones and tablets.

Maestro
This is the music-centric client application. It allows browsing and building playlists. It controls three physical playlists: home theater, multiroom and local playback. It provides access to all the music decoration (scores, biographies, descriptions, original lyrics and translations when available…).

I Stream of Jeannie
This is the video-centric client application. It allows browsing and building playlists. It controls the physical playlists of rooms with video stream capabilities: home theater and family room. It provides access to all the movie and show decorations provided by Plex. It also has all the standard features like tracking what is in progress, current episode in TV shows…
Hardware Clients
For the convenience, the system supports various mechanical (electronic) devices to send commands.

Bluetooth Gaming Mechanical Mini-Keyboard
Using a combination of keys and knobs, the RawInput software component running on a HTPC translates the user’s intentions into commands sent through the server API.

Wireless HTPC Remote
HTPC remotes present themselves as a combination of keyboard and mouse simulation (hence extensive testing when configuring!). Here too, RawInput software component running on a HTPC translates the user’s intentions into commands sent through the server API.

Insteon Switches
Insteon is a Home Automation protocol combining a RF and electrical mesh network of appliances that can be controlled through an ISY hub. The main server includes an Insteon module that allow presenting switches, plugs and others as devices and can be used to map actions to commands sent through the server API.

RawInput
In order to intercept and map keyboard/mouse events into meaningful commands, and also train new devices, a piece of software resides both inside the system (on a HTPC) and on the admin computer.
The Application Server

Media Browser
TBD

Image Server
TBD

Wiki Server
TBD

Network Map
TBD

Main Server
TBD

Plex Server
TBD
Data Stores

Synology Media Server
TBD
Devices
TBD.
Environmental Devices
TBD.
Electronic Equipment
TBD.
Streaming Services
TBD.
Administration Tools
TBD.
Audio Tools
TBD.
Audio File Acquisition
TBD.
Tagging and tag propagation
TBD.
Video Tools
TBD.
Video File Acquisition
TBD.
Video File Organization and Information
TBD.