Ejemplo n.º 1
0
 def _ok_command(self, e):
     try:
         value = float(self._value)
         set_piped(self._redis, {PersistentGpsRedisKeys.KEY_ODO: value})
     except ValueError:
         pass
     finally:
         self.destroy()
Ejemplo n.º 2
0
    log("Initializing Redis Connection ...")
    R = get_redis(CONFIG)

    log("Initializing Control Thread ...")
    MPD_CONTROL = MpdControlThread(CONFIG, R, CONFIG_CONTROLLER_INTERVAL)
    MPD_CONTROL.start()

    try:
        log("MPD Data & Control Daemon is running ...")
        while True:
            if not MPD_DATA_THREAD.isAlive() or not MPD_CONTROL.isAlive():
                raise ConnectionError()
            current_data = MPD_DATA_THREAD.get_current_data()
            if current_data:
                set_piped(R, current_data)
            sleep(CONFIG_DATAPOLLER_INTERVAL)
    except (KeyboardInterrupt, SystemExit):
        log("Shutdown requested!")
    except ConnectionError:
        EXIT_CODE = EXIT_CODES['DataSourceLost']
        log("Connecting to MPD server lost, restarting daemon and trying again ..."
            )
    except redis_exceptions.ConnectionError:
        EXIT_CODE = EXIT_CODES['DataDestinationLost']
        log("Connection to Redis Server lost! Daemon is quitting and waiting for relaunch"
            )
    except:
        EXIT_CODE = EXIT_CODES['UnhandledException']
        print_unhandled_exception()
    finally:
Ejemplo n.º 3
0
                        distance_traveled = vincenty(old_xy, new_xy).meters
                        if distance_traveled > 0:
                            incr_piped(
                                RP, {
                                    PersistentGpsRedisKeys.KEY_ODO:
                                    distance_traveled,
                                    PersistentGpsRedisKeys.KEY_TRIP_A:
                                    distance_traveled,
                                    PersistentGpsRedisKeys.KEY_TRIP_B:
                                    distance_traveled
                                })
                last_data = data
            else:
                last_data = data

            set_piped(R, data)
            sleep(CONFIG_DATAPOLLER_INTERVAL)
    except (KeyboardInterrupt, SystemExit):
        log("Shutdown requested!")
    except redis_exceptions.ConnectionError:
        EXIT_CODE = EXIT_CODES['DataDestinationLost']
        log("Connection to Redis Server lost! Daemon is quitting and waiting for relaunch"
            )
    except:
        EXIT_CODE = EXIT_CODES['UnhandledException']
        print_unhandled_exception(APP_NAME)
    finally:
        if not GPS_POLLER.stop_safe() and EXIT_CODE == EXIT_CODES['OK']:
            EXIT_CODE = EXIT_CODES['BackgroundThreadTimedOut']
        if not GPS_POLLER.stop_safe() and EXIT_CODE == EXIT_CODES['OK']:
            EXIT_CODE = EXIT_CODES['BackgroundThreadTimedOut']
Ejemplo n.º 4
0
                    r_data[NetworkInfoRedisKeys.KEY_WLAN0_IP] = ip
                    if wifi_data:
                        r_data[NetworkInfoRedisKeys.KEY_WLAN0_STRENGTH] = wifi_data['strength']
                        r_data[NetworkInfoRedisKeys.KEY_WLAN0_SSID] = wifi_data['ssid']

                if CONFIG_IFACE_ALIAS_WLAN1:
                    ip = get_iface_address(ips, CONFIG_IFACE_ALIAS_WLAN1)
                    wifi_data = get_iface_signal_data(CONFIG_IFACE_ALIAS_WLAN1)

                    r_data[NetworkInfoRedisKeys.KEY_WLAN1_IP] = ip
                    if wifi_data:
                        r_data[NetworkInfoRedisKeys.KEY_WLAN1_STRENGTH] = wifi_data['strength']
                        r_data[NetworkInfoRedisKeys.KEY_WLAN1_SSID] = wifi_data['ssid']

                r_data[NetworkInfoRedisKeys.KEY_ALIVE] = datetime.now(pytz.utc)
                set_piped(R, r_data)
            sleep(CONFIG_DATAPOLLER_INTERVAL)
    except (KeyboardInterrupt, SystemExit):
        log("Shutdown requested!")
    except redis_exceptions.ConnectionError:
        EXIT_CODE = EXIT_CODES['DataDestinationLost']
        log("Connection to Redis Server lost! Daemon is quitting and waiting for relaunch")
    except:
        EXIT_CODE = EXIT_CODES['UnhandledException']
        print_unhandled_exception()
    finally:
        POLLER.stop_safe()

    end_print()
    exit(EXIT_CODE)
Ejemplo n.º 5
0
 def _reset_trip_b_callback(self, e):
     set_piped(self._persist_redis, {PersistentGpsRedisKeys.KEY_TRIP_B: 0})