Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
constructor() {
super(
'urn:dev:ops:my-lamp-1234',
'My Lamp',
['OnOffSwitch', 'Light'],
'A web connected lamp'
);
this.addProperty(
new Property(
this,
'on',
new Value(true, (v) => console.log('On-State is now', v)),
{
'@type': 'OnOffProperty',
title: 'On/Off',
type: 'boolean',
description: 'Whether the lamp is turned on',
}));
this.addProperty(
new Property(
this,
'brightness',
new Value(50, (v) => console.log('Brightness is now', v)),
{
'My Lamp',
['OnOffSwitch', 'Light'],
'A web connected lamp');
thing.addProperty(
new Property(thing,
'on',
new Value(true),
{
'@type': 'OnOffProperty',
title: 'On/Off',
type: 'boolean',
description: 'Whether the lamp is turned on',
}));
thing.addProperty(
new Property(thing,
'brightness',
new Value(50),
{
'@type': 'BrightnessProperty',
title: 'Brightness',
type: 'integer',
description: 'The level of light from 0-100',
minimum: 0,
maximum: 100,
unit: 'percent',
}));
thing.addAvailableAction(
'fade',
{
title: 'Fade',
function makeThing() {
const thing = new Thing('GpioBinarySensorExample',
'binarySensor',
'A sensor example that monitor GPIO input ie: button');
thing.value = new Value(false);
thing.addProperty(
new Property(thing,
'on',
thing.value,
{
'@type': 'OnOffProperty',
label: 'On/Off',
type: 'boolean',
description: 'Whether the input is changed'
}));
return thing;
}
function makeThing() {
const thing = new Thing('urn:dev:ops:my-lamp-1234',
'My Lamp',
['OnOffSwitch', 'Light'],
'A web connected lamp');
thing.addProperty(
new Property(thing,
'on',
new Value(true),
{
'@type': 'OnOffProperty',
title: 'On/Off',
type: 'boolean',
description: 'Whether the lamp is turned on',
}));
thing.addProperty(
new Property(thing,
'brightness',
new Value(50),
{
'@type': 'BrightnessProperty',
title: 'Brightness',
type: 'integer',
function makeThing() {
const thing = new Thing('MastodonMultiLevelSwitchExample', 'multiLevelSwitch', 'An actuator example that just blog');
thing.addProperty(
new Property(thing,
'level',
new Value(0, handleLevelUpdate),
{
label: 'Level',
type: 'number',
description: 'Whether the output is changed',
}));
return thing;
}