Giter Club home page Giter Club logo

homematic-xmlapi-lib's Introduction

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.

homematic-xmlapi-lib's People

Contributors

manniat avatar roschinsky avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

homematic-xmlapi-lib's Issues

Callback Handling?

Hi,

great work first of all -
is there a way to register for xmlapi events as callbacks and get notfied when e.g. a variable changes?

DialogHMData.cs is missing

Hi,

I checked the project an VS argues that (in Test) Dialo...CS is missing.
D...designer.cs and .resx are there

Could you pleas check in the missing file?

Thank you
Manfred

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.