A Node.js library for remotely controlling Samsung TVs via JavaScript, enabling power management, key input, and app control.
Samsung TV Control is a Node.js library that enables remote control of Samsung smart TVs through JavaScript. It allows developers to turn TVs on/off, simulate remote key presses, manage installed apps, and automate interactions over a local network. The library solves the need for programmatic TV control in home automation, testing, or custom dashboard projects.
Node.js developers building home automation systems, IoT applications, or testing tools that require integration with Samsung TVs. It's also suitable for hobbyists creating custom media centers or automation scripts.
Developers choose this library because it offers a straightforward, promise-based API specifically for Samsung TVs, with built-in support for key commands, app management, and token authentication. It eliminates the need for reverse-engineering TV protocols and provides reliable control tested on multiple TV models.
📺 Remote control your TV via JS!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports a wide range of virtual remote keys (e.g., volume, navigation, home) from the keys.ts file, enabling detailed control over TV functions.
Allows listing installed apps, launching applications, and fetching app icons programmatically, useful for automation and testing scenarios.
Includes a dedicated Node-RED node, making it easy to integrate TV control into visual workflow automations without extensive coding.
Implements token-based authentication via the getToken() method, ensuring secure access and preventing unauthorized TV control.
Only tested on two specific Samsung TV models (UE43NU7400 and UN55NU7100), so compatibility with other models or firmware versions is uncertain.
Requires the TV to be on the same local network, making it unsuitable for remote control over the internet or cloud-based applications.
Setup involves manually configuring IP, MAC address, and token, which can be complex and error-prone for non-technical users.