Webtags (preserving history): Difference between revisions

From Cumulus Wiki
Jump to navigationJump to search
m
(44 intermediate revisions by the same user not shown)
Line 27: Line 27:
=What this article covers =
=What this article covers =


At the last count MX produces nine and a half million Web tags/tokens! But the file mentioned in previous section contains just 717 items. How come this discrepancy?
At the last count MX produces nine and a half million '''web tags'''! But the file mentioned in previous section contains just 717 items. How come this discrepancy?


Well each web tag has the general format <tt><#tag_name input_parameter output_parameter></tt> and it is these parameters that allow 717 items to produce milllion values!
Well each web tag has the general format <tt><#tag_name optional_input_parameter optional_output_parameter></tt> and it is adding these optional parameters that allow 717 tag names to define million values!


Because this article describes the parameters available, it covers more than just web tags, it lists the way that you can specify the naming format for the NOAA style reports that Cumulus produces as those names use a sub-set of the output parameters.
Because this article describes the parameters available, it covers more than just web tags, it lists the way that you can specify the naming format for the NOAA style reports that Cumulus produces as those names use a sub-set of the same output parameters as web tags use.


Although web tags apply to all flavours of Cumulus (Cumulus 1, 2, and 3 aka MX), as mentioned above, the range available depends on the exact version/build of Cumulus you are using. Because Cumulus 2 is no longer available, it has been ignored in the tables below. However, in the tables of web tags below, some sections are marked '''Cumulus 1 only''', or '''MX only''', and some individual tags have icon markings indicating aspects that apply only to a particular flavour.  It is important to stress that these "C1" markings are for the final version of Cumulus 1 (and so if you are running an earlier version, some may not be available to you). Similarly the "MX" markings apply to the latest version of MX (and if you are using an earlier build, some may not be available to you). In general, Cumulus 1 will silently ignore any web tags it does not recognise, but MX will raise an error for any web token it does not understand how to process. Both flavours may either ignore, give wrong values, or refuse to accept, incorrect input or incorrect output parameters, this varies by tag/token and has not been indicated in the tables below.
Although web tags apply to all flavours of Cumulus (Cumulus 1, 2, and 3 aka MX), as mentioned above, the range available depends on the exact version/build of Cumulus you are using. Because Cumulus 2 is no longer available, it has been ignored in the tables below. However, in the tables of web tags below, some sections are marked '''Cumulus 1 only''', or '''MX only''', and some individual tags have icon markings indicating aspects that apply only to a particular flavour.  It is important to stress that these "C1" markings are for the final version of Cumulus 1 (and so if you are running an earlier version, some may not be available to you). Similarly the "MX" markings apply to the latest version of MX (and if you are using an earlier build, some may not be available to you). In general, Cumulus 1 will silently ignore any web tags it does not recognise, but MX will raise an error for any web tag it does not understand how to process when the "token parser" runs. Both flavours may either ignore, give wrong values, or refuse to accept, incorrect input or incorrect output parameters, this varies by web tag and has not been indicated in the tables below.


= NOAA style Report Naming =
= NOAA style Report Naming =
Line 124: Line 124:
= Template Files =
= Template Files =


This is the name given by Steve Loft to any files that contain web tags/tokens.
This is the name given by Steve Loft to any files that contain web tags and need to be processed before they actually include values.  


When Cumulus processes these files it generates output files where the tags/tokens have been replaced by values.
When Cumulus processes these files it generates output files where the tags/tokens have been replaced by values. Consequently, a single template will actually generate a different file each time Cumulus processes that template because the part of the content that was web tags is now populated with text (values, times, dates, etc.) and as these values change that make the file different to the previous generated file.


For standard Cumulus, all the output files are web pages which it then uploads to your web site. There is more about processing of files on the [[Customised templates]] page, but think of a template as containing text that Cumulus copies from the template file to the web page it is constructing. The processing process is basically a parse, each time it finds what MX calls a token (a web tag complete with any parameters it needs) it looks up the value that it will use to replace that web tag before moving on through the text.  
For standard Cumulus, all the output files are web pages which it then uploads to your web site. There is more about processing of files on the [[Customised templates]] page, but think of a template as containing text that Cumulus copies from the template file to the web page it is constructing. The processing process is basically a parse, each time it finds what MX calls a token (a web tag complete with any parameters it needs) it looks up the value that it will use to replace that web tag before moving on through the text.  


The example web templates provided by Cumulus insert a "T" at the end of the intended web page name before the extension (.htm or .html), so that the template files and generated web pages cannot be confused.
The example web templates provided by Cumulus insert a "T" at the end of the intended web page name before the extension (.htm or .html), so that the template files and generated web pages cannot be confused. The generated file will often have "tmp" added to the end


When writing your own templates, some people will stick to this "T" notation, others will change the extension to "tmpl" or "cum" to indicate they are Cumulus templates. Cumulus does not care what extension is used for any local file specified in the MX '''Extra Web Files''' settings or Cumulus 1 '''Files''' tab settings.
When writing your own templates, some people will stick to this "T" notation, others will change the extension to "tmpl" or "cum" to indicate they are Cumulus templates. Cumulus does not care what extension is used for any local file specified in the MX '''Extra Web Files''' settings or Cumulus 1 '''Files''' tab settings.
For Cumulus 1 and MX, there are one template held within the program code, this is what produces the default [[Realtime.txt]]. You can define an alternative template with web tags and Cumulus can process that instead of its default template.
For MX only, there are other templates held within the program code (so you cannot edit them), these output in json format. Some are application program interface, and feed information to the admin interface, you can only view these by using the development interface in your browser that lets you see what has been loaded. The rest become the json files that are created in the '''web''' folder from where (like the web pages produced after processing the standard web templates), they can be uploaded to your web site.


= Web tags available in Cumulus =
= Web tags available in Cumulus =
Line 146: Line 150:
The [[BETA webtags|additional webtags]] page was created to hold web tags that were not yet available in any Cumulus 1 formal release, but were available in any Beta version that was under development. When development of Cumulus 1 ceased, that page held all web tokens specific to the MX Beta then under development. So at that time you had 2 articles to read to find which web tokens were available in MX Beta, and it was not clear in this article which web tags were only available in Cumulus 1!
The [[BETA webtags|additional webtags]] page was created to hold web tags that were not yet available in any Cumulus 1 formal release, but were available in any Beta version that was under development. When development of Cumulus 1 ceased, that page held all web tokens specific to the MX Beta then under development. So at that time you had 2 articles to read to find which web tokens were available in MX Beta, and it was not clear in this article which web tags were only available in Cumulus 1!


For a while, some web tokens alterations, for example [[BETA_webtags#Day.2FNight.2FSun.2FMoon|Moon web tags]] had parameters added to control the output from build 3047, continued to be added to the Beta article. You should keep an eye on that Beta article just in case as MX is being developed any more appear there, although at time of writing new MX web tokens are now being added to this article.
For a while, some web tag alterations, for example [[BETA_webtags#Day.2FNight.2FSun.2FMoon|Moon web tags]] had parameters added to control the output from build 3047, continued to be added to the Beta article. You should keep an eye on that Beta article just in case as MX is being developed any more appear there, although at time of writing new MX web tokens are now being added to this article.


When Mark Crossley brought MX out of Beta, all the web tokens that were on that page were moved into this article, and it was made clear which flavours each web tag was available in (excluding Cumulus 2).
When Mark Crossley brought MX out of Beta, all the web tags that were on that page were moved into this article, and it was made clear which flavours each web tag was available in (excluding Cumulus 2).


== Case sensitivity ==
== Case sensitivity ==
Line 174: Line 178:
=== Input modification Parameters ===
=== Input modification Parameters ===


Most web tags do not require any input parameters. However, those for [[#Recent_History|individual minutes in last week]] and for [[#Monthly_All_Time_Records|the highest and lowest values for a particular month of any year]] do need input parameters specifying how many minutes ago or which month respectively. See the respective sections for full details.
Most web tags do not require any input parameters. There are currently only two types of tags where an input parameter is mandatory:
 
*The recent history tags where a separate one exists for [[#Recent_History|individual minutes in last week]] need input parameter specifying how many minutes ago is required. There are 3 separate input parameters that can be used alone or in combination as explained in relevant section.
*The [[#Monthly_All_Time_Records]] where a separate one exists for each particular month (of any year) need input parameter specifying which month. Again see the respective section for full details of input parameter (which is 1 for January to 12 for December, but 0 is also available with a special meaning).


=== Output modification parameters ===
=== Output modification parameters ===
Line 206: Line 213:


[[File:Badge vMx.png]]
[[File:Badge vMx.png]]
Cumulus MX provides many, but not all web tags available in Cumulus 1. MX adds many more web tokens. The terminology change is just an extra complication! This badge is used when web tokens listed in one of the tables are only available in MX. See [[#GENERAL_TIP|tip]] at top of page for how to check which web tags/tokens are available in your build.  
Cumulus MX provides many, but not all web tags that were available in Cumulus 1. MX adds many more web tags, mostly in support of new weather stations or new sensors. This badge is used against web tags listed in one of the tables that are only available in MX. See [[#GENERAL_TIP|tip]] at top of page for how to check which web tags are available in your build.  


A combination of badges appears where certain aspects apply to Cumulus 1 or to MX. No information is given for Cumulus 2 as it is no longer available.
A combination of badges appears where certain aspects apply to Cumulus 1 or to MX. No information is given for Cumulus 2 as it is no longer available.


When MX is processing web tokens and finds one it cannot understand, a "*** web tag error - see MXdiags file ***" message will appear in the engine console, and the diagnostic file will include something like this:
When MX is processing web tags and finds one it cannot understand, a "*** web tag error - see MXdiags file ***" message will appear in the engine console, and the diagnostic file will include something like this, notice the actual web tag is labelled "token":
<pre>Web tag error
<pre>Web tag error
Exception: i=8998 len=106297
Exception: i=8998 len=106297
inputText.Length=106297
inputText.Length=106297
token=<#daylightlength format=H></pre>
token=<#daylightlength format=H></pre>
This particular error is that when you use a single output format character it does not have same meaning as when there are multiple characters, correct this particular token to:
This particular error is that when you use a single output format character it does not have same meaning as when there are multiple characters, correct this particular web tag to:
<pre><#daylightlength format=%H></pre>
<pre><#daylightlength format=%H></pre>


Line 222: Line 229:
=Output 'format' Parameter=
=Output 'format' Parameter=


=== Output Parameter Differences between Cumulus 1 and Cumulus MX (Cumulus 3) ===
The majority, but not all, of web tags either can use an output format parameter or, in a few cases, really do need an output format parameter.
 
== Output Parameter Differences between Cumulus 1 and Cumulus MX (Cumulus 3) ==
 
There are a number of differences between Cumulus 1 (C1) and Cumulus MX (MX). These nearly all involve times and dates, so the next section deals with this.
 
 
=== Output (format modifier) parameters for times and dates ===


There are a number of differences between Cumulus 1 (C1) and Cumulus MX (MX). C1 can work with times in 14.24 format using a full stop to separate the figures, MX must have ':' between hour and minute numbers.  
Time/Date format codes are used in two places:
# As part of report names for NOAA style reports (see [[Cumulus.ini#Section:_NOAA]])
# As part of web-tags that report either times or dates or both a date and a time
From version 1.9.1 most web-tags  that report any form of time or date will accept an optional 'format' parameter, e.g. (Cumulus 1 only): <#YearTempHT format=hh:nn>.


The characters used to represent year, month, day, hour, minute, second, microsecond, also differ between C1 and MX.
This allows you to override the default display format for that item, using the format specifiers in the table below.  


In Cumulus 1 we are able to use "m" or "M" for two different meanings (minutes or month) depending on context. Similarly, in MX the same character sometimes has two different meanings depending on context, but this applies to lots of characters and the context is whether the character is used on its own or with other characters. '''Sounds confusing?''' Well it is complicated.
Although, in theory, you can specify date formatting to times, and vice versa, this will not always yield a sensible result. It is best to look at the default format (in most, but not all, cases this reveals whether date and time information are both available):
*The time-stamps for today, and yesterday, only contain time information, so only time-based format instructions should be applied to them. You can use date format parameters on (for example) <#metdate>, and <#metdateyesterday> and that may give you your desired date information to augment the time-stamps.
*Almanac times such as sun-rise, moon-rise, are also only times, and time-based format instructions can generally be applied to them.  However, be aware these are calculated as at midnight GMT and for some of your calendar days, the times may be reported (in default format) as '--' if for example the moon does not rise that day.
 
C1 can work with times in 14.24 format using a full stop ('.') to separate the figures, MX must have colon (':') between hour and minute numbers. But with both flavours you can choose whether 12-hour clock is used with am/pm (in lowercase or capitals) or the 24-hour clock is used. You can choose to include/exclude leading zero for hours. You can only report the hour if you don't care about the minutes, or only report the minutes if you don't need the hour. In most cases you can add seconds to the output, and either milliseconds or microseconds. This does not imply that Cumulus calculates everything every microsecond, in fact many are only calculated once a minute, but the flexibility is there for time outputs.
 
Some web tags contain dates, or both dates and times, and for these there is flexibility (apart from those with fixed format, these might have ISO, or another format indicator, in their tag name) as to how the date is output. Thus you can choose to include or exclude the year; you can represent month in letters or numbers, and you can vary the order in which elements of the date are shown.
 
The characters used to represent year, month, day, hour, minute, second, microsecond, do differ between C1 and MX. In Cumulus 1 we are able to use "m" or "M" for two different meanings (minutes or month) depending on context. Similarly, in MX the same character sometimes has two different meanings depending on context, but this applies to lots of characters and the context is whether the character is used on its own or with other characters. '''Sounds confusing?''' Well it is complicated.


==== Explanation ====
==== Explanation ====


*Cumulus MX (when running on Windows) uses the '''.NET''' software.  
*Cumulus MX (when running on Windows) uses the '''.NET''' software.  
*If Cumulus MX is running on Linux or Mac OS X, or any other device that uses UNIX derived operating system, then it uses '''Mono''' software for same purposes. (MONO is a operating system independent version of .NET, although they are developed independently, they have common origins).
*If Cumulus MX is running on Linux or Mac OS X, or any other device that uses UNIX derived operating system, then it uses '''Mono''' software for same purposes. (MONO is a operating system independent version of .NET, although they are developed independently, they have common origins). Please see the [[Cumulus MX]] article for more details of their differences and what will change in November 2020.
*The date and time format characters in Mono (and .NET) software framework are not exactly the same as the '''Delphi''' software framework ones that Cumulus 1 uses.   
*The date and time format characters in Mono (and .NET) software framework are not exactly the same as the '''Delphi''' software framework ones that Cumulus 1 uses.   
*For Cumulus MX see [http://msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx this Microsoft site] for format selectors available.  
*For Cumulus MX see [http://msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx this Microsoft site] for format selectors available.  
*The differences come about because Delphi is case-insensitive, while .NET and MONO are case sensitive, so .NET (and MONO) can use upper and lower case for different items, where Delphi has to use different letters for each item.
*The differences come about because Delphi is case-insensitive, while .NET and MONO are case sensitive.  Consequently, .NET (and MONO) can use upper and lower case for different items, but Delphi has to use different letters, ignoring case, for each item.


==== When it causes problems ====
==== When it causes problems ====
Line 268: Line 293:
* You may need to use both single quotes and back slashes in some format specifiers, depending whether the characters you want to include can be interpreted as control characters (yes, backslash is also used to escape control characters, so backslash will NOT work for some characters such as those in "on" and "at" [\n will produce new line not the letter n, \t will produce a tab not the letter t]), consequently for some characters you must use the literal approach to include them in your format.
* You may need to use both single quotes and back slashes in some format specifiers, depending whether the characters you want to include can be interpreted as control characters (yes, backslash is also used to escape control characters, so backslash will NOT work for some characters such as those in "on" and "at" [\n will produce new line not the letter n, \t will produce a tab not the letter t]), consequently for some characters you must use the literal approach to include them in your format.


==== Using HTML tags within format parameters (available in MX only) ====
=== List of allowed modifiers for output format parameters ===
Note for Cumulus 1 - where lower (or upper, for easier comparison with MX) case shown, because Delphi is case insensitive, upper (or lower) case (in some cases, indicated by use of curved brackets) could be used instead (exceptions: a/p, ampm, am/pm, Am/Pm, AM/PM, A/P, AMPM etc display as input).


'''Example using a class to change the look of part of the output'''
[[File:Badge vMx.png]]Remember that most single character format specifiers have a different meaning to when the same letter appears in a multi-character format.


<pre><#TapptempH format="dd'&nbsp;'MMM'&nbsp;'yyyy'<span class=\'xx\'> at 'HH:mm'</span>'"></pre>
the output from this will look like ''04&nbsp;Dec&nbsp;2018<span class='xx'> at 10:12</span>''


'''Note where the quotes are, and where you need to use '\' escape characters'''.
==== Forum reference ====


'''Example using HTML tags'''
For official full details see [https://cumulus.hosiene.co.uk/viewtopic.php?f=39&t=17888 Cumulus MX forum], the following table is revised for simplicity. (I've given a different selection of combinations and included '%' where necessary to avoid single character versus custom complications).


<pre><#RecentTS d=2 format="h:mm'&nbsp;'tt'<small>on' d/M/yyyy'</small>'"></pre>
==== My Revised Table of Time and Date Output Modifiers ====
This puts the date in a smaller font than the time


=== Output (format modifier) parameters for decimal places ===
In some rows of this table, square brackets [] indicate optional items, they are included just to make it clearer how items can be combined in a single output parameter.
 
{| class="wikitable" border="1"
 
|-
Cumulus 1 allows use of <tt>dp=n</tt> modifier (where n represents desired number of decimal places for latitude and longitude e.g. <#latitude dp=5> gives "59.24250". This is also available in MX.
!style="width:150px" | {{Version badge 1}}Delphi Specifier for Cumulus 1.9.x
MX makes much more usage of these '''dp''' parameters. For example in the moon tags  <#MoonAge> gives "11" but <#MoonAge dp=3> gives "11.234"  
!style="width:150px" | [[File:Badge vMx.png]]Mono/.NET Specifier for Cumulus MX
 
!style="width:600px" | Displays
*<tt>dp=i</tt> is used for both Cumulus 1 and MX. The value '''i''' following the attribute '''dp''' is an integer, how many decimal places you want for the output you see. Only available for a limited range of web tags (latitude and longitude, plus in MX <#MoonPercent> and <#MoonPercentAbs>).
!style="width:600px" | Example
*<tt>tc=y</tt> is a new parameter only in MX, the attribute '''tc''' takes the value 'y' to remove decimal places by truncation instead of using <tt>dp=0</tt> which would round to nearest integer. e.g. <#MoonAge tc=y>. At present not available in any other web tags.
|-
 
|c
=== Output (format modifier) indicating remove commas ===
|G
 
|Displays the date using the format given by the Short Date format, followed by the time using the format given by the Long Time format. The time is not displayed in Cumulus 1 if the date-time value indicates midnight precisely.
"rc=y" is a '''new parameter for MX''', the attribute '''rc''' takes the value 'y' to replace any commas defined by the locale with full stops to separate integer and decimal parts of the output value. It was initially only implemented on a few new web tags (#MoonPercent, #MoonPercentAbs, #MoonAge) for MX versions up to and including 3.5.3. From version 3.6.6 only can all web tags that can output real numbers can now use alternative syntax of <tt><#tag_name rc=y></tt> to replace all commas in the output by a full stop (don't worry, MX does not use a comma for separating off thousands, so it is the decimal comma that becomes a decimal full stop like character when this remove comma specifier is used.
|'22/03/2019 09:47:25' produced by {{Version badge 1}}<#time format=c>[[File:Badge vMx.png]]<#time format=G>
 
|-
 
|d
Why would you want to remove decimal commas?  Well because the JavaScript language cannot understand decimal commas, and MX has several scripts written in this language, equally some third party alternative web pages rely on ajax to update them (and Ajax uses JavaScript).
|%d
 
|Displays the day as a number without a leading zero (1-31). [[File:Badge vMx.png]]Note that Cumulus MX requires a ' ' (space), '%' or other modifier to be included, as 'd' on its own returns full 'short date').
=== Output (format modifier) parameters for times and dates ===
|27 produced by {{Version badge 1}}<#metdate format="d">[[File:Badge vMx.png]]<#metdate format="%d">
 
|-
Time/Date format codes are used in two places:
|dd
# As part of report names for NOAA style reports (see [[Cumulus.ini#Section:_NOAA]])
|dd
# As part of web-tags that report either times or dates or both a date and a time
|Displays the day as a number with a leading zero (01-31).
From version 1.9.1 most web-tags  that report any form of time or date will accept an optional 'format' parameter, e.g. (Cumulus 1 only): <#YearTempHT format=hh:nn>.
|07 produced by <#metdate format="dd">
 
|-
This allows you to override the default display format for that item, using the format specifiers in the table below.
|ddd
 
|ddd
Although, in theory, you can specify date formatting to times, and vice versa, this will not always yield a sensible result. It is best to look at the default format (in most, but not all, cases this reveals whether date and time information are both available):
|Displays the day as an abbreviation (Sun-Sat) using the strings appropriate to the Locale.
*The time-stamps for today, and yesterday, only contain time information, so only time-based format instructions should be applied to them. You can use date format parameters on (for example) <#metdate>, and <#metdateyesterday> and that may give you your desired date information to augment the time-stamps.
|'Wed' produced by <#metdate format="ddd"> (English locale)
*Almanac times such as sun-rise, moon-rise, are also only times, and time-based format instructions can generally be applied to them.  However, be aware these are calculated as at midnight GMT and for some of your calendar days, the times may be reported (in default format) as '--' if for example the moon does not rise that day.
|-
 
|dddd
=== Additional text in output format partameters ===
|dddd
 
|Displays the day as a full name (Sunday-Saturday) using the strings appropriate to the Locale.
You should put anything that is additional, to the defined format modifier specification below, into single quotation marks to prevent it being interpreted as a date or time format modifier:
|'Friday' produced by <#metdate format="dddd"> (English locale)
 
#For example, the word "on" contains the character "n", which for Cumulus versions 1.9.1 to 1.9.4 will be interpreted as a time format modifier unless you put it into single quotation marks. Example of valid Cumulus 1 syntax: <#TtempH format="'at' hh: mm 'on' dd / mm / yyyy">.
#You can include HTML tags (but they cannot have any attributes because both single and double quote characters have defined meanings) and special characters as quoted text within the 'format' parameter.<br>  Example of valid syntax: <#TapptempH format="'at 'h:nn'&nbsp;'am/pm '&lt;small&gt;on' d/m/yyyy'&lt;/small&gt;'">.
 
{{Version badge 1}}'''Note for Cumulus 1 -  if your format has any spaces in it''', you must enclose the whole format parameter value in double quotes, for example (Cumulus 1.9.x): <#YearTempHT format="hh nn">. Consequently, you cannot include double quote characters in any other position (see [[Php_webtags#Web_tag_Complications| here for work-around]]).
 
[[File:Badge vMx.png]]Note for MX - you can use single quotation marks round spaces and text (e.g. ' on '), but you can also use '\' as escape character (e.g. for 'on' use '''\o\n'''). However for 'at' the only alternative is '''\a't''''  because the character t has another meaning and escape followed by a t becomes a tab!
 
=== List of allowed modifiers for output format parameters ===
Note for Cumulus 1 - where lower (or upper, for easier comparison with MX) case shown, because Delphi is case insensitive, upper (or lower) case (in some cases, indicated by use of curved brackets) could be used instead (exceptions: a/p, ampm, am/pm, Am/Pm, AM/PM, A/P, AMPM etc display as input).
 
[[File:Badge vMx.png]]Remember that most single character format specifiers have a different meaning to when the same letter appears in a multi-character format.
 
 
==== Forum reference ====
 
For official full details see [https://cumulus.hosiene.co.uk/viewtopic.php?f=39&t=17888 Cumulus MX forum], the following table is revised for simplicity. (I've given a different selection of combinations and included '%' where necessary to avoid single character versus custom complications).
 
==== My Revised Table of Time and Date Output Modifiers ====
 
In some rows of this table, square brackets [] indicate optional items, they are included just to make it clearer how items can be combined in a single output parameter.
{| class="wikitable" border="1"
|-
|-
!style="width:150px" | {{Version badge 1}}Delphi Specifier for Cumulus 1.9.x
|ddddd
!style="width:150px" | [[File:Badge vMx.png]]Mono/.NET Specifier for Cumulus MX
|d (as single character format)
!style="width:600px" | Displays
|Displays the date using the format given by the Short Date format.
!style="width:600px" | Example
|e.g. '22/03/2019' (British Locale)
|-
|c
|G
|Displays the date using the format given by the Short Date format, followed by the time using the format given by the Long Time format. The time is not displayed in Cumulus 1 if the date-time value indicates midnight precisely.
|'22/03/2019 09:47:25' produced by {{Version badge 1}}<#time format=c>[[File:Badge vMx.png]]<#time format=G>
|-
|d
|%d
|Displays the day as a number without a leading zero (1-31). [[File:Badge vMx.png]]Note that Cumulus MX requires a ' ' (space), '%' or other modifier to be included, as 'd' on its own returns full 'short date').
|27 produced by {{Version badge 1}}<#metdate format="d">[[File:Badge vMx.png]]<#metdate format="%d">
|-
|dd
|dd
|Displays the day as a number with a leading zero (01-31).
|07 produced by <#metdate format="dd">
|-
|ddd
|ddd
|Displays the day as an abbreviation (Sun-Sat) using the strings appropriate to the Locale.
|'Wed' produced by <#metdate format="ddd"> (English locale)
|-
|dddd
|dddd
|Displays the day as a full name (Sunday-Saturday) using the strings appropriate to the Locale.
|'Friday' produced by <#metdate format="dddd"> (English locale)
|-
|ddddd
|d (as single character format)
|Displays the date using the format given by the Short Date format.
|e.g. '22/03/2019' (British Locale)
|-
|-
|dddddd
|dddddd
Line 528: Line 499:
|'xy' or ''\x\y''
|'xy' or ''\x\y''
|Characters enclosed in single quotation marks are displayed as such, and do not affect formatting. In MX each character to be displayed as it was typed can be prefixed by a backslash.
|Characters enclosed in single quotation marks are displayed as such, and do not affect formatting. In MX each character to be displayed as it was typed can be prefixed by a backslash.
|Hypens are added in this PHP language example  '<#LastDataReadT format=yyyy>'.'-'.'<#LastDataReadT format=MM>'.'-'.'<#LastDataReadT format="dd">'
|Hyphens are added in this PHP language example  '<#LastDataReadT format=yyyy>'.'-'.'<#LastDataReadT format=MM>'.'-'.'<#LastDataReadT format="dd">'
|}
|}


=The Web Tags for Cumulus =
==== Using HTML tags within format parameters (available in MX only) ====
 
'''Example using a class to change the look of part of the output'''
 
<pre><#TapptempH format="dd'&nbsp;'MMM'&nbsp;'yyyy'<span class=\'xx\'> at 'HH:mm'</span>'"></pre>
the output from this will look like ''04&nbsp;Dec&nbsp;2018<span class='xx'> at 10:12</span>''
 
'''Note where the quotes are, and where you need to use '\' escape characters'''.


These are available in both Cumulus 1 and MX unless indicated by a version 1 or MX badge.
'''Example using HTML tags'''


Here follow tables indicating what web tags/tokens can be used, tables group the tags/tokens by the basic purpose of the tags listed.
<pre><#RecentTS d=2 format="h:mm'&nbsp;'tt'<small>on' d/M/yyyy'</small>'"></pre>
This puts the date in a smaller font than the time


=== Output (format modifier) parameters for decimal places ===


===System===


Special tags returning information about the Windows device hosting Cumulus 1. ''If you are running MX, then most tags do not work.
Cumulus 1 allows use of <tt>dp=n</tt> modifier (where n represents desired number of decimal places for latitude and longitude e.g. <#latitude dp=5> gives "59.24250". This is also available in MX.
''
MX makes much more usage of these '''dp''' parameters. For example in the moon tags <#MoonAge> gives "11" but <#MoonAge dp=3> gives "11.234"
 
*<tt>dp=i</tt> is used for both Cumulus 1 and MX. The value '''i''' following the attribute '''dp''' is an integer, how many decimal places you want for the output you see. Only available for a limited range of web tags (latitude and longitude, plus in MX <#MoonPercent> and <#MoonPercentAbs>).
*<tt>tc=y</tt> is a new parameter only in MX, the attribute '''tc''' takes the value 'y' to remove decimal places by truncation instead of using <tt>dp=0</tt> which would round to nearest integer. e.g. <#MoonAge tc=y>. At present not available in any other web tags.


{| class="wikitable" border="1"
=== Output (format modifier) indicating remove commas ===
|-
 
!style="width:150px" |Web tag_name
"rc=y" is a '''new parameter for MX''', the attribute '''rc''' takes the value 'y' to replace any commas defined by the locale with full stops to separate integer and decimal parts of the output value. It was initially only implemented on a few new web tags (#MoonPercent, #MoonPercentAbs, #MoonAge) for MX versions up to and including 3.5.3. From version 3.6.6 only can all web tags that can output real numbers can now use alternative syntax of <tt><#tag_name rc=y></tt> to replace all commas in the output by a full stop (don't worry, MX does not use a comma for separating off thousands, so it is the decimal comma that becomes a decimal full stop like character when this remove comma specifier is used.
!style="width:600px" |Function
 
|-
 
|<#OsVersion>
Why would you want to remove decimal commas?  Well because the JavaScript language cannot understand decimal commas, and MX has several scripts written in this language, equally some third party alternative web pages rely on ajax to update them (and Ajax uses JavaScript).
|OS version, e.g. "Windows 7 x64 build 7600"
 
|-
== Additional text in output format parameters ==
|<#OsLanguage>
 
|OS language, e.g. "English"
You should put anything that is additional, to the defined format modifier specification below, into single quotation marks to prevent it being interpreted as a date or time format modifier:
 
#For example, the word "on" contains the character "n", which for Cumulus versions 1.9.1 to 1.9.4 will be interpreted as a time format modifier unless you put it into single quotation marks. Example of valid Cumulus 1 syntax: <#TtempH format="'at' hh: mm 'on' dd / mm / yyyy">.
#You can include HTML tags (but they cannot have any attributes because both single and double quote characters have defined meanings) and special characters as quoted text within the 'format' parameter.<br>  Example of valid syntax: <#TapptempH format="'at 'h:nn'&nbsp;'am/pm '&lt;small&gt;on' d/m/yyyy'&lt;/small&gt;'">.
 
{{Version badge 1}}'''Note for Cumulus 1 -  if your format has any spaces in it''', you must enclose the whole format parameter value in double quotes, for example (Cumulus 1.9.x): <#YearTempHT format="hh nn">. Consequently, you cannot include double quote characters in any other position (see [[Php_webtags#Web_tag_Complications| here for work-around]]).
 
[[File:Badge vMx.png]]Note for MX - you can use single quotation marks round spaces and text (e.g. ' on '), but you can also use '\' as escape character (e.g. for 'on' use '''\o\n''').  However for 'at' the only alternative is '''\a't''''  because the character t has another meaning and escape followed by a "t" i.e. "\t" becomes a tab!
 
 
 
=The Web Tags for Cumulus =
 
These are available in both Cumulus 1 and MX unless indicated by a version 1 or MX badge.
 
Here follow tables indicating what web tags/tokens can be used, tables group the web tags available by the basic purpose of the tags listed.
 
== System ==
 
Special tags returning information about the Windows device hosting Cumulus 1. ''If you are running MX, then most tags do not work.
''
 
{| class="wikitable" border="1"
|-
!style="width:150px" |Web tag_name
!style="width:600px" |Function
|-
|<#OsVersion>
|OS version, e.g. "Windows 7 x64 build 7600"
|-
|<#OsLanguage>
|OS language, e.g. "English"
|-
|<#SystemUpTime>
|{{Version badge 1}}How long the system has been up, e.g. "8 hours 21 minutes" (not available on MX)
|-
|<#ProgramUpTime>
|How long Cumulus has been running, e.g. "7 hours 55 minutes"
|-
|<#CpuName>
|{{Version badge 1}}CPU type, e.g. "Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz" (not available on MX)
|-
|<#CpuCount>
|Number of processors, e.g. "4"
|-
|<#MemoryStatus>
|{{Version badge 1}}Free and total system RAM, e.g. "4619/8191 MB (free/total)" (not available on MX)
|-
|<#DisplayMode>
|{{Version badge 1}}Screen display mode, e.g. "1680x1050, 32 bit" (not available on MX)
|-
|<#AllocatedMemory>
|{{Version badge 1}}Amount of memory allocated to Cumulus, e.g. "18.76 MB" (not available on MX)
|-
|<#DiskSize>
|{{Version badge 1}}Size of disk on which Cumulus is running, e.g. "931.51 GB" (not available on MX)
|-
|<#DiskFree>
|{{Version badge 1}}Free space on disk on which Cumulus is running, e.g. "515.36 GB" (not available on MX)
|}
 
== Miscellaneous ==
 
All tags are available in all flavours, as far as I know, although their output might vary, and which input/output parameters they permit might vary between Cumulus 1 and MX.
 
{| class="wikitable" border="1"
|-
!style="width:150px" |Web tag_name
!style="width:900px" | Function
|-
|<#LatestError>
|Displays the last error from the Cumulus 1 error log. (The value is cleared when you click the error light in Cumulus 1).<br />
Note: This tag displays ''all'' errors, even if they do not cause the error light to flash in Cumulus 1. Although this tag and the next 3 are in MX, none of them are actually used (as at April 2020).
|-
|<#LatestErrorDate>
|The date of the latest error logged to the error log window, using the system short date format. Gives dashes when latest error is reset
|-
|<#LatestErrorTime>
|The time of the latest error logged to the error log window, using the system short time format. Gives dashes when latest error is reset
|-
|-
|<#SystemUpTime>
|<#ErrorLight>
|{{Version badge 1}}How long the system has been up, e.g. "8 hours 21 minutes" (not available on MX)
|1 if the 'error' light is flashing, 0 if not
|-
|-
|<#ProgramUpTime>
|<#version>
|How long Cumulus has been running, e.g. "7 hours 55 minutes"
|The version of Cumulus in use e.g. '1.9.4' or '3.4.1'
|-
|-
|<#CpuName>
|<#build>
|{{Version badge 1}}CPU type, e.g. "Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz" (not available on MX)
|The build of Cumulus in use e.g. '10992' for latest Cumulus 1 patch (Cumulus MX is under development so new builds are released frequently)
 
|-
|-
|<#CpuCount>
|<#realtimeinterval>
|Number of processors, e.g. "4"
|The realtime update interval in seconds (integer)
|-
|-
|<#MemoryStatus>
|<#interval>
|{{Version badge 1}}Free and total system RAM, e.g. "4619/8191 MB (free/total)" (not available on MX)
|The web site update interval in minutes (integer)
|-
|-
|<#DisplayMode>
|<#rollovertime>
|{{Version badge 1}}Screen display mode, e.g. "1680x1050, 32 bit" (not available on MX)
|The time that the logs rollover to the next day: 'Midnight', '9 am' or '10 am'
 
This is the end of the meteorological day, so if during Daylight Saving Time it is "10 am", then on the day DST ends it will return to "9 am" ensuring every meteorological day is exactly 24 hours long. If the time is "Midnight" or during DST it is "9 am", then days will be 23 or 25 hours long just on day clocks change, 24 hours otherwise.
|-
|-
|<#AllocatedMemory>
|<#update>
|{{Version badge 1}}Amount of memory allocated to Cumulus, e.g. "18.76 MB" (not available on MX)
|The date and time of the last web site update
|-
|<#LastDataReadT>
|The date/time data was last read from the station
|-
|-
|<#DiskSize>
|<#stationtype>
|{{Version badge 1}}Size of disk on which Cumulus is running, e.g. "931.51 GB" (not available on MX)
|The weather station [https://cumuluswiki.org/a/Cumulus.ini#Section:_Station model] description (you choose what text appears for this on 'Display' settings screen within Configuration menu - the field is at the bottom left of that screen).
|-
|-
|<#DiskFree>
|<#latitude>
|{{Version badge 1}}Free space on disk on which Cumulus is running, e.g. "515.36 GB" (not available on MX)
|The station [http://en.wikipedia.org/wiki/Latitude latitude] (as you entered during setup).
|}
Supports an optional 'dp' parameter, if supplied, instead of the usual web-encoded text format with degrees/minutes/seconds, the result is in decimal degrees to the specified number of decimal places. E.g<br />
<#latitude> gives "N&nbsp;59& deg;&amp;nbsp;14&amp;#39;&amp;nbsp;33&amp;quot;" for N 59 14 33<br />
<#latitude dp=5> gives "59.24250"


==Miscellaneous==
If the "dp" parameter is supplied, then supplying "rc=y" in addition will cause any decimal comma to be converted to a decimal point.
 
All tags are available in all flavours, as far as I know, although their output might vary, and which input/output parameters they permit might vary between Cumulus 1 and MX.
 
{| class="wikitable" border="1"
|-
|-
!style="width:150px" |Web tag_name
|<#longitude>
!style="width:900px" | Function
|The station [http://en.wikipedia.org/wiki/Longitude longitude]  (as you entered during setup). Supports an optional 'dp' and 'rc' parameters as per the latitude tag.
|-
|-
|<#LatestError>
|<#altitude>
|Displays the last error from the Cumulus 1 error log. (The value is cleared when you click the error light in Cumulus 1).<br />
|The station [http://en.wikipedia.org/wiki/Altitude altitude] value (webtag outputs web encoded format containing figure, '&amp;nbsp;' and units) in either feet or metres just as you entered during setup (so it is more complex to extract number for script arithmetric); e.g. '123&amp;nbsp;m'
Note: This tag displays ''all'' errors, even if they do not cause the error light to flash in Cumulus 1. Although this tag and the next 3 are in MX, none of them are actually used (as at April 2020).
|-
|-
|<#LatestErrorDate>
|<#location>
|The date of the latest error logged to the error log window, using the system short date format. Gives dashes when latest error is reset
|The station location (as you entered during setup)
|-
|-
|<#LatestErrorTime>
|<#longlocation>
|The time of the latest error logged to the error log window, using the system short time format. Gives dashes when latest error is reset
|Longer description of the station location (as you entered during setup)
|-
|-
|<#ErrorLight>
|<#forum>
|1 if the 'error' light is flashing, 0 if not
|URL of the forum (as you entered during setup)
For Cumulus 1, this defaults to a Sandaysoft URL that is no longer available, for MX this defaults to the current support forum hosted by "Freddie" site
|-
|-
|<#version>
|<#webcam>
|The version of Cumulus in use e.g. '1.9.4' or '3.4.1'
|URL of the webcam (as you entered during setup). Default is blank.
|-
|-
|<#build>
|<#graphperiod>
|The build of Cumulus in use e.g. '10992' for latest Cumulus 1 patch (Cumulus MX is under development so new builds are released frequently)
|The number of hours displayed by the graphs, as set using '''Configuration''' menu, ''Display'' settings screen 'Detailed Chart Period'
 
|-
|-
|<#realtimeinterval>
|<#dailygraphperiod>
|The realtime update interval in seconds (integer)
|The number of days displayed by the graphs, as set using '''Configuration''' menu, ''Display'' settings screen 'Daily Chart Period' (available from build 1098)
|-
|-
|<#interval>
|<#LatestNOAAMonthlyReport>
|The web site update interval in minutes (integer)
|Gives file name of latest auto-saved NOAA monthly report
|-
|-
|<#rollovertime>
|<#LatestNOAAYearlyReport>
|The time that the logs rollover to the next day: 'Midnight', '9 am' or '10 am'
|Gives file name of latest auto-saved NOAA yearly report
|}
 
==Units==


This is the end of the meteorological day, so if during Daylight Saving Time it is "10 am", then on the day DST ends it will return to "9 am" ensuring every meteorological day is exactly 24 hours long. If the time is "Midnight" or during DST it is "9 am", then days will be 23 or 25 hours long just on day clocks change, 24 hours otherwise.
Apply to Cumulus 1 and MX, no optional input nor output parameters.
{| class="wikitable" border="1"
|-
|-
|<#update>
!style="width:150px" | Web tag_name
|The date and time of the last web site update
!style="width:600px" | Function
|-
|-
|<#LastDataReadT>
|<#tempunit>
|The date/time data was last read from the station
|Unit of temperature being used (Set in Cumulus as [http://en.wikipedia.org/wiki/Centigrade Celsius] or [http://en.wikipedia.org/wiki/Fahrenheit Fahrenheit]) values "&amp;deg;C" or "&amp;deg;F"
|-
|-
|<#stationtype>
|<#tempunitnodeg>
|The weather station [https://cumuluswiki.org/a/Cumulus.ini#Section:_Station model] description (you choose what text appears for this on 'Display' settings screen within Configuration menu - the field is at the bottom left of that screen).
|The temperature units being used, without a degree symbol, i.e. "F" or "C"
|-
|-
|<#latitude>
|<#pressunit>
|The station [http://en.wikipedia.org/wiki/Latitude latitude] (as you entered during setup).
|Unit of measure for pressure. Possible values: "mb", "hPa", "in"
Supports an optional 'dp' parameter, if supplied, instead of the usual web-encoded text format with degrees/minutes/seconds, the result is in decimal degrees to the specified number of decimal places. E.g<br />
<#latitude> gives "N&nbsp;59& deg;&amp;nbsp;14&amp;#39;&amp;nbsp;33&amp;quot;" for N 59 14 33<br />
<#latitude dp=5> gives "59.24250"
 
If the "dp" parameter is supplied, then supplying "rc=y" in addition will cause any decimal comma to be converted to a decimal point.
|-
|-
|<#longitude>
|<#rainunit>
|The station [http://en.wikipedia.org/wiki/Longitude longitude]  (as you entered during setup). Supports an optional 'dp' and 'rc' parameters as per the latitude tag.
|Unit of measure for rain fall. Possible values: "mm" or "inches"
|-
|-
|<#altitude>
|<#windunit>
|The station [http://en.wikipedia.org/wiki/Altitude altitude] value (webtag outputs web encoded format containing figure, '&amp;nbsp;' and units) in either feet or metres just as you entered during setup (so it is more complex to extract number for script arithmetric); e.g. '123&amp;nbsp;m'
|Unit of measure for wind speed. Possible values: "m/s", "mph", "km/h", "kts"
|-
|-
|<#location>
|<#windrununit>
|The station location (as you entered during setup)
|Unit of measure for wind run (distance). Possible values: "km", "miles", "km", "nm" (for wind speeds in m/s, mph, km/h, kts)
|-
|-
|<#longlocation>
|<#cloudbaseunit>
|Longer description of the station location (as you entered during setup)
|The units used for cloudbase value. Possible values:  "ft" or "m"
|}
 
==Date & Time==
Both Cumulus 1 and MX support all of these, most of these web tags can be used with output parameters.
{| class="wikitable" border="1"
|-
|-
|<#forum>
!style="width:150px" |Web tag_name
|URL of the forum (as you entered during setup)
!style="width:600px" | Function
For Cumulus 1, this defaults to a Sandaysoft URL that is no longer available, for MX this defaults to the current support forum hosted by "Freddie" site
|-
|-
|<#webcam>
|<#date>
|URL of the webcam (as you entered during setup). Default is blank.
|The current date
|-
|-
|<#graphperiod>
|<#time>
|The number of hours displayed by the graphs, as set using '''Configuration''' menu, ''Display'' settings screen 'Detailed Chart Period'
|The current time and date. Example result: 18:30 on 30 December 2009.  If you simply wish the time, use next tag (below)
|-
|-
|<#dailygraphperiod>
|<#timehhmmss>
|The number of days displayed by the graphs, as set using '''Configuration''' menu, ''Display'' settings screen 'Daily Chart Period' (available from build 1098)
|The current time. Example format: 18:30:27
|-
|-
|<#LatestNOAAMonthlyReport>
|<#timeUTC>
|Gives file name of latest auto-saved NOAA monthly report
|The current UTC date/time rather than local date/time
|-
|-
|<#LatestNOAAYearlyReport>
|<#minute>
|Gives file name of latest auto-saved NOAA yearly report
|The current time, just the minutes. Example format: 07
|}
 
==Units==
 
Apply to Cumulus 1 and MX, no optional input nor output parameters.
{| class="wikitable" border="1"
|-
|-
!style="width:150px" | Web tag_name
|<#hour>
!style="width:600px" | Function
|The current time, just the hour. Example format: 07
|-
|-
|<#tempunit>
|<#day>
|Unit of temperature being used (Set in Cumulus as [http://en.wikipedia.org/wiki/Centigrade Celsius] or [http://en.wikipedia.org/wiki/Fahrenheit Fahrenheit]) values "&amp;deg;C" or "&amp;deg;F"
| The current day as a 2-digit number. Example format: 07 
|-
|-
|<#tempunitnodeg>
|<#dayname>
|The temperature units being used, without a degree symbol, i.e. "F" or "C"
| The current day as a word.  For example, Monday
|-
|<#shortdayname>
| The current day as a shortened word. Example format: Mon
|-
|-
|<#pressunit>
|<#month>
|Unit of measure for pressure. Possible values: "mb", "hPa", "in"
|The current month as a 2-digit number. Example format: 07
|-
|<#monthname>
|The current month as a word. Example format: July
|-
|-
|<#rainunit>
|<#shortmonthname>
|Unit of measure for rain fall. Possible values: "mm" or "inches"
|The current month as a shortened word. Example format: Jul
|-
|-
|<#windunit>
|<#year>
|Unit of measure for wind speed. Possible values: "m/s", "mph", "km/h", "kts"
|The current year as a 4-digit number. Example format: 2009
|-
|-
|<#windrununit>
|<#shortyear>
|Unit of measure for wind run (distance). Possible values: "km", "miles", "km", "nm" (for wind speeds in m/s, mph, km/h, kts)
|The current year as a 2-digit number. Example format: 09
|-
|-
|<#cloudbaseunit>
|<#metdate>
|The units used for cloudbase value. Possible values: "ft" or "m"
|The current meteorological date. After rollover time on current calendar date, this date will be the same as the current date. If using a 9am/10am rollover, then between midnight and 9am/10am the <#metdate> will be the previous calendar day.   
|}


==Date & Time==
Can be used with relevant format parameters to indicate current meteorological day on todayT.htm template page, meteorological month on thismonthT.htm template page, or meteorological year on thisyearT.htm template page
Both Cumulus 1 and MX support all of these, most of these web tags can be used with output parameters.
{| class="wikitable" border="1"
|-
|-
!style="width:150px" |Web tag_name
|<#metdateyesterday>
!style="width:600px" | Function
|The previous meteorological date. If using a 9am/10am rollover, then between midnight and 9am/10am the <#metdateyesterday> will be the calendar day before that returned by <#yesterday>, otherwise both return same. 
 
Can be used with relevant format parameters to indicate correct day on yesterdayT.htm template page, and can be used to return latest day stored on [[dayfile.txt]] and NOAA report for latest month.
|-
|-
|<#date>
|<#yesterday>
|The current date
|Yesterdays date
|-
|-
|<#time>
|<#rollovertime>
|The current time and date. Example result: 18:30 on 30 December 2009.  If you simply wish the time, use next tag (below)
|The time that the logs rollover to the next day: 'Midnight', '9 am' or '10 am'
|-
|-
|<#timehhmmss>
|<#update>
|The current time. Example format: 18:30:27
|The date and time of the last web site update
|-
|-
|<#timeUTC>
|<#LastDataReadT>
|The current UTC date/time rather than local date/time
|The date/time data was last read from the station
|-
|-
|<#minute>
|<#DaysSince30Dec1899>  
|The current time, just the minutes. Example format: 07
|Day count (gives whole and fractional part) Example: 41250.6523310301
|-
|-
|<#hour>
|<#recordsbegandate>
|The current time, just the hour. Example format: 07
|Date when records began (appears twice on "recordsT.htm" provided, and used to calculate next tag, but ignored for all other Cumulus processing)
|-
|-
|<#day>
|<#DaysSinceRecordsBegan>
| The current day as a 2-digit number. Example format: 07 
|Day count since Cumulus records started
|}
 
==Current Conditions==
 
The web tags/token shown here are mainly determined by which appear on "Now" page (index.htm).
Rainfall this month and this year are included here for consistency with supplied web templates (indexT.htm, thismonthT.htm, and thisyearT.htm) and with the dashboard 'Now' part of the Cumulus MX user; although you might expect to find them listed in tables for this month and this year, those web pages do not show these derivatives.
Those listed here cover both measurements obtained from a weather station (like air temperature, wind speed and direction, humidity and barometric pressure); and all the derived values (like humidex, feels like, apparent temperature, wind chill and heat index).
 
Note however, that the derived values calculated for Cumulus 1 and for MX may not agree, see derived value section within Recent History tags section for examples.
{| class="wikitable" border="1"
|-
|-
|<#dayname>
!style="width:150px" | Web tag_name
| The current day as a word.  For example, Monday
!style="width:600px" | Function
|-
|-
|<#shortdayname>
|colspan="2" style="background:lightgray;"|Temperature
| The current day as a shortened word. Example format: Mon
|-
|-
|<#month>
|<#temp>
|The current month as a 2-digit number. Example format: 07
|The outside (air) temperature
|-
|<#monthname>
|The current month as a word. Example format: July
|-
|-
|<#shortmonthname>
|<#intemp>
|The current month as a shortened word. Example format: Jul
|The inside temperature
|-
|-
|<#year>
|<#temptrend>
|The current year as a 4-digit number. Example format: 2009
|The average rate of change in temperature over the last three hours. Trend = (temp_now - temp_3hrs_ago) / 3
|-
|-
|<#shortyear>
|<#temptrendtext>
|The current year as a 2-digit number. Example format: 09
|Temperature change over the last three hours - Rising/Falling/Steady (values can be set in strings.ini)
|-
|-
|<#metdate>
|<#temptrendenglish>
|The current meteorological date. After rollover time on current calendar date, this date will be the same as the current date. If using a 9am/10am rollover, then between midnight and 9am/10am the <#metdate> will be the previous calendar day. 
|Temperature change over the last three hours - Rising/Falling/Steady (for use by [[Webtags_as_boolean_operators_in_HTML|HTML]], [[Editing_content_of_a_webpage_using_either_HTML_or_Script|javascript]] etc, values can't be changed)
 
Can be used with relevant format parameters to indicate current meteorological day on todayT.htm template page, meteorological month on thismonthT.htm template page, or meteorological year on thisyearT.htm template page
|-
|-
|<#metdateyesterday>
|<#TempChangeLastHour>
|The previous meteorological date. If using a 9am/10am rollover, then between midnight and 9am/10am the <#metdateyesterday> will be the calendar day before that returned by <#yesterday>, otherwise both return same. 
|The change in temperature over the last hour
 
Can be used with relevant format parameters to indicate correct day on yesterdayT.htm template page, and can be used to return latest day stored on [[dayfile.txt]] and NOAA report for latest month.
|-
|-
|<#yesterday>
|<#heatindex>
|Yesterdays date
|Current [[heat index]].  The referenced page in weather terminology section of this Wiki explains it.
|-
|-
|<#rollovertime>
|<#humidex>
|The time that the logs rollover to the next day: 'Midnight', '9 am' or '10 am'
|Current [http://en.wikipedia.org/wiki/Humidex Humidex]
|-
|-
|<#update>
|<#apptemp>
|The date and time of the last web site update
|The [[Apparent_temperature|apparent]] temperature.  The referenced page in weather terminology section of this Wiki explains it. The formula used is that defined by BOM. Although at temperatures above 20°C (68°F) Feels like reports an "apparent temperature" it uses a different formula.
|-
|-
|<#LastDataReadT>
|<#wchill>
|The date/time data was last read from the station
|The current [[wind chill]] temperature.  The referenced page in weather terminology section of this Wiki explains it. For temperatures below 10°C (50°F) Feels like reports the same value.
|-
|-
|<#DaysSince30Dec1899>  
|<#feelslike>
|Day count (gives whole and fractional part) Example: 41250.6523310301
|Not available in Cumulus 1. Not available in all MX versions. Please see sub-section below this table regarding availability by MX versions if you are using a MX version earlier than 3.6.10.
 
The current [[Feels_Like|Feels Like]] temperature.  The referenced page in weather terminology section of this Wiki explains it.
|-
|-
|<#recordsbegandate>
|<#IsFreezing>
|Date when records began (appears twice on "recordsT.htm" provided, and used to calculate next tag, but ignored for all other Cumulus processing)
|If outside temperature is at or below 0°C/32°F. 0=Above freezing, 1=Below freezing
|-
|-
|<#DaysSinceRecordsBegan>
|<#chillhours>
|Day count since Cumulus records started
|The number of [[Heat/cold_degree_days_and_Chill_hours#Chill_Hours_and.2For_Air_Frost|'chill hours']] so far this season (threshold temperature and start date are configurable).
|}
 
==Current Conditions==
 
The web tags/token shown here are mainly determined by which appear on "Now" page (index.htm).
Rainfall this month and this year are included here for consistency with supplied web templates (indexT.htm, thismonthT.htm, and thisyearT.htm) and with the dashboard 'Now' part of the Cumulus MX user; although you might expect to find them listed in tables for this month and this year, those web pages do not show these derivatives.
Those listed here cover both measurements obtained from a weather station (like air temperature, wind speed and direction, humidity and barometric pressure); and all the derived values (like humidex, feels like, apparent temperature, wind chill and heat index).
 
Note however, that the derived values calculated for Cumulus 1 and for MX may not agree, see derived value section within Recent History tags section for examples.
{| class="wikitable" border="1"
|-
|-
!style="width:150px" | Web tag_name
|colspan="2" style="background:lightgray;"|Humidity
!style="width:600px" | Function
|-
|-
|colspan="2" style="background:lightgray;"|Temperature
|<#hum>
|The outside [http://en.wikipedia.org/wiki/Humidity humidity]
|-
|-
|<#temp>
|<#inhum>
|The outside (air) temperature
|The inside humidity
|-
|-
|<#intemp>
|<#dew>
|The inside temperature
|The current dew point
|-
|-
|<#temptrend>
|<#wetbulb>
|The average rate of change in temperature over the last three hours. Trend = (temp_now - temp_3hrs_ago) / 3
|Estimated [http://en.wikipedia.org/wiki/Wet_bulb wet bulb] temperature, can be seen if hover over 'Dewpoint' on Cumulus 1 main screen
|-
|-
|<#temptrendtext>
|colspan="2" style="background:lightgray;"|Rainfall
|Temperature change over the last three hours - Rising/Falling/Steady (values can be set in strings.ini)
|-
|-
|<#temptrendenglish>
|<#rfall>
|Temperature change over the last three hours - Rising/Falling/Steady (for use by [[Webtags_as_boolean_operators_in_HTML|HTML]], [[Editing_content_of_a_webpage_using_either_HTML_or_Script|javascript]] etc, values can't be changed)
|The total rainfall so far today
|-
|-
|<#TempChangeLastHour>
|<#rrate>
|The change in temperature over the last hour
|The current rainfall rate
|-
|-
|<#heatindex>
|<#rhour>
|Current [[heat index]].  The referenced page in weather terminology section of this Wiki explains it.
|The rainfall in the last hour
|-
|-
|<#humidex>
|<#rmidnight>
|Current [http://en.wikipedia.org/wiki/Humidex Humidex]
|The total rainfall since midnight. Useful if you don't use midnight as your start of day
|-
|-
|<#apptemp>
|<#r24hour>
|The [[Apparent_temperature|apparent]] temperature.  The referenced page in weather terminology section of this Wiki explains it. The formula used is that defined by BOM. Although at temperatures above 20°C (68°F) Feels like reports an "apparent temperature" it uses a different formula.
|Amount of rain in the last 24 hours
|-
|-
|<#wchill>
|<#LastRainTipISO>
|The current [[wind chill]] temperature. The referenced page in weather terminology section of this Wiki explains it. For temperatures below 10°C (50°F) Feels like reports the same value.
|Fixed ISO format output giving date and time of last rain gauge tip (e.g 2010-09-06 06:09) The format is a shown, and cannot be modified by locale or addition of parameters.
|-
|-
|<#feelslike>
|<#LastRainTip>
|The current [[Feels_Like|Feels Like]] temperature.  The referenced page in weather terminology section of this Wiki explains it. Although output from version 3.5.4 build 3075, the correct value is only available from version 3.6.10 (build 3086) onwards as incorrect formula used in builds 3084 and 3085, and a different formula used in builds from 3075 to 3083.
| (available from release 3.6.1) Date/time of last rain gauge tip (default format is as set in locale) '''PLEASE NOTE: this web tag WILL accept any date and time output format modifiers'''
|-
|-
|<#IsFreezing>
|<#MinutesSinceLastRainTip>
|If outside temperature is at or below 0°C/32°F. 0=Above freezing, 1=Below freezing
|The number of minutes since the last rain gauge tip, in whole numbers, rounded down
|-
|-
|<#chillhours>
|<#IsRaining>
|The number of [[Heat/cold_degree_days_and_Chill_hours#Chill_Hours_and.2For_Air_Frost|'chill hours']] so far this season (threshold temperature and start date are configurable).
|For [[Rain_measurement#Optical_Rain_Gauge| Hydreon RG-11 devices]], shows the current rain state. 0=No rain, 1=It's raining
|-
|-
|colspan="2" style="background:lightgray;"|Humidity
|<#rmonth>
|The total rainfall so far this month
|-
|-
|<#hum>
|<#ryear>
|The outside [http://en.wikipedia.org/wiki/Humidity humidity]
|Annual rainfall total for rainfall season year (i.e. starting month as set on Configuration menu, station screen,  Annual rainfall frame)
|-
|-
|<#inhum>
|<#ConsecutiveRainDays>
|The inside humidity
|The number of days up to (but not including) today where it has rained every day. The threshold amount of rain required to determine a rain day is configurable via the RainDayThreshold setting in cumulus.ini, the units for the threshold are the same as your rain units, meteorologists exclude dew (and other times when single tip of recorder).
|-
|-
|<#dew>
|<#ConsecutiveDryDays>
|The current dew point
|The number of days up to (but not including) today since it last rained. The threshold amount of rain required to determine a rain day is configurable via the RainDayThreshold setting in cumulus.ini the units for the threshold are the same as your rain units
|-
|-
|<#wetbulb>
|colspan="2" style="background:lightgray;"|Pressure
|Estimated [http://en.wikipedia.org/wiki/Wet_bulb wet bulb] temperature, can be seen if hover over 'Dewpoint' on Cumulus 1 main screen
|-
|-
|colspan="2" style="background:lightgray;"|Rainfall
|<#press>
|The [http://en.wikipedia.org/wiki/Sea_level_pressure sea level pressure]
|-
|-
|<#rfall>
|<#presstrendval>
|The total rainfall so far today
|The average rate of pressure change over the last three hours.
|-
|-
|<#rrate>
|<#presstrend>
|The current rainfall rate
|The pressure trend in words - values can be set in the 'strings.ini' file
|-
|-
|<#rhour>
|<#presstrendenglish>
|The rainfall in the last hour
| a singe word description for the pressure trend - Rising/Falling/Steady (for use by [[Webtags_as_boolean_operators_in_HTML|HTML]], [[Editing_content_of_a_webpage_using_either_HTML_or_Script|javascript]] etc, values can't be changed)
|-
|-
|<#rmidnight>
|<#altimeterpressure>
|The total rainfall since midnight. Useful if you don't use midnight as your start of day
|Altimeter pressure. Pressure corrected to sea level using the station's altitude only. Same as sea-level pressure for non-Davis stations.
|-
|-
|<#r24hour>
|colspan="2" style="background:lightgray;"|Wind
|Amount of rain in the last 24 hours
|-
|-
|<#LastRainTipISO>
|<#wlatest>
|Fixed ISO format output giving date and time of last rain gauge tip (e.g 2010-09-06 06:09) The format is a shown, and cannot be modified by locale or addition of parameters.
|Current wind speed reading from console. Corresponds to 'latest' on the Cumulus main screen.
|-
|-
|<#LastRainTip>
|<#bearing>
| (available from release 3.6.1) Date/time of last rain gauge tip (default format is as set in locale) '''PLEASE NOTE: this web tag WILL accept any date and time output format modifiers'''
|Current wind bearing in degrees
|-
|-
|<#MinutesSinceLastRainTip>
|<#currentwdir>
|The number of minutes since the last rain gauge tip, in whole numbers, rounded down
|Current wind bearing as a compass point - e.g. ESE
|-
|-
|<#IsRaining>
|<#wspeed>
|For [[Rain_measurement#Optical_Rain_Gauge| Hydreon RG-11 devices]], shows the current rain state. 0=No rain, 1=It's raining
|The 10-minute average, if you have Cumulus set to calculate a 10-minute average. Otherwise, it's the latest 'wind' value from the console (i.e. the current speed as determined by the station). Corresponds to 'average' on the Cumulus main screen.
|-
|-
|<#rmonth>
|<#avgbearing>
|The total rainfall so far this month
|Average wind bearing in degrees over last 10 minutes. Range 1-360, 0=Calm
|-
|-
|<#ryear>
|<#wdir>
|Annual rainfall total for rainfall season year (i.e. starting month as set on Configuration menu, station screen,  Annual rainfall frame)
|Average wind bearing over last 10 minutes as a [http://en.wikipedia.org/wiki/Compass compass] point - e.g. ESE
|-
|-
|<#ConsecutiveRainDays>
|<#wgust>
|The number of days up to (but not including) today where it has rained every day. The threshold amount of rain required to determine a rain day is configurable via the RainDayThreshold setting in cumulus.ini, the units for the threshold are the same as your rain units, meteorologists exclude dew (and other times when single tip of recorder).
|The highest wind reading in the last 10 minutes. Corresponds to 'gust' on the Cumulus main screen.
|-
|-
|<#ConsecutiveDryDays>
|<#wdirdata>
|The number of days up to (but not including) today since it last rained. The threshold amount of rain required to determine a rain day is configurable via the RainDayThreshold setting in cumulus.ini the units for the threshold are the same as your rain units
|Comma separated list of recent wind bearing readings (every x seconds, up to 3600 entries). This is a circular buffer; to find the most recent value use nextwindindex. Reading interval x varies by station type.
|-
|-
|colspan="2" style="background:lightgray;"|Pressure
|<#wspddata>
|Comma separated list of recent individual (non-averaged) wind speed (correspond to 'latest' on the Cumulus main screen) readings (every x seconds, up to 3600 entries). This is a circular buffer; to find the most recent value use nextwindindex. Reading interval x varies by station type.
|-
|-
|<#press>
|<#nextwindindex>
|The [http://en.wikipedia.org/wiki/Sea_level_pressure sea level pressure]
|The index of the entries in wdirdata and wspddata which Cumulus is going to use next - i.e. the latest entry used is one less than this; but don't forget to allow for the wrap around!
|-
|-
|<#presstrendval>
|<#beaufort>
|The average rate of pressure change over the last three hours.
|The current wind speed on the [http://en.wikipedia.org/wiki/Beaufort_scale Beaufort scale] (e.g. F8)
|-
|-
|<#presstrend>
|<#beaufortnumber>
|The pressure trend in words - values can be set in the 'strings.ini' file
|The current wind speed on the Beaufort scale, without a leading "F", e.g. "6"
|-
|-
|<#presstrendenglish>
|<#beaudesc>
| a singe word description for the pressure trend - Rising/Falling/Steady (for use by [[Webtags_as_boolean_operators_in_HTML|HTML]], [[Editing_content_of_a_webpage_using_either_HTML_or_Script|javascript]] etc, values can't be changed)
|The current wind speed Beaufort description (e.g. "Gale")
|-
|-
|<#altimeterpressure>
|<#BearingRangeFrom>
|Altimeter pressure. Pressure corrected to sea level using the station's altitude only. Same as sea-level pressure for non-Davis stations.
|The 'lowest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini)
|-
|-
|colspan="2" style="background:lightgray;"|Wind
|<#BearingRangeTo>
|The 'highest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini)
|-
|-
|<#wlatest>
|<#BearingRangeFrom10>
|Current wind speed reading from console.  Corresponds to 'latest' on the Cumulus main screen.
|The 'lowest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini), rounded down to nearest 10 degrees
|-
|-
|<#bearing>
|<#BearingRangeTo10>
|Current wind bearing in degrees
|The 'highest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini), rounded down to nearest 10 degrees
|-
|-
|<#currentwdir>
|<#WindRoseData>
|Current wind bearing as a compass point - e.g. ESE
|A comma-separated list of the wind 'totals' used to draw the wind rose (8 or 16 values)
|-
|-
|<#wspeed>
|<#WindRosePoints>
|The 10-minute average, if you have Cumulus set to calculate a 10-minute average. Otherwise, it's the latest 'wind' value from the console (i.e. the current speed as determined by the station). Corresponds to 'average' on the Cumulus main screen.
|The number of items in <#WindRoseData> (i.e. 8 or 16)
|-
|-
|<#avgbearing>
|<#WindSampleCount>
|Average wind bearing in degrees over last 10 minutes. Range 1-360, 0=Calm
|The number of wind samples making up the wind rose (etc) data (up to 3600)
|-
|-
|<#wdir>
|colspan="2" style="background:lightgray;"|Miscellaneous
|Average wind bearing over last 10 minutes as a [http://en.wikipedia.org/wiki/Compass compass] point - e.g. ESE
|-
|-
|<#wgust>
|<#cloudbase>
|The highest wind reading in the last 10 minutes. Corresponds to 'gust' on the Cumulus main screen.
|Calculated [http://en.wikipedia.org/wiki/Cloud_base cloud base]
|-
|-
|<#wdirdata>
|<#cloudbasevalue>
|Comma separated list of recent wind bearing readings (every x seconds, up to 3600 entries). This is a circular buffer; to find the most recent value use nextwindindex. Reading interval x varies by station type.
|Current calculated cloud base without units
|-
|-
|<#wspddata>
|<#UV>
|Comma separated list of recent individual (non-averaged) wind speed (correspond to 'latest' on the Cumulus main screen) readings (every x seconds, up to 3600 entries). This is a circular buffer; to find the most recent value use nextwindindex. Reading interval x varies by station type.
|Current [http://en.wikipedia.org/wiki/Uv_index UV index]. Requires your station to have a UV sensor.
|-
|-
|<#nextwindindex>
|<#SolarRad>
|The index of the entries in wdirdata and wspddata which Cumulus is going to use next - i.e. the latest entry used is one less than this; but don't forget to allow for the wrap around!
|Current [http://en.wikipedia.org/wiki/Solar_radiation solar radiation]. Requires your station to have a solar sensor.
|-
|-
|<#beaufort>
|The current wind speed on the [http://en.wikipedia.org/wiki/Beaufort_scale Beaufort scale] (e.g. F8)
|-
|-
|<#beaufortnumber>
|<#Light>
|The current wind speed on the Beaufort scale, without a leading "F", e.g. "6"
|Current Current light level in Lux. Requires your station to have a solar sensor. Only applies to Fine Offset stations.
|-
|-
|<#beaudesc>
|[[Forecast_webtag|<#forecast>]]
|The current wind speed Beaufort description (e.g. "Gale")
|The current forecast
|-
|-
|<#BearingRangeFrom>
|<#forecastenc>
|The 'lowest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini)
|The same as <#forecast> but with all reserved HTML characters, and those above character code 159, encoded as HTML entities
|-
|-
|<#BearingRangeTo>
|<#forecastnumber>
|The 'highest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini)
|The number relating to the current forecast entry in the [[strings.ini]] file.  If your station is not providing it's own forecast and Cumulus is not calculating one then 0 (zero) is returned. Note: two negative numbers can be returned by Cumulus: -1 (neg 1) = Exceptional Fine, -26 (neg 26) = Exceptional Bad
|-
|-
|<#BearingRangeFrom10>
|<#cumulusforecast>
|The 'lowest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini), rounded down to nearest 10 degrees
|Always gives Cumulus (Zambretti) forecast, even if the <#forecast> tag provides a station forecast
|-
|-
|<#BearingRangeTo10>
|<#cumulusforecastenc>
|The 'highest' clockwise bearing in the last 10 minutes (or as configured using AvgBearingMinutes in cumulus.ini), rounded down to nearest 10 degrees
|The same as <#cumulusforecast> but with all reserved HTML characters, and those above character code 159, encoded as HTML entities
|-
|-
|<#WindRoseData>
|<#wsforecast>
|A comma-separated list of the wind 'totals' used to draw the wind rose (8 or 16 values)
|Always gives station forecast (if available)
|-
|-
|<#WindRosePoints>
|<#wsforecastenc>
|The number of items in <#WindRoseData> (i.e. 8 or 16)
|The same as <#wsforecast> but with all reserved HTML characters, and those above character code 159, encoded as HTML entities
|-
|-
|<#WindSampleCount>
|<#currcond>
|The number of wind samples making up the wind rose (etc) data (up to 3600)
|Represents the value entered on the screen within Cumulus for the Current Weather condition, or the value as held in the [[currentconditions.txt]] file. Any reserved HTML characters are encoded as HTML entities
|-
|-
|colspan="2" style="background:lightgray;"|Miscellaneous
|<#currcondenc>
|The same as <#currcond> but also has all characters above (decimal base) code 159 encoded as HTML entities for example this would encode any use of symbol for degree.
|}
==== Feels Like ====
 
The figures quoted for this derivative vary between versions:
* The first formula was used from MX version 3.5.4 (25 Apr 2020) build 3075 until version 3.6.7 (4 June 2020) build 3083
* The second formula, which was coded incorrectly, and so gave strange results, applied in versions 3.6.8 to 3.6.9 (build 3084, 3085)
* The third, and hopefully final, formula applies from version 3.6.10 (build 3086).
 
A php script for adding feels like as calculated in version 3.6.10 to any standard log line created either without feels like, or with an older calculation, can be downloaded from [https://cumulus.hosiene.co.uk/viewtopic.php?f=18&t=18096 Create Missing topic on support forum]
 
==Extra Sensors Davis (and a few others)==
 
These web tags hold current values for additional sensors supported by Cumulus. Most of the tags in this section relate to Davis stations, but not exclusively.
 
Some tags are only available for certain builds, see general tip at top of page to check for the build you are using. In particular Cumulus 1 has fewer channels available.
 
There are no web tags for past values from extra sensors, see the [[Extra_Sensor_Files]] page for information about log files from where you can extract those values.
 
{| class="wikitable" border="1"
|-
|-
|<#cloudbase>
!style="width:150px"|Web tag_name
|Calculated [http://en.wikipedia.org/wiki/Cloud_base cloud base]
!style="width:600px"|The related description can be changed in 'strings.ini', but below are default descriptions that will be shown in viewer/editor
|-
|-
|<#cloudbasevalue>
|<#ExtraTemp1>
|Current calculated cloud base without units
|Extra temperature channel 1
|-
|-
|<#UV>
|<#ExtraTemp2>
|Current [http://en.wikipedia.org/wiki/Uv_index UV index]. Requires your station to have a UV sensor.
|Extra temperature channel 2
|-
|-
|<#SolarRad>
|<#ExtraTemp3>
|Current [http://en.wikipedia.org/wiki/Solar_radiation solar radiation]. Requires your station to have a solar sensor.
|Extra temperature channel 3
|-
|-
|colspan="2"|... and so on up to <#ExtraTemp10> = Extra temperature channel 10
|-
|-
|<#Light>
|<#ExtraDP1>
|Current Current light level in Lux. Requires your station to have a solar sensor. Only applies to Fine Offset stations.
|Extra dew point channel 1
|-
|-
|[[Forecast_webtag|<#forecast>]]
|<#ExtraDP2>
|The current forecast
|Extra dew point channel 2
|-
|-
|<#forecastenc>
|<#ExtraDP3>
|The same as <#forecast> but with all reserved HTML characters, and those above character code 159, encoded as HTML entities
|Extra dew point channel 3
|-
|-
|<#forecastnumber>
|colspan="2"|... and so on up to <#ExtraDP10>
|The number relating to the current forecast entry in the [[strings.ini]] file.  If your station is not providing it's own forecast and Cumulus is not calculating one then 0 (zero) is returned.  Note: two negative numbers can be returned by Cumulus: -1 (neg 1) = Exceptional Fine, -26 (neg 26) = Exceptional Bad
|-
|<#ExtraHum1>
|Extra humidity channel 1
|-
|<#ExtraHum2>
|Extra humidity channel 2
|-
|-
|<#cumulusforecast>
|<#ExtraHum3>
|Always gives Cumulus (Zambretti) forecast, even if the <#forecast> tag provides a station forecast
|Extra humidity channel 3
|-
|-
|<#cumulusforecastenc>
|colspan="2"|... and so on up to <#ExtraHum10>
|The same as <#cumulusforecast> but with all reserved HTML characters, and those above character code 159, encoded as HTML entities
|-
|-
|<#wsforecast>
|<#SoilTemp1>
|Always gives station forecast (if available)
|Soil temperature 1
|-
|-
|<#wsforecastenc>
|<#SoilTemp2>
|The same as <#wsforecast> but with all reserved HTML characters, and those above character code 159, encoded as HTML entities
|Soil temperature 2
|-
|-
|<#currcond>
|colspan="2"|... and so on up to <#SoilTemp16>
|Represents the value entered on the screen within Cumulus for the Current Weather condition, or the value as held in the [[currentconditions.txt]] file. Any reserved HTML characters are encoded as HTML entities
|-
|-
|<#currcondenc>
|<#SoilMoisture1>
|The same as <#currcond> but also has all characters above (decimal base) code 159 encoded as HTML entities for example this would encode any use of symbol for degree.
|Soil moisture 1
|}
 
==Extra Sensors Davis (and a few others)==
 
These web tags hold current values for additional sensors supported by Cumulus. Most of the tags in this section relate to Davis stations, but not exclusively.
 
Some tags are only available for certain builds, see general tip at top of page to check for the build you are using. In particular Cumulus 1 has fewer channels available.
 
There are no web tags for past values from extra sensors, see the [[Extra_Sensor_Files]] page for information about log files from where you can extract those values.
 
{| class="wikitable" border="1"
|-
|-
!style="width:150px"|Web tag_name
|<#SoilMoisture2>
!style="width:600px"|The related description can be changed in 'strings.ini', but below are default descriptions that will be shown in viewer/editor
|Soil moisture 2
|-
|-
|<#ExtraTemp1>
|colspan="2"|... and so on up to <#SoilMoisture16>
|Extra temperature channel 1
|-
|-
|<#ExtraTemp2>
|<#LeafTemp1>
|Extra temperature channel 2
|Leaf temperature 1
|-
|-
|<#ExtraTemp3>
|<#LeafTemp2>
|Extra temperature channel 3
|Leaf temperature 2
|-
|-
|colspan="2"|... and so on up to <#ExtraTemp10> = Extra temperature channel 10
|<#LeafWetness1>
|Leaf wetness 1
|-
|-
|<#ExtraDP1>
|<#LeafWetness2>
|Extra dew point channel 1
|Leaf wetness 2
|}
 
==Extra Sensors Ecowitt==
 
This section applies only to those using Ecowitt GW1000 (Froggit DS1500) an interface unit that picks up various external sensors and sends the data via an application programming interface to MX which then generates the following web tags:
 
{| class="wikitable" border="1"
|-
|-
|<#ExtraDP2>
!style="width:150px" |Web tag_name
|Extra dew point channel 2
!style="width:600px" |Function
|-
|-
|<#ExtraDP3>
|<#GW1000FirmwareVersion>
|Extra dew point channel 3
|GW1000 firmware version string
|}
 
 
{| class="wikitable" border="1"
|-
|-
|colspan="2"|... and so on up to <#ExtraDP10>
!style="width:150px"|Web tag_name
!style="width:600px"|The related description can be changed in 'strings.ini', but below are default descriptions that will be shown in the viewer/editor
|-
|-
|<#ExtraHum1>
|<#AirQuality1>
|Extra humidity channel 1
|Air quality 1
|-
|-
|<#ExtraHum2>
|colspan="2"|... and so on up to <#AirQuality4>
|Extra humidity channel 2
|-
|-
|<#ExtraHum3>
|<#LeakSensor1>
|Extra humidity channel 3
|Leak sensor - 0 or 1
|-
|-
|colspan="2"|... and so on up to <#ExtraHum10>
|colspan="2"|... and so on up to <#LeakSensor4>
|-
|-
|<#SoilTemp1>
|<#LightningDistance>
|Soil temperature 1
|Distance to last strike (same units as wind run - miles/km/nm) (Returns 0.0 if you don't have a sensor, GW1000 api returns max value you can put in a byte - 0xFF which translates to 158.4 miles = 255 km if have sensor but no strike detected yet, so MX translates that to '----')
|-
|-
|<#SoilTemp2>
|<#LightningTime>
|Soil temperature 2
|Date and Time of last strike (default without output parameters is locale's short time format e.g. 18:02 or 6:02 pm, without date, but tag accepts both date and time output parameters). Returns '----' if you don't have sensor or there has not been a strike since the sensor was installed. (GW1000 api returns FFFF FFFF seconds after midnight on 01 Jan 1970, which translates to 07/02/2106 06:28:15, so MX translates that to '----')
|-
|-
|colspan="2"|... and so on up to <#SoilTemp16>
|<#LightningStrikesToday>
|Number of strikes since midnight, default 0
|-
|-
|<#SoilMoisture1>
|<#UserTemp1>  
|Soil moisture 1
|User Temperature 1
support for the Ecowitt WH34 (other model types exist and are reported here as if WH34) soil and water temperature sensors
|-
|-
|<#SoilMoisture2>
|colspan="2"|... and so on up to <#UserTemp8> = User temperature 8
|Soil moisture 2
|}
|-
 
|colspan="2"|... and so on up to <#SoilMoisture16>
 
|-
Ecowitt stations are sold under other names depending on nation,  e.g. Ambient in USA, Froggit in central Europe, so Ecowitt is used as a generic name in same way as Fine Offset is used elsewhere in this article.
|<#LeafTemp1>
 
|Leaf temperature 1
==Recent History==
|-
 
|<#LeafTemp2>
There are a set of web tags for 'recent historical data', based on an array stored by Cumulus giving data values from 1 minute ago, up to 1 week ago, in 1 minute intervals. As Cumulus runs it will add the latest values to the array with full resolution, and shift existing values along so those older than 7 days fall off.  Following the table giving the tags actually available, there is a section on how to derive a few more tags.
|Leaf temperature 2
|-
|<#LeafWetness1>
|Leaf wetness 1
|-
|<#LeafWetness2>
|Leaf wetness 2
|}


==Extra Sensors Ecowitt==
(Note that Cumulus uses current time read from the computer to determine which array element it stores each value in. Hence ''when clocks go back'' the value stored for winter time overwrites the value previously stored for same time during summer time for the relevant repeating hour. Hence even if you use 10am for your rollover time in summer, you will not have access to a whole hour worth of data when the clocks change as either the hour has been overwritten or ''when the clocks go forward'' it simply does not exist).


This section applies only to those using Ecowitt GW1000 (Froggit DS1500) an interface unit that picks up various external sensors and sends the data via an application programming interface to MX which then generates the following web tags:
[[#No_Commas]] versions of the array are available for use in script.


{| class="wikitable" border="1"
=== Input Parameters ===
|-
!style="width:150px" |Web tag_name
!style="width:600px" |Function
|-
|<#GW1000FirmwareVersion>
|GW1000 firmware version string
|}


You specify which value you want from the array by using parameters on the web tags for number of days ago, hours ago, and minutes ago. The same d, h, and m, parameters are used by Cumulus 1 and MX.


{| class="wikitable" border="1"
All values supplied for parameters must be whole numbers.  
|-
!style="width:150px"|Web tag_name
!style="width:600px"|The related description can be changed in 'strings.ini', but below are default descriptions that will be shown in the viewer/editor
|-
|<#AirQuality1>
|Air quality 1
|-
|colspan="2"|... and so on up to <#AirQuality4>
|-
|<#LeakSensor1>
|Leak sensor - 0 or 1
|-
|colspan="2"|... and so on up to <#LeakSensor4>
|-
|<#LightningDistance>
|Distance to last strike (same units as wind run - miles/km/nm) (Returns 0.0 if you don't have a sensor, GW1000 api returns max value you can put in a byte - 0xFF which translates to 158.4 miles = 255 km if have sensor but no strike detected yet, so MX translates that to '----')
|-
|<#LightningTime>
|Date and Time of last strike (default without output parameters is locale's short time format e.g. 18:02 or 6:02 pm, without date, but tag accepts both date and time output parameters). Returns '----' if you don't have sensor or there has not been a strike since the sensor was installed. (GW1000 api returns FFFF FFFF seconds after midnight on 01 Jan 1970, which translates to 07/02/2106 06:28:15, so MX translates that to '----')
|-
|<#LightningStrikesToday>
|Number of strikes since midnight, default 0
|-
|<#UserTemp1>
|User Temperature 1
support for the Ecowitt WH34 (other model types exist and are reported here as if WH34) soil and water temperature sensors
|-
|colspan="2"|... and so on up to <#UserTemp8> = User temperature 8
|}


If you don't supply any parameters, the result is undefined for Cumulus 1, and an illegal web tag for MX.


Ecowitt stations are sold under other names depending on nation,  e.g. Ambient in USA, Froggit in central Europe, so Ecowitt is used as a generic name in same way as Fine Offset is used elsewhere in this article.
<#RecentOutsideTemp m=1> will give the temperature one minute ago, <#RecentOutsideTemp h=1> will give the temperature one hour ago (as will <#RecentOutsideTemp m=60>).
 
==Recent History==
 
There are a set of web tags for 'recent historical data', based on an array stored by Cumulus giving data values from 1 minute ago, up to 1 week ago, in 1 minute intervals. As Cumulus runs it will add the latest values to the array with full resolution, and shift existing values along so those older than 7 days fall off.  Following the table giving the tags actually available, there is a section on how to derive a few more tags.
 
(Note that Cumulus uses current time read from the computer to determine which array element it stores each value in. Hence ''when clocks go back'' the value stored for winter time overwrites the value previously stored for same time during summer time for the relevant repeating hour. Hence even if you use 10am for your rollover time in summer, you will not have access to a whole hour worth of data when the clocks change as either the hour has been overwritten or ''when the clocks go forward'' it simply does not exist).
 
[[#No_Commas]] versions of the array are available for use in script.
 
=== Input Parameters ===
 
You specify which value you want from the array by using parameters on the web tags for number of days ago, hours ago, and minutes ago. The same d, h, and m, parameters are used by Cumulus 1 and MX.
 
All values supplied for parameters must be whole numbers.
 
If you don't supply any parameters, the result is undefined for Cumulus 1, and an illegal web tag for MX.
 
<#RecentOutsideTemp m=1> will give the temperature one minute ago, <#RecentOutsideTemp h=1> will give the temperature one hour ago (as will <#RecentOutsideTemp m=60>).


<#RecentOutsideTemp d=1> will give the temperature one day ago. '''Please note:''' Some Cumulus users say that using <#RecentOutsideTemp  d=1 m=1> is more reliable at getting the temperature at a similar time the day before, the extra minute apparently gives better results when you might not be using Cumulus all the time, or your weather station might have some drift on when it supplies readings. See which works best for you.
<#RecentOutsideTemp d=1> will give the temperature one day ago. '''Please note:''' Some Cumulus users say that using <#RecentOutsideTemp  d=1 m=1> is more reliable at getting the temperature at a similar time the day before, the extra minute apparently gives better results when you might not be using Cumulus all the time, or your weather station might have some drift on when it supplies readings. See which works best for you.
Line 1,195: Line 1,218:
|-
|-
|<#RecentWindChill>
|<#RecentWindChill>
|Wind Chill
|Wind Chill (if temperature is below 10°C or 50 °F, then the new Feels Like now available in MX will report this same value).
| <#RecentWindChill d=48 m=1> reports the wind chill temperature 2 days ago
| <#RecentWindChill d=48 m=1> reports the wind chill temperature 2 days ago
|-
|-
Line 1,256: Line 1,279:
| d=n (where n runs 0 to 6) days ago; h=n (where n is any number of hours ago); m=n (where n is any number of minutes ago)
| d=n (where n runs 0 to 6) days ago; h=n (where n is any number of hours ago); m=n (where n is any number of minutes ago)
|}
|}


=== Other weather derivatives ===
=== Other weather derivatives ===
Line 1,277: Line 1,299:
H = (5/9 * (<#RecentHumidity h=3> /100 * svp - 10)) + <#RecentOutsideTemp h=3;
H = (5/9 * (<#RecentHumidity h=3> /100 * svp - 10)) + <#RecentOutsideTemp h=3;


==== Apparent Temperature ====
==== Apparent Temperature and Feels Like ====


Note this formula uses Celsius for temperature and metres per second for wind speed. You will need to do the appropriate conversions if you use different units.  Formula is same for Cumulus 1 and MX.
Note this apparent temperature formula uses Celsius for temperature and '''metres per second''' for wind speed. You will need to do the appropriate conversions from the quoted recent history tags if you use different units.  The Australian Apparent temperature formula is same for Cumulus 1 and MX:


var actualVaporPress = <#RecentHumidity h=3>/100) * 6.105 * Math.exp(17.27 * <#RecentOutsideTemp h=3>) / (237.7 + parseFloat(<#RecentOutsideTemp h=3>))));
var actualVaporPress = <#RecentHumidity h=3>/100) * 6.105 * Math.exp(17.27 * <#RecentOutsideTemp h=3>) / (237.7 + parseFloat(<#RecentOutsideTemp h=3>))));
var appTempDegC = parseFloat(<#RecentOutsideTemp h=3) + (0.33 * actualVaporPress) - (0.7 * <#RecentWindSpeed h=3>) - 4;
var appTempDegC = parseFloat(<#RecentOutsideTemp h=3) + (0.33 * actualVaporPress) - (0.7 * <#RecentWindSpeed h=3>) - 4;


==== Feels Like ====
Feels Like as implemented at version 3.6.10 (see [[#Feels_Like|Feels Like section below Current condition web tags]]) uses Celsius for temperature and '''km per hour''' for wind speed. Again, you will need to do the appropriate conversions from the quoted recent history tags if you use different units.
 
Calculation from recent history tags is much more complicated because there are 3 different calculations: Feels Like reports exactly same as wind chill for temperatures '''below''' 10°C or 50°F so the WC here should equal <#RecentWindChill h=3>:
<pre>if(<#RecentWindSpeed h=3> < 4.828) WC =  <#RecentOutsideTemp h=3>;
else{
wind_pow =  Math.pow(<#RecentWindSpeed h=3>, 0.16);
WC = (13.12 + 0.1625 * <#RecentOutsideTemp h=3>) - (11.37 * wind_pow) + (0.3965 * <#RecentOutsideTemp h=3> * wind_pow);// Brackets used to ensure "+" is interpreted as addition not concatenation
} </pre>
 
For temperatures '''above''' 20°C or 68°F Feels Like uses a different way to calculate apparent temperature that it uses at these higher temperatures (this formula only used for 3.6.10 onwards):
<pre>var actualVaporPress = <#RecentHumidity h=3>/100) * 6.112* Math.exp((17.62 * <#RecentOutsideTemp h=3>)/(243.12 + <#RecentOutsideTemp h=3>)) / 10.0;  // Not same as at build 3084
/* uses kilometres per hour for wind speed */
/*  What Cumulus MX will use to calculate apparent temperature for feels like is changed very slightly */
if(<#RecentWindSpeed h=3> > 72) <#RecentWindSpeed h=3> =72;
AT= (1.04 * <#RecentOutsideTemp h=3>) + (2 * actualVaporPress) - (0.1805553 * <#RecentWindSpeed h=3>) - 2.7;</pre>
 
For in-between temperatures it uses a more complicated merge of the two formulas for AT and WC as defined above:
<pre>app_temp_mult = (<#RecentOutsideTemp h=3> - 10) / 10;
wind_chill_mult = 1 - app_temp_mult;


Formula deleted, as only used from MX version 3.5.4 (25 Apr 2020) build 3075 until version 3.6.7 (4 June 2020) build 3083
FL= AT * app_temp_mult + WC * wind_chill_mult;</pre>


==Today==
==Today==
Many of these web tags are used on the supplied '''todayT.htm''' template, and the supplied '''todayyest.html''' page within the MX admin interface.
For web tags that report values that refer to a particular time of day, there is a corresponding web tag that can give the time of day, shown in same row of table below.  
For web tags that report values that refer to a particular time of day, there is a corresponding web tag that can give the time of day, shown in same row of table below.  


Line 1,295: Line 1,338:
|-
|-
!style="width:150px" | Web tag_name
!style="width:150px" | Web tag_name
!style="width:450px" | Function
!style="width:650px" | Function
!style="width:150px" | Time tag_name
!style="width:150px" | Time tag_name
|-
|-
Line 1,325: Line 1,368:
|-
|-
|<#feelslikeTH>
|<#feelslikeTH>
|[[File:Badge vMx.png]] Available from version 3.6.0 Today's high feels like temperature
|[[File:Badge vMx.png]] Available from version 3.6.10 Today's high feels like temperature
|<#TfeelslikeH>
|<#TfeelslikeTH>
|-
|-
|<#feelslikeL>
|<#feelslikeTL>
|[[File:Badge vMx.png]] Available from version 3.6.0 Today's low feels like temperature
|[[File:Badge vMx.png]] Available from version 3.6.10 Today's low feels like temperature
|<#TfeelslikeL>
|<#TfeelslikeTL>
|-
|-
|<#heatindexTH>
|<#heatindexTH>
Line 1,459: Line 1,502:


==Yesterday==
==Yesterday==
Note that the Y indicating yesterday is sometimes a prefix, sometimes a suffix (with H for High, L for Low), web tags are not named consistently!
Note that the Y indicating yesterday is sometimes a prefix, sometimes a suffix (with H for High, L for Low), web tags are not named consistently!


Many of these web tags are used on the supplied yesterdayT.htm template, and the supplied todayyest.html page within the MX user interface.
Many of these web tags are used on the supplied '''yesterdayT.htm''' template, and the supplied '''todayyest.html''' page within the MX admin interface.


For web tags that refer to a particular time of day, there is a corresponding web tag that can give the time of day. Please note none of the time web tags can be modified by output parameters to give a date, but they can be changed from the default time format that is 'h:mm'.
For web tags that refer to a particular time of day, there is a corresponding web tag that can give the time of day. Please note none of the time web tags can be modified by output parameters to give a date, but they can be changed from the default time format that is 'h:mm'.
Line 1,467: Line 1,511:
|-
|-
!style="width:150px" | Web tag_name
!style="width:150px" | Web tag_name
!style="width:450px" | Function
!style="width:550px" | Function
!style="width:150px" | Time
!style="width:150px" | Time
|-
|-
Line 1,614: Line 1,658:


==Monthly==
==Monthly==
This table shows the web tags used on the "thismonthT.htm" web page, the rainfall this month does not appear  on that page, does not appear  on that page, it is shown in [[#Current_Conditions|indexT.htm]] table earlier on this page.


The web tags in the date column output dates in the format "dd MMMM" (same for Cumulus 1 and Cumulus MX), this can be changed using the [[#Time.2FDate_.27format.27_Parameter|format parameters]] described above. For web tags that represent daily values, there are (obviously) no corresponding time web tags, but for high and low spot values the default 'h:mm' format of the time output can be changed using output parameters.
This table shows the web tags used on the '''thismonthT.htm''' web page,and the '''records.html''' page (accessed by penultimate tab) in the admin interface.
 
Because the rainfall this month does not appear on '''thismonthT.htm''' web page, it is shown in [[#Current_Conditions|indexT.htm]] table earlier in this article which is for the web page where it does appear.
 
The web tags in the date column output dates in the format "dd MMMM" (for once this is same for Cumulus 1 and Cumulus MX). Should you require a different output format, this can be changed using the [[#Time.2FDate_.27format.27_Parameter|format parameters]] described above. For web tags that represent daily values, there are (obviously) no corresponding time web tags, but for high and low spot values the default 'h:mm' format of the time output can be changed using output parameters. Do make sure that you get the web tag names right and the output form at parameters right.
 
As another example of inconsistency in how web tags added in different versions are coded, there are two web tags (highest minimum/lowest maximum temperatures) where a standard web tag is not provided by Cumulus (1 or MX) for the associated time-stamp. Consequently, for these 2 (and their corresponding tags in the this year group), there are mandatory output parameters required as shown in the table. Obviously Cumulus 1 lets you use "NN", "nn", "MM", or "mm" for the minutes, but minutes can only be represented in one way in Cumulus MX.


NB This table shows time of extremes for two daily figures (highest minimum/lowest maximum temperatures as of course these are actually associated with a particular time although a standard web tag was not provided for that), by including Cumulus time modifiers, and how minutes in time modifiers can be specified in two ways in Cumulus 1 but only in one way in Cumulus MX.
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 1,768: Line 1,816:


==Yearly==
==Yearly==
This table shows the web tags used on the "thisyearT.htm" web page, the rainfall this season (it need not start on 1 January) does not appear on that page, it is shown on [[#Current_Conditions|indexT.htm]].
This table shows the web tags used on the "thisyearT.htm" web page, and the '''records.html''' page (accessed by final tab) in the admin interface.
 
Because the rainfall this year does not appear on '''thisyearT.htm''' web page, it is shown in [[#Current_Conditions|indexT.htm]] table earlier in this article which is for the web page where it does appear.
 
The web tags in the date column output dates in the format "dd MMMM" (for once this is same for Cumulus 1 and Cumulus MX). Should you require a different output format, this can be changed using the [[#Time.2FDate_.27format.27_Parameter|format parameters]] described above. For web tags that represent daily values, there are (obviously) no corresponding time web tags, but for high and low spot values the default 'h:mm' format of the time output can be changed using output parameters. Do make sure that you get the web tag names right and the output form at parameters right.


The default format for web tags in the date column is (like the monthly web tags) "dd MMMM" (same for Cumulus 1 and Cumulus MX), this can be changed using the [[#Time.2FDate_.27format.27_Parameter|format parameters]] described above. For web tags that represent daily values, there are (obviously) no corresponding time web tags, but for high and low spot values the default 'h:mm' format of the time output can be changed using output parameters.
As another example of inconsistency in how web tags added in different versions are coded, there are two web tags (highest minimum/lowest maximum temperatures) where a standard web tag is not provided by Cumulus (1 or MX) for the associated time-stamp. Consequently, for these 2 (and their corresponding tags in the this month group), there are mandatory output parameters required as shown in the table. Obviously Cumulus 1 lets you use "NN", "nn", "MM", or "mm" for the minutes, but minutes can only be represented in one way in Cumulus MX.


NB Year runs from roll-over time on 1 January for all web tags listed here
Remember that the Year-to-date runs from roll-over time on 1 January for all web tags listed here. Although, some web tags represent seasonal derivatives, i.e. where you define the month from which they start counting, this does not apply to any listed in this group.




Line 1,779: Line 1,831:
!style="width:150px"|Web tag_name
!style="width:150px"|Web tag_name
!style="width:300px"|Function
!style="width:300px"|Function
!style="width:150px"|Time
!style="width:350px"|Time
!style="width:150px"|Date
!style="width:150px"|Date
|-
|-
Line 1,846: Line 1,898:
|<#YearMinTempH>
|<#YearMinTempH>
|This years highest daily minimum temperature
|This years highest daily minimum temperature
|<#YearMinTempHD format=HH:nn> for Cumulus 1, <#YearMinTempHD format=HH:mm> for Cumulus MX
|Flavour specific mandatory output parameters:
* <#YearMinTempHD format=HH:nn> ''for Cumulus 1'',
* <#YearMinTempHD format=HH:mm> ''for Cumulus MX''
|<#YearMinTempHD>
|<#YearMinTempHD>
|-
|-
|<#YearMaxTempL>
|<#YearMaxTempL>
|This years lowest daily maximum temperature
|This years lowest daily maximum temperature
|<#YearMaxTempHD format=HH:nn> for Cumulus 1, <#YearMaxTempHD format=HH:mm> for Cumulus MX
|Flavour specific mandatory output parameters:
* <#YearMaxTempHD format=HH:nn> ''for Cumulus 1'',
* <#YearMaxTempHD format=HH:mm> ''for Cumulus MX''
 
|<#YearMaxTempLD>
|<#YearMaxTempLD>
|-
|-
Line 1,927: Line 1,984:


==All Time==
==All Time==
The web tags in the date/time column have the default format seen on "records.htm". So for an extreme month it just shows the month name in full i.e. format 'MMMM'. For an extreme day it shows the day of the month and the month name in full i.e. format "dd MMMM" (same for Cumulus 1 and Cumulus MX), prefixed with the word 'on'. For the highest/lowest within a day in the year it shows both time and date adding the word "at" before the time, and the word 'on' before the date.


You can change the default output using the [[#Time.2FDate_.27format.27_Parameter|formats features described above, but this can involve complicated use of single and double quotes and there are differences between Cumulus 1 and Cumulus MX.
The web tags in the date/time column have the default format as seen on "records.htm" in the standard web pages.
 
These are also available in the admin interface on "records.html" where they appear in the first tab, although the format used there is different and not able to be edited (any time is shown after the date).
 
*The default format for an extreme month is to show the month name in full i.e. format 'MMMM' followed by the year in full.
*For an extreme day it shows the day of the month and the month name in full i.e. format "dd MMMM" (same for Cumulus 1 and Cumulus MX), prefixed with the word 'on' again ending with the year.
*For the highest/lowest within a day in the year it shows both time and date adding the word "at" before the time, and the word 'on' before the date (i.e. on the standard web page the time comes first, not as seen in admin interface).
 
You can change the default output on either the standard web template, or in your own file,  by using the [[#Time.2FDate_.27format.27_Parameter|formats features described above, but this can involve complicated use of single and double quotes and there are differences between Cumulus 1 and Cumulus MX. Please see examples section above for advice.
 
Note that unlike the this month and this year web tags, the time and the date are both included in the default format of the standard time-stamp web tags for the 'highest minimum' and 'lowest maximum' temperatures, yet another inconsistency!


Note that unlike the monthly web tags, the time is included in the default format of the standard web tags for the 'highest minimum' and 'lowest maximum'.
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
!style="width:150px" | Web tag_name
!style="width:150px" | Web tag_name
!style="width:300px" | Function
!style="width:400px" | Function
!style="width:150px" | Date/Time
!style="width:150px" | Date/Time
|-
|-
Line 2,001: Line 2,066:
|-
|-
|<#wchillH>
|<#wchillH>
|All time greatest wind chill (i.e. lowest temperature)  
|All time greatest wind chill (i.e. lowest temperature, but highest wind speed)  
|<#TwchillH>
|<#TwchillH>
|-
|-
Line 2,057: Line 2,122:
==Monthly All Time Records==
==Monthly All Time Records==


There are a set of tags for monthly all-time highs and lows, in other words the highest and lowest values for a particular month of the year. For example, the highest ever temperature in July. Each Value tag has an optional input parameter "mon=N" where N is the index of the month of the year that you want the value for (January=1 and so on). For example, <#ByMonthTempH mon=7> will give you the highest ever temperature in July.  The corresponding date/time web tags are formatted like the all time records directly above this section.
There are a set of tags for monthly all-time highs and lows, in other words the highest and lowest values for a particular month of the year. To supply both optional input, and optional output parameters, separate them with spaces, e.g. <#ByMonthTempHT mon=7 format=hh:nn>. In that example,  the highest ever temperature in July is returned in the value after processing by Cumulus.


If you don't supply a parameter (or supply an invalid value) the current month will be used. You can customise the date and time formats using the 'format' parameter on the web tag. To supply both input and output parameters, separate them with spaces, e.g. <#ByMonthTempHT mon=7 format=hh:nn>
Each Monthly All Time Records web tag has an optional input parameter "mon=N" where N is the index of the month of the year that you want the value for (January=1 and so on).  The corresponding date/time web tags are formatted like the all time records directly above this section. You can customise the date and time formats using the output  'format' parameter on the web tag.
 
If you don't supply an input parameter (or supply an invalid value like zero) the current month will be used. This is useful if you want to write a template that will always supply values for the current month and don't want to use a script to enter the correct input parameter by processing with that script before Cumulus processes the template.




Line 2,065: Line 2,132:
|-
|-
!style="width:150px"|Web tag_name
!style="width:150px"|Web tag_name
!style="width:300px"|Function
!style="width:400px"|Function
!style="width:150px"|Date/Time
!style="width:150px"|Date/Time
|-
|-
Line 2,083: Line 2,150:
|-
|-
|<#ByMonthWChillL>
|<#ByMonthWChillL>
|Greatest wind chill (i.e. lowest temperature)
|Greatest wind chill (i.e. lowest temperature and highest wind speed)
|<#ByMonthWChillLT>
|<#ByMonthWChillLT>
|-
|-
Line 2,190: Line 2,257:
|-
|-
!style="width:150px" | Web tag_name
!style="width:150px" | Web tag_name
!style="width:600px" | Function
!style="width:900px" | Function
|-
|-
|<#sunrise>
|<#sunrise>
5,838

edits

Navigation menu