Очередной погодный демон
May. 23rd, 2023 04:04 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В прошлый четверг мы поставили новую метеостанцию. Целый день с Амирычем возились, а я вспоминал, как электросваркой пользоваться (уродливо, конечно, надо как-нибудь потренироваться на ненужных железяках).
Таки дописал код демона, буду следить: надо проверить, как вычисляется среднее направление ветра, когда будет более-менее северный.
Обращаться можно как через обычные сокеты, так и веб-запросами (POST/GET). POST-запрос передает только метеоданные в формате параметр=значение, GET-запрос может еще и статистику передавать в том же формате (если указать путь /stat). А в случае обращений через сокет, можно еще и "короткий" формат задать: "simple" выведет метеоданные через запятую, скажем, так:
"statsimple" — ее же с разделением через запятую:
Ну, а любой другой запрос (в т.ч. пустой) — метеоданные в обычном формате:
Таки дописал код демона, буду следить: надо проверить, как вычисляется среднее направление ветра, когда будет более-менее северный.
Обращаться можно как через обычные сокеты, так и веб-запросами (POST/GET). POST-запрос передает только метеоданные в формате параметр=значение, GET-запрос может еще и статистику передавать в том же формате (если указать путь /stat). А в случае обращений через сокет, можно еще и "короткий" формат задать: "simple" выведет метеоданные через запятую, скажем, так:
1684847413.985,3.4,52.0,790.6,13.5,74.2,31.0(порядок тот же, но время впереди). "stat" выдаст статистику:
Windmax=3.8 Windmin=1.6 Windmean=2.9 Windrms=0.5 Dirmax=81.6 Dirmin=21.2 Dirmean=55.8 Dirrms=12.2 Pressuremax=790.6 Pressuremin=790.4 Pressuremean=790.5 Pressurerms=0.1 Temperaturemax=13.8 Temperaturemin=13.4 Temperaturemean=13.6 Temperaturerms=0.1 Humiditymax=75.8 Humiditymin=72.4 Humiditymean=74.0 Humidityrms=0.8 Rainmax=31.0 Rainmin=31.0 Rainmean=31.0 Rainrms=0.0 Timemax=1684847455.4 Timemin=1684846981.9 Timemean=1684847218.6 Timerms=136.7
"statsimple" — ее же с разделением через запятую:
4.0,1.6,3.0,0.5,81.6,21.2,55.0,12.0,790.6,790.4,790.5,0.1,13.8,13.4,13.6,0.1,75.8,72.4,74.1,0.8,31.0,31.0,31.0,0.0,1684847487.2,1684846981.9,1684847234.5,145.9
Ну, а любой другой запрос (в т.ч. пустой) — метеоданные в обычном формате:
Wind=3.4 Dir=53.9 Pressure=790.6 Temperature=13.5 Humidity=73.7 Rain=31.0 Time=1684847396.687