Заказ закрыт
Разработка ios приложения (интеграция с фреймворком)

Бюджет: по договоренности
1. Необходимо интегрировать фреймворк livekit в iOS приложение 
2. Интегрировать с callkit
3. Сделать верстку по дизайну интерфейса

Техническое задание: Интеграция аудиозвонков через LiveKit и CallKit в iOS-приложение с поддержкой VoIP

Цель

Обеспечить полноценную поддержку аудиозвонков в iOS-приложении на базе LiveKit, с нативным отображением звонков через CallKit, и приёмом входящих звонков через VoIP Push (PushKit). Комната создаётся автоматически, без участия пользователя.



1. Интеграция LiveKit (аудио)

Задачи:
• Подключить LiveKit iOS SDK.
• Реализовать подключение к существующему серверу LiveKit:
• Комната определяется автоматически сервером
• Аутентификация происходит через access-токен, получаемый от backend-а
• Поддерживаемые функции:
• Подключение к комнате только с аудио-треком
• Управление микрофоном (включение/отключение)
• Завершение сессии (включая удаление из комнаты)
• Обработка событий:
• Подключение и отключение участников
• Ошибки подключения и потери соединения



2. Интеграция CallKit

Задачи:
• Настроить CallKit (CXProvider + CXCallController) для:
• Отображения системного интерфейса звонков
• Управления действиями: ответ, отклонить, завершить, микрофон
• Сценарии:
• Исходящий звонок: инициируется из приложения, отображается через CallKit, автоматически подключается к LiveKit
• Входящий звонок: инициируется через VoIP push, отображается системный экран звонка, при ответе — подключение к LiveKit
• Логика синхронизации:
• Ответ в CallKit → подключение к комнате LiveKit
• Завершение вызова → отключение от LiveKit и уведомление CallKit



3. VoIP Push-уведомления

Задачи:
• Интеграция PushKit для приёма VoIP push-уведомлений
• Получение и регистрация VoIP-токена
• Обработка входящих push-сообщений:
• На входящее уведомление — вызов CallKit (CXProvider.reportNewIncomingCall)
• Подключение к комнате LiveKit после принятия вызова
• Учет сценариев фонового режима и закрытого приложения



4. Поведение приложения

Исходящий вызов:
1. Пользователь нажимает “Позвонить” в приложении.
2. Вызов отображается через CallKit.
3. Подключение к комнате LiveKit происходит при старте звонка.

Входящий вызов:
1. Сервер отправляет VoIP push.
2. Приложение получает уведомление и вызывает CallKit.
3. При ответе — подключение к LiveKit и начало аудиосессии.



Ожидаемый результат
• Поддержка исходящих и входящих аудиозвонков.
• Стабильная работа через CallKit с отображением системных звонков.
• Транспорт аудио — через LiveKit, с надёжным соединением.
• Входящие вызовы через VoIP push (PushKit).
• Минимальное участие пользователя — комната и соединение происходят автоматически.
Опубликован 22.05.2025 в 08:17 Последнее изменение: 22.05.2025 в 09:29
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.