NEWS
SOLVED Adapter für Nello One
-
@Zefau
Hallo ich hab da ein kleines Problem mit dem Aktuellen Adapter (2.0.2)
Hatte ihn erfolgreich im Einsatz, alles funktionierte wie erwünscht.
Mir ist jedoch aufgefallen das so ca. alle 2 Wochen sich die Daten im Datenpunkt immer wieder ändern, also die User die per nello App die Türe öffnen.
Bis dahin ist es etwas ärgerlich das man das Blockly Script immer wieder erweitern muss um auf die neuen Daten zu reagieren, aber nun gut es funktioniert.Hatte das bei uns im Haus so umgesetzt das wenn per nello App die Haustüre geöffnet wird, von einem Familien Mitglied, die Wohnungstür über Nuki nach 15 sek. geöffnet wird
(die zeit die gebraucht wird um zur Wohnungstüre zu kommen) und zwischenzeitlich die Alarmanlage deaktiviert wird.Der Datensatz der in iot custom_nello erscheint ist immer wieder anferst aufgebaut der Inhalt aber der gleiche.
Seit knapp einer woche erscheinen nun gar keine Daten mehr nur der Fehler 404
iot.0 warn Invalid URL key. Status update is disabled: {"error":"Unsupported version"} wird ausgegeben im Log.
Aber komischerweise wurde an den Einstellungen nichts mehr verändert, never touch a running system.Habe den Adapter daraufhin deinstalliert und neu aufgesetzt aber jetzt erscheint der Datenpunkt überhaupt nicht mehr.
-
Hi,
ich habe einen ioBroker adapter für nello entwickelt und auf Github eingestellt: https://github.com/Zefau/ioBroker.nello
Es würde mich freuen, wenn die nello Nutzer unter euch den Adapter testen könnten.
Aktuell werden alle hinterlegten Türen / Locations eingelesen und es besteht die Möglichkeit über ioBroker (und damit über Alexa) die Tür zu öffnen. Außerdem werden die hinterlegten Time Windows ausgelesen und die Events werden mitprotokolliert (swipe, deny sowie geo und tw (time window)).
Bitte ein Issue auf Github eröffnen, sofern ihr Fehler findet (die es bestimmt noch gibt :-D).
Vielen Dank für's Testen und viele Grüße
Zefau
-
@Silverstone69 sagte in Adapter für Nello One - Wlan Upgrade für Gegensprechanlage:
Mir ist jedoch aufgefallen das so ca. alle 2 Wochen sich die Daten im Datenpunkt immer wieder ändern, also die User die per nello App die Türe öffnen.
Welchen Datenpunkt meinst du hier? .events.feed im nello Adapter oder den Datenpunkt im iot Adapter?
Die Struktur der Daten ist immer gleich. Sonst würde der ganze Adapter nicht funktionieren. Was genau ist denn anders?Kannst du den Adapter mal auf Debug umstellen und mir das Log zukommen lassen (per PM).
Cheers,
Zefau -
Scheinbar funktioniert der Webhook auf Seite von nello aktuell nicht. Du kannst die URL
https://service.iobroker.in/v1/iotService?service=custom_nello&key= ..
auch selbst aufrufen. Dies führt zwar zu einem Fehler im ioBroker Log, zeigt aber, ob der Webhook selbst grundsätzlich funktioniert.Bei mir schickt aber nello wie gesagt aktuell auch keine Daten an den Webhook. Keine Ahnung, was da los ist.
-
@Silverstone69 Es lag an meiner Konfiguration, dass es nicht ging. Bei mir funktioniert es jetzt wieder. Probiere es gerne bei dir nochmal und lass uns sonst per PM austauschen, um deine Fehler im Detail zu analysieren.
-
Hallo
Also das mit den verschiedenen Strukturen die ich bekommen habe sehen so aus.... es sind insgesamt bisher vier verschiedene für den gleichen User.
{"action": "swipe", "data": {"location_id": "dxxxxxxxxd-xxxxx-xxxx-xxxxx-xxxxxxxxxxxxxf", "name": "xxxxxxxxxx xxxxxxxxx", "user_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxx"}}
{"action": "swipe", "data": {"name": "xxxxxxxx xxxxxxxxx", "location_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxf", "user_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"}}
{"data": {"user_id": "xxxxxxxxxxxxxxxxxxxxxxxxxx", "location_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "name": "xxxxxxxxxxxxxxxxxxxx"}, "action": "swipe"}
{"action": "swipe", "data": {"name": "xxxxxxxxxxxxxxxxx", "user_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx", "location_id": "xxxxxxxxxxxxxxxxxxxxxxxxxx"}}Diese bekomme ich ja unter iot.0 datenpunkt Service.
Desweiteren habe ich jetzt aber das Problem das ich diesen custom.nello datenpunkt garnicht mehr zum laufen bekomme.
Er erscheint nicht mehr nachdem ich alles neu konfiguriert habe,weil ich den nello adapter deinstaliert hatte um ihn neu aufzusetzen.
im log kommt zuerst die Meldung von iot.0
Received service "custom_nello", but it is not found in whitelist.
Aber der dienst ist genau so wie du es beschrieben hast in der whitelist drin, habe es mehrfach auf korekkte schreibweiße kontrolliert.
Wegen der Fehlfunktion mit der Nello api schnittstelle also wegen dem Webhook habe ich schon dem nello support angeschrieben , aber auser das sie sich das anschauen kamm noch nichts zurück.
Wenn ich versuche den Link https://service.iobroker.in/v1/iotService.................... aufzurufen dann bekomme ich diese Meldung {"error":"Unknown service"}.
weiß jetzt wirklich nicht mehr weiter. Komisch das von heute auf morgen das überhaupt nicht mehr funktionieren will. -
@Silverstone69 Die Daten sind alle gleich und folgenden derselben Struktur. Es gibt immer einen Index
action
mit den Wertendeny
,swipe
,tw
odergeo
und es gibt einen Indexdata
, indem die Daten (abhängig deraction
) stehen. Siehe auch https://github.com/Zefau/ioBroker.nello#states-1 bzw. https://nellopublicapi.docs.apiary.io/#reference/0/locations-collection/add-/-update-webhook.Wenn du die iot URL selbst aufrust, dann sollte im Datenpunkt
undefined
stehen. Wenn es - wie bei dir -{"error":"Unknown service"}
ausgibt, dann ist ggf. die Whitelist krum.
In der Whitelist hast dunello
stehen, richtig? Die URL lautet aberhttps://service.iobroker.in/v1/iotService?service=custom_nello&key=...
(alsocustom_nello
).Cheers,
Zefau -
@Zefau
Also ich habe leider keinen Index mit Action bei mir in den Datenpunkten unter nello stehen, und die anderen ändern sich ja nicht, oder verstehe ich dich jetzt da falsch?
Deswegen habe ich ja den wert in den iot.0 Datenpunkt genommen weil er ja immer user bezogen erzeugt wird und ich so zuverlässig ausschließen konnte das nicht bei jedem klingeln die Alarmanlage deaktiviert und die Türe geöffnet wird.
Und genau diese Daten die von nello hereinkommen ändern sich alle paar tage , der Inhalt ist gleich aber die Positionen der Daten änderten sich dauernd.
Also musste ich leider immer wieder mein Script erweitern damit die Sache weiterhin funktionierte.In der Whitelist steht bei mir custom_nello drin hatte vorsichtshalber auch zusätzlich noch nello drin stehen, aber das Ergebnis ist bei mir wirklich immer das gleiche ich bekomme
von nello keine Daten mehr rein in den iot.0 Datenpunkten.
Dein Adapter funktioniert aber wenn ich per Hand in iobroker die Türe öffne. -
@Silverstone69 Der Datenpunkt ist (eigl.) kein String / keine Zeichenkette, sondern ein Objekt. Wenn du das entsprechend berücksichtigst, dann ist die Reihenfolge egal. Also einfach mit
JSON.parse
einlesen und dann die Daten per Index abrufen.var state = getState('iot.0.services.custom_nello'); if (state !== undefined && state.val !== undefined && state.val) { var data = JSON.parse(state.val); // nun hast du data.action sowie // data.data, also data.data.user_id, data.data.location_id, etc. }
Bitte schau nochmal auf Github. Dort habe ich die Anleitung aktualisiert / präzisiert und um Screenshots erweitert: https://github.com/Zefau/ioBroker.nello#advanced-setup
- in der Whitelist
nello
(nichtcustom_nello
) - in der URL aber dann
custom_nello
UND dein API key, den du im IFTT tab von ioBroker.iot findet (also den mit der URL) - im nello Adapter eintragen und speichern
- bei dir selbst klingeln oder die URL manuell aufrufen
- wenn das nicht geht, mir dein ioBroker Log zuschicken, der den Start des nello Adapters protokolliert, dann schau ich da nochmal quer
- in der Whitelist
-
Hallo
Habe heute mal deinen Adapter auf die Version 2.0.3 upgedatet und nochmals die Konfiguration komplett neu aufgesetzt.
Jetzt geht es wieder wie vorher. der Datenpunkt ist wieder da , und es werden wieder Daten angezeigt. Soweit so gut .Habe auch das Java Script von deinen letzten post mal kopiert und bei mir eingefügt. Es Zeigt mir auch wiederum Daten an, nur weis ich nicht wirklich was damit anzufangen.
Wie meintest du das mit dem "Daten per Index Abrufen" ?
Kannst du mir bitte bei diesen punkt auch etwas auf die Sprünge helfen da ich nicht wirklich fit bin in solchen Sachen.Mein ziel ist es eigentlich nur das ich mit deinen Adapter, bei drei Usern im Haushalt erst die Haustüre und dann die Wohnungstür im vierten stock öffnen lasse mit Zeitversatz von 20 sek damit zwischenzeitlich die Alarmanlage deaktiviert werden kann.
Bisher hatte ich das ja auch erfolgreich im Einsatz und hat auch sehr gut funktioniert.
Nur das mit den von Nello angezeigten Datensatz, der immer wieder verdreht war hat mich gestört, da mein Script daraufhin nicht funktionierte, und immer wieder erweitert werden musste was am ende wirklich unübersichtlich war.Gibt es da einen besseren weg um die Daten aus deiner Anleitung zu nutzen das die Aktion nur dann geht wenn ein Registrierter Nutzer Die Haustüre über nello Öffnet?
Vielen dank für deine Mühe und Zeit
-
@Silverstone69 Poste mal dein Skript, dann zeige ich dir die Anpassungen darin. Mit Index abrufen meine ich, dass wenn du den unten aufgeführten Code-Schnipsel nutzt, du sowohl auf die Aktion, als auch den Benutzer zugreifen kannst.
var state = getState('iot.0.services.custom_nello'); if (state !== undefined && state.val !== undefined && state.val) { var data = JSON.parse(state.val); // nun hast du data.action sowie // data.data, also data.data.user_id, data.data.location_id, etc. if (data.data.name== 'Frau') { // öffne Tür } else if (data.data.name== 'Schwiegermutter') { // Tür geschlossen halten und alle Lichter aus machen } }
Aber wie gesagt, poste gerne dein Skript, dann kann ich das entsprechend anpassen.
Cheers,
Zefau -
Vielen dank für deine mühe, habe es nun hinbekommen.
Dank der Datenpunkte die jetzt hinzugekommen sind, geht es wirklich viel einfacher als davor. -
Hallo Leute, hallo @Zefau ,
das mag jetzt ne ganz doofe Frage sein, aber ich versuche gerade über den Cloud-Adapter einzurichten.
Aber was genau ist der API-key? bzw. wo bekomme ich den her?Habe jetzt schon 2-3 dinger versucht aber ich krieg den State unter services nicht geladen
-
Du bist bei der Anleitung https://github.com/Zefau/ioBroker.nello#iobrokercloud gefolgt?
Im ioBroker.cloud im IFTTT tab sollte es einen API key geben.
-
ja bin ich.
meinst du den oben links?
-
@Cool-runner1990 Jo, hast den probiert? Der geht nicht?
-
ja, probiert und der funtzt nicht.
wie lange braucht es denn bis der Status unter Cloud.0.services angelegt wird? -
@Cool-runner1990 Wird sofort angelegt, wenn der Event empfangen wird. Hast du die komplette Url im nello Adapter hinterlegt und mal geklingelt? Im Log sollte stehen, dass der Webhook angelegt wurde und auch, wenn der Event empfangen wurde. Sonst stell den Adapter auf Debug, stell alles ein, klingel bei dir und schick mir das Log als PM.
-
ok mache ich, aber ich muss den IFTTT-key hinten anhängen und nicht den cloud-app-key?
-
@Cool-runner1990 Da ich den iot Adapter nutze, kann ich es dir nicht genau sagen. Bei mir hat der Key das Format
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
. -
ok, das ist bei dir nicht die ID of Location von nello oder?
ich verzweifelt, hab jetzt alle Keys eingegeben die es sein könnten, es geht gar nichts:(
hat sonst jemand ne Ahnung welcher Key es ist (bei Cloud)?