User Tools

Site Tools


общий черновой набросок, в схеме с mqtt-bridge and mqtt-driver, по аналогии с уже имеющимся подходом-схемой

  1. первым по жизненному циклу запускается mqtt-driver, он
    1. интасталирует свою схему, и создает свой экземпляр объекта in core, если таковых еще нет
    2. инсталирует схемы классов mqtt устройств, если таковых еще нет
    3. проверяет имеющиеся (upgrade???)
    4. начинает слежение за изменениями в объектах
      1. сырые данные в свойствах для интерпретации
      2. список объектов (?)
    5. обрабатывает изменения
  2. mqtt-bridge
    1. интасталирует свою схему, и создает свой экземпляр объекта in core, если таковых еще нет
    2. считывает список имеющихся и ассоциированных с этим мостом mqtt устройств
    3. если таковые есть то
      1. считывает свойства устройств, и делает подписку в сооотвествующих mqtt brokers for accociated topics
      2. отслеживает сообщения в топиках, при поступлении таковых пишет сырые данные в свойства объекта, для последующей обработки into/with mqtt-driver
    4. начинает слежение за объектами в core (список, изменение свойств, данные для control message)
    5. обрабатывает изменения
  3. impacts & events
    1. кто-то (это может быть admin interface or other applications) создает объекты mqtt устройств
    2. кто-то меняет параметры в control of mqtt object, то есть толкает control message в mqtt устройство
  4. реакции
    1. mqtt-driver, отслеживая данные для интепретации в properies/controls
    2. mqtt-bridge, отслеживая изменения, item 2c

связь между а) property and б) mqtt topics будет храниться в core object of mqtt device и в общем случае, предусматривается что будет редактируема

  1. точно параметры доступа
  2. названия топиков в свойствах, при переконфигурировании mqtt device
  3. (?) добавить-удалить свойства объекта, также как следствие переконфигурирования mqtt device

большая часть обработчиков-интепретаторов данных от mqtt устройст будут очень простыми.

предусматривается, что одно изменение control может породить несколько сообщений в различные управляющие топики mqtt устройств

и в обратную сторону, одно сообщение из топика mqtt устройств может изменить несколько свойств в mqtt объекте