![Introducing Enhanced Alert Actions and Triage Functionality](https://cdn.sanity.io/images/cgdhsj6q/production/fe71306d515f85de6139b46745ea7180362324f0-2530x946.png?w=800&fit=max&auto=format)
Product
Introducing Enhanced Alert Actions and Triage Functionality
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
elgato-stream-deck
Advanced tools
Changelog
1.2.0 (2017-06-23)
clearKey
method #4setBrightness
and sendFeatureReport
4d904f0fillImage
fix blue and red channels being swapped 8efdb6b<a name="1.1.0"></a>
Readme
elgato-stream-deck
is a Node.js library for interfacing
with the Elgato Stream Deck.
$ npm install --save elgato-stream-deck
If that fails (or if you are on a Raspberry Pi), you will need to install a compiler toolchain to enable npm to build
some of node-elgato-stream-deck
's dependencies from source.
windows-build-tools
:npm install --global windows-build-tools
xcode-select --install
node-hid
:
sudo apt-get install build-essential git
sudo apt-get install gcc-4.8 g++-4.8 && export CXX=g++-4.8
sudo apt-get install sudo apt install libusb-1.0-0 libusb-1.0-0-dev
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs
node-elgato-stream-deck
sudo apt-get update && sudo apt-get upgrade
const path = require('path');
const streamDeck = require('elgato-stream-deck');
streamDeck.on('down', keyIndex => {
console.log('key %d down', keyIndex);
});
streamDeck.on('up', keyIndex => {
console.log('key %d up', keyIndex);
});
streamDeck.on('error', error => {
console.error(error);
});
// Fill the second button from the left in the first row with an image of the GitHub logo.
// This is asynchronous and returns a promise.
streamDeck.fillImageFromFile(3, path.resolve(__dirname, 'github_logo.png')).then(() => {
console.log('Successfully wrote a GitHub logo to key 3.');
});
// Fill the first button form the left in the first row with a solid red color. This is synchronous.
streamDeck.fillColor(4, 255, 0, 0);
console.log('Successfully wrote a red square to key 4.');
import streamDeck = require('elgato-stream-deck');
streamDeck.on('down', keyIndex => {
console.log('key %d down', keyIndex);
});
streamDeck.on('up', keyIndex => {
console.log('key %d up', keyIndex);
});
streamDeck.on('error', error => {
console.error(error);
});
down
and key up
eventsThe elgato-stream-deck team enthusiastically welcomes contributions and project participation! There's a bunch of things you can do if you want to contribute! The Contributor Guide has all the information you need for everything from reporting bugs to contributing entire new features. Please don't hesitate to jump in if you'd like to, or even ask us questions if something isn't clear.
All participants and maintainers in this project are expected to follow Code of Conduct, and just generally be kind to each other.
Please refer to the Changelog for project history details, too.
> streamDeck.write(buffer) -> undefined
Synchronously writes an arbitrary Buffer
instance to the Stream Deck.
Throws if an error is encountered during the write operation.
// Writes 16 bytes of zero to the Stream Deck.
streamDeck.write(Buffer.alloc(16));
> streamDeck.fillColor(keyIndex, r, g, b) -> undefined
Synchronously sets the given keyIndex
's screen to a solid RGB color.
// Turn key 4 (the top left key) solid red.
streamDeck.fillColor(4, 255, 0, 0);
> streamDeck.fillImageFromFile(keyIndex, filePath) -> Promise
Asynchronously reads an image from filePath
and sets the given keyIndex
's screen to that image.
Automatically scales the image to 72x72 and strips out the alpha channel.
If necessary, the image will be center-cropped to fit into a square.
// Fill the second button from the left in the first row with an image of the GitHub logo.
streamDeck.fillImageFromFile(3, path.resolve(__dirname, 'github_logo.png'))
.then(() => {
console.log('Successfully wrote a GitHub logo to key 3.');
})
.catch(err => {
console.error(err);
});
> streamDeck.fillImage(keyIndex, buffer) -> undefined
Synchronously writes a buffer of 72x72 RGB image data to the given keyIndex
's screen.
The buffer must be exactly 15552 bytes in length. Any other length will result in an error being thrown.
// Fill the third button from the left in the first row with an image of the GitHub logo.
const sharp = require('sharp'); // See http://sharp.dimens.io/en/stable/ for full docs on this great library!
sharp(path.resolve(__dirname, 'github_logo.png'))
.flatten() // Eliminate alpha channel, if any.
.resize(streamDeck.ICON_SIZE) // Scale down to the right size, cropping if necessary.
.raw() // Give us uncompressed RGB
.toBuffer()
.then(buffer => {
return streamDeck.fillImage(2, buffer);
})
.catch(err => {
console.error(err);
});
> streamDeck.clearKey(keyIndex) -> undefined
Synchronously clears the given keyIndex
's screen.
// Clear the third button from the left in the first row.
streamDeck.clearKey(2);
> streamDeck.setBrightness(percentage) -> undefined
Synchronously set the brightness of the Stream Deck.
// Set the Stream Deck to maximum brightness
streamDeck.setBrightness(100);
> down
Fired whenever a key is pressed. keyIndex
is the 0-14 numerical index of that key.
streamDeck.on('down', keyIndex => {
console.log('key %d down', keyIndex);
});
> up
Fired whenever a key is released. keyIndex
is the 0-14 numerical index of that key.
streamDeck.on('up', keyIndex => {
console.log('key %d up', keyIndex);
});
> error
Fired whenever an error is detected by the node-hid
library.
Always add a listener for this event! If you don't, errors will be silently dropped.
streamDeck.on('error', error => {
console.error(error);
});
Raw protocol notes can be found in NOTES.md. These detail the protocol and method for interacting with the Stream Deck which this module implements.
FAQs
An npm module for interfacing with the Elgato Stream Deck
The npm package elgato-stream-deck receives a total of 14 weekly downloads. As such, elgato-stream-deck popularity was classified as not popular.
We found that elgato-stream-deck 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.
Product
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
Security News
Polyfill.io has been serving malware for months via its CDN, after the project's open source maintainer sold the service to a company based in China.
Security News
OpenSSF is warning open source maintainers to stay vigilant against reputation farming on GitHub, where users artificially inflate their status by manipulating interactions on closed issues and PRs.