NRCHKB / node-red-contrib-homekit-bridged

Node-RED Contribution - HomeKit Bridged : Node-RED nodes to simulate Apple HomeKit devices.
https://nrchkb.github.io
MIT License
412 stars 52 forks source link

[Bug]: Window Covering -> Multiple Ouput Payloads at the same Time with the same Value #517

Closed svenflender closed 1 year ago

svenflender commented 1 year ago

NRCHKB Plugin Version

1.5.0

Node JS Version

16.16.0

NPM Version

8.11.0

Node-RED Version

3.0.2

Operating System

Docker

What happened?

When i use a service: window covering ( bridged ) the output (both onSet and onChange) throw multiple times the TargetPosition, PositionState etc. as Payload. This Output can't be Filtered or delayed with a Node?

How to reproduce?

Service Node (Window Covering ) > Debug Node. Change Covering in HomeApp.

Expected behavior:

One Message with the Target, Current and Position State.

Additional comments?

Maybe i do something wrong?!

Relevant log output

7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:50node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:51node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:51node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:51node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:51node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:51node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:51node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 1 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:52node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:53node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ CurrentPosition: 15 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 15 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:43:54node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:40:06node: Jalousie Arbeitszimmer
msg.payload : Object
{ TargetPosition: 0 }
7.3.2023, 09:40:06node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
7.3.2023, 09:40:06node: Jalousie Arbeitszimmer
msg.payload : Object
{ PositionState: 2 }
TheNON75 commented 1 year ago

Hi @svenflender

Assuming that you are using the upper output of the node: It seems like you have not disabled the "message pass through" on the bridge and so any update received by the service node appears on it's output.

This can be avoided by different ways. The easiest is to disable message pass through, then only those messages that are generated by the nrchkb node will be sent out.

svenflender commented 1 year ago

It is independed from the input. if i only use the home app i get multiple outputs.

TheNON75 commented 1 year ago

This happens sometimes and the followings usually fix the issue

svenflender commented 1 year ago

Great, restart NodeRed has fixed this...

Thank you!

TheNON75 commented 1 year ago

Welcome, I am happy to hear that 👍