This commit is contained in:
Sem van der Hoeven
2023-05-30 16:18:22 +02:00
parent 30c6c8499d
commit 48e1ce8f5b
2 changed files with 23 additions and 14 deletions

View File

@@ -23,6 +23,7 @@ var connect_to_api = function () {
}); });
ws.on("message", function message(message) { ws.on("message", function message(message) {
try {
var msg = JSON.parse(message); var msg = JSON.parse(message);
if (msg.type == "STATUS") { if (msg.type == "STATUS") {
last_status = msg.data; last_status = msg.data;
@@ -32,6 +33,10 @@ var connect_to_api = function () {
last_image = msg.image; last_image = msg.image;
received_picture = true; received_picture = true;
} }
} catch (error) {
console.log("could not parse as json")
}
}); });
ws.on("error", function error(err) { ws.on("error", function error(err) {

View File

@@ -90,7 +90,11 @@ class ApiListener(Node):
def publish_message(self, message): def publish_message(self, message):
# self.get_logger().info(f'Publishing message: {message}') # self.get_logger().info(f'Publishing message: {message}')
if self.websocket is not None: if self.websocket is not None:
try:
asyncio.run(self.websocket.send(message)) asyncio.run(self.websocket.send(message))
except Exception as e:
self.get_logger().error(
'Something went wrong while sending a message to the websocket: ' + str(e))
else: else:
self.get_logger().error('Trying to publish message but no websocket connection') self.get_logger().error('Trying to publish message but no websocket connection')
@@ -134,12 +138,12 @@ class ApiListener(Node):
with open(result_filename, 'rb') as f: with open(result_filename, 'rb') as f:
self.get_logger().info('Reading image') self.get_logger().info('Reading image')
read_file = f.read() read_file = f.read()
# base64_img = base64.b64encode(read_file) base64_img = base64.b64encode(read_file)
# self.message_queue.append(json.dumps( self.message_queue.append(json.dumps(
# {'type': ResponseMessage.IMAGE.name, 'image': base64_img.decode('utf-8')})) {'type': ResponseMessage.IMAGE.name, 'image': base64_img.decode('utf-8')}))
# send image as binary file # send image as binary file
self.message_queue.append(read_file) # self.message_queue.append(read_file)
except Exception as e: except Exception as e:
self.get_logger().error('Something went wrong while sending a take picture request and waiting for the response: %r' % (e)) self.get_logger().error('Something went wrong while sending a take picture request and waiting for the response: %r' % (e))