Closed tlrider99 closed 4 years ago
Hi,
2020-04-26 15:14:03 ERROR - Exception for request to http://192.168.10.35:20721/integrations/smart-home/getDevices: java.lang.NullPointerException
Diese Stelle im Code checkt den Eintrag für smarthome_hub_host
aus den Settings. Kannst du mal im SEPIA Hub unter "core settings" gucken, was dort eingetragen ist?
Ich vermute Folgendes ist passiert:
Du hast in den Settings gar keinen Host eingetragen sondern versucht direkt über die editierbare URL im SEPIA Hub auf openHAB zuzugreifen. Im Grunde sollte das natürlich auch klappen :sweat_smile: aber der eigentliche Ablauf ist so gedacht:
In der ersten Integration von openHAB lief der Aufruf direkt aus dem SEPIA Hub raus weswegen dieses Feld überhaupt editierbar ist. Ich fixe es mal so, dass eine aussagekräftige Fehlerbeschreibung kommt. Danke für die Meldung :+1:
[EDIT] Ich sehe gerade es gibt sogar die richtige Fehlermeldung dafür, sie wird nur nicht getriggert weil der Nullpointer vorher auftritt ^^: "host address is unknown to server and call has been blocked! Please set 'smarthome_hub_host' in your server settings first."
[EDIT2] Mir ist jetzt wieder eingefallen warum abweichende Adressen nicht mehr erlaubt sind. Das ist ein "Sicherheitsfeature" um zu verhindern dass User beliebige URL von Server aus aufrufen ^_^
Warum kann ich mich eigentlich nicht mit dem Username "admin" anmelden sondern nur mit der UID? Kleine Frage am Rande :-).
Ach so und bezüglich dieser Frage :grin: , man kann entweder die UID oder die Email nutzen, im Falle des Admins ist das: admin@sepia.localhost
Mhh, es ist eingetragen. hast du noch eine Idee. Vielleicht liegt es ja am Error vor der Tastatur ;-), was mich wundert, warum trag ich es in den core settings ein, wenn ich es dann immer wieder auch auf der Seite eintragen muß?
Mhh, es ist eingetragen [...] hast du noch eine Idee. Vielleicht liegt es ja am Error vor der Tastatur ;-), was mich wundert, warum trag ich es in den core settings ein, wenn ich es dann immer wieder auch auf der Seite eintragen muß?
Oh das ist merkwürdig :thinking: . Was passiert denn wenn du 'LOAD HUB INFO' drückst? Eigentlich sollte das Feld sich dann selber mit der korrekten Adresse füllen und der Punkt davor müsste grün leuchten. Hattest du den Server neugestartet nach dem Eintrag? Eine Sache die jetzt gerade noch kein Problem macht, aber wenn die Adresse richtig lädt wird er sich danach vermutlich beschweren weil das "http://" fehlt.
Wenn ich 'LOAD HUB INFO' drücke passiert eigentlich nichts. Ins Log wird auch nichts geschrieben.
Scheinbar sind die Daten in der Config aber nicht im Server. Hattest du den Server zwischendurch schon mal neugestartet?
Sorry, natürlich nicht :-( nach dem Neustart kommt jetzt das im Log: 2020-04-26 19:39:19 LOG - JSON-Backup-worker: START 2020-04-26 19:39:19 LOG - JSON-Backup-worker: Data has been stored! (1 time(s)) It took (ms): 299, average (ms): 10000 2020-04-26 19:39:22 ERROR - Service:OpenHAB - failed to get devices from server! 2020-04-26 19:39:29 ERROR - Service:OpenHAB - failed to get devices from server!
In Openhab sind die Items noch vom letzten Test so definiert. Hat sich seit 2.4.0 etwas geändert?
["sepia-type=light", "sepia-room=diningroom"]
Eine Sache die jetzt gerade noch kein Problem macht, aber wenn die Adresse richtig lädt wird er sich danach vermutlich beschweren weil das "http://" fehlt.
Jetzt greift das hier glaube ich ;-)
In Openhab sind die Items noch vom letzten Test so definiert. Hat sich seit 2.4.0 etwas geändert?
Ja, aber eigentlich nur intern. Ich denke es liegt am fehlenden http in der URL
Sorry, natürlich nicht :-(
Ich glaube ich muss den Hinweis noch deutlicher machen :sweat_smile:
Du hattest recht, es lag am fehlenden http. Jetzt steht die Verbindung.
Dankeschön und einen schönen Abend!
Super, viel Spaß! :-) Stay tuned for v2.5.0 (soon!) :grin:
Für wann hast du denn die 2.5 geplant? Beim Sprachbefehl kommt immer das mir das Recht fehlt, manuell kann ich das Licht aber über den Client schalten. Grüße und Danke für deine tolle Arbeit!
Beim Sprachbefehl kommt immer das mir das Recht fehlt, manuell kann ich das Licht aber über den Client schalten.
Bist du im Browser Client und greifst auf die andere Maschine über http://[IP].. oder http://[hostname]... zu? Über dieses Problem habe ich hier und hier Einiges geschrieben.
Für wann hast du denn die 2.5 geplant?
Ab Morgen ist Feature Stopp und dann muss noch ordentlich getestet werden. Wenn alles gut geht eventuell nächstes Wochenende :-)
Hallo Florian, ich greife über Chrome und Android Client(Motorola One) auf den Server zu und bekomme jedesmal die gleiche Andwort "Sorry Dirk, aber du brauchst erst eine Erlaubnis um diesen Smart Home Service zu nutzen". Der User ist smorthomeadmin und user. Manuell schalten über das smart home Menü klappt, nur nicht per chat oder sprache.
Grüße
Ach so, ich dachte es wäre ein Mikrophon Problem ^^. Neue User dürfen aus Sicherheitsgründen zunächst nichts machen am Smart Home System, sie brauchen erst die User-Rolle 'smarthomeguest'. Ich vermute die fehlt bei dir noch.
Moin, genau die Rolle fehlte mir. Ich dachte wenn der User die Rolle smarthomeadmin hat, beinhaltet sie auch Teile der Rolle smarthomeguest. Danke!
Hi Florian,
hier der Auszug aus dem Log, ich hoffe es hilft. Warum kann ich mich eigentlich nicht mit dem Username "admin" anmelden sondern nur mit der UID? Kleine Frage am Rande :-).
2020-04-26 15:09:31 LOG - server running on port 20721 2020-04-26 15:09:31 [Thread-3] INFO log - Logging initialized @14939ms to org.eclipse.jetty.util.log.Slf4jLog 2020-04-26 15:09:31 [Thread-3] INFO EmbeddedJettyServer - == Spark has ignited ... 2020-04-26 15:09:31 [Thread-3] INFO EmbeddedJettyServer - >> Listening on 0.0.0.0:20721 2020-04-26 15:09:31 [Thread-3] INFO Server - jetty-9.4.18.v20190429; built: 2019-04-29T20:42:08.989Z; git: e1bc35120a6617ee3df052294e433f3a25ce7097; jvm 11.0.6+10-post-Raspbian-1deb10u1 2020-04-26 15:09:32 [Thread-3] INFO session - DefaultSessionIdManager workerName=node0 2020-04-26 15:09:32 [Thread-3] INFO session - No SessionScavenger set, using defaults 2020-04-26 15:09:32 [Thread-3] INFO session - node0 Scavenging every 600000ms 2020-04-26 15:09:32 [Thread-3] INFO AbstractConnector - Started ServerConnector@2f3e2d{HTTP/1.1,[http/1.1]}{0.0.0.0:20721} 2020-04-26 15:09:32 [Thread-3] INFO Server - Started @15663ms 2020-04-26 15:09:34 LOG - Clients: Checking connection to socket messenger... 2020-04-26 15:09:40 LOG - Clients: Checking connection to socket messenger... 2020-04-26 15:09:40 LOG - Clients: Socket messenger found. 2020-04-26 15:09:44 [Thread-2] INFO SocketClientHandler - WEBSOCKET-CLIENT - Connecting to: ws://localhost:20723/messages/ 2020-04-26 15:09:45 [WebSocketClient@3306242-33] INFO SepiaSocketClient - WEBSOCKET-CLIENT: Got connection 2020-04-26 15:09:45 [Thread-21] INFO SepiaSocketClient - WEBSOCKET-CLIENT: Authenticating user: 'uid1005' 2020-04-26 15:10:28 LOG - JSON-Backup-worker: START 2020-04-26 15:10:28 LOG - JSON-Backup-worker: Data has been stored! (1 time(s)) It took (ms): 283, average (ms): 10000 2020-04-26 15:13:04 ERROR - ID type - autodetectType(...) failed! Id: admin 2020-04-26 15:13:12 ERROR - ID type - autodetectType(...) failed! Id: admin 2020-04-26 15:14:03 ERROR - Exception for request to http://192.168.10.35:20721/integrations/smart-home/getDevices: java.lang.NullPointerException 2020-04-26 15:14:03 ERROR - TRACE: net.b07z.sepia.server.assist.endpoints.IntegrationsEndpoint.smartHomeIntegration(IntegrationsEndpoint.java:106) 2020-04-26 15:14:03 ERROR - TRACE: net.b07z.sepia.server.assist.endpoints.IntegrationsEndpoint.lambda$static$0(IntegrationsEndpoint.java:41) 2020-04-26 15:14:03 ERROR - TRACE: net.b07z.sepia.server.assist.endpoints.IntegrationsEndpoint.handle(IntegrationsEndpoint.java:77) 2020-04-26 15:14:03 ERROR - TRACE: net.b07z.sepia.server.assist.server.Start.lambda$loadEndpoints$23(Start.java:340) 2020-04-26 15:14:03 ERROR - TRACE: spark.RouteImpl$1.handle(RouteImpl.java:72)