Beispiel #1
0
 def __init__(self, **kwargs):
     self.id = kwargs.get("id", None)
     self.type = kwargs.get("type")
     self.source = kwargs.get("source")
     self.target = kwargs.get("target")
     self.timestamp = kwargs.get("timestamp", date_time_utils.timestamp())
     self.data = kwargs.get("data", {})
     self.received_timestamp = kwargs.get("received_timestamp", None)
Beispiel #2
0
    def parse_message(self, message_body):
        message_json = json.loads(message_body)

        now = date_time_utils.timestamp()

        #Required fields
        id = message_json["id"]
        source = message_json['source']
        type = message_json['type']

        #Optional fields
        target = message_json.get('target')
        timestamp = message_json.get('timestamp', now)
        received_timestamp = message_json.get('received_timestamp', now)

        data = message_json.get('data', {})

        return Message(id=id, source=source, type=type, target=target, data=data, timestamp=timestamp, received_timestamp=received_timestamp)
Beispiel #3
0
    def __init__(self, mqtt_host, mqtt_port, mqtt_topic="messagebus"):
        self.logger = logging.getLogger(__name__)
        self.subscriptions = []
        self.counter = date_time_utils.timestamp()
        self._thread_constructor = threading.Thread
        self.logger.debug("Message bus initialized")

        self.mqtt_client = mqtt.Client(client_id="messagebus-backend", clean_session=False)
        self.mqtt_host = mqtt_host
        self.mqtt_port = mqtt_port
        self.mqtt_topic = mqtt_topic

        self.mqtt_client.on_connect = self.on_connect
        self.mqtt_client.on_disconnect = self.on_disconnect
        self.mqtt_client.on_message = self.on_message
        self.mqtt_client.on_subscribe = self.on_subscribe

        self.connected = False