layrz-sdk 4.0.12__tar.gz → 4.0.14__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.
Potentially problematic release.
This version of layrz-sdk might be problematic. Click here for more details.
- {layrz_sdk-4.0.12/layrz_sdk.egg-info → layrz_sdk-4.0.14}/PKG-INFO +1 -1
- layrz_sdk-4.0.14/layrz_sdk/decorators/__init__.py +5 -0
- layrz_sdk-4.0.14/layrz_sdk/decorators/func_timing.py +96 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/asset.py +5 -0
- layrz_sdk-4.0.14/layrz_sdk/entities/broadcast/result.py +49 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/broadcast/status.py +2 -2
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14/layrz_sdk.egg-info}/PKG-INFO +1 -1
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk.egg-info/SOURCES.txt +2 -10
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/pyproject.toml +1 -1
- layrz_sdk-4.0.12/.github/workflows/checks.yml +0 -50
- layrz_sdk-4.0.12/.github/workflows/deploy.yml +0 -32
- layrz_sdk-4.0.12/.gitignore +0 -19
- layrz_sdk-4.0.12/.vscode/extensions.json +0 -9
- layrz_sdk-4.0.12/CHANGELOG.md +0 -593
- layrz_sdk-4.0.12/CODE_OF_CONDUCT.md +0 -29
- layrz_sdk-4.0.12/CONTRIBUTING.md +0 -26
- layrz_sdk-4.0.12/layrz_sdk/entities/broadcast/result.py +0 -20
- layrz_sdk-4.0.12/manual_deploy.py +0 -12
- layrz_sdk-4.0.12/tests/__init__.py +0 -0
- layrz_sdk-4.0.12/uv.lock +0 -749
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/LICENSE +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/README.md +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/constants.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/action.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/action_geofence_ownership.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/action_kind.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/action_subkind.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/asset_constants.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/asset_contact.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/asset_operation_mode.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/ats_entry.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/ats_exit_history.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/ats_possible_entry.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/ats_possible_exit.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/ats_reception.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/broadcast/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/broadcast/payload.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/broadcast/request.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/broadcast/response.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/broadcast/service.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/case.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/case_ignored_status.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/case_status.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/axis_config.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/bar_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_alignment.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_color.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_configuration.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_data_serie.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_data_serie_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_data_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/chart_render_technology.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/column_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/html_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/line_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/map_center_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/map_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/map_point.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/number_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/pie_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/radar_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/radial_bar_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/scatter_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/scatter_serie.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/scatter_serie_item.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/table_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/table_header.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/table_row.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/timeline_chart.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/timeline_serie.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/charts/timeline_serie_item.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/checkpoint.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/command_series_ticket.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/comment.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/custom_field.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/custom_report_page.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/destination_phone.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/device.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/event.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/exchange_service.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/function.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/geofence.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/geofence_category.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/last_message.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/message.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/modbus/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/modbus/config.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/modbus/parameter.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/modbus/schema.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/modbus/status.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/modbus/wait.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/notification_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/operation.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/operation_case_payload.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/operation_payload.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/operation_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/outbound_service.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/platform.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/position.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/presence_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/preset.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_col.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_configuration.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_data_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_format.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_header.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_page.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/report_row.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/request_type.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/sensor.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/sound_effect.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/static_position.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/telemetry/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/telemetry/assetmessage.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/telemetry/devicemessage.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/text_alignment.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/timezone.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/trigger.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/trigger_kind.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/user.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/waypoint.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/entities/weekday.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/helpers/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/helpers/color.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/lcl/__init__.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/lcl/core.py +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk/py.typed +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk.egg-info/dependency_links.txt +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk.egg-info/requires.txt +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/layrz_sdk.egg-info/top_level.txt +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/setup.cfg +0 -0
- {layrz_sdk-4.0.12 → layrz_sdk-4.0.14}/tests/test_lcl.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: layrz-sdk
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.14
|
|
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>
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"""Timing decorator"""
|
|
2
|
+
|
|
3
|
+
import asyncio
|
|
4
|
+
import logging
|
|
5
|
+
import os
|
|
6
|
+
from collections.abc import Callable
|
|
7
|
+
from functools import wraps
|
|
8
|
+
from typing import Any, ParamSpec, TypeVar, overload
|
|
9
|
+
|
|
10
|
+
T = TypeVar('T')
|
|
11
|
+
P = ParamSpec('P')
|
|
12
|
+
|
|
13
|
+
log = logging.getLogger(__name__)
|
|
14
|
+
|
|
15
|
+
SHOULD_DISPLAY = os.environ.get('LAYRZ_SDK_DISPLAY_TIMING', '1') == '1'
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@overload
|
|
19
|
+
def func_timing(func: Callable[P, T]) -> Callable[P, T]: ...
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
@overload
|
|
23
|
+
def func_timing(*, depth: int) -> Callable[[Callable[P, T]], Callable[P, T]]: ...
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def func_timing(
|
|
27
|
+
func: Callable[P, T] | None = None,
|
|
28
|
+
*,
|
|
29
|
+
depth: int = 0,
|
|
30
|
+
) -> Any:
|
|
31
|
+
"""
|
|
32
|
+
Decorator to time a function execution.
|
|
33
|
+
|
|
34
|
+
:param depth: The depth of the function call for logging indentation.
|
|
35
|
+
:return: The wrapped function with timing functionality.
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
def decorator(func: Callable[P, T]) -> Callable[P, T]:
|
|
39
|
+
"""Decorator to time a function"""
|
|
40
|
+
import time
|
|
41
|
+
|
|
42
|
+
prefix = '\t' * depth
|
|
43
|
+
|
|
44
|
+
@wraps(func)
|
|
45
|
+
async def async_wrapper(*args: P.args, **kwargs: P.kwargs) -> T:
|
|
46
|
+
start_time = time.perf_counter_ns()
|
|
47
|
+
result: T = await func(*args, **kwargs) # type: ignore
|
|
48
|
+
diff = time.perf_counter_ns() - start_time
|
|
49
|
+
|
|
50
|
+
if SHOULD_DISPLAY:
|
|
51
|
+
log.info(f'{prefix}{func.__name__}() took {_readable_time(diff)}')
|
|
52
|
+
|
|
53
|
+
return result
|
|
54
|
+
|
|
55
|
+
@wraps(func)
|
|
56
|
+
def sync_wrapper(*args: P.args, **kwargs: P.kwargs) -> T:
|
|
57
|
+
start_time = time.perf_counter_ns()
|
|
58
|
+
result = func(*args, **kwargs)
|
|
59
|
+
diff = time.perf_counter_ns() - start_time
|
|
60
|
+
|
|
61
|
+
if SHOULD_DISPLAY:
|
|
62
|
+
log.info(f'{prefix}{func.__name__}() took {_readable_time(diff)}')
|
|
63
|
+
|
|
64
|
+
return result
|
|
65
|
+
|
|
66
|
+
if asyncio.iscoroutinefunction(func):
|
|
67
|
+
return async_wrapper # type: ignore
|
|
68
|
+
return sync_wrapper
|
|
69
|
+
|
|
70
|
+
if func is None:
|
|
71
|
+
return decorator
|
|
72
|
+
return decorator(func)
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def _readable_time(diff: int) -> str:
|
|
76
|
+
"""Convert nanoseconds to a readable format"""
|
|
77
|
+
if diff < 1_000:
|
|
78
|
+
return f'{diff} ns'
|
|
79
|
+
|
|
80
|
+
diff = diff // 1_000
|
|
81
|
+
if diff < 1_000:
|
|
82
|
+
return f'{diff} μs'
|
|
83
|
+
|
|
84
|
+
diff = diff // 1_000
|
|
85
|
+
if diff < 1_000:
|
|
86
|
+
return f'{diff} ms'
|
|
87
|
+
|
|
88
|
+
diff = diff // 1_000
|
|
89
|
+
if diff < 60:
|
|
90
|
+
return f'{diff} s'
|
|
91
|
+
|
|
92
|
+
diff = diff // 60
|
|
93
|
+
if diff < 60:
|
|
94
|
+
return f'{diff} m'
|
|
95
|
+
|
|
96
|
+
return f'{diff // 60} h'
|
|
@@ -104,3 +104,8 @@ class Asset(BaseModel):
|
|
|
104
104
|
def asset_type(self: Self) -> int | None:
|
|
105
105
|
"""Get asset type"""
|
|
106
106
|
return self.kind_id
|
|
107
|
+
|
|
108
|
+
partition_number: int | None = Field(
|
|
109
|
+
default=None,
|
|
110
|
+
description='Partition number assigned for this Asset, if is None, will be auto-assigned by the system',
|
|
111
|
+
)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"""Broadcast result"""
|
|
2
|
+
|
|
3
|
+
from datetime import datetime
|
|
4
|
+
from typing import Any
|
|
5
|
+
|
|
6
|
+
from pydantic import BaseModel, Field
|
|
7
|
+
|
|
8
|
+
from .request import BroadcastRequest
|
|
9
|
+
from .response import BroadcastResponse
|
|
10
|
+
from .status import BroadcastStatus
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class BroadcastResult(BaseModel):
|
|
14
|
+
"""Broadcast result data"""
|
|
15
|
+
|
|
16
|
+
pk: int | None = Field(default=None, description='Broadcast result ID', alias='id')
|
|
17
|
+
trigger_id: int | None = Field(default=None, description='Trigger ID')
|
|
18
|
+
|
|
19
|
+
service_id: int = Field(description='Service ID')
|
|
20
|
+
asset_id: int = Field(description='Asset ID')
|
|
21
|
+
status: BroadcastStatus = Field(description='Broadcast status')
|
|
22
|
+
request: BroadcastRequest = Field(description='Broadcast request')
|
|
23
|
+
response: BroadcastResponse = Field(description='Broadcast response')
|
|
24
|
+
submitted_at: datetime = Field(description='Broadcast submission date')
|
|
25
|
+
|
|
26
|
+
algorithm: str | None = Field(
|
|
27
|
+
default=None,
|
|
28
|
+
description='Algorithm used for the broadcast, if any',
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
error: dict[str, Any] = Field(
|
|
32
|
+
default_factory=dict,
|
|
33
|
+
description='Error message if the broadcast failed',
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
service: dict[str, Any] = Field(
|
|
37
|
+
default_factory=dict,
|
|
38
|
+
description='Service details at the time of the broadcast',
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
asset: dict[str, Any] = Field(
|
|
42
|
+
default_factory=dict,
|
|
43
|
+
description='Asset details at the time of the broadcast',
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
trigger: dict[str, Any] = Field(
|
|
47
|
+
default_factory=dict,
|
|
48
|
+
description='Trigger details at the time of the broadcast',
|
|
49
|
+
)
|
|
@@ -8,8 +8,8 @@ class BroadcastStatus(StrEnum):
|
|
|
8
8
|
"""Broadcast result status"""
|
|
9
9
|
|
|
10
10
|
OK = 'OK'
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
BAD_REQUEST = 'BADREQUEST'
|
|
12
|
+
INTERNAL_ERROR = 'INTERNALERROR'
|
|
13
13
|
UNAUTHORIZED = 'UNAUTHORIZED'
|
|
14
14
|
UNPROCESSABLE = 'UNPROCESSABLE'
|
|
15
15
|
DISCONNECTED = 'DISCONNECTED'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: layrz-sdk
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.14
|
|
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>
|
|
@@ -1,15 +1,6 @@
|
|
|
1
|
-
.gitignore
|
|
2
|
-
CHANGELOG.md
|
|
3
|
-
CODE_OF_CONDUCT.md
|
|
4
|
-
CONTRIBUTING.md
|
|
5
1
|
LICENSE
|
|
6
2
|
README.md
|
|
7
|
-
manual_deploy.py
|
|
8
3
|
pyproject.toml
|
|
9
|
-
uv.lock
|
|
10
|
-
.github/workflows/checks.yml
|
|
11
|
-
.github/workflows/deploy.yml
|
|
12
|
-
.vscode/extensions.json
|
|
13
4
|
layrz_sdk/__init__.py
|
|
14
5
|
layrz_sdk/constants.py
|
|
15
6
|
layrz_sdk/py.typed
|
|
@@ -18,6 +9,8 @@ layrz_sdk.egg-info/SOURCES.txt
|
|
|
18
9
|
layrz_sdk.egg-info/dependency_links.txt
|
|
19
10
|
layrz_sdk.egg-info/requires.txt
|
|
20
11
|
layrz_sdk.egg-info/top_level.txt
|
|
12
|
+
layrz_sdk/decorators/__init__.py
|
|
13
|
+
layrz_sdk/decorators/func_timing.py
|
|
21
14
|
layrz_sdk/entities/__init__.py
|
|
22
15
|
layrz_sdk/entities/action.py
|
|
23
16
|
layrz_sdk/entities/action_geofence_ownership.py
|
|
@@ -126,5 +119,4 @@ layrz_sdk/helpers/__init__.py
|
|
|
126
119
|
layrz_sdk/helpers/color.py
|
|
127
120
|
layrz_sdk/lcl/__init__.py
|
|
128
121
|
layrz_sdk/lcl/core.py
|
|
129
|
-
tests/__init__.py
|
|
130
122
|
tests/test_lcl.py
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
name: "Checks before merging"
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
pull_request:
|
|
5
|
-
types:
|
|
6
|
-
- opened
|
|
7
|
-
- synchronize
|
|
8
|
-
- reopened
|
|
9
|
-
branches:
|
|
10
|
-
- '*'
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
lint:
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
container:
|
|
16
|
-
image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
|
|
17
|
-
options: --user root
|
|
18
|
-
credentials:
|
|
19
|
-
username: ${{ github.repository_owner }}
|
|
20
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
21
|
-
|
|
22
|
-
steps:
|
|
23
|
-
- name: Checkout
|
|
24
|
-
uses: actions/checkout@v4
|
|
25
|
-
|
|
26
|
-
- name: Lint
|
|
27
|
-
run: |
|
|
28
|
-
uv sync --only-group dev
|
|
29
|
-
uv run ruff check
|
|
30
|
-
uv run mypy .
|
|
31
|
-
|
|
32
|
-
uniitest:
|
|
33
|
-
needs: lint
|
|
34
|
-
runs-on: ubuntu-latest
|
|
35
|
-
container:
|
|
36
|
-
image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
|
|
37
|
-
options: --user root
|
|
38
|
-
credentials:
|
|
39
|
-
username: ${{ github.repository_owner }}
|
|
40
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
41
|
-
|
|
42
|
-
steps:
|
|
43
|
-
- name: Checkout
|
|
44
|
-
uses: actions/checkout@v4
|
|
45
|
-
|
|
46
|
-
- name: Install dependencies
|
|
47
|
-
run: |
|
|
48
|
-
uv sync
|
|
49
|
-
uv run pytest ./tests/
|
|
50
|
-
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
name: "Deploy package"
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ "main" ]
|
|
6
|
-
|
|
7
|
-
jobs:
|
|
8
|
-
build:
|
|
9
|
-
permissions:
|
|
10
|
-
id-token: write
|
|
11
|
-
contents: read
|
|
12
|
-
repository-projects: read
|
|
13
|
-
packages: read
|
|
14
|
-
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
container:
|
|
17
|
-
image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
|
|
18
|
-
options: --user root
|
|
19
|
-
credentials:
|
|
20
|
-
username: ${{ github.repository_owner }}
|
|
21
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
22
|
-
|
|
23
|
-
steps:
|
|
24
|
-
- name: Checkout
|
|
25
|
-
uses: actions/checkout@v4
|
|
26
|
-
|
|
27
|
-
- name: Build and upload
|
|
28
|
-
run: |
|
|
29
|
-
uv venv --python 3.13
|
|
30
|
-
uv sync --only-group dev
|
|
31
|
-
uv run python -m build
|
|
32
|
-
uv run python -m twine upload -u ${{ secrets.LAYRZ_PYPI_USERNAME }} -p ${{ secrets.LAYRZ_PYPI_PASSWORD }} dist/*
|
layrz_sdk-4.0.12/.gitignore
DELETED