How to use the webthing.SingleThing function in webthing

To help you get started, we’ve selected a few webthing examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github rzr / webthing-iotjs / example / single-thing.js View on Github external
function runServer() {
  const thing = makeThing();

  // If adding more than one thing, use MultipleThings() with a name.
  // In the single thing case, the thing's name will be broadcast.
  const server = new WebThingServer(new SingleThing(thing), 8888);

  process.on('SIGINT', () => {
    server.stop().then(() => process.exit()).catch(() => process.exit());
  });

  server.start().catch(console.error);
}
github rzr / webthing-iotjs / example / platform / index.js View on Github external
function runServer() {
  const port = process.argv[3] ? Number(process.argv[3]) : 8888;
  const url = `http://localhost:${port}`;

  log(`Usage:\n\
${process.argv[0]} ${process.argv[1]} [board] [port]\n\
Try:\ncurl -H "Accept: application/json" ${url}\
\n`);
  const thing = new BoardThing();
  const server = new WebThingServer(new SingleThing(thing), port);
  process.on('SIGINT', () => {
    const cleanup = () => {
      thing && thing.close();
      log(`log: board: ${board}: Exit`);
      process.exit();
    };
    server.stop().then(cleanup).catch(cleanup);
  });
  server.start().catch(console.error);
  log(`log: board: ${board}: Started`);
}
github rzr / webthing-iotjs / example / gpio-binary-sensor-thing.js View on Github external
function runServer() {
  const port = process.argv[2] ? Number(process.argv[2]) : 8888;
  const pin = process.argv[3] ? Number(process.argv[3]) : 11;
  const url = `http://localhost:${port}/properties/on`;

  console.log(`Usage:\n
${process.argv[0]} ${process.argv[1]} [port] [gpio]

Try:
curl -H 'Content-Type: application/json' ${url}
`);

  const thing = makeThing();
  const server = new WebThingServer(new SingleThing(thing), port);
  process.on('SIGINT', () => {
    server.stop();
    gpio.unexport(pin);
    process.exit();
  });
  const input = gpio.export(pin, {
    direction: 'in',
    ready: () => {
      input.value = undefined;
      input._get((value) => {
        console.log(`log: GPIO${pin}: ready: ${value}`);
        input.on("change", (value) => {
          console.log(`log: GPIO${pin}: change: ${value}`);
          thing.value.notifyOfExternalUpdate(Boolean(value));
        });
        server.start();
github rzr / webthing-iotjs / example / mastodon-thing.js View on Github external
function runServer() {
  const port = process.argv[2] ? Number(process.argv[2]) : 8042;
  const url = `http://localhost:${port}/properties/multiLevelSwitch`;
  console.log('Usage:\n'
              + process.argv[0] + ' ' + process.argv[1] + ' [port]\n'
              + 'Try:\ncurl -H "Content-Type: application/json" '
              + url + '\n');

  const thing = makeThing();
  const server = new WebThingServer(new SingleThing(thing), port);
  process.on('SIGINT', () => {
    server.stop();
    process.exit();
  });
  server.start();
}

webthing

HTTP Web Thing implementation

MPL-2.0
Latest version published 4 years ago

Package Health Score

48 / 100
Full package analysis