Уведомления из 1С на почту, SMS, в Telegram и на экран: от напоминания до триггера на событие

· 11 мин

Содержание

Простое оповещение в 1С настраивается без программиста: напоминание пользователю ставится прямо из карточки документа или задачи, а отчёт по расписанию уходит на почту через «Рассылки отчётов» после того, как в разделе Администрирование → Органайзер подключена учётная запись электронной почты. Уведомления о событиях («заказ проведён», «остаток ниже нормы») в Telegram, SMS или на экран другого пользователя — это уже доработка: подписка на событие плюс обработчик в общем модуле, лучше в расширении.

Типичная ситуация: директор хочет каждое утро видеть на почте остатки денег, а менеджер — сразу узнавать, что клиент оплатил счёт. Первое закрывается штатно за 15 минут. Второе требует пары процедур кода. Ниже оба пути и всё, что между ними.

Какие оповещения в 1С есть «из коробки»

Почти все типовые конфигурации на платформе 8.3 (Бухгалтерия 3.0, ЗУП 3.1, УТ 11, КА, ERP, УНФ) построены на Библиотеке стандартных подсистем. Оттуда они получают одинаковый набор механизмов уведомлений.

МеханизмЧто умеетКому приходитНужен программист
🔔 Напоминания пользователяВсплывающее окно в заданное времяСамому пользователю в 1СНет
📊 Рассылки отчётовОтчёт по расписанию в файле или теле письмаЛюбому адресу email, в папку, на FTPНет
✉️ Почта (Взаимодействия)Письма контрагентам из карточки документаВнешним адресатамНет
💬 ОбсужденияЧат и сообщения внутри 1СПользователям базыНет
📱 SMSОтправка через провайдераТелефонам клиентов и сотрудниковНет, если провайдер есть в списке
⚙️ Свои уведомленияЛюбой канал по любому событиюКому угодноДа

Набор флажков в разделе Администрирование → Органайзер зависит от конфигурации. Там включают почту, заметки и напоминания пользователя. Если флажок «Напоминания пользователя» выключен, команд «Напомнить» в формах не будет.

Напоминания пользователя

Это самый быстрый способ «не забыть». Напоминание привязывают к конкретному объекту или времени:

  1. Откройте документ, задачу или карточку, о которой нужно напомнить.
  2. В командной панели найдите команду напоминания (обычно в меню Ещё).
  3. Укажите время срабатывания или интервал до события. Для повторяющихся напоминаний задайте расписание.
  4. Сохраните. В нужный момент 1С покажет окно со ссылкой на объект.

Напоминание видит только тот, кто его создал. Оно срабатывает, пока открыт сеанс 1С: если программа закрыта, окно появится при следующем входе.

Всплывающие оповещения платформы

Сообщения в правом нижнем углу («Документ записан», «Обмен завершён») выводит сама платформа. Программист вызывает их методом ПоказатьОповещениеПользователя. Работает он только на клиенте и только для текущего пользователя: «показать окно коллеге» этим методом нельзя.

Как настроить отправку оповещений на email

Почтовые оповещения в 1С — самый надёжный штатный канал. Настройка состоит из двух частей: учётная запись и рассылка.

Шаг 1. Учётная запись электронной почты

  1. Откройте Администрирование → Органайзер, включите флажок «Почта» (если его нет в вашей конфигурации, учётные записи доступны сразу).
  2. Перейдите в «Учётные записи электронной почты» и создайте новую.
  3. Введите адрес и пароль. Программа сама попробует подобрать серверы для популярных почтовых служб.
  4. Если не подобрала, укажите вручную: SMTP-сервер, порт и способ шифрования.
  5. Нажмите проверку настроек и дождитесь сообщения об успешной отправке.

Яндекс, Mail.ru и Gmail не принимают обычный пароль от ящика для внешних программ. Создайте в настройках почтового сервиса «пароль приложения» и введите его в 1С.

Типовые порты SMTP:

ПортШифрованиеКогда использовать
465SSL/TLS сразуЯндекс, Mail.ru, большинство хостингов
587STARTTLSGmail, корпоративные Exchange и Postfix
25Без шифрованияТолько внутренний сервер в локальной сети

💡 Заведите для оповещений отдельный ящик вида 1c-noreply@ваша-компания.ru. Тогда письма из 1С не смешаются с личной перепиской, а смена пароля сотрудником не остановит рассылку.

Шаг 2. Рассылка отчёта по расписанию

  1. Откройте нужный отчёт и сформируйте его с нужными отборами.
  2. В командах формы отчёта найдите создание рассылки (в меню Ещё или рядом с кнопкой отправки).
  3. На вкладке получателей укажите адреса или группу пользователей.
  4. На вкладке доставки выберите формат: вложение XLSX, PDF или HTML в теле письма.
  5. Включите расписание: например, по рабочим дням в 8:00.
  6. Отметьте опцию, которая запрещает отправку пустого отчёта, если она есть в форме.

Одной рассылкой можно отправить несколько отчётов. Например, «Остатки денежных средств» и «Дебиторскую задолженность» одним письмом.

Рассылка по расписанию работает через регламентные задания. В файловой базе они выполняются только пока хотя бы один пользователь держит 1С открытой. На сервере 1С задания идут сами, но их не должна блокировать опция запрета регламентных заданий в свойствах информационной базы.

SMS-оповещения через провайдера

В УТ 11, КА, ERP и УНФ есть подсистема отправки SMS. Схема везде одна: 1С передаёт текст провайдеру по интернету, провайдер доставляет SMS на телефон.

Что понадобится:

  • 📝 договор с SMS-провайдером, который есть в списке настроек вашей конфигурации;
  • 🔑 логин и пароль (или ключ API) из личного кабинета провайдера;
  • 🏷️ согласованное имя отправителя: без него SMS придут с цифрового номера или не придут вовсе.

Настройки отправки SMS находятся в том же разделе Администрирование → Органайзер. После этого в карточках партнёров, заказах и рассылках появляются команды отправки SMS.

Ориентир по стоимости: примерно 3–6 ₽ за сообщение в зависимости от провайдера и объёма, плюс ежемесячная плата за имя отправителя у некоторых операторов. Длинное сообщение кириллицей (больше 70 символов) тарифицируется как несколько SMS.

Массовые SMS клиентам — это обработка персональных данных и, если в тексте есть предложение купить, реклама. Нужны согласие на обработку данных по 152-ФЗ и предварительное согласие абонента на получение рекламы по закону «О рекламе». Сервисные сообщения («заказ готов к выдаче») рекламой не считаются.

Если вашего провайдера нет в списке, отправку пишут программно: почти у всех провайдеров есть HTTP API, а вызов выглядит так же, как в примере с Telegram ниже.

Оповещения в Telegram и WhatsApp

Мессенджеры удобны для сотрудников: сообщение приходит на телефон мгновенно и не теряется в почте.

Telegram: бот за 10 минут

  1. В Telegram найдите @BotFather, отправьте команду /newbot, задайте имя. Получите токен вида 123456789:AA....
  2. Каждый получатель открывает бота и нажимает «Старт». Без этого бот не может написать человеку первым.
  3. Узнайте chat_id получателя: после его сообщения боту откройте в браузере https://api.telegram.org/bot<токен>/getUpdates и найдите поле chat.id.
  4. Для группового чата добавьте бота в группу. У групп chat_id отрицательный.

Функция отправки в общем модуле (серверный, без признака «Клиент»):

Функция ОтправитьВTelegram(Токен, ИдентификаторЧата, Текст) Экспорт

	Соединение = Новый HTTPСоединение("api.telegram.org", 443, , , , 30,
		Новый ЗащищенноеСоединениеOpenSSL);

	Запрос = Новый HTTPЗапрос("/bot" + Токен + "/sendMessage");
	Запрос.Заголовки.Вставить("Content-Type", "application/json; charset=utf-8");

	Данные = Новый Структура("chat_id, text", ИдентификаторЧата, Текст);
	Запись = Новый ЗаписьJSON;
	Запись.УстановитьСтроку();
	ЗаписатьJSON(Запись, Данные);

	Запрос.УстановитьТелоИзСтроки(Запись.Закрыть(), КодировкаТекста.UTF8,
		ИспользованиеByteOrderMark.НеИспользовать);

	Ответ = Соединение.ОтправитьДляОбработки(Запрос);

	Если Ответ.КодСостояния <> 200 Тогда
		ЗаписьЖурналаРегистрации("Оповещения.Telegram", УровеньЖурналаРегистрации.Ошибка, , ,
			"Код " + Формат(Ответ.КодСостояния, "ЧГ=0") + ": " + Ответ.ПолучитьТелоКакСтроку());
		Возврат Ложь;
	КонецЕсли;

	Возврат Истина;

КонецФункции

Токен не храните в коде. Положите его в константу или регистр сведений с доступом только для администратора.

WhatsApp

Бесплатного API у WhatsApp для бизнеса нет. Отправка идёт через WhatsApp Business Platform: напрямую или через провайдера-посредника. Шаблоны сообщений проходят модерацию, сообщения тарифицируются. Из 1С это такой же HTTP-запрос к API провайдера, отличаются только адрес и формат тела. Для внутренних уведомлений сотрудникам Telegram или «Обсуждения» в 1С проще и дешевле.

Оповещения о событиях: подписки и регламентные задания

Это сердце темы: «когда в базе случилось X, отправь сообщение Y». Сразу правильная архитектура, проверенная на практике:

  1. Событие ловит подписка на событие и пишет запись в очередь.
  2. Очередь — регистр сведений: кому, что, канал, статус, число попыток.
  3. Отправку делает регламентное задание раз в 1–5 минут.

Почему не слать письмо прямо из обработчика проведения? Проведение идёт в транзакции. Если провайдер ответит через 30 секунд, пользователь будет ждать 30 секунд. Если документ потом откатится, сообщение уже уйдёт. Очередь снимает обе проблемы.

Подписка на событие

В Конфигураторе, а лучше в расширении конфигурации, чтобы не снимать типовую с поддержки:

  1. Создайте серверный общий модуль, например ОповещенияСервер.
  2. В ветке Общие → Подписки на события добавьте подписку.
  3. Источник — нужный документ, например «Поступление на расчётный счёт».
  4. Событие — ПриЗаписи. Обработчик — процедура из модуля.
Процедура ПоступлениеНаСчетПриЗаписи(Источник, Отказ) Экспорт

	Если Отказ Или Источник.ОбменДанными.Загрузка Тогда
		Возврат;
	КонецЕсли;

	Если Источник.Проведен Тогда
		Текст = СтрШаблон("Оплата %1 руб. от %2",
			Формат(Источник.СуммаДокумента, "ЧДЦ=2"), Источник.Контрагент);
		ПоставитьВОчередь("Telegram", "Менеджеры", Текст, Источник.Ссылка);
	КонецЕсли;

КонецПроцедуры

Проверка ОбменДанными.Загрузка отсекает документы, пришедшие обменом: иначе после синхронизации прилетит сотня сообщений разом. Процедуру ПоставитьВОчередь вы пишете сами: она добавляет запись в регистр-очередь. Реквизиты источника (здесь СуммаДокумента, Контрагент) берите из своей конфигурации, у разных документов они называются по-разному.

Защита от повторов

Документ можно перепровести пять раз. Чтобы не получить пять SMS, в очереди храните ссылку на документ и вид события. Перед добавлением проверяйте: если запись по этой паре уже есть, вторую не создавайте.

Регламентное задание отправки

Задание выбирает записи со статусом «Новое», отправляет каждую, ставит «Отправлено» или увеличивает счётчик попыток. После 3–5 неудачных попыток статус меняется на «Ошибка», чтобы задание не долбило мёртвый адрес вечно.

Включение и расписание проверяют в Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания.

Оповещения внутри одного сеанса

Если нужно, чтобы открытый список обновился после записи документа в другой форме, используют пару Оповестить("ИмяСобытия", Параметр) и обработчик ОбработкаОповещения в форме-получателе. Это сигнал между формами одного пользователя, а не сообщение другим людям.

Какой канал оповещений вам подходит?

Уведомления в мобильном приложении 1С

Здесь два разных случая.

Мобильный клиент — это обычная база, открытая на телефоне. Он получает то же, что и тонкий клиент: напоминания, всплывающие оповещения, сообщения «Обсуждений». Пока приложение свёрнуто или закрыто, сообщения внутри 1С не придут, поэтому для срочных событий надёжнее Telegram или SMS.

Мобильное приложение на мобильной платформе (например, для торговых агентов) умеет настоящие уведомления:

  • 🕘 локальные — приложение само ставит напоминание на телефоне, интернет не нужен;
  • 📡 push-уведомления — отправляются с сервера через службы Google и Apple или через сервис уведомлений 1С.

Push требует, чтобы приложение зарегистрировало устройство и передало его идентификатор в центральную базу. Затем центральная база отправляет уведомление по этому идентификатору. Это задача для разработчика мобильного приложения, настроить её флажками в типовой не получится.

«Обсуждения» (система взаимодействия) работают и в мобильном клиенте, и в приложении «1С:Предприятие» на телефоне. Для внутренних уведомлений сотрудникам это самый дешёвый вариант без сторонних мессенджеров.

Журнал оповещений: как проверить, что ушло и что нет

Без журнала невозможно ответить на вопрос «почему клиент не получил SMS». Минимум, который стоит сделать:

  • 📋 регистр-очередь хранит каждое сообщение: дату, получателя, канал, текст, статус, число попыток, текст последней ошибки;
  • 🧾 журнал регистрации получает запись при каждой ошибке отправки с понятным именем события, например Оповещения.Telegram;
  • 📈 отчёт по очереди — простой отчёт на СКД с отбором по статусу «Ошибка» за период.

Журнал регистрации открывается в Администрирование → Обслуживание → Журнал регистрации. В отборе по событию введите своё имя события, и все сбои окажутся в одном списке.

Для штатных рассылок отчётов история хранится в самой рассылке: в карточке рассылки видно состояние последнего выполнения, а подробности ошибок попадают в журнал регистрации. У почты дополнительно смотрите папку «Отправленные» в ящике: если письмо там есть, а адресат его не видит, проблема на стороне получателя (спам-фильтр).

💡 Раз в неделю чистите очередь от отправленных записей старше 90 дней. Иначе через год регистр разрастётся до сотен тысяч строк, а отбор по статусу будет тормозить.

Почему оповещения не приходят: разбор сбоев

Диагностика: выберите симптом

Ещё один частый сбой связан с расписанием сервера. Сервер 1С работает по своему часовому поясу. Если рассылка назначена на 8:00, а сервер стоит в UTC, отчёт придёт в 11:00 по Москве. Проверьте время на сервере и учитывайте его в расписании.

Частые вопросы

Можно ли получать оповещения из 1С, если программа закрыта?
Внутренние напоминания и окна — нет, они показываются в открытом сеансе. Почта, SMS и Telegram приходят независимо от того, запущена ли 1С у получателя: отправку делает сервер.
Работают ли оповещения в 1С:Фреш и других облачных сервисах?
Напоминания, «Обсуждения» и рассылки отчётов на почту — да. Свои подписки на события доступны только через расширения, которые допускает сервис, и с ограничениями на внешние HTTP-запросы в безопасном режиме.
Сколько стоит подключить Telegram к 1С?
Сам бот и Bot API бесплатны. Платить придётся только за доработку: подписка, очередь и регламентное задание — ориентировочно от одного до трёх дней работы программиста.
Можно ли отправить уведомление другому пользователю прямо в окно 1С?
Штатно — через «Обсуждения»: сообщение увидят все участники беседы. Метод всплывающего оповещения показывает окно только текущему пользователю.
Не снимет ли доработка типовую конфигурацию с поддержки?
Если делать подписки и модули в расширении конфигурации, типовая остаётся на поддержке и обновляется как обычно. После каждого обновления проверяйте, что расширение подключилось без ошибок.

Источники

  • Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»
  • Федеральный закон от 13.03.2006 № 38-ФЗ «О рекламе»