Beispiel #1
0
    def on_message_received(self, communication, msg, header, payload):
        time = datetime.datetime.now()
        acid = header.acid

        for cb in self._callbacks.get(msg.id, ()):
            if self._message_for_selected_uav(acid) or cb.for_selected_uav(acid):
                cb.call_cb(msg, header, payload, time)

        if self._message_for_selected_uav(acid):
            self._rxts.update_message(msg, payload)
            self._times.add(utils.calculate_dt_seconds(self._lastt, time))
            self._lastt = time

        if acid not in self._seen_acids:
            self._seen_acids[acid] = True
            self.emit("uav-detected", acid)
Beispiel #2
0
 def _got_pong(self, msg, header, payload):
     #calculate difference in send and rx in milliseconds
     self._pingtime = utils.calculate_dt_seconds(self._sendping, datetime.datetime.now())
     self._pingtime *= 1000.0