-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathconst.py
More file actions
190 lines (155 loc) · 9.14 KB
/
const.py
File metadata and controls
190 lines (155 loc) · 9.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
"""
This module contains constants used for configuring and interacting with the Thermia Online API.
Constants:
THERMIA_CONFIG_URL (str): URL for Thermia configuration.
THERMIA_INSTALLATION_PATH (str): Path for Thermia installations.
Azure AD Configuration:
THERMIA_AZURE_AUTH_URL (str): URL for Azure AD authentication.
THERMIA_AZURE_AUTH_CLIENT_ID_AND_SCOPE (str): Client ID and scope for Azure AD authentication.
THERMIA_AZURE_AUTH_REDIRECT_URI (str): Redirect URI for Azure AD authentication.
Register Groups:
REG_GROUP_TEMPERATURES (str): Register group for temperatures.
REG_GROUP_OPERATIONAL_STATUS (str): Register group for operational status.
REG_GROUP_OPERATIONAL_TIME (str): Register group for operational time.
REG_GROUP_OPERATIONAL_OPERATION (str): Register group for operational operation.
REG_GROUP_HOT_WATER (str): Register group for hot water.
Temperature Registers:
REG_OUTDOOR_TEMPERATURE (str): Register for outdoor temperature (not used).
REG_OPER_DATA_OUTDOOR_TEMP_MA_SA (str): Register for operational data outdoor temperature (not used).
REG_INDOOR_TEMPERATURE (str): Register for indoor temperature.
REG_SUPPLY_LINE (str): Register for supply line temperature.
REG_HOT_WATER_TEMPERATURE (str): Register for hot water temperature.
REG_BRINE_OUT (str): Register for brine out temperature.
REG_BRINE_IN (str): Register for brine in temperature.
REG_OPER_DATA_BUFFER_TANK (str): Register for operational data buffer tank temperature.
Temperature Registers ("classic" specific):
REG_RETURN_LINE (str): Register for return line temperature.
REG_DESIRED_SUPPLY_LINE (str): Register for desired supply line temperature.
REG_OPER_DATA_SUPPLY_MA_SA (str): Register for operational data supply MA SA temperature.
REG_DESIRED_SUPPLY_LINE_TEMP (str): Register for desired supply line temperature.
REG_DESIRED_INDOOR_TEMPERATURE (str): Register for desired indoor temperature.
Temperature Registers ("genesis" specific):
REG_OPER_DATA_RETURN (str): Register for operational data return temperature.
REG_DESIRED_SYS_SUPPLY_LINE_TEMP (str): Register for desired system supply line temperature.
REG_COOL_SENSOR_TANK (str): Register for cool sensor tank temperature.
REG_COOL_SENSOR_SUPPLY (str): Register for cool sensor supply temperature.
REG_ACTUAL_POOL_TEMP (str): Register for actual pool temperature.
Operational Operation Registers:
REG_OPERATIONMODE (str): Register for operation mode.
Operational Status Registers:
REG_OPERATIONAL_STATUS_PRIO1 (str): Register for operational status priority 1.
COMP_STATUS (str): Register for compressor status (Diplomat heat pumps).
COMP_STATUS_ATEC (str): Register for compressor status (ATEC heat pumps).
COMP_STATUS_ITEC (str): Register for compressor status (ITEC heat pumps).
REG_OPERATIONAL_STATUS_PRIORITY_BITMASK (str): Register for operational status priority bitmask (Atlas heat pumps).
REG_INTEGRAL_LSD (str): Register for integral LSD.
REG_PID (str): Register for PID.
COMP_POWER_STATUS (str): Register for compressor power status.
Hot Water Registers:
REG_HOT_WATER_STATUS (str): Register for hot water status.
REG__HOT_WATER_BOOST (str): Register for hot water boost.
Operational Time Registers:
REG_OPER_TIME_IMM1 (str): Register for operational time of auxiliary heater 1.
REG_OPER_TIME_IMM2 (str): Register for operational time of auxiliary heater 2.
REG_OPER_TIME_IMM3 (str): Register for operational time of auxiliary heater 3.
REG_OPER_TIME_COMPRESSOR (str): Register for operational time of compressor.
REG_OPER_TIME_HEATING (str): Register for operational time of heating.
REG_OPER_TIME_HOT_WATER (str): Register for operational time of hot water.
Other:
DATETIME_FORMAT (str): Date and time format commonly used in the API.
Calendar Functions:
CAL_FUNCTION_REDUCED_HEATING_EFFECT (str): Calendar function for reduced heating effect.
CAL_FUNCTION_HOT_WATER_BLOCK (str): Calendar function for hot water block.
CAL_FUNCTION_SILENT_MODE (str): Calendar function for silent mode.
CAL_FUNCTION_EVU_MODE (str): Calendar function for EVU mode.
"""
###############################################################################
# General configuration
###############################################################################
THERMIA_CONFIG_URL = "https://online.thermia.se/api/configuration"
THERMIA_INSTALLATION_PATH = "/api/v1/Registers/Installations/"
###############################################################################
# Azure AD configuration
###############################################################################
THERMIA_AZURE_AUTH_URL = "https://thermialogin.b2clogin.com/thermialogin.onmicrosoft.com/b2c_1a_signuporsigninonline"
THERMIA_AZURE_AUTH_CLIENT_ID_AND_SCOPE = "09ea4903-9e95-45fe-ae1f-e3b7d32fa385"
THERMIA_AZURE_AUTH_REDIRECT_URI = "https://online.thermia.se/login"
###############################################################################
# Register groups
###############################################################################
REG_GROUP_TEMPERATURES = "REG_GROUP_TEMPERATURES"
REG_GROUP_OPERATIONAL_STATUS = "REG_GROUP_OPERATIONAL_STATUS"
REG_GROUP_OPERATIONAL_TIME = "REG_GROUP_OPERATIONAL_TIME"
REG_GROUP_OPERATIONAL_OPERATION = "REG_GROUP_OPERATIONAL_OPERATION"
REG_GROUP_HOT_WATER = "REG_GROUP_HOT_WATER"
###############################################################################
# Temperature registers
###############################################################################
REG_OUTDOOR_TEMPERATURE = "REG_OUTDOOR_TEMPERATURE" # Not used
REG_OPER_DATA_OUTDOOR_TEMP_MA_SA = "REG_OPER_DATA_OUTDOOR_TEMP_MA_SA" # Not used
REG_INDOOR_TEMPERATURE = "REG_INDOOR_TEMPERATURE"
REG_SUPPLY_LINE = "REG_SUPPLY_LINE"
REG_HOT_WATER_TEMPERATURE = "REG_HOT_WATER_TEMPERATURE"
REG_BRINE_OUT = "REG_BRINE_OUT"
REG_BRINE_IN = "REG_BRINE_IN"
REG_OPER_DATA_BUFFER_TANK = "REG_OPER_DATA_BUFFER_TANK"
###############################################################################
# Temperature registers ("classic" specific)
###############################################################################
REG_RETURN_LINE = "REG_RETURN_LINE"
REG_DESIRED_SUPPLY_LINE = "REG_DESIRED_SUPPLY_LINE"
REG_OPER_DATA_SUPPLY_MA_SA = "REG_OPER_DATA_SUPPLY_MA_SA"
REG_DESIRED_SUPPLY_LINE_TEMP = "REG_DESIRED_SUPPLY_LINE_TEMP"
REG_DESIRED_INDOOR_TEMPERATURE = "REG_DESIRED_INDOOR_TEMPERATURE"
###############################################################################
# Temperature registers ("genesis" specific)
###############################################################################
REG_OPER_DATA_RETURN = "REG_OPER_DATA_RETURN"
REG_DESIRED_SYS_SUPPLY_LINE_TEMP = "REG_DESIRED_SYS_SUPPLY_LINE_TEMP"
REG_COOL_SENSOR_TANK = "REG_COOL_SENSOR_TANK"
REG_COOL_SENSOR_SUPPLY = "REG_COOL_SENSOR_SUPPLY"
REG_ACTUAL_POOL_TEMP = "REG_ACTUAL_POOL_TEMP"
###############################################################################
# Operational operation registers
###############################################################################
REG_OPERATIONMODE = "REG_OPERATIONMODE"
###############################################################################
# Operational status registers
###############################################################################
REG_OPERATIONAL_STATUS_PRIO1 = (
"REG_OPERATIONAL_STATUS_PRIO1" # Operational status for most heat pumps
)
COMP_STATUS = "COMP_STATUS" # Operational status for Diplomat heat pumps
COMP_STATUS_ATEC = "COMP_STATUS_ATEC" # Operational status for ATEC heat pumps
COMP_STATUS_ITEC = "COMP_STATUS_ITEC" # Operational status for ITEC heat pumps
REG_OPERATIONAL_STATUS_PRIORITY_BITMASK = (
"REG_OPERATIONAL_STATUS_PRIORITY_BITMASK" # Operational status for Atlas heat pumps
)
REG_INTEGRAL_LSD = "REG_INTEGRAL_LSD"
REG_PID = "REG_PID"
COMP_POWER_STATUS = "COMP_POWER_STATUS"
###############################################################################
# Hot water registers
###############################################################################
REG_HOT_WATER_STATUS = "REG_HOT_WATER_STATUS"
REG__HOT_WATER_BOOST = "REG__HOT_WATER_BOOST"
###############################################################################
# Operational time registers
###############################################################################
REG_OPER_TIME_IMM1 = "REG_OPER_TIME_IMM1" # Auxiliary heater 1
REG_OPER_TIME_IMM2 = "REG_OPER_TIME_IMM2" # Auxiliary heater 2
REG_OPER_TIME_IMM3 = "REG_OPER_TIME_IMM3" # Auxiliary heater 3
REG_OPER_TIME_COMPRESSOR = "REG_OPER_TIME_COMPRESSOR"
REG_OPER_TIME_HEATING = "REG_OPER_TIME_HEATING"
REG_OPER_TIME_HOT_WATER = "REG_OPER_TIME_HOT_WATER"
###############################################################################
# Other
###############################################################################
DATETIME_FORMAT = "%Y-%m-%dT%H:%M:%S"
###############################################################################
# calendar functions
###############################################################################
CAL_FUNCTION_REDUCED_HEATING_EFFECT = "15001"
CAL_FUNCTION_HOT_WATER_BLOCK= "15002"
CAL_FUNCTION_SILENT_MODE = "15003"
CAL_FUNCTION_EVU_MODE = "15004"