ioBroker / ioBroker.geofency

provides a websever for geofency-webhooks
MIT License
19 stars 8 forks source link

atHome und atHomeCount werden nicht aktualisiert #91

Closed jpawlowski closed 2 years ago

jpawlowski commented 2 years ago

Hallo zusammen,

seit einigen Wochen werden bei mir offenbar die atHome und atHomeCount Objekte nicht mehr aktualisiert. Die Detailobjekte unter geofency.0.Julian.Home werden jedoch ordnungsgemäß aktualisiert, wenn ich den Entry/Exit in Geofency auslöse.

Das ganze tritt auch bei einer komplett anderen Umgebung in einem anderen Haus auf, die zudem komplett neu aufgesetzt ist. Die einzige Gemeinsamkeit ist, dass beide ioBroker als Docker laufen. Dabei wird das letzte Image 7.0.1 verwendet.

Ich habe auch sämtliche ältere Adapter Versionen installiert, keine davon funktionierte. Auch die neue Beta v1.2.3 zeigt dasselbe Verhalten.

Hier ist ein Logauszug einer Anfrage ohne SSL und auch ohne Basic Auth, also möglichst schlank:

2022-10-02 14:32:37.688 - info: host.iobroker "system.adapter.geofency.0" enabled
2022-10-02 14:32:37.799 - info: host.iobroker instance system.adapter.geofency.0 started with pid 44723
2022-10-02 14:32:38.455 - debug: geofency.0 (44723) Redis Objects: Use Redis connection: 127.0.0.1:9001
2022-10-02 14:32:38.511 - debug: geofency.0 (44723) Objects client ready ... initialize now
2022-10-02 14:32:38.514 - debug: geofency.0 (44723) Objects create System PubSub Client
2022-10-02 14:32:38.515 - debug: geofency.0 (44723) Objects create User PubSub Client
2022-10-02 14:32:38.618 - debug: geofency.0 (44723) Objects client initialize lua scripts
2022-10-02 14:32:38.624 - debug: geofency.0 (44723) Objects connected to redis: 127.0.0.1:9001
2022-10-02 14:32:38.626 - silly: geofency.0 (44723) redis psubscribe cfg.o.system.user.*
2022-10-02 14:32:38.660 - silly: geofency.0 (44723) redis psubscribe cfg.o.enum.*
2022-10-02 14:32:38.663 - silly: geofency.0 (44723) objectDB connected
2022-10-02 14:32:38.665 - debug: geofency.0 (44723) Redis States: Use Redis connection: 127.0.0.1:9000
2022-10-02 14:32:38.682 - debug: geofency.0 (44723) States create System PubSub Client
2022-10-02 14:32:38.683 - debug: geofency.0 (44723) States create User PubSub Client
2022-10-02 14:32:38.750 - debug: geofency.0 (44723) States connected to redis: 127.0.0.1:9000
2022-10-02 14:32:38.751 - silly: geofency.0 (44723) statesDB connected
2022-10-02 14:32:38.860 - debug: geofency.0 (44723) Plugin sentry Initialize Plugin (enabled=true)
2022-10-02 14:32:39.170 - info: geofency.0 (44723) starting. Version 1.2.3 in /opt/iobroker/node_modules/iobroker.geofency, node: v16.16.0, js-controller: 4.0.23
2022-10-02 14:32:39.205 - info: geofency.0 (44723) http server listening on port 7999
2022-10-02 14:32:39.213 - silly: geofency.0 (44723) States system redis pmessage system.adapter.geofency.0.logLevel/system.adapter.geofency.0.logLevel:{"val":"silly","ack":true,"ts":1664713959200,"q":0,"from":"system.adapter.geofency.0","lc":1664713886600}
2022-10-02 14:32:42.734 - debug: geofency.0 (44723) Authorization Header is: "Basic Og=="
2022-10-02 14:32:42.734 - debug: geofency.0 (44723) request url: /Julian
2022-10-02 14:32:42.736 - info: geofency.0 (44723) adapter geofency received webhook from device Julian with values: name: Home, entry: 1

Interessant dabei, dass trotzdem ein Basic Auth Header erkannt wird (das habe ich aber schon an Tion / dem Entwickler von Geofency gemeldet, dürfte hier also keine Rolle spielen).

So sehen die Objekte aus, die mit der Verarbeitung der Anfrage angelegt wurden:

objects - iobroker 2022-10-02 14-36-20

Apollon77 commented 2 years ago

Bitte zeige mal deine Konfig vom Adapter. Was steht da beim dem "Ortsname für zuhause"? Der Name muss übereinstimmen mit dem Namen für den die Änderung da reinkommt- Also bei dir wäre das "Home" basierend auf dem Beispiel oben

Apollon77 commented 2 years ago

Hehe, ok I found the issue ... please try GitHub version

Apollon77 commented 2 years ago

Pleae also check that rest still works what is using "entry" field

jpawlowski commented 2 years ago

Ich nutze die englische Bezeichnung. Dass "Name of home" für die Bezeichnung des gemonitorten Ortes in der Geofency App steht, darauf bin ich nicht gekommen. Danke, dass du mich drauf gebracht hast.

Mit der NPM Version 1.2.3 hat es nach Anpassung des Wertes "Name of home" funktioniert. Seltsamerweise war der Wert aber schon immer anders (denke ich).

Die Github Version funktioniert nun leider gar nicht mehr, Anfragen schlagen mit diesem Logeintrag fehl:

2022-10-03 00:43:34.621 - info: geofency.0 (79212) Could not process request for user Julian: ReferenceError: jBody is not defined
Apollon77 commented 2 years ago

Uuups ... sorry ... GitHub version fixed. Please try again

jpawlowski commented 2 years ago

It works now, just a minor warning about a type mismatch:

State value to set for "geofency.0.Julian.Home.data.entry" has to be type "string" but received type "boolean"
Apollon77 commented 2 years ago

Grmmppf ... übersehen ... Nochmal bitte checken ... GitHub aktualisiert

Apollon77 commented 2 years ago

@jpawlowski Any feedback?

Apollon77 commented 2 years ago

Ok, I will release, please rteport back if checked. thank you

jpawlowski commented 2 years ago

Sorry for delayed response. Everything is working just fine now

Apollon77 commented 2 years ago

Thank you for your support