caseyjhol / node-red-contrib-tplink

A collection of Node-RED nodes for TP-Link Smart Home devices
https://www.npmjs.com/package/node-red-contrib-tplink-iot
MIT License
16 stars 15 forks source link

Node Object is not a node-red Node Stack #64

Closed StyleIncluded closed 1 year ago

StyleIncluded commented 1 year ago

I was told by support to create a new issue here.

This error constantly floods my debug window.

I am using a Kasa HS300 power strip.

Mac OS Monterey 12.3.1

Chrome

11/16/2022, 11:12:19 PM msg : string[882] "↵****↵Unexpected Node Error↵****↵Info:↵

Node object is not a node-red Node↵Stack:↵

ResponseError: err_code not zero response: {"err_code":-1,"err_msg":"module not support"} command: {"emeter":{"get_realtime":{}}}↵
at Object.processResponse (/Users/stevefriebele/.node-red/node_modules/tplink-smarthome-api/lib/utils.js:170:15)↵
at Plug.sendCommand (/Users/stevefriebele/.node-red/node_modules/tplink-smarthome-api/lib/device/index.js:271:33)↵
at async Emeter.getRealtime (/Users/stevefriebele/.node-red/node_modules/tplink-smarthome-api/lib/shared/emeter.js:72:50)↵↵

Please report this issue, including the information logged above:↵https://github.com/node-red/node-red/issues/

Steve-Mcl commented 1 year ago

I can pretty much guarantee this is where the bug lies: https://github.com/caseyjhol/node-red-contrib-tplink/blob/15aae36380263a40977a2634e8d340af49310610/nodes/kasa.js#L335

The catch should not call node.error directly since it binds this to your node & causes this exception.

Instead do catch( err => { node.error(err) } )

That applies to all node.xxx calls.

Steve-Mcl commented 1 year ago

Good morning @caseyjhol, what are the chances you could address this issue? We have had 3 issues raised against node-red for this issue now.

I believe the info I posted above on Nov 17th will fix this.

Thanks, Steve.

caseyjhol commented 1 year ago

Fixed and released in v1.0.1.

Steve-Mcl commented 1 year ago

Hi thanks for addressing this.

Could you publish to npm & update the flows library so that node-red users can update?