Ankündigung
Einklappen
Keine Ankündigung bisher.
SmartHomeNG Release v1.8.1
Einklappen
X
-
Du hast das Plugin mit „plugin_name“ eingebunden. Dann müssen die Metadaten stimmen. Mit „class_path“ und „class_name“ solltest Du auch weiterhin ein classic Plugin einbinden können. Besser ist es aber, das Plugin auf ein SmaetPlugin umzustellen, wie bmxp beschrieben hat.
-
Es gibt ein Muster Plugin unter dev/sample_plugin zu finden. Und in der Doku findest Du Sachen zur Plugin Entwicklung. Da wird auch drin stehen was zu Keys wichtig ist. Da ich oben nichts zu aaeigwp gefunden habe vermute ich, das Du das bereits rausgenommen hast.
Einen Kommentar schreiben:
-
Danke für die Hilfen,
Durch das selektive Einschalten der Plugins konnte ich das aaeigwp-Plugin als Übertäter eingrenzen.
Das ist ein Plugin Eigenbau. Seit 3 Jahren schreibe ich aus einer Exceldatei Werte in eine eigene MySQL—Datenbank.
Die Version hat jetzt einige shNG-Versionen überlebt.
Jetzt habe ich keine Ahnung was/woher Keys plötzlich kommen?
Wo finde ich eine Erklärung oder ein Plugin-Muster um mein Plugin anzupassen?
Es ist recht einfach, exceldatei lesen und die Daten in eine MySQL-Tabelle schreiben
Nur die „keys“ sagen mir leider nichts! (???)
Es gab mal ein Muster zur Plugin-Erstellullung, danach habe ich damals gebastelt.
Danke für jede Hilfe
,
Einen Kommentar schreiben:
-
Das sieht aus, als versuchst Du ein Plugin mit ungültigen Metadaten zu laden.
Was ist aaeigwp denn für ein Plugin?
Ansonsten jeweils den Abschnitt für ein Plugin auskommentieren und neu starten (bis der Fehler weg ist). Dann hast Du das verursachende Plugin gefunden.
Einen Kommentar schreiben:
-
Hallo Bernd,
hier meine etc/plugin.yaml
Ungenutzte Einträge rausgelöscht, KNX und OW hängen noch am alten System.
smartvisu ist aufrufbar, allerdings Fehlermeldung kein websocket. Keine knx und ow-Daten, aber das ist ja klar!
Code:%YAML 1.1 --- #database: # plugin_name: database # driver: sqlite3 # connect: # - database:./var/db/smarthomeng.db # - check_same_thread:0 #knx: # plugin_name: knx ## plugin_enabled: True ## host: 127.0.0.1 ## port: 6720 # send_time: 600 # update date/time every 600 seconds, default none # time_ga: 0/7/0 # default none # date_ga: 0/7/1 # default none ## busmonitor: on # log all knx messages, default off ## readonly: False ## don't write to knx bus, default False cli: plugin_name: cli plugin_enabled: False ip: 0.0.0.0 #port: 2323 update: True hashed_password: 1245a9633edf47b7091f37c4d294b5be5a9936c81c5359b16d1c4833729965663f1943ef240959c53803fedef7ac19bd59c66ad7e7092d7dbf155ce45884607d weather_darksky: class_name: DarkSky class_path: plugins.darksky key: b158462ff8ea6xx,,,xx5aad59241ae latitude: '48.60794391' longitude: '11.56989634' lang: de cycle: '600' database_mysql: plugin_name: database instance: nas precision: 4 driver: pymysql connect: - host:localhost - user:smarthome - passwd:smarthome - db:smarthome - port:3306 wp: plugin_name: aaeigwp ow: plugin_name: onewire host: 127.0.0.1 port: 4304 cycle: 900 log_counter_cycle_time: 5 # Autogenerierung von Webseiten für SmartVISU UND Aktivierung des Nutzdatenprotokolls über Websocket für die smartVISU smartvisu: plugin_name: smartvisu smartvisu_dir: /var/www/html/smartvisu generate_pages: False #overwrite_templates: True #visu_style: blk #default_acl: rw #handle_widgets: True list_deprecated_warnings: True #stateengine: # plugin_name: stateengine # log_level: 2 # log_directory: var/log/stateengine/ # startup_delay_default: 120 # suspend_time_default: 10800 # laststate_name_manually_locked: gesperrt # laststate_name_suspended: ausgesetzt # log_maxage: 1 #fb1: # plugin_name: avm ## class_path: plugin.avm # username: admin # optional # password: 'xyxy7590' # host: fritz.box # port: 49443 # cycle: 300 # ssl: True # use https or not # verify: false # verify ssl certificate # call_monitor: 'True' ## call_monitor_incoming_filter: "... ## optional, don't set if you don't want to watch only one specific number with your call monitor" # avm_identifier: fritzbox_7590 # boxcar: uzsu: plugin_name: uzsuZuletzt geändert von schloessl; 17.02.2021, 17:32.
Einen Kommentar schreiben:
-
Ich habe mir etwas eingefangen und finde es nicht.
Alle plugins und Items schon durch sucht!
Wo kann ich einen Debug einbauen um das Problem zu lösen. Leider gibt es in den Fehlermeldungen keinen (für mich verständlichen) Hinweis.
Gerne liefere ich weitere Daten zur Klärung! Sehe aber leider nicht den Ansatz.
Git soeben für smarthome und plugins vor den Start ausgeführt.
Hier ist wohl der Knackpunkt:
2021-02-17 14:02:13 ERROR lib.smarthome Unhandled exception: 'str' object has no attribute 'keys'
Danke für jede Hilfestellung!
Code:2021-02-17 14:02:06 WARNING lib.smarthome.main -------------------- Init SmartHomeNG 1.8.1.master (84873f74) -------------------- 2021-02-17 14:02:06 WARNING lib.smarthome.main Running in Python interpreter 'v3.8.6 final', from directory /usr/local/smarthome 2021-02-17 14:02:06 WARNING lib.smarthome.main - on Linux-5.10.11-v7l+-armv7l-with-glibc2.28 (pid=3844) 2021-02-17 14:02:06 WARNING lib.smarthome.main - Nutze Feiertage für Land 'DE', Provinz 'BY', 3 benutzerdefinierte(r) Feiertag(e) definiert 2021-02-17 14:02:13 ERROR lib.smarthome Unhandled exception: 'str' object has no attribute 'keys' <class 'AttributeError'> File "/usr/local/smarthome/bin/smarthome.py", line 275, in <module> sh.start() File "/usr/local/smarthome/lib/smarthome.py", line 615, in start self.plugins = lib.plugin.Plugins(self, configfile=self._plugin_conf_basename) File "/usr/local/smarthome/lib/plugin.py", line 120, in __init__ plugin_name, self.meta = self._get_pluginname_and_metadata(plugin, _conf[plugin]) File "/usr/local/smarthome/lib/plugin.py", line 222, in _get_pluginname_and_metadata meta = Metadata(self._sh, (plugin_name+plugin_version).replace('.',os.sep), 'plugin') File "/usr/local/smarthome/lib/metadata.py", line 143, in __init__ self._itemdeflist = list(self.itemdefinitions.keys())
Einen Kommentar schreiben:
-
Schau mal in den develop branch bzw hier
https://knx-user-forum.de/forum/supp...in#post1617159
- Likes 1
Einen Kommentar schreiben:
-
Hallo zusammen,
habe gestern auch auf 1.8.1 aktualisiert. Gab es eine Änderung wie die Autogenerator-Items aufgebaut werden müssen? Ich nutze die Variante für Faule mit der automatischen "item" Ersetzung, damit ich nicht jedes Mal den Item-Pfad angeben muss. Bei der Erzeugung der nav_aside Widgets kommt aber etwas komisches raus, da werden die Raumnamen stattdessen verwendet, das meckert auch das Log an. Ich habe das neue smartvisu Plugin aktiv.
Hier ein Beispiel, gilt analog für alle meine anderen Items mit nav_aside Widgets:
Generiert wird in der rooms_menu.html:Code:eg: gaestebad: name: Gästebad sv_page: room sv_img: scene_toilet_alternat.svg sv_nav_aside: "{{ basic.print('[MARKIEREN]item[/MARKIEREN]', '[MARKIEREN]item[/MARKIEREN].rtr.ist', '°C') }}" sv_nav_aside2: "{{ basic.symbol('[MARKIEREN]item[/MARKIEREN]2', '[MARKIEREN]item[/MARKIEREN].deckenleuchte', '', icon1~'light_light.png') }}"
Erwartet hätte ich statt z.B. room.Gästebad.deckenleuchte eg.gaestebad.deckenleuchteCode:<li data-icon="false"> <a href="index.php?page=room.Gästebad"> <img class="icon" src="{{ icon0 }}scene_toilet_alternat.svg" /> <h3>Gästebad</h3> <div class="ui-li-aside">{{ basic.print('room.Gästebad', 'room.Gästebad.rtr.ist', '°C') }}<br/>{{ basic.symbol('room.Gästebad2', 'room.Gästebad.deckenleuchte', '', icon1~'light_light.png') }}</div> </a> </li>
So ist es auch auf den Raumseiten in den Widgets generiert. Dort werden auch die Widgets angezeigt, die nav_aside-Widgets bleiben jedoch leer.
Im Log steht:
Mache ich irgendwas falsch oder ist da irgendwo noch ein Bug drin?Code:2021-02-16 22:11:05 ERROR modules.websocket prepare_monitor: No item 'room.Gästebad.rtr.ist' found 2021-02-16 22:11:05 ERROR modules.websocket prepare_monitor: No item 'room.Gästebad.deckenleuchte' found
Danke & Gruß
Dominik
Einen Kommentar schreiben:
-
Naja, das zeigt eigentlich nur, das Du mehrere Instanzen von SHNG am Laufen hast.
Es ist aber eigentlich wie beim Highlander: Es kann nur einen geben
Lösung:
Alle Instanzen müssen erstmal weg, Du hast zuviele gestartet.
Auf der shell hilft ein kill -9 <process id>
Dann kannst Du SHNG einmal starten und abwarten. Solltest Du wiederum mehrere Instanzen bekommen, mußt Du erstmal feststellen warum.
(z.B. Hast Du eventuell SHNG mal als root gestartet und daher falsche Zugriffsrechte?)
Einen Kommentar schreiben:
-
Dank Bernd für die schnelle Reaktion
Ich habe etwas Probleme mit
smarthome.py --start oder --stop -d -s
es hilt nur noch dsa smarthome-py -r
Nach dem ps ax | grep smarthome.py
Nachtrag, ja da ist das Problem. Ich habe immer mit dem --start noch einmal nachgelegt.Code:[smarthome@R42SmartHomeNG ~]$ ps ax | grep smarthome.py 832 ? Sl 5:07 python3 /usr/local/smarthome/bin/smarthome.py -r 5197 ? Sl 21:20 python3 bin/smarthome.py -r 5415 ? Sl 5:17 python3 /usr/local/smarthome/bin/smarthome.py --start 12752 pts/4 S+ 0:00 grep --color=auto smarthome.py 13003 ? Sl 0:26 python3 /usr/local/smarthome/bin/smarthome.py -r 13028 ? Sl 1:06 /usr/bin/python3 /usr/local/smarthome/bin/smarthome.py 17650 ? Sl 0:21 python3 /usr/local/smarthome/bin/smarthome.py -r 21463 ? Sl 1:08 python3 /usr/local/smarthome/bin/smarthome.py --start [smarthome@R42SmartHomeNG ~]$
Aber der ganze Erfolg ist es noch nicht.
Code:2021-02-15 19:31:40 WARNING lib.smarthome.main -------------------- Init SmartHomeNG 1.8.1.master (84873f74) -------------------- 2021-02-15 19:31:40 WARNING lib.smarthome.main Running in Python interpreter 'v3.7.3 final', from directory /usr/local/smarthome 2021-02-15 19:31:40 WARNING lib.smarthome.main - on Linux-5.10.11-v7l+-armv7l-with-debian-10.8 (pid=1114) 2021-02-15 19:31:41 WARNING lib.smarthome.main - Nutze Feiertage für Land 'DE', Provinz 'BY', 2 benutzerdefinierte(r) Feiertag(e) definiert 2021-02-15 19:31:43 WARNING lib.module Not loading module Mqtt from section 'mqtt': Module is disabled 2021-02-15 19:31:48 ERROR lib.db DB-API import failed for "pymysql": No module named 'pymysql' - module installed? 2021-02-15 19:31:48 ERROR plugins.database Initialization of database API failed 2021-02-15 19:31:48 ERROR lib.plugin Plugins: Plugin 'database' initialization failed, plugin not loaded 2021-02-15 19:31:48 ERROR lib.smarthome Unhandled exception: 'str' object has no attribute 'keys' <class 'AttributeError'> File "/usr/local/smarthome/bin/smarthome.py", line 275, in <module> sh.start() File "/usr/local/smarthome/lib/smarthome.py", line 615, in start self.plugins = lib.plugin.Plugins(self, configfile=self._plugin_conf_basename) File "/usr/local/smarthome/lib/plugin.py", line 119, in __init__ plugin_name, self.meta = self._get_pluginname_and_metadata(plugin, _conf[plugin]) File "/usr/local/smarthome/lib/plugin.py", line 221, in _get_pluginname_and_metadata meta = Metadata(self._sh, (plugin_name+plugin_version).replace('.',os.sep), 'plugin') File "/usr/local/smarthome/lib/metadata.py", line 142, in __init__ self._itemdeflist = list(self.itemdefinitions.keys())
die plugin.yaml dazu :
Code:database_mysql: plugin_name: database # instance: nas precision: 4 driver: pymysql connect: - host:localhost - user:root - passwd:smarthome - db:smarthome - port:3306Zuletzt geändert von bmx; 15.02.2021, 20:30.
Einen Kommentar schreiben:
-
Also wenn Du auf einem Rechner zwei Instanzen von SHNG startest dann passiert sowas. Kann es sein, das bei Dir SHNG als Daemon installiert und auch gestartet ist?
Was sagt denn ein ps ax | grep smarthome.py auf der shell?
Einen Kommentar schreiben:
-
Es sah alles schon eimal sehr gut aus, SHNG lief ich konnte in der Visu herumbasteln. Dann verlie8 mich meine FB7490.
Jetzt bekam ich eine FB7590. Meine Raspis sind wieder erreichbahr per Putty und Winscp.
Zuvor als Vorsicht genannt: : Ich habe noch ein Raspberry 3 mit dem Vorgänger smarthomeNG im Netz.
Jetzt komme ich mit der 1.8.1 nicht mehr über den INIT hinaus, da Port 8383 belegt ist. (Siehe Code)
Spugt da das laufende NG hinein? Kann ich den Port 8383 umbenennen? Was ist sinnvoll?
Die Einrichtung habe ich jeweils mit der Anleitung verglichen und sehe keinen Fehler.
Welche Daten muss kontrollieren oder zur Verfügung stellen?
Ich habe im AVM /FB.yaml statt fritzbox 7490 jeweils fritzbox7590 eingetragen, ist das in Ordnung?
Ich bitte um eine Hilfestellung!Code:2021-02-15 16:51:20 WARNING lib.smarthome.main -------------------- Init SmartHomeNG 1.8.1.master (84873f74) -------------------- 2021-02-15 16:51:20 WARNING lib.smarthome.main Running in Python interpreter 'v3.8.6 final', from directory /usr/local/smarthome 2021-02-15 16:51:20 WARNING lib.smarthome.main - on Linux-5.10.11-v7l+-armv7l-with-glibc2.28 (pid=17650) 2021-02-15 16:51:20 WARNING lib.smarthome.main - Nutze Feiertage für Land 'DE', Provinz 'BY', 2 benutzerdefinierte(r) Feiertag(e) definiert 2021-02-15 16:51:21 CRITICAL modules.http Error starting http module: port 8383 is already in use 2021-02-15 16:51:21 ERROR lib.module Modules: Module 'http' initialization failed, module not loaded 2021-02-15 16:51:21 ERROR modules.admin Module 'admin': Not initializing - Module 'http' has to be loaded BEFORE this module 2021-02-15 16:51:21 ERROR lib.module Modules: Module 'admin' initialization failed, module not loaded 2021-02-15 16:51:21 WARNING lib.module Not loading module Mqtt from section 'mqtt': Module is disabled 2021-02-15 16:51:26 ERROR plugins.darksky Plugin 'darksky': Not initializing the web interface 2021-02-15 16:51:26 ERROR lib.plugin Plugins: Plugin 'darksky' initialization failed, plugin not loaded 2021-02-15 16:51:27 ERROR plugins.database Plugin 'database': Not initializing the web interface 2021-02-15 16:51:27 ERROR lib.smarthome Unhandled exception: 'str' object has no attribute 'keys' <class 'AttributeError'> File "/usr/local/smarthome/bin/smarthome.py", line 275, in <module> sh.start() File "/usr/local/smarthome/lib/smarthome.py", line 615, in start self.plugins = lib.plugin.Plugins(self, configfile=self._plugin_conf_basename) File "/usr/local/smarthome/lib/plugin.py", line 119, in __init__ plugin_name, self.meta = self._get_pluginname_and_metadata(plugin, _conf[plugin]) File "/usr/local/smarthome/lib/plugin.py", line 221, in _get_pluginname_and_metadata meta = Metadata(self._sh, (plugin_name+plugin_version).replace('.',os.sep), 'plugin') File "/usr/local/smarthome/lib/metadata.py", line 142, in __init__ self._itemdeflist = list(self.itemdefinitions.keys())
Danke schon jetzt!
WolfgangZuletzt geändert von schloessl; 15.02.2021, 17:19.
Einen Kommentar schreiben:
-
Msinn Mit der 1.8.1 bekomme ich jetzt oder immer noch diese Meldungen im Log:
Die Seiten werden aber immer noch aufgerufen. Gibt es da einen workaround?Code:2021-02-09 13:46:25 ERROR modules.websocket smartVISU_protocol_v4: Exception in 'await websocket.send(url-command)': code = 1006 (connection closed abnormally [internal]), no reason 2021-02-09 13:46:25 ERROR modules.websocket smartVISU_protocol_v4: Exception in 'await websocket.send(url-command)': code = 1006 (connection closed abnormally [internal]), no reason 2021-02-09 13:46:25 ERROR modules.websocket smartVISU_protocol_v4: Exception in 'await websocket.send(url-command)': code = 1006 (connection closed abnormally [internal]), no reason 2021-02-09 13:46:25 ERROR modules.websocket smartVISU_protocol_v4: Exception in 'await websocket.send(url-command)': code = 1006 (connection closed abnormally [internal]), no reason 2021-02-09 13:46:25 WARNING modules.websocket visu >command: '{"cmd": "url", "url": "index.php?page=index"}' - to 192.168.178.176:49765Zuletzt geändert von schuma; 09.02.2021, 21:41.
Einen Kommentar schreiben:
-
Einen Kommentar schreiben:


Einen Kommentar schreiben: