User:TomRoad-1/sandbox/Domoticz

Domoticz is a free and open-source home automation server-software for smart home devices. It is intended to be installed on-premise to avoid sending personal information to cloud services. A wide range of products, such as electronic switches, lights, and sensors can be integrated into a central user interface which allows for configuration, monitoring and control of all connected devices. Domoticz supports all the major wired and wireless interface technologies used by modern IoT devices. It features a plugin system to add support for new products.

Users connect to Domoticz either with a browser or a mobile app. The browser interface is based on HTML5 and scales automatically to the window size and device type (desktop or mobile device) on all modern browsers. Several mobile Apps for Android and IOS are available. Notifications can be sent to mobile devices to alert users about important events.

Domoticz is considered one of the market leaders in several product and platform comparisons

History
The first Version of Domoticz was released in 2012. , 13 releases have been published and 307 developers contributed to its its code, which consists of 2k files and 441k lines of code

Features
Domoticz can communicate with a large variety of IoT devices which are connected through various interfaces. It features a python-based plugin-system to extend its functionalities.

IoT Device support: protocols and interfaces

 * Protocols
 * IP (Internet Protocol) with TCP/UDP and HTTP
 * MQTT
 * HomeKit
 * EHouse
 * 1-Wire
 * X10 (industry standard)
 * interfaces
 * Serial port
 * USB
 * Bluetooth
 * Wifi
 * Z-Wave
 * Zigbee
 * radio modules using the 315, 433, 868, 915 MHz band
 * EnOcean
 * LoRa
 * and various more

Automation
Domoticz provides features which facilitate automating your devices, for instance:


 * Scenes: used for storing complex configurations
 * Groups: used to command multiple devices with a single command
 * Events: trigger execution of Scripts, e.g. on device changes, security events, time, user variables etc.
 * Scripts: Blockly, python, Lua or dzVents (Domoticz Easy Events) as well as any Shell scripting language your operating system supports. Blockly is the easiest way to start, but you'll get more power with Lua and the other scripting languages.

Installation
Domoticz can be installed on a variety of Computing platforms, such as Linux, Docker, Embedded Devices, Windows, macOS and even some Network-attached storage devices. Prebuilt packages and detailed instructions for each platform are provided on the Project's Wiki pages.

Configuration and device discovery
One of the strengths of Domoticz is its ease of use: Once installed, everything can be configured through the web based user interface, no need for command-line tools and programming.

In order to use your devices with Domoticz, a communication connection to the Hardware needs to be established. For each hardware device, several widgets can be created to represent the device's state or to send control commands.

Security
Because Domoticz is a web application, all basic security features of you web server can be applied. A default installation uses HTTPS with a preinstalled certificate. The documentation guides you through the procedure to add your own certificate to avoid a browser security alert.

After installation, anybody in the local network has full access to all features via the browser frontend. The system setup page includes a website protection configuration using HTTP basic auth .

The MyDomoticz service provides a secure web-solution which makes your server accessible from outside your local network .

Reception
A Google Trends analysis shows that Domoticz is especially popular in Europe, most notably in France, Netherlands, Poland, Belgium and Czech Republic.

It is considered one of the market leaders in several product and platform comparisons