majordomo
majordomo copied to clipboard
Неверное окончание в локализации для простых устройств
Для простых устройств датчика окна\двери при запросе статуса используется слова
'DEVICES_STATUS_OPEN' => 'открыт',
'DEVICES_STATUS_CLOSED' => 'закрыт',
У меня например датчик называется "дверь" и после запроса "статус дверь", majordomo произносит "дверь закрыт".
Т.к. для этого датчика может использоваться как окно так и дверь, то и ответ может быть: "дверь закрытА" или "оконо закрытО" Поэтому нельзя просто заменить значение в 'DEVICES_STATUS_OPEN' и 'DEVICES_STATUS_CLOSED' . Предлагаю в настройках добавить вот такой дропдаун:
https://1.bp.blogspot.com/-cjK0xN7swjo/WnDQpU7pilI/AAAAAAAAfes/ILgsK2KJhWE19d7KtWTrQ89Sq6AAf-8tgCLcBGAs/s1600/1.png
Это позволит проговаривать статус с правильным окончанием.
А ещё может быть люк
ну это совсем экзотика, но если добавят дропдаун, то можно будет обеспечить правильное окончание для слов с мужском рода (люк), женского рода (дверь) и среднего рода (окно). В качестве выпадающего списка разумным будет просто указывать род слова, которым названо устройство.
Ну, гибче всего будет предоставить пользователю самому задать название статуса. Пусть по умолчанию будет открыт/закрыт, но с возможностью редактирования для конкретного объекта.
И фиксированный дропдаун сильно зависит от локализации, там разное количество родов может быть
А нельзя ли использовать модуль морфизации слов для этого дела???
Пока это отдельный модуль, пользователь его может установить, а может не установить. И он (модуль морфи) должен, по идее, поддерживать все локализации Мажордома.