pypetkitapi 1.16.0__tar.gz → 1.16.2__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pypetkitapi
3
- Version: 1.16.0
3
+ Version: 1.16.2
4
4
  Summary: Python client for PetKit API
5
5
  License: MIT
6
6
  Author: Jezza34000
@@ -51,7 +51,7 @@ from .media import DownloadDecryptMedia, MediaCloud, MediaFile, MediaManager
51
51
  from .purifier_container import Purifier
52
52
  from .water_fountain_container import WaterFountain
53
53
 
54
- __version__ = "1.16.0"
54
+ __version__ = "1.16.2"
55
55
 
56
56
  __all__ = [
57
57
  "CTW3",
@@ -25,8 +25,8 @@ from pypetkitapi.purifier_container import Purifier
25
25
 
26
26
 
27
27
  class SettingsLitter(BaseModel):
28
- """Dataclass for settings.
29
- -> LitterData subclass.
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
- """Dataclass for work state data."""
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
- """Dataclass for state.
121
- -> LitterData subclass.
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: dict | None = Field(None, alias="lightState")
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
- """Dataclass for content data."""
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,31 @@ class ContentSC(BaseModel):
191
195
 
192
196
 
193
197
  class LRContent(BaseModel):
194
- """Dataclass for pet data."""
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")
214
+ toilet_detection: int | None = Field(None, alias="toiletDetection")
215
+ upload: int | None = None
201
216
  error: int | None = None
202
217
 
203
218
 
204
219
  class LRSubContent(BaseModel):
205
- """Dataclass for sub-content data."""
220
+ """Subclass of LitterRecord.
221
+ LitterRecord -> subContent
222
+ """
206
223
 
207
224
  aes_key: str | None = Field(None, alias="aesKey")
208
225
  content: ContentSC | None = None
@@ -226,9 +243,19 @@ class LRSubContent(BaseModel):
226
243
  user_id: str | None = Field(None, alias="userId")
227
244
 
228
245
 
246
+ class ShitPictures(BaseModel):
247
+ """Dataclass for sub-content of LitterRecord.
248
+ LitterRecord -> ShitPictures
249
+ """
250
+
251
+ pic_id: str | None = Field(None, alias="picId")
252
+ shit_aes_key: str | None = Field(None, alias="shitAesKey")
253
+ shit_picture: str | None = Field(None, alias="shitPicture")
254
+
255
+
229
256
  class LitterRecord(BaseModel):
230
257
  """Dataclass for feeder record data.
231
- Litter records
258
+ Litter records (Main class)
232
259
  """
233
260
 
234
261
  data_type: ClassVar[str] = DEVICE_RECORDS
@@ -250,6 +277,7 @@ class LitterRecord(BaseModel):
250
277
  pet_name: str | None = Field(None, alias="petName")
251
278
  preview: str | None = None
252
279
  related_event: str | None = Field(None, alias="relatedEvent")
280
+ shit_pictures: ShitPictures | None = None
253
281
  storage_space: int | None = Field(None, alias="storageSpace")
254
282
  sub_content: list[LRSubContent] | None = Field(None, alias="subContent")
255
283
  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.0"
189
+ version = "1.16.2"
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.0"
211
+ current_version = "1.16.2"
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