MeteoIODoc 20240411.d3bdb3cb

Format

This plugin reads meteorological data from Meteoblue's packages API as a RESTful web service. To compile the plugin you need to have the CURL library with its headers present.

The meteorological parameters are defined by Meteoblue in this document. The update times are given in the
description of the modeling process.

Keywords

This plugin uses the following keywords:

  • METEOBLUE_URL: the API endpoint to connect to (default: http://my.meteoblue.com/);
  • METEOBLUE_APIKEY: the key purchased from Meteoblue that gives access to its API (mandatory);
  • METEOBLUE_PACKAGES: a space delimited list of packages to read data from. Please note that you must have purchased an API key that gives access to all the packages that you list here! (mandatory);
  • METEOBLUE_TIMEOUT: timeout (in seconds) for the connection to the server (default: 60s);
  • METEOBLUE_DEBUG: print more information in order to better understand when something does not work as expected (default: false);
  • STATION#: provide the lat, lon and altitude or easting, northing and altitude for a station to get the data from (see Coords() for the syntax). If your don't have the elevation of your station of interest, you can use latlongdata.com (mandatory);
    • STATION#_ID: provide an ID for the declared station (default: "STAT#");
    • STATION#_NAME: provide a name for the declared station (default: "STATION#");
Note
You can only get (at most) data from NOW-3days up to NOW+8days with the non-historical packages and the packages API as used here. Depending on the forecast length, various sources of data are used in the numerical models (see this introduction). In this plugin, the past 3 days are always retrieved (as they include satellite observations and ground measurements) up to the next 7-8 days. This means that the plugin will ignore any time period specifications when called but MeteoIO will later truncate the extracted dataset to the requested period.
METEO = METEOBLUE
METEOBLUE_APIKEY = xxxxxxxxxxx
METEOBLUE_PACKAGES = basic-1h clouds-1h solar-1h
STATION1 = latlon (47.56, 7.57, 262)
STATION1_ID = BSL1
STATION1_NAME = Basel

Installation

On Linux, simply install libcurl for your distribution and cmake should be able to find it automatically. On Windows, please install libcurl (you can find pre-compiled binaries). Then you will most probably have to manually provide the file and path to libcurl.dll.a as well as to the "include" directory of libcurl in cmake in order to be able to compile the meteoblue plugin.

Picojson

This plugin relies on picojson for reading and parsing JSON data. Picojson is released under a 2-Clause BSD License. Please find here below the full license agreement for picojson:

Copyright 2009-2010 Cybozu Labs, Inc.
Copyright 2011-2014 Kazuho Oku
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.