Расширение MCP_Polling в 1С
Как ставится MCP_Polling в базу 1С, что лежит внутри расширения, какие параметры задаются. Установка одной командой без ручной правки.
Чтобы long polling заработал, на стороне 1С нужно расширение. Главное в нём: цикл опроса в общем модуле, регламентное задание, которое его запускает, и настройки подключения, вписанные в код модуля. Но если ставить его руками через Конфигуратор каждый раз, на каждой базе, на каждом стенде, это утомляет. В Расширенной редакции есть отдельный флаг, который делает установку без вмешательства разработчика.
Команда установки
mcp-1c-advanced --install-polling "C:\1cv8\bases\acc" --platform "C:\Program Files\1cv8\8.3.24.1819\bin\1cv8.exe" --db-user Администратор --poll-server-url http://localhost:9090 --poll-user mcp --poll-password secret123456
Для пользователя информационной базы без пароля флаг --db-password не нужен. Для клиент-серверной базы добавляется --server, и тогда --install-polling принимает адрес базы в виде сервер\база, например "SERVER01\MyDatabase", как в документации. Установщик передаёт это значение Конфигуратору без изменений, после ключа /S; ibcmd для клиент-серверной базы не используется.
Под капотом установщик сначала вписывает адрес сервера и учётные данные опроса прямо в код модуля MCP_PollingClient, а затем загружает расширение в базу и применяет его. В файловую базу это делает консольная утилита ibcmd, если она найдена. Если не найдена, а для клиент-серверной базы всегда, работает Конфигуратор: /LoadConfigFromFiles, затем /UpdateDBCfg. В код 1С через интерфейс лезть не нужно.
Что внутри расширения
Расширение называется MCP_Polling. Главное в нём:
- Общий модуль
MCP_PollingClientс серверным кодом для цикла опроса. - Регламентное задание
MCP_PollingJob, которое этот цикл запускает. - Адрес сервера, имя пользователя и пароль для авторизации на мосту. Установщик вписывает их прямо в код модуля
MCP_PollingClient, отдельной записи вХранилищеОбщихНастроекон не создаёт. Модуль при запуске читает оттуда записьMCP_Polling/Settingsпользователя, от имени которого идёт задание, и если она есть, берёт из неё непустые поля.
Править код модуля, чтобы сменить подключение, не нужно: адрес сервера и учётные данные опроса задают флаги установки, и при каждой установке установщик вписывает их в модуль заново. Если в ХранилищеОбщихНастроек под пользователем, от имени которого идёт задание, сохранена запись MCP_Polling/Settings, её непустые поля главнее вписанных значений.
Какие параметры передаются
| Параметр | Назначение |
|---|---|
--install-polling |
Путь к файловой базе или адрес клиент-серверной базы в виде сервер\база |
--server |
База клиент-серверная: значение --install-polling читается как сервер\база |
--platform |
Путь к 1cv8.exe. Без него установщик ищет платформу в стандартных каталогах установки |
--db-user / --db-password |
Пользователь информационной базы для установки: его получает Конфигуратор или ibcmd |
--poll-server-url |
URL процесса mcp-1c-advanced на стороне разработчика |
--poll-user / --poll-password |
Учётные данные для канала опроса |
Учётка --poll-user отдельная от --db-user. Первая используется для аутентификации между расширением и сервером опроса, вторая для входа в саму базу при установке. Это разные периметры.
Что происходит после установки
Расширение появляется в списке расширений базы как обычный .cfe. Опрос запускает регламентное задание MCP_PollingJob. Если задание не запущено или безопасный режим 1С блокирует исходящий запрос расширения, опроса не будет. Что делать с безопасным режимом, описано в документации; с версии 2.41.0 после успешной установки команда --install-polling и сама об этом напоминает. Если сервер опроса недоступен, модуль на каждом круге пишет в журнал регистрации предупреждение MCP Polling: loop error: …, ждёт 5 секунд и пробует снова.
Чтобы убедиться что расширение установилось:
Конфигуратор -> Конфигурация -> Расширения конфигурации
В списке должно быть MCP_Polling.
Удаление
Штатно через Конфигуратор: «Удалить расширение». Отдельной записи с настройками установщик в ХранилищеОбщихНастроек не создаёт: адрес сервера и учётные данные опроса записаны в коде модуля расширения.
Полная переустановка (для смены параметров) делается тем же --install-polling с обновлёнными значениями. Отдельно старую копию установщик не удаляет: новая версия загружается поверх неё. Непустые поля записи MCP_Polling/Settings в ХранилищеОбщихНастроек, если она сохранена под пользователем, от имени которого идёт задание, по-прежнему главнее новых значений.
Когда это нужно
- Каждый локальный стенд разработчика, где требуется связка AI-ассистента с 1С.
- Контейнеризованные тестовые базы, где Apache или IIS поднимать дорого по времени.
- Демо-стенды для презентаций: компактное расширение, никаких внешних компонентов.
Для среды эксплуатации установка через Конфигуратор остаётся штатной: расширение проходит ревью и подгружается из управляемого хранилища, как любое другое.