Письмо из 1С в Max: текст или PDF
Июнь 2026 · Редакция «Арете-ИТ»
У сообщения в Max нет отдельных полей «Тема» и «Тело», как у электронной почты. Короткое письмо можно передать обычным текстом, а официальный исходящий документ или длинный ответ — приложить в PDF.
Текст отправляется методом POST /messages
и ограничен 4000 символами. Заголовок можно сделать первой строкой, а для разметки
передать format=html или format=markdown.
Если важны фирменный бланк, подпись и неизменная вёрстка, надёжнее PDF.
ТокенБота = "подставьте_токен_бота";
ИдПользователя = 123456789; // user_id из события Max, не код справочника 1С
ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL;
Соединение = Новый HTTPСоединение(
"platform-api2.max.ru", 443, , , , 30, ЗащищенноеСоединение);
Тело = Новый Структура;
Тело.Вставить("text", "Здравствуйте! Направляем подтверждение заказа № 145.");
ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку();
ЗаписатьJSON(ЗаписьJSON, Тело);
СтрокаJSON = ЗаписьJSON.Закрыть();
Запрос = Новый HTTPЗапрос("/messages?user_id=" + Формат(ИдПользователя, "ЧГ="));
Запрос.Заголовки.Вставить("Authorization", ТокенБота);
Запрос.Заголовки.Вставить("Content-Type", "application/json; charset=utf-8");
Запрос.УстановитьТелоИзСтроки(
СтрокаJSON, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);
Ответ = Соединение.ОтправитьДляОбработки(Запрос);
Если Ответ.КодСостояния <> 200 Тогда
ВызватьИсключение "Max вернул " + Ответ.КодСостояния + ": " + Ответ.ПолучитьТелоКакСтроку();
КонецЕсли;
ОтправитьФайлВMax( ТокенБота, ИдПользователя, ДвоичныеДанные, "letter-38-2026-09-08.pdf", "Направляем исходящее письмо № 38 от 8 сентября.");
Для файлового варианта задайте понятное имя и коротко сформулируйте назначение документа. Max Bot API не использует SMTP и MIME: письмо здесь остаётся сообщением с вложением.
Процедура файловой отправки из примера разобрана в отдельной инструкции. Если адресатов несколько, используйте очередь и расписание, а не цикл отправки внутри пользовательской команды.
Письма в «Арете — сервер мессенджеров, Max edition»
Повторяемый текст в подсистеме хранится в справочнике «Контент» с HTML- или Markdown-разметкой. Готовый PDF добавляется как отдельный материал, а транспортная часть сводится к двум вызовам:
ИдПользователя = 123456789; // user_id из карточки получателя
СопроводительныйТекст = "Направляем документ из 1С.";
Параметры = Новый Структура;
Параметры.Вставить("user_id", ИдПользователя);
Параметры.Вставить("text", СопроводительныйТекст);
АСМ_М.ВложитьФайл(Параметры, ДвоичныеДанные, ИмяФайла);
АСМ_М.ОтправитьСообщение(Бот, Параметры);