def runConfig(conf: conf.BasicConfig, logger:logging.Logger): from Tools import ConsoleInputTools print("Pins standartmäßig nach BCM schema (gpiozero angaben gestattet)") conf["rpiDoor/unlockPin"] = ConsoleInputTools.get_input("Pinnummer der entsperrung ", 17) conf["rpiDoor/relayPulseLength"] = ConsoleInputTools.get_number_input("Wie viele ms soll das Relais gehalten werden?", 250) conf["rpiDoor/openedPin"] = ConsoleInputTools.get_input("Pinnummer für Offen/Geschloßen", 27) conf["rpiDoor/closedPinHigh"] = ConsoleInputTools.get_bool_input("Tür zu = in high?") conf["rpiDoor/name"] = ConsoleInputTools.get_input("Sichtbarer Name")
def run(self): from Tools import ConsoleInputTools as cit self.c["DHT/dev/pin"] = cit.get_number_input( "Pin Nummer von Datenpin? ", 22) self.c["DHT/dev/type"] = cit.get_input( "DHT Type? Möglich ist 11 22 2302 ", "22") self.c["DHT/name"] = cit.get_input("Name für Hass ", True, "DHT") self.c["DHT/update_seconds"] = cit.get_number_input( "Wie oft soll gemessen werden? ", 60)
def run(self): from Tools import ConsoleInputTools from Mods.victron.plugin import VeDirectPlugin self.c["name"] = ConsoleInputTools.get_input( "Gerätename überschreiben?. \n-> ", require_val=False, std_val=None)
def runConfig(conf: Config.BasicConfig, logger: logging.Logger): c = Config.PluginConfig(conf, PluginLoader.getConfigKey()) c["dev"] = ConsoleInputTools.get_input("Serial Device Pfad: ", require_val=True, std_val="/dev/ttyACM0") c["tp"] = [[0, 0], [50, 30], [60, 50], [75, 75], [80, 100]] c["provider"] = "rpiCPUtemp"
def run(self): from Tools import ConsoleInputTools as cit self.c["rPiUndervoltage/name"] = cit.get_input( "Unter welchem Namen soll die Strom unterfversorgung angegeben werden. \n-> ", require_val=True, std_val="Undervoltage") self.c["rPiUndervoltage/checks"] = cit.get_number_input( "Wie oft soll getestet werden (Sekunen)?= ", 1)
def run(self): from Tools import ConsoleInputTools as cit self.c["name"] = cit.get_input( "Unter welchem Namen soll der LED Streifen angegeben werden. \n-> ", require_val=True, std_val="WS2812B") self.c[""] = cit.get_number_input( "Wie oft soll getestet werden (Sekunen)?= ", 1)
def run(self): from Tools import ConsoleInputTools as cit self.c["rpiCPUtemp/name"] = cit.get_input( "Unter welchem Namen soll die CPU Temperatur angegeben werden. \n-> ", require_val=True, std_val="CPU Temperatur") self.c["rpiCPUtemp/diff"] = cit.get_number_input( "Wie viel muss sich die Temperatur ändern, um neue Temperatur zu senden= ", 0.5)
def getNewDeviceEntry(): from Tools import ConsoleInputTools config = {} name = ConsoleInputTools.get_input("Name für den Eintrag?") config["type"] = "switch" if ConsoleInputTools.get_bool_input( "Soll der eintrag als Schalter fungieren?", False) else "action" config["confirm"] = ConsoleInputTools.get_bool_input( "Auswählen des Eintrages bestätigen?", False) return name, config
def run(self): from Tools import ConsoleInputTools as cit self.c["GrowFingerprint/name"] = cit.get_input("Unter welchem Namen soll der Fingerprint sensor bekannt sein. \n-> ", require_val=True, std_val="Fingerprint") self.c["GrowFingerprint/WAKEUP"] = cit.get_number_input("WAKEUP Pinnr:", 0) if self.c["GrowFingerprint/WAKEUP"] > 0: self.c["GrowFingerprint/WAKEUP_active_secs"] = cit.get_number_input("Sekunden die Aktiv auf Finger gewartet wird, nach einem WAKEUP?\n ->", 30) if cit.get_bool_input("Fingerprint Modul Passwort ändern? ", False): if cit.get_bool_input("Zufälliges Passwort erstellen?", False): import random sysr = random.SystemRandom() bits = sysr.getrandbits(32) self.c["GrowFingerprint/new_pw"] = bits else: self.c["GrowFingerprint/new_pw"] = cit.get_number_input("Bitte 32Bit Passwort eingeben: ", 0x00000000)
def runConfig(conf: conf.BasicConfig, logger: logging.Logger): from Tools import ConsoleInputTools rpin = ConsoleInputTools.get_number_input( "Pin Nummer des Taster Relais ", 22) delay = ConsoleInputTools.get_number_input( "Wie viele ms soll das Relais gehalten werden?", 250) apin = ConsoleInputTools.get_number_input( "Pin Nummer des ALERT Signals", 33) addr = ConsoleInputTools.get_number_input("Addresse des ADC", 0x49) gain = ConsoleInputTools.get_number_input("GAIN für ADC", 1) readings = ConsoleInputTools.get_number_input( "Wie oft soll ADC gelesen werden, bevor aktion durchgeführt wird?", 2) print( "Jetzt kommt die Positions abfrage. \nWenn Kanal nicht bnutzt nur enter drücken.\n" ) pos0 = ConsoleInputTools.get_number_input("Position für 1 Kanal", -1) pos1 = ConsoleInputTools.get_number_input("Position für 2 Kanal", -1) pos2 = ConsoleInputTools.get_number_input("Position für 3 Kanal", -1) pos3 = ConsoleInputTools.get_number_input("Position für 4 Kanal", -1) door_open_time = ConsoleInputTools.get_number_input( "Wie lange braucht das Tor von zu bis auf oder umgekehrt maximal?\n>", 15) door_open_retry = ConsoleInputTools.get_number_input( "Wie oft soll versucht werden das Tor in die Position zu bringen?\n>", 3) name = ConsoleInputTools.get_input("Wie heißt das Tor?", require_val=True) conf["PiGarage/relayPin"] = rpin conf["PiGarage/relayPulseLength"] = delay conf["PiGarage/Hall/ALERT_PIN"] = apin conf["PiGarage/Hall/ADC_ADDR"] = addr conf["PiGarage/Hall/GAIN"] = gain conf["PiGarage/Hall/adc_readings"] = readings conf["PiGarage/Hall/Channels_Position"] = [pos0, pos1, pos2, pos3] conf["PiGarage/Hall/max_move_time"] = door_open_time conf["PiGarage/Hall/max_move_retrys"] = door_open_retry conf["PiGarage/name"] = name do_calib = ConsoleInputTools.get_bool_input( "Kalibration jetzt starten?", True) if do_calib: PluginLoader.runCalibrationProcess(conf, logger)
def configure(self, config: tc.BasicConfig): host = ConsoleInputTools.get_input("Broadcast Addresse: ", std_val="255.255.255.255") port = ConsoleInputTools.get_number_input("Port: ", 50222) events = ConsoleInputTools.get_bool_input("Wetter events senden? ", True) dereg = ConsoleInputTools.get_bool_input( "Remove existing from MQTT Autodiscovery?", False) config["Weatherflow/broadcast_addr"] = host config["Weatherflow/broadcast_port"] = port config["Weatherflow/events"] = events if dereg: config["Weatherflow/deregister"] = dereg print("Beim nächsten normalen Start wird alles deregestriert!")
def configure(self, conff: conf.BasicConfig, logger: logging.Logger): from Tools import ConsoleInputTools conf = conff.PluginConfig(conff, "logind") conf["allow_power_off"] = ConsoleInputTools.get_bool_input( "\nErlaube Ausschalten: ", True) conf["allow_suspend"] = ConsoleInputTools.get_bool_input( "\nErlaube Bereitschaftsmodus: ", True) conf["allow_reboot"] = ConsoleInputTools.get_bool_input( "\nErlaube Neustarten: ", True) conf["allow_inhibit"] = ConsoleInputTools.get_bool_input( "\nErlaube Blockieren von Schlafmodus: ", True) if ConsoleInputTools.get_bool_input("\nBenutze anderen Namen: ", True): conf["custom_name"] = ConsoleInputTools.get_input( "\nDen Namen Bitte: ", True) conf["inactivity_ms"] = ConsoleInputTools.get_number_input( "\nInaktivität nach x Millisekunden: ")
def addSmartMeter(self): meter = {} meter["port"] = ConsoleInputTools.get_input("Serielle Schnittstelle", require_val=True) meter["baudrate"] = ConsoleInputTools.get_number_input("Baudrate", map_no_input_to=2400) meter["parity"] = ConsoleInputTools.get_input("Parity", require_val=False, std_val="serial.PARITY_NONE") meter["stopbits"] = ConsoleInputTools.get_input("Stopbits", std_val="serial.STOPBITS_ONE") meter["bytesize"] = ConsoleInputTools.get_input("Bytesize", std_val="serial.EIGHTBITS") meter["key_hex_string"] = ConsoleInputTools.get_input("Entschlüsselungskey", require_val=True) meter["interval"] = ConsoleInputTools.get_number_input("Interval (Nicht mehr als 5)", map_no_input_to=1) meter["supplier"] = ConsoleInputTools.get_input("Netz Betreiber", std_val="EVN") self.c["meters"].append(meter) self.currIndex += 1
def run(self): from Tools import ConsoleInputTools as cit self.c["name"] = cit.get_input( "Unter welchem Namen soll der PC angegeben werden. \n-> ", require_val=True, std_val="WindowsPC") self.c["enabled/wmi_pnp"] = cit.get_bool_input( "PnP Geräte aktivieren? \n->", True) self.c["enabled/powerevents"] = cit.get_bool_input( "PowerEvents aktivieren? \n->", True) self.c["enabled/systray"] = cit.get_bool_input( "Systemtray aktivieren? \n->", True) if self.c["enabled/systray"]: print( "CTRL-C drücken sobald kein neuer Aktionseintrag erstellt werden soll." ) while True: try: name, entry = win32Systray.getNewDeviceEntry() self.c["systray/itemList/{}".format(name)] = entry except KeyboardInterrupt: break
def configure(self, conf: conf.BasicConfig, logger:logging.Logger): from Tools import ConsoleInputTools as cit conf["ModemManager/SigSecs"] = cit.get_number_input("Aktualisierung alle Sekunden? ", 60) conf["ModemManager/SMS/nummer"] = cit.get_input("SMS Empfänger Nummer", require_val=False) conf["ModemManager/SMS/notify_reboot"] = cit.get_bool_input("Bei Neustart SMS Senden", True)
def runConfig(conf: conf.BasicConfig, logger: logging.Logger): from Tools import ConsoleInputTools conf["JsonPipe/Path"] = ConsoleInputTools.get_input( "Pfad zur namedpipe angeben. (Pipe muss nicht vorhanden sein.)", True)
def runConfig(conf: conf.BasicConfig, logger: logging.Logger): from Tools import ConsoleInputTools conf["BleTrack/mode"] = ConsoleInputTools.get_bool_input( "Hauptsucher (nur einer pro MQTT instanz) ") conf["BleTrack/room"] = ConsoleInputTools.get_input("Name des Raums ")
def run(self): from Tools import ConsoleInputTools while True: action = ConsoleInputTools.get_number_input( "Was möchtest du tun?\n 1) Neuen anlegen\n 2)Einen löschen\n 3) Beenden\n ", 3) if action != 1 and action != 2 and action != 3: print("Nee war keine gültige eingabe.") continue elif action == 2: print( "Diese ShellSwitche stehen zur auswahl.\n 0) Nichts löschen." ) indicies = {} index = 1 for name in self.c.get("entrys", {}).keys(): print("{}) {}\n On: \"{}\" Off: \"{}\"".format( index, name, self.c.get("entrys/{}/on_command".format(name), ""), self.c.get("entrys/{}/off_command".format(name)))) indicies[index] = name toDelete = ConsoleInputTools.get_number_input( "Bitte die Nummer eingeben.", 0) if toDelete == 0: continue else: if indicies.get(toDelete, None) is None: print("Fehler! Zahl ungültig.") else: del self.c["entrys/{}/off_command".format( indicies[toDelete])] elif action == 1: entry = {"wasOn": False} onOff = ConsoleInputTools.get_bool_input( "Welcher Modus soll angewendet werden? Ein/Aus (J) oder Pulse (N)", True) entry["init_command"] = ConsoleInputTools.get_input( "Kommando beim initialisieren?: ") entry["clean_command"] = ConsoleInputTools.get_input( "Kommando beim beenden?: ") entry["onOff"] = onOff if onOff: entry["on_command"] = ConsoleInputTools.get_input( "Kommando beim Einschalten?: ") entry["off_command"] = ConsoleInputTools.get_input( "Kommando beim Ausschalten?: ") else: entry["on_command"] = ConsoleInputTools.get_input( "Kommando beim Pulsieren?: ") entry["setOnLoad"] = ConsoleInputTools.get_bool_input( "Status beim Starten wiederherstellen?") entry["name"] = ConsoleInputTools.get_input( "Name des Switches?") entry["icon"] = ConsoleInputTools.get_input( "Welches icon soll gesendet werden? (z.B.: mdi:lightbulb") entry["broadcast"] = ConsoleInputTools.get_bool_input( "Soll der Switch in HomeAssistant gefunden werden?", True) self.c["entrys"][entry["name"].replace(" ", "")] = entry elif action == 3: break self.c["dereg"] = True