Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.rainmachine Namespace Reference

Namespaces

 binary_sensor
 
 button
 
 config_flow
 
 const
 
 coordinator
 
 diagnostics
 
 entity
 
 select
 
 sensor
 
 switch
 
 update
 
 util
 

Classes

class  RainMachineData
 

Functions

RainMachineConfigEntry async_get_entry_for_service_call (HomeAssistant hass, ServiceCall call)
 
bool async_migrate_entry (HomeAssistant hass, RainMachineConfigEntry entry)
 
None async_reload_entry (HomeAssistant hass, RainMachineConfigEntry entry)
 
bool async_setup_entry (HomeAssistant hass, RainMachineConfigEntry entry)
 
bool async_unload_entry (HomeAssistant hass, RainMachineConfigEntry entry)
 
None async_update_programs_and_zones (HomeAssistant hass, RainMachineConfigEntry entry)
 

Variables

string CONF_CONDITION = "condition"
 
string CONF_DEWPOINT = "dewpoint"
 
string CONF_ET = "et"
 
string CONF_MAXRH = "maxrh"
 
string CONF_MAXTEMP = "maxtemp"
 
string CONF_MINRH = "minrh"
 
string CONF_MINTEMP = "mintemp"
 
string CONF_PRESSURE = "pressure"
 
string CONF_QPF = "qpf"
 
string CONF_RAIN = "rain"
 
string CONF_SECONDS = "seconds"
 
string CONF_SOLARRAD = "solarrad"
 
string CONF_TEMPERATURE = "temperature"
 
string CONF_TIMESTAMP = "timestamp"
 
string CONF_UNITS = "units"
 
string CONF_VALUE = "value"
 
string CONF_WEATHER = "weather"
 
string CONF_WIND = "wind"
 
dictionary COORDINATOR_UPDATE_INTERVAL_MAP
 
dictionary CV_FLOW_METER_VALID_UNITS
 
 CV_WX_DATA_VALID_PERCENTAGE = vol.All(vol.Coerce(int), vol.Range(min=0, max=100))
 
 CV_WX_DATA_VALID_PRESSURE = vol.All(vol.Coerce(float), vol.Range(min=60.0, max=110.0))
 
 CV_WX_DATA_VALID_RAIN_RANGE = vol.All(vol.Coerce(float), vol.Range(min=0.0, max=1000.0))
 
 CV_WX_DATA_VALID_SOLARRAD = vol.All(vol.Coerce(float), vol.Range(min=0.0, max=5.0))
 
 CV_WX_DATA_VALID_TEMP_RANGE = vol.All(vol.Coerce(float), vol.Range(min=-40.0, max=40.0))
 
 CV_WX_DATA_VALID_WIND_SPEED = vol.All(vol.Coerce(float), vol.Range(min=0.0, max=65.0))
 
bool DEFAULT_SSL = True
 
list PLATFORMS
 
 RainMachineConfigEntry
 
string SERVICE_NAME_PAUSE_WATERING = "pause_watering"
 
string SERVICE_NAME_PUSH_FLOW_METER_DATA = "push_flow_meter_data"
 
string SERVICE_NAME_PUSH_WEATHER_DATA = "push_weather_data"
 
string SERVICE_NAME_RESTRICT_WATERING = "restrict_watering"
 
string SERVICE_NAME_STOP_ALL = "stop_all"
 
string SERVICE_NAME_UNPAUSE_WATERING = "unpause_watering"
 
string SERVICE_NAME_UNRESTRICT_WATERING = "unrestrict_watering"
 
 SERVICE_PAUSE_WATERING_SCHEMA
 
 SERVICE_PUSH_FLOW_METER_DATA_SCHEMA
 
 SERVICE_PUSH_WEATHER_DATA_SCHEMA
 
 SERVICE_RESTRICT_WATERING_SCHEMA
 
 SERVICE_SCHEMA
 

Detailed Description

Support for RainMachine devices.

Function Documentation

◆ async_get_entry_for_service_call()

RainMachineConfigEntry homeassistant.components.rainmachine.async_get_entry_for_service_call ( HomeAssistant  hass,
ServiceCall   call 
)
Get the controller related to a service call (by device ID).

Definition at line 181 of file __init__.py.

◆ async_migrate_entry()

bool homeassistant.components.rainmachine.async_migrate_entry ( HomeAssistant  hass,
RainMachineConfigEntry   entry 
)
Migrate an old config entry.

Definition at line 490 of file __init__.py.

◆ async_reload_entry()

None homeassistant.components.rainmachine.async_reload_entry ( HomeAssistant  hass,
RainMachineConfigEntry   entry 
)
Handle an options update.

Definition at line 524 of file __init__.py.

◆ async_setup_entry()

bool homeassistant.components.rainmachine.async_setup_entry ( HomeAssistant  hass,
RainMachineConfigEntry   entry 
)
Set up RainMachine as config entry.

Definition at line 215 of file __init__.py.

◆ async_unload_entry()

bool homeassistant.components.rainmachine.async_unload_entry ( HomeAssistant  hass,
RainMachineConfigEntry   entry 
)
Unload an RainMachine config entry.

Definition at line 463 of file __init__.py.

◆ async_update_programs_and_zones()

None homeassistant.components.rainmachine.async_update_programs_and_zones ( HomeAssistant  hass,
RainMachineConfigEntry   entry 
)
Update program and zone DataUpdateCoordinators.

Program and zone updates always go together because of how linked they are:
programs affect zones and certain combinations of zones affect programs.

Definition at line 200 of file __init__.py.

Variable Documentation

◆ CONF_CONDITION

string homeassistant.components.rainmachine.CONF_CONDITION = "condition"

Definition at line 69 of file __init__.py.

◆ CONF_DEWPOINT

string homeassistant.components.rainmachine.CONF_DEWPOINT = "dewpoint"

Definition at line 70 of file __init__.py.

◆ CONF_ET

string homeassistant.components.rainmachine.CONF_ET = "et"

Definition at line 71 of file __init__.py.

◆ CONF_MAXRH

string homeassistant.components.rainmachine.CONF_MAXRH = "maxrh"

Definition at line 72 of file __init__.py.

◆ CONF_MAXTEMP

string homeassistant.components.rainmachine.CONF_MAXTEMP = "maxtemp"

Definition at line 73 of file __init__.py.

◆ CONF_MINRH

string homeassistant.components.rainmachine.CONF_MINRH = "minrh"

Definition at line 74 of file __init__.py.

◆ CONF_MINTEMP

string homeassistant.components.rainmachine.CONF_MINTEMP = "mintemp"

Definition at line 75 of file __init__.py.

◆ CONF_PRESSURE

string homeassistant.components.rainmachine.CONF_PRESSURE = "pressure"

Definition at line 76 of file __init__.py.

◆ CONF_QPF

string homeassistant.components.rainmachine.CONF_QPF = "qpf"

Definition at line 77 of file __init__.py.

◆ CONF_RAIN

string homeassistant.components.rainmachine.CONF_RAIN = "rain"

Definition at line 78 of file __init__.py.

◆ CONF_SECONDS

string homeassistant.components.rainmachine.CONF_SECONDS = "seconds"

Definition at line 79 of file __init__.py.

◆ CONF_SOLARRAD

string homeassistant.components.rainmachine.CONF_SOLARRAD = "solarrad"

Definition at line 80 of file __init__.py.

◆ CONF_TEMPERATURE

string homeassistant.components.rainmachine.CONF_TEMPERATURE = "temperature"

Definition at line 81 of file __init__.py.

◆ CONF_TIMESTAMP

string homeassistant.components.rainmachine.CONF_TIMESTAMP = "timestamp"

Definition at line 82 of file __init__.py.

◆ CONF_UNITS

string homeassistant.components.rainmachine.CONF_UNITS = "units"

Definition at line 83 of file __init__.py.

◆ CONF_VALUE

string homeassistant.components.rainmachine.CONF_VALUE = "value"

Definition at line 84 of file __init__.py.

◆ CONF_WEATHER

string homeassistant.components.rainmachine.CONF_WEATHER = "weather"

Definition at line 85 of file __init__.py.

◆ CONF_WIND

string homeassistant.components.rainmachine.CONF_WIND = "wind"

Definition at line 86 of file __init__.py.

◆ COORDINATOR_UPDATE_INTERVAL_MAP

dictionary homeassistant.components.rainmachine.COORDINATOR_UPDATE_INTERVAL_MAP
Initial value:
1 = {
2  DATA_API_VERSIONS: timedelta(minutes=1),
3  DATA_MACHINE_FIRMWARE_UPDATE_STATUS: timedelta(seconds=15),
4  DATA_PROGRAMS: timedelta(seconds=30),
5  DATA_PROVISION_SETTINGS: timedelta(minutes=1),
6  DATA_RESTRICTIONS_CURRENT: timedelta(minutes=1),
7  DATA_RESTRICTIONS_UNIVERSAL: timedelta(minutes=1),
8  DATA_ZONES: timedelta(seconds=15),
9 }

Definition at line 158 of file __init__.py.

◆ CV_FLOW_METER_VALID_UNITS

dictionary homeassistant.components.rainmachine.CV_FLOW_METER_VALID_UNITS
Initial value:
1 = {
2  "clicks",
3  "gal",
4  "litre",
5  "m3",
6 }

Definition at line 89 of file __init__.py.

◆ CV_WX_DATA_VALID_PERCENTAGE

homeassistant.components.rainmachine.CV_WX_DATA_VALID_PERCENTAGE = vol.All(vol.Coerce(int), vol.Range(min=0, max=100))

Definition at line 97 of file __init__.py.

◆ CV_WX_DATA_VALID_PRESSURE

homeassistant.components.rainmachine.CV_WX_DATA_VALID_PRESSURE = vol.All(vol.Coerce(float), vol.Range(min=60.0, max=110.0))

Definition at line 101 of file __init__.py.

◆ CV_WX_DATA_VALID_RAIN_RANGE

homeassistant.components.rainmachine.CV_WX_DATA_VALID_RAIN_RANGE = vol.All(vol.Coerce(float), vol.Range(min=0.0, max=1000.0))

Definition at line 99 of file __init__.py.

◆ CV_WX_DATA_VALID_SOLARRAD

homeassistant.components.rainmachine.CV_WX_DATA_VALID_SOLARRAD = vol.All(vol.Coerce(float), vol.Range(min=0.0, max=5.0))

Definition at line 102 of file __init__.py.

◆ CV_WX_DATA_VALID_TEMP_RANGE

homeassistant.components.rainmachine.CV_WX_DATA_VALID_TEMP_RANGE = vol.All(vol.Coerce(float), vol.Range(min=-40.0, max=40.0))

Definition at line 98 of file __init__.py.

◆ CV_WX_DATA_VALID_WIND_SPEED

homeassistant.components.rainmachine.CV_WX_DATA_VALID_WIND_SPEED = vol.All(vol.Coerce(float), vol.Range(min=0.0, max=65.0))

Definition at line 100 of file __init__.py.

◆ DEFAULT_SSL

bool homeassistant.components.rainmachine.DEFAULT_SSL = True

Definition at line 57 of file __init__.py.

◆ PLATFORMS

list homeassistant.components.rainmachine.PLATFORMS
Initial value:
1 = [
2  Platform.BINARY_SENSOR,
3  Platform.BUTTON,
4  Platform.SELECT,
5  Platform.SENSOR,
6  Platform.SWITCH,
7  Platform.UPDATE,
8 ]

Definition at line 60 of file __init__.py.

◆ RainMachineConfigEntry

homeassistant.components.rainmachine.RainMachineConfigEntry

Definition at line 169 of file __init__.py.

◆ SERVICE_NAME_PAUSE_WATERING

string homeassistant.components.rainmachine.SERVICE_NAME_PAUSE_WATERING = "pause_watering"

Definition at line 104 of file __init__.py.

◆ SERVICE_NAME_PUSH_FLOW_METER_DATA

string homeassistant.components.rainmachine.SERVICE_NAME_PUSH_FLOW_METER_DATA = "push_flow_meter_data"

Definition at line 105 of file __init__.py.

◆ SERVICE_NAME_PUSH_WEATHER_DATA

string homeassistant.components.rainmachine.SERVICE_NAME_PUSH_WEATHER_DATA = "push_weather_data"

Definition at line 106 of file __init__.py.

◆ SERVICE_NAME_RESTRICT_WATERING

string homeassistant.components.rainmachine.SERVICE_NAME_RESTRICT_WATERING = "restrict_watering"

Definition at line 107 of file __init__.py.

◆ SERVICE_NAME_STOP_ALL

string homeassistant.components.rainmachine.SERVICE_NAME_STOP_ALL = "stop_all"

Definition at line 108 of file __init__.py.

◆ SERVICE_NAME_UNPAUSE_WATERING

string homeassistant.components.rainmachine.SERVICE_NAME_UNPAUSE_WATERING = "unpause_watering"

Definition at line 109 of file __init__.py.

◆ SERVICE_NAME_UNRESTRICT_WATERING

string homeassistant.components.rainmachine.SERVICE_NAME_UNRESTRICT_WATERING = "unrestrict_watering"

Definition at line 110 of file __init__.py.

◆ SERVICE_PAUSE_WATERING_SCHEMA

homeassistant.components.rainmachine.SERVICE_PAUSE_WATERING_SCHEMA
Initial value:
1 = SERVICE_SCHEMA.extend(
2  {
3  vol.Required(CONF_SECONDS): cv.positive_int,
4  }
5 )

Definition at line 118 of file __init__.py.

◆ SERVICE_PUSH_FLOW_METER_DATA_SCHEMA

homeassistant.components.rainmachine.SERVICE_PUSH_FLOW_METER_DATA_SCHEMA
Initial value:
1 = SERVICE_SCHEMA.extend(
2  {
3  vol.Required(CONF_VALUE): cv.positive_float,
4  vol.Optional(CONF_UNIT_OF_MEASUREMENT): vol.All(
5  cv.string, vol.In(CV_FLOW_METER_VALID_UNITS)
6  ),
7  }
8 )

Definition at line 124 of file __init__.py.

◆ SERVICE_PUSH_WEATHER_DATA_SCHEMA

homeassistant.components.rainmachine.SERVICE_PUSH_WEATHER_DATA_SCHEMA
Initial value:
1 = SERVICE_SCHEMA.extend(
2  {
3  vol.Optional(CONF_TIMESTAMP): cv.positive_float,
4  vol.Optional(CONF_MINTEMP): CV_WX_DATA_VALID_TEMP_RANGE,
5  vol.Optional(CONF_MAXTEMP): CV_WX_DATA_VALID_TEMP_RANGE,
6  vol.Optional(CONF_TEMPERATURE): CV_WX_DATA_VALID_TEMP_RANGE,
7  vol.Optional(CONF_WIND): CV_WX_DATA_VALID_WIND_SPEED,
8  vol.Optional(CONF_SOLARRAD): CV_WX_DATA_VALID_SOLARRAD,
9  vol.Optional(CONF_QPF): CV_WX_DATA_VALID_RAIN_RANGE,
10  vol.Optional(CONF_RAIN): CV_WX_DATA_VALID_RAIN_RANGE,
11  vol.Optional(CONF_ET): CV_WX_DATA_VALID_RAIN_RANGE,
12  vol.Optional(CONF_MINRH): CV_WX_DATA_VALID_PERCENTAGE,
13  vol.Optional(CONF_MAXRH): CV_WX_DATA_VALID_PERCENTAGE,
14  vol.Optional(CONF_CONDITION): cv.string,
15  vol.Optional(CONF_PRESSURE): CV_WX_DATA_VALID_PRESSURE,
16  vol.Optional(CONF_DEWPOINT): CV_WX_DATA_VALID_TEMP_RANGE,
17  }
18 )

Definition at line 133 of file __init__.py.

◆ SERVICE_RESTRICT_WATERING_SCHEMA

homeassistant.components.rainmachine.SERVICE_RESTRICT_WATERING_SCHEMA
Initial value:
1 = SERVICE_SCHEMA.extend(
2  {
3  vol.Required(CONF_DURATION): cv.time_period,
4  }
5 )

Definition at line 152 of file __init__.py.

◆ SERVICE_SCHEMA

homeassistant.components.rainmachine.SERVICE_SCHEMA
Initial value:
1 = vol.Schema(
2  {
3  vol.Required(CONF_DEVICE_ID): cv.string,
4  }
5 )

Definition at line 112 of file __init__.py.