Samsung Smart TV Support

Thank you for the console application. I would also be very interested in the details on how you pair and control the newer TV’s because I’d like to implement it for another platform. Can you give us more details about your implementation (or even some source code)? All I think to know is that to pair the TV you call:

  1. http://<ip>:8080/ws/apps/CloudPINPage and
  2. http://<ip>:8080/ws/pairing?step=0&app_id=<some_app_id>&device_id=<some_device_id> to trigger the pin screen on the tv
  3. http://<ip>:8080/ws/pairing?step=1&app_id=<some_app_id>&device_id=<some_device_id> POST request with {"auth_type": "SPC", "GeneratorServerHello": <some_value>} where <some_value> probably contains the pin and some other values as hash
  4. http://<ip>:8080/ws/pairing?step=2&app_id=<some_app_id>&device_id=<some_device_id> POST request with {"auth_type": "SPC", "request_id": <some_req_id>, "ServerAckMsg": <some_server_ack_msg>}
  5. http://<ip>:8080/ws/apps/CloudPINPage/run DELETE request

After that it seems like a websocket address is fetched from http://<ip>:8000/socket.io/1/websocket/ to connect to the tv, but I don’t know if the control actions take place in this websocket connection or by using the sendKeyCode upnp method in the multiscreen service.

Thanks in advance.