const schemas = require('../schemas/state.js') const TinkerforgePower = require('../tinkerforge/tinkerforgePower.js') /** * * * @author Björn Hase, Tentakelfabrik * @license http://opensource.org/licenses/MIT The MIT License * @link https://github.com/tentakelfabrik/fastify-lowdb-riotjs-lessons-learned * */ module.exports = async function (fastify, opts) { /** * getting current status of switch * * * @param {object} request * @param {object} reply * @return {object} */ fastify.get('/state', function(request, reply) { reply .code(200) .header('Content-Type', 'application/json; charset=utf-8') .send({ 'name': process.env.NAME, 'power': request.body.power }) }) /** * turn on * * @param {object} request * @param {object} reply * @return {object} */ fastify.put('/state', schemas.putSchema, function(request, reply) { tinkerforgePower = new TinkerforgePower(request.body.power) reply .code(200) .header('Content-Type', 'application/json; charset=utf-8') .send({ 'name': process.env.NAME, 'power': request.body.power }) }) }