Интеграция со СДЭК

11.06.22

Интеграция - WEB-интеграция

Универсальное решение для интеграции с СДЭК по протоколу 2.0. Интеграция с СДЭК с открытым кодом для типовых конфигураций.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Интеграция с СДЭК расширение:
.cfe 41,12Kb
102
102 Скачать (2 SM) Купить за 2 150 руб.
Интеграция с СДЭК обработка:
.epf 34,94Kb
106
106 Скачать (2 SM) Купить за 2 150 руб.

Недавно возникла необходимость интеграции с СДЭК по протоколу 2.0. Поиски готового решения ни к чему не привели. В двух словах, все, что стоит внимания, либо старое, либо с закрытым кодом. Это повергло меня в печаль и побудило сделать эту публикацию по СДЭК. Надеюсь, она кому-то поможет не заниматься изобретением велосипеда, как пришлось это делать мне. При реализации использовалась документация: https://api-docs.cdek.ru/29923926.html

Приступая к работе, кроме поддержки необходимого набора функций, я ставил перед собой три конкретные цели:

1. Обеспечить максимально полную диагностику ошибок процесса. Чтобы минимизировать количество ситуаций, когда отправление не регистрируется и непонятно, почему.

2. Обеспечить максимально удобный и быстрый доступ к данным, необходимым для регистрации отправления. Чтобы не приходилось делать миллион кликов для того, чтобы добраться до нужного места. В идеале - все на одном экране. Это касается, прежде всего, адреса с обеих сторон, весогабаритов и телефона получателя.

3. Обойтись без изменения конфигурации. В идеале - должно работать на большинстве типовых конфигураций.

Очень старался этих целей достигнуть. Чем закончились мои старания - судить вам.

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

На универсальность, в плане работы с разными перевозчиками, данное решение не претендует. Однако, на то и существуют напильники, чтобы допиливать.

 

Остановлюсь на вопросах, связанных с возможной кастомизацией данного решения, чуть подробнее:

1. В обработке, на вкладке "Партнер СДЭК", выбирается (создается) партнер. Для партнера создаются дополнительные свойства. Заполняются параметры подключения. После сохранения программа считает, что это СДЭК. Далее идет работа с теми документами, где соответствующим образом заполнен реквизит "ПеревозчикПартнер". Выбрать накладные для перевозки можно в обработке на вкладке "Выбор реализации".

2. В качестве документа для отправки используется "РеализацияТоваровУслуг". Для него создаются дополнительные свойства для хранения УИДов, ссылок и сообщений СДЭК. Кто-то отправляет заказ. Кто то делает свой специализированный документ передачи. Кто то еще чего то придумывает. Тут полная свобода. Напильник в руки. Для грамотного программиста переделка несложная.

3. В качестве адреса получателя используется реквизит документа "АдресДоставки".

4. В качестве телефона получателя используется телефон партнера из контактной информации.

5. В качестве адреса отправителя используется адрес реквизита документа "Склад" (из контактной информации).

6. Вес и габариты хранятся в создаваемых дополнительных свойствах номенклатуры. Кто то пользуется штатным механизмом упаковок, кто-то создает реквизиты в справочнике номенклатуры. В общем тут поступаем как в предыдущем пункте. Модуль структурирован. Все функции подробно описаны. Будет несложно переделать базовый запрос и соответствующие процедуры.

7. Веса и габариты хранятся и вводятся сразу в граммах и сантиметрах - как необходимо для СДЭК. Интерактивных средств ввода данных достаточно для демонстрации возможностей решения. В реальной жизни можно допилить то, в каких единицах вводить и хранить данные, и то как они будут попадать в базу.

8. Список документов для регламентного обновления статусов пока реализован упрощенно. Берутся накладные за последние несколько месяцев. Это может быть накладно. Когда (при каком статусе) свойства документа надо прекращать обновлять каждый может решить сам и допилить по вкусу. Обращаю на это внимание на случай если тест будет проходить на демо-базе со старыми накладными. Они регзаданием обновляться не будут. Освежите дату или жмите кнопку.

9. Следует иметь в виду что обработка, в основном, контролирует заполненность данных, необходимых для регистрации отправки. Полноценная валидация во многих случаях не выполняется. При таком раскладе информацию о причинах отказа в регистрации надо читать в окне комментария к статусу отправки.

 

Реализованные полезные функции:

1.  Само собой, авторизация. Для экономии трафика реализовано хранение токена во внешних настройках. Пример использования в обработке. Если токен рабочий, то повторно он запрашиваться не будет. При "протухании" токен автоматически обновляется.

2. Калькулятор доступных тарифов. Используется в функции автоматического выбора тарифа и в обработке для выбора тарифов из списка. В запросе калькулятора используются почтовые индексы. Поэтому так важно использовать "правильные" адреса, а не произвольный набор слов, как любят делать некоторые. Индекс выцепляется из адреса путем обращения к JSON строке или из первых шести символов представления адреса (если это цифры).

3. Регистрация отправления с автоматическим или ручным выбором тарифа. Автоматически выбирается тариф нужного типа из доступных для данного отправления, с минимальной стоимостью и содержащийся в регистре выбранных тарифов. Если тариф заполнен руками, то автоматического выбора не будет.

4. Запрос информации по заказу и регистрация статусов отправления. По кнопке в обработке или в фоне. Та же самая обработка может быть запущена по регламенту.

5. Заказ штрихкодов для мест отправления и квитанций к заказу. Получение ссылки на файл штрихкодов (квитанции). Получение, сохранение и открытие файла штрихкодов (квитанции).

Также в модуле реализовано опционально (в обработке не используется):

6. Регистрация договоренности о доставке. Опционально. Работоспособная отправка пакета есть, но надо делать свойства. Практическая ценность сомнительна, т.к. работники СДЭК все равно перезванивают перед доставкой. Поэтому доводить до ума и усложнять интерфейс не стал.

7. Регистрация отправления с регистрацией договоренности о доставке. См. предыдущий пункт.

 

Порядок использования:

1. Зарегистрировать расширение. Обязательно снять галку "Безопасный режим".

2. Зарегистрировать дополнительную обработку с запуском по регламенту.

3. Запустить обработку в интерактивном режиме. Все необходимые для работы дополнительные свойства и минимальный набор записей в регистре выбранных тарифов будут автоматически созданы при первом запуске (интерактивно или в фоне).

4. На вкладке "Партнер СДЭК" создать и (или) выбрать партнера, ввести параметры подключения и сохранить.

5. На вкладке "Тарифы" ввести и настроить (при необходимости) нужные тарифы. На старте туда уже будут автоматически внесены тарифы для интернет-магазина - 138 и 139.

6. Двойным щелчком выбрать накладные для работы на вкладке "Выбор реализаций".

7. Далее, собственно, проделать операции по взаимодействию с СДЭК на вкладке "Отправка". Кое-что можно сделать из списка. Двойным щелчком по строке списка открывается форма отправления, где можно просмотреть и изменить все данные и проделать все операции. На вкладке смотрите на информационное окно вверху. Там будет диагностика и инструкции.

 

Сам выполнил эти инструкции на чистой демобазе КА 2.5.4.402. Проблем не встретил. В любом случае, при любых непонятках, если чего напутал с файлами или какой другой визит-эффект или вопрос - пишите. Поправлю или объясню. Смотрю регулярно. Реагирую быстро.

 

Ну вот и все. Чтобы снять оставшиеся вопросы - немного картинок:

 

 

 

 

 

 

интеграция синхронизация обмен сервис http web расширение доставка сдэк sdec sdek служба обработка открытый код

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17814    19    22    

17

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

7200 руб.

04.05.2021    19904    13    17    

17

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14444    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1226    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. NoN098 15 13.05.22 09:04 Сейчас в теме
Добрый день. Заполнил данные партнера СДЭК, как на скриншоте. Не заполняются тарифы в форме Информация, соответственно при регистрации ошибка
2. user1374747 234 13.05.22 09:41 Сейчас в теме
День добрый. Сейчас разберемся. Если не трудно, немного больше информации. Скрин данных СДЭК и скрин ошибки.
Кроме прочего, С учебным сайтом бывают проблемы. Не всегда работает.
22. user1921838 14.03.23 13:52 Сейчас в теме
Добрый день.
Как с Вами можно связаться? Занимаетесь ли интеграцией СДЕК на заказ?
3. user1374747 234 13.05.22 11:19 Сейчас в теме
Наблюдали сейчас интересный эффект. На 21 платформе, после регистрации расширения, неправильно скомпилировался код. Вижу такое в первый раз. Перекомпиляция (символ добавили и удалили) помогла. Прошу обратить внимание.
4. Defer4 23.05.22 17:32 Сейчас в теме
Добрый день! Рассматриваете возможность допилить под api CDEK Фулфилмент? И цена вопроса?
5. user1374747 234 23.05.22 18:07 Сейчас в теме
День добрый. Я рассматриваю любые возможности. Однако, если мы говорим про фулфилмент, то ясно, что это совсем другой уровень проработки. В этой публикации представлена заготовка для реализации самых востребованных операций. Для тех, кто хочет передать посылку и чтобы доехала до клиента.
Для тех же, кто вообще не хочет прикасаться к товару нужно совсем другое ПО. И недешевое. Для такой разработки нужны сотни часов. Окупить ее можно только тиражом. Лучше обратиться в специализированную фирму и купить такую систему с доработкой. По любому, выйдет дешевле.
6. RAV38574 122 24.05.22 20:36 Сейчас в теме
создаются дополнительные свойства.
Почему доп. сведения создаются с пометкой удаления и в общий список доп.сведений не попадают, так было задумано или не проверили?
7. user1374747 234 25.05.22 01:00 Сейчас в теме
День добрый. Скорее задумано. Это не пометка удаления. Это забавный визуальный эффект. Так авторы БСП дают понять, что сведения не входят в набор, связанный с данным объектом. Для данной реализации принадлежность их к набору не имеет практического смысла. Т.к. со свойствами работают формы обработки. К тому же для полноценной работы стандартными средствами нужен предопределенный набор. Использование предопределенного набора КА сразу ограничило бы область применения решения. Без малейшей практической пользы. Решение ведь предназначено для типовых конфигураций. Вот такие были соображения. Чуть подробнее по поводу свойств написано в другой моей публикации.
8. RAV38574 122 25.05.22 10:58 Сейчас в теме
При такой реализации в номенклатуре не возможно проставлять вес и размеры в справочнике номенклатура, посмотреть сведения записанные для документа. Имеет смысл для контрагента, чтобы не нагружать весь справочник, но можно было для СДЭК это сохранить по другому. Также при сохранении телефона, адреса, поля заполняются не все, в партнере не отображаются правильно, изменяем обработкой в партнере отображает старое значение. Заполнение документов, изменил сортировку, теперь при открытии отображаются последние документы.
Пока только начал работу, переделываю, Вашу обработку под БП3.0, и еще объедините файлы в архив и поставьте 4см, по отдельности они не имеют смысла.
9. user1374747 234 25.05.22 12:06 Сейчас в теме
По номенклатуре;
Предполагалось, что со свойствами номенклатуры непосредственно для отправки работать будут из форм обработки. В массовом же порядке, это будет делаться автоматизированно. Т.е. регистр будет заполняться с помощью API поставщиков. В любом случае здесь, с большой вероятностью, потребуется кастомизация. Привязка весогабаритов может делаться не только к номенклатуре. И единицы, скорее всего надо будет пересчитывать. Конкретные обстоятельства применения я предугадать не могу. В любом случае, если хочется использовать стандартное окно свойств можно просто добавить их в конкретный набор свойств конфигурации. Разве нет?

По партнеру:
Хорошо бы картинку. Не совсем понятно. Я постарался написать в публикации, что и откуда берется. Из Партнера берется только телефон. Адрес - это поле документа реализации, т.е. в партнере ничего не должно меняться.

Насчет объединить файлы, я согласен. Обработка и расширение дополняют друг друга. Но боюсь не все согласятся. Кому-то нужны только примеры функций для работы со СДЭК. А обработка у него есть или у него свое видение.

Для получения более детальной информации или помощи можно писать в личку. Чтобы не засорять форум.
10. CnupT 70 26.05.22 09:04 Сейчас в теме
Получил огромное эстетическое удовольствие разбирая код обработки и расширения.
Такого внимания к комментариям, качеству и оформлению кода я не встречал даже в типовых.
Михаил, большое вам спасибо
11. user1374747 234 26.05.22 10:49 Сейчас в теме
Спасибо на добром слове. Приятно. Тем более, что в резюме я позиционирую себя как специалиста по рефакторингу. Выходит - не зря. Рад, что понравилось.
12. user1374747 234 11.06.22 09:47 Сейчас в теме
Отработал замечание пользователя. Добавил получение (в модуле) и сохранение (в обработке) файла со штрихкодами по полученной от СДЭК ссылке. Заодно отработал печать квитанции к заказу по той же схеме. Файлы обновил.
13. mazechild 20.10.22 13:59 Сейчас в теме
Добрый день на Управление торговлей, редакция 11 (11.5.7.367) при запуске внешней обработки выпадает с ошибкой:
{ВнешняяОбработка.СДЭК_Демонстрация.Форма.Форма.Форма(10,2)}: Переменная не определена (СДЭК_ИнтеграцияТранспортныеКомпании)
14. user1374747 234 20.10.22 16:16 Сейчас в теме
День добрый. Судя по тексту, обработка не видит модуль расширения. Расширение устанавливалось?
15. ivanmeneger 28.10.22 13:36 Сейчас в теме
Подскажите пожалуйста - подойдет ли данная разработка к УНФ 1.6 с крайней конфигурацией ???
Или может быть, ну на Ваш взгляд, с небольшими правками но можно адаптировать под УНФ 1,6 ???
16. user1374747 234 28.10.22 14:04 Сейчас в теме
(15) День добрый. Не рискну сразу ответить. Напишу в выходные, когда посмотрю. К УНФ еще не примерял.
17. user1374747 234 28.10.22 16:32 Сейчас в теме
К сожалению, у меня только старая учебная УНФ. И в ИТСах не вижу. Поэтому могу рассуждать только теоретически.

Уже был опыт переделки для БП. RAV38574 расскажет лучше. Основное в переделке - отсутствие партнеров в простой конфигурации. Остальное не принципиально отличается. Вместо реализации в УНФ - расходная накладная. Но АдресДоставки там есть. Т.е., вырождаем партнеров, подменяем документ и по мелочи чего.

Думаю, в любом случае, главная ценность в расширении, где есть примеры обращения к сервису. Не возьмусь утверждать наверняка, но на первый взгляд не вижу особых трудностей в том, чтобы и обработку довести.
18. Braucho14 08.11.22 09:38 Сейчас в теме
Доброго времени суток! При отправке до пункта пвз возникает ошибка: v2_recipient_location_not_recognized", "Recipient location is not recognized", по официальной документации это Не удалось определить город получателя, получаю эту ошибку при отправке метода "GET". Не могу понять в чем причина.
19. user1374747 234 08.11.22 11:25 Сейчас в теме
День добрый. Думаю пока, причина именно в этом. В базе СДЭК нет указанного пункта. Чтобы посмотреть на предмент программных ошибок нужно немного больше информации. Если пришлете в личку конкретные данные, то вечером смогу посмотреть.
20. user1434232 06.02.23 12:11 Сейчас в теме
Здравствуйте. Механизмы работы с картами при выборе ПВЗ присутствуют?
21. user1374747 234 06.02.23 12:46 Сейчас в теме
День добрый. Нет. Обработка предназначена для демонстрации работы функций модуля. В реальной жизни может быть использована только в очень простых случаях.
23. user953595 29.05.23 10:07 Сейчас в теме
Добрый день, может кто-то делал: я знаю как получить заказ, я знаю как получить связанный документ возврата (частичный/полный).
НАДО: получить список возвращенных номенклатур!

Прочитал документацию по API v2, облазил ответы, получаемые от СДЭК, не нашел как это сделать.
Причем типовые интеграционные решения (для битрикс-24, например) как-то это делают, но там код закрыт (или не понятно как скачать открытую часть). Мне хоть java, хоть php, главное чтобы функция там эта была описана. Возьму метод и формирование параметров.

Может кто-то делал это, помогите, пожалуйста.

PS: В исходном заказе в packages есть items и там вся информация, а вот у связанного ордера на возврат - в packages НЕТ items.
24. lame 75 10.07.23 10:58 Сейчас в теме
Добрый день
Обработка - не полноценная.
В ней идут методы - которых в ней нет. И без которых она работать не будет.
Например, модуль объекта обработки -

Процедура ОтправитьНаСервере(Реализация) Экспорт

СтруктураНастроек = СДЭК_ИнтеграцияТранспортныеКомпании.НастройкиТранспортнойКомпании();
НастройкиТК = СтруктураНастроек.НастройкиТК;
ДанныеДляОтправки = СДЭК_ИнтеграцияТранспортныеКомпании.ДанныеРеализации(Реализация);
ШапкаРеализации = ДанныеДляОтправки.ШапкиРеализаций[0];
СоставРеализации = ДанныеДляОтправки.СоставРеализаций;

СДЭК_ИнтеграцияТранспортныеКомпании.ОтправитьНакладнуюТК_СДЭК(ШапкаРеализации, СоставРеализации, НастройкиТК);

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

модуля -СДЭК_ИнтеграцияТранспортныеКомпании - нет.


Или.
Форма обработки
&НаСервере
Процедура ПолучитьТарифы()
НаборТарифов = РегистрыСведений.СДЭК_ДоступныеТарифы.СоздатьНаборЗаписей();
НаборТарифов.Прочитать();
ТаблицаТарифов = НаборТарифов.Выгрузить();
ЗначениеВРеквизитФормы(ТаблицаТарифов, "Тарифы");
КонецПроцедуры


Такого РС нет.


Понять - как работает данная обработка - не представляется возможным


Можно ли дослать расширение - чтобы повторно не скачивать и не тратить СМ ?
25. user1374747 234 11.07.23 20:38 Сейчас в теме
Вечер добрый. Извиняюсь, если ввел кого то в заблуждение. Обработка и расширение конечно же не являются альтернативой. Это комплект. Просто он разбит на две части. Тем, кому нужен только набор основных функций следует скачать только расширение. Обработка, естественно, без расширения работать не может. Она для тех, кто хочет сэкономить время на создание собственной обработки. Возможно, взяв эту за основу. Это пример использования функций расширения. Возможно, он кому то понравится и приживется.
26. JIexa_74 09.11.23 16:49 Сейчас в теме
Здравствуйте. Помогите пожалуйста настроить на УНФ 3.0.
Справочники по другому называются.
Нужно ведь выставлять справочники которые в базе?
Например в расширении справочник - "Склад", а в УНФ он называется "Структурные единицы";

Не взлетает что то по запросам в модуле(
27. JIexa_74 09.11.23 16:50 Сейчас в теме
(26)Справочник в расширении "Партнеры" - это есть организация компании?
28. JIexa_74 09.11.23 16:54 Сейчас в теме
(27)Хотя вроде как "Партнер" в КА - есть Контрагент в УНФ
29. user1374747 234 10.11.23 09:55 Сейчас в теме
(27) День добрый. По УНФ был уже вопрос.
Посты 15,16,17.
К сожалению, в момент написания УНФ в расчет не принималась.
Наверное, надо было явно указать в описании, что решение, прежде всего, предназначено для линейки УТ-КА-ERP.
С минимальными переделками должно заработать в БП.
В случае УНФ придется вдумчиво доработать. Слово "настройка" здесь не очень подходит.
Вы правы. И справочники и документы по другому называются. Надо аккуратно пройти по коду и это учесть.
А Партнеры это расширение сущности контрагента для линейки УТ-КА-ERP. В старом контрагенте разделили партнерскую сущность и официальное юрлицо. Которых может быть у партнера несколько. В БП и УНФ, насколько мне известно, этого нет. Просто контрагенты.
Однако, это скорее касается обработки. Функции расширения в большинстве должны работать. Им все равно. На вход поступают данные отправлений. А вот как они определяются - решает обработка.

Надеюсь, я понятно объяснил почему не могу помочь "настроить".
Сожалею, если доставил неудобства или обманул ожидания.
30. JIexa_74 10.11.23 10:21 Сейчас в теме
(29) понял спасибо.

Те в итоге в вашей обработке Партнеры, это в УНФ контрагенты?

А кто выступает объектом в дополнительных сведениях? Вижу запрос на партнера в обработке, и оттуда выборка первого объекта из дополнительных сведений.
Объект ссылка. А ссылка на кого?
31. user1374747 234 10.11.23 10:34 Сейчас в теме
ОК. Вижу вы настроены на доработку. Я сейчас на службе. Напишите в личку после 18:00. Постараюсь ответить на все вопросы подробно.
32. user1610007 06.11.24 13:43 Сейчас в теме
Здравствуйте,
есть потребность из 1с формировать Штрихкода отправлений. которые формируются в ЛК через 1С-Битрикс.

т.е мне нужно получить весь список отправлений которые сформировались в ЛК сдек, сопоставить их с заказами в 1с (заказы тоже формируются в 1с Битриксом.) и получить шк-этикетки

интеграция сдек в битриксе неудобно потому что сборщик не имеет доступа до web
поэтому ищу пути решения. если есть альтернатива, буду рад выслушать
33. user1374747 234 06.11.24 19:00 Сейчас в теме
(32) Привет. Увы. С той поры к этой теме не возвращался. И не развивал ее. Так что вряд ли помогу идеями.
Оставьте свое сообщение