Запрос температуры с Яндекса

Подскажите пожалуйста, как запросить Алисой температуру с датчика, что-то не выходит.
Ниже часть кода файла yandex2mqtt

devices: [
{
name: ‘Температура в гостиной’,
room: ‘Гостиная’,
type: ‘devices.types.other’,
mqtt: [
{
type: ‘temperature’,
set: ‘/devices/Temper/controls/Гостиная/on’,
stat: ‘/devices/Temper/controls/Гостиная’
},
],
properties: [{
type: ‘devices.properties.float’,
retrievable: true,
parameters: {
instance: ‘temperature’,
unit: ‘unit.celsius’
}
}]

    },]
2020-10-29T17:24:41+03:00: Performing discovery for provider 73e4b7a7-675f-4c0c-b3b0-54fb9b0ac9b7

2020-10-29T17:24:41+03:00: Sending request to provider:
GET https://123123123ываыва.ru/provider/v1.0/user/devices
request id: 9cf1bccc-1db1-4734-b17a-d2f5023d3c7f
null

2020-10-29T17:24:42+03:00: Got response from provider 73e4b7a7-675f-4c0c-b3b0-54fb9b0ac9b7:
200
{"request_id":"1","payload":{"user_id":"1","devices":[{"id":"0","name":"Температура в гостиной","description":"","room":"Гостиная","type":"devices.types.other","custom_data":{"mqtt":[{"type":"temperature","set":"/devices/Temper/controls/Гостиная/0","stat":"/devices/Temper/controls/Гостиная"}]}}]}}

2020-10-29T17:24:42+03:00: device 0 from provider 73e4b7a7-675f-4c0c-b3b0-54fb9b0ac9b7 validation failed, will skip it: device must contain at least one property or capability

Мне кажется, что проблема тут

Вроде изначально yandex2mqtt не поддерживает датчики. Я делал форк на yandex2mqtt с поддержкой датчиков, можешь глянуть по ссылке https://github.com/DoroganovV/yandex2mqtt, По факту надо заменить пару файлов (app.js, device.js) и в конфиге (config.js) прописать пути до этих датчиков, примерный конфиг есть. У устройства “Бризер” в mqtt прописано 3 датчика и ниже в properties расписано, что это за топики.

Спасибо, вышло. Вопрос, Алиса не умеет отвечать голосом какая температура? Только можно просмотреть?

Нет, такого не умеет, ну может научат когда-нибудь.

Добрый день. Подскажите у вас получилось передать данные с датчика температуры на Алису? что-то второй день сижу… светом управляю состояние включено выключено для света в яндексе вижу т.е. связь в обе стороны… а вот данные с датчика получить не могу…

Получилось. Измененный yandex2mqtt нужен. Найду выложу

yandex2mqtt-master(sensor).zip — Яндекс.Диск вот для работы с сенсорами

1 лайк

Спасибо )) только задал вопрос и все получилось…

вот мой конфиг yandex2mqtt config.js

module.exports = {
notification: [
{
skill_id: ‘XXXXXXXXXXXXXXXXXXXXXX’,
oauth_token: ‘YYYYYYYYYYYYYYYYYYYY’,
user_id: ‘1’
},
],
mqtt: {
host: ‘192.168.X.X’,
port: 1883,
user: ‘mqtt’,
password: ‘mqtt’,
},
https: {
privateKey: ‘/etc/letsencrypt/live/mydomain/privkey.pem’,
certificate: ‘/etc/letsencrypt/live/mydomain/fullchain.pem’,
port: 443,
},
clients: [
{
id: ‘1’,
name: ‘devices’,
clientId: ‘yandex-smarthomeXXXXXXX’,
clientSecret: ‘Password’,
isTrusted: false,
},
],
users: [
{
id: ‘1’,
username: ‘admin’,
password: ‘password’,
name: ‘Administrator’,
},
{
id: ‘2’,
username: ‘root’,
password: ‘password’,
name: ‘Administrator’,
},
],
devices: [
{
id: ‘virtualDevice’,
name: ‘–°–≤–µ—’,
room: ‘––Њ–Љ–љ–∞—–∞’,
type: ‘devices.types.light’,
allowedUsers: [‘1’],
mqtt: [
{
instance: ‘on’,
set: ‘/devices/yandex/controls/light1/on’, // —–Њ–њ–Є–Ї —–њ—–∞–≤–ї–µ–љ–Є—
state: ‘/devices/yandex/controls/light1’, // —–Њ–њ–Є–Ї ——–∞———–∞
},
],
valueMapping: [
{
type: ‘on_off’,
mapping: [[false, true], [0, 1]], // [yandex, mqtt]
},
],
capabilities: [
{
type: ‘devices.capabilities.on_off’,
retrievable: true,
state: {
instance: ‘on’,
value: true
}
},
]
},
//

    {   id: 'wb-msw-v3_206',
        name: '––∞——–Є–Ї –Ї–∞—–µ——–∞ –≤–Њ–Ј–і——–∞',
        room: '––Њ—–µ–ї—–љ–∞—',
        type: 'devices.types.sensor',
        allowedUsers: ['1'],
        mqtt: [
             {
                instance: 'humidity',

/// type: ‘humidity’,
// set: ‘/devices/wb-msw-v3_206/controls/Humidity’,
state: ‘/devices/wb-msw-v3_206/controls/Humidity’
},{
instance: ‘temperature’,
// type: ‘temperature’,
// set: ‘/devices/wb-msw-v3_206/controls/Temperature’,
state: ‘/devices/wb-msw-v3_206/controls/Temperature’
},{
// type: ‘co2_level’,
instance: ‘co2_level’,
state: ‘/devices/wb-msw-v3_206/controls/CO2’
},{
instance: ‘tvoc’,
state: ‘/devices/wb-msw-v3_206/controls/Air Quality (VOC)’
},{
instance: ‘illumination’,
state: ‘/devices/wb-msw-v3_206/controls/Illuminance’
}],
properties: [{
type: ‘devices.properties.float’,
retrievable: true,
parameters: {
instance: ‘temperature’,
unit: ‘unit.temperature.celsius’
}
},{
type: ‘devices.properties.float’,
retrievable: true,
parameters: {
instance: ‘humidity’,
unit: ‘unit.percent’
}
},{
type: ‘devices.properties.float’,
retrievable: true,
parameters: {
instance: ‘co2_level’,
unit: ‘unit.ppm’
}
},{
type: ‘devices.properties.float’,
retrievable: true,
parameters: {
instance: ‘tvoc’,
unit: ‘unit.density.mcg_m3’
}
},{
type: ‘devices.properties.float’,
retrievable: true,
parameters: {
instance: ‘illumination’,
unit: ‘unit.illumination.lux’
}
}],
}

// end
],
};