示例#1
0
    def mqtt_on_heartbeat(self, client, userdata, message):
        """On heartbeat message

        :param client: the Client instance that is calling the callback.
        :type client: paho.mqtt.client.Client
        :param userdata: user data of any type and can be set when creating a new client instance or with user_data_set(userdata).
        :type userdata: all
        :param message: The message variable is a MQTTMessage that describes all of the message parameters.
        :type message: paho.mqtt.client.MQTTMessage
        """
        hb = HeartbeatMessage(message)
        add_ctrl, add_node, state = hb.get_heartbeat()
        if add_ctrl is not None:
            self.lease_mgr.heartbeat_hadd(add_ctrl, add_node, state)
示例#2
0
    def on_heartbeat(self, client, userdata, message):
        """On request

        :param client: the Client instance that is calling the callback.
        :type client: paho.mqtt.client.Client
        :param userdata: user data of any type and can be set when creating a new client instance or with user_data_set(userdata).
        :type userdata: all
        :param message: The message variable is a MQTTMessage that describes all of the message parameters.
        :type message: paho.mqtt.client.MQTTMessage
        """
        hb = HeartbeatMessage(message)
        add_ctrl, add_node, state = hb.get_heartbeat()
        if add_ctrl is None or add_node is None:
            return
        if (add_ctrl == self.remote_hadd[0]) and \
           (add_node == self.remote_hadd[1] or add_node == -1) :
               self.state = state
示例#3
0
 def mqtt_on_heartbeat_message(self, client, userdata, message):
     """On generic message
     """
     self.heartbeat_message = message
     hb = HeartbeatMessage(self.heartbeat_message)
     hbadd_ctrl, hbadd_node, state = hb.get_heartbeat()
     if hbadd_ctrl is not None and hbadd_node is not None:
         if self.heartbeat_waiting is None:
             if self.heartbeat_waitings is None:
                 self.heartbeat_received = True
             elif HADD % (hbadd_ctrl, hbadd_node) in self.heartbeat_waitings:
                 self.heartbeat_waitings.remove(HADD % (hbadd_ctrl, hbadd_node))
                 if len(self.heartbeat_waitings) == 0:
                     self.heartbeat_received = True
         elif self.heartbeat_waiting == HADD % (hbadd_ctrl, hbadd_node):
             self.heartbeat_received = True
     print "HADD : %s/%s = %s" % (hbadd_ctrl, hbadd_node, state)