Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Драйвер MQTT

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Драйвер MQTT

    This topic has been deleted. Only users with topic management privileges can see it.
    • Bluefox
      Bluefox last edited by

      Поправил в 1.1.2

      1 Reply Last reply Reply Quote 0
      • M
        MSapogov last edited by

        @Bluefox:

        Поправил в 1.1.2 `
        Заработало!

        Но в логе стало сыпаться:

        javascript.0	2016-09-14 09:08:32.080	warn	javascript.0 Wrong type of mqtt.0.beeiot.Bee-RGB.lcd.line1: "string". Please fix, while deprecated and will not work in next versions.
        javascript.0	2016-09-14 09:08:32.080	warn	javascript.0 Wrong type of mqtt.0.beeiot.Bee-RGB.lcd.line0: "string". Please fix, while deprecated and will not work in next versions.
        javascript-0	2016-09-14 09:08:30.081	warn	Wrong type of mqtt.0.beeiot.Bee-RGB.lcd.line1: "string". Please fix, while deprecated and will not work in next versions.
        javascript-0	2016-09-14 09:08:30.081	warn	Wrong type of mqtt.0.beeiot.Bee-RGB.lcd.line0: "string". Please fix, while deprecated and will not work in next versions.
        

        Скрипт такой:````
        on({id: 'squeezebox.0.Children.elapsedTimeText', change: 'any'}, function (obj) {
        setState("mqtt.0.beeiot.Bee-RGB.lcd.line0", "Прошло " + getState("squeezebox.0.Children.elapsedTimeText").val);
        setState("mqtt.0.beeiot.Bee-RGB.lcd.line1", getState("squeezebox.0.Children.currentArtist").val);
        setState("mqtt.0.beeiot.Bee-RGB.lcd.line2", "Громкость " + getState("squeezebox.0.Children.volume").val + " %");
        });

        Понял что ему значение string не нравится а как его изменить или задать - не пойму.
        
        PS: Проблему исправил. В редактировании объекта mqtt.0.beeiot.Bee-RGB.lcd.lineХ - выбрал тип данных "Строка"
        1 Reply Last reply Reply Quote 0
        • A
          Alekseym6 last edited by

          каким параметром посмотреть активность клиента(подключен/отключен)?

          1 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

            mqtt.0.info.connection содержит список через запятую всех подключенных клиентов. Имена клиентов а не ip адреса.

            1 Reply Last reply Reply Quote 0
            • V
              VictorS last edited by

              Добрый день всем,

              строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).

              Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как?

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                @VictorS:

                Добрый день всем,

                строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).

                Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? `
                Создать в админ такой объект ручками

                1 Reply Last reply Reply Quote 0
                • M
                  MSapogov last edited by

                  @Bluefox:

                  @VictorS:

                  Добрый день всем,

                  строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).

                  Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручками
                  Сначала создаем в нужном устройстве lcd (у меня OLED дисплей), а потом внутри него line1, line2 и так далее…

                  ! [img 643_iobroker.admin.png ]

                  1 Reply Last reply Reply Quote 0
                  • V
                    VictorS last edited by

                    @MSapogov:

                    @Bluefox:

                    @VictorS:

                    Добрый день всем,

                    строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).

                    Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручками
                    Сначала создаем в нужном устройстве lcd (у меня OLED дисплей), а потом внутри него line1, line2 и так далее…

                    ! [imgioBroker.admin.png] `

                    Спасибо, все получилось. Хотелось бы уточнить - надо для этой переменной ставить Role: variable, или text как у вас? У меня работает variable. Значит без разницы? Вообще на что влияет свойвство common.role? Сходу не нашел в ддокументации.

                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      @VictorS:

                      @MSapogov:

                      @Bluefox:

                      Создать в админ такой объект ручками `
                      Сначала создаем в нужном устройстве lcd (у меня OLED дисплей), а потом внутри него line1, line2 и так далее…

                      ! [imgioBroker.admin.png] `

                      Спасибо, все получилось. Хотелось бы уточнить - надо для этой переменной ставить Role: variable, или text как у вас? У меня работает variable. Значит без разницы? Вообще на что влияет свойвство common.role? Сходу не нашел в ддокументации. `
                      Role используется для отображения. Что бы знать, как это значение показывать в vis или mobile

                      1 Reply Last reply Reply Quote 0
                      • V
                        VictorS last edited by

                        @Bluefox:

                        @VictorS:

                        Добрый день всем,

                        строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).

                        Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручками

                        Возникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно.

                        А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false,

                        без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет.

                        Куда копать, где грабли ? 🙂

                        1 Reply Last reply Reply Quote 0
                        • aurodionov
                          aurodionov last edited by

                          @VictorS:

                          @Bluefox:

                          @VictorS:

                          Добрый день всем,

                          строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).

                          Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручками

                          Возникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно.

                          А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false,

                          без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет.

                          Куда копать, где грабли ? 🙂 `
                          Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqtt

                          1 Reply Last reply Reply Quote 0
                          • V
                            VictorS last edited by

                            @aurodionov:

                            @VictorS:

                            @Bluefox:

                            Создать в админ такой объект ручками `

                            Возникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно.

                            А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false,

                            без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет.

                            Куда копать, где грабли ? 🙂 Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqtt

                            Поставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика.

                            Куда копать дальше?

                            1 Reply Last reply Reply Quote 0
                            • I
                              instalator last edited by

                              @VictorS:

                              @aurodionov:

                              @VictorS:

                              Возникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно.

                              А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false,

                              без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет.

                              Куда копать, где грабли ? 🙂 Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqtt

                              Поставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика.

                              Куда копать дальше? ` клиент подписан? Js скрипт запущен?

                              1 Reply Last reply Reply Quote 0
                              • V
                                VictorS last edited by

                                @instalator:

                                @VictorS:

                                @aurodionov:

                                Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqtt `

                                Поставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика.

                                Куда копать дальше? клиент подписан? Js скрипт запущен?

                                Да, конечно.

                                1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает.

                                2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже.

                                Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять.

                                1 Reply Last reply Reply Quote 0
                                • I
                                  instalator last edited by

                                  @VictorS:

                                  @instalator:

                                  @VictorS:

                                  Поставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика.

                                  Куда копать дальше? клиент подписан? Js скрипт запущен?

                                  Да, конечно.

                                  1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает.

                                  2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже.

                                  Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. ` а в какой ветке создан? Подписывается на отдельный топик или на всю ветку?

                                  1 Reply Last reply Reply Quote 0
                                  • V
                                    VictorS last edited by

                                    @instalator:

                                    @VictorS:

                                    @instalator:

                                    клиент подписан? Js скрипт запущен? `

                                    Да, конечно.

                                    1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает.

                                    2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже.

                                    Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. а в какой ветке создан? Подписывается на отдельный топик или на всю ветку?

                                    Вот видно на скрине (выделен красным) топик который я создал.

                                    ! 1605_mqtt_topic.jpg

                                    Клиент ESP подписывается регэкспом на всю свою ветку:

                                    mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/

                                    mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      instalator last edited by

                                      @VictorS:

                                      @instalator:

                                      @VictorS:

                                      Да, конечно.

                                      1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает.

                                      2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже.

                                      Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. а в какой ветке создан? Подписывается на отдельный топик или на всю ветку?

                                      Вот видно на скрине (выделен красным) топик который я создал.

                                      ! mqtt_topic.jpg

                                      Клиент ESP подписывается регэкспом на всю свою ветку:

                                      mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/

                                      mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/ ` очень странно, последние версии драйверов? В настройках драйвера все ок? Дебаг Включи еще

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        MSapogov last edited by

                                        Вот у меня MQTT в прошивке от MaksMS, стабильно работает только с авторизацией…

                                        Но драйвер MQTT уже много с того времени потерпел изменений.

                                        1 Reply Last reply Reply Quote 0
                                        • V
                                          VictorS last edited by

                                          @instalator:

                                          @VictorS:

                                          @instalator:

                                          а в какой ветке создан? Подписывается на отдельный топик или на всю ветку? `

                                          Вот видно на скрине (выделен красным) топик который я создал.

                                          ! mqtt_topic.jpg

                                          Клиент ESP подписывается регэкспом на всю свою ветку:

                                          mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/

                                          mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/ очень странно, последние версии драйверов? В настройках драйвера все ок? Дебаг Включи еще

                                          Странно. Включил Trace output for every message: в настройках драйвера (версия 1.2.4, я так понимаю последняя). Но никаких дополнительных сообщений в логе с уровнем debug не увидел. Или я включил отладку не в том месте?

                                          1 Reply Last reply Reply Quote 0
                                          • V
                                            VictorS last edited by

                                            @MSapogov:

                                            Вот у меня MQTT в прошивке от MaksMS, стабильно работает только с авторизацией…

                                            Но драйвер MQTT уже много с того времени потерпел изменений. `

                                            ну у меня он то работает и без авторизации с ESP. да и проблема не в ESP собственно, а в том, что почему-то MQTT не отдает изменения сделанные через JS . Причем только в случае с самодельным топиком. А управление gpio например на те же ESP работает отлично.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            560
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            31
                                            162
                                            42807
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo