@glaz123:
Добрый день,
Разрабатывают взаимодействие с телеграмом, подписался на событие, оно приходит, только вот объект я получаю в котором нет deviceId - и соответственно не могу вытащить атрибуты девайса чтобы вставить его в сообщение.
Код примерно вот такой (Я уже попробовал по разному вытаскивать значения deviceId, не помогает - возвращает undefined).
При этом channelId приходит (но json его не видно).
on({id: /^sonoff\.0\..*\.alive$/, change: 'ne'}, function (obj) {
objRoom = getObject(obj.id,'rooms');
if(obj.state.val===true) {
sendTo('telegram.0', 'Device '+getObject(obj.channelId).common.name+' located in '+objRoom.enumNames+' is connected '+JSON.stringify(obj)+JSON.stringify(objRoom));
} else {
sendTo('telegram.0', 'Device '+getObject(obj.channelId).common.name+' located in '+objRoom.enumNames+' is disconnected'+JSON.stringify(obj)+JSON.stringify(objRoom));
}
}
);
Соответсвенно в obj лежит вот такое (нет deviceId)
{"id":"sonoff.0.DVES_06FDF7.alive",
"newState":{"val":true,"ts":1526974517438,"ack":true,"lc":1526974517438,"from":"system.adapter.sonoff.0"},
"oldState":{"val":false,"ts":1526974506646,"ack":true,"lc":1526974295730,"from":"system.adapter.sonoff.0"},
"state":{"val":true,"ts":1526974517438,"ack":true,"lc":1526974517438,"from":"system.adapter.sonoff.0"}}
В objRoom вот такое
{"_id":"sonoff.0.DVES_06FDF7.alive",
"common":{"type":"boolean","role":"indicator.connected","read":true,"write":false,"name":"DVES_06FDF7 alive"},
"type":"state",
"from":"system.adapter.sonoff.0",
"ts":1523040682783,
"acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"enumIds":[],"enumNames":[]}
Это глюк кого? Адаптера sonoff или системы? Или я что-то не правильно понимаю? `
что такое deviceId?