Пример #1
0
    def on_open(self, sid, data):
        self.init()

        data = json.loads(data)
        self.config.write("version", data["version"])
        self.config.write("port", data["port"])

        storage = Storage()
        last = storage.fetch_last_measurement_by_name(data["name"])
        if last:
            now = arrow.now()
            if now.timestamp - int(last["timestamp"]) > 3600:
                match = re.match(
                    ".+( [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2})$",
                    data["name"])
                if match:
                    data["name"] = data["name"][:-len(match.group(1))]
                data["name"] += " " + arrow.now().format("YYYY-MM-DD HH:mm")
        self.config.write("name", data["name"])

        try:
            self.config.write("rate", float(data["rate"]))
        except ValueError:
            pass

        self.emit("connecting")
        self.daemon.start()
Пример #2
0
    def on_open(self, sid, data):
        self.init()

        data = json.loads(data)
        self.config.write("version", data["version"])

        if "port" in data:
            self.config.write("port", data["port"])

        if "ble_address" in data:
            self.config.write("ble_address", data["ble_address"])
        else:
            data["ble_address"] = self.config.read("ble_address")

        storage = Storage()
        last = storage.fetch_last_measurement_by_name(data["name"])
        if last:
            if time() - int(last["timestamp"]) > 3600:
                match = re.match(
                    ".+( [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2})$",
                    data["name"])
                if match:
                    data["name"] = data["name"][:-len(match.group(1))]
                data["name"] += " " + pendulum.now().format("YYYY-MM-DD HH:mm")

        if not data["name"]:
            data["name"] = "My measurement"

        self.config.write("name", data["name"])

        try:
            self.config.write("rate", float(data["rate"]))
        except ValueError:
            pass

        tc_ble = data["version"].startswith(
            "TC") and "USB" not in data["version"]
        if tc_ble and ("ble_address" not in data or not data["ble_address"]):
            self.daemon.log("BLE address is missing. Select address in Setup")
            return

        self.emit("connecting")
        self.daemon.start()