Weather Notify
Weather Notify is different! You set the rules and get a notification when the condition you defined is met.
For example you can get an alert when the temperature in all of your monitored locations rises or you can define a rule that notifies you when there is rain fall in one of your locations. Included is a rule wizard to quickly set up common rules. You can also define more complex rules using a simple to grasp expression syntax.
Weather Notify supports up to 6 locations and weather parameters temperature, pressure, humidity, precipitation, wind speed, wind direction, cloud cover and more. You can define up to 8 rules.
Weather data is provided by APIXU.
Quick Start
Define the locations you are interested in.
Set up one or more rules. You can close the app now.
In the background your rules will be checked and you will get a notification when a rule evaluates to true.
Rule Examples
// Notify me when the
// temperature in location 1 is more than 20
t > 20 # temperature exceeded 20 degrees
// Notify me when the
// temperature in location 1 has risen
t > tp
// Notify me when the
// weather in location 1 and location 2 is sunny
(w1 = 113) and (w2 = 113)
// Notify me when there is rain
// in at least one of the observed locations
(r1 > 0) or (r2 > 0) or (r3 > 0)
Expression Wizard
With the expression wizard you can easily create a wide variety of standard expressions without needing to type according to the syntactic rules. You can continue to edit the expression in the expression field but be aware that the wizard view will not be changed.
Setting the units
In the Settings application you can also choose whether you want to use degree Celsius or degree Fahrenheit for temperature measurements. You can also choose km/h respectively mph for the wind speed.
Syntax of rule expression
The following syntax is supported.
// Regular integers or floating point numbers
Number = [ "0" .. "9" ]+ [ "." [ "0" .. "9" ]+ ]
// Variables for various weather parameters
// t temperature in degree Celsius or Fahrenheit
// h humidity in percent
// c cloud cover in percent
// v visibility in km or mi
// p pressure in mb
// r precipitation in mm
// d wind direction in degree
// s wind speed in km/h or mph
// w weather code - see below for possible values
// o number of minutes between the observation and
// the 1-Jan-2001 12:00 am GMT
// 1 .. 6 location specifier, 1 is assumed if missing
// p at the end specifies previous condition
Variable = ( "t" | "h" | "c" | "p" | "r" | "d" | "s" | "w" )
[ 1 .. 6 ] [ "p" | "n" ]
// Regular syntax for arithmetic expressions with comparison
Factor = Number | Variable | "(" Expression ")" |
( "!" | "not" ) Factor |
Function [ "(" Expression [ "," Expression ]* ")" ]
Function = "min" | "mins" | "max" | "maxs" | "abs"
Term = Factor [ ( "and" | "&" | "*" | "/" | "%" ) Factor ]*
SimpleExpression = [ "*" | "-" ] Term
| [ ( "|" | "or" | "+" | "-" ) Term ]*
Expression = SimpleExpression
[ ( "<" | "<=" | "<>" | ">" | ">=" | "!=" | '=' )
SimpleExpression ]
Rule = Expression [ '#' { any character }* ]
The string after the optional # character is a comment which is shown as the alert body in case the expression evaluates to Yes while the application is in the background and an alert is generated.
Built-in functions
The following functions are supported
Function | Description |
---|---|
min | Determines the minimum of the arguments (one or many). Parameters with undefined values are ignored. |
mins | Determines the minimum of the arguments (one or many). If a parameter has an undefined value, the result is undefined. |
max | Determines the maximum of the arguments (one or many). Parameters with undefined values are ignored. |
maxs | Determines the maximum of the arguments (one or many). If a parameter has an undefined value, the result is undefined. |
abs | Determines the absolute value of the parameter. |
Tips and Tricks
This app relies on the iOS background load feature to create the notifications. Therefore you need to make sure that Background App Refresh is enabled for Weather Notify in the Preferences application. Additionally you need to use the app sufficiently often so that weather conditions checks are regularly performed in the background. You can check whether this is happening by enabling logging in the Preferences application. After a while you should see periodic entries in the log which you can display with the Show Log button.
Weather Data Provider
In order to have guaranteed service you should sign up at weatherstack to obtain your personal API key which you can paste into the API Key field of Weather Notify in the Settings application.
Disclaimer
Please note that there is no guarantee regarding the accuracy of the provided weather data. There is also no guarantee that a notification can be created in all circumstances. Also note that the Weather Data Provider may change at any time change the terms and conditions for the data access which may negatively impact this app.
Supported Weather Codes
Code | Description |
---|---|
113 | Clear/Sunny |
116 | Partly Cloudy |
119 | Cloudy |
122 | Overcast |
143 | Mist |
176 | Patchy rain nearby |
179 | Patchy snow nearby |
182 | Patchy sleet nearby |
185 | Patchy freezing drizzle nearby |
200 | Thundery outbreaks in nearby |
227 | Blowing snow |
230 | Blizzard |
248 | Fog |
260 | Freezing fog |
263 | Patchy light drizzle |
266 | Light drizzle |
281 | Freezing drizzle |
284 | Heavy freezing drizzle |
293 | Patchy light rain |
296 | Light rain |
299 | Moderate rain at times |
302 | Moderate rain |
305 | Heavy rain at times |
308 | Heavy rain |
311 | Light freezing rain |
314 | Moderate or Heavy freezing rain |
317 | Light sleet |
320 | Moderate or heavy sleet |
323 | Patchy light snow |
326 | Light snow |
329 | Patchy moderate snow |
332 | Moderate snow |
335 | Patchy heavy snow |
338 | Heavy snow |
350 | Ice pellets |
353 | Light rain shower |
356 | Moderate or heavy rain shower |
359 | Torrential rain shower |
362 | Light sleet showers |
365 | Moderate or heavy sleet showers |
368 | Light snow showers |
371 | Moderate or heavy snow showers |
374 | Light showers of ice pellets |
377 | Moderate or heavy showers of ice pellets |
386 | Patchy light rain in area with thunder |
389 | Moderate or heavy rain in area with thunder |
392 | Patchy light snow in area with thunder |
395 | Moderate or heavy snow in area with thunder |