<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Function reference in Legacy - Engage Bot</title>
    <link>https://community.sinch.com/t5/Legacy-Engage-Bot/Function-reference/ta-p/19170</link>
    <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P class="text-align-justify"&gt;Functions are small autonomous programs that "take in" some data as parameters, process it and return a resulting value. You can use functions to compute values of the variables or to condition bot answers to create complex dialogue flows. Here you can find a reference of currently supported functions with examples for the use in conditions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;length($string$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the length of the&amp;nbsp; given&amp;nbsp;$string$.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&amp;nbsp;&lt;STRONG&gt;length ($pw$) == 8&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;the condition checks whether $pw$ consists of exactly 8 characters&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;substr ($string$, $start$, $length$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the part of a string $string$ defined by $start$ (integer) and $length (integer) parameters. $string$ can be of type "text", "word" or "number".&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;CODE&gt;substr ($profile_number$, 0, 2) == "49"&lt;/CODE&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if a user’s profile number starts with "49"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;round($number$, $precision$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;Returns the rounded value of $number$&amp;nbsp;to specified&amp;nbsp;$precision$&amp;nbsp;(number of digits after the decimal point).&amp;nbsp;$precision$&amp;nbsp;can also be negative or zero (default). If $precision$ is negative&amp;nbsp;the rounding will occur before the decimal point.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;round ($age$, 0)&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;=&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;18&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether rounded $age$ equals or is greater than 18&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;floor($number$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the next lowest integer value by rounding down $number$ if necessary.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;$number$ – floor($number$) == 0&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;the compound condition checks whether $number$ is an integer&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;ceil($number$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the next highest integer value by rounding up $number$.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/U&gt;&lt;STRONG&gt;ceil ($number$) == 1&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if $number$ rounded up is 1&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;abs($number$)&lt;/STRONG&gt;&amp;nbsp;&lt;/PRE&gt;
&lt;P&gt;Returns the absolute value of $number$.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;abs($number$)&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;lt; 10&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if absolute value of $number$ is smaller than 10&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;in_array($string$,$array$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Checks if $string$ is an element of the collection $array$ and returns 1 if true.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;&lt;U&gt;Example:&amp;nbsp;&lt;/U&gt;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;&lt;CODE&gt;in_array ("red", $preferred_colors$)&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if colour&amp;nbsp;“red“ is saved&amp;nbsp;in the collection $favourite_colors$&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;&lt;CODE&gt;preg_match("/$pattern$/", $string$)&lt;/CODE&gt;&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;Searches $string$&amp;nbsp;for a match to the regular expression $pattern$.&amp;nbsp;Returns 1 in case of a match and 0 in case of no match. Please make sure to embed the regular expression in "/ and /"&amp;nbsp; ("/$pattern$/").&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/U&gt;&lt;STRONG&gt;&lt;SPAN&gt;&lt;CODE&gt;preg_match("/^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{2,5}$/", $email$) == 1&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether&amp;nbsp;$email$ has a valid format&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H5&gt;&lt;FONT size="5"&gt;Temporal functions with example usage in conditions&lt;/FONT&gt;&lt;/H5&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;now()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns current&amp;nbsp;&lt;A href="https://www.unixtimestamp.com/" target="_blank" rel="noopener"&gt;Unix Timestamp&lt;/A&gt;&amp;nbsp;(number of seconds from 01. January 1970 00:00:00 UTC)&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;STRONG&gt;now() &amp;lt;= 1541526600&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if the timestamp of NOW&amp;nbsp;is smaller than (the timestamp of) 11/06/2018 5:50pm&amp;nbsp;(UTC)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;today()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;Returns Unix timestamp of 0 a.m.&amp;nbsp;of today’s date in the channel time zone (defined in channel settings) in seconds. A comparison with a date in the format DD.MM.YYYY or MM/DD/YYY is allowed in conditions.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;today() == 01.01.2026&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if it is 01.01.2026&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;now() – today ()&lt;/STRONG&gt;&amp;nbsp;&lt;/PRE&gt;
&lt;P&gt;Returns current time in the channel timezone in seconds.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;now() – today()&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;43200&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether it is forenoon&amp;nbsp;(12 hours in seconds = 43200)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;to_seconds($time$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;transforms $time$ inputted as hh:mm to seconds.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;CODE&gt;now()-today()&amp;nbsp;&amp;lt; to_seconds("12:00")&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether it is forenoon&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;yesterday()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;Returns timestamp of yesterday at the same time (computed as&amp;nbsp;now() – 24*3600).&amp;nbsp;A comparison with a date in the format DD.MM.YYYY or MM/DD/YYY is allowed in conditions.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;yesterday() == 31.12.2025&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether yesterday’s date was 31.12.2025&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;tomorrow()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns timestamp of tomorrow at the same time (computed as&amp;nbsp;now() +&amp;nbsp;24*3600).&amp;nbsp;A comparison with a date in the format DD.MM.YYYY or MM/DD/YYY is allowed in conditions.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;tomorrow() == 02.01.2025&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks tomorrow is&amp;nbsp;&lt;STRONG&gt;02.01.2025&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;weekday()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;returns current weekday&amp;nbsp;(1-7 for Monday-Sunday)&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;weekday() == 7&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks it if is Sunday today&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;month()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;returns current month&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;month() == 6&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if it is June&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;day()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns current day of the month&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;day() == 20&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;compound conditions checks if it is 20th June.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;unix_timestamp(time)&lt;/STRONG&gt;&amp;nbsp;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;The function expects to be given a string containing an English date format and will try to parse that format into a Unix timestamp (the number of seconds since January 1 1970 00:00:00 UTC)&lt;/P&gt;
&lt;P class="text-align-justify"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="text-align-justify"&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;time_format($format$, $timestamp$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns time formatted according to the string in $format$ using the given integer $timestamp$ or the current time if no timestamp is given.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The followings characters are recognized in the format parameter string:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2026-02-13 at 10.01.53.png" style="width: 999px;"&gt;&lt;img src="https://community.sinch.com/t5/image/serverpage/image-id/7024i9B2E12545E9B5425/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot 2026-02-13 at 10.01.53.png" alt="Screenshot 2026-02-13 at 10.01.53.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;CODE&gt;$time=(time_format("H:i"))$&lt;/CODE&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;here current time is in a format hh:mm is passed to the variable $time$ (type "text").&lt;/P&gt;
&lt;P&gt;Time_format() function is based on the php date() function. Please find its description and a comprehensive list of formatting options&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://www.php.net/manual/en/datetime.format.php" target="_blank" rel="noopener"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;/DIV&gt;</description>
    <pubDate>Thu, 19 Feb 2026 15:17:31 GMT</pubDate>
    <dc:creator>VishalSandhu</dc:creator>
    <dc:date>2026-02-19T15:17:31Z</dc:date>
    <item>
      <title>Function reference</title>
      <link>https://community.sinch.com/t5/Legacy-Engage-Bot/Function-reference/ta-p/19170</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P class="text-align-justify"&gt;Functions are small autonomous programs that "take in" some data as parameters, process it and return a resulting value. You can use functions to compute values of the variables or to condition bot answers to create complex dialogue flows. Here you can find a reference of currently supported functions with examples for the use in conditions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;length($string$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the length of the&amp;nbsp; given&amp;nbsp;$string$.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&amp;nbsp;&lt;STRONG&gt;length ($pw$) == 8&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;the condition checks whether $pw$ consists of exactly 8 characters&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;substr ($string$, $start$, $length$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the part of a string $string$ defined by $start$ (integer) and $length (integer) parameters. $string$ can be of type "text", "word" or "number".&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;CODE&gt;substr ($profile_number$, 0, 2) == "49"&lt;/CODE&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if a user’s profile number starts with "49"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;round($number$, $precision$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;Returns the rounded value of $number$&amp;nbsp;to specified&amp;nbsp;$precision$&amp;nbsp;(number of digits after the decimal point).&amp;nbsp;$precision$&amp;nbsp;can also be negative or zero (default). If $precision$ is negative&amp;nbsp;the rounding will occur before the decimal point.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;round ($age$, 0)&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;=&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;18&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether rounded $age$ equals or is greater than 18&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;floor($number$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the next lowest integer value by rounding down $number$ if necessary.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;$number$ – floor($number$) == 0&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;the compound condition checks whether $number$ is an integer&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;ceil($number$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns the next highest integer value by rounding up $number$.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/U&gt;&lt;STRONG&gt;ceil ($number$) == 1&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if $number$ rounded up is 1&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;abs($number$)&lt;/STRONG&gt;&amp;nbsp;&lt;/PRE&gt;
&lt;P&gt;Returns the absolute value of $number$.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;abs($number$)&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;lt; 10&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if absolute value of $number$ is smaller than 10&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;in_array($string$,$array$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Checks if $string$ is an element of the collection $array$ and returns 1 if true.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;&lt;U&gt;Example:&amp;nbsp;&lt;/U&gt;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;&lt;CODE&gt;in_array ("red", $preferred_colors$)&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if colour&amp;nbsp;“red“ is saved&amp;nbsp;in the collection $favourite_colors$&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;&lt;CODE&gt;preg_match("/$pattern$/", $string$)&lt;/CODE&gt;&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;Searches $string$&amp;nbsp;for a match to the regular expression $pattern$.&amp;nbsp;Returns 1 in case of a match and 0 in case of no match. Please make sure to embed the regular expression in "/ and /"&amp;nbsp; ("/$pattern$/").&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/U&gt;&lt;STRONG&gt;&lt;SPAN&gt;&lt;CODE&gt;preg_match("/^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{2,5}$/", $email$) == 1&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether&amp;nbsp;$email$ has a valid format&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H5&gt;&lt;FONT size="5"&gt;Temporal functions with example usage in conditions&lt;/FONT&gt;&lt;/H5&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;now()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns current&amp;nbsp;&lt;A href="https://www.unixtimestamp.com/" target="_blank" rel="noopener"&gt;Unix Timestamp&lt;/A&gt;&amp;nbsp;(number of seconds from 01. January 1970 00:00:00 UTC)&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;STRONG&gt;now() &amp;lt;= 1541526600&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if the timestamp of NOW&amp;nbsp;is smaller than (the timestamp of) 11/06/2018 5:50pm&amp;nbsp;(UTC)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;today()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;Returns Unix timestamp of 0 a.m.&amp;nbsp;of today’s date in the channel time zone (defined in channel settings) in seconds. A comparison with a date in the format DD.MM.YYYY or MM/DD/YYY is allowed in conditions.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;today() == 01.01.2026&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if it is 01.01.2026&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;now() – today ()&lt;/STRONG&gt;&amp;nbsp;&lt;/PRE&gt;
&lt;P&gt;Returns current time in the channel timezone in seconds.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;now() – today()&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;43200&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether it is forenoon&amp;nbsp;(12 hours in seconds = 43200)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;to_seconds($time$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;transforms $time$ inputted as hh:mm to seconds.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;CODE&gt;now()-today()&amp;nbsp;&amp;lt; to_seconds("12:00")&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether it is forenoon&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;yesterday()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;Returns timestamp of yesterday at the same time (computed as&amp;nbsp;now() – 24*3600).&amp;nbsp;A comparison with a date in the format DD.MM.YYYY or MM/DD/YYY is allowed in conditions.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;yesterday() == 31.12.2025&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks whether yesterday’s date was 31.12.2025&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;tomorrow()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns timestamp of tomorrow at the same time (computed as&amp;nbsp;now() +&amp;nbsp;24*3600).&amp;nbsp;A comparison with a date in the format DD.MM.YYYY or MM/DD/YYY is allowed in conditions.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;tomorrow() == 02.01.2025&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks tomorrow is&amp;nbsp;&lt;STRONG&gt;02.01.2025&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;weekday()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;returns current weekday&amp;nbsp;(1-7 for Monday-Sunday)&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;weekday() == 7&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks it if is Sunday today&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;month()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;returns current month&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;month() == 6&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;checks if it is June&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;day()&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns current day of the month&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;day() == 20&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;compound conditions checks if it is 20th June.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;unix_timestamp(time)&lt;/STRONG&gt;&amp;nbsp;&lt;/PRE&gt;
&lt;P class="text-align-justify"&gt;The function expects to be given a string containing an English date format and will try to parse that format into a Unix timestamp (the number of seconds since January 1 1970 00:00:00 UTC)&lt;/P&gt;
&lt;P class="text-align-justify"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="text-align-justify"&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;STRONG&gt;time_format($format$, $timestamp$)&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;P&gt;Returns time formatted according to the string in $format$ using the given integer $timestamp$ or the current time if no timestamp is given.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The followings characters are recognized in the format parameter string:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2026-02-13 at 10.01.53.png" style="width: 999px;"&gt;&lt;img src="https://community.sinch.com/t5/image/serverpage/image-id/7024i9B2E12545E9B5425/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot 2026-02-13 at 10.01.53.png" alt="Screenshot 2026-02-13 at 10.01.53.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;&lt;CODE&gt;$time=(time_format("H:i"))$&lt;/CODE&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;here current time is in a format hh:mm is passed to the variable $time$ (type "text").&lt;/P&gt;
&lt;P&gt;Time_format() function is based on the php date() function. Please find its description and a comprehensive list of formatting options&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://www.php.net/manual/en/datetime.format.php" target="_blank" rel="noopener"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Thu, 19 Feb 2026 15:17:31 GMT</pubDate>
      <guid>https://community.sinch.com/t5/Legacy-Engage-Bot/Function-reference/ta-p/19170</guid>
      <dc:creator>VishalSandhu</dc:creator>
      <dc:date>2026-02-19T15:17:31Z</dc:date>
    </item>
  </channel>
</rss>

