pypetkitapi 0.5.3__tar.gz → 0.5.4__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.1
2
2
  Name: pypetkitapi
3
- Version: 0.5.3
3
+ Version: 0.5.4
4
4
  Summary: Python client for PetKit API
5
5
  Home-page: https://github.com/Jezza34000/pypetkit
6
6
  License: MIT
@@ -280,7 +280,7 @@ class PetKitClient:
280
280
  self,
281
281
  device_id: int,
282
282
  action: StrEnum,
283
- setting: dict | StrEnum | None = None,
283
+ setting: dict | None = None,
284
284
  ) -> None:
285
285
  """Control the device using the PetKit API."""
286
286
  device = self.device_list.get(device_id)
@@ -333,7 +333,7 @@ class PetKitClient:
333
333
  headers=headers,
334
334
  )
335
335
  if res in (SUCCESS_KEY, RES_KEY):
336
- # TODO : Manage to get the response from manul feeding
336
+ # TODO : Manage to get the response from manual feeding
337
337
  _LOGGER.info("Command executed successfully")
338
338
  else:
339
339
  _LOGGER.error("Command execution failed")
@@ -3,7 +3,7 @@
3
3
  from collections.abc import Callable
4
4
  from dataclasses import dataclass, field
5
5
  import datetime
6
- from enum import StrEnum
6
+ from enum import IntEnum, StrEnum
7
7
  import json
8
8
 
9
9
  from pypetkitapi.const import (
@@ -62,27 +62,22 @@ class FountainCommand(StrEnum):
62
62
  CONTROL_DEVICE = "control_device"
63
63
 
64
64
 
65
- class LitterBoxCommand(StrEnum):
65
+ class LBCommand(IntEnum):
66
66
  """LitterBoxCommand"""
67
67
 
68
- LIGHT_ON = "light_on"
69
- ODOR_REMOVAL = "start_odor"
70
- PAUSE_CLEAN = "stop_clean"
71
- POWER = "power"
72
- RESET_DEODOR = "reset_deodorizer"
73
- RESUME_CLEAN = "continue_clean"
74
- START_CLEAN = "start_clean"
75
- START_MAINTENANCE = "start_maintenance"
76
- EXIT_MAINTENANCE = "exit_maintenance"
77
- PAUSE_MAINTENANCE_EXIT = "pause_maintenance_exit"
78
- RESUME_MAINTENANCE_EXIT = "resume_maintenance_exit"
79
- DUMP_LITTER = "dump_litter"
80
- PAUSE_LITTER_DUMP = "pause_litter_dump"
81
- RESUME_LITTER_DUMP = "resume_litter_dump"
82
- RESET_MAX_DEODOR = "reset_max_deodorizer"
83
-
84
-
85
- class LitterBoxCommandKey(StrEnum):
68
+ CLEANING = 0
69
+ DUMPING = 1
70
+ ODOR_REMOVAL = 2
71
+ RESETTING = 3
72
+ LEVELING = 4
73
+ CALIBRATING = 5
74
+ RESET_DEODOR = 6
75
+ LIGHT = 7
76
+ RESET_MAX_DEODOR = 8
77
+ MAINTENANCE = 9
78
+
79
+
80
+ class LBAction(StrEnum):
86
81
  """LitterBoxCommandKey"""
87
82
 
88
83
  CONTINUE = "continue_action"
@@ -92,70 +87,6 @@ class LitterBoxCommandKey(StrEnum):
92
87
  STOP = "stop_action"
93
88
 
94
89
 
95
- class LitterBoxCommandType(StrEnum):
96
- """LitterBoxCommandType"""
97
-
98
- CONTINUE = "continue"
99
- END = "end"
100
- POWER = "power"
101
- START = "start"
102
- STOP = "stop"
103
-
104
-
105
- LB_CMD_TO_KEY = {
106
- LitterBoxCommand.LIGHT_ON: LitterBoxCommandKey.START,
107
- LitterBoxCommand.POWER: LitterBoxCommandKey.POWER,
108
- LitterBoxCommand.START_CLEAN: LitterBoxCommandKey.START,
109
- LitterBoxCommand.PAUSE_CLEAN: LitterBoxCommandKey.STOP,
110
- LitterBoxCommand.RESUME_CLEAN: LitterBoxCommandKey.CONTINUE,
111
- LitterBoxCommand.ODOR_REMOVAL: LitterBoxCommandKey.START,
112
- LitterBoxCommand.RESET_DEODOR: LitterBoxCommandKey.START,
113
- LitterBoxCommand.START_MAINTENANCE: LitterBoxCommandKey.START,
114
- LitterBoxCommand.EXIT_MAINTENANCE: LitterBoxCommandKey.END,
115
- LitterBoxCommand.PAUSE_MAINTENANCE_EXIT: LitterBoxCommandKey.STOP,
116
- LitterBoxCommand.RESUME_MAINTENANCE_EXIT: LitterBoxCommandKey.CONTINUE,
117
- LitterBoxCommand.DUMP_LITTER: LitterBoxCommandKey.START,
118
- LitterBoxCommand.PAUSE_LITTER_DUMP: LitterBoxCommandKey.STOP,
119
- LitterBoxCommand.RESUME_LITTER_DUMP: LitterBoxCommandKey.CONTINUE,
120
- LitterBoxCommand.RESET_MAX_DEODOR: LitterBoxCommandKey.START,
121
- }
122
-
123
- LB_CMD_TO_TYPE = {
124
- LitterBoxCommand.LIGHT_ON: LitterBoxCommandType.START,
125
- LitterBoxCommand.POWER: LitterBoxCommandType.POWER,
126
- LitterBoxCommand.START_CLEAN: LitterBoxCommandType.START,
127
- LitterBoxCommand.PAUSE_CLEAN: LitterBoxCommandType.STOP,
128
- LitterBoxCommand.RESUME_CLEAN: LitterBoxCommandType.CONTINUE,
129
- LitterBoxCommand.ODOR_REMOVAL: LitterBoxCommandType.START,
130
- LitterBoxCommand.RESET_DEODOR: LitterBoxCommandType.START,
131
- LitterBoxCommand.START_MAINTENANCE: LitterBoxCommandType.START,
132
- LitterBoxCommand.EXIT_MAINTENANCE: LitterBoxCommandType.END,
133
- LitterBoxCommand.PAUSE_MAINTENANCE_EXIT: LitterBoxCommandType.STOP,
134
- LitterBoxCommand.RESUME_MAINTENANCE_EXIT: LitterBoxCommandType.CONTINUE,
135
- LitterBoxCommand.DUMP_LITTER: LitterBoxCommandType.START,
136
- LitterBoxCommand.PAUSE_LITTER_DUMP: LitterBoxCommandType.STOP,
137
- LitterBoxCommand.RESUME_LITTER_DUMP: LitterBoxCommandType.CONTINUE,
138
- LitterBoxCommand.RESET_MAX_DEODOR: LitterBoxCommandType.START,
139
- }
140
-
141
- LB_CMD_TO_VALUE = {
142
- LitterBoxCommand.LIGHT_ON: 7,
143
- LitterBoxCommand.START_CLEAN: 0,
144
- LitterBoxCommand.PAUSE_CLEAN: 0,
145
- LitterBoxCommand.RESUME_CLEAN: 0,
146
- LitterBoxCommand.ODOR_REMOVAL: 2,
147
- LitterBoxCommand.RESET_DEODOR: 6,
148
- LitterBoxCommand.START_MAINTENANCE: 9,
149
- LitterBoxCommand.EXIT_MAINTENANCE: 9,
150
- LitterBoxCommand.PAUSE_MAINTENANCE_EXIT: 9,
151
- LitterBoxCommand.RESUME_MAINTENANCE_EXIT: 9,
152
- LitterBoxCommand.DUMP_LITTER: 1,
153
- LitterBoxCommand.PAUSE_LITTER_DUMP: 1,
154
- LitterBoxCommand.RESUME_LITTER_DUMP: 1,
155
- LitterBoxCommand.RESET_MAX_DEODOR: 8,
156
- }
157
-
158
-
159
90
  class FountainAction(StrEnum):
160
91
  """Fountain Action"""
161
92
 
@@ -317,8 +248,8 @@ ACTIONS_MAP = {
317
248
  endpoint=PetkitEndpoint.CONTROL_DEVICE,
318
249
  params=lambda device, command: {
319
250
  "id": device.id,
320
- "kv": json.dumps({LB_CMD_TO_KEY[command]: LB_CMD_TO_VALUE[command]}),
321
- "type": LB_CMD_TO_TYPE[command],
251
+ "kv": json.dumps(command),
252
+ "type": list(command.keys())[0].split("_")[0],
322
253
  },
323
254
  supported_device=[T3, T4, T5, T6],
324
255
  ),
@@ -187,7 +187,7 @@ build-backend = "poetry.core.masonry.api"
187
187
 
188
188
  [tool.poetry]
189
189
  name = "pypetkitapi"
190
- version = "0.5.3"
190
+ version = "0.5.4"
191
191
  description = "Python client for PetKit API"
192
192
  authors = ["Jezza34000 <info@mail.com>"]
193
193
  readme = "README.md"
@@ -204,7 +204,7 @@ black = "^24.10.0"
204
204
  ruff = "^0.8.1"
205
205
 
206
206
  [tool.bumpver]
207
- current_version = "0.5.3"
207
+ current_version = "0.5.4"
208
208
  version_pattern = "MAJOR.MINOR.PATCH"
209
209
  commit_message = "bump version {old_version} -> {new_version}"
210
210
  tag_message = "{new_version}"
File without changes
File without changes