layrz-sdk 3.1.14__py3-none-any.whl → 3.1.16__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.

Files changed (85) hide show
  1. layrz_sdk/__init__.py +1 -1
  2. layrz_sdk/constants.py +19 -5
  3. layrz_sdk/entities/__init__.py +138 -129
  4. layrz_sdk/entities/asset.py +76 -60
  5. layrz_sdk/entities/asset_operation_mode.py +31 -31
  6. layrz_sdk/entities/broadcast_request.py +12 -12
  7. layrz_sdk/entities/broadcast_response.py +12 -12
  8. layrz_sdk/entities/broadcast_result.py +20 -20
  9. layrz_sdk/entities/broadcast_status.py +28 -28
  10. layrz_sdk/entities/case.py +52 -52
  11. layrz_sdk/entities/case_ignored_status.py +26 -26
  12. layrz_sdk/entities/case_status.py +23 -23
  13. layrz_sdk/entities/charts/axis_config.py +15 -15
  14. layrz_sdk/entities/charts/bar_chart.py +175 -175
  15. layrz_sdk/entities/charts/chart_alignment.py +27 -27
  16. layrz_sdk/entities/charts/chart_color.py +44 -44
  17. layrz_sdk/entities/charts/chart_configuration.py +10 -10
  18. layrz_sdk/entities/charts/chart_data_serie.py +19 -19
  19. layrz_sdk/entities/charts/chart_data_serie_type.py +28 -28
  20. layrz_sdk/entities/charts/chart_data_type.py +27 -27
  21. layrz_sdk/entities/charts/chart_render_technology.py +30 -30
  22. layrz_sdk/entities/charts/column_chart.py +201 -201
  23. layrz_sdk/entities/charts/html_chart.py +38 -38
  24. layrz_sdk/entities/charts/line_chart.py +248 -248
  25. layrz_sdk/entities/charts/map_center_type.py +22 -22
  26. layrz_sdk/entities/charts/map_chart.py +108 -108
  27. layrz_sdk/entities/charts/map_point.py +22 -22
  28. layrz_sdk/entities/charts/number_chart.py +54 -54
  29. layrz_sdk/entities/charts/pie_chart.py +131 -131
  30. layrz_sdk/entities/charts/radar_chart.py +81 -81
  31. layrz_sdk/entities/charts/radial_bar_chart.py +131 -131
  32. layrz_sdk/entities/charts/scatter_chart.py +210 -210
  33. layrz_sdk/entities/charts/scatter_serie.py +13 -13
  34. layrz_sdk/entities/charts/scatter_serie_item.py +8 -8
  35. layrz_sdk/entities/charts/table_chart.py +54 -54
  36. layrz_sdk/entities/charts/table_header.py +8 -8
  37. layrz_sdk/entities/charts/table_row.py +9 -9
  38. layrz_sdk/entities/charts/timeline_chart.py +79 -79
  39. layrz_sdk/entities/charts/timeline_serie.py +10 -10
  40. layrz_sdk/entities/charts/timeline_serie_item.py +12 -12
  41. layrz_sdk/entities/checkpoint.py +17 -17
  42. layrz_sdk/entities/comment.py +16 -16
  43. layrz_sdk/entities/custom_field.py +10 -10
  44. layrz_sdk/entities/custom_report_page.py +40 -40
  45. layrz_sdk/entities/device.py +18 -13
  46. layrz_sdk/entities/event.py +23 -23
  47. layrz_sdk/entities/geofence.py +11 -11
  48. layrz_sdk/entities/last_message.py +12 -12
  49. layrz_sdk/entities/message.py +23 -23
  50. layrz_sdk/entities/modbus/__init__.py +9 -0
  51. layrz_sdk/entities/modbus/config.py +19 -0
  52. layrz_sdk/entities/modbus/parameter.py +110 -0
  53. layrz_sdk/entities/modbus/schema.py +10 -0
  54. layrz_sdk/entities/modbus/status.py +16 -0
  55. layrz_sdk/entities/modbus/wait.py +134 -0
  56. layrz_sdk/entities/outbound_service.py +10 -10
  57. layrz_sdk/entities/position.py +116 -116
  58. layrz_sdk/entities/presence_type.py +16 -16
  59. layrz_sdk/entities/report.py +289 -289
  60. layrz_sdk/entities/report_col.py +40 -40
  61. layrz_sdk/entities/report_configuration.py +8 -8
  62. layrz_sdk/entities/report_data_type.py +28 -28
  63. layrz_sdk/entities/report_format.py +27 -27
  64. layrz_sdk/entities/report_header.py +43 -43
  65. layrz_sdk/entities/report_page.py +15 -15
  66. layrz_sdk/entities/report_row.py +28 -28
  67. layrz_sdk/entities/sensor.py +11 -11
  68. layrz_sdk/entities/static_position.py +17 -0
  69. layrz_sdk/entities/telemetry/__init__.py +6 -0
  70. layrz_sdk/entities/telemetry/assetmessage.py +159 -0
  71. layrz_sdk/entities/telemetry/devicemessage.py +122 -0
  72. layrz_sdk/entities/text_alignment.py +26 -26
  73. layrz_sdk/entities/trigger.py +11 -11
  74. layrz_sdk/entities/user.py +10 -10
  75. layrz_sdk/entities/waypoint.py +18 -18
  76. layrz_sdk/helpers/__init__.py +5 -5
  77. layrz_sdk/helpers/color.py +44 -44
  78. layrz_sdk/lcl/__init__.py +5 -5
  79. layrz_sdk/lcl/core.py +848 -848
  80. {layrz_sdk-3.1.14.dist-info → layrz_sdk-3.1.16.dist-info}/METADATA +54 -49
  81. layrz_sdk-3.1.16.dist-info/RECORD +85 -0
  82. {layrz_sdk-3.1.14.dist-info → layrz_sdk-3.1.16.dist-info}/licenses/LICENSE +6 -6
  83. layrz_sdk-3.1.14.dist-info/RECORD +0 -75
  84. {layrz_sdk-3.1.14.dist-info → layrz_sdk-3.1.16.dist-info}/WHEEL +0 -0
  85. {layrz_sdk-3.1.14.dist-info → layrz_sdk-3.1.16.dist-info}/top_level.txt +0 -0
layrz_sdk/__init__.py CHANGED
@@ -1 +1 @@
1
- """ Layrz SDK Namespace """
1
+ """ Layrz SDK Namespace """
layrz_sdk/constants.py CHANGED
@@ -1,5 +1,19 @@
1
- """Constants"""
2
-
3
- from zoneinfo import ZoneInfo
4
-
5
- UTC = ZoneInfo('UTC')
1
+ """Constants"""
2
+
3
+ from zoneinfo import ZoneInfo
4
+
5
+ UTC = ZoneInfo('UTC')
6
+ """ UTC timezone constant for use in datetime fields. """
7
+
8
+
9
+ REJECTED_KEYS = (
10
+ 'timestamp',
11
+ 'ident',
12
+ 'server.timestamp',
13
+ 'protocol.id',
14
+ 'channel.id',
15
+ 'device.name',
16
+ 'device.id',
17
+ 'device.type.id',
18
+ )
19
+ """ Defines the ignored raw keys from a telemetry object """
@@ -1,129 +1,138 @@
1
- """Init file"""
2
-
3
- from .asset import Asset
4
- from .asset_operation_mode import AssetOperationMode
5
- from .broadcast_request import BroadcastRequest
6
- from .broadcast_response import BroadcastResponse
7
- from .broadcast_result import BroadcastResult
8
- from .broadcast_status import BroadcastStatus
9
- from .case import Case
10
- from .case_ignored_status import CaseIgnoredStatus
11
- from .case_status import CaseStatus
12
- from .charts.axis_config import AxisConfig
13
- from .charts.bar_chart import BarChart
14
- from .charts.chart_alignment import ChartAlignment
15
- from .charts.chart_color import ChartColor
16
- from .charts.chart_configuration import ChartConfiguration
17
- from .charts.chart_data_serie import ChartDataSerie
18
- from .charts.chart_data_serie_type import ChartDataSerieType
19
- from .charts.chart_data_type import ChartDataType
20
- from .charts.chart_render_technology import ChartRenderTechnology
21
- from .charts.column_chart import ColumnChart
22
- from .charts.html_chart import HTMLChart
23
- from .charts.line_chart import LineChart
24
- from .charts.map_center_type import MapCenterType
25
- from .charts.map_chart import MapChart
26
- from .charts.map_point import MapPoint
27
- from .charts.number_chart import NumberChart
28
- from .charts.pie_chart import PieChart
29
- from .charts.radar_chart import RadarChart
30
- from .charts.radial_bar_chart import RadialBarChart
31
- from .charts.scatter_chart import ScatterChart
32
- from .charts.scatter_serie import ScatterSerie
33
- from .charts.scatter_serie_item import ScatterSerieItem
34
- from .charts.table_chart import TableChart
35
- from .charts.table_header import TableHeader
36
- from .charts.table_row import TableRow
37
- from .charts.timeline_chart import TimelineChart
38
- from .charts.timeline_serie import TimelineSerie
39
- from .charts.timeline_serie_item import TimelineSerieItem
40
- from .checkpoint import Checkpoint
41
- from .comment import Comment
42
- from .custom_field import CustomField
43
- from .custom_report_page import CustomReportPage
44
- from .device import Device
45
- from .event import Event
46
- from .geofence import Geofence
47
- from .last_message import LastMessage
48
- from .message import Message
49
- from .outbound_service import OutboundService
50
- from .position import Position
51
- from .presence_type import PresenceType
52
- from .report import Report
53
- from .report_col import ReportCol
54
- from .report_configuration import ReportConfiguration
55
- from .report_data_type import ReportDataType
56
- from .report_format import ReportFormat
57
- from .report_header import ReportHeader
58
- from .report_page import ReportPage
59
- from .report_row import ReportRow
60
- from .sensor import Sensor
61
- from .text_alignment import TextAlignment
62
- from .trigger import Trigger
63
- from .user import User
64
- from .waypoint import Waypoint
65
-
66
- __all__ = [
67
- 'Asset',
68
- 'AssetOperationMode',
69
- 'BroadcastRequest',
70
- 'BroadcastResponse',
71
- 'BroadcastResult',
72
- 'BroadcastStatus',
73
- 'Case',
74
- 'CaseIgnoredStatus',
75
- 'CaseStatus',
76
- 'AxisConfig',
77
- 'BarChart',
78
- 'ChartAlignment',
79
- 'ChartColor',
80
- 'ChartConfiguration',
81
- 'ChartDataSerie',
82
- 'ChartDataSerieType',
83
- 'ChartDataType',
84
- 'ChartRenderTechnology',
85
- 'ColumnChart',
86
- 'HTMLChart',
87
- 'LineChart',
88
- 'MapCenterType',
89
- 'MapChart',
90
- 'MapPoint',
91
- 'NumberChart',
92
- 'PieChart',
93
- 'RadarChart',
94
- 'RadialBarChart',
95
- 'ScatterChart',
96
- 'ScatterSerie',
97
- 'ScatterSerieItem',
98
- 'TableChart',
99
- 'TableHeader',
100
- 'TableRow',
101
- 'TimelineChart',
102
- 'TimelineSerie',
103
- 'TimelineSerieItem',
104
- 'Checkpoint',
105
- 'Comment',
106
- 'CustomField',
107
- 'CustomReportPage',
108
- 'Device',
109
- 'Event',
110
- 'Geofence',
111
- 'LastMessage',
112
- 'Message',
113
- 'OutboundService',
114
- 'Position',
115
- 'PresenceType',
116
- 'Report',
117
- 'ReportCol',
118
- 'ReportConfiguration',
119
- 'ReportDataType',
120
- 'ReportFormat',
121
- 'ReportHeader',
122
- 'ReportPage',
123
- 'ReportRow',
124
- 'Sensor',
125
- 'TextAlignment',
126
- 'Trigger',
127
- 'User',
128
- 'Waypoint',
129
- ]
1
+ """Init file"""
2
+
3
+ from .asset import Asset
4
+ from .asset_operation_mode import AssetOperationMode
5
+ from .broadcast_request import BroadcastRequest
6
+ from .broadcast_response import BroadcastResponse
7
+ from .broadcast_result import BroadcastResult
8
+ from .broadcast_status import BroadcastStatus
9
+ from .case import Case
10
+ from .case_ignored_status import CaseIgnoredStatus
11
+ from .case_status import CaseStatus
12
+ from .charts.axis_config import AxisConfig
13
+ from .charts.bar_chart import BarChart
14
+ from .charts.chart_alignment import ChartAlignment
15
+ from .charts.chart_color import ChartColor
16
+ from .charts.chart_configuration import ChartConfiguration
17
+ from .charts.chart_data_serie import ChartDataSerie
18
+ from .charts.chart_data_serie_type import ChartDataSerieType
19
+ from .charts.chart_data_type import ChartDataType
20
+ from .charts.chart_render_technology import ChartRenderTechnology
21
+ from .charts.column_chart import ColumnChart
22
+ from .charts.html_chart import HTMLChart
23
+ from .charts.line_chart import LineChart
24
+ from .charts.map_center_type import MapCenterType
25
+ from .charts.map_chart import MapChart
26
+ from .charts.map_point import MapPoint
27
+ from .charts.number_chart import NumberChart
28
+ from .charts.pie_chart import PieChart
29
+ from .charts.radar_chart import RadarChart
30
+ from .charts.radial_bar_chart import RadialBarChart
31
+ from .charts.scatter_chart import ScatterChart
32
+ from .charts.scatter_serie import ScatterSerie
33
+ from .charts.scatter_serie_item import ScatterSerieItem
34
+ from .charts.table_chart import TableChart
35
+ from .charts.table_header import TableHeader
36
+ from .charts.table_row import TableRow
37
+ from .charts.timeline_chart import TimelineChart
38
+ from .charts.timeline_serie import TimelineSerie
39
+ from .charts.timeline_serie_item import TimelineSerieItem
40
+ from .checkpoint import Checkpoint
41
+ from .comment import Comment
42
+ from .custom_field import CustomField
43
+ from .custom_report_page import CustomReportPage
44
+ from .device import Device
45
+ from .event import Event
46
+ from .geofence import Geofence
47
+ from .last_message import LastMessage
48
+ from .message import Message
49
+ from .modbus import ModbusConfig, ModbusParameter, ModbusSchema, ModbusStatus, ModbusWait
50
+ from .outbound_service import OutboundService
51
+ from .position import Position
52
+ from .presence_type import PresenceType
53
+ from .report import Report
54
+ from .report_col import ReportCol
55
+ from .report_configuration import ReportConfiguration
56
+ from .report_data_type import ReportDataType
57
+ from .report_format import ReportFormat
58
+ from .report_header import ReportHeader
59
+ from .report_page import ReportPage
60
+ from .report_row import ReportRow
61
+ from .sensor import Sensor
62
+ from .telemetry import AssetMessage, DeviceMessage
63
+ from .text_alignment import TextAlignment
64
+ from .trigger import Trigger
65
+ from .user import User
66
+ from .waypoint import Waypoint
67
+
68
+ __all__ = [
69
+ 'Asset',
70
+ 'AssetOperationMode',
71
+ 'BroadcastRequest',
72
+ 'BroadcastResponse',
73
+ 'BroadcastResult',
74
+ 'BroadcastStatus',
75
+ 'Case',
76
+ 'CaseIgnoredStatus',
77
+ 'CaseStatus',
78
+ 'AxisConfig',
79
+ 'BarChart',
80
+ 'ChartAlignment',
81
+ 'ChartColor',
82
+ 'ChartConfiguration',
83
+ 'ChartDataSerie',
84
+ 'ChartDataSerieType',
85
+ 'ChartDataType',
86
+ 'ChartRenderTechnology',
87
+ 'ColumnChart',
88
+ 'HTMLChart',
89
+ 'LineChart',
90
+ 'MapCenterType',
91
+ 'MapChart',
92
+ 'MapPoint',
93
+ 'NumberChart',
94
+ 'PieChart',
95
+ 'RadarChart',
96
+ 'RadialBarChart',
97
+ 'ScatterChart',
98
+ 'ScatterSerie',
99
+ 'ScatterSerieItem',
100
+ 'TableChart',
101
+ 'TableHeader',
102
+ 'TableRow',
103
+ 'TimelineChart',
104
+ 'TimelineSerie',
105
+ 'TimelineSerieItem',
106
+ 'Checkpoint',
107
+ 'Comment',
108
+ 'CustomField',
109
+ 'CustomReportPage',
110
+ 'Device',
111
+ 'Event',
112
+ 'Geofence',
113
+ 'LastMessage',
114
+ 'Message',
115
+ 'OutboundService',
116
+ 'Position',
117
+ 'PresenceType',
118
+ 'Report',
119
+ 'ReportCol',
120
+ 'ReportConfiguration',
121
+ 'ReportDataType',
122
+ 'ReportFormat',
123
+ 'ReportHeader',
124
+ 'ReportPage',
125
+ 'ReportRow',
126
+ 'Sensor',
127
+ 'TextAlignment',
128
+ 'Trigger',
129
+ 'User',
130
+ 'Waypoint',
131
+ 'ModbusConfig',
132
+ 'ModbusParameter',
133
+ 'ModbusSchema',
134
+ 'ModbusStatus',
135
+ 'ModbusWait',
136
+ 'AssetMessage',
137
+ 'DeviceMessage',
138
+ ]
@@ -1,60 +1,76 @@
1
- """Asset Entity"""
2
-
3
- import sys
4
- from typing import Any, Optional
5
-
6
- from pydantic import BaseModel, Field, model_validator
7
-
8
- if sys.version_info >= (3, 11):
9
- from typing import Self
10
- else:
11
- from typing_extensions import Self
12
-
13
- from .asset_operation_mode import AssetOperationMode
14
- from .custom_field import CustomField
15
- from .device import Device
16
- from .sensor import Sensor
17
-
18
-
19
- class Asset(BaseModel):
20
- """Asset entity definition"""
21
-
22
- pk: int = Field(description='Defines the primary key of the asset')
23
- name: str = Field(description='Defines the name of the asset')
24
- vin: Optional[str] = Field(
25
- default=None,
26
- description='Defines the serial number of the asset, may be an VIN, or any other unique identifier',
27
- )
28
- plate: Optional[str] = Field(default=None, description='Defines the plate number of the asset')
29
- asset_type: Optional[int] = Field(description='Defines the type of the asset', alias='kind_id', default=None)
30
- operation_mode: AssetOperationMode = Field(description='Defines the operation mode of the asset')
31
- sensors: list[Sensor] = Field(default_factory=list, description='Defines the list of sensors of the asset')
32
- custom_fields: list[CustomField] = Field(
33
- default_factory=list, description='Defines the list of custom fields of the asset'
34
- )
35
- devices: list[Device] = Field(default_factory=list, description='Defines the list of devices of the asset')
36
- children: list[Self] = Field(default_factory=list, description='Defines the list of children of the asset')
37
-
38
- @model_validator(mode='before')
39
- def _validate_model(cls: Self, data: dict[str, Any]) -> dict[str, Any]:
40
- """Validate model"""
41
- operation_mode: Optional[str] = data.get('operation_mode')
42
- if operation_mode == AssetOperationMode.ASSETMULTIPLE.name:
43
- data['devices'] = []
44
-
45
- else:
46
- data['children'] = []
47
-
48
- return data
49
-
50
- @property
51
- def primary(self: Self) -> Optional[Device]:
52
- """Get primary device"""
53
- if self.operation_mode not in [AssetOperationMode.SINGLE, AssetOperationMode.MULTIPLE]:
54
- return None
55
-
56
- for device in self.devices:
57
- if device.is_primary:
58
- return device
59
-
60
- return None
1
+ """Asset Entity"""
2
+
3
+ import sys
4
+ from typing import Any, Optional
5
+
6
+ from pydantic import BaseModel, Field, model_validator
7
+
8
+ if sys.version_info >= (3, 11):
9
+ from typing import Self
10
+ else:
11
+ from typing_extensions import Self
12
+
13
+ from .asset_operation_mode import AssetOperationMode
14
+ from .custom_field import CustomField
15
+ from .device import Device
16
+ from .sensor import Sensor
17
+ from .static_position import StaticPosition
18
+
19
+
20
+ class Asset(BaseModel):
21
+ """Asset entity definition"""
22
+
23
+ pk: int = Field(description='Defines the primary key of the asset')
24
+ name: str = Field(description='Defines the name of the asset')
25
+ vin: Optional[str] = Field(
26
+ default=None,
27
+ description='Defines the serial number of the asset, may be an VIN, or any other unique identifier',
28
+ )
29
+ plate: Optional[str] = Field(default=None, description='Defines the plate number of the asset')
30
+ asset_type: Optional[int] = Field(description='Defines the type of the asset', alias='kind_id', default=None)
31
+ operation_mode: AssetOperationMode = Field(description='Defines the operation mode of the asset')
32
+ sensors: list[Sensor] = Field(default_factory=list, description='Defines the list of sensors of the asset')
33
+ custom_fields: list[CustomField] = Field(
34
+ default_factory=list, description='Defines the list of custom fields of the asset'
35
+ )
36
+ devices: list[Device] = Field(default_factory=list, description='Defines the list of devices of the asset')
37
+ children: list[Self] = Field(default_factory=list, description='Defines the list of children of the asset')
38
+
39
+ static_position: StaticPosition | None = Field(
40
+ default=None,
41
+ description='Static position of the asset',
42
+ )
43
+
44
+ points: list[StaticPosition] = Field(
45
+ default_factory=list,
46
+ description='List of static positions for the asset. The altitude of StaticPosition is not used in this case.',
47
+ )
48
+
49
+ primary_id: int | None = Field(
50
+ default=None,
51
+ description='Defines the primary device ID of the asset',
52
+ )
53
+
54
+ @model_validator(mode='before')
55
+ def _validate_model(cls: Self, data: dict[str, Any]) -> dict[str, Any]:
56
+ """Validate model"""
57
+ operation_mode: Optional[str] = data.get('operation_mode')
58
+ if operation_mode == AssetOperationMode.ASSETMULTIPLE.name:
59
+ data['devices'] = []
60
+
61
+ else:
62
+ data['children'] = []
63
+
64
+ return data
65
+
66
+ @property
67
+ def primary(self: Self) -> Optional[Device]:
68
+ """Get primary device"""
69
+ if self.operation_mode not in [AssetOperationMode.SINGLE, AssetOperationMode.MULTIPLE]:
70
+ return None
71
+
72
+ for device in self.devices:
73
+ if device.is_primary:
74
+ return device
75
+
76
+ return None
@@ -1,31 +1,31 @@
1
- """Asset Operation Mode"""
2
-
3
- import sys
4
- from enum import Enum
5
-
6
- if sys.version_info >= (3, 11):
7
- from typing import Self
8
- else:
9
- from typing_extensions import Self
10
-
11
-
12
- class AssetOperationMode(Enum):
13
- """
14
- Asset Operation mode definition
15
- It's an enum of the operation mode of the asset.
16
- """
17
-
18
- SINGLE = 'SINGLE'
19
- MULTIPLE = 'MULTIPLE'
20
- ASSETMULTIPLE = 'ASSETMULTIPLE'
21
- DISCONNECTED = 'DISCONNECTED'
22
- STATIC = 'STATIC'
23
- ZONE = 'ZONE'
24
-
25
- def __str__(self: Self) -> str:
26
- """Readable property"""
27
- return self.name
28
-
29
- def __repr__(self: Self) -> str:
30
- """Readable property"""
31
- return f'AssetOperationMode.{self.name}'
1
+ """Asset Operation Mode"""
2
+
3
+ import sys
4
+ from enum import Enum
5
+
6
+ if sys.version_info >= (3, 11):
7
+ from typing import Self
8
+ else:
9
+ from typing_extensions import Self
10
+
11
+
12
+ class AssetOperationMode(Enum):
13
+ """
14
+ Asset Operation mode definition
15
+ It's an enum of the operation mode of the asset.
16
+ """
17
+
18
+ SINGLE = 'SINGLE'
19
+ MULTIPLE = 'MULTIPLE'
20
+ ASSETMULTIPLE = 'ASSETMULTIPLE'
21
+ DISCONNECTED = 'DISCONNECTED'
22
+ STATIC = 'STATIC'
23
+ ZONE = 'ZONE'
24
+
25
+ def __str__(self: Self) -> str:
26
+ """Readable property"""
27
+ return self.name
28
+
29
+ def __repr__(self: Self) -> str:
30
+ """Readable property"""
31
+ return f'AssetOperationMode.{self.name}'
@@ -1,12 +1,12 @@
1
- """Broadcast Result Request data"""
2
-
3
- from typing import Any
4
-
5
- from pydantic import BaseModel, Field
6
-
7
-
8
- class BroadcastRequest(BaseModel):
9
- """Broadcast request data"""
10
-
11
- parsed: Any = Field(description='Parsed data')
12
- raw: str = Field(description='Raw data')
1
+ """Broadcast Result Request data"""
2
+
3
+ from typing import Any
4
+
5
+ from pydantic import BaseModel, Field
6
+
7
+
8
+ class BroadcastRequest(BaseModel):
9
+ """Broadcast request data"""
10
+
11
+ parsed: Any = Field(description='Parsed data')
12
+ raw: str = Field(description='Raw data')
@@ -1,12 +1,12 @@
1
- """Broadcast Result Response data"""
2
-
3
- from typing import Any
4
-
5
- from pydantic import BaseModel, Field
6
-
7
-
8
- class BroadcastResponse(BaseModel):
9
- """Broadcast response data"""
10
-
11
- parsed: Any = Field(description='Parsed data')
12
- raw: str = Field(description='Raw data')
1
+ """Broadcast Result Response data"""
2
+
3
+ from typing import Any
4
+
5
+ from pydantic import BaseModel, Field
6
+
7
+
8
+ class BroadcastResponse(BaseModel):
9
+ """Broadcast response data"""
10
+
11
+ parsed: Any = Field(description='Parsed data')
12
+ raw: str = Field(description='Raw data')
@@ -1,20 +1,20 @@
1
- """Broadcast result"""
2
-
3
- from datetime import datetime
4
-
5
- from pydantic import BaseModel, Field
6
-
7
- from .broadcast_request import BroadcastRequest
8
- from .broadcast_response import BroadcastResponse
9
- from .broadcast_status import BroadcastStatus
10
-
11
-
12
- class BroadcastResult(BaseModel):
13
- """Broadcast result data"""
14
-
15
- service_id: int = Field(description='Service ID')
16
- asset_id: int = Field(description='Asset ID')
17
- status: BroadcastStatus = Field(description='Broadcast status')
18
- request: BroadcastRequest = Field(description='Broadcast request')
19
- response: BroadcastResponse = Field(description='Broadcast response')
20
- submitted_at: datetime = Field(description='Broadcast submission date')
1
+ """Broadcast result"""
2
+
3
+ from datetime import datetime
4
+
5
+ from pydantic import BaseModel, Field
6
+
7
+ from .broadcast_request import BroadcastRequest
8
+ from .broadcast_response import BroadcastResponse
9
+ from .broadcast_status import BroadcastStatus
10
+
11
+
12
+ class BroadcastResult(BaseModel):
13
+ """Broadcast result data"""
14
+
15
+ service_id: int = Field(description='Service ID')
16
+ asset_id: int = Field(description='Asset ID')
17
+ status: BroadcastStatus = Field(description='Broadcast status')
18
+ request: BroadcastRequest = Field(description='Broadcast request')
19
+ response: BroadcastResponse = Field(description='Broadcast response')
20
+ submitted_at: datetime = Field(description='Broadcast submission date')
@@ -1,28 +1,28 @@
1
- """Broadcast result Status"""
2
-
3
- import sys
4
- from enum import Enum
5
-
6
- if sys.version_info >= (3, 11):
7
- from typing import Self
8
- else:
9
- from typing_extensions import Self
10
-
11
-
12
- class BroadcastStatus(Enum):
13
- """Broadcast result status"""
14
-
15
- OK = 'OK'
16
- BADREQUEST = 'BADREQUEST'
17
- INTERNALERROR = 'INTERNALERROR'
18
- UNAUTHORIZED = 'UNAUTHORIZED'
19
- UNPROCESSABLE = 'UNPROCESSABLE'
20
- DISCONNECTED = 'DISCONNECTED'
21
-
22
- def __str__(self: Self) -> str:
23
- """Readable property"""
24
- return self.name
25
-
26
- def __repr__(self: Self) -> str:
27
- """Readable property"""
28
- return f'BroadcastStatus.{self.name}'
1
+ """Broadcast result Status"""
2
+
3
+ import sys
4
+ from enum import Enum
5
+
6
+ if sys.version_info >= (3, 11):
7
+ from typing import Self
8
+ else:
9
+ from typing_extensions import Self
10
+
11
+
12
+ class BroadcastStatus(Enum):
13
+ """Broadcast result status"""
14
+
15
+ OK = 'OK'
16
+ BADREQUEST = 'BADREQUEST'
17
+ INTERNALERROR = 'INTERNALERROR'
18
+ UNAUTHORIZED = 'UNAUTHORIZED'
19
+ UNPROCESSABLE = 'UNPROCESSABLE'
20
+ DISCONNECTED = 'DISCONNECTED'
21
+
22
+ def __str__(self: Self) -> str:
23
+ """Readable property"""
24
+ return self.name
25
+
26
+ def __repr__(self: Self) -> str:
27
+ """Readable property"""
28
+ return f'BroadcastStatus.{self.name}'