rw6miu, я с nodejs не знаком, но, думаю, ваш код можно так переписать:
on({
id:'javascript.0.test',
change:'any'
},function (obj) {
if(obj.newState.from!='web.0' && obj.newState.from!='system.adapter.web.0')
return;
const value=[0,1].indexOf(+obj.newState.val)<0?0:+obj.newState.val;
request('http://192.168.0.89/state?c=set&n=7&o='+value);
});
var http = require('http');
var urlParser=require('url');
var server = http.createServer().listen(8083); // на каком порту слушаем?
server.on('request', function(req, res) {
const requestGetParams=urlParser.parse(req.url,true).query;
const idsAssocs={
1:'braright',
2:'braleft',
3:'lightcenter',
4:'lightdop'
};
const state=+!((+requestGetParams.on)===0 || [1,0].indexOf(+requestGetParams.on)<0);
const stateName=idsAssocs[+requestGetParams.id]||requestGetParams[1];
setState(`javascript.0.MegaLight1.braright.${stateName}`,state);
res.writeHead(200);
log(`Канал id=${requestGetParams.id}; Состояние ${state}`);
});