Прошло около трёх лет с тех пор, как проект MajorDoMo впервые вышел в свет и вот, наконец, номер очередного релиза достиг значения “1.0”. Чем не повод для небольшой обзорной статьи о том, что у нас получилось и к чему мы стремимся?

image

На самом деле, релизы у нас очень условные, они выходят достаточно редко и включают изменения и доработки, которые выкладываются в GitHub по несколько раз в неделю и доступны через встроенную систему обновлений. Но, тем не менее, очередная “сборка” является индикатором того, что на текущий момент функционал системы относительно стабилен, а значит можно считать заявленные возможности вполне рабочими.

Итак, если привести основные возможности системы одним списком, то получится следующее:
  • Простая и быстрая установка
  • Кросс-платформенность (Windows/Linux)
  • Бесплатная для личного или коммерческого использования
  • Большое и активное сообщество вокруг проекта
  • Поддержка различного оборудования
  • Мульти-язычный интерфейс (Русский/English)
  • Веб-доступ с любого устройства
  • Веб-интерфейс с обновлением в реальном времени
  • GPS-трэкинг и реакция на местоположение пользователей
  • Голосовые уведомления и распознание голоса
  • Push-уведомления
  • Интеграция со сторонними веб-сайтами и сервисами
  • Управление мульти-медиа
  • Модель безопасности с разграничением доступа между пользователями
  • Учитесь на примерах и делитесь настройками (сервис Connect)
  • CloudSync — облачная синхронизация и простой доступ из любого места
  • Система обновлений в один клик
  • Построена на веб-технологиях (PHP/JS/HTML5)
  • ООП в реальной жизни: классы/объекты/свойства/методы
  • Программирование с помощью PHP и/или визуальной среды Blockly
  • Расширенный анализ состояния и само-диагностика
  • Множество дополнительных модулей в “Маркете дополнений”
  • Поддержка динамических 3d-сцен (WebGL)


Основным нововведением версии 1.0 является поддержка протокола WebSocket для мгновенной реакции интерфейса на события, происходящие в системе — как внутренние, так и внешние, определяемые устройствами подключенными к системе через множество поддерживаемых протоколов. Таким образом, устраняется один из серьёзных недостатков веб-интерфейсов — задержка между событием, произошедшим в реальности и реакцией интерфейса на это событие.

image

Ещё одной интересной особенностью новой версии является поддержка динамических 3d-сцен на основе библиотеки Three.js. Фактически, можно создать в 3d-редакторе сцену с различными объектами и камерами, загрузить её в систему MajorDoMo и привязать отдельные элементы к внутренним объектам системы. Можно, к примеру, по клику на 3d-объект вызвать какой-либо сценарий, или же по событию от внешнего устройства переключиться на одну из заданных камер.

3d-сцена

Но это всё “дело техники”. Пожалуй, самым важным достижением проекта является то, что он смог собрать вокруг себя множество заинтересованных людей, готовых делиться своими идеями и наработками. Параллельно с развитием программного обеспечение идёт и развитие средств поддержки сообщества — будь то система публикации готовых решений, активный форум или же различные демонстрационные и обучающие материалы.

География пользователей

Если говорить о планах на будущее, то они весьма динамичны, но можно выделить основные направления развития проекта:
  • Техника (надёжность, скорость, удобство использования, интеграция нового оборудования и протоколов)
  • Образование (обучающие текстовые и видео-материалы)
  • Сообщество (форум, “локальные” встречи и мастер-классы, международные контакты)


В большинстве своём, мы не профессионалы, но энтузиасты, а поэтому постоянно пробуем что-то новое, не боимся ошибаться и учимся на ошибках. Проект MajorDoMo не позиционируется как готовое решение в области домашней автоматики, но может быть неплохим инструментом в руках заинтересованного человека.

Спасибо за внимание и до новых встреч!

Комментарии (8)


  1. alexkuzko
    07.12.2015 19:14

    Давно слежу за вашим проектом. Очень хороший, спасибо за постоянную разработку. Планирую у себя применить.
    Сейчас решаю какие коммуникации заложить. Весь дом витой парой тоже не опутать. Как вы это решали для себя?


    1. ACooper
      07.12.2015 22:46

      Собственно Вы сами и ответили на свой вопрос. Если проводами все не опутать, то остаются беспроводные решения.

      У меня, например, система умного дома развернута на беспроводном z-wave (датчики, модули управления светом), IR (посредством Logitech Harmony Hub), wi-fi (камеры + сейчас хочу освоить модули esp8266 для нескольких своих DIY-доработок техники), ну а к местам установки телевизоров и рабочему столу прокинуто по 4е UTP от щитка встроенного в шкафу-купе в коридоре, где находится роутер и собственный сервачок.
      По UTP подключаю устройства не только к сети, но и с помощью соответствющих устройств вывожу изображение с компьютера на рабочем месте, на любой телевизор.

      Пока испытываю только одну проблему: невозможность управления шторами. Т.к. предлагаемые решения нужно запитывать от сети, а розеток около окон у меня нет :(.


    1. past
      08.12.2015 09:39

      Делайте на z-wave


      1. alexkuzko
        08.12.2015 09:41

        Чудовищно дорого. А поставить десяток устройств и думать что это «умный дом»… В целом нужно чтобы каждая розетка, каждое устройство могло быть управляемым (с розетками частично можно сделать на стороне щитка, но сами знаете, там обычно группы, поэтому также нужны устройства на другой стороне).


        1. ACooper
          08.12.2015 17:32

          По поводу каждого устройства согласен, но так ли нужно управлять каждой розеткой?

          Если устройство умное, то оно просто обязано управлять своим включением/выключением. А если неумное, то вряд ли можно многого добиться простой подачей/отключением от нее электричества.

          Устройства на стороне щитка (те что я видел на KNX) стоят подороже z-wave. Ну и естественно каждая розетка в Вашем кейсе, как Вы правильно заметили, это не просто отдельная группа, а еще и дополнительные расходы на кабель.

          Если квартира — однушка, то и десятка устройств для нее вполне достаточно. Но лучше 2 :)


  1. click0
    08.12.2015 04:19

    У меня слово Majordomo ассоциируется с российским хостингом.


  1. timsoid
    08.12.2015 23:42

    Цены на noolite дикие вообще, что можно использовать вместо них? Есть ли недорогие силовые блоки и USB контроллеры для них?


    1. ACooper
      10.12.2015 22:37

      Такие ли уж дикие?
      Брал их прайс на выставке Hi-TECH Building 2015. Стоимость одного беспроводного силового модуля для установки в подрозетник была около $20.

      Решение на KNX, к примеру, от HDL, представленное там же, на DIN-рейке на 4 канала — $206. Это около $50 за точку.

      Стоимость модуля Fibaro (z-wave) — в районе $70.

      Но у noolite нет обратной связи, т.е. контроллер не узнает включен ли свет или нет.