Skip to main content

Hubitat Maker API Interface

Project description

from main import get_hubfrom main import lookup_device# Hubitat Control

Hubitat Elevation Maker API Interface (with Requests)

Usage

from hubitatcontrol import *
h = get_hub(host='Hubitat_IP_or_Hostname', token='Maker_Token', app_id='Maker_App_ID')
d = lookup_device(h, 'Device_Name')
print(d.switch)
d.turn_on()
print(d.switch)

Roadmap

v0.5

  • Advanced Zigbee RGBW Bulb

v0.7

  • Generic Zigbee Outlet

v0.8

  • Leviton DZ6HD Z-Wave Dimmer

v1.0

  • hueBridgeBulb

v1.1

  • hueBridgeBulbCT

v1.2

  • hueBridgeBulbRGBW

v1.5

  • Ecobee Thermostat

v2.0

  • Generic Z-Wave Lock

v2.5

  • Generic Z-Wave Plus Scene Switch

v2.6

  • Generic Zigbee Contact Sensor (no temp)
  • Sonoff Zigbee Button Controller

Development setup

Tooling

  • Need Python > 3.10 Installed

  • Doc gen w/ pdoc3 and pyreverse

  • Poetry for package management + Build

  • Code Complexity with Radon and Xenon

  • isort for imports

  • Black for formatting

  • Vulture for dead code

  • Bandit for security

  • Testing with PyTest

  • Setup

  • Install Go-Task (https://taskfile.dev/)(Optional, it's NEAT!)

    • Linux (sudo snap install task --classic)

Structure

flowchart LR
Hub --> Device --> Abstract_Device_Class --> Specific_Device

Test

task

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

hubitatcontrol-0.8.1.tar.gz (4.0 kB view hashes)

Uploaded Source

Built Distribution

hubitatcontrol-0.8.1-py3-none-any.whl (4.7 kB view hashes)

Uploaded Python 3

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