isar 1.25.1__py3-none-any.whl → 1.25.3__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.
- isar/apis/models/__init__.py +0 -1
- isar/apis/robot_control/robot_controller.py +1 -6
- isar/apis/schedule/scheduling_controller.py +2 -2
- isar/config/settings.py +1 -17
- isar/mission_planner/sequential_task_selector.py +1 -1
- isar/mission_planner/task_selector_interface.py +1 -1
- isar/models/communication/queues/__init__.py +0 -4
- isar/models/communication/queues/status_queue.py +2 -2
- isar/modules.py +6 -5
- isar/services/service_connections/mqtt/robot_info_publisher.py +0 -1
- isar/services/utilities/scheduling_utilities.py +6 -2
- isar/state_machine/state_machine.py +8 -10
- isar/state_machine/states/__init__.py +0 -8
- isar/state_machine/states/monitor.py +2 -1
- isar/storage/blob_storage.py +1 -1
- isar/storage/uploader.py +1 -1
- {isar-1.25.1.dist-info → isar-1.25.3.dist-info}/METADATA +2 -4
- {isar-1.25.1.dist-info → isar-1.25.3.dist-info}/RECORD +28 -27
- robot_interface/models/initialize/__init__.py +0 -1
- robot_interface/models/inspection/__init__.py +0 -13
- robot_interface/models/mission/task.py +1 -1
- robot_interface/models/robots/battery_state.py +6 -0
- robot_interface/robot_interface.py +1 -1
- robot_interface/telemetry/payloads.py +3 -9
- {isar-1.25.1.dist-info → isar-1.25.3.dist-info}/LICENSE +0 -0
- {isar-1.25.1.dist-info → isar-1.25.3.dist-info}/WHEEL +0 -0
- {isar-1.25.1.dist-info → isar-1.25.3.dist-info}/entry_points.txt +0 -0
- {isar-1.25.1.dist-info → isar-1.25.3.dist-info}/top_level.txt +0 -0
isar/apis/models/__init__.py
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .models import InputPose, StartMissionResponse
|
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
import logging
|
|
2
|
-
from typing import List
|
|
3
2
|
|
|
4
3
|
from injector import inject
|
|
5
4
|
|
|
6
|
-
from isar.apis.models.models import
|
|
7
|
-
RobotInfoResponse,
|
|
8
|
-
TaskResponse,
|
|
9
|
-
)
|
|
5
|
+
from isar.apis.models.models import RobotInfoResponse
|
|
10
6
|
from isar.config.settings import robot_settings, settings
|
|
11
7
|
from isar.services.utilities.robot_utilities import RobotUtilities
|
|
12
|
-
from robot_interface.models.mission.task import Task
|
|
13
8
|
|
|
14
9
|
|
|
15
10
|
class RobotController:
|
|
@@ -6,11 +6,11 @@ from alitra import Pose
|
|
|
6
6
|
from fastapi import Body, HTTPException, Path
|
|
7
7
|
from injector import inject
|
|
8
8
|
|
|
9
|
-
from isar.apis.models import InputPose, StartMissionResponse
|
|
10
9
|
from isar.apis.models.models import (
|
|
11
10
|
ControlMissionResponse,
|
|
12
|
-
RobotInfoResponse,
|
|
13
11
|
TaskResponse,
|
|
12
|
+
InputPose,
|
|
13
|
+
StartMissionResponse,
|
|
14
14
|
)
|
|
15
15
|
from isar.apis.models.start_mission_definition import (
|
|
16
16
|
StartMissionDefinition,
|
isar/config/settings.py
CHANGED
|
@@ -8,7 +8,7 @@ from pydantic_settings import BaseSettings, SettingsConfigDict
|
|
|
8
8
|
|
|
9
9
|
from isar.config import predefined_missions
|
|
10
10
|
from robot_interface.models.robots.robot_model import RobotModel
|
|
11
|
-
from robot_interface.telemetry.payloads import DocumentInfo
|
|
11
|
+
from robot_interface.telemetry.payloads import DocumentInfo
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
class Settings(BaseSettings):
|
|
@@ -194,22 +194,6 @@ class Settings(BaseSettings):
|
|
|
194
194
|
# Info about robot documentation
|
|
195
195
|
DOCUMENTATION: List[DocumentInfo] = Field(default=[])
|
|
196
196
|
|
|
197
|
-
# Endpoints to reach video streams for the robot
|
|
198
|
-
VIDEO_STREAMS: List[VideoStream] = Field(
|
|
199
|
-
default=[
|
|
200
|
-
VideoStream(
|
|
201
|
-
name="Front camera",
|
|
202
|
-
url="http://localhost:5000/videostream/front",
|
|
203
|
-
type="turtlebot",
|
|
204
|
-
),
|
|
205
|
-
VideoStream(
|
|
206
|
-
name="Rear camera",
|
|
207
|
-
url="http://localhost:5000/videostream/rear",
|
|
208
|
-
type="turtlebot",
|
|
209
|
-
),
|
|
210
|
-
]
|
|
211
|
-
)
|
|
212
|
-
|
|
213
197
|
# Data scheme the robot should adhere to
|
|
214
198
|
# Options [DS0001]
|
|
215
199
|
DATA_SCHEME: str = Field(default="DS0001")
|
|
@@ -4,7 +4,7 @@ from isar.mission_planner.task_selector_interface import (
|
|
|
4
4
|
TaskSelectorInterface,
|
|
5
5
|
TaskSelectorStop,
|
|
6
6
|
)
|
|
7
|
-
from robot_interface.models.mission.task import TASKS
|
|
7
|
+
from robot_interface.models.mission.task import TASKS
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class SequentialTaskSelector(TaskSelectorInterface):
|
isar/modules.py
CHANGED
|
@@ -7,8 +7,8 @@ from typing import Dict, List, Tuple, Union
|
|
|
7
7
|
from injector import Injector, Module, multiprovider, provider, singleton
|
|
8
8
|
|
|
9
9
|
from isar.apis.api import API
|
|
10
|
-
from isar.apis.schedule.scheduling_controller import SchedulingController
|
|
11
10
|
from isar.apis.robot_control.robot_controller import RobotController
|
|
11
|
+
from isar.apis.schedule.scheduling_controller import SchedulingController
|
|
12
12
|
from isar.apis.security.authentication import Authenticator
|
|
13
13
|
from isar.config.keyvault.keyvault_service import Keyvault
|
|
14
14
|
from isar.config.settings import settings
|
|
@@ -18,8 +18,8 @@ from isar.mission_planner.sequential_task_selector import SequentialTaskSelector
|
|
|
18
18
|
from isar.mission_planner.task_selector_interface import TaskSelectorInterface
|
|
19
19
|
from isar.models.communication.queues.queues import Queues
|
|
20
20
|
from isar.services.service_connections.request_handler import RequestHandler
|
|
21
|
-
from isar.services.utilities.scheduling_utilities import SchedulingUtilities
|
|
22
21
|
from isar.services.utilities.robot_utilities import RobotUtilities
|
|
22
|
+
from isar.services.utilities.scheduling_utilities import SchedulingUtilities
|
|
23
23
|
from isar.state_machine.state_machine import StateMachine
|
|
24
24
|
from isar.storage.blob_storage import BlobStorage
|
|
25
25
|
from isar.storage.local_storage import LocalStorage
|
|
@@ -70,9 +70,10 @@ class RobotModule(Module):
|
|
|
70
70
|
@provider
|
|
71
71
|
@singleton
|
|
72
72
|
def provide_robot_interface(self) -> RobotInterface:
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
robot_interface: ModuleType = import_module(
|
|
74
|
+
f"{settings.ROBOT_PACKAGE}.robotinterface"
|
|
75
|
+
)
|
|
76
|
+
return robot_interface.Robot() # type: ignore
|
|
76
77
|
|
|
77
78
|
|
|
78
79
|
class QueuesModule(Module):
|
|
@@ -22,7 +22,6 @@ class RobotInfoPublisher:
|
|
|
22
22
|
robot_serial_number=settings.SERIAL_NUMBER,
|
|
23
23
|
robot_asset=settings.PLANT_SHORT_NAME,
|
|
24
24
|
documentation=settings.DOCUMENTATION,
|
|
25
|
-
video_streams=settings.VIDEO_STREAMS,
|
|
26
25
|
host=settings.API_HOST_VIEWED_EXTERNALLY,
|
|
27
26
|
port=settings.API_PORT,
|
|
28
27
|
capabilities=robot_settings.CAPABILITIES,
|
|
@@ -17,7 +17,11 @@ from isar.mission_planner.mission_planner_interface import (
|
|
|
17
17
|
MissionPlannerInterface,
|
|
18
18
|
)
|
|
19
19
|
from isar.models.communication.message import StartMissionMessage
|
|
20
|
-
from isar.models.communication.queues import QueueIO
|
|
20
|
+
from isar.models.communication.queues.queue_io import QueueIO
|
|
21
|
+
from isar.models.communication.queues.queues import Queues
|
|
22
|
+
from isar.models.communication.queues.queue_timeout_error import (
|
|
23
|
+
QueueTimeoutError,
|
|
24
|
+
)
|
|
21
25
|
from isar.services.utilities.queue_utilities import QueueUtilities
|
|
22
26
|
from isar.state_machine.states_enum import States
|
|
23
27
|
from robot_interface.models.mission.mission import Mission
|
|
@@ -101,7 +105,7 @@ class SchedulingUtilities:
|
|
|
101
105
|
is_capable: bool = True
|
|
102
106
|
missing_capabilities: Set[str] = set()
|
|
103
107
|
for task in mission.tasks:
|
|
104
|
-
if
|
|
108
|
+
if task.type not in robot_capabilities:
|
|
105
109
|
is_capable = False
|
|
106
110
|
missing_capabilities.add(task.type)
|
|
107
111
|
|
|
@@ -18,16 +18,14 @@ from isar.mission_planner.task_selector_interface import (
|
|
|
18
18
|
)
|
|
19
19
|
from isar.models.communication.message import StartMissionMessage
|
|
20
20
|
from isar.models.communication.queues.queues import Queues
|
|
21
|
-
from isar.state_machine.states import
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
Stop,
|
|
30
|
-
)
|
|
21
|
+
from isar.state_machine.states.idle import Idle
|
|
22
|
+
from isar.state_machine.states.initialize import Initialize
|
|
23
|
+
from isar.state_machine.states.initiate import Initiate
|
|
24
|
+
from isar.state_machine.states.monitor import Monitor
|
|
25
|
+
from isar.state_machine.states.off import Off
|
|
26
|
+
from isar.state_machine.states.offline import Offline
|
|
27
|
+
from isar.state_machine.states.paused import Paused
|
|
28
|
+
from isar.state_machine.states.stop import Stop
|
|
31
29
|
from isar.state_machine.states_enum import States
|
|
32
30
|
from robot_interface.models.exceptions.robot_exceptions import ErrorMessage
|
|
33
31
|
from robot_interface.models.initialize.initialize_params import InitializeParams
|
|
@@ -110,7 +110,8 @@ class Monitor(State):
|
|
|
110
110
|
|
|
111
111
|
if not isinstance(status, TaskStatus):
|
|
112
112
|
self.logger.error(
|
|
113
|
-
f"Received an invalid status update when monitoring mission.
|
|
113
|
+
f"Received an invalid status update {status} when monitoring mission. "
|
|
114
|
+
"Only TaskStatus is expected."
|
|
114
115
|
)
|
|
115
116
|
break
|
|
116
117
|
|
isar/storage/blob_storage.py
CHANGED
|
@@ -47,7 +47,7 @@ class BlobStorage(StorageInterface):
|
|
|
47
47
|
def _upload_file(self, path: Path, data: bytes) -> Union[str, dict]:
|
|
48
48
|
blob_client = self._get_blob_client(path)
|
|
49
49
|
try:
|
|
50
|
-
|
|
50
|
+
blob_client.upload_blob(data=data)
|
|
51
51
|
except ResourceExistsError as e:
|
|
52
52
|
self.logger.error(
|
|
53
53
|
f"Blob {path.as_posix()} already exists in container. Error: {e}"
|
isar/storage/uploader.py
CHANGED
|
@@ -8,7 +8,7 @@ from typing import List, Union
|
|
|
8
8
|
from injector import inject
|
|
9
9
|
|
|
10
10
|
from isar.config.settings import settings
|
|
11
|
-
from isar.models.communication.queues import Queues
|
|
11
|
+
from isar.models.communication.queues.queues import Queues
|
|
12
12
|
from isar.storage.storage_interface import StorageException, StorageInterface
|
|
13
13
|
from robot_interface.models.inspection.inspection import Inspection
|
|
14
14
|
from robot_interface.models.mission.mission import Mission
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: isar
|
|
3
|
-
Version: 1.25.
|
|
3
|
+
Version: 1.25.3
|
|
4
4
|
Summary: Integration and Supervisory control of Autonomous Robots
|
|
5
5
|
Author-email: Equinor ASA <fg_robots_dev@equinor.com>
|
|
6
6
|
License: Eclipse Public License version 2.0
|
|
@@ -127,9 +127,7 @@ Requires-Dist: transitions
|
|
|
127
127
|
Requires-Dist: uvicorn
|
|
128
128
|
Provides-Extra: dev
|
|
129
129
|
Requires-Dist: black; extra == "dev"
|
|
130
|
-
Requires-Dist: flake8; extra == "dev"
|
|
131
130
|
Requires-Dist: mypy; extra == "dev"
|
|
132
|
-
Requires-Dist: myst-parser; extra == "dev"
|
|
133
131
|
Requires-Dist: pip-tools; extra == "dev"
|
|
134
132
|
Requires-Dist: pre-commit; extra == "dev"
|
|
135
133
|
Requires-Dist: pytest-dotenv; extra == "dev"
|
|
@@ -137,7 +135,7 @@ Requires-Dist: pytest-mock; extra == "dev"
|
|
|
137
135
|
Requires-Dist: pytest-xdist; extra == "dev"
|
|
138
136
|
Requires-Dist: pytest; extra == "dev"
|
|
139
137
|
Requires-Dist: requests-mock; extra == "dev"
|
|
140
|
-
Requires-Dist:
|
|
138
|
+
Requires-Dist: ruff; extra == "dev"
|
|
141
139
|
|
|
142
140
|
# ISAR
|
|
143
141
|
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
isar/__init__.py,sha256=cH8p8bVveu3FUL6kBhldcSlLaoHgD82Kd0-SwSNfGXw,87
|
|
2
|
-
isar/modules.py,sha256=
|
|
2
|
+
isar/modules.py,sha256=BeBg2kJi1q-7DzupOM3jFloeMScRk7qkNog9-yGwV5c,7355
|
|
3
3
|
isar/script.py,sha256=MRC_w1kzWuutE9C7QNVtPhKbsld-uWKiMrcUWufiNzQ,5988
|
|
4
4
|
isar/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
isar/apis/api.py,sha256=vUy7QbHrKcTHjh2rkU7lqQPkCasI6umha8r6H88JiXE,13942
|
|
6
|
-
isar/apis/models/__init__.py,sha256=
|
|
6
|
+
isar/apis/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
isar/apis/models/models.py,sha256=HzLaWhjAv0uJRBWipIgYg_F75eaQ5jl9Pi4UnYbDJ-M,1749
|
|
8
8
|
isar/apis/models/start_mission_definition.py,sha256=yaWICdWJrCYFIm5Aq1K3BVxD9oyVuXYaaY9hJG2aoVY,8820
|
|
9
|
-
isar/apis/robot_control/robot_controller.py,sha256=
|
|
9
|
+
isar/apis/robot_control/robot_controller.py,sha256=w0giQf8k1TCL_J_kAcBB8Tgk02laWDCiDiFE8E5sPrg,915
|
|
10
10
|
isar/apis/schedule/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
-
isar/apis/schedule/scheduling_controller.py,sha256=
|
|
11
|
+
isar/apis/schedule/scheduling_controller.py,sha256=9S7OtFCfO0hR9gWtj2u2oqa2Hxj9ynpcXxgqdk5liQ4,11328
|
|
12
12
|
isar/apis/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
13
|
isar/apis/security/authentication.py,sha256=TI8U9Y_L6ihHLMeM50ZONd5EPfuHdw_XMU_Q987W4AY,1975
|
|
14
14
|
isar/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -16,7 +16,7 @@ isar/config/configuration_error.py,sha256=rO6WOhafX6xvVib8WxV-eY483Z0PpN-9PxGsq5
|
|
|
16
16
|
isar/config/log.py,sha256=zHFLmGWQRn8TrcsxUS6KHpJt2JE86kYazU7b-bkcN9o,2285
|
|
17
17
|
isar/config/logging.conf,sha256=mYO1xf27gAopEMHhGzY7-mwyfN16rwRLkPNMvy3zn2g,1127
|
|
18
18
|
isar/config/settings.env,sha256=hJFfyl4S84nmcyf70Pz8nbGlPf4KTVx0UkgP3uf6T8E,534
|
|
19
|
-
isar/config/settings.py,sha256=
|
|
19
|
+
isar/config/settings.py,sha256=NdFZSRTEeULulvU8tX904YblUFxZPwQpLu1opA5hbNE,12998
|
|
20
20
|
isar/config/certs/ca-cert.pem,sha256=qoNljfad_qcMxhXJIUMLd7nT-Qwf_d4dYSdoOFEOE8I,2179
|
|
21
21
|
isar/config/keyvault/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
22
|
isar/config/keyvault/keyvault_error.py,sha256=zvPCsZLjboxsxthYkxpRERCTFxYV8R5WmACewAUQLwk,41
|
|
@@ -38,16 +38,16 @@ isar/config/predefined_missions/default_turtlebot.json,sha256=8Vk1_0P0BBsG0vwh4v
|
|
|
38
38
|
isar/mission_planner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
isar/mission_planner/local_planner.py,sha256=45zVP3hzUHdZ5Ty4KWRL85_AUWiTmBhTtlsAruUDMD4,2561
|
|
40
40
|
isar/mission_planner/mission_planner_interface.py,sha256=UgpPIM4FbrWOD7fGY3Ul64k3uYb8wo0FwSWGewYoVbc,485
|
|
41
|
-
isar/mission_planner/sequential_task_selector.py,sha256=
|
|
42
|
-
isar/mission_planner/task_selector_interface.py,sha256=
|
|
41
|
+
isar/mission_planner/sequential_task_selector.py,sha256=66agRPHuJnEa1vArPyty4muTasAZ50XPjjrSaTdY_Cc,643
|
|
42
|
+
isar/mission_planner/task_selector_interface.py,sha256=pnLeaGPIuyXThcflZ_A7YL2b2xQjFT88hAZidkMomxU,707
|
|
43
43
|
isar/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
44
|
isar/models/communication/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
45
|
isar/models/communication/message.py,sha256=yN4SXYM-W_6u3Cf9yuAE3jy4e6mMrL3yUr-iVV4r55E,241
|
|
46
|
-
isar/models/communication/queues/__init__.py,sha256=
|
|
46
|
+
isar/models/communication/queues/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
47
|
isar/models/communication/queues/queue_io.py,sha256=AnHWUCkZ0tunkxKKeBarq-OUkRM97IaMfA-a1pmf1cQ,394
|
|
48
48
|
isar/models/communication/queues/queue_timeout_error.py,sha256=rF8TlNF7RHS_ueTZ5mp7aFkhLY1j0dcwMwH-Ba6lVpE,45
|
|
49
49
|
isar/models/communication/queues/queues.py,sha256=FzoqlT4AQ4Q5Jufh6yRPV2uq5iUZd1odrpjBl77yU5o,803
|
|
50
|
-
isar/models/communication/queues/status_queue.py,sha256
|
|
50
|
+
isar/models/communication/queues/status_queue.py,sha256=-6MDxrZ9dUIJgOMAluSJDyaM50xE1ylhoJZOnPIw8hs,483
|
|
51
51
|
isar/models/mission_metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
52
52
|
isar/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
53
53
|
isar/services/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -57,58 +57,59 @@ isar/services/service_connections/request_handler.py,sha256=0LxC0lu_HXeEf_xmJWjf
|
|
|
57
57
|
isar/services/service_connections/mqtt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
58
|
isar/services/service_connections/mqtt/mqtt_client.py,sha256=N6o9U1PUmMJdHz-EDI8TA28gnMTVmNoxo_BKlfGyzeU,3547
|
|
59
59
|
isar/services/service_connections/mqtt/robot_heartbeat_publisher.py,sha256=_bUOG7CfqBlCRvG4vh2XGoMXucBxsJarFIeXIKOH1aw,1019
|
|
60
|
-
isar/services/service_connections/mqtt/robot_info_publisher.py,sha256=
|
|
60
|
+
isar/services/service_connections/mqtt/robot_info_publisher.py,sha256=AxokGk51hRPTxxD2r0P9braPJCMrf1InaCxrUBKkF4g,1402
|
|
61
61
|
isar/services/service_connections/stid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
62
62
|
isar/services/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
63
63
|
isar/services/utilities/queue_utilities.py,sha256=Pw3hehSwkXJNeDv-bDVDfs58VOwtt3i5hpiJ2ZpphuQ,1225
|
|
64
64
|
isar/services/utilities/robot_utilities.py,sha256=4-ob4kcIiRN_GXFDBMwBadfbwpYqKEkyzyC40wzvmko,555
|
|
65
|
-
isar/services/utilities/scheduling_utilities.py,sha256=
|
|
65
|
+
isar/services/utilities/scheduling_utilities.py,sha256=xQ1UqxxTRk2VpTVj7mL_ux9xqoaiSd45W7VAPmpXSfU,8509
|
|
66
66
|
isar/services/utilities/threaded_request.py,sha256=py4G-_RjnIdHljmKFAcQ6ddqMmp-ZYV39Ece-dqRqjs,1874
|
|
67
67
|
isar/state_machine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
|
-
isar/state_machine/state_machine.py,sha256=
|
|
68
|
+
isar/state_machine/state_machine.py,sha256=xACcd64parrom84vqZvofNdGoPWRi6drHxI3CIxQHrY,22067
|
|
69
69
|
isar/state_machine/states_enum.py,sha256=BlrUcBWkM5K6D_UZXRwTaUgGpAagWmVZH6HhDBGzVU4,278
|
|
70
|
-
isar/state_machine/states/__init__.py,sha256=
|
|
70
|
+
isar/state_machine/states/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
71
71
|
isar/state_machine/states/idle.py,sha256=YKTOPVJUTGp-XR3N8FSm1s5ol3zoTmGs0THUMiO5h6A,3298
|
|
72
72
|
isar/state_machine/states/initialize.py,sha256=TVXV5Ps3N4_flM88j9pQiX88kZgLzLwzlJy_6hPbgcA,2359
|
|
73
73
|
isar/state_machine/states/initiate.py,sha256=j1wvSC3zVODgRkKOVsQROiuWkjihSBtwCs5GsoivLvc,5655
|
|
74
|
-
isar/state_machine/states/monitor.py,sha256=
|
|
74
|
+
isar/state_machine/states/monitor.py,sha256=03h8OHFQ00_BuR_M7FOVeA4h_lJE2L1x37t0SyGZoX8,10285
|
|
75
75
|
isar/state_machine/states/off.py,sha256=jjqN_oJMpBtWuY7hP-c9f0w3p2CYCfe-NpmYHHPnmyI,544
|
|
76
76
|
isar/state_machine/states/offline.py,sha256=IfEZ6-kl6OfJSRT1eKHOey7AU23tKiSHqpwGqclmH_c,2166
|
|
77
77
|
isar/state_machine/states/paused.py,sha256=TIg1iJvAxGUIfzE_qWp0wrq4Ka0a3zEf3GNwIWLIK0M,1177
|
|
78
78
|
isar/state_machine/states/stop.py,sha256=WVyjhndHcccy7_P9bU7SXyZB3qphsGahdSymaghGc08,3348
|
|
79
79
|
isar/storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
80
|
-
isar/storage/blob_storage.py,sha256=
|
|
80
|
+
isar/storage/blob_storage.py,sha256=L885tgwHeeIp8raIz20Hhbc1IMsQP0wK6HOX9I4sZlw,3199
|
|
81
81
|
isar/storage/local_storage.py,sha256=Bnmoi5gyN8r-oRh0aHrOdGqaH3JqRScFKMRXYojW5kY,1855
|
|
82
82
|
isar/storage/slimm_storage.py,sha256=iVtc7w_VPFoe0fWyPpI9kjau3C1rn7w2n5EJaqloFIU,8991
|
|
83
83
|
isar/storage/storage_interface.py,sha256=DYDry4I7aZpDHJhsBF6s8zrgokFAc7fdKJKfA8AvL7o,828
|
|
84
|
-
isar/storage/uploader.py,sha256=
|
|
84
|
+
isar/storage/uploader.py,sha256=ztcxDFCUxGu2mkRasB_3mxG-CNBp2RfGqczEEYR4gks,6516
|
|
85
85
|
isar/storage/utilities.py,sha256=fitsdQ1ox5gr9fk9VuSk_iTBiEAIS8NZAnHabUZORh0,3173
|
|
86
86
|
robot_interface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
87
|
-
robot_interface/robot_interface.py,sha256=
|
|
87
|
+
robot_interface/robot_interface.py,sha256=UEhzAj1kXOdyYiWjz8zxEo5BHMHRE-ZHalPFfv-qBfw,9697
|
|
88
88
|
robot_interface/test_robot_interface.py,sha256=FV1urn7SbsMyWBIcTKjsBwAG4IsXeZ6pLHE0mA9EGGs,692
|
|
89
89
|
robot_interface/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
90
90
|
robot_interface/models/exceptions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
91
|
robot_interface/models/exceptions/robot_exceptions.py,sha256=7s9X7GaQVhQiTnXLi-a51qRUX9CU7F4rEUMoRBiWF_I,10548
|
|
92
|
-
robot_interface/models/initialize/__init__.py,sha256=
|
|
92
|
+
robot_interface/models/initialize/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
93
93
|
robot_interface/models/initialize/initialize_params.py,sha256=2eG5Aq5bDKU6tVkaUMAoc46GERBgyaKkqv6yLupdRLc,164
|
|
94
|
-
robot_interface/models/inspection/__init__.py,sha256=
|
|
94
|
+
robot_interface/models/inspection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
95
95
|
robot_interface/models/inspection/inspection.py,sha256=nSoKTDPRWnpaJuoKnaE_2EEJ6oH4dQkqEuECcQTvVhI,2059
|
|
96
96
|
robot_interface/models/mission/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
97
97
|
robot_interface/models/mission/mission.py,sha256=QZBDQiOmpb4C7nNCf1PaCWwpvAc8jrhwHSznOe2YhX8,842
|
|
98
98
|
robot_interface/models/mission/status.py,sha256=C_viZWNTYOncWCdurx7Pko_D9d595QmHuJZBT8YMHUg,724
|
|
99
|
-
robot_interface/models/mission/task.py,sha256=
|
|
99
|
+
robot_interface/models/mission/task.py,sha256=dk_CYaABD9WxQswd1xX3D5AHpcXwREwnloREEg1JbI0,4980
|
|
100
100
|
robot_interface/models/robots/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
101
|
+
robot_interface/models/robots/battery_state.py,sha256=BuZcgC3NaHDU-2WrjZBER2Ps96CnLy3vE2P4v4NajN4,108
|
|
101
102
|
robot_interface/models/robots/media.py,sha256=Bo6XisTND9MOsxvJe6mWtKumFCpX6pbEBzEnAKpoIpU,232
|
|
102
103
|
robot_interface/models/robots/robot_model.py,sha256=pZQsqhn9hh6XE3EjMZhWMzYqg5oJ4CJ4CXeOASKvEf8,452
|
|
103
104
|
robot_interface/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
104
105
|
robot_interface/telemetry/mqtt_client.py,sha256=DkzYZNWFaJkG3AVc0dM4Bj52hZEQj-14Q75zqzQcv9A,2988
|
|
105
|
-
robot_interface/telemetry/payloads.py,sha256=
|
|
106
|
+
robot_interface/telemetry/payloads.py,sha256=WMR4VtL-K0JmUA22OcCaZ_RJwT5X2UfcLuwSNg9Skno,1580
|
|
106
107
|
robot_interface/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
107
108
|
robot_interface/utilities/json_service.py,sha256=nU2Q_3P9Fq9hs6F_wtUjWtHfl_g1Siy-yDhXXSKwHwg,1018
|
|
108
109
|
robot_interface/utilities/uuid_string_factory.py,sha256=_NQIbBQ56w0qqO0MUDP6aPpHbxW7ATRhK8HnQiBSLkc,76
|
|
109
|
-
isar-1.25.
|
|
110
|
-
isar-1.25.
|
|
111
|
-
isar-1.25.
|
|
112
|
-
isar-1.25.
|
|
113
|
-
isar-1.25.
|
|
114
|
-
isar-1.25.
|
|
110
|
+
isar-1.25.3.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
|
|
111
|
+
isar-1.25.3.dist-info/METADATA,sha256=vr0jDbMJpedOe28_CMWh5-5aEPkbjEKhBQh61sdPFa0,30578
|
|
112
|
+
isar-1.25.3.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
|
113
|
+
isar-1.25.3.dist-info/entry_points.txt,sha256=TFam7uNNw7J0iiDYzsH2gfG0u1eV1wh3JTw_HkhgKLk,49
|
|
114
|
+
isar-1.25.3.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
|
|
115
|
+
isar-1.25.3.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .initialize_params import InitializeParams
|
|
@@ -5,7 +5,7 @@ from alitra import Pose, Position
|
|
|
5
5
|
from pydantic import BaseModel, Field
|
|
6
6
|
|
|
7
7
|
from robot_interface.models.exceptions.robot_exceptions import ErrorMessage
|
|
8
|
-
from robot_interface.models.inspection import (
|
|
8
|
+
from robot_interface.models.inspection.inspection import (
|
|
9
9
|
Audio,
|
|
10
10
|
Image,
|
|
11
11
|
Inspection,
|
|
@@ -3,7 +3,7 @@ from queue import Queue
|
|
|
3
3
|
from threading import Thread
|
|
4
4
|
from typing import Callable, List, Optional
|
|
5
5
|
|
|
6
|
-
from robot_interface.models.initialize import InitializeParams
|
|
6
|
+
from robot_interface.models.initialize.initialize_params import InitializeParams
|
|
7
7
|
from robot_interface.models.inspection.inspection import Inspection
|
|
8
8
|
from robot_interface.models.mission.mission import Mission
|
|
9
9
|
from robot_interface.models.mission.status import RobotStatus, TaskStatus
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
from dataclasses import dataclass
|
|
2
2
|
from datetime import datetime
|
|
3
|
-
from typing import List
|
|
3
|
+
from typing import List, Optional
|
|
4
4
|
|
|
5
5
|
from alitra import Pose
|
|
6
6
|
from transitions import State
|
|
7
7
|
|
|
8
8
|
from robot_interface.models.mission.status import RobotStatus
|
|
9
|
+
from robot_interface.models.robots.battery_state import BatteryState
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
@dataclass
|
|
@@ -30,6 +31,7 @@ class TelemetryPosePayload(TelemetryPayload):
|
|
|
30
31
|
@dataclass
|
|
31
32
|
class TelemetryBatteryPayload(TelemetryPayload):
|
|
32
33
|
battery_level: float
|
|
34
|
+
battery_state: Optional[BatteryState] = None
|
|
33
35
|
|
|
34
36
|
|
|
35
37
|
@dataclass
|
|
@@ -48,13 +50,6 @@ class DocumentInfo:
|
|
|
48
50
|
url: str
|
|
49
51
|
|
|
50
52
|
|
|
51
|
-
@dataclass
|
|
52
|
-
class VideoStream:
|
|
53
|
-
name: str
|
|
54
|
-
url: str
|
|
55
|
-
type: str
|
|
56
|
-
|
|
57
|
-
|
|
58
53
|
@dataclass
|
|
59
54
|
class RobotStatusPayload:
|
|
60
55
|
isar_id: str
|
|
@@ -76,7 +71,6 @@ class RobotInfoPayload:
|
|
|
76
71
|
robot_serial_number: str
|
|
77
72
|
robot_asset: str
|
|
78
73
|
documentation: List[DocumentInfo]
|
|
79
|
-
video_streams: List[VideoStream]
|
|
80
74
|
host: str
|
|
81
75
|
port: int
|
|
82
76
|
capabilities: List[str]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|