Skip to content

AI × 1C Guide v0.4.0 — связка трёх систем

Latest

Choose a tag to compare

@Aleksandr-Litvinenko Aleksandr-Litvinenko released this 14 Aug 05:26
de5284d

Новая инструкция для сценария, где одна и та же работа живёт в трёх системах: клиент пишет заявку в 1С-Коннект, консультант ведёт задачу в Bitrix24, разработчик правит код по задаче Jira. Ни одна из трёх не знает о двух других.

Три находки, ради которых это писалось

  • У 1С-Коннект нет исходящих вебхуков. Это не REST, а SOAP 1.2 на веб-сервисах «1С:Предприятие 8.3» (PartnerWebAPI2). Единственный способ увидеть новую заявку — опрашивать ServiceRequestRead, храня метку последнего чтения у себя. Нужен планировщик с состоянием, а не обработчик события.
  • Часовой лимит переворачивает наивное решение. 120 вызовов в час на список заявок и всего 50 на историю: агент, читающий историю по одной заявке в цикле, блокирует сервис на 50 тикетах. При этом ServiceRequestHistory принимает пакет до 550 ID за вызов.
  • Jira Cloud и Data Center — разные API. В Cloud старые /rest/api/2/search и /rest/api/3/search отключены в 2025 году, замена — POST /rest/api/3/search/jql с nextPageToken и без total. В Data Center старый endpoint работает. Модель уверенно пишет код не под тот вариант и потом «чинит» токен вместо endpoint'а.

Уровни проверки указаны раздельно

Часть Уровень Что сделано
Jira Data Center live-smoke Анонимные вызовы к публичному Jira фонда Apache: JQL-поиск, startAt/total, чтение задачи по ключу, форма ошибки 400. Повторяется читателем без учётной записи
Jira Cloud docs Endpoint и пагинация по документации Atlassian, вызовов не было
1С-Коннект docs Операции, параметры, структура ValueTable и лимиты — из официальной публичной документации; SOAP-конверт собран по опубликованному образцу. Live-вызовов не было: нет доступа к порталу
Bitrix24 без изменений Переиспользован проверенный read-only tasks.task.list

Связка не заявлена как end-to-end. Это написано и в инструкции, и в VERIFICATION.md.

Безопасность примера

connect_jira_bridge_example.py не вызывает ни одной операции записи: разрешены только ServiceRequestRead и ServiceRequestHistory, сборка конверта для чего-либо ещё падает с ошибкой; Bitrix24 ограничен tasks.task.list. Плюс локальный часовой бюджет вызовов, отказ от редиректов, скрытие тем и маркеров без --show-sensitive, отказ от http:// и URL с учётными данными.

Автосоздание задач сознательно не реализовано: ошибка сопоставления, размноженная по трём системам, дороже сэкономленной работы. Связь систем — через настраиваемые поля заявки Field1Field5; заявки без ключа попадают в отдельную корзину, а не сопоставляются по времени и клиенту.

Также в релизе

  • Английские версии главной страницы и всех инструкций по подключению, переключатель языка в обе стороны.
  • Каталог recipes/ переименован в guides/; слово «рецепт» убрано из русского текста.
  • validate_guide.py проверяет английский заголовок ## Verification status и взаимные ссылки языковых версий.
  • 21 новый unit-тест, всего 44 — без сети и без секретов.

Реальные учётные данные и запись в рабочие системы при подготовке релиза не использовались.