create data point with Simple API

Вопросы и информация о ioBroker
Antworten
alucky
Beiträge: 2
Registriert: 25.08.2017, 09:16

create data point with Simple API

Beitrag von alucky » 25.08.2017, 09:26

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

столкнулся с проблемой создания дата-поинта через апи. в документации есть только метод set, в описании которого четко написано, что дата поинт должен существовать.
а если не существует? как его создать?

у меня внешний скрипт собирает динамические данные и я хочу хранить их состояние для дальнейшей работы в iobroker'e


кроме того мне непонятна механика подтверждения данных. как она работает?
если я выставляю состояние руками через модуль admin, то у меня значение становится неподтвержденным.
каким образом подтвердить? ну то есть понятно, что я сам это должен своей логикой какой-то сделать, но как поймать ивент в котором эту проверку запустить и как в объект записать, что он подтвержден?

спасибо

Benutzeravatar
instalator
guru
Beiträge: 1264
Registriert: 09.11.2014, 16:50
Wohnort: Барнаул
Kontaktdaten:

Re: create data point with Simple API

Beitrag von instalator » 26.08.2017, 09:31

alucky hat geschrieben:Добрый день всем!

столкнулся с проблемой создания дата-поинта через апи. в документации есть только метод set, в описании которого четко написано, что дата поинт должен существовать.
а если не существует? как его создать?

у меня внешний скрипт собирает динамические данные и я хочу хранить их состояние для дальнейшей работы в iobroker'e

спасибо
Ты пытаешься завести данные в iobroker через драйвер Simple API? вот описание https://github.com/ioBroker/ioBroker.si ... /README.md
Если обьект в иоб не существует его нужно создать либо в админке либо с помощью скриптов в драйвере Javascript.
в скрипте обьект создается очень просто:

Code: Alles auswählen

createState('Main.Test', 'data');
Единственный момент создаются объекты через драйвер в объект javascript.0.....
123333333333333.png
В админке создаются так:
12222.png
12222.png (11.49 KiB) 2437 mal betrachtet
alucky hat geschrieben:кроме того мне непонятна механика подтверждения данных. как она работает?
если я выставляю состояние руками через модуль admin, то у меня значение становится неподтвержденным.
каким образом подтвердить? ну то есть понятно, что я сам это должен своей логикой какой-то сделать, но как поймать ивент в котором эту проверку запустить и как в объект записать, что он подтвержден?
Если данные пишет драйвер то подтверждение true, т.е. данные пришли от устройства.
Высокий уровень Децибел вреден для здоровья!
Мой блог

Haba
starter
Beiträge: 56
Registriert: 29.03.2016, 13:07

Re: create data point with Simple API

Beitrag von Haba » 26.08.2017, 10:05

чуть дополню, если меняешь значение в админке, то никак не подтверждается статус и на это не надо обращать в внимания, если из скрипта то:
setState (id, state, ack, callback)

в ack пишем true

alucky
Beiträge: 2
Registriert: 25.08.2017, 09:16

Re: create data point with Simple API

Beitrag von alucky » 27.08.2017, 06:38

instalator hat geschrieben: Если обьект в иоб не существует его нужно создать либо в админке либо с помощью скриптов в драйвере Javascript.
в общем всетаки придется мне подключать драйвер javascript, думал обойтись минимумом. держать целый драйвер ради такой задачи - как-то неоптимально.
может быть написать фич-реквест на функционал к simple api? насколько ничтожен шанс что его одобрят и сделают? :)

в любом случае спасибо.

что касается второго вопроса - если информация пришла от владельца объекта, тогда по умолчанию подтвержденное значение.
если пришло из другого драйвера, тогда надо отдельно указывать что информация подтвержденная (если другой драйвер такое поддерживает).
ни на что это дело особенно не влияет.

я верно все понял?

Haba
starter
Beiträge: 56
Registriert: 29.03.2016, 13:07

Re: create data point with Simple API

Beitrag von Haba » 28.08.2017, 09:04

с подтверждением есть смысл заморачиваться только если ты его потом будешь анализировать и как-то отражать в сообщениях или визуально.
Если нет, то не углубляйся :)

Antworten