node-red-contrib-samsung-tv-control icon indicating copy to clipboard operation
node-red-contrib-samsung-tv-control copied to clipboard

Get Token makes node-red crash

Open bjornreppen opened this issue 4 years ago • 4 comments

Installed

    "node-red-contrib-samsung-tv-control": "~1.3.12",

Set up the get token flow image Entered IP address, MAC address (without the colons) and TV type image Verified successful connection from command line by running telnet 192.168.90.176 8002

However when triggering the flow node-red crashes. Error log:

17 May 07:27:50 - [red] Uncaught Exception:
17 May 07:27:50 - Error: RangeError: Invalid WebSocket frame: invalid status code 1005
    at sendKey (/data/node_modules/samsung-tv-control/lib/index.js:62:23)
    at WebSocket.ws.on (/data/node_modules/samsung-tv-control/lib/index.js:273:17)
    at WebSocket.emit (events.js:198:13)
    at Receiver.receiverOnError (/data/node_modules/ws/lib/websocket.js:780:13)
    at Receiver.emit (events.js:198:13)
    at errorOrDestroy (internal/streams/destroy.js:107:12)
    at onwriteError (_stream_writable.js:430:5)
    at onwrite (_stream_writable.js:461:5)
    at Receiver.startLoop (/data/node_modules/ws/lib/receiver.js:151:5)
    at Receiver._write (/data/node_modules/ws/lib/receiver.js:77:10)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: `node $NODE_OPTIONS node_modules/node-red/red.js $FLOWS "--userDir" "/data"`
npm ERR! Exit status 1

bjornreppen avatar May 17 '20 05:05 bjornreppen

I have the same exception that crashes the whole node-red service when I try to get a token:

31 May 17:42:41 - [red] Uncaught Exception:
31 May 17:42:41 - Error: RangeError: Invalid WebSocket frame: invalid status code 1005
    at sendKey (/home/user/.node-red/node_modules/samsung-tv-control/lib/index.js:62:23)
    at WebSocket.ws.on (/home/user/.node-red/node_modules/samsung-tv-control/lib/index.js:273:17)
    at WebSocket.emit (events.js:198:13)
    at Receiver.receiverOnError (/home/user/.node-red/node_modules/samsung-tv-control/node_modules/ws/lib/websocket.js:780:13)
    at Receiver.emit (events.js:198:13)
    at errorOrDestroy (internal/streams/destroy.js:107:12)
    at onwriteError (_stream_writable.js:430:5)
    at onwrite (_stream_writable.js:461:5)
    at Receiver.startLoop (/home/user/.node-red/node_modules/samsung-tv-control/node_modules/ws/lib/receiver.js:151:5)
    at Receiver._write (/home/user/.node-red/node_modules/samsung-tv-control/node_modules/ws/lib/receiver.js:77:10)
    at doWrite (_stream_writable.js:415:12)
    at writeOrBuffer (_stream_writable.js:399:5)
    at Receiver.Writable.write (_stream_writable.js:299:11)
    at Socket.socketOnData (/home/user/.node-red/node_modules/samsung-tv-control/node_modules/ws/lib/websocket.js:875:35)
    at Socket.emit (events.js:198:13)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)
    at Socket.Readable.push (_stream_readable.js:224:10)
    at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

Tried Tv 2016 and Tv 2017+, all the same.

Here what I have by getting http://tv-ip:8001/api/v2/

{
   "type" : "Samsung SmartTV",
   "remote" : "1.0",
   "isSupport" : "{\"DMP_DRM_PLAYREADY\":\"false\",\"DMP_DRM_WIDEVINE\":\"false\",\"DMP_available\":\"true\",\"EDEN_available\":\"true\",\"FrameTVSupport\":\"true\",\"ImeSyncedSupport\":\"true\",\"TokenAuthSupport\":\"true\",\"remote_available\":\"true\",\"remote_fourDirections\":\"true\",\"remote_touchPad\":\"true\",\"remote_voiceControl\":\"true\"}\n",
   "device" : {
      "type" : "Samsung SmartTV",
      "WallService" : "false",
      "id" : "uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "name" : "[TV] Tv",
      "model" : "19_MUSEM_FRAME",
      "smartHubAgreement" : "true",
      "VoiceSupport" : "true",
      "udn" : "uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxX",
      "developerMode" : "0",
      "PowerState" : "on",
      "developerIP" : "0.0.0.0",
      "description" : "Samsung DTV RCR",
      "FrameTVSupport" : "true",
      "networkType" : "wired",
      "resolution" : "3840x2160",
      "duid" : "uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "wifiMac" : "xx:xx:xx:xx:xx:xx",
      "modelName" : "QE49LS03RAUXUA",
      "GamePadSupport" : "true",
      "Language" : "en_GB",
      "TokenAuthSupport" : "true",
      "WallScreenRatio" : "0",
      "firmwareVersion" : "Unknown",
      "ip" : "192.168.9.20",
      "ImeSyncedSupport" : "true",
      "OS" : "Tizen",
      "countryCode" : "UA"
   },
   "version" : "2.0.25",
   "name" : "[TV] Tv",
   "uri" : "http://192.168.9.20:8001/api/v2/",
   "id" : "uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx"
}

inwaar avatar May 31 '20 14:05 inwaar

same here no sollution jet?

27 Aug 22:20:02 - [red] Uncaught Exception: 27 Aug 22:20:02 - Error: Error send Key at /home/pi/.node-red/node_modules/samsung-tv-control/lib/samsung.js:55:23 at WebSocket. (/home/pi/.node-red/node_modules/samsung-tv-control/lib/samsung.js:289:17) at WebSocket.emit (events.js:314:20) at Receiver.receiverOnError (/home/pi/.node-red/node_modules/ws/lib/websocket.js:951:13) at Receiver.emit (events.js:314:20) at errorOrDestroy (internal/streams/destroy.js:108:12) at onwriteError (_stream_writable.js:418:5) at onwrite (_stream_writable.js:445:5) at Receiver.startLoop (/home/pi/.node-red/node_modules/ws/lib/receiver.js:152:5) at Receiver._write (/home/pi/.node-red/node_modules/ws/lib/receiver.js:78:10) at doWrite (_stream_writable.js:403:12) at writeOrBuffer (_stream_writable.js:387:5) at Receiver.Writable.write (_stream_writable.js:318:11) at TLSSocket.socketOnData (/home/pi/.node-red/node_modules/ws/lib/websocket.js:1045:35) at TLSSocket.emit (events.js:314:20) at addChunk (_stream_readable.js:297:12) nodered.service: Main process exited, code=exited, status=1/FAILURE nodered.service: Failed with result 'exit-code'.

stingone avatar Aug 27 '21 20:08 stingone

Same issue trying to get a token on a 2022 Frame with Node Red running on Windows 11. I've seen a number of related issues, but they all seem to be from some time ago. Did anyone figure a workaround or is this still an issue?

24 Jun 11:18:02 - [error] Error: Error send Key at C:\Users\User.node-red\node_modules\samsung-tv-control\lib\samsung.js:65:23 at WebSocket. (C:\Users\User.node-red\node_modules\samsung-tv-control\lib\samsung.js:302:17) at WebSocket.emit (node:events:513:28) at emitErrorAndClose (C:\Users\User.node-red\node_modules\ws\lib\websocket.js:1002:13) at ClientRequest. (C:\Users\User.node-red\node_modules\ws\lib\websocket.js:854:5) at ClientRequest.emit (node:events:513:28) at TLSSocket.socketErrorListener (node:_http_client:502:9) at TLSSocket.emit (node:events:513:28) at emitErrorNT (node:internal/streams/destroy:151:8) at emitErrorCloseNT (node:internal/streams/destroy:116:3) at process.processTicksAndRejections (node:internal/process/task_queues:82:21)

DaveDaveDaveDave avatar Jun 24 '23 18:06 DaveDaveDaveDave

Got the same error, also trying to connect to a samsung the frame TV. My old samsung did receive a request via the beta before 2016 model option. Already a solution for this?

jslits avatar Aug 31 '23 07:08 jslits