Code Monkey home page Code Monkey logo

wms_webcontrol's Introduction

Warema WMS Webcontrol Controller

This library can connect to a Warema WMS WebControl web server to send control commands.

Currently only vertical blinds are supported. Feel free to extend support to other devices.

Usage:

from warema_wms import Shade

shades = Shade.get_all_shades()
shades[0].set_shade_position(25) #0=open; 100=closed
shades[1].get_shade_state(True) #Force update and get shade state

in case your WebControl server is not under http://webcontrol.local you'll have to create and pass your own WmsController.

from warema_wms import WmsController, Shade

shades = Shade.get_all_shades(WmsController('http://server_addr'))

An undocumented example integration for home assistant can be found here:

https://github.com/cornim/ha-warema-integration

Changes to version 0.2.4

  • Improved error handling while updating shades (network timeouts)

Changes to version 0.2.3

  • Fixed error log message in set_shade_position method

Changes to version 0.2.2

  • Fixed misnamed variable in error log in set_shade_position method

Changes to version 0.2.1

  • Increased stability by checking if set position cmd was received

Changes to version 0.2.0

  • Made update procedure more resilient
  • Introduced parameters to set number of retries and time between commands
  • Set default time between commands to 0.1s
  • Set default number of retries to 3

Changes to version 0.1.4

Changes to version 0.1.2

  • Reduced wait time between sending http commands to wms webcontrol webserver to 0.5 seconds

Changes to version 0.1.1

  • Changed package structure
  • Improved documentation

Changes to version 0.1.0

  • Improved protocol
  • Fixed bug where moving state was always true.

wms_webcontrol's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

wms_webcontrol's Issues

ImportError: cannot import name 'CoverDevice'

hey @cornim,

i tried to install your scripts and integration, i used the 'guide' from @siggy2, i managed to add a missing version key in the manifest.json and but now i'm stuck with this import error:

Dieser Fehler wurde von einer benutzerdefinierten Integration verursacht

Logger: homeassistant.config
Source: custom_components/warema_wms_webcontrol/cover.py:7
Integration: warema_wms_webcontrol (documentation)
First occurred: 06:14:56 (1 occurrences)
Last logged: 06:14:56

Platform error: cover
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config.py", line 877, in async_process_component_config
platform = p_integration.get_platform(domain)
File "/usr/src/homeassistant/homeassistant/loader.py", line 566, in get_platform
cache[full_name] = self._import_platform(platform_name)
File "/usr/src/homeassistant/homeassistant/loader.py", line 583, in _import_platform
return importlib.import_module(f"{self.pkg_path}.{platform_name}")
File "/usr/local/lib/python3.9/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in _load_unlocked
File "", line 850, in exec_module
File "", line 228, in _call_with_frames_removed
File "/config/custom_components/warema_wms_webcontrol/cover.py", line 7, in
from homeassistant.components.cover import (
ImportError: cannot import name 'CoverDevice' from 'homeassistant.components.cover' (/usr/src/homeassistant/homeassistant/components/cover/init.py)

i have the warema webcontrol (not pro) and 6 Raffstores.
any hints what i'm doing wrong?
thanks in advance
roland

Warema WMS and Home Assistant

Hello Mr. Mund,
In my house, I used the Warema WMS system with 3 shutters and 7 external blinds.
I would like to integrate the WMS system into my Home Assistant system. I can't find anything on the internet, but today I found your example in Python.
Can you tell me if it works with Home Assistant? Then I would buy the Warema WMS WebControl web server.
Do you have any tips for me? I'm unfortunately a beginner in terms of integrating and especially Python.
Sincerely yours
Stephan
from Germany :-)

Tag the source

Could you please tag the source? This allows distributions to get the complete source from GitHub.

Thanks

Error after Update HomeAssistant 2022.2

Hi,

I have updated home assistant to version 2022.2. Now I get an error message when starting, or I can't restart. When I check the configuration I get this error message:

grafik

Greetings

include angel in position moving

Hi,
Is ist also possible to have the angel moving of the shades included in your project?
According to this i found in HA forum:

/protocol.xml?protocol=9004082100020300AAffffff&_=1586803111

90 - I don’t know
04 - Counter it always has to be different, I have the first digit for the room and the second for the position, but I can also make something that automatically counts up
0821 - move command
00 - room (as in the web interface, starts counting at 0)
00 - roller shutter in the room (as in the web interface, starts counting at 0)
03 - Fixed value I have no idea
64 - Position for roller shutters or external venetian blinds (Pos * 2 in Hex)
AA - Angle (only with external venetian blinds) I have a table, but no access at the moment, but if necessary I can search for the determined values.

Thanks

Hubert

Horisontal blinds work

Hi, just wanted to report that I successfully integrated your code with HA and got my horisontal blind to work well. The only snag is that the percentage open/closed in the UI is reversed. It seems it is returning 100 when the blind is in while 0 when it is out. Logically it should be the other way around. In the WMS webcontrol app it shows correctly. For some reason it was reversed (100- position) in the HA integration code. By removing that, it just passes the actual position. I assume the vertical blinds were reversed for some reason. Maybe an idea to create an attribute for each entity whether to reverse or not?

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.