Realtime.txt

Revision as of 17:29, 8 June 2021 by Sfws (talk | contribs)


Crystal Clear info.png This document is 'Work In Progress' so content may not be complete.

Request for help from Wiki Readers

  • Do you understand how MX works?
  • Do you use hardware, or MX functionality, that is not yet documented? Can you begin that documenting?
  • Can you contribute simple text for novice users, examples of what you have done, correction of typing or factual errors, or supply missing details?
  • Will you make this page more useful by bringing content up-to-date as new releases change some information written for older releases?
  • Does any page need a section for novices, so they don't need to read more technical information further down that page?
  • Is there some information on this page, that should be on a separate page? Can you create the new page and move the less relevant information off this page, don't forget this page needs a link to the new page so people who expect to find it here know where it has moved to?

If you plan on contributing to the Wiki, then you will need an account.

  • Please use the Request Account form to apply for an account. Note that the Wiki is currently undergoing restructuring and is largely locked for editing, but please apply for an account if you wish to contribute in the future.
  • You will find help on how to contribute to this wiki at How to Edit.
  • If you need to consult others, please use the Cumulus Wiki suggestions forum.

Please be aware that information on this page may be incorrect.

Cumulus Version MX SpecificCumulus Version 1 SpecificThis page applies to both flavours.

This page was created for Cumulus 1, it has had some updates for MX, but not been kept up to date.

Introduction

  • realtime.txt is a text file with a single line of space separated values.
  • It contains a list of key values of the sensors, and is re-created frequently.
  • After creation, it is usually set to upload to your website, and used to produce near instant readings.
  • The realtime.txt file is NOT a log file and is constantly replaced. It does not therefore contain any historic data.
    • Although this file is technically not a 'log file', it is optionally automatically produced by Cumulus, and follows a similar format to the other Log files.


Where is the file used in Cumulus 1

 : the following applies only to the legacy Cumulus.

The realtime.txt is used only in Cumulus 1 in the following areas:

Enabling this file in Cumulus 1

 : the following applies only to the legacy Cumulus.

This is the legacy screen that controls production of this file. Standard Cumulus 1 only uses this file for the optional real-time wind gauges (see #Where is the file used). It exists as one way that current Cumulus derivatives can be supplied to, and its content can be tailored to the needs of whatever you choose.

  • The 'interval' sets how often Cumulus produces the file, to set that interval, click on the 'Configuration' menu then 'Internet', then set parameter labelled 'Realtime interval' by entering an integer number of seconds.
  • Optionally the file can be uploaded to your externally-hosted web site, if you want this (and it is usual) select all 3 selectors:
    • Enable Realtime
    • Enable Realtime FTP
    • Realtime.txt FTP
  • The uploading interval is the same as the file creation interval.

Special note to Fine Offset/EasyWeather users

Weather stations which come shipped with the EasyWeather software should consider the real-time updating with care.

The station only updates every 48 (solar is only updated every 60) seconds, so aim for a real-time interval of around 30 seconds, that way a visitor knows not to expect updates too often but you also allow Cumulus to catch up to two updates within a minute (depending on when the first and second 48 second update came to Cumulus).

Bandwidth Considerations

The file Cumulus uploads is less than 1024 bytes in size, but for the calculation we will assume 1024 bytes, and typically this is (for non Fine Offset stations) updated every 5 to 15 seconds depending on your 'Realtime interval' setting above.

Most internet providers now place a limit on the amount of Bandwidth you can consume each month. Bandwidth is a figure representing the data you can upload and download. Doing such a regular upload will impact on your allowance.

During a month (31 days) the upload process will consume roughly 175 Mbytes of bandwidth -- this is a tiny consideration as usually bandwidth restrictions from your provider start in the Gigabytes (Gb) range, not Megabytes (Mb).

On top of your internet connection bandwidth restrictions, you may also have bandwidth caps on your web server so this same figure should be considered for your web server.

Recreating the file using web tags in C1

 : the following applies only to the legacy Cumulus.

Note: that the built-in realtime.txt always uses a 'dot' decimal character (and so is JavaScript/PHP 'safe'), any web tag version will use your host computers localisation for decimals. [There are some <#RCxxx> web tags available but they do not cover all the required values].

Recreating the file using web tags in MX

  The following applies only to MX.


Note: from b3075 onwards, all decimal tags now support the "rc=y" parameter - see below.

To ensure decimal compatibility across systems use a js construct such as:

 var rt = realtime.split(" ");
 var temp = +rt[2].replace(',','.');

when referring to decimal values in the constructed file.


For releases after b3074 web tags now accept the "rc=y" parameter, so if your locale uses a comma decimal you must add this parameter to all the web tags that produce decimal values

(this is one complete line, although it may appear on this page as two or more due to screen width restrictions)

<#date format=dd/mm/yy> <#timehhmmss> <#temp rc=y> <#hum> <#dew rc=y> <#wspeed rc=y> <#wlatest rc=y> <#bearing> <#rrate rc=y> <#rfall rc=y> <#press rc=y> <#currentwdir> <#beaufortnumber> <#windunit> <#tempunitnodeg> <#pressunit> <#rainunit> <#windrun rc=y> <#presstrendval rc=y> <#rmonth rc=y> <#ryear rc=y> <#rfallY rc=y> <#intemp rc=y> <#inhum> <#wchill rc=y> <#temptrend rc=y> <#tempTH rc=y> <#TtempTH> <#tempTL rc=y> <#TtempTL> <#windTM rc=y> <#TwindTM> <#wgustTM rc=y> <#TwgustTM> <#pressTH rc=y> <#TpressTH> <#pressTL rc=y> <#TpressTL> <#version> <#build> <#wgust rc=y> <#heatindex rc=y> <#humidex rc=y> <#UV rc=y> <#ET rc=y> <#SolarRad> <#avgbearing> <#rhour rc=y> <#forecastnumber> <#isdaylight> <#SensorContactLost> <#wdir> <#cloudbasevalue> <#cloudbaseunit> <#apptemp rc=y> <#SunshineHours rc=y> <#CurrentSolarMax> <#IsSunny> <#feelslike rc=y>

List of fields in the file

Remember that which fields you see, depends on which version of Cumulus you are running. The list below represents the final 1.9.4 version of Cumulus.

Field # Example Description Equivalent Webtags
1 19/08/09 Date as 2 figure day [separator] 2 figure month [separator] 2 figure year - the separator is that set in the windows system short date format (see setup) <#date>
2 16:03:45 time(always hh:mm:ss as per computer system) <#timehhmmss>
3 8.4 outside temperature <#temp>
4 84 relative humidity <#hum>
5 5.8 dewpoint <#dew>
6 24.2 wind speed (average) <#wspeed>
7 33.0 latest wind speed reading <#wlatest>
8 261 wind bearing (degrees) <#bearing>
9 0.0 current rain rate (per hour) <#rrate>
10 1.0 rain today <#rfall>
11 999.7 barometer (The sea level pressure) <#press>
12 W current wind direction (compass point) <#currentwdir>
13 6 wind speed as in 6 converted to force number (beaufort) <#beaufortnumber>
14 km/h wind units - m/s, mph, km/h, kts <#windunit>
15 C temperature units - degree C, degree F <#tempunitnodeg>
16 hPa pressure units - mb, hPa, in <#pressunit>
17 mm rain units - mm, in <#rainunit>
18 146.6 wind run (today) <#windrun>
19 +0.1 pressure trend value (The average rate of pressure change over the last three hours) <#presstrendval>
20 85.2 monthly rainfall <#rmonth>
21 588.4 yearly rainfall <#ryear>
22 11.6 yesterday's rainfall <#rfallY>
23 20.3 inside temperature <#intemp>
24 57 inside humidity <#inhum>
25 3.6 wind chill <#wchill>
26 -0.7 temperature trend value (The average rate of change in temperature over the last three hours) <#temptrend>
27 10.9 today's high temp <#tempTH>
28 12:00 time of today's high temp (hh:mm) <#TtempTH>
29 7.8 today's low temp <#tempTL>
30 14:41 time of today's low temp (hh:mm) <#TtempTL>
31 37.4 today's high wind speed (of average as per choice) <#windTM>
32 14:38 time of today's high wind speed (average) (hh:mm) <#TwindTM>
33 44.0 today's high wind gust <#wgustTM>
34 14:28 time of today's high wind gust (hh:mm) <#TwgustTM>
35 999.8 today's high pressure <#pressTH>
36 16:01 time of today's high pressure (hh:mm) <#TpressTH>
37 998.4 today's low pressure <#pressTL>
38 12:06 time of today's low pressure (hh:mm) <#TpressTL>
39 1.8.7 Cumulus Versions (the specific version in use) <#version>
40 819 Cumulus build number <#build>
41 36.0 10-minute high gust <#wgust>
42 10.3 Heat index <#heatindex>
43 10.5 Humidex <#humidex>
44 13 UV Index <#UV>
45 0.2 evapotranspiration today <#ET>
46 14 solar radiation W/m2 <#SolarRad>
47 260 10-minute average wind bearing (degrees) <#avgbearing>
48 2.3 rainfall last hour <#rhour>
49 3 The number of the current (Zambretti) forecast as per Strings.ini. <#forecastnumber>
50 1 Flag to indicate that the location of the station is currently in daylight (1 = yes, 0 = No) <#isdaylight>
51 1 If the station has lost contact with its remote sensors "Fine Offset only", a Flag number is given (1 = Yes, 0 = No) <#SensorContactLost>
52 NNW Average wind direction <#wdir>
53 2040 Cloud base <#cloudbasevalue>
54 ft Cloud base units <#cloudbaseunit>
55 12.3 Apparent temperature <#apptemp>
56 11.1 Sunshine hours so far today <#SunshineHours>
57 420.1 Current theoretical max solar radiation <#CurrentSolarMax>
58 1 Is it sunny? 1 if the sun is shining, otherwise 0 (above or below threshold) <#IsSunny>
59 13.6 Feels Like <#feelslike>

Example of the file

(this is one complete line, although it may appear on this page as two or more due to screen width restrictions)


18/10/08 16:03:45 8.4 84 5.8 24.2 33.0 261 0.0 1.0 999.7 W 6 mph C mb mm 146.6 +0.1 85.2 588.4 11.6 20.3 57 3.6 -0.7 10.9 12:00 7.8 14:41 37.4 14:38 44.0 14:28 999.8 16:01 998.4 12:06 1.8.2 448 36.0 10.3 10.5 13 0.2 14 260 2.3 3 1 1 NNW 2040 ft 12.3 11.1 420.1 1 13.6


Alternative content

Some users, and some third-party supplied web pages, require a different set of fields to those provided in the standard realtime.txt file. In these cases, an alternative file, sometimes called realtime-xT.txt is set up in the web folder, processed and uploaded using the Extra Files feature.

Different interval or different file name

Occasionally there is a requirement from some users to create a copy of the realtime.txt file and have it posted to a location at the normal Cumulus web update interval rather than the realtime interval, or perhaps because a filename other than realtime.txt is required. This can be achieved by creating a template file using the web tags below, and referencing this in the Cumulus Configuration|Internet|Files dialog. Ticking the 'Process?' checkbox, and supplying a remote filename will create this copy of the realtime.txt file.

(this is one complete line, although it may appear on this page as two or more due to screen width restrictions)

<#date format=dd/mm/yy> <#timehhmmss> <#temp> <#hum> <#dew> <#wspeed> <#wlatest> <#bearing> <#rrate> <#rfall> <#press> <#currentwdir> <#beaufortnumber> <#windunit> <#tempunitnodeg> <#pressunit> <#rainunit> <#windrun> <#presstrendval> <#rmonth> <#ryear> <#rfallY> <#intemp> <#inhum> <#wchill> <#temptrend> <#tempTH> <#TtempTH> <#tempTL> <#TtempTL> <#windTM> <#TwindTM> <#wgustTM> <#TwgustTM> <#pressTH> <#TpressTH> <#pressTL> <#TpressTL> <#version> <#build> <#wgust> <#heatindex> <#humidex> <#UV> <#ET> <#SolarRad> <#avgbearing> <#rhour> <#forecastnumber> <#isdaylight> <#SensorContactLost> <#wdir> <#cloudbasevalue> <#cloudbaseunit> <#apptemp> <#SunshineHours> <#CurrentSolarMax> <#IsSunny> <#feelslike>