Работа со временем, датами и планировщиком
Функции для работы со временем
В большинстве функций, связанных с обработкой времени, на входе или выходе используется структура DateTimeOffset
.
В системе она имеет флаг Read Only.
Это означает, что при проектировании сценариев создание объекта DateTimeOffset
с помощью функции MakeStruct
не поддерживается.
Для получения корректного значения используйте функции-конвертеры, например:
ParseDateTime, Now, ConvertFromUnixTimeSeconds и другие, выдающие готовый DateTimeOffset
.
Now
Описание: Возвращает текущее системное время
Outputs
Название | Тип | Описание |
---|---|---|
Result | Struct: DateTimeOffset | Возвращает текущее системное время |
UTCNow
Описание: Возвращает текущее время по UTC
Outputs
Название | Тип | Описание |
---|---|---|
Result | Struct: DateTimeOffset | Возвращает текущее время по UTC |
DateRangeToNow
Описание: Функция возвращает структуру DateRange
, свойства которой вычисляются исходя из текущего времени и заданного пользователем значения.
Например, "Последние 1 день 1 час 1 минута 1 секунда":
"StartDate": "2022-08-23T10:13:08.6904588+00:00",
"EndDate": "2022-08-24T11:14:09.6904695+00:00"
Inputs
Название | Тип | Описание |
---|---|---|
Days | Integer | N последних дней |
Hours | Integer | N последних часов |
Minutes | Integer | N последних минут |
Seconds | Integer | N последних секунд |
Outputs
Название | Тип | Описание |
---|---|---|
DateRange | DateRange | Диапазон дат от указанного времени в Input до текущего времени |
ParseDateTime
Описание: Принимает на вход строковое значение, содержащее дату в каком-либо формате, и преобразует данное значение в формат DateTimeOffset
.
- По умолчанию поддерживает большинство форматов даты
- В случае, если функция не может преобразовать исходное значение, необходимо воспользоваться полем
Format
и задать необходимую маску - В случае невозможности преобразовать значение - сценарий завершится с ошибкой
Inputs
Название | Тип | Описание |
---|---|---|
DateTime | Specific:String (Single) | Дата, в строковом представлении |
Format | Specific:String (Single) | Указание строгого формата, по которому функция будет преобразовывать входящую дату |
Outputs
Название | Тип | Описание |
---|---|---|
DateTimeOffset | Specific:DateTimeOffset (Single) | Возвращает преобразованное значение даты |
TryParseDateTime
Описание: Принимает на вход строковое значение, содержащее дату в каком-либо формате, и преобразует данное значение в формат DateTimeOffset
.
В отличии от функции ParseDateTime функция предполагает передачу в нее управления.
- Если функция не может распарсить значение, активируется последовательность Failed
- В остальном функция аналогична ParseDateTime
Inputs
Название | Тип | Описание |
---|---|---|
In | Общие параметры для функций | |
DateTime | Specific:String (Single) | Дата, в строковом представлении |
Format | Specific:String (Single) | Указание строгого формата, по которому функция будет преобразовывать входящую дату |
Outputs
Название | Тип | Описание |
---|---|---|
Ok, Failed | Общие параметры для функций | |
DateTimeOffset | Specific:DateTimeOffset (Single) | Возвращает преобразованное значение даты |
Error | Specific:String (Single) | Текст ошибки преобразования, с указанием исходного значения, которое не удалось преобразовать. |
ConvertToMilliseconds
Описание: Функция принимает числовые значения дней, часов, минут, секунд и преобразует их в миллисекунды
Inputs
Название | Тип | Описание |
---|---|---|
Days | Integer | N дней |
Hours | Integer | N часов |
Minutes | Integer | N минут |
Seconds | Integer | N секунд |
Outputs
Название | Тип | Описание |
---|---|---|
Result | Integer64 (Single) | Значение времени в миллисекундах |
ConvertFromUnixTimeMilliseconds
Описание: Функция принимает на вход числовое значение в миллисекундах и преобразует его в формат DateTimeOffset
Inputs
Название | Тип | Описание |
---|---|---|
Milliseconds | Integer64 (Single) | Значение времени в миллисекундах |
Outputs
Название | Тип | Описание |
---|---|---|
DateTime | Struct: DateTimeOffset (Single) | Возвращает преобразованное значение даты |
ConvertFromUnixTimeSeconds
Описание: Функция принимает на вход числовое значение в секундах и преобразует его в формат DateTimeOffset
Inputs
Название | Тип | Описание |
---|---|---|
Seconds | Integer64 (Single) | Значение времени в секундах |
Outputs
Название | Тип | Описание |
---|---|---|
DateTime | Struct: DateTimeOffset (Single) | Возвращает преобразованное значение даты |
ConvertToUnixTimeMilliseconds
Описание: Функция принимает на вход значение даты в формате DateTimeOffset
и преобразует его в миллисекунды
Inputs
Название | Тип | Описание |
---|---|---|
DateTime | Struct: DateTimeOffset (Single) | Значение даты в формате DateTimeOffset |
Outputs
Название | Тип | Описание |
---|---|---|
Milliseconds | Integer64 (Single) | Значение времени в миллисекундах |
ConvertToUnixTimeSeconds
Описание: Функция принимает на вход значение даты в формате DateTimeOffset
и преобразует его в секунды
Inputs
Название | Тип | Описание |
---|---|---|
DateTime | Struct: DateTimeOffset (Single) | Значение даты в формате DateTimeOffset |
Outputs
Название | Тип | Описание |
---|---|---|
Seconds | Integer64 (Single) | Значение времени в секундах |
Функции планировщика запуска сценариев
CreateSchedule
Описание: Функция позволяет создать разовый запуск или расписание запусков текущего сценария
Inputs
Название | Тип | Описание |
---|---|---|
In, BearerToken | Общие параметры для функций | |
Description | String | Описание запуска |
TimeZone | String | Указание часового пояса в определенном формате. Если не указано - запуск будет произведен согласно серверному времени пространства. Пример формата: Europe/Moscow |
StartLaunchAt | DateTimeOffset | Дата первого запуска сценария |
EndLaunchAt | DateTimeOffset | Дата, до которого длится расписание запуска |
DelayTime | Integer64 | Время (в миллисекундах), через которое будет выполнен запуск сценария по планировщику, без необходимости указывать дату StartLaunchAt |
Cron | String | Расписание запуска в CRON-формате. Если не задано будет произведен разовый запуск |
Body | Wildcard(any struct, dynamic array, dynamic single) | Тело события, с которым будет произведен запуск сценария |
Outputs
Название | Тип | Описание |
---|---|---|
Ok, Failed, Response | Общие параметры для функций | |
Schedule | Struct:Schedule | Модель созданного запланированного запуска/расписания запусков |