Новая инструкция для сценария, где одна и та же работа живёт в трёх системах: клиент пишет заявку в 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 с учётными данными.
Автосоздание задач сознательно не реализовано: ошибка сопоставления, размноженная по трём системам, дороже сэкономленной работы. Связь систем — через настраиваемые поля заявки Field1…Field5; заявки без ключа попадают в отдельную корзину, а не сопоставляются по времени и клиенту.
Также в релизе
- Английские версии главной страницы и всех инструкций по подключению, переключатель языка в обе стороны.
- Каталог
recipes/переименован вguides/; слово «рецепт» убрано из русского текста. validate_guide.pyпроверяет английский заголовок## Verification statusи взаимные ссылки языковых версий.- 21 новый unit-тест, всего 44 — без сети и без секретов.
Реальные учётные данные и запись в рабочие системы при подготовке релиза не использовались.