Skip to content

Latest commit

 

History

History
40 lines (22 loc) · 2.45 KB

README.md

File metadata and controls

40 lines (22 loc) · 2.45 KB

HomeMatic-XmlApi-Lib

The library wraps the HomeMatic XML-API Addon in C# for use in .NET projects

The XML-API Addon (http://www.homematic-inside.de/software/xml-api) is a free collection of scripts, packaged as installable addon for the 'HomeMatic' home automation system. Once installed to a CCU, the package provides a very simple but broad and powerful API as an alternative for the included XML-RPC interface.

The HomeMatic-XmlApi-Lib is intended to workaround the known issues with the native XML-RPC API provided by Homematic CCU2 and to close the gap for developers using a .NET environment for their projects.

Contents

LIB_HomeMaticXmlApi

The library itself. Using the HMApiWrapper you can connect to a HomeMatic CCU and obtain devices with current states. The classes HMDevice, HMDeviceChannel, HMDeviceDataPoint and HMSystemVariable are merely here for persistence of received data.

Class diagramm

TST_HomeMaticXmlApi

A simple Windows Forms application that'll use the library to output all connected devices in a treeview. You can use the methods of the wrapper class to refresh/update the states of all devices. If there are any "Fast Update Devices" defined (select in treeview and click "Add" on the right hand side) you can use the radio button to just refresh some states in devices list and gain a significant performance improvement.

Tester Windows Forms application

You can also browse the internal data structure of Homematic devices, channels and its data points. Channels and data points can be set by double-clicking the item in the treeview. You'll need to enter values to set as plain text, like 'true' or '21.5' This will work with variables as well, so you're able to set the values of variables by using this library.

STD_HomeMaticXmlApi

.NET Standard 1.3 implementation (use with systems not supporting .NET Standard 2.0) Async calls are simply wrapped with .ConfigureAwait(false).GetResult() Check HMApiWrapper.cs for GetApiData (3 methods)

STD_HomeMaticXmlApi2

.NET Standard 2.0 implementation

TST_CoreHMXmlApi

.NET Core console app testing basic functionality of the 1.3 .NET Standard implementation

Current Version

The current version of HomeMatic-XmlApi-Lib is a plain and early beta release. Most of the functions provided by the XML-API Add-On are supported.