Security News
The Risks of Misguided Research in Supply Chain Security
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
denon-client
Advanced tools
A handy denon avr client. Allows controlling the AVR and listen to events. May work with Marantz devices too.
A handy node library which allows you to control and receive events of a Denon AVR.
This library is not complete. There are functions missing. Feel free to contribute by doing pull requests. New functions are easy to implement.
Get the protocol specification here: http://assets.denon.com/documentmaster/de/avr3313ci_protocol_v02.pdf
The protocol is pretty unified so any Denon AVR should be somewhat compatible.
A yuidoc based documentation is available here: http://lmoe.github.io/node-denon-client
This library is designed to provide a simple way to operate with a Denon AVR. Making it an easy use in your own IoT project, or any lazy remote after your remote went missing.
It's using ES6 functionality and is based on promises. You are still able to receive events though.
Make sure to use strict and a newer version of node. I haven't tested it with a lower version than 5.10.1 yet.
Setting up is simple.
// Initialization
const Denon = require('denon-client');
/**
* Denon is now an object containing DenonClient and Options.
* Use the DenonClient to send requests. Use the Options to define the data.
*/
const denonClient = new Denon.DenonClient(`${DenonAVRHost}`);
// Subscribe to any available event
denonClient.on('masterVolumeChanged', (volume) => {
// This event will fire every time when the volume changes.
// Including non requested volume changes (Using a remote, using the volume wheel on the device).
console.log(`Volume changed to: ${volume}`);
});
// Connecting
denonClient
.connect()
.then(() => {
// Tasty promise chains..
//
// You are free to send any command now.
return denonClient.setInput(Denon.Options.InputOptions.Aux1);
})
.then(() => {
return denonClient.setSurround(Denon.Options.SurroundOptions.Stereo);
})
.then(() => {
return denonClient.setVolume(98); // Destroy neighborhood
})
.catch((error) => {
// Oh noez.
console.error(error);
});
To meet the Semver rules the package version was changed from 0.1.9 to 0.2.0 because of the last new feature.
Four new input options have been added (Aux2, MPlay, MXPort, VDP). (Thanks to @DarkCinema and @jaydonoghue)
The port can now be set manually. Port 23 is still the default one. (Thanks to @jaydonoghue)
FAQs
A handy denon avr client. Allows controlling the AVR and listen to events. May work with Marantz devices too.
We found that denon-client demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.