homematicip package

Subpackages

Submodules

homematicip.EventHook module

class homematicip.EventHook.EventHook[source]

Bases: object

fire(*args, **keywargs)[source]

homematicip.HomeMaticIPObject module

homematicip.access_point_update_state module

class homematicip.access_point_update_state.AccessPointUpdateState(connection)[source]

Bases: HomeMaticIPObject

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

homematicip.auth module

class homematicip.auth.Auth(connection: RestConnection, client_auth_token: str)[source]

Bases: object

This class generates the auth token for the homematic ip access point.

client_id: str = 'bfc9de72-c4b3-4132-8a64-9c71b3b156ac'
async confirm_auth_token(auth_token: str) str[source]

Confirm the auth token and get the client id. @param auth_token: The auth token @return: The client id

connection: RestConnection = None
async connection_request(access_point: str, device_name='homematicip-python', pin=None) RestResult[source]
header: dict = None
async is_request_acknowledged() bool[source]
pin: str = None
async request_auth_token() str[source]

Request an auth token from the access point. @return: The auth token

homematicip.class_maps module

homematicip.client module

class homematicip.client.Client(connection)[source]

Bases: HomeMaticIPObject

A client is an app which has access to the access point. e.g. smartphone, 3th party apps, google home, conrad connect

c2cServiceIdentifier

the c2c service name

Type:

str

clientType

the type of this client

Type:

ClientType

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

homeId

the home where the client belongs to

Type:

str

id

the unique id of the client

Type:

str

label

a human understandable name of the client

Type:

str

homematicip.connection module

homematicip.device module

class homematicip.device.AccelerationSensor(connection)[source]

Bases: Device

HMIP-SAM (Contact Interface flush-mount – 1 channel)

accelerationSensorEventFilterPeriod

float:

accelerationSensorMode

AccelerationSensorMode:

accelerationSensorNeutralPosition

AccelerationSensorNeutralPosition:

accelerationSensorSensitivity

AccelerationSensorSensitivity:

accelerationSensorTriggerAngle

int:

accelerationSensorTriggered

bool:

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

notificationSoundTypeHighToLow

NotificationSoundType:

notificationSoundTypeLowToHigh

NotificationSoundType:

set_acceleration_sensor_event_filter_period(period: float, channelIndex=1)[source]
async set_acceleration_sensor_event_filter_period_async(period: float, channelIndex=1)[source]
set_acceleration_sensor_mode(mode: AccelerationSensorMode, channelIndex=1)[source]
async set_acceleration_sensor_mode_async(mode: AccelerationSensorMode, channelIndex=1)[source]
set_acceleration_sensor_neutral_position(neutralPosition: AccelerationSensorNeutralPosition, channelIndex=1)[source]
async set_acceleration_sensor_neutral_position_async(neutralPosition: AccelerationSensorNeutralPosition, channelIndex=1)[source]
set_acceleration_sensor_sensitivity(sensitivity: AccelerationSensorSensitivity, channelIndex=1)[source]
async set_acceleration_sensor_sensitivity_async(sensitivity: AccelerationSensorSensitivity, channelIndex=1)[source]
set_acceleration_sensor_trigger_angle(angle: int, channelIndex=1)[source]
async set_acceleration_sensor_trigger_angle_async(angle: int, channelIndex=1)[source]
set_notification_sound_type(soundType: NotificationSoundType, isHighToLow: bool, channelIndex=1)[source]
async set_notification_sound_type_async(soundType: NotificationSoundType, isHighToLow: bool, channelIndex=1)[source]
class homematicip.device.AlarmSirenIndoor(connection)[source]

Bases: SabotageDevice

HMIP-ASIR (Alarm Siren)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.AlarmSirenOutdoor(connection)[source]

Bases: AlarmSirenIndoor

HMIP-ASIR-O (Alarm Siren Outdoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.BaseDevice(connection)[source]

Bases: HomeMaticIPObject

Base device class. This is the foundation for homematicip and external (hue) devices

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

load_functionalChannels(groups: Iterable[Group], channels: Iterable[FunctionalChannel])[source]

this function will load the functionalChannels into the device

class homematicip.device.Blind(connection)[source]

Bases: Shutter

Base class for blind devices

set_slats_level(slatsLevel=0.0, shutterLevel=None, channelIndex=1)[source]

sets the slats and shutter level

Parameters:
  • slatsLevel (float) – the new level of the slats. 0.0 = open, 1.0 = closed

  • shutterLevel (float) – the new level of the shutter. 0.0 = open, 1.0 = closed, None = use the current value

  • channelIndex (int) – the channel to control

Returns:

the result of the _restCall

async set_slats_level_async(slatsLevel=0.0, shutterLevel=None, channelIndex=1)[source]

sets the slats and shutter level

Parameters:
  • slatsLevel (float) – the new level of the slats. 0.0 = open, 1.0 = closed,

  • shutterLevel (float) – the new level of the shutter. 0.0 = open, 1.0 = closed, None = use the current value

  • channelIndex (int) – the channel to control

Returns:

the result of the _restCall

class homematicip.device.BlindModule(connection)[source]

Bases: Device

HMIP-HDM1 (Hunter Douglas & erfal window blinds)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_primary_shading_level(primaryShadingLevel: float)[source]
async set_primary_shading_level_async(primaryShadingLevel: float)[source]
set_secondary_shading_level(primaryShadingLevel: float, secondaryShadingLevel: float)[source]
async set_secondary_shading_level_async(primaryShadingLevel: float, secondaryShadingLevel: float)[source]
async stop()[source]

stops the current operation :returns: the result of the _restCall

async stop_async()[source]

stops the current operation :returns: the result of the _restCall

class homematicip.device.BrandBlind(connection)[source]

Bases: FullFlushBlind

HMIP-BBL (Blind Actuator for brand switches)

class homematicip.device.BrandDimmer(connection)[source]

Bases: Dimmer

HMIP-BDT Brand Dimmer

class homematicip.device.BrandPushButton(connection)[source]

Bases: PushButton

HMIP-BRC2 (Remote Control for brand switches – 2x channels)

class homematicip.device.BrandSwitch2(connection)[source]

Bases: Switch

ELV-SH-BS2 (ELV Smart Home ARR-Bausatz Schaltaktor für Markenschalter – 2-fach powered by Homematic IP)

class homematicip.device.BrandSwitchMeasuring(connection)[source]

Bases: SwitchMeasuring

HMIP-BSM (Brand Switch and Meter)

class homematicip.device.BrandSwitchNotificationLight(connection)[source]

Bases: Switch

HMIP-BSL (Switch Actuator for brand switches – with signal lamp)

bottomLightChannelIndex

the channel number for the bottom light

Type:

int

set_rgb_dim_level(channelIndex: int, rgb: RGBColorState, dimLevel: float)[source]

sets the color and dimlevel of the lamp

Parameters:
  • channelIndex (int) – the channelIndex of the lamp. Use self.topLightChannelIndex or self.bottomLightChannelIndex

  • rgb (RGBColorState) – the color of the lamp

  • dimLevel (float) – the dimLevel of the lamp. 0.0 = off, 1.0 = MAX

Returns:

the result of the _restCall

async set_rgb_dim_level_async(channelIndex: int, rgb: RGBColorState, dimLevel: float)[source]

sets the color and dimlevel of the lamp

Parameters:
  • channelIndex (int) – the channelIndex of the lamp. Use self.topLightChannelIndex or self.bottomLightChannelIndex

  • rgb (RGBColorState) – the color of the lamp

  • dimLevel (float) – the dimLevel of the lamp. 0.0 = off, 1.0 = MAX

Returns:

the result of the _restCall

set_rgb_dim_level_with_time(channelIndex: int, rgb: RGBColorState, dimLevel: float, onTime: float, rampTime: float)[source]

sets the color and dimlevel of the lamp

Parameters:
  • channelIndex (int) – the channelIndex of the lamp. Use self.topLightChannelIndex or self.bottomLightChannelIndex

  • rgb (RGBColorState) – the color of the lamp

  • dimLevel (float) – the dimLevel of the lamp. 0.0 = off, 1.0 = MAX

  • onTime (float)

  • rampTime (float)

Returns:

the result of the _restCall

async set_rgb_dim_level_with_time_async(channelIndex: int, rgb: RGBColorState, dimLevel: float, onTime: float, rampTime: float)[source]

sets the color and dimlevel of the lamp

Parameters:
  • channelIndex (int) – the channelIndex of the lamp. Use self.topLightChannelIndex or self.bottomLightChannelIndex

  • rgb (RGBColorState) – the color of the lamp

  • dimLevel (float) – the dimLevel of the lamp. 0.0 = off, 1.0 = MAX

  • onTime (float)

  • rampTime (float)

Returns:

the result of the _restCall

topLightChannelIndex

the channel number for the top light

Type:

int

class homematicip.device.CarbonDioxideSensor(connection)[source]

Bases: Switch

HmIP-SCTH230

class homematicip.device.ContactInterface(connection)[source]

Bases: SabotageDevice

HMIP-SCI (Contact Interface Sensor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.DaliGateway(connection)[source]

Bases: Device

HmIP-DRG-DALI Dali Gateway device.

class homematicip.device.Device(connection)[source]

Bases: BaseDevice

this class represents a generic homematic ip device

authorizeUpdate()[source]
async authorizeUpdate_async()[source]
delete()[source]
async delete_async()[source]
from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

is_update_applicable()[source]
async is_update_applicable_async()[source]
set_label(label)[source]
async set_label_async(label)[source]
set_router_module_enabled(enabled=True)[source]
async set_router_module_enabled_async(enabled=True)[source]
class homematicip.device.Dimmer(connection)[source]

Bases: Device

Base dimmer device class

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_dim_level(dimLevel=0.0, channelIndex=1)[source]
async set_dim_level_async(dimLevel=0.0, channelIndex=1)[source]
class homematicip.device.DinRailBlind4(connection)[source]

Bases: Blind

HmIP-DRBLI4 (Blind Actuator for DIN rail mount – 4 channels)

class homematicip.device.DinRailDimmer3(connection)[source]

Bases: Dimmer

HMIP-DRDI3 (Dimming Actuator Inbound 230V – 3x channels, 200W per channel) electrical DIN rail

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.DinRailSwitch(connection)[source]

Bases: FullFlushInputSwitch

HMIP-DRSI1 (Switch Actuator for DIN rail mount – 1x channel)

class homematicip.device.DinRailSwitch4(connection)[source]

Bases: Switch

HMIP-DRSI4 (Homematic IP Switch Actuator for DIN rail mount – 4x channels)

class homematicip.device.DoorBellButton(connection)[source]

Bases: PushButton

HmIP-DBB

class homematicip.device.DoorBellContactInterface(connection)[source]

Bases: Device

HMIP-DSD-PCB (Door Bell Contact Interface)

class homematicip.device.DoorLockDrive(connection)[source]

Bases: OperationLockableDevice

HmIP-DLD

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_lock_state(doorLockState: LockState, pin='', channelIndex=1)[source]

sets the door lock state

Parameters:
  • doorLockState (float) – the state of the door. See LockState from base/enums.py

  • pin (string) – Pin, if specified.

  • channelIndex (int) – the channel to control. Normally the channel from DOOR_LOCK_CHANNEL is used.

Returns:

the result of the _restCall

async set_lock_state_async(doorLockState: LockState, pin='', channelIndex=1)[source]

sets the door lock state

Parameters:
  • doorLockState (float) – the state of the door. See LockState from base/enums.py

  • pin (string) – Pin, if specified.

  • channelIndex (int) – the channel to control. Normally the channel from DOOR_LOCK_CHANNEL is used.

Returns:

the result of the _restCall

class homematicip.device.DoorLockSensor(connection)[source]

Bases: Device

HmIP-DLS

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.DoorModule(connection)[source]

Bases: Device

Generic class for a door module

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

send_door_command(doorCommand=DoorCommand.STOP)[source]
async send_door_command_async(doorCommand=DoorCommand.STOP)[source]
class homematicip.device.EnergySensorsInterface(connection)[source]

Bases: Device

HmIP-ESI

class homematicip.device.ExternalDevice(connection)[source]

Bases: BaseDevice

Represents devices with archtetype EXTERNAL

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.FloorTerminalBlock10(connection)[source]

Bases: FloorTerminalBlock6

HMIP-FAL24-C10 (Floor Heating Actuator – 10x channels, 24V)

class homematicip.device.FloorTerminalBlock12(connection)[source]

Bases: Device

HMIP-FALMOT-C12 (Floor Heating Actuator – 12x channels, motorised)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_minimum_floor_heating_valve_position(minimumFloorHeatingValvePosition: float)[source]

sets the minimum floot heating valve position

Parameters:

minimumFloorHeatingValvePosition (float) – the minimum valve position. must be between 0.0 and 1.0

Returns:

the result of the _restCall

async set_minimum_floor_heating_valve_position_async(minimumFloorHeatingValvePosition: float)[source]

sets the minimum floot heating valve position

Parameters:

minimumFloorHeatingValvePosition (float) – the minimum valve position. must be between 0.0 and 1.0

Returns:

the result of the _restCall

class homematicip.device.FloorTerminalBlock6(connection)[source]

Bases: Device

HMIP-FAL230-C6 (Floor Heating Actuator - 6 channels, 230 V)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.FullFlushBlind(connection)[source]

Bases: FullFlushShutter, Blind

HMIP-FBL (Blind Actuator - flush-mount)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.FullFlushContactInterface(connection)[source]

Bases: Device

HMIP-FCI1 (Contact Interface flush-mount – 1 channel)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.FullFlushContactInterface6(connection)[source]

Bases: Device

HMIP-FCI6 (Contact Interface flush-mount – 6 channels)

class homematicip.device.FullFlushDimmer(connection)[source]

Bases: Dimmer

HMIP-FDT Dimming Actuator flush-mount

class homematicip.device.FullFlushInputSwitch(connection)[source]

Bases: Switch

HMIP-FSI16 (Switch Actuator with Push-button Input 230V, 16A)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.FullFlushShutter(connection)[source]

Bases: Shutter

HMIP-FROLL (Shutter Actuator - flush-mount) / HMIP-BROLL (Shutter Actuator - Brand-mount)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.FullFlushSwitchMeasuring(connection)[source]

Bases: SwitchMeasuring

HMIP-FSM, HMIP-FSM16 (Full flush Switch and Meter)

class homematicip.device.GarageDoorModuleTormatic(connection)[source]

Bases: DoorModule

HMIP-MOD-TM (Garage Door Module Tormatic)

class homematicip.device.HeatingSwitch2(connection)[source]

Bases: Switch

HMIP-WHS2 (Switch Actuator for heating systems – 2x channels)

class homematicip.device.HeatingThermostat(connection)[source]

Bases: OperationLockableDevice

HMIP-eTRV (Radiator Thermostat)

automaticValveAdaptionNeeded

must the adaption re-run?

Type:

bool

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

setPointTemperature

the current temperature which should be reached in the room

Type:

float

temperatureOffset

the offset temperature for the thermostat (+/- 3.5)

Type:

float

valveActualTemperature

the current measured temperature at the valve

Type:

float

valvePosition

the current position of the valve 0.0 = closed, 1.0 max opened

Type:

float

valveState

the current state of the valve

Type:

ValveState

class homematicip.device.HeatingThermostatCompact(connection)[source]

Bases: SabotageDevice

HMIP-eTRV-C (Heating-thermostat compact without display)

automaticValveAdaptionNeeded

must the adaption re-run?

Type:

bool

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

setPointTemperature

the current temperature which should be reached in the room

Type:

float

temperatureOffset

the offset temperature for the thermostat (+/- 3.5)

Type:

float

valveActualTemperature

the current measured temperature at the valve

Type:

float

valvePosition

the current position of the valve 0.0 = closed, 1.0 max opened

Type:

float

valveState

the current state of the valve

Type:

ValveState

class homematicip.device.HeatingThermostatEvo(connection)[source]

Bases: OperationLockableDevice

HMIP-eTRV-E (Heating-thermostat new evo version)

automaticValveAdaptionNeeded

must the adaption re-run?

Type:

bool

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

setPointTemperature

the current temperature which should be reached in the room

Type:

float

temperatureOffset

the offset temperature for the thermostat (+/- 3.5)

Type:

float

valveActualTemperature

the current measured temperature at the valve

Type:

float

valvePosition

the current position of the valve 0.0 = closed, 1.0 max opened

Type:

float

valveState

the current state of the valve

Type:

ValveState

class homematicip.device.HoermannDrivesModule(connection)[source]

Bases: DoorModule

HMIP-MOD-HO (Garage Door Module for Hörmann)

class homematicip.device.HomeControlAccessPoint(connection)[source]

Bases: Device

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.KeyRemoteControl4(connection)[source]

Bases: PushButton

HMIP-KRC4 (Key Ring Remote Control - 4 buttons)

class homematicip.device.KeyRemoteControlAlarm(connection)[source]

Bases: Device

HMIP-KRCA (Key Ring Remote Control - alarm)

class homematicip.device.LightSensor(connection)[source]

Bases: Device

HMIP-SLO (Light Sensor outdoor)

averageIllumination

the average illumination value

Type:

float

currentIllumination

the current illumination value

Type:

float

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

highestIllumination

the highest illumination value

Type:

float

lowestIllumination

the lowest illumination value

Type:

float

class homematicip.device.MotionDetectorIndoor(connection)[source]

Bases: SabotageDevice

HMIP-SMI (Motion Detector with Brightness Sensor - indoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.MotionDetectorOutdoor(connection)[source]

Bases: Device

HMIP-SMO-A (Motion Detector with Brightness Sensor - outdoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.MotionDetectorPushButton(connection)[source]

Bases: MotionDetectorOutdoor

HMIP-SMI55 (Motion Detector with Brightness Sensor and Remote Control - 2-button)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.MultiIOBox(connection)[source]

Bases: Switch

HMIP-MIOB (Multi IO Box for floor heating & cooling)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.OpenCollector8Module(connection)[source]

Bases: Switch

HMIP-MOD-OC8 ( Open Collector Module )

class homematicip.device.OperationLockableDevice(connection)[source]

Bases: Device

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_operation_lock(operationLock=True)[source]
async set_operation_lock_async(operationLock=True)[source]
class homematicip.device.PassageDetector(connection)[source]

Bases: SabotageDevice

HMIP-SPDR (Passage Detector)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.PlugableSwitch(connection)[source]

Bases: Switch

HMIP-PS (Pluggable Switch), HMIP-PCBS (Switch Circuit Board - 1 channel)

class homematicip.device.PlugableSwitchMeasuring(connection)[source]

Bases: SwitchMeasuring

HMIP-PSM (Pluggable Switch and Meter)

class homematicip.device.PluggableDimmer(connection)[source]

Bases: Dimmer

HMIP-PDT Pluggable Dimmer

class homematicip.device.PluggableMainsFailureSurveillance(connection)[source]

Bases: Device

HMIP-PMFS (Plugable Power Supply Monitoring)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.PresenceDetectorIndoor(connection)[source]

Bases: SabotageDevice

HMIP-SPI (Presence Sensor - indoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.PrintedCircuitBoardSwitch2(connection)[source]

Bases: Switch

HMIP-PCBS2 (Switch Circuit Board - 2x channels)

class homematicip.device.PrintedCircuitBoardSwitchBattery(connection)[source]

Bases: Switch

HMIP-PCBS-BAT (Printed Circuit Board Switch Battery)

class homematicip.device.PushButton(connection)[source]

Bases: Device

HMIP-WRC2 (Wall-mount Remote Control - 2-button)

class homematicip.device.PushButton6(connection)[source]

Bases: PushButton

HMIP-WRC6 (Wall-mount Remote Control - 6-button)

class homematicip.device.PushButtonFlat(connection)[source]

Bases: PushButton

HmIP-WRCC2 (Wall-mount Remote Control – flat)

class homematicip.device.RainSensor(connection)[source]

Bases: Device

HMIP-SRD (Rain Sensor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

rainSensorSensitivity

float:

raining

bool:

class homematicip.device.RemoteControl8(connection)[source]

Bases: PushButton

HMIP-RC8 (Remote Control - 8 buttons)

class homematicip.device.RemoteControl8Module(connection)[source]

Bases: RemoteControl8

HMIP-MOD-RC8 (Open Collector Module Sender - 8x)

class homematicip.device.RgbwDimmer(connection)[source]

Bases: Device

HmIP-RGBW

fastColorChangeSupported: bool = False
from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.RoomControlDevice(connection)[source]

Bases: WallMountedThermostatPro

ALPHA-IP-RBG (Alpha IP Wall Thermostat Display)

class homematicip.device.RoomControlDeviceAnalog(connection)[source]

Bases: Device

ALPHA-IP-RBGa (ALpha IP Wall Thermostat Display analog)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.RotaryHandleSensor(connection)[source]

Bases: SabotageDevice

HMIP-SRH

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.SabotageDevice(connection)[source]

Bases: Device

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.Shutter(connection)[source]

Bases: Device

Base class for shutter devices

set_shutter_level(level=0.0, channelIndex=1)[source]

sets the shutter level

Parameters:
  • level (float) – the new level of the shutter. 0.0 = open, 1.0 = closed

  • channelIndex (int) – the channel to control

Returns:

the result of the _restCall

async set_shutter_level_async(level=0.0, channelIndex=1)[source]

sets the shutter level

Parameters:
  • level (float) – the new level of the shutter. 0.0 = open, 1.0 = closed

  • channelIndex (int) – the channel to control

Returns:

the result of the _restCall

set_shutter_stop(channelIndex=1)[source]

stops the current shutter operation

Parameters:

channelIndex (int) – the channel to control

Returns:

the result of the _restCall

async set_shutter_stop_async(channelIndex=1)[source]

stops the current shutter operation

Parameters:

channelIndex (int) – the channel to control

Returns:

the result of the _restCall

class homematicip.device.ShutterContact(connection)[source]

Bases: SabotageDevice

HMIP-SWDO (Door / Window Contact - optical) / HMIP-SWDO-I (Door / Window Contact Invisible - optical)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.ShutterContactMagnetic(connection)[source]

Bases: Device

HMIP-SWDM / HMIP-SWDM-B2 (Door / Window Contact - magnetic )

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.ShutterContactOpticalPlus(connection)[source]

Bases: ShutterContact

HmIP-SWDO-PL ( Window / Door Contact – optical, plus )

class homematicip.device.SmokeDetector(connection)[source]

Bases: Device

HMIP-SWSD (Smoke Alarm with Q label)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.Switch(connection)[source]

Bases: Device

Generic Switch class

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_switch_state(on=True, channelIndex=1)[source]
async set_switch_state_async(on=True, channelIndex=1)[source]
turn_off(channelIndex=1)[source]
async turn_off_async(channelIndex=1)[source]
turn_on(channelIndex=1)[source]
async turn_on_async(channelIndex=1)[source]
class homematicip.device.SwitchMeasuring(connection)[source]

Bases: Switch

Generic class for Switch and Meter

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

reset_energy_counter()[source]
async reset_energy_counter_async()[source]
class homematicip.device.TemperatureDifferenceSensor2(connection)[source]

Bases: Device

HmIP-STE2-PCB (Temperature Difference Sensors - 2x sensors)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

temperatureExternalDelta

float:

temperatureExternalOne

float:

temperatureExternalTwo

float:

class homematicip.device.TemperatureHumiditySensorDisplay(connection)[source]

Bases: Device

HMIP-STHD (Temperature and Humidity Sensor with display - indoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_display(display: ClimateControlDisplay = ClimateControlDisplay.ACTUAL)[source]
async set_display_async(display: ClimateControlDisplay = ClimateControlDisplay.ACTUAL)[source]
class homematicip.device.TemperatureHumiditySensorOutdoor(connection)[source]

Bases: Device

HMIP-STHO (Temperature and Humidity Sensor outdoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.TemperatureHumiditySensorWithoutDisplay(connection)[source]

Bases: Device

HMIP-STH (Temperature and Humidity Sensor without display - indoor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.TiltVibrationSensor(connection)[source]

Bases: Device

HMIP-STV (Inclination and vibration Sensor)

accelerationSensorEventFilterPeriod

float:

accelerationSensorMode

AccelerationSensorMode:

accelerationSensorSensitivity

AccelerationSensorSensitivity:

accelerationSensorTriggerAngle

int:

accelerationSensorTriggered

bool:

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_acceleration_sensor_event_filter_period(period: float, channelIndex=1)[source]
async set_acceleration_sensor_event_filter_period_async(period: float, channelIndex=1)[source]
set_acceleration_sensor_mode(mode: AccelerationSensorMode, channelIndex=1)[source]
async set_acceleration_sensor_mode_async(mode: AccelerationSensorMode, channelIndex=1)[source]
set_acceleration_sensor_sensitivity(sensitivity: AccelerationSensorSensitivity, channelIndex=1)[source]
async set_acceleration_sensor_sensitivity_async(sensitivity: AccelerationSensorSensitivity, channelIndex=1)[source]
set_acceleration_sensor_trigger_angle(angle: int, channelIndex=1)[source]
async set_acceleration_sensor_trigger_angle_async(angle: int, channelIndex=1)[source]
class homematicip.device.WallMountedGarageDoorController(connection)[source]

Bases: Device

HmIP-WGC Wall mounted Garage Door Controller

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

send_start_impulse(channelIndex=2)[source]

Toggle Wall mounted Garage Door Controller.

async send_start_impulse_async(channelIndex=2)[source]

Toggle Wall mounted Garage Door Controller.

class homematicip.device.WallMountedThermostatBasicHumidity(connection)[source]

Bases: WallMountedThermostatPro

HMIP-WTH-B (Wall Thermostat – basic)

class homematicip.device.WallMountedThermostatPro(connection)[source]

Bases: TemperatureHumiditySensorDisplay, OperationLockableDevice

HMIP-WTH, HMIP-WTH-2 (Wall Thermostat with Humidity Sensor) / HMIP-BWTH (Brand Wall Thermostat with Humidity Sensor)

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.WaterSensor(connection)[source]

Bases: Device

HMIP-SWD ( Water Sensor )

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_acoustic_alarm_signal(acousticAlarmSignal: AcousticAlarmSignal)[source]
async set_acoustic_alarm_signal_async(acousticAlarmSignal: AcousticAlarmSignal)[source]
set_acoustic_alarm_timing(acousticAlarmTiming: AcousticAlarmTiming)[source]
async set_acoustic_alarm_timing_async(acousticAlarmTiming: AcousticAlarmTiming)[source]
set_acoustic_water_alarm_trigger(acousticWaterAlarmTrigger: WaterAlarmTrigger)[source]
async set_acoustic_water_alarm_trigger_async(acousticWaterAlarmTrigger: WaterAlarmTrigger)[source]
set_inapp_water_alarm_trigger(inAppWaterAlarmTrigger: WaterAlarmTrigger)[source]
async set_inapp_water_alarm_trigger_async(inAppWaterAlarmTrigger: WaterAlarmTrigger)[source]
set_siren_water_alarm_trigger(sirenWaterAlarmTrigger: WaterAlarmTrigger)[source]
async set_siren_water_alarm_trigger_async(sirenWaterAlarmTrigger: WaterAlarmTrigger)[source]
class homematicip.device.WeatherSensor(connection)[source]

Bases: Device

HMIP-SWO-B

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.WeatherSensorPlus(connection)[source]

Bases: Device

HMIP-SWO-PL

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.WeatherSensorPro(connection)[source]

Bases: Device

HMIP-SWO-PR

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.WiredDimmer3(connection)[source]

Bases: Dimmer

HMIPW-DRD3 (Homematic IP Wired Dimming Actuator – 3x channels)

class homematicip.device.WiredDinRailAccessPoint(connection)[source]

Bases: Device

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.device.WiredDinRailBlind4(connection)[source]

Bases: Blind

HmIPW-DRBL4

class homematicip.device.WiredFloorTerminalBlock12(connection)[source]

Bases: FloorTerminalBlock12

Implementation of HmIPW-FALMOT-C12

class homematicip.device.WiredInput32(connection)[source]

Bases: FullFlushContactInterface

HMIPW-DRI32 (Homematic IP Wired Inbound module – 32x channels)

class homematicip.device.WiredInputSwitch6(connection)[source]

Bases: Switch

HmIPW-FIO6

class homematicip.device.WiredMotionDetectorPushButton(connection)[source]

Bases: MotionDetectorOutdoor

HmIPW-SMI55

class homematicip.device.WiredPushButton(connection)[source]

Bases: PushButton

HmIPW-WRC6 and HmIPW-WRC2

set_dim_level(channelIndex, dimLevel)[source]

sets the signal type for the leds :param channelIndex: Channel which is affected :type channelIndex: int :param dimLevel: usally 1.01. Use set_dim_level instead :type dimLevel: float

Returns:

Result of the _restCall

async set_dim_level_async(channelIndex, dimLevel)[source]

sets the signal type for the leds :param channelIndex: Channel which is affected :type channelIndex: int :param dimLevel: usally 1.01. Use set_dim_level instead :type dimLevel: float

Returns:

Result of the _restCall

set_optical_signal(channelIndex, opticalSignalBehaviour: OpticalSignalBehaviour, rgb: RGBColorState, dimLevel=1.01)[source]

sets the signal type for the leds

Parameters:
  • channelIndex (int) – Channel which is affected

  • opticalSignalBehaviour (OpticalSignalBehaviour) – LED signal behaviour

  • rgb (RGBColorState) – Color

  • dimLevel (float) – usally 1.01. Use set_dim_level instead

Returns:

Result of the _restCall

async set_optical_signal_async(channelIndex, opticalSignalBehaviour: OpticalSignalBehaviour, rgb: RGBColorState, dimLevel=1.01)[source]

sets the signal type for the leds

Parameters:
  • channelIndex (int) – Channel which is affected

  • opticalSignalBehaviour (OpticalSignalBehaviour) – LED signal behaviour

  • rgb (RGBColorState) – Color

  • dimLevel (float) – usally 1.01. Use set_dim_level instead

Returns:

Result of the _restCall

set_switch_state(on, channelIndex)[source]
async set_switch_state_async(on, channelIndex)[source]
turn_off(channelIndex)[source]
async turn_off_async(channelIndex)[source]
turn_on(channelIndex)[source]
async turn_on_async(channelIndex)[source]
class homematicip.device.WiredSwitch4(connection)[source]

Bases: Switch

HMIPW-DRS4 (Homematic IP Wired Switch Actuator – 4x channels)

class homematicip.device.WiredSwitch8(connection)[source]

Bases: Switch

HMIPW-DRS8 (Homematic IP Wired Switch Actuator – 8x channels)

homematicip.functionalHomes module

class homematicip.functionalHomes.AccessControlHome(connection)[source]

Bases: FunctionalHome

from_json(js, groups: List[Group])[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.functionalHomes.EnergyHome(connection)[source]

Bases: FunctionalHome

class homematicip.functionalHomes.FunctionalHome(connection)[source]

Bases: HomeMaticIPObject

assignGroups(gids, groups: List[Group])[source]
from_json(js, groups: List[Group])[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.functionalHomes.IndoorClimateHome(connection)[source]

Bases: FunctionalHome

from_json(js, groups: List[Group])[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.functionalHomes.LightAndShadowHome(connection)[source]

Bases: FunctionalHome

from_json(js, groups: List[Group])[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.functionalHomes.SecurityAndAlarmHome(connection)[source]

Bases: FunctionalHome

from_json(js, groups: List[Group])[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.functionalHomes.WeatherAndEnvironmentHome(connection)[source]

Bases: FunctionalHome

homematicip.group module

class homematicip.group.AccessAuthorizationProfileGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.AccessControlGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.AlarmSwitchingGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_on_time(onTimeSeconds)[source]
async set_on_time_async(onTimeSeconds)[source]
set_signal_acoustic(signalAcoustic=AcousticAlarmSignal.FREQUENCY_FALLING)[source]
async set_signal_acoustic_async(signalAcoustic=AcousticAlarmSignal.FREQUENCY_FALLING)[source]
set_signal_optical(signalOptical=OpticalAlarmSignal.BLINKING_ALTERNATELY_REPEATING)[source]
async set_signal_optical_async(signalOptical=OpticalAlarmSignal.BLINKING_ALTERNATELY_REPEATING)[source]
test_signal_acoustic(signalAcoustic=AcousticAlarmSignal.FREQUENCY_FALLING)[source]
async test_signal_acoustic_async(signalAcoustic=AcousticAlarmSignal.FREQUENCY_FALLING)[source]
test_signal_optical(signalOptical=OpticalAlarmSignal.BLINKING_ALTERNATELY_REPEATING)[source]
async test_signal_optical_async(signalOptical=OpticalAlarmSignal.BLINKING_ALTERNATELY_REPEATING)[source]
class homematicip.group.EnergyGroup(connection)[source]

Bases: Group

class homematicip.group.EnvironmentGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.ExtendedLinkedGarageDoorGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.ExtendedLinkedShutterGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_shutter_level(level)[source]
async set_shutter_level_async(level)[source]
set_shutter_stop()[source]
async set_shutter_stop_async()[source]
set_slats_level(slatsLevel=0.0, shutterLevel=None)[source]
async set_slats_level_async(slatsLevel=0.0, shutterLevel=None)[source]
class homematicip.group.ExtendedLinkedSwitchingGroup(connection)[source]

Bases: SwitchGroupBase

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_on_time(onTimeSeconds)[source]
async set_on_time_async(onTimeSeconds)[source]
class homematicip.group.Group(connection)[source]

Bases: HomeMaticIPObject

this class represents a group

delete()[source]
async delete_async()[source]
from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_label(label)[source]
async set_label_async(label)[source]
class homematicip.group.HeatingChangeoverGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingCoolingDemandBoilerGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingCoolingDemandGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingCoolingDemandPumpGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingCoolingPeriod(connection)[source]

Bases: HomeMaticIPObject

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingCoolingProfile(connection)[source]

Bases: HomeMaticIPObject

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

get_details()[source]
async get_details_async()[source]
update_profile()[source]
async update_profile_async()[source]
class homematicip.group.HeatingCoolingProfileDay(connection)[source]

Bases: HomeMaticIPObject

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingDehumidifierGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.HeatingExternalClockGroup(connection)[source]

Bases: Group

class homematicip.group.HeatingFailureAlertRuleGroup(connection)[source]

Bases: Group

checkInterval

how often the system will check for an error

Type:

int

enabled

is this rule active

Type:

bool

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

heatingFailureValidationResult

the heating failure value

Type:

HeatingFailureValidationType

lastExecutionTimestamp

last time of execution

Type:

datetime

validationTimeout

time in ms for the validation period. default 24Hours

Type:

int

class homematicip.group.HeatingGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_active_profile(index)[source]
async set_active_profile_async(index)[source]
set_boost(enable=True)[source]
async set_boost_async(enable=True)[source]
set_boost_duration(duration: int)[source]
async set_boost_duration_async(duration: int)[source]
set_control_mode(mode=ClimateControlMode.AUTOMATIC)[source]
async set_control_mode_async(mode=ClimateControlMode.AUTOMATIC)[source]
set_point_temperature(temperature)[source]
async set_point_temperature_async(temperature)[source]
class homematicip.group.HeatingHumidyLimiterGroup(connection)[source]

Bases: Group

class homematicip.group.HeatingTemperatureLimiterGroup(connection)[source]

Bases: Group

class homematicip.group.HotWaterGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_profile_mode(profileMode: ProfileMode)[source]
async set_profile_mode_async(profileMode: ProfileMode)[source]
class homematicip.group.HumidityWarningRuleGroup(connection)[source]

Bases: Group

enabled

is this rule active

Type:

bool

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

humidityLowerThreshold

the lower humidity threshold

Type:

int

humidityUpperThreshold

the upper humidity threshold

Type:

int

humidityValidationResult

the current humidity result

Type:

HumidityValidationType

lastExecutionTimestamp

last time of execution

Type:

datetime

lastStatusUpdate

last time the humidity got updated

Type:

datetime

outdoorClimateSensor

the climate sensor which get used as an outside reference. None if OpenWeatherMap will be used

Type:

Device

triggered

is it currently triggered?

Type:

bool

ventilationRecommended

should the windows be opened?

Type:

bool

class homematicip.group.InboxGroup(connection)[source]

Bases: Group

class homematicip.group.IndoorClimateGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.LinkedSwitchingGroup(connection)[source]

Bases: Group

set_light_group_switches(devices)[source]
async set_light_group_switches_async(devices)[source]
class homematicip.group.LockOutProtectionRule(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.MetaGroup(connection)[source]

Bases: Group

a meta group is a “Room” inside the homematic configuration

from_json(js, devices, groups)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.OverHeatProtectionRule(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.SecurityGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.SecurityZoneGroup(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.ShutterProfile(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_profile_mode(profileMode: ProfileMode)[source]
async set_profile_mode_async(profileMode: ProfileMode)[source]
set_shutter_level(level)[source]
async set_shutter_level_async(level)[source]
set_shutter_stop()[source]
async set_shutter_stop_async()[source]
set_slats_level(slatsLevel, shutterlevel=None)[source]
async set_slats_level_async(slatsLevel, shutterlevel=None)[source]
class homematicip.group.ShutterWindProtectionRule(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.SmokeAlarmDetectionRule(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.group.SwitchGroupBase(connection)[source]

Bases: Group

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_switch_state(on=True)[source]
async set_switch_state_async(on=True)[source]
turn_off()[source]
async turn_off_async()[source]
turn_on()[source]
async turn_on_async()[source]
class homematicip.group.SwitchingGroup(connection)[source]

Bases: SwitchGroupBase

from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_shutter_level(level)[source]
async set_shutter_level_async(level)[source]
set_shutter_stop()[source]
async set_shutter_stop_async()[source]
set_slats_level(slatsLevel, shutterlevel=None)[source]
async set_slats_level_async(slatsLevel, shutterlevel=None)[source]
class homematicip.group.SwitchingProfileGroup(connection)[source]

Bases: Group

create(label)[source]
async create_async(label)[source]
from_json(js, devices)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_group_channels()[source]
async set_group_channels_async()[source]
set_profile_mode(devices, automatic=True)[source]
async set_profile_mode_async(devices, automatic=True)[source]
class homematicip.group.TimeProfile(connection)[source]

Bases: HomeMaticIPObject

get_details()[source]
class homematicip.group.TimeProfilePeriod(connection)[source]

Bases: HomeMaticIPObject

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

homematicip.home module

class homematicip.home.Home(connection=None)[source]

Bases: AsyncHome

this class represents the ‘Home’ of the homematic ip

activate_absence_permanent()[source]
activate_absence_with_duration(duration: int)[source]
activate_absence_with_period(endtime: datetime)[source]
activate_vacation(endtime: datetime, temperature: float)[source]
deactivate_absence()[source]
deactivate_vacation()[source]
download_configuration() dict[source]
get_OAuth_OTK()[source]
get_security_journal()[source]
set_cooling(cooling)[source]
set_intrusion_alert_through_smoke_detectors(activate: bool = True)[source]
set_location(city, latitude, longitude)[source]
set_pin(newPin: str, oldPin: str = None) dict[source]
set_powermeter_unit_price(price)[source]
set_security_zones_activation(internal=True, external=True)[source]
set_silent_alarm(internal=True, external=True)[source]
set_timezone(timezone: str)[source]
set_zone_activation_delay(delay)[source]
set_zones_device_assignment(internal_devices, external_devices)[source]
start_inclusion(deviceId)[source]

homematicip.location module

class homematicip.location.Location(connection)[source]

Bases: HomeMaticIPObject

This class represents the possible location

city

the name of the city

Type:

str

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

latitude

the latitude of the location

Type:

float

longitude

the longitue of the location

Type:

float

homematicip.oauth_otk module

class homematicip.oauth_otk.OAuthOTK(connection)[source]

Bases: HomeMaticIPObject

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

homematicip.rule module

class homematicip.rule.Rule(connection)[source]

Bases: HomeMaticIPObject

this class represents the automation rule

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

set_label(label)[source]

sets the label of the rule

async set_label_async(label)[source]

sets the label of the rule

class homematicip.rule.SimpleRule(connection)[source]

Bases: Rule

This class represents a “Simple” automation rule

disable()[source]

disables the rule

async disable_async()[source]

disables the rule

enable()[source]

enables the rule

async enable_async()[source]

enables the rule

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

get_simple_rule()[source]
async get_simple_rule_async()[source]
set_rule_enabled_state(enabled)[source]

enables/disables this rule

async set_rule_enabled_state_async(enabled)[source]

enables/disables this rule

homematicip.securityEvent module

class homematicip.securityEvent.AccessPointConnectedEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.AccessPointDisconnectedEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.ActivationChangedEvent(connection)[source]

Bases: SecurityZoneEvent

class homematicip.securityEvent.ExternalTriggeredEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.MainsFailureEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.MoistureDetectionEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.OfflineAlarmEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.OfflineWaterDetectionEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.SabotageEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.SecurityEvent(connection)[source]

Bases: HomeMaticIPObject

this class represents a security event

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.securityEvent.SecurityZoneEvent(connection)[source]

Bases: SecurityEvent

This class will be used by other events which are just adding “securityZoneValues”

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

class homematicip.securityEvent.SensorEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.SilenceChangedEvent(connection)[source]

Bases: SecurityZoneEvent

class homematicip.securityEvent.SmokeAlarmEvent(connection)[source]

Bases: SecurityEvent

class homematicip.securityEvent.WaterDetectionEvent(connection)[source]

Bases: SecurityEvent

homematicip.weather module

class homematicip.weather.Weather(connection)[source]

Bases: HomeMaticIPObject

this class represents the weather of the home location

from_json(js)[source]

this method will parse the homematicip object from a json object

Parameters:

js – the json object to parse

humidity

the current humidity

Type:

float

maxTemperature

the maximum temperature of the day

Type:

float

minTemperature

the minimum temperature of the day

Type:

float

temperature

the current temperature

Type:

float

vaporAmount

the current vapor

Type:

float

weatherCondition

the current weather

Type:

WeatherCondition

weatherDayTime

the current datime

Type:

datetime

windDirection

the current wind direction in 360° where 0° is north

Type:

int

windSpeed

the current windspeed

Type:

float

Module contents

class homematicip.HmipConfig(auth_token, access_point, log_level, log_file, raw_config)

Bases: tuple

access_point

Alias for field number 1

auth_token

Alias for field number 0

log_file

Alias for field number 3

log_level

Alias for field number 2

raw_config

Alias for field number 4

homematicip.find_and_load_config_file() HmipConfig[source]
homematicip.get_config_file_locations() [][source]
homematicip.load_config_file(config_file: str) HmipConfig[source]

Loads the config ini file. :raises a FileNotFoundError when the config file does not exist.