Контроллеры ресурсов на уровне одной организации + агрегатная система организации + внутренняя синхронизация

FeatureVOIPService
Порезанный
24 апреля 2026 г. в 22:39 UTC
Автор
Kamo
Обещать
3bc4f64

Per-instance ресурс CRUD (расширения / пользователи / устройства / голосовая почта): - VoipExtensionsКонтроллер на **************** Контроллер на /api/voip/instances/{id}/users - VoipDevicesКонтроллер на **************** - VoipVoicemailКонтроллер на **************** - Каждый GET принимает ?refresh=true для принудительной доставки от поставщика и обновления кэша; в противном случае служит из локального кэша для быстрого пользовательского интерфейса. Каждый путь записи вызывает провайдера и обновляет локальный кэш так, чтобы агрегировать Взгляды остаются последовательными, не дожидаясь следующей запланированной синхронизации. - Voicemail GET /{vmId}/audio передает необработанный звук от поставщика через StreamingResponseBody позволяет пользовательскому интерфейсу <audio src=...> Агрегированный орган (VoipOrgAggregateController at /api/voip/org): - /расширения, /пользователи, /устройства, /voicemails возвращают строки в каждом экземпляре с таблетками {instanceId, exampleName}. UI превращает их в агрегированные вкладки в /settings/features/phone. - /health run checkHealth() на каждом активном экземпляре (через кэш-счета InstanceSyncService), возвращает InstanceHealthDto. - POST/sync запускает InstanceSyncService против каждого активного экземпляра Текущая организация. В пользовательском интерфейсе есть кнопка «Sync this org now». Внутренняя синхронизация (VoipInternalSyncController): - POST/internal/voip/sync-global петли всех активных экземпляров по всей платформе. Называется по расписанию работы DaemonService в Кварце. Защищены существующими Внутренний фильтр в VOIPService. Строит зеленый.

Все изменения

Как вы видите судоходство?

Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.

Начните бесплатно навсегдаПосмотреть цены