weatherflux / weatherflux
本地网络中监听WeatherFlow站点的网关,并将天气数据写入InfluxDB 2。
2.1.4
2021-02-04 12:47 UTC
Requires
- php: >=7.4
- ext-json: *
- ext-posix: *
- influxdata/influxdb-client-php: ~1.9.0
- khill/php-duration: ~1.0
- monolog/monolog: ~2.2.0
- observableworker/observableworker: >=5.2.0
README
WeatherFlux是一个简单的网关,监听本地网络中WeatherFlow站(或多个站)发送的消息,并将它们发送到InfluxDB 2.x服务器。
您可以在以下系统上运行WeatherFlux:
- 支持Docker版本19或更高版本的任何系统(WeatherFlux Docker版本);
- 任何支持PHP 7.4或更高版本和composer 2.0或更高版本的POSIX兼容操作系统(Linux,OSX,BSD)(WeatherFlux独立版本)。
在Docker上运行WeatherFlux
要在Docker上运行WeatherFlux,只需输入
docker run -itdp 50222:50222/udp -v /my/local/path:/usr/share/weatherflux/config pierrelannoy/weatherflux:latest
其中 /my/local/path
是主机上的有效路径。
然后,在/my/local/path/config.json
文件中调整设置。
作为独立工具的WeatherFlux
如果您不想或无法使用WeatherFlux的Docker版本,您可以使用它作为独立工具。如果是这样,安装WeatherFlux就像这样简单
composer require weatherflux/weatherflux
然后,创建一个名为config.json
的配置文件
mkdir ./config && cp ./vendor/weatherflux/weatherflux/config-blank.json ./config/config.json
调整设置,以匹配您的环境和需求。
作为独立工具运行WeatherFlux
要仅监听本地网络并显示发现的设备(不记录任何内容),以obstrver模式启动WeatherFlux
php vendor/weatherflux/weatherflux/weatherflux.php start -o
要监听本地网络并将数据发送到InfluxDB(控制台输出),以conole模式启动WeatherFlux
php vendor/weatherflux/weatherflux/weatherflux.php start -c
要监听本地网络并将数据发送到InfluxDB(无人值守),以daemon模式启动WeatherFlux
php vendor/weatherflux/weatherflux/weatherflux.php start -d
如果WeatherFlux以守护进程模式启动,您可以按照以下方式停止它
php vendor/weatherflux/weatherflux/weatherflux.php stop
对于其他模式,只需按下CTRL+C
即可停止。