diff --git a/LCS/MessageBus/src/message.py b/LCS/MessageBus/src/message.py index 8ac655a62c498e70669817917dea3f3fc3ee427e..c4824bb03c8faf69e7b4933fab9fba2d40433a22 100644 --- a/LCS/MessageBus/src/message.py +++ b/LCS/MessageBus/src/message.py @@ -194,6 +194,10 @@ class MessageContent(object): # builds, skip encode if XML tags continue in <payload>. Hack ahead! if qpidMsg.body is None: qpidMsg.body = '' # avoid find() or replace() via escape() on None + + if isinstance(qpidMsg.body, bytes): + qpidMsg.body = qpidMsg.body.decode('utf-8') + plIdx = qpidMsg.body.find('<payload>') if plIdx != -1: plIdx += len('<payload>') diff --git a/LCS/MessageDaemons/ObservationStartListener/src/ObservationStartListener.py b/LCS/MessageDaemons/ObservationStartListener/src/ObservationStartListener.py index 3f53d95fea0915776a9de2159256998216548ff5..1b0ec5a5eb943bbbcead3c6223ba2b728adb4840 100755 --- a/LCS/MessageDaemons/ObservationStartListener/src/ObservationStartListener.py +++ b/LCS/MessageDaemons/ObservationStartListener/src/ObservationStartListener.py @@ -120,7 +120,7 @@ def processMessages(receiver, matchPrefix, execPath, msgSaveDir): messageFilename = msgSaveDir + 'L' + obsId + '.parset.xml' try: - saveData(messageFilename, message) + saveData(messageFilename, message.encode('utf-8')) hosts = uniq(hosts) hosts.sort() @@ -139,7 +139,7 @@ def processMessages(receiver, matchPrefix, execPath, msgSaveDir): finally: if msg is not None: - receiver.ack() # optional for topics, needed for queues + receiver.ack(msg) # optional for topics, needed for queues def run(broker, address, matchPrefix, execPath, msgSaveDir): # Receiver test: qpid-receive -b broker_hostname -a queue_or_exchange_name -f -m 1