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) {
var msg = JSON.parse(message);
if (msg.type == "STATUS") {
last_status = msg.data;
} else if (msg.type == "IMAGE") {
console.log("got picture");
// console.log(msg.image);
last_image = msg.image;
received_picture = true;
}
try {
var msg = JSON.parse(message);
if (msg.type == "STATUS") {
last_status = msg.data;
} else if (msg.type == "IMAGE") {
console.log("got picture");
// console.log(msg.image);
last_image = msg.image;
received_picture = true;
}
} catch (error) {
console.log("could not parse as json")
}
});
ws.on("error", function error(err) {

View File

@@ -90,7 +90,11 @@ class ApiListener(Node):
def publish_message(self, message):
# self.get_logger().info(f'Publishing message: {message}')
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:
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:
self.get_logger().info('Reading image')
read_file = f.read()
# base64_img = base64.b64encode(read_file)
# self.message_queue.append(json.dumps(
# {'type': ResponseMessage.IMAGE.name, 'image': base64_img.decode('utf-8')}))
base64_img = base64.b64encode(read_file)
self.message_queue.append(json.dumps(
{'type': ResponseMessage.IMAGE.name, 'image': base64_img.decode('utf-8')}))
# send image as binary file
self.message_queue.append(read_file)
# self.message_queue.append(read_file)
except Exception as e:
self.get_logger().error('Something went wrong while sending a take picture request and waiting for the response: %r' % (e))