Подробности про WB Cloud


#41

Кхм… а мне можно уделить пару минут. Я потом свой опыт изложу здесь


#42

Вы меня поставили в замешательство. Я с вашим оборудованием и с этой темой вообще разбираюсь только второй месяц, когда есть перерывы в основной работе.
Если вы не знаете, то я тем более.
Впрочем, это вопрос решаемый: вы же можете сделать опросник по тому, что народ использует, голосовалку сделать на форуме. Какой сервис победит по итогам, про тот и напишите.


#43
print 

Оно в любом случае в консоли запускается, daemon=True, это чтобы внутри поток умер, если вы control-c нажмёте, грубо говоря. Демонизацию можно внешнюю, nohup там или через systemd


#44

Понятно что print;)
Какое значение выводить. Пока нашел только msg.topic. а значение топика?

И как проверить есть ли ошибки при вводе write_points

Про демон понятно.


#45

не получается ничего. устал тратить время. ну хоть бы коментарии в коде оставляли чессно слово…

  1. правильно ли я задаю командную строку вызова

python mqtt_to_influxdb.py -h ip_wiren “/devices/#”

  1. что выяснил… переменная db_req_body = [] поэтому write_points не происходит

  2. для логирования работы mosquttio в скрипте нужно использовать функцию
    def on_log и стравить ее клиенту client.on_log=client.on_log. тогда на экран выплевываются топики, которые считываются с wirenboard и только те, которые меняются в данный момент. но значений топиков, я так и не нашел

что сделать то…


#46

нашел проблему… топики считываются нормально, со значениями, все пишется хорошо, если в on_mqtt_message закоментить if len(parts) !=4: return
я так понимаю, это условие по которому сообщение отрезается до четвертого уровня topic по символу /

я передаю топик программе по ‘/devices/#’, что я делаю не так?

переставил !=5, начало писать так… не понятно, почему channel обрезается по device/controls

name: mqtt_data
---------------
time                    channel                 value_f         value_s
1538333636185066373     devices/controls        0.08            nan
1538333636248183274     devices/controls        3.979
1538333636307415560     devices/controls        0.08
1538333636368020466     devices/controls        5.09
1538333636428873532     devices/controls        23.86           nan
1538333636489317086     devices/controls        233.57
1538333636550497331     devices/controls        23.109
1538333636611829197     devices/controls        4.797
1538333636671965574     devices/controls        14343.376
1538333636733013976     devices/controls        2.259
1538333636794009518     devices/controls        0.08
1538333636853623308     devices/controls        2.21
1538333636914185350     devices/controls        1235.33         nan
1538333636973373080     devices/controls        863.52
1538333637033364534     devices/controls        2.259
1538333637093570776     devices/controls        0.761
1538333637154991106     devices/controls        1235.33         nan

PS реинжиниринг блин…


#47

а, понял, всё просто. У нас эта штука работает с брокером, куда много клиентов шлют данные. Каждый клиент пишет со своим префиксом, т.е. топики становятся вида

/client/client_id/devices/device_id/controls/control_id

из-за этого оно у вас и не работает - формат топиков другой


#48

вот я на это 3 дня потратил…блин… как раз и дошел до этого =)
как поправить что писать в client, channel ?

все… переделал… надо кому?


#49

у нас же опенсорс, давайте пулл-реквест!


#50

Это-ж новый уровень! 80 левел так сказать… но чуть позже. Нужно исправить демонизацию, и вставить логирование в файл…


#51

Приветствую! Вообщем поставил на сервер в режиме демона скрипт и вижу огромный поток информации, который получает и пишет influx к себе в базу. Винтом дрыгает просто неприлично интенсивно.

  1. Подскажите как ограничить только метрики с датчиков расхода, а они разные -/device/ mercury/#, /devices/pulsar/# , если в скрипте только один шаблон метрик в качестве параметра? Нужно сделать алгоритм фильтрации в скрипте? или есть иной подход?
    2.может нужно сделать настройки в базе, чтобы так интенсивно не дергало винтом? С mysql было поспокойнее.
    PS зарезервировал в памяти 200 мб, вроде стало менее интенсивно дергать винтом и загрузка процессора упала до 2-3%(marvell от qnap), Но вопрос по фильтрации метрик остался, а также вопрос о том,чтобы запись в базу influx (обращение к диску) была пакетной-большими блоками как например в mysql, а не последовательно, каждую запись отдельно.

Жду совета


#52

уже не жду … вернулся на mysql


#53

1.Подскажите как ограничить только метрики с нужных мне датчиков в принципе? Может можно настроить алиасы для нужных мне точек, а потом куда мне нужно парсить? Типа / devices/aliases/#?
2. А новая версия wb-mqtt-serial уже вышла? Можно менять?


#54

Что-то не работает демо-доступ: устройства не подключены, кроме главной страницы, ничего не открывается.


#55

Вопрос к тем, кто использует CloudMQTT.

Поясните, пожалуйста, для чего?
Как я понял, это просто сбор данных, никакого UI там нет?


#56

это демо доступ, там права во многом ограничены. Если хотите подробнее посмотреть, могу дать доступ к рабочему wirenboard. Пишите на почту dk@unimon.ru Сейчас в ЛК для вайрена реализовано: управление выходами, считывание входов, терморегуляторы, планировщики. В течении месяца будет реализовано составление различных сценариев. Есть графики по разным событиям.


#57

А можете дать доступ, чтобы я потестировал ваш сервис для своего устройства?

Оставлял заявку у вас на сайте, но никто не перезвонил.


#58

я Вам на почту ещё утром ответил. не получили?
Заходите на демо аккаунт, а туда временно завёл наш тестовый wirenboard


#59

Демо я посмотрел. А как самому потестировать ваш UI?


#60

ну наш UI не зависит от конкретного wirenboard. Изменится только количество входов и выходов. Тот прибор сейчас активен, так-что можете включать выходы, менять настройки. Сейчас подцеплю пару температур, для большей наглядности. Если включить выход “нагрев”, он нагреет датчик “комната”. Так можно протестировать работу термостата, планировщика или проверить тревоги.

Что-бы подключить Ваш прибор, нужно в него записать наши скрипты, и подправить пару конфигов. Но если Вам просто посмотреть интерфейс, то, думаю, в этом нет особого смысла.