Home Assistant Unofficial Reference 2024.12.1
const.py
Go to the documentation of this file.
1 """Constants for rachio."""
2 
3 DEFAULT_NAME = "Rachio"
4 
5 DOMAIN = "rachio"
6 
7 CONF_CUSTOM_URL = "hass_url_override"
8 # Manual run length
9 CONF_MANUAL_RUN_MINS = "manual_run_mins"
10 DEFAULT_MANUAL_RUN_MINS = 10
11 
12 # Slope constants
13 SLOPE_FLAT = "ZERO_THREE"
14 SLOPE_SLIGHT = "FOUR_SIX"
15 SLOPE_MODERATE = "SEVEN_TWELVE"
16 SLOPE_STEEP = "OVER_TWELVE"
17 
18 # Keys used in the API JSON
19 KEY_DEVICE_ID = "deviceId"
20 KEY_IMAGE_URL = "imageUrl"
21 KEY_DEVICES = "devices"
22 KEY_ENABLED = "enabled"
23 KEY_EXTERNAL_ID = "externalId"
24 KEY_ID = "id"
25 KEY_NAME = "name"
26 KEY_MODEL = "model"
27 KEY_ON = "on"
28 KEY_DURATION = "totalDuration"
29 KEY_DURATION_MINUTES = "duration"
30 KEY_RAIN_DELAY = "rainDelayExpirationDate"
31 KEY_RAIN_DELAY_END = "endTime"
32 KEY_RAIN_SENSOR_TRIPPED = "rainSensorTripped"
33 KEY_STATUS = "status"
34 KEY_SUBTYPE = "subType"
35 KEY_SUMMARY = "summary"
36 KEY_SERIAL_NUMBER = "serialNumber"
37 KEY_MAC_ADDRESS = "macAddress"
38 KEY_TYPE = "type"
39 KEY_URL = "url"
40 KEY_USERNAME = "username"
41 KEY_ZONE_ID = "zoneId"
42 KEY_ZONE_NUMBER = "zoneNumber"
43 KEY_ZONES = "zones"
44 KEY_SCHEDULES = "scheduleRules"
45 KEY_FLEX_SCHEDULES = "flexScheduleRules"
46 KEY_SCHEDULE_ID = "scheduleId"
47 KEY_CUSTOM_SHADE = "customShade"
48 KEY_CUSTOM_CROP = "customCrop"
49 KEY_CUSTOM_SLOPE = "customSlope"
50 
51 # Smart Hose timer
52 KEY_BASE_STATIONS = "baseStations"
53 KEY_VALVES = "valves"
54 KEY_VALVE_NAME = "valveName"
55 KEY_REPORTED_STATE = "reportedState"
56 KEY_STATE = "state"
57 KEY_CONNECTED = "connected"
58 KEY_CURRENT_STATUS = "lastWateringAction"
59 KEY_DETECT_FLOW = "detectFlow"
60 KEY_BATTERY_STATUS = "batteryStatus"
61 KEY_LOW = "LOW"
62 KEY_REPLACE = "REPLACE"
63 KEY_REASON = "reason"
64 KEY_DEFAULT_RUNTIME = "defaultRuntimeSeconds"
65 KEY_DURATION_SECONDS = "durationSeconds"
66 KEY_FLOW_DETECTED = "flowDetected"
67 KEY_START_TIME = "start"
68 KEY_DAY_VIEWS = "valveDayViews"
69 KEY_RUN_SUMMARIES = "valveRunSummaries"
70 KEY_PROGRAM_ID = "programId"
71 KEY_PROGRAM_NAME = "programName"
72 KEY_PROGRAM_RUN_SUMMARIES = "valveProgramRunSummaries"
73 KEY_TOTAL_RUN_DURATION = "totalRunDurationSeconds"
74 KEY_ADDRESS = "address"
75 KEY_LOCALITY = "locality"
76 KEY_SKIP = "skip"
77 KEY_SKIPPABLE = "skippable"
78 
79 STATUS_ONLINE = "ONLINE"
80 
81 MODEL_GENERATION_1 = "GENERATION1"
82 SCHEDULE_TYPE_FIXED = "FIXED"
83 SCHEDULE_TYPE_FLEX = "FLEX"
84 SERVICE_PAUSE_WATERING = "pause_watering"
85 SERVICE_RESUME_WATERING = "resume_watering"
86 SERVICE_STOP_WATERING = "stop_watering"
87 SERVICE_SET_ZONE_MOISTURE = "set_zone_moisture_percent"
88 SERVICE_START_WATERING = "start_watering"
89 SERVICE_START_MULTIPLE_ZONES = "start_multiple_zone_schedule"
90 
91 SIGNAL_RACHIO_UPDATE = f"{DOMAIN}_update"
92 SIGNAL_RACHIO_CONTROLLER_UPDATE = f"{SIGNAL_RACHIO_UPDATE}_controller"
93 SIGNAL_RACHIO_RAIN_DELAY_UPDATE = f"{SIGNAL_RACHIO_UPDATE}_rain_delay"
94 SIGNAL_RACHIO_RAIN_SENSOR_UPDATE = f"{SIGNAL_RACHIO_UPDATE}_rain_sensor"
95 SIGNAL_RACHIO_ZONE_UPDATE = f"{SIGNAL_RACHIO_UPDATE}_zone"
96 SIGNAL_RACHIO_SCHEDULE_UPDATE = f"{SIGNAL_RACHIO_UPDATE}_schedule"
97 
98 CONF_CLOUDHOOK_URL = "cloudhook_url"
99 
100 # Webhook callbacks
101 LISTEN_EVENT_TYPES = [
102  "DEVICE_STATUS_EVENT",
103  "ZONE_STATUS_EVENT",
104  "RAIN_DELAY_EVENT",
105  "RAIN_SENSOR_DETECTION_EVENT",
106  "SCHEDULE_STATUS_EVENT",
107 ]
108 WEBHOOK_CONST_ID = "homeassistant.rachio:"