ym88659208ym87991671
Обработка даты и времени для смартапов | Документация для разработчиков

Обработка даты и времени в Graph

Обновлено 15 декабря 2023

$DATETIME — системная сущность, которая хранит данные о дате и времени.

Сущность принимает следующие форматы даты и времени:

  • дата — 15 декабря, 15.12, 15 декабря 2021 или 15.12 2021;
  • время — 12:45, 12 45 и 12 часов 45 минут.

Примеры данных, в зависимости от формата даты и времени:

  • 20 декабря 2019 12:45

    {
    "year": 2019,
    "month": 12,
    "day": 20,
    "hour": 12,
    "minute": 45
    }
  • 20 декабря 2019 или 20.12 2019

    {
    "year": 2019,
    "month": 12,
    "day": 20
    }
  • 12 часов 45 минут12:45 или 12 45

    {
    "hour": 12,
    "minute": 45
    }

Сущность $DATETIME принимает как абсолютные значения времени (20 июня, 20.06), так и относительные (сегодня, вчера, завтра, через 4 дня). При этом, сама системная сущность не имеет информации о том, какая сегодня дата и какое сейчас время:

  • сегодня

    {
    "day": 0
    }
  • позавчера в три

    {
    "day": -2,
    "hour": 3
    }
  • через две недели в пять часов вечера

    {
    "day": 14,
    "hour": 17,
    "period": "pm"
    }

Значения времени можно также принимать с помощью собственных сущностей.

Сущность $DATETIME можно использовать в сценарии совместно с сервисом для проверки текущей даты и времени.

Добавление $DATETIME в сценарий

Чтобы использовать системную сущность $DATETIME, добавьте на экран готовый интент Дата и время.

Интент принимает такие форматы даты и времени, как 15.05, 20 декабря, 12:00 и другие.

Для получения даты и времени среди других слов, добавьте к интенту синтаксис шаблонов со значением $DATETIME.

Пример сценария для тестирования:

Пример тестового сценария

Если введенные данные не попадают в $DATETIME, то смартап будет возвращаться на экран Ввод даты. В противном случае, полученный смартап выведет данные сущности $DATETIME и только после этого вернется на экран Ввод даты.

Сущность $DATETIME принимает как абсолютные значения времени (20 июня, 20.06), так и относительные (сегодня, вчера, завтра, через 4 дня). При этом, сама системная сущность не имеет информации о том, какая сегодня дата и какое сейчас время.

Получение даты и времени

Для получения даты, хранящейся в сущности $DATETIME, используйте следующий синтаксис:

$DATETIME.day

Для получения времени, хранящегося в сущности $DATETIME используйте следующий синтаксис:

$DATETIME.hour
$DATETIME.minute
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.