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,15 +23,20 @@ var connect_to_api = function () {
}); });
ws.on("message", function message(message) { ws.on("message", function message(message) {
var msg = JSON.parse(message); try {
if (msg.type == "STATUS") { var msg = JSON.parse(message);
last_status = msg.data; if (msg.type == "STATUS") {
} else if (msg.type == "IMAGE") { last_status = msg.data;
console.log("got picture"); } else if (msg.type == "IMAGE") {
// console.log(msg.image); console.log("got picture");
last_image = msg.image; // console.log(msg.image);
received_picture = true; last_image = msg.image;
} 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:
asyncio.run(self.websocket.send(message)) try:
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))