Переписка в обсуждениях 1С: на каком сервере она лежит и как её сберечь
Содержание
Сообщения из обсуждений 1С хранятся не в информационной базе, а на сервере системы взаимодействия. По умолчанию это облачный сервер фирмы 1С, к которому база подключается по защищённому протоколу WebSocket. Если в компании развёрнут свой «1С:Сервер взаимодействия», переписка лежит в его базе PostgreSQL, а вложения — в его файловом хранилище.
В самой базе 1С остаются только данные регистрации: идентификатор базы на сервере взаимодействия и ключ подключения. Поэтому выгрузка .dt, копия файла 1Cv8.1CD или резервная копия SQL-базы переписку не сохраняют. Это главное, что нужно знать администратору перед переносом, восстановлением или «чисткой» базы.
Почему обсуждения не лежат в базе: файловый и клиент-серверный варианты
Обсуждения — это механизм платформы 1С:Предприятие 8.3 под названием «Система взаимодействия». Он не зависит от того, как работает база:
| Вариант базы | Где данные учёта | Где сообщения обсуждений |
|---|---|---|
| Файловая | файл 1Cv8.1CD в каталоге базы | на сервере взаимодействия |
| Клиент-серверная (MS SQL, PostgreSQL) | база СУБД на сервере | на сервере взаимодействия |
| В облаке 1С:Fresh | база в сервисе | на сервере взаимодействия сервиса |
Архитектура такая:
- 💬 клиент 1С открывает соединение с сервером взаимодействия напрямую, без участия кластера 1С;
- 🗄️ сервер взаимодействия хранит сообщения, список обсуждений, участников и вложения;
- 🔑 информационная база знает только, к какому серверу она привязана, и сопоставляет своих пользователей с пользователями системы взаимодействия.
Отсюда практическое следствие. В каталоге файловой базы вы не найдёте ни одного файла с перепиской. В таблицах SQL-базы тоже: искать сообщения запросом через консоль запросов или напрямую в СУБД бесполезно.
Не путайте обсуждения с подсистемой «Взаимодействия» в 1С:УТ 11, КА и ERP. Электронные письма, встречи, звонки и SMS там — обычные документы, и они хранятся в информационной базе. Заметки и напоминания из БСП тоже живут в базе.
Как узнать, к какому серверу подключены обсуждения базы
Прежде чем что-то сохранять или переносить, выясните, куда база отправляет переписку. В типовых конфигурациях на БСП (БП 3.0, ЗУП 3.1, УТ 11, КА 2) это видно в настройках администрирования.
- Откройте
Администрирование → Общие настройки. - Найдите группу «Обсуждения». Там видно, включены ли они, и есть ссылка на настройку подключения.
- Если обсуждения подключены к облаку, в параметрах будет адрес сервера 1С. Если указан адрес внутри вашей сети — у вас свой сервер взаимодействия.
- Уточните у администратора, кто и на какую почту регистрировал базу. Эта почта понадобится при повторной регистрации.
Права на эти настройки есть только у пользователя с полными правами. Обычный пользователь видит панель обсуждений, но не параметры подключения.
Программист может проверить регистрацию из встроенного языка. Метод возвращает Истина, если база зарегистрирована в системе взаимодействия:
Если СистемаВзаимодействия.ИнформационнаяБазаЗарегистрирована() Тогда
Сообщить("База подключена к серверу взаимодействия");
Иначе
Сообщить("Обсуждения для базы не подключены");
КонецЕсли;
Облачный сервер 1С и обсуждения в 1С:Fresh
Чаще всего обсуждения подключают к бесплатному облачному серверу фирмы 1С. Регистрация простая: администратор указывает электронную почту, получает код подтверждения, вводит его — и база получает доступ.
Что это значит для хранения:
- ☁️ переписка физически хранится на серверах фирмы 1С;
- 🚫 прямого доступа к этим данным у вас нет — ни к базе, ни к файлам вложений;
- 🌐 рабочим местам нужен выход в интернет по порту 443 к серверу 1С, иначе обсуждения не откроются;
- 🔄 если база переехала на другой сервер, но регистрация сохранилась, переписка остаётся доступной: она не была привязана к файлам базы.
В 1С:Fresh и у других провайдеров облачной 1С сервер взаимодействия обслуживает сам сервис. Пользователь видит обсуждения так же, как в локальной базе, а хранением, резервированием и восстановлением занимается провайдер. Если нужна копия переписки или вернуть удалённое — вопрос к поддержке провайдера, а не к выгрузке базы.
Для компаний с требованиями к размещению данных облачный сервер может не подойти: служебная переписка уходит за периметр организации. В таком случае разворачивают собственный сервер взаимодействия.
Собственный сервер взаимодействия: где лежат данные физически
«1С:Сервер взаимодействия» ставится отдельно от сервера 1С:Предприятия и настраивается утилитой ring. Поддерживаемые операционные системы и версии СУБД перечислены в документации к дистрибутиву вашей версии.
Данные распределены по нескольким компонентам:
| Компонент | Что хранит |
|---|---|
| PostgreSQL | сообщения, обсуждения, участники, служебные данные сервера |
| Elasticsearch | поисковый индекс по сообщениям |
| Hazelcast | кэш и обмен между узлами сервера (не постоянное хранилище) |
| Файловое хранилище | вложения: картинки, документы, голосовые сообщения |
Из таблицы видно, что именно надо резервировать. База PostgreSQL — источник правды. Индекс Elasticsearch можно перестроить, а вот потеря PostgreSQL означает потерю переписки.
Каталог файлового хранилища задаётся при создании экземпляра сервера. Его путь хранится в настройках экземпляра; точные параметры смотрите в справке утилиты ring для вашей версии, не правьте конфигурационные файлы наугад.
База сервера взаимодействия — это отдельная база PostgreSQL, не связанная с базами 1С на том же сервере СУБД. При переносе SQL-баз 1С её легко забыть: проверьте список баз на сервере СУБД.
Локальные папки и кэш: есть ли переписка на компьютере пользователя
Полноценного архива сообщений на рабочем месте нет. Клиент получает переписку с сервера взаимодействия при открытии обсуждения и показывает её в окне.
В профиле пользователя Windows платформа хранит свои служебные каталоги:
- 📁
%APPDATA%\1C\1cv8— список баз и пользовательские настройки; - 📁
%LOCALAPPDATA%\1C\1cv8— кэш конфигурации и временные данные.
Копировать эти папки «чтобы сохранить переписку» бесполезно. Чистка кэша (параметр запуска /ClearCache или удаление каталогов кэша) переписку не удалит: при следующем входе сообщения снова загрузятся с сервера.
Каталоги кэша удаляйте, только когда 1С на этом компьютере закрыта. Если удалить их при открытом клиенте, сеанс пользователя может аварийно завершиться, а несохранённые документы пропадут.
Вложения, которые пользователь открыл из обсуждения, платформа сохраняет во временный файл, чтобы передать его программе просмотра. Такой файл — случайная копия, а не хранилище: на его наличие рассчитывать нельзя.
Как сделать резервную копию переписки из обсуждений
Способ зависит от того, где хранятся сообщения. Встроенной кнопки «выгрузить обсуждение в файл» у пользователя нет.
| Способ | Когда подходит | Ограничения |
|---|---|---|
| Резервная копия PostgreSQL сервера взаимодействия + каталог вложений | свой сервер | нужен доступ администратора сервера |
Обработка на встроенном языке через СистемаВзаимодействия | любой сервер, нужна выборочная выгрузка | нужен программист и права администратора базы |
| Копирование текста вручную | несколько важных сообщений | долго, вложения сохраняются по одному |
| Запрос провайдеру | 1С:Fresh и облачные сервисы | сроки и формат определяет провайдер |
Свой сервер: что включить в регламент копирования
- Делайте дамп базы PostgreSQL сервера взаимодействия штатными средствами СУБД (
pg_dump) по расписанию. - Копируйте каталог файлового хранилища в то же окно, чтобы сообщения и вложения совпадали по времени.
- Сохраните отдельно настройки экземпляра сервера: без них восстановить его на новой машине сложнее.
- Раз в квартал разворачивайте копию на тестовом стенде и проверяйте, что переписка открывается.
Облачный сервер: выгрузка через встроенный язык
Объект СистемаВзаимодействия даёт программный доступ к обсуждениям и сообщениям базы от имени текущего пользователя. На нём пишут обработку, которая обходит нужные обсуждения и сохраняет текст сообщений, авторов и даты в файл. Конкретные методы и отборы берите из синтакс-помощника своей версии платформы.
Перед переносом базы на новую площадку выгружайте только то, что реально нужно по регламенту: договорённости с клиентами, согласования. Выгружать всю болтовню чата обычно незачем.
Перенос базы на новый сервер без потери обсуждений
Переписка физически остаётся на сервере взаимодействия, поэтому при переезде базы важно не сломать привязку к нему. Порядок такой:
- До переноса запишите, к какому серверу подключены обсуждения и на какую почту зарегистрирована база.
- Перенесите базу обычным способом: выгрузка
.dt, копия каталога файловой базы или резервная копия СУБД. - Откройте базу на новом месте под администратором и проверьте панель обсуждений: видны ли старые сообщения.
- Если программа сообщает о смене расположения базы или обсуждения отключены, восстановите подключение к прежнему серверу, а не регистрируйте базу как новую.
- Старую копию базы после переноса отключите от обсуждений, чтобы две базы не писали в одни и те же обсуждения.
Для своего сервера взаимодействия добавьте шаг: проверьте, что новые рабочие места видят его адрес по сети. Переезд сервера 1С:Предприятия сервер взаимодействия не затрагивает, если он стоит на отдельной машине.
Копия .dt не содержит обсуждений. Если переписка важна, её резервирование нужно настроить отдельно.
Удалённые сообщения и обсуждения: можно ли вернуть
Короткий ответ — средствами пользователя нет. Корзины для сообщений в обсуждениях нет, и восстановить их из резервной копии базы 1С невозможно, потому что там их никогда не было.
Варианты по ситуации:
- ☁️ облачный сервер 1С — у пользователя и администратора базы прямого доступа к хранилищу нет, вернуть удалённое своими силами не получится;
- 🏢 1С:Fresh или облачный провайдер — пишите в поддержку сразу, с точной датой, временем и названием обсуждения; чем раньше, тем выше шанс;
- 🖥️ свой сервер — восстановление возможно только из резервной копии PostgreSQL.
С собственным сервером есть подвох. Восстановить «поверх» рабочего сервера одно сообщение нельзя: откат базы откатит всю переписку на момент копии. Правильный путь — развернуть копию на отдельном экземпляре, найти нужный текст и передать его пользователям.
Остановка рабочего сервера взаимодействия обрывает обсуждения у всех пользователей. Если без остановки не обойтись, делайте это вне рабочего времени и предупредите сотрудников заранее.
Отдельный случай: повторная регистрация базы
Если базу зарегистрировали в системе взаимодействия заново (новая регистрация, а не восстановление прежней), сервер считает её новой базой. Старые обсуждения в ней не появятся, хотя на сервере они могут сохраниться. Поэтому при переносе базы сначала проверьте, работают ли обсуждения, и только потом жмите повторную регистрацию.
Обсуждения не открываются или пропали сообщения: что проверить
Большинство проблем с обсуждениями связано не с хранением, а с подключением к серверу взаимодействия. Сообщения при этом целы: их просто не видно с этого рабочего места.
Отдельно о тестовых копиях. Это самая частая неприятность на практике: программист разворачивает копию для доработки, а сотрудники получают из неё дубли сообщений. Внесите отключение обсуждений в чек-лист развёртывания любой копии базы.
Частые вопросы
Попадут ли сообщения обсуждений в выгрузку .dt?
Можно ли найти сообщения запросом в консоли запросов?
СистемаВзаимодействия.