# Difference between revisions of "Functions"

Jump to: navigation, search

## Boolean

bool()
//todo
boolean(anything)
converts a value to it's boolean value
contains(string, substring)
returns true if a string contains a substring
endsWith(string, substring)
returns true if a string ends with a substring
eq(value1, value2)
returns true if two values are equal
ge(value1, value2)
returns true if value1 >= value2
gt(value1, value2)
returns true if value1 > value2
isBetween(value, startValue, endValue)
returns true if value >= startValue and value <= endValue
isEmpty(value)
returns true if the value is empty
le(value1, value2)
returns true if value1 <= value2
lt(value1, value2)
returns true if value1 < value2
not(value)
returns the negative boolean value
startsWith(string, substring)
returns true if a string starts with a substring

## Date

date(value)
returns the value as a date type

## datetime

addDays(dateTime, days)
returns the value as a time type
addHours(dateTime, hours)
returns the value as a time type
addMinutes(dateTime, minutes)
returns the value as a time type
addSeconds(dateTime, seconds)
returns the value as a time type
addWeeks(dateTime, weeks)
returns the value as a time type

## Decimal

avg(values)
calculates the average of a series of numeric values
ceil()
//todo
ceiling(decimal or string)
converts a decimal value to it's closest higher integer value
celsius(temperature)
converts temperature from Fahrenheit to Celsius
decimal(integer or string)
converts an integer value to it's decimal value
dewPoint(temperature, relativeHumidity[, scale])
returns the calculated dew point temperature
fahrenheit([Sensor;temperature])
converts temperature from Celsius to Fahrenheit
float()
//todo
floor(decimal or string)
converts a decimal value to it's closest lower integer value
max(values)
calculates the maximum of a series of numeric values
median(values)
returns the value in the middle of a sorted array
min(values)
calculates the minimum of a series of numeric values
number()
//todo
power(integer or decimal or string, power)
converts a decimal value to it's power decimal value
round(decimal or string, [precision])
converts a decimal value to it's rounded value
sqr(integer or decimal or string)
converts a decimal value to it's square decimal value
sqrt(integer or decimal or string)
converts a decimal value to it's square root decimal value
stdev(values)
calculates the standard deviation of a series of numeric values
sum(values)
calculates the sum of a series of numeric values
variance(values)
calculates the standard deviation of a series of numeric values

## Dynamic

if(condition, valueIfTrue, valueIfFalse)
evaluates a boolean and returns value1 if true, or value2 otherwise
least(values)
returns the value that is least found a series of numeric values
most(values)
returns the value that is most found a series of numeric values
previousValue([device;attribute])
returns the previous value of the attribute

## Integers

age([device;attribute])
returns the number of milliseconds an attribute had the current value
count(values)
calculates the number of true/non-zero/non-empty items in a series of numeric values
int()
//todo
integer(decimal or string)
converts a decimal value to it's integer value
newer([device;attribute],[...], [device;attribute], threshold)
returns the number of devices whose attribute had the current value for less than the specified number of milliseconds
older([device;attribute],[...], [device;attribute], threshold)
returns the number of devices whose attribute had the current value for more than the specified number of milliseconds
previousAge([device;attribute])
returns the number of milliseconds an attribute had the previous value

## String

concat(string1, string2)
returns two strings appended together
format()
//todo
left(string, count)
returns a substring of a value
lower(string)
returns a lower case value of a string
mid(string, start, count)
returns a substring of a value
replace(string, search, replace[, [..], search, replace])
replaces a search text inside of a value
right(string, count)
returns a substring of a value
sprintf(format, arguments)
formats a series of values into a string
string(anything)
converts a value to it's string value
substring(string, start, count)
returns a substring of a value
text()
//todo
title(string)
returns a title case value of a string
upper(string)
returns an upper case value of a string

## Time

time(value)
returns the value as a time type