Weather Observations Website (WOW)

The WOW service is a website hosted by the MetOffice (http://wow.metoffice.gov.uk/) that allows registered users to upload data from measurement stations. Once uploaded the data can be viewed through the WOW website by the general public.

The WOW export implements the automatic upload API. Of which the documentation can be found here (http://wow.metoffice.gov.uk/support/dataformats#automatic). Through this API it is possible to upload a single set of measurement values of a weatherstation for each call.

For uploading data the following information is required:

  • Site identifier: unieque numeric id of the site
  • AWS pin: A pin number that is linked to the site.
  • Date: date of measurement. For encoding see WOW website.
  • Software Type: The name of the software, to identify which piece of software and which version is uploading data.

On the WOW website there is a table Weather Data which describes the accepted parameter keys. Note that the expected units are not metric, so all data values configured in the metric system must be converted to UK units. Furthermore all uploaded times are expected to be in GMT.

Setting up measurement sites occurs through the WOW website. It is necessary to obtain a user account from the MetOffice in order to add sites. When setting up a site location it is necessary to configure a AWS pin number, as without this pin it is not possible to add data through the Automatic Upload API.

Example FEWS Configuration

Example ModuleConfigFile

Configure a TimeSeriesExportRun using the 'serializerClassName' option. It is not necessary to configure a bin directory as the required classes are available in the FEWS-bin directory. Furthermore there are some required and optional parameters that need to be entered through the Properties section. If the FEWS location ids and/or parameter ids do not match with the WOW siteIds or weather data keys then it is necessary to configure an 'idMapId'. If the FEWS data values are in metric units, they will must be converted to UK units. To convert the values a 'unitConversionsId' must be set.

WowModuleConfigFile
<fews:timeSeriesExportRun xmlns:fews="http://www.wldelft.nl/fews">
  <fews:export>
    <fews:general>
      <fews:serializerClassName>nl.wldelft.timeseriesserializers.WowTimeSeriesSerializer</fews:serializerClassName>
      <fews:serverUrl>http://wow.metoffice.gov.uk/automaticreading?</fews:serverUrl>
      <!-- <fews:connectionTimeOutMillis>3000</fews:connectionTimeOutMillis> -->
      <fews:idMapId>WosExportIdMap</fews:idMapId>
      <fews:unitConversionsId>WowExportUnitConversion</fews:unitConversionsId>
      <fews:omitMissingValues>true</fews:omitMissingValues>
      <fews:exportTimeZone>
        <fews:timeZoneName>GMT</fews:timeZoneName>
      </fews:exportTimeZone>
    </fews:general>
    <fews:properties>
      <fews:int key="AwsPin" value="123456">
        <fews:description>Required PIN code for uploading data to station</fews:description>
      </fews:int>
<!--  <fews:int key="ReadTimeoutMillis" value="3000">
        <fews:description>Optional timeout for response message. Defaults to 3000</fews:description>
      </fews:int> -->
<!--  <fews:int key="ConnectionTimeoutMillis" value="3000">
        <fews:description>Optional timeout for establishing connection to server. Defaults to 3000</fews:description>
      </fews:int> -->
<!--  <fews:string key="SoftwareType" value="FewsWowExport1.0">
          <fews:description>Optional identifier of describing source of datavalues. Defaults to 'FewsWowExport1.0'</fews:description>
      </fews:string> -->
    </fews:properties>
    <fews:timeSeriesSet>
      <fews:moduleInstanceId>WowExport</fews:moduleInstanceId>
      <fews:valueType>scalar</fews:valueType>
      <fews:parameterId>a valid WOW parameter key</fews:parameterId>
<!--      <fews:locationId>site Id</fews:locationId> -->
      <fews:locationSetId>WowSiteIds</fews:locationSetId>
      <fews:timeSeriesType>external historical</fews:timeSeriesType>
      <fews:timeStep unit="nonequidistant"/>
      <fews:relativeViewPeriod unit="hour" start="-1" end="0" startOverrulable="false" endOverrulable="false">
        <fews:description>If more than one timestep available only latest value is uploaded</fews:description>
      </fews:relativeViewPeriod>
      <fews:readWriteMode>add originals</fews:readWriteMode>
    </fews:timeSeriesSet>
  </fews:export>
</fews:timeSeriesExportRun>

Example IdMap

Configure an IdMap for mapping the FEWS parameter ids to an excepted WOW data parameter key. The list of accepted data keys can be found here http://wow.metoffice.gov.uk/support/dataformats#automatic. De list of available site location ids can also be returned received from the WOW website. Keep in mind that data can only be uploaded for a measurement site if the AWS Pin code for the site is known.

<fews:idMap version="1.1" xmlns:fews="http://www.wldelft.nl/fews">
    <fews:parameter internal="T.obs" external="tempf"/>
    <fews:parameter internal="P.acc" external="rainin"/>
    <fews:parameter internal="Wind.dir" external="winddir"/>
    <fews:location internal="Fews1" external="120000"/>
    <fews:location internal="Fews2" external="120001"/>
</fews:idMap>

Example UnitConversions

Configure a UnitConversions file for converting FEWS metric units to UK units. The following three types of conversion might be required:

  • Temperature: oC to Fahrenheit
  • Length: mm to inches
  • Speed: m/s or km/h to Miles per Hour

example WowUnitConversions
<?xml version="1.0" encoding="UTF-8"?>
<unitConversions xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/unitConversions.xsd">
    <unitConversion>
        <inputUnitType>oC</inputUnitType>
        <outputUnitType>F</outputUnitType>
        <multiplier>1.8</multiplier>
        <incrementer>32</incrementer>
    </unitConversion>
    <unitConversion>
        <inputUnitType>mm</inputUnitType>
        <outputUnitType>in</outputUnitType>
        <multiplier>0.0393701</multiplier>
        <incrementer>0</incrementer>
    </unitConversion>
    <unitConversion>
        <inputUnitType>m/s</inputUnitType>
        <outputUnitType>mph</outputUnitType>
        <multiplier>2.23694</multiplier>
        <incrementer>0</incrementer>
    </unitConversion>
</unitConversions>
  • No labels