modulepackage
0.0.0-20201009073308-a8620474d1ea
Repository: https://github.com/exzz/netatmo-api-go.git
Documentation: pkg.go.dev
# README
netatmo-api-go
Simple API to access Netatmo weather station data written in Go.
Quickstart
- Create a new netatmo app
- Edit
test/sample.conf
with your credentials - run
go run test/netatmo-api-test.go -f test/sample.conf
- Output shall look like :
Station : Home
Module : Chambre Elsa
BatteryPercent : 47 (updated 323s ago)
RFStatus : 68 (updated 323s ago)
Temperature : 22.8 (updated 323s ago)
Humidity : 53 (updated 323s ago)
CO2 : 446 (updated 323s ago)
Module : Chambre parents
BatteryPercent : 50 (updated 323s ago)
RFStatus : 71 (updated 323s ago)
Temperature : 19.9 (updated 323s ago)
Humidity : 61 (updated 323s ago)
CO2 : 428 (updated 323s ago)
Module : Chambre Jules
BatteryPercent : 46 (updated 323s ago)
RFStatus : 60 (updated 323s ago)
CO2 : 396 (updated 323s ago)
Temperature : 22 (updated 323s ago)
Humidity : 54 (updated 323s ago)
Module : Exterieur
BatteryPercent : 37 (updated 323s ago)
RFStatus : 66 (updated 323s ago)
Temperature : 23.4 (updated 323s ago)
Humidity : 52 (updated 323s ago)
Module : Pluie
BatteryPercent : 72 (updated 9684499s ago)
RFStatus : 54 (updated 9684499s ago)
Rain : 0.101 (updated 9684499s ago)
Module : Living
WifiStatus : 37 (updated 278s ago)
Temperature : 24 (updated 278s ago)
Humidity : 49 (updated 278s ago)
CO2 : 733 (updated 278s ago)
Noise : 50 (updated 278s ago)
Pressure : 1028.1 (updated 278s ago)
AbsolutePressure : 1008.4 (updated 278s ago)
Tips
- Only Read() method actually do an API call and refresh all data at once
- Main station is handle as a module, it means that Modules() method returns list of additional modules and station itself.
- Data() returns sensors values (such as temperature) whereas Info() returns module status (such as battery level)
# Packages
No description provided by the author
# Functions
NewClient create a handle authentication to Netamo API.
# Structs
Client use to make request to Netatmo API.
Config is used to specify credential to Netatmo API ClientID : Client ID from netatmo app registration at http://dev.netatmo.com/dev/listapps ClientSecret : Client app secret Username : Your netatmo account username Password : Your netatmo account password.
DashboardData is used to store sensor values Temperature : Last temperature measure @ LastMeasure (in °C) Humidity : Last humidity measured @ LastMeasure (in %) CO2 : Last Co2 measured @ time_utc (in ppm) Noise : Last noise measured @ LastMeasure (in db) Pressure : Last Sea level pressure measured @ LastMeasure (in mb) AbsolutePressure : Real measured pressure @ LastMeasure (in mb) Rain : Last rain measured (in mm) Rain1Hour : Amount of rain in last hour Rain1Day : Amount of rain today WindAngle : Current 5 min average wind direction @ LastMeasure (in °) WindStrength : Current 5 min average wind speed @ LastMeasure (in km/h) GustAngle : Direction of the last 5 min highest gust wind @ LastMeasure (in °) GustStrength : Speed of the last 5 min highest gust wind @ LastMeasure (in km/h) LastMeasure : Contains timestamp of last data received.
Device is a station or a module ID : Mac address StationName : Station name (only for station) ModuleName : Module name BatteryPercent : Percentage of battery remaining WifiStatus : Wifi status per Base station RFStatus : Current radio status per module Type : Module type : "NAMain" : for the base station "NAModule1" : for the outdoor module "NAModule4" : for the additionnal indoor module "NAModule3" : for the rain gauge module "NAModule2" : for the wind gauge module DashboardData : Data collection from device sensors DataType : List of available datas LinkedModules : Associated modules (only for station).
DeviceCollection hold all devices from netatmo account.