Date and Time
All Enapter UCMs synchronize the time either with Enapter Cloud or with Enapter Gateway depending on your setup. Normally you could expect less than a second difference with the global time.
os.date
-- @param format string
-- @param time number
-- @return string|table
function os.date(format, time) end
Returns a string or a table containing date and time, formatted according
to the given string format
.
If the time
argument is present, this is the time to be formatted (see
the os.time
function for a description of this value). Otherwise,
date
formats the current time.
If format
starts with !
, then the date is formatted in Coordinated
Universal Time. After this optional character, if format
is the string
"*t"
, then date
returns a table with the following fields:
year
(four digits)month
(1–12)day
(1-31)hour
(0-23)min
(0-59)sec
(0-61), due to leap secondswday
(weekday, 1–7, Sunday is 1)yday
(day of the year, 1–366)isdst
(daylight saving flag, a boolean). This last field may be absent if the information is not available.
If format
is not "*t"
, then date
returns the date as a string,
formatted according to the same rules as the ISO C function strftime
.
When called without arguments, date
returns a reasonable date and time
representation that depends on the host system and on the current locale.
(More specifically, os.date()
is equivalent to os.date("%c")
.)
os.time
-- @param table table Table in the same format as returned by os.date
-- @return number
function os.time(table) end
Returns the current time when called without arguments, or a time
representing the date and time specified by the given table. This table
must have fields year
, month
, and day
, and may have fields hour
(default is 12), min
(default is 0), sec
(default is 0), and isdst
(default is nil). Other fields are ignored. For a description of these
fields, see the os.date
function.
When the function is called, the values in these fields do not need to be
inside their valid ranges. For instance, if sec
is -10, it means 10 seconds
before the time specified by the other fields; if hour
is 1000, it means
1000 hours after the time specified by the other fields.
The returned value is a number of seconds since UNIX epoch start time (UNIX timestamp).
When called with a table, os.time
also normalizes all the fields
documented in the os.date
function, so that they represent the same time
as before the call but with values inside their valid ranges.