Сервис Деск на 1С: задачи, учёт времени и боты в Telegram и MAX
Партнёр 1С заказал систему для своей команды: ТЗ на 37 разделов. Я пишу чистую конфигурацию 1С с ядром задач, коммерческим временем, календарём, ботами Telegram и MAX прямо в базе, голосом и ИИ на сервере заказчика. Версия 0.2.0, 19 наборов автотестов, в работе, сдача по графику.
Коротко (TL;DR)
- Партнёр 1С, с которым мы делали паллетный учёт для оптовика, заказал систему уже для своей команды: задачи клиентов, учёт времени, календарь, боты для сотрудников и клиентов. Техническое задание на 37 разделов.
- Я пишу отдельную чистую конфигурацию 1С «Сервис Деск». Боты Telegram и MAX работают регламентными заданиями прямо в базе, голос распознаёт служба на сервере заказчика, ИИ-помощник подключён к локальной модели там же.
- С 12 по 14 октября 2026: 37 коммитов, версия 0.2.0 с установщиком и обновлением одной командой, 19 наборов автотестов. Часть функций проверена на сервере заказчика с платформой 8.5.
- Статус: в работе, сдача по графику. Несколько вещей ждут доступов и данных со стороны заказчика, они перечислены ниже.
Сделаю под ключ: разберу задачу, назову срок и цену. Чтобы начать, напишите в Telegram одной фразой.
Обсудить систему в 1СРазбираю, как устроен сервис-деск внутри 1С и какие грабли платформы 8.5 я собрал по дороге.
Задача
Заказчик раньше работал со мной как партнёр 1С: через него я делал паллетный учёт на ТСД для оптовика и расширение для стройки. В этот раз он пришёл с заказом для собственной компании. Его сотрудники сопровождают клиентов на 1С: принимают обращения, консультируют, дорабатывают. Задачи жили в переписке, время на клиента считали вручную, а коммерческие часы для счёта собирали в конце месяца.
В ТЗ 37 разделов: ядро задач с таймером, коммерческое время с округлением, очередь отдела, передача задач, календарь и отпуска, эскалация, уведомления, клиентский бот, ИИ-консультант, хранилище доступов, база знаний и API. Мобильное приложение заменили ботами, потому что сотрудники и клиенты и так сидят в мессенджерах. Каналов два: Telegram и MAX.
Условия такие. Всё внутри 1С на сервере заказчика, отдельный сервер для ботов не поднимаем. Сам заказчик на сервере руками ничего не настраивает: установка одним скриптом, остальные настройки в 1С.
Что я сделал
Выбрал отдельную конфигурацию вместо расширения. У сервис-деска нет типовой основы, на которую стоило бы опереться, а свои справочники, роли и регистры проще держать в чистой базе. Структура описана в файлах, XML конфигурации собирает мой генератор, модули лежат текстом в git.
- Ядро задач. «В работу», пауза с обязательным комментарием, завершение, закрытие без работ с причиной, передача сотруднику или отделу с копией переписки. У сотрудника один активный таймер: взял новую задачу, старая встала на паузу.
- Коммерческое время. Факт в секундах и коммерческие минуты хранятся отдельно, округление идёт шагом из настроек, по умолчанию 15 минут вверх. Править коммерческое время может роль с таким правом и руководитель отдела, каждая правка пишется в историю.
- Бот сотрудника. Мои задачи, взять, пауза, завершить, новая задача или напоминание текстом или голосом. Фразы вроде «полтора часа», «завтра в 10» и «каждый понедельник» разбираются в длительность и дату.
- Клиентский бот. Знакомство по телефону или ИНН, тип обращения, вопросы под этот тип, оценка критичности, файлы и голосовые. Клиент получает «взяли в работу» и «выполнено», сотрудник отвечает ему из карточки задачи.
- Календарь. Планировщик 1С с режимами день, неделя, месяц и год, перенос задач между днями и сотрудниками с проверкой прав, стек незапланированных, календарь отпусков и производственный календарь.
- Остальное. Хранилище доступов к базам клиентов, отчёт «Время по клиентам и сотрудникам» со ставкой и суммой для счёта, база знаний, API для интеграций, загрузка сотрудников и клиентов из Excel.
По отзывам заказчика уже сверх ТЗ добавил документ «Выполнение работ»: на одной задаче теперь могут работать несколько исполнителей, каждый отчитывается за свою часть текстом или голосом.
Как устроено
Боты без отдельного сервера
Боты опрашивают Telegram и MAX длинным опросом из регламентных заданий 1С. Логика бота про канал ничего не знает: на входе сообщение, на выходе список ответов, а транспорт у каждого мессенджера свой. Исходящие сообщения идут через очередь уведомлений. Если сеть моргнула, сообщение не теряется, а ошибки и повторы видно на экране «Настройки и состояние».
Голос и ИИ на сервере заказчика
Голосовые распознаёт служба на faster-whisper с моделью small, она слушает только локальный адрес на том же сервере. ИИ-помощник подключается по протоколу OpenAI Chat Completions, установщик ставит локальную модель через Ollama. Помощник отвечает клиенту сам, только если уверен и нашёл подходящую статью в базе знаний. В остальных случаях вопрос уходит консультанту вместе с черновиком ответа. Модель недоступна, и бот просто работает по статьям.
Права и видимость
Сотрудник видит задачи своего отдела, и ограничение стоит на уровне записей базы: чужие задачи не попадают ни в список, ни в бот. Роли выдаются галочками в карточке должности. Справочник сотрудников для обычной роли открыт только на чтение, поэтому сменой должности права себе не выдать. Пароли клиентов в хранилище доступов шифруются ключом из файла вне базы, просмотр идёт по отдельной роли и пишется в журнал.
Установка и обновление
Установщик на PowerShell создаёт базу на сервере 1С с MS SQL, ставит Python и службу распознавания, модель ИИ, публикует базу на веб-сервере и заводит первого администратора. Обновление идёт отдельным скриптом и сразу проверяет службы голоса и ИИ.
Что было сложно
Я разрабатываю на платформе 8.3.27, а у заказчика 8.5. Модуль с процедурой «Состояние» или параметром «Тип» на 8.3 работает, а на 8.5 не компилируется: эти имена заняты платформой. Штатная проверка модулей такое не ловит, ошибка всплывает только при запуске. Я написал свой линтер, без него пакет не собирается, и добавил в настройки кнопку «Самопроверка». На сервере заказчика она прогоняет 28 модулей.
Календарь в режимах «Месяц» и «Год» на 8.5 падал из-за настройки периода, которую 8.3 прощала. Это нашлось только на живом сервере.
Установщик у заказчика упал на обновлении pip. Безобидное предупреждение в потоке ошибок PowerShell 5.1 в строгом режиме считает фатальным. Теперь внешние программы запускаются с проверкой кода возврата, а вывод уходит в журнал установки.
Ещё одна история про формы. Автотесты ходят в базу через COM и окна не открывают. Диалоги отчёта и передачи задачи падали на кнопке подтверждения, и нашла это только ручная проверка в интерфейсе. Моя учётная запись на сервере без прав администратора, поэтому установку и обновление запускает сам заказчик, а я собираю пакет так, чтобы хватало одного запуска.
Что получилось
| Что | Состояние |
|---|---|
| Версия | 0.2.0 от 14 октября, с установщиком и скриптом обновления |
| Автотесты | 19 наборов; на 13 октября первые 12 давали 330 проверок, все проходят |
| Telegram вживую | прогон на тестовом боте: вход по контакту, задача, таймер, пауза, напоминание, голосовое |
| MAX | транспорт написан, вживую не проверял |
| Сервер заказчика на 8.5 | самопроверка модулей, календарь, хранилище доступов, отчёт |
| API по HTTP | вживую не проверено, нужна публикация от администратора |
| Сдача | в работе, по графику |
Ограничения
Входящая почта написана и проверена на локальном почтовом сервере, ящик заказчика пока не подключён. Для телефонии готов метод API, нужна сторона провайдера. Push-уведомлений нет, потому что нет мобильного приложения: сотрудник получает сообщения в боте, письмом или окном в 1С. Обмен с учётной базой заказчика вынесен в отдельную работу. По календарю заказчик дал замечание по удобству, жду от него конкретику. Эффект в часах и деньгах я не измерял: система ещё не в работе.
Частые вопросы
Зачем делать сервис-деск на 1С?
Команда заказчика и его клиенты и так работают в 1С, сервер с 1С уже есть. Отдельный веб-сервис означал бы ещё одну систему, ещё один вход и обмен данными между ними. Здесь задачи, время, клиенты и отчёт для счёта лежат в одной базе.
Куда уходят голосовые и вопросы клиентов?
Сообщения приходят через Telegram или MAX, а распознавание голоса и ответы модели считаются на сервере заказчика. Облачную модель можно подключить ключом в настройках, по умолчанию стоит локальная.
Что будет, если сотрудник забыл поставить паузу?
Активный таймер у сотрудника один. Когда он берёт другую задачу, текущая встаёт на паузу, и система спрашивает комментарий. Без комментария пауза не сохраняется.
Можно ли добавить третий мессенджер?
Логика бота общая, поэтому новый канал это новый транспорт: получить сообщение и отправить ответ. Сценарии переписывать не придётся.
Коротко о главном
Сервис-деск для команды на 1С можно собрать внутри самой 1С: боты, голос и ИИ работают на том же сервере, отдельная инфраструктура не нужна. Главный риск оказался в разнице платформ 8.3 и 8.5, и закрыл его собственный линтер плюс самопроверка на сервере заказчика. Похожая работа с 1С есть в кейсе про контроль материалов, а про поддержку в мессенджерах я писал в статье о службе поддержки и SLA.
Если вашей команде нужна похожая система задач и учёта времени в 1С, напишите мне в Telegram: t.me/chimitdorzhi.
Всё о мессенджере MAX в одном месте
Эта статья — часть кластера материалов о MAX: разработка ботов и мини-аппов, продвижение канала, воронки, отраслевые сценарии и кейсы с реальными результатами.
Что я делаю для бизнеса
Напишите одной фразой, что нужно. Отвечу, что подойдёт, сколько займёт и сколько стоит. Сообщение уже подготовлено.
- Боты в Telegram, MAX, VK
- Автоматизация процессов и CRM
- Аналитика и дашборды
- Сайты и лендинги под ключ
Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.


