Skip to content

Commit 73f1285

Browse files
committed
Decode pose message before sending telemetry
1 parent 7c7dd12 commit 73f1285

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

src/isar_turtlebot/turtlebot/turtlebot.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
RobotCommunicationException,
1212
RobotException,
1313
)
14+
from robot_interface.models.exceptions.robot_exceptions import (
15+
RobotInvalidTelemetryException,
16+
)
1417
from robot_interface.models.inspection.inspection import Inspection
1518
from robot_interface.models.mission import InspectionStep, Step, StepStatus
1619
from robot_interface.telemetry.payloads import (
@@ -27,7 +30,10 @@
2730
TakeThermalImageHandler,
2831
)
2932
from isar_turtlebot.turtlebot.step_handlers.stephandler import StepHandler
30-
from isar_turtlebot.utilities.pose_message import encode_initial_pose
33+
from isar_turtlebot.utilities.pose_message import (
34+
decode_pose_message,
35+
encode_initial_pose,
36+
)
3137

3238

3339
class Turtlebot:
@@ -95,8 +101,14 @@ def set_initial_pose(self, pose: Pose) -> None:
95101
self.bridge.initial_pose.publish(encode_initial_pose(pose=pose))
96102

97103
def get_pose_telemetry(self, robot_id: str) -> str:
104+
pose_turtlebot: dict = self.bridge.pose.get_value()
105+
if not pose_turtlebot:
106+
raise RobotInvalidTelemetryException
107+
108+
pose: Pose = decode_pose_message(pose_message=pose_turtlebot)
109+
98110
pose_payload: TelemetryPosePayload = TelemetryPosePayload(
99-
pose=self.bridge.pose.get_value(),
111+
pose=pose,
100112
robot_id=robot_id,
101113
timestamp=datetime.utcnow(),
102114
)

0 commit comments

Comments
 (0)