isar 1.33.0__py3-none-any.whl → 1.33.2__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 isar might be problematic. Click here for more details.

Files changed (30) hide show
  1. isar/apis/schedule/scheduling_controller.py +21 -52
  2. isar/config/settings.py +5 -0
  3. isar/models/events.py +45 -26
  4. isar/services/service_connections/mqtt/mqtt_client.py +46 -10
  5. isar/services/service_connections/mqtt/robot_heartbeat_publisher.py +3 -0
  6. isar/services/utilities/scheduling_utilities.py +3 -0
  7. isar/state_machine/state_machine.py +6 -3
  8. isar/state_machine/states/monitor.py +1 -3
  9. isar/state_machine/states/returning_home.py +9 -12
  10. isar/state_machine/states/stopping.py +33 -0
  11. isar/state_machine/transitions/functions/pause.py +1 -1
  12. isar/state_machine/transitions/functions/resume.py +1 -1
  13. isar/state_machine/transitions/functions/start_mission.py +3 -3
  14. isar/state_machine/transitions/functions/stop.py +3 -30
  15. isar/state_machine/transitions/mission.py +0 -2
  16. isar/state_machine/transitions/return_home.py +1 -1
  17. isar/state_machine/utils/common_event_handlers.py +10 -13
  18. isar/storage/blob_storage.py +46 -24
  19. isar/storage/local_storage.py +21 -11
  20. isar/storage/storage_interface.py +27 -6
  21. isar/storage/uploader.py +30 -13
  22. {isar-1.33.0.dist-info → isar-1.33.2.dist-info}/METADATA +1 -1
  23. {isar-1.33.0.dist-info → isar-1.33.2.dist-info}/RECORD +30 -30
  24. robot_interface/telemetry/mqtt_client.py +62 -6
  25. robot_interface/telemetry/payloads.py +4 -2
  26. robot_interface/utilities/json_service.py +6 -0
  27. {isar-1.33.0.dist-info → isar-1.33.2.dist-info}/WHEEL +0 -0
  28. {isar-1.33.0.dist-info → isar-1.33.2.dist-info}/entry_points.txt +0 -0
  29. {isar-1.33.0.dist-info → isar-1.33.2.dist-info}/licenses/LICENSE +0 -0
  30. {isar-1.33.0.dist-info → isar-1.33.2.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,10 @@
1
1
  from dataclasses import dataclass
2
2
  from datetime import datetime
3
- from typing import List, Optional, Union
3
+ from typing import List, Optional
4
4
 
5
5
  from alitra import Pose
6
6
 
7
+ from isar.storage.storage_interface import BlobStoragePath
7
8
  from robot_interface.models.exceptions.robot_exceptions import ErrorReason
8
9
  from robot_interface.models.mission.status import MissionStatus, RobotStatus, TaskStatus
9
10
  from robot_interface.models.mission.task import TaskTypes
@@ -119,7 +120,8 @@ class InspectionResultPayload:
119
120
  isar_id: str
120
121
  robot_name: str
121
122
  inspection_id: str
122
- inspection_path: Union[str, dict]
123
+ blob_storage_data_path: BlobStoragePath
124
+ blob_storage_metadata_path: BlobStoragePath
123
125
  installation_code: str
124
126
  tag_id: Optional[str]
125
127
  inspection_type: Optional[str]
@@ -7,6 +7,7 @@ from uuid import UUID
7
7
 
8
8
  import numpy as np
9
9
  from alitra import Orientation
10
+ from pydantic import BaseModel
10
11
 
11
12
 
12
13
  class EnhancedJSONEncoder(json.JSONEncoder):
@@ -15,6 +16,11 @@ class EnhancedJSONEncoder(json.JSONEncoder):
15
16
  """
16
17
 
17
18
  def default(self, o):
19
+ if isinstance(o, BaseModel):
20
+ dump = getattr(o, "model_dump", None)
21
+ if callable(dump):
22
+ return dump()
23
+ return o.__dict__
18
24
  if is_dataclass(o):
19
25
  return asdict(o) # type: ignore
20
26
  if isinstance(o, UUID):
File without changes