здравствуй
экспериментирую с интеграцией Алисы в wb, вижу странные решения
при выставлении таких параметров
в приложении яндекса, устройство не появляется или не работает в целом
а если выставить стандартные значения цветовой температуры от 2700 до 6500
так устройство появляется и работает, но работает только on/off и регулировка яркости, не работает регулировка температуры т.к внутри web ui и в самих блоках wb led значения температуры выставлены от 1 до 100. возникает вопрос, что нужно сделать чтобы можно было управлять температурой через алису/приложение
я попробовал обновить сам блок wbled может дело в нём, но не получается
[image]
предлагается обновление блока wbled
[image]
при попытки обновиться возникает ошибка
Server error
у меня несколько блоков wb-led а так же wb mr6c v2 и MSV V4
ошибка обновления только с wb-led, гл.контроллер: wb8.5.2 на testing прошивке
написал код прокладку, преобразует кельвины в 100 балльную шкалу. код работает, но заметил что от яндекса потопают значения только 2700к, независимо какой цвет выбран в приложении
defineVirtualDevice('alice_cct_bridge', {
title: 'Alice LED bridge',
cells: {
Temperature: {
type: 'range',
value: 4000,
min: 2700,
max: 6500,
units: 'K'
}
}
});
// Алиса → WB (инвертированная шкала)
defineRule('alice_to_real_led', {
whenChanged: 'alice_cct_bridge/Temperature',
then: function(newValue) {
// ограничим значение для надёжности
var k = Math.max(2700, Math.min(6500, newValue));
// инвертируем: 2700K = 100, 6500K = 1
var scaled = 100 - ((k - 2700) * 99 / (6500 - 2700));
dev['wb-led_113']['CCT1 Temperature'] = Math.round(scaled);
log("Alice set " + k + "K → LED " + scaled + " (1–100, inverted)");
}
});
// WB → Алиса (обратная конверсия)
defineRule('real_led_to_alice', {
whenChanged: 'wb-led_113/CCT1 Temperature',
then: function(newValue) {
var scaled = Math.max(1, Math.min(100, newValue));
// обратная формула (инвертируем обратно)
var kelvin = 2700 + ((100 - scaled) * (6500 - 2700) / 99);
dev['alice_cct_bridge']['Temperature'] = Math.round(kelvin);
log("LED " + scaled + " (1–100) → Alice " + kelvin + "K (inverted)");
}
});
Добрый день.
Да, Яндекс работает с температурой цвета вот так .
Даже по-умолчанию при создании умения значения подставляются:
Ну и в актуальной версии уже конвертируется в 0-100:
mosquitto_sub -v -t '/devices/wb-adc/controls/A3/#'
/devices/wb-adc/controls/A3 0.0
/devices/wb-adc/controls/A3/on 18.4
/devices/wb-adc/controls/A3 0.0
/devices/wb-adc/controls/A3/on 0.0
/devices/wb-adc/controls/A3/on 18.4
/devices/wb-adc/controls/A3/on 0.0
/devices/wb-adc/controls/A3/on 18.4
нужно обновить блок wb-led?
Нужно обновить пакеты интеграций, этого достаточно.