NEWS


  • Прошу прощения за нубский вопрос, но как правильно осуществляется парсинг состояний MQTT из строки JSON:
    Есть несколько ламп Milight, на ESP8266 крутится самодельный шлюз
    https://github.com/sidoh/esp8266_milight_hub
    Настройки следующие
    Milight hub settings.png
    Результат в iobroker:
    JSON string.png

    Все работает, обновляется, но все статусы в виде JSON-строки. Вопрос - что я делаю не так?


  • @Den-Kudryashov, насколько я понял, Вам надо иметь доступ к параметрам в JavaScript? Я, честно говоря, пока не знаю, как будет представлено это свойство в iobroker адаптере JavaScript - как объект или как строка.
    Если объект - то просто обращаетесь через точку. Если строка - то сделайте десериализацию, примерно вот так:
    var data = JSON.parse(parameter);

    После чего можно спокойно работать с data как с объектом, указывая поля через точку.

    Свойство читается как-то так: getState('milight/states/0x1/rgbw/1')
    Я сам пока только начал ковырять брокер, так что 100% рабочий вариант не подскажу, но скоро попробую 🙂 Вижу, что JSON контейнер довольно похож на контейнер, который рассылает по UDP шлюз Xiaomi.

    Если что - на гите есть справка по JavaScript в рамках брокера: https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#getstate

Suggested Topics

  • 6
  • 5
  • 4
  • 7
  • 2
  • 244
  • 162
  • 3

1.7k
Online

35.3k
Users

41.2k
Topics

567.3k
Posts