Skip to main content

Python API for interacting with Dingz devices

Project description

Python API for interacting with Dingz devices.

This module is not official, developed, supported or endorsed by iolo AG or myStrom AG. For questions and other inquiries, use the issue tracker in this repository please.

Without the support of iolo AG and myStrom AG it would have taken much longer to create this module which is the base for the integration into Home Assistant. Both companies have provided and are still providing hardware, valuable feedback and advice. Their continuous support make further development of this module possible.

See api.dingz.ch for the API details.

Limitations

This module is at the moment limited to consuming sensor data, device details, device configurations and states. The front LED can be controlled but buttons requires you to programm them by yourself.

No support for setting timers and schedules.

Requirements

You need to have Python 3 installed.

  • dingz device

  • Network connection

  • Devices connected to your network

You need to know the IP address of the devices. Please consult your router documentation to get this information or use the dingz CLI tool.

Installation

The package is available in the Python Package Index .

$ pip install dingz

On a Fedora-based system or on a CentOS/RHEL machine which has EPEL enabled.

$ sudo dnf -y install python3-dingz

Module usage

Every unit has its own web interface: http://IP_ADDRESS .

See example.py for detail about module.

How to operate shades / dimmers

d = Dingz("ip_address_or_host")
# Fetch config, this has to be done once to fetch all details about the shades/dimmers
await d.get_devices_config()

# Fetch the current state of the lights/vers
await d.get_state()

# Get details about shade
shade_0 = d.shades.get(0)
print("Blinds: %s Lamella: %s" % (shade_0.current_blind_level(), shade_0.current_lamella_level()))

# Operate shade
shade_0.shade_down()

# Turn on light
d.dimmers.get(2).turn_on(brightness_pct=70)

CLI usage

The package contains a command-line tool which support some basic tasks.

$ dingz discover

License

python-dingz is licensed under ASL 2.0, for more details check LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-dingz-0.4.0.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

python_dingz-0.4.0-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

File details

Details for the file python-dingz-0.4.0.tar.gz.

File metadata

  • Download URL: python-dingz-0.4.0.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.10.0

File hashes

Hashes for python-dingz-0.4.0.tar.gz
Algorithm Hash digest
SHA256 7dc2cebb1d1857b84a47aa740dd9125959df51d545ce107b46151726f377aed8
MD5 6951a475398d6e8b4a9b3f128af41583
BLAKE2b-256 8ffc8dc01cebd341cc97f20f630772745cfd777a5650f8e4c7d8566c9fff4772

See more details on using hashes here.

File details

Details for the file python_dingz-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: python_dingz-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 18.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.10.0

File hashes

Hashes for python_dingz-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 52f14c1e49895bf13862a44577f59ef9b4505eea19e333f188b7335cc8fd9577
MD5 fe8de0764113adfe1289714beaa26649
BLAKE2b-256 966c34636de21fb99e7bdfdc5888f750e7bc42f26a068f8a37b85f9f966ad5c7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page