def publishResults()

in modules/edge-inference/src/inference.py [0:0]


def publishResults(ipc_client, topic, message):
    print("step info: {}".format(message))
    print('topic', topic)
    print("before publishing: {}".format(time.time()))
    request = PublishToTopicRequest()
    request.topic = topic
    publish_message = PublishMessage()
    publish_message.binary_message = BinaryMessage()
    publish_message.binary_message.message = bytes(json.dumps(message), "utf-8")
    request.publish_message = publish_message
    operation = ipc_client.new_publish_to_topic()
    operation.activate(request)
    futureResponse = operation.get_response()
    try:
        futureResponse.result(TIMEOUT)
        print("after publishing: {}".format(time.time()))
        print('Successfully published to topic: ' + topic)
    except Exception as e:
        print('Exception while publishing to topic: ' +
                topic, file=sys.stderr)
        raise e