call 26.950.0 Ломающее

Call 26.900.0–26.950.0: новое ядро звонков, REST чатов и мобильное меню

5 мин чтения Устаревших API: 33
Узнавайте о ломающих изменениях Битрикса раньше, чем они доедут до прода: свежие разборы — в канале @bxmax_updates

Ломающее обновление

Удалены или изменены публичные API — прикладной код может перестать работать.

Call 26.900.0, 26.925.0 и 26.950.0 меняют подключение интерфейса звонков и добавляют проверку участия во встречах. В том же пакете идут im 26.1300.0, immobile 26.1400.0, mobile 26.1300.0, intranetmobile 26.800.0, stafftrackmobile 26.500.0, timemanmobile 26.500.0 и vibecodeconnector 26.900.0: новые методы чатов, управляемое меню и приложения с собственными чатами. REST 26.1100.0 уже разобран отдельно.

Новое

Узнайте, участвовал ли сотрудник во встрече

В call 26.925.0 появился публичный MeetingCallParticipationProvider::getForMeetings(). Передайте чаты и временные окна встреч; ответ содержит participated, notParticipated или unknown для каждого ключа:

        use Bitrix\Call\Public\Provider\MeetingCallParticipationProvider;
use Bitrix\Main\Loader;

Loader::requireModule('call');
$from = new DateTimeImmutable('2026-11-02 10:00:00+03:00');
$to = $from->modify('+1 hour');
$statuses = (new MeetingCallParticipationProvider())->getForMeetings(
    ['planning' => ['chatId' => $chatId, 'windowFrom' => $from, 'windowTo' => $to]],
    $userId,
    $from,
    $to,
);

    

Провайдер обрабатывает до 500 валидных встреч, остальные остаются unknown. Если найдено больше 2000 звонков, unknown вернётся для всех. «Не участвовал» требует завершённых звонков, записи участника без первого входа и однозначного соответствия звонка встрече. Превращать unknown в прогул нельзя.

В call 26.950.0 появились кнопка «Звонок Синк» и список активных звонков Синк. Нужен syncconnector; опции call/sync_call_enabled и call/sync_active_calls_enabled по умолчанию выключены.

Скачивайте файлы и связывайте чаты с отделами

В im 26.1300.0 im.v2.File.directDownload отдаёт тело файла внешнему клиенту без cookie портала; типы — full и preview, REST batch запрещён. im.v2.Chat.Structure.link связывает чат максимум с десятью отделами за запрос и требует права LinkStructureNode.

im.v2.Chat.Message.unread отмечает чат непрочитанным с выбранного сообщения, а Folder.getSources/updateSources управляют источниками папки. В immobile 26.1400.0 появились интерфейсы пересылки нескольким получателям, карточек контактов и перехода по дате. Папка «Все» зависит от флага im; карточки контактов — от выключенной по умолчанию опции contact_card_available.

Назначайте мобильное меню сотрудникам

Mobile 26.1300.0 включает управляемые пресеты нижней панели по умолчанию. Администратор и руководители отделов создают до 20 своих пресетов и назначают их сотрудникам или отделам; общий пресет портала задаёт администратор. QR-вход на другом устройстве выключен по умолчанию, одноразовая ссылка живёт 60 секунд, максимум 300.

В intranetmobile 26.800.0 администратор нового или тестового портала выбирает сценарий работы в анкете квалификации; сохранять её ответы теперь может только администратор. Stafftrackmobile 26.500.0 передаёт сигнал присутствия в офисе и добавляет выбор сотрудников на карте за флагом. Timemanmobile 26.500.0 поддерживает отправку и оценку рабочих отчётов по старой схеме и новый экран начала дня.

Vibecodeconnector 26.900.0 добавляет прямые ссылки /vibecode/app/{id}, превью приложений в чатах, избранное и встройки через скрытые методы REST v3. Собственные чаты приложений синхронизируются с доступом к приложению; флаги этих чатов по умолчанию выключены.

Что сломается

Переподключите интерфейс звонков (26.900.0)

Виджеты call.component.*, перечисленные в реестре удалений, переехали в call.widget.*, их пространство имён — BX.Call.Widget. Старые компоненты списков участников и конференций теперь подключаются как call.legacy.component.*. Проверьте копии шаблонов call.ai и call.conference.edit. Вместо call.vue загружайте call.application.call; из call.core удалены IncomingNotificationContent, NotificationConferenceContent и PromoService.

Settings::isVueEnabled() заменён на isNewCoreEnabled(), опция call_vue_enabled — на call_new_core_enabled со значением 'Y'. CallFactory::searchActiveByUuid() теперь принимает только UUID: из старого вызова уберите первый аргумент-провайдер. Для изменения состояния звонка используйте updateState() и commitFinish(): save() существующего звонка больше не сохраняет STATE и END_DATE.

Учтите отказы и новые ответы

Гости по умолчанию больше не начинают звонки (call 26.900.0). Это включает опция guest_outgoing_call_enabled=Y, но звонить и приглашать можно только в свой чат. Для звонка 1-1 также нужна новая схема plain-звонков. call.Call.invite принимает POST и проверяет Origin. Исправлена подмена трека в call.Track.get/drop, а call.user.update проверяет членство в чате.

В im 26.1300.0 пересылка через im.v2.Chat.Message.send с недоступным forwardIds завершается NOT_FOUND; проверяйте также failureMap для частичных отказов. im.disk.file.commit без чтения файла отвечает ACCESS_ERROR и HTTP 403. Наследникам Chat::sendPushUpdateMessage() нужен новый параметр bool $compositionUpdated; методы RecentConfigManager, принимающие тип чата, теперь требуют enum Chat\Type.

DateNavigationService::createForClientOffset() заменён на createForClient($chat, $timezoneId, $offset). Удалён Features::isTaskChatAutoUnmuteAvailable(). В mobile удалён ThemeProvider::isSvgTheme(), а Menu\AhaMoment::getMenuAhaMoment() требует раздел MyCompanyProvider и флаг canInvite.

Mobile 26.1300.0 также закрывает изменение чужого дела через старый mobile.crm.activity.edit/ajax.php: право обновления проверяется по самому делу, вместо переданных клиентом владельца и его типа. В mobile.webdav.file.list десериализация теперь запрещает создание PHP-объектов.

Замените сброс мобильного меню

Mobile 26.1300.0 больше не регистрирует общий тег mobile_custom_menu. После изменения своих пунктов вызывайте (new MobileMenuCacheInvalidator())->clearUser($userId) из Bitrix\Mobile\Tab\Preset\Service; для массива есть clearUsers(). Удалены JN-расширения layout/ui/checkbox и layout/ui/file/icon. У GuestCheckout обязателен язык портала, в конструктор CommonUserDto вставлен isSystemUser: проверьте позиционные вызовы.

Deprecated

В mobile 26.1300.0 Mobile\Config\Feature и FeatureFlag уступают место Main\Config\Feature и Main\Config\Feature\AbstractFlag. У Mobile\Dto\Dto исправлена опечатка в @deprecated; рекомендация прежняя: обычные readonly-классы.

Устаревшие и удалённые API в этой версии

Символ Статус Чем заменять
BX.Call.PromoService Удалено —
BX.Call.NotificationConferenceContent Удалено —
Bitrix\Mobile\Config\Feature Deprecated Bitrix\Main\Config\Feature
Bitrix\Mobile\Config\FeatureFlag Deprecated Bitrix\Main\Config\Feature\AbstractFlag
Bitrix\Mobile\Dto\Dto Deprecated readonly PHP-классы
Bitrix\Call\Settings::isVueEnabled() Удалено Bitrix\Call\Settings::isNewCoreEnabled()
Bitrix\Im\V2\Message\DateNavigation\DateNavigationService::createForClientOffset() Удалено Bitrix\Im\V2\Message\DateNavigation\DateNavigationService::createForClient()
Bitrix\Im\V2\Application\Features::isTaskChatAutoUnmuteAvailable() Удалено —
Bitrix\Mobile\Provider\ThemeProvider::isSvgTheme() Удалено —
Bitrix\IntranetMobile\Invitation\InvitationAhaMoment::getFirstInviteAhaMoment() Удалено —
Bitrix\IntranetMobile\Invitation\InvitationAhaMoment::FIRST_INVITE_TOURIST_EVENT Удалено —
call.component.active-call Удалено call.widget.active-call
call.component.active-call-list Удалено call.widget.active-call-list
call.component.call-button Удалено call.widget.call-button
call.component.call-invite Удалено call.widget.call-invite
call.component.call-message Удалено call.widget.call-message
call.component.compact-active-call Удалено call.widget.compact-active-call
call.component.compact-active-call-list Удалено call.widget.compact-active-call-list
call.component.call-background Удалено call.legacy.component.call-background
call.component.v2.call-background Удалено call.legacy.component.v2.call-background
call.component.call-feedback Удалено call.legacy.component.call-feedback
call.component.conference.conference-create Удалено call.legacy.component.conference.conference-create
call.component.conference.conference-edit Удалено call.legacy.component.conference.conference-edit
call.component.conference.conference-public Удалено call.legacy.component.conference.conference-public
call.component.elements Удалено call.legacy.component.elements
call.component.user-list Удалено call.legacy.component.user-list
call.component.user-list-popup Удалено call.legacy.component.user-list-popup
call.component.video-quality-range Удалено call.legacy.component.video-quality-range
call.vue Удалено call.application.call
BX.Call.IncomingNotificationContent Удалено —
layout/ui/checkbox::CheckBox Удалено —
layout/ui/file/icon::FileIcon Удалено —
layout/ui/file/icon::MediaType Удалено —

Новая версия вышла — разбор уже в Telegram

В канале @bxmax_updates публикуем каждый свежий разбор: что сломается, что устарело и что появилось в API. Узнаете до того, как обновите прод.

Подписаться

Читайте дальше

call 26.975.0 Рутинное Свежее

Call 26.975.0: исправлено приглашение в звонок из iOS-приложения

Call 26.975.0 исправляет приглашение участников в звонок из мобильного приложения на iOS, публичный API модуля не менялся. Приглашение блокировал фильтр `Bitrix\Call\Controller\ActionFilter\SameOrigin` из 26.900.0 ([разбор](/bitrix-updates/call/call-26-950-0)), потому что iOS-клиент шлёт Origin голы…

1 мин
call 26.800.0 Безопасность Свежее

Call 26.800.0 + callmobile 26.800.0: гость больше не попадёт в чужой чат через конференцию, у CallAIError новые константы

call 26.800.0 и callmobile 26.800.0 пришли одним пакетом с [im 26.1100.0](/bitrix-updates/im/im-26-1100-0), [immobile 26.1200.0](/bitrix-updates/immobile/immobile-26-1200-0) и [intranet 26.1500.0](/bitrix-updates/intranet/intranet-26-1700-0), у них свои разборы. В call закрыли несколько дыр в гостев…

3 мин
voximplant 26.900.0 Заметное Свежее

Voximplant 26.900.0: подписанные параметры экспорта статистики

Voximplant 26.900.0 подписывает имя компонента при экспорте детализации статистики. Обновление также исправляет REST-сценарии, отметку пропущенного переадресованного звонка и чтение настроек прокси.

1 мин
superset 26.700.0 Заметное Свежее

Superset 26.700.0: пользовательский контекст и проверяемый act-as

Версия 26.700.0 добавляет пользовательский контекст Superset в публичные провайдеры и команды. Проверяемый act-as для SQL Lab включается явно, поэтому существующие вызовы продолжают работать по-прежнему. Все новые параметры необязательны, прежние значения по умолчанию сохранены.

2 мин
Мы используем файлы cookie для улучшения работы сайта. Продолжая использовать сайт, вы соглашаетесь с нашей политикой конфиденциальности.
AI Домовой

AI Домовой История

на связи

пишет…

Можно закрыть чат и перейти на другую страницу. Когда ответ будет готов, на кнопке Домового появится отметка.

Нет истории чатов
AI Домовой

Нужна авторизация

Войдите, чтобы задавать вопросы AI Домовому.

Войти