diff --git a/examples/elasticsearch/config/templates/meteocat.tmpl b/examples/elasticsearch/config/templates/meteocat.tmpl deleted file mode 100644 index 9d2b5a9..0000000 --- a/examples/elasticsearch/config/templates/meteocat.tmpl +++ /dev/null @@ -1,51 +0,0 @@ -{ - "codi_estacio": "CC", - "variables": [ - { - "codi": 1, - "metadata_variables": { - "nom": "Pressió atmosfèrica màxima", - "unitat": "hPa", - "acronim": "Px", - "tipus": "DAT", - "decimals": 1 - }, - "lectures": [ - { - "data": "2020-11-15T15:00Z", - "dataExtrem": "2020-11-15T15:23Z", - "valor": 944.3, - "estat": " ", - "baseHoraria": "SH" - } - ] - } - ], - "metadata_estacions": { - "codi_tipus": "A", - "data_inici": "1995-11-15T00:00:00.000", - "nom_comarca": "Osona", - "longitud": "2.20862", - "nom_estacio": "Orís", - "nom_municipi": "Orís", - "latitud": "42.07398", - "codi_municipi": "573", - "nom_estat_ema": "Operativa", - "altitud": "626", - "nom_xarxa": "XEMA", - "data_fi": null, - "emplacament": "Abocador comarcal", - "codi_provincia": "8", - "codi_xarxa": "1", - "codi_estat_ema": "2", - "nom_provincia": "Barcelona", - "codi_comarca": "24" - }, - "geometry": { - "type": "Point", - "coordinates": [ - 2.20862, - 42.07398 - ] - } -} diff --git a/examples/influxdb/config.yml b/examples/influxdb/config.yml new file mode 100644 index 0000000..e69de29 diff --git a/soda.go b/soda.go new file mode 100644 index 0000000..d7e0854 --- /dev/null +++ b/soda.go @@ -0,0 +1,61 @@ +package meteocat + +import ( + "encoding/json" + "fmt" + "net/http" +) + +type OpenData[]struct { + ID string `json:"id"` + CodiEstacio string `json:"codi_estacio"` + CodiVariable string `json:"codi_variable"` + DataLectura string `json:"data_lectura"` + DataExtrem string `json:"data_extrem,omitempty"` + ValorLectura string `json:"valor_lectura"` + CodiBase string `json:"codi_base"` +} + +type OpenDataMeasurements struct { + OpenData + *Settings +} + + +// NewMesurades returns a new MesuradesData pointer with the supplied parameters +func NewOpenDataMesurades() (*OpenDataMeasurements, error) { + c := &OpenDataMeasurements{ + Settings: NewSettings(), + } + + + return c, nil +} + +func (s *OpenDataMeasurements) OpenDataMeasurementAllByStation(p *Parameters) error { + + + req, err := http.NewRequest("GET", fmt.Sprintf(openDataURL, fmt.Sprintf("?data_lectura=%s-%s-%sT06:00:00", p.Any, p.Mes, p.Dia)), nil) + if err != nil { + return err + } + + //req.Header.Add("X-Api-Key", m.Key) + + resp, err := s.client.Do(req) + + + if err != nil { + fmt.Println(err) + return err + } + defer resp.Body.Close() + + if err = json.NewDecoder(resp.Body).Decode(&s.OpenData); err != nil { + return err + } + + return nil +} + +