pypetkitapi 1.16.0__tar.gz → 1.16.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/PKG-INFO +1 -1
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/__init__.py +1 -1
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/litter_container.py +38 -11
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pyproject.toml +2 -2
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/LICENSE +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/README.md +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/bluetooth.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/client.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/command.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/const.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/containers.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/exceptions.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/feeder_container.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/media.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/purifier_container.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/py.typed +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/schedule_container.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/utils.py +0 -0
- {pypetkitapi-1.16.0 → pypetkitapi-1.16.1}/pypetkitapi/water_fountain_container.py +0 -0
@@ -25,8 +25,8 @@ from pypetkitapi.purifier_container import Purifier
|
|
25
25
|
|
26
26
|
|
27
27
|
class SettingsLitter(BaseModel):
|
28
|
-
"""
|
29
|
-
->
|
28
|
+
"""Sub-dataclass for settings of Litter.
|
29
|
+
Litter -> settings
|
30
30
|
"""
|
31
31
|
|
32
32
|
auto_interval_min: int | None = Field(None, alias="autoIntervalMin")
|
@@ -106,7 +106,9 @@ class SettingsLitter(BaseModel):
|
|
106
106
|
|
107
107
|
|
108
108
|
class WorkState(BaseModel):
|
109
|
-
"""
|
109
|
+
"""Sub-Sub-dataclass for state of Litter.
|
110
|
+
Litter -> state -> [STATE] -> WorkState
|
111
|
+
"""
|
110
112
|
|
111
113
|
safe_warn: int | None = Field(None, alias="safeWarn")
|
112
114
|
stop_time: int | None = Field(None, alias="stopTime")
|
@@ -117,8 +119,8 @@ class WorkState(BaseModel):
|
|
117
119
|
|
118
120
|
|
119
121
|
class StateLitter(BaseModel):
|
120
|
-
"""
|
121
|
-
->
|
122
|
+
"""Sub-dataclass for state of Litter.
|
123
|
+
Litter -> state
|
122
124
|
"""
|
123
125
|
|
124
126
|
bagging_state: int | None = Field(None, alias="baggingState")
|
@@ -139,7 +141,7 @@ class StateLitter(BaseModel):
|
|
139
141
|
liquid_empty: bool | None = Field(None, alias="liquidEmpty")
|
140
142
|
liquid_lack: bool | None = Field(None, alias="liquidLack")
|
141
143
|
liquid_reset: int | None = Field(None, alias="liquidReset")
|
142
|
-
light_state:
|
144
|
+
light_state: WorkState | None = Field(None, alias="lightState")
|
143
145
|
low_power: bool | None = Field(None, alias="lowPower")
|
144
146
|
offline_time: int | None = Field(None, alias="offlineTime")
|
145
147
|
ota: int | None = None
|
@@ -176,7 +178,9 @@ class StateLitter(BaseModel):
|
|
176
178
|
|
177
179
|
|
178
180
|
class ContentSC(BaseModel):
|
179
|
-
"""
|
181
|
+
"""Sub-Sub-class of LitterRecord.
|
182
|
+
LitterRecord -> subContent -> content
|
183
|
+
"""
|
180
184
|
|
181
185
|
box: int | None = None
|
182
186
|
box_full: bool | None = Field(None, alias="boxFull")
|
@@ -191,18 +195,30 @@ class ContentSC(BaseModel):
|
|
191
195
|
|
192
196
|
|
193
197
|
class LRContent(BaseModel):
|
194
|
-
"""Dataclass for
|
198
|
+
"""Dataclass for sub-content of LitterRecord.
|
199
|
+
LitterRecord -> ShitPictures
|
200
|
+
"""
|
195
201
|
|
202
|
+
area: int | None = None
|
196
203
|
auto_clear: int | None = Field(None, alias="autoClear")
|
204
|
+
clear_over_tips: int | None = Field(None, alias="clearOverTips")
|
205
|
+
count: int | None = None
|
197
206
|
interval: int | None = None
|
207
|
+
mark: int | None = None
|
208
|
+
media: int | None = None
|
209
|
+
pet_out_tips: int | None = Field(None, alias="petOutTips")
|
198
210
|
pet_weight: int | None = Field(None, alias="petWeight")
|
211
|
+
start_time: int | None = Field(None, alias="startTime")
|
199
212
|
time_in: int | None = Field(None, alias="timeIn")
|
200
213
|
time_out: int | None = Field(None, alias="timeOut")
|
201
|
-
|
214
|
+
toilet_detection: int | None = Field(None, alias="toiletDetection")
|
215
|
+
upload: int | None = None
|
202
216
|
|
203
217
|
|
204
218
|
class LRSubContent(BaseModel):
|
205
|
-
"""
|
219
|
+
"""Subclass of LitterRecord.
|
220
|
+
LitterRecord -> subContent
|
221
|
+
"""
|
206
222
|
|
207
223
|
aes_key: str | None = Field(None, alias="aesKey")
|
208
224
|
content: ContentSC | None = None
|
@@ -226,9 +242,19 @@ class LRSubContent(BaseModel):
|
|
226
242
|
user_id: str | None = Field(None, alias="userId")
|
227
243
|
|
228
244
|
|
245
|
+
class ShitPictures(BaseModel):
|
246
|
+
"""Dataclass for sub-content of LitterRecord.
|
247
|
+
LitterRecord -> ShitPictures
|
248
|
+
"""
|
249
|
+
|
250
|
+
pic_id: str | None = Field(None, alias="picId")
|
251
|
+
shit_aes_key: str | None = Field(None, alias="shitAesKey")
|
252
|
+
shit_picture: str | None = Field(None, alias="shitPicture")
|
253
|
+
|
254
|
+
|
229
255
|
class LitterRecord(BaseModel):
|
230
256
|
"""Dataclass for feeder record data.
|
231
|
-
Litter records
|
257
|
+
Litter records (Main class)
|
232
258
|
"""
|
233
259
|
|
234
260
|
data_type: ClassVar[str] = DEVICE_RECORDS
|
@@ -250,6 +276,7 @@ class LitterRecord(BaseModel):
|
|
250
276
|
pet_name: str | None = Field(None, alias="petName")
|
251
277
|
preview: str | None = None
|
252
278
|
related_event: str | None = Field(None, alias="relatedEvent")
|
279
|
+
shit_pictures: ShitPictures | None = None
|
253
280
|
storage_space: int | None = Field(None, alias="storageSpace")
|
254
281
|
sub_content: list[LRSubContent] | None = Field(None, alias="subContent")
|
255
282
|
timestamp: int | None = None
|
@@ -186,7 +186,7 @@ build-backend = "poetry.core.masonry.api"
|
|
186
186
|
|
187
187
|
[tool.poetry]
|
188
188
|
name = "pypetkitapi"
|
189
|
-
version = "1.16.
|
189
|
+
version = "1.16.1"
|
190
190
|
description = "Python client for PetKit API"
|
191
191
|
authors = ["Jezza34000 <info@mail.com>"]
|
192
192
|
readme = "README.md"
|
@@ -208,7 +208,7 @@ ruff = "^0.8.1"
|
|
208
208
|
types-aiofiles = "^24.1.0.20240626"
|
209
209
|
|
210
210
|
[tool.bumpver]
|
211
|
-
current_version = "1.16.
|
211
|
+
current_version = "1.16.1"
|
212
212
|
version_pattern = "MAJOR.MINOR.PATCH"
|
213
213
|
commit_message = "bump version {old_version} -> {new_version}"
|
214
214
|
tag_message = "{new_version}"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|