Почему устройства с характеристикой ColorTemperature в комнатах получают команды для ColorSpectrum?

Чтобы проиллюстрировать пример сценария, который вызвал этот вопрос, примите во внимание следующее:

  • Комната чердак, в которой находятся 3 устройства: один источник света, поддерживающий как ColorSpectrum, так и ColorTemperature, один источник света, поддерживающий только ColorTemperature < / em> и один источник света, который поддерживает только ColorSpectrum (все 3 также поддерживают OnOff и Brightness, но это не имеет значения).
  • «Установить на чердаке теплый белый цвет» приведет к тому, что два источника света получат значение температуры в Кельвинах, тогда как третий (который не поддерживает ColorTemperature) получит значение цвета rgb / hsv, приблизительно равное правильный оттенок белого.
  • И наоборот: «Установить чердак в красный цвет» приведет к тому, что все 3 источника света получат значение цвета rgb / hsv (включая свет, который не поддерживает свойство ColorSpectrum).

Мы не уверены, как источник света, поддерживающий только ColorTemperature, должен реагировать на значение rgb / hsv. Этот последний сценарий - после того, как свет не смог выполнить команду пользователя - оставил нам 3 варианта ответа:

  1. Ложь и ответь «УСПЕХ» на все 3 лампочки: «Хорошо, меняем 3 лампочки на красный».
  2. Полностью исключите третий свет из ответа: «Хорошо, меняем 3 световых индикатора на красный».
  3. Ответьте "notSupported" "ERROR" для третьего индикатора: "Хорошо, замена двух индикаторов на красный. Этот режим недоступен для LIGHT_3".

Вариант 1 явно нежелателен, неверный отзыв хуже, чем его отсутствие.

Вариант 2 эквивалентен 1, хотя кажется странным, что Google Home предполагает, что устройство, не указанное в ответе, было успешно обработано.

Вариант 3 мы также считаем неидеальным, так как мы ожидаем, что пользователю может надоесть слышать, что определенный свет в их комнате не может изменить цвет, когда он, возможно, прекрасно осознает этот факт. Мы бы предпочли ответ: «Хорошо, меняем 2 индикатора на красный». Мы чувствуем, что это ясно показывает, что один индикатор не изменился, без потенциально лишнего сообщения об ошибке.

Итак, наш вопрос: как мы можем это реализовать?

Указанное выше поведение является непреднамеренным (ошибка)?

Есть ли какой-то ответ, о котором мы не знаем, который можно использовать для сообщения Google Home о том, что устройство просто не подходит для указанного выполнения?

Является ли перечисленное выше поведение неприемлемым для других или является результатом ошибки с нашей стороны?

Спасибо за чтение.


person Tobias van de Ven    schedule 14.11.2017    source источник


Ответы (1)


Я собираюсь проверить этот сценарий, поскольку это может быть ошибка, при которой устройства получают команды, а не должны.

Канонически третий вариант может быть нежелательным, но это правильная реализация. Попытка игнорировать команду также создаст неудобства для пользователей, поскольку они получат неправильный ответ.

person Nick Felker    schedule 14.11.2017
comment
Спасибо. Прошло некоторое время, прежде чем мы столкнулись с этим сценарием, так как изначально мы тестировали комнату, в которой было 2 источника света с характеристикой ColorSpectrum и 1 только с OnOff и Яркость (ни ColorSpectrum, ни ColorTemperature). В этом случае Google Home ответил: Хорошо, меняем 2 индикатора на красный, что нам показалось подходящим. Третий свет не был включен в команду в первую очередь. Вот почему мы заметили разницу, когда третий источник света был заменен на тот, который действительно поддерживал свойство ColorTemperature. - person Tobias van de Ven; 15.11.2017
comment
Привет, Ник, у тебя была возможность следить за этим? На данный момент мы реализовали вариант 3 по вашей рекомендации. - person Tobias van de Ven; 07.12.2017
comment
Я почти уверен, что это ошибка, но у меня не было времени проверить ее. Можете ли вы поделиться со мной проектом и позволить мне посмотреть, смогу ли я воспроизвести его? - person Nick Felker; 07.12.2017
comment
Как лучше всего поделиться с вами проектом? Для наших собственных целей тестирования мы поделились проектом с другими, добавив их электронную почту с разрешениями «Просмотр» и отправив им ссылку «Поделиться», доступную в Симуляторе. Но, может быть, вам нужен только идентификатор проекта? - person Tobias van de Ven; 08.12.2017
comment
Вы можете поделиться проектом с [мой адрес электронной почты] ([email protected]). - person Nick Felker; 08.12.2017
comment
Мы отправили вам электронное письмо со ссылкой для обмена, спасибо. - person Tobias van de Ven; 11.12.2017