layrz-sdk 3.1.41__py3-none-any.whl → 3.1.42__py3-none-any.whl

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.

Potentially problematic release.


This version of layrz-sdk might be problematic. Click here for more details.

@@ -47,7 +47,7 @@ from .charts.table_row import TableRow
47
47
  from .charts.timeline_chart import TimelineChart
48
48
  from .charts.timeline_serie import TimelineSerie
49
49
  from .charts.timeline_serie_item import TimelineSerieItem
50
- from .checkpoint import Checkpoint
50
+ from .checkpoint import Checkpoint, CheckpointOperationMode
51
51
  from .command_series_ticket import CommandSeriesTicket, CommandSeriesTicketStatus
52
52
  from .comment import Comment
53
53
  from .custom_field import CustomField
@@ -190,4 +190,5 @@ __all__ = [
190
190
  'CommandSeriesTicket',
191
191
  'CommandSeriesTicketStatus',
192
192
  'Preset',
193
+ 'CheckpointOperationMode',
193
194
  ]
@@ -4,14 +4,51 @@ from datetime import datetime
4
4
 
5
5
  from pydantic import BaseModel, Field
6
6
 
7
- from .waypoint import Waypoint
7
+ from layrz_sdk.backwards import StrEnum
8
+
9
+ from .waypoint import Waypoint, WaypointRef
10
+
11
+
12
+ class CheckpointOperationMode(StrEnum):
13
+ """Defines the operation mode of a checkpoint"""
14
+
15
+ FLEX = 'FLEX'
16
+ """ Defines a flexible operation mode for the checkpoint """
17
+
18
+ STRICT = 'STRICT'
19
+ """ Defines a strict operation mode for the checkpoint """
8
20
 
9
21
 
10
22
  class Checkpoint(BaseModel):
11
23
  """Checkpoint entity definition"""
12
24
 
25
+ model_config = {
26
+ 'json_encoders': {
27
+ datetime: lambda v: v.timestamp(),
28
+ },
29
+ }
30
+
13
31
  pk: int = Field(description='Checkpoint ID')
14
32
  asset_id: int = Field(description='Asset ID')
15
33
  waypoints: list[Waypoint] = Field(description='List of waypoints', default_factory=list)
16
34
  start_at: datetime = Field(description='Checkpoint start date')
17
35
  end_at: datetime = Field(description='Checkpoint end date')
36
+
37
+
38
+ class CheckointRef(BaseModel):
39
+ """Checkpoint reference entity definition"""
40
+
41
+ model_config = {
42
+ 'json_encoders': {
43
+ CheckpointOperationMode: lambda v: v.value,
44
+ },
45
+ }
46
+
47
+ pk: int = Field(description='Checkpoint ID', alias='id')
48
+ asset_id: int = Field(description='Asset ID')
49
+ waypoints: list[WaypointRef] = Field(description='List of waypoints', default_factory=list)
50
+
51
+ operation_mode: CheckpointOperationMode = Field(
52
+ ...,
53
+ description='Checkpoint operation mode',
54
+ )
@@ -1,12 +1,28 @@
1
1
  """Waypoint entity"""
2
2
 
3
- from datetime import datetime
3
+ from datetime import datetime, timedelta
4
4
 
5
5
  from pydantic import BaseModel, Field
6
6
 
7
+ from layrz_sdk.backwards import StrEnum
8
+
7
9
  from .geofence import Geofence
8
10
 
9
11
 
12
+ class WaypointKind(StrEnum):
13
+ PATHWAY = 'PATHWAY'
14
+ """ This is the identification of the time between one waypoint and other """
15
+
16
+ POINT = 'POINT'
17
+ """ This refer the time inside of a geofence """
18
+
19
+ DOWNLOADING = 'DOWNLOADING'
20
+ """ Downloading phase of Tenvio """
21
+
22
+ WASHING = 'WASHING'
23
+ """ Washing phase of Tenvio """
24
+
25
+
10
26
  class Waypoint(BaseModel):
11
27
  """Waypoint entity definition"""
12
28
 
@@ -16,3 +32,25 @@ class Waypoint(BaseModel):
16
32
  end_at: datetime = Field(description='Waypoint end date')
17
33
  sequence_real: int = Field(description='Real sequence number')
18
34
  sequence_ideal: int = Field(description='Ideal sequence number')
35
+
36
+
37
+ class WaypointRef(BaseModel):
38
+ """Waypoint reference entity definition"""
39
+
40
+ model_config = {
41
+ 'json_encoders': {
42
+ timedelta: lambda v: v.total_seconds(),
43
+ datetime: lambda v: v.timestamp(),
44
+ },
45
+ }
46
+
47
+ pk: int = Field(description='Waypoint ID', alias='id')
48
+ geofence_id: int = Field(description='Geofence ID')
49
+ time: timedelta = Field(
50
+ default_factory=lambda: timedelta(seconds=0),
51
+ description='Time offset from the start of the checkpoint',
52
+ )
53
+ kind: WaypointKind = Field(
54
+ ...,
55
+ description='Defines the kind of waypoint',
56
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: layrz-sdk
3
- Version: 3.1.41
3
+ Version: 3.1.42
4
4
  Summary: Layrz SDK for Python
5
5
  Author-email: "Golden M, Inc." <software@goldenm.com>
6
6
  Maintainer-email: Kenny Mochizuki <kenny@goldenm.com>, Luis Reyes <lreyes@goldenm.com>, Kasen Li <kli@goldenm.com>, Miguel Zauzich <miguel@goldenm.com>, Angel Prieto <aprieto@goldenm.com>
@@ -2,7 +2,7 @@ layrz_sdk/__init__.py,sha256=OutylN0QazaeDVIA5NRDVyzwfYnZkAwVQzT-2F6iX2M,28
2
2
  layrz_sdk/backwards.py,sha256=f_DUxvbZs-p287-wGwxx0NVUK7Gha-cNP_hHRAJWAq0,85
3
3
  layrz_sdk/constants.py,sha256=guXfIsVAcex76OEMv6DAJy1km1A_WUfWJuUO2Lo3kXE,344
4
4
  layrz_sdk/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
- layrz_sdk/entities/__init__.py,sha256=K3YsNLZPebmBZVrI-oMS58vo-XCkORQDYPRwkgglvwI,5533
5
+ layrz_sdk/entities/__init__.py,sha256=EdVTTUDnINLx7-bOd34PGM4zneqafZ_LJBNChgkEpws,5587
6
6
  layrz_sdk/entities/action.py,sha256=QTe2L2NCJqxCUn-kb-qgjgQ9gn9nGT-qXcVyHvjXF20,2089
7
7
  layrz_sdk/entities/action_geofence_ownership.py,sha256=PHu6495IUb9biKLXGEy4ESyrzmpP2AQbJiquYk9Kz7c,678
8
8
  layrz_sdk/entities/action_kind.py,sha256=u5CI9y86f6-zHKSf4gRhoqcK5azle1UAHqa8-033x88,1277
@@ -14,7 +14,7 @@ layrz_sdk/entities/ats_reception.py,sha256=yog5b5vvWKOHj67YMamJ_m7zodLcrYSSEwdXx
14
14
  layrz_sdk/entities/case.py,sha256=0dSfZCezDuEEED42rws-zntqa_Em9oFevlXSPrIeIC8,1877
15
15
  layrz_sdk/entities/case_ignored_status.py,sha256=9nRIKJqaZ9EBXYuI4j4v2hCd0C6GtWPDKsbdE2Srt1g,517
16
16
  layrz_sdk/entities/case_status.py,sha256=4k6PeJJiCqp1LxipXTrIFuEqeK2NYwbrKA8KvI51ewU,443
17
- layrz_sdk/entities/checkpoint.py,sha256=Y_LduHugWdn3sLvXmiqjaIXnGzoJ5aN_qLCzD9YXOhQ,513
17
+ layrz_sdk/entities/checkpoint.py,sha256=Lpeb6WzlRuJ5w1T-cE5pUgG1jV8G_vll5PTQsD7RfDY,1413
18
18
  layrz_sdk/entities/command_series_ticket.py,sha256=Bn1j7q9qsnr-Kq8rvYOtJe8cTRyShBAwk4vtuyZMkgg,2240
19
19
  layrz_sdk/entities/comment.py,sha256=1YSWVxXlpoicVVHv3mvkNlfUTfcOMxZYfb4YmwrxchY,414
20
20
  layrz_sdk/entities/custom_field.py,sha256=jurONu01Ph-Qq8uuxdzxoQ6i7BqbZe64vO2ESvQDSFg,277
@@ -54,7 +54,7 @@ layrz_sdk/entities/timezone.py,sha256=VhS3o9miktQmThz22KJfatjvqzSONHy73_eBUtjI8i
54
54
  layrz_sdk/entities/trigger.py,sha256=patZ_GE6GAlqfJJ33ddt_bLKtBNeD-5CQ4Jp2dPB9OY,3658
55
55
  layrz_sdk/entities/trigger_kind.py,sha256=Sk7iNndnMSMgjGR_2ouB1eLNPTH7WyPszQofbY0J-I8,1783
56
56
  layrz_sdk/entities/user.py,sha256=S2mJoW44xbBe-O3I_ajy5l4V9-azVLUfKvcfsuqfodQ,236
57
- layrz_sdk/entities/waypoint.py,sha256=Wx4uFzKVXKTuSgu8wiDpvqGFtG3c1_owk1-M9APlpj8,550
57
+ layrz_sdk/entities/waypoint.py,sha256=FIh4OHojuQhMJxnVP_aKUr4fLgf5TPmVpndvIG9jhys,1497
58
58
  layrz_sdk/entities/weekday.py,sha256=5y5BTMVvxi1ujUa5e1iRb8cpxzTQIBTvzmzfiPC8poI,506
59
59
  layrz_sdk/entities/broadcast/__init__.py,sha256=Q1fIeDj1oAL63Q0JDddkW_FuP826-Im6ScwUUwAZIOM,372
60
60
  layrz_sdk/entities/broadcast/payload.py,sha256=ugD5m3zVFZVDfBMkR2WlZTWunn9gZSQ1Ej8YXbeA8Wk,1417
@@ -104,8 +104,8 @@ layrz_sdk/helpers/__init__.py,sha256=5iW3z2m3jrYhvTfxX-p-QTkR9X9oTKfEsbtVOg9jFFY
104
104
  layrz_sdk/helpers/color.py,sha256=dlpMafbM-4Wd9D9hMbbnZJf4ALkpie_ZmBR2Vz_YCmM,1203
105
105
  layrz_sdk/lcl/__init__.py,sha256=U967AWANkL3u_YVxMNAYlh8jkZ6hqHfStacz7yz6sOA,89
106
106
  layrz_sdk/lcl/core.py,sha256=T80A3hL7SeqRNSfl5SrPAgwIEf-enoAVv9ldwJNzqsA,24786
107
- layrz_sdk-3.1.41.dist-info/licenses/LICENSE,sha256=d5ZrU--lIPER7QByXDKcrtOTOMk1JvN_9FdYDuoWi7Y,1057
108
- layrz_sdk-3.1.41.dist-info/METADATA,sha256=YkzANnRCkMjJT-G1euRhmae4Rjyg8X--ZHMV7yN52Bk,2109
109
- layrz_sdk-3.1.41.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
110
- layrz_sdk-3.1.41.dist-info/top_level.txt,sha256=yUTMMzfdZ0HDWQH5TaSlFM4xtwmP1fSGxmlL1dmu4l4,10
111
- layrz_sdk-3.1.41.dist-info/RECORD,,
107
+ layrz_sdk-3.1.42.dist-info/licenses/LICENSE,sha256=d5ZrU--lIPER7QByXDKcrtOTOMk1JvN_9FdYDuoWi7Y,1057
108
+ layrz_sdk-3.1.42.dist-info/METADATA,sha256=CaOtgY8bpY7Y4vxJprXQk1My08qa28KpeA22R-a-XRU,2109
109
+ layrz_sdk-3.1.42.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
110
+ layrz_sdk-3.1.42.dist-info/top_level.txt,sha256=yUTMMzfdZ0HDWQH5TaSlFM4xtwmP1fSGxmlL1dmu4l4,10
111
+ layrz_sdk-3.1.42.dist-info/RECORD,,