Тип: Число. Период времени в секундах, через который вызов локального уведомления повторяется. Чтобы уведомление было повторено, следует в явном виде указать время первого срабатывания. На платформе iOS, вследствие системных ограничений, невозможно установить произвольный интервал повтора. Переданные значения интерпретируются следующим образом: 1 – 60: повтор с интервалом в 1 минуту. 61 - 3600 (60 сек * 60 мин.): повтор с интервалом в 1 час. 3601 (60 сек. * 60 мин. +1 сек.) – 86400 (60 сек. * 60 мин. * 24 час.): повтор с интервалом в 1 сутки. 86401 (60 сек. * 60 мин. * 24 час. + 1 сек.) – 604800 (60 сек. * 60 мин. * 24 час. * 7 дн.): повтор с интервалом в 1 неделю. 604801 (60 сек. * 60 мин. * 24 час. * 7 дн.+ 1 сек.) – 2678400 (60 сек. * 60 мин. * 24 час. * 31 дн.): повтор с интервалом в 1 месяц (независимо от количества дней в месяце). 2678401 (60 сек. * 60 мин. * 24 час. * 31 дн. + 1 сек.) – 8035200 (60 сек. * 60 мин. * 24 час. * 31 дн. * 3 мес.): повтор с интервалом в 1 квартал (независимо от количества дней в месяце). Значение больше 8035200 (60 сек. * 60 мин. * 24 час. * 31 дн. * 3 мес.) определяет повтор с интервалом в 1 календарный год. На платформе Android значения 1-60 интерпретируются как 1 минута. На платформе Windows Phone интервал повтора должен укладываться в рамки от 60 до 3600 секунд. Уведомление будет отображено не более пяти раз. Не используется на устройствах под управлением ОС Аврора.
Полное описание, параметры и ограничения
ДоставляемоеУведомление.ИнтервалПовтора (DeliverableNotification.RepeatInterval)
ДоставляемоеУведомление (DeliverableNotification)
ИнтервалПовтора (RepeatInterval)
Доступен, начиная с версии 8.3.6.
Использование:
Чтение и запись.
Описание:
Тип: Число.
Период времени в секундах, через который вызов локального уведомления повторяется.
Чтобы уведомление было повторено, следует в явном виде указать время первого срабатывания.
На платформе iOS, вследствие системных ограничений, невозможно установить произвольный интервал повтора. Переданные значения интерпретируются следующим образом:
1 – 60: повтор с интервалом в 1 минуту.
61 - 3600 (60 сек * 60 мин.): повтор с интервалом в 1 час.
3601 (60 сек. * 60 мин. +1 сек.) – 86400 (60 сек. * 60 мин. * 24 час.): повтор с интервалом в 1 сутки.
86401 (60 сек. * 60 мин. * 24 час. + 1 сек.) – 604800 (60 сек. * 60 мин. * 24 час. * 7 дн.): повтор с интервалом в 1 неделю.
604801 (60 сек. * 60 мин. * 24 час. * 7 дн.+ 1 сек.) – 2678400 (60 сек. * 60 мин. * 24 час. * 31 дн.): повтор с интервалом в 1 месяц (независимо от количества дней в месяце).
2678401 (60 сек. * 60 мин. * 24 час. * 31 дн. + 1 сек.) – 8035200 (60 сек. * 60 мин. * 24 час. * 31 дн. * 3 мес.): повтор с интервалом в 1 квартал (независимо от количества дней в месяце).
Значение больше 8035200 (60 сек. * 60 мин. * 24 час. * 31 дн. * 3 мес.) определяет повтор с интервалом в 1 календарный год.
На платформе Android значения 1-60 интерпретируются как 1 минута.
На платформе Windows Phone интервал повтора должен укладываться в рамки от 60 до 3600 секунд. Уведомление будет отображено не более пяти раз.
Не используется на устройствах под управлением ОС Аврора.
Доступность:
Тонкий клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.3.6.
Описание изменено в версии 8.5.1.
Методическая информация
Практические примеры
Подготовить UTC-время и разобрать повтор уведомления по платформам
Будущая дата и интервал задаются только своему черновику. Интервал 90 секунд нельзя выдавать за точный 90-секундный повтор на iOS.
Где и как запускать
Полный серверный модуль своей конфигурации. Только собственный объект уведомления, без подписчиков и отправки.
Подготовка
Создайте в отдельной конфигурации УчебнаяКонфигурацияСинтаксиса серверный общий модуль УчебныеУведомления с флагом Сервер, вставьте полный модуль выбранного урока и вызовите ВыполнитьПример из собственной серверной команды.
Это подготовка объектов уведомления в памяти, не отправка push и не установка локального уведомления. Мобильное устройство, токены, разрешения и регистрация подписчика не требуются этому опыту.
Используется только новая собственная Книга и вымышленные данные заказа. Получатели остаются пустыми: код не читает идентификаторы настоящих подписчиков и не добавляет фиктивный токен.
Не добавляйте к этим примерам методы отправки или планирования: для них нужен отдельный контракт устройств, разрешений и собственных подписчиков.
Дата появления локального уведомления задаётся в UTC, не местным временем Москвы. ТекущаяУниверсальнаяДата вызывается на сервере, потому что функция недоступна в тонком клиенте.
Уроки сверены с установленной справкой 8.5.1.1343. Фактическое появление, звук, наклейка и доставка на устройстве не проверялись исполнением BSL.
Процедура ВыполнитьПример() Экспорт
Уведомление = Новый ДоставляемоеУведомление;
Уведомление.Заголовок = "Учебный заказ Книга";
Уведомление.Текст = "Книга: 3 шт. по 250, итого 750. Это собственный черновик.";
Уведомление.Наклейка = 1;
СейчасUTC = ТекущаяУниверсальнаяДата();
Уведомление.ДатаПоявленияУниверсальноеВремя = СейчасUTC + 10 * 60;
Уведомление.ИнтервалПовтора = 90;
Сообщить(Уведомление.ДатаПоявленияУниверсальноеВремя - СейчасUTC = 600);
Сообщить(Уведомление.ДатаПоявленияУниверсальноеВремя > СейчасUTC);
Сообщить(Уведомление.ИнтервалПовтора = 90);
Сообщить("По справке 8.5.1 интервал 90 секунд на iOS относится к диапазону 61…3600 и интерпретируется как 1 час");
Уведомление.ИнтервалПовтора = 3600;
Сообщить(Уведомление.ИнтервалПовтора = 3600);
Сообщить(Уведомление.Получатели.Количество() = 0);
Сообщить("Будущее UTC-время своего черновика: " + Строка(Уведомление.ДатаПоявленияУниверсальноеВремя));
Сообщить("Свой черновик не установлен и не отправлен");
КонецПроцедурыРазбор по шагам
На сервере один раз получить универсальную дату компьютера и сохранить исходную точку отсчёта.
Задать время первого появления на 600 секунд позже. Не прибавлять время Москвы к уже универсальной дате.
Записать 90 секунд и проверить именно значение свойства в памяти.
Свериться с платформенной справкой: на iOS 61…3600 интерпретируются как час; на Android 1…60 интерпретируются как минута.
Поставить 3600 только в черновике. Прочитать сохранённую дату и пустую коллекцию адресатов, не вызывать планирование.
Как проверить результат
Пять булевых сообщений Истина: разница 600 секунд, будущая дата, значения 90 и 3600 и отсутствие получателей.
Повтор и доставка не тестировались на устройстве; код не создал локальное расписание.
Ожидаемый результат
Подробный опыт работы с UTC и свойством повтора без обещания несуществующей платформенной точности.
На что обратить внимание
Не подменяйте UTC локальной датой компьютера или пользовательского часового пояса.
Фактические ограничения ОС и состояние приложения могут влиять на доставку: установка числа не является гарантией времени появления.
На Авроре свойства даты появления и интервала повтора по справке не используются.
Время первого срабатывания должно быть явно задано для повтора; пустая или прошедшая дата имеет другой контракт.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Подготовить заголовок и текст уведомления, не отправляя его
Заголовок, текст и наклейка доступны для записи. Получатели и звуковое оповещение — readonly-свойства; наличие черновика не означает доставку.
Где и как запускать
Полный серверный модуль своей конфигурации. Только собственный объект уведомления, без подписчиков и отправки.
Подготовка
Создайте в отдельной конфигурации УчебнаяКонфигурацияСинтаксиса серверный общий модуль УчебныеУведомления с флагом Сервер, вставьте полный модуль выбранного урока и вызовите ВыполнитьПример из собственной серверной команды.
Это подготовка объектов уведомления в памяти, не отправка push и не установка локального уведомления. Мобильное устройство, токены, разрешения и регистрация подписчика не требуются этому опыту.
Используется только новая собственная Книга и вымышленные данные заказа. Получатели остаются пустыми: код не читает идентификаторы настоящих подписчиков и не добавляет фиктивный токен.
Не добавляйте к этим примерам методы отправки или планирования: для них нужен отдельный контракт устройств, разрешений и собственных подписчиков.
Дата появления локального уведомления задаётся в UTC, не местным временем Москвы. ТекущаяУниверсальнаяДата вызывается на сервере, потому что функция недоступна в тонком клиенте.
Уроки сверены с установленной справкой 8.5.1.1343. Фактическое появление, звук, наклейка и доставка на устройстве не проверялись исполнением BSL.
Процедура ВыполнитьПример() Экспорт
Уведомление = Новый ДоставляемоеУведомление;
Уведомление.Заголовок = "Учебный заказ Книга";
Уведомление.Текст = "Книга: 3 шт. по 250, итого 750. Это собственный черновик.";
Уведомление.Наклейка = 1;
Уведомление.Данные = "lesson-order:BOOK-OWN:3";
Уведомление.ИнтервалПовтора = 0;
Уведомление.ДатаПоявленияУниверсальноеВремя = Дата(1, 1, 1);
Сообщить(Уведомление.Заголовок = "Учебный заказ Книга");
Сообщить(СтрНайти(Уведомление.Текст, "750") > 0);
Сообщить(Уведомление.Наклейка = 1);
Сообщить(Уведомление.Данные = "lesson-order:BOOK-OWN:3");
Сообщить(Уведомление.Получатели.Количество() = 0);
Сообщить(Уведомление.ИнтервалПовтора = 0);
Сообщить(Уведомление.ДатаПоявленияУниверсальноеВремя = Дата(1, 1, 1));
ТипЗвука = ТипЗнч(Уведомление.ЗвуковоеОповещение);
Сообщить(ТипЗвука = Тип("ЗвуковоеОповещение") ИЛИ ТипЗвука = Тип("Строка"));
Сообщить("Собственный черновик не передан менеджеру уведомлений");
КонецПроцедурыРазбор по шагам
Создать новый объект, задать собственные заголовок, текст и число наклейки.
Добавить собственную короткую строку Данные и явно задать интервал и пустую UTC-дату только в памяти.
Проверить пустую коллекцию получателей, не присваивать ей другой массив и не создавать фиктивные идентификаторы подписчиков.
Прочитать тип ЗвуковоеОповещение без присваивания readonly-свойству.
Разобрать предупреждение справки: при настоящей установке локального уведомления пустая дата означает немедленное появление. Здесь метод установки не вызывается.
Как проверить результат
Восемь булевых сообщений Истина; все данные относятся к собственному новому объекту.
Не появляется системное уведомление, не воспроизводится звук и не меняется значок приложения.
Ожидаемый результат
Есть самостоятельная подготовка черновика с проверкой всех восьми свойств и без опасного немедленного планирования.
На что обратить внимание
Данные не отображаются в уведомлении, но это не делает их зашифрованными или безопасными для хранения секретов.
Наклейка не означает количество реально доставленных уведомлений; смысл отличается по платформам.
Не присваивайте ЗвуковоеОповещение: установленная справка помечает свойство только для чтения.
Пустая или прошедшая UTC-дата при реальном локальном планировании ведёт к показу без задержки, а повтор при этом не выполняется.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.