def __init__()

in src/ipc_pubsub/mqtt_core_pubsub.py [0:0]


    def __init__(self, message_callback, mqtt_subscribe_topics, mqtt_timeout=5):

        log.info('Initialising AWS Greengrass V2 MQTT IoT Core PubSub Client')

        super().__init__()

        try:

            # PubSub timeout secs. 
            self.mqtt_timeout = mqtt_timeout
            
            # PubSub message callback.
            self.message_callback = message_callback

            # MQTT Subscribe Topics
            self.mqtt_subscribe_topics = mqtt_subscribe_topics

            # List of active topics subscribed too.
            self.mqtt_subscribed_topics = []

            # Create the mqtt_clients
            self.mqtt_subscribe_client = awsiot.greengrasscoreipc.connect()
            self.mqtt_publish_client = awsiot.greengrasscoreipc.connect()

            # Init MQTT PubSub's
            self.mqtt_qos = QOS.AT_MOST_ONCE
            self.init_mqtt_subscriber()
            self.init_mqtt_publisher()

        except InterruptedError as iErr: # pragma: no cover 
            log.error('INTERRUPTED_EXCEPTION: MQTT IoT Core Publisher / Subscriber init was interrupted. ERROR MESSAGE: {}'.format(iErr))

        except Exception as err: # pragma: no cover 
            log.error('EXCEPTION: Exception occurred initialising AWS Greengrass IPC MQTT Core PubSub. ERROR MESSAGE: {}'.format(err))