Focusrite Control API
Focusrite Control API
No dependencies 💪
Installation
npm install focusrite
Examples (test.js)
Start by importing the library
const focusrite = require('focusrite');
Create a fake ControlServer
focusrite.createFakeServer([
`<client-details id="XXXXXXXXX"/>`,
`<device-arrival> ... </device-arrival>`,
...
], (data) => {
console.log(data);
});
Find the running ControlServer port
focusrite.findServerPort((port) => {
console.log(`ControlServer port is : ${port}`);
});
Connect to the ControlServer as a fake client
focusrite.createFakeClient(port, 'xxxxxxxx-0000-xxxx-xxxx-xxxxxxxxxxxx', (onData, clientWrite) => {
onData((data) => {
console.log(data);
clientWrite(`<set devid="1"> ... </set>`);
clientWrite(focusrite.requests.MODE_COLOR);
clientWrite(focusrite.colors.RED);
clientWrite(focusrite.requests.A1_PREAMP_TRUE);
clientWrite(focusrite.requests.A1_PREAMP_FALSE);
clientWrite(focusrite.requests.A2_INST_TRUE);
clientWrite(focusrite.requests.A2_INST_FALSE);
clientWrite(`<set devid="..."> ... </set>`);
});
});
Problems
If you have errors in console or unwanted behavior, just reload the page.
If the problem persists, please create an issue here.