Aвторизация пользователей интегрирована через Firebase
Dater написан с использованием самого нового API Apple: Combine, SwiftUI, Compositional layout. Это позволило ускорить разработку. Условно то, на что мы раньше тратили день, теперь можно реализовать за час. Но самым сложным на проекте стала интеграция SRT. Это относительно новый протокол передачи данных и пока очень мало примеров его использования в открытом доступе. Но нам все же удалось его интегрировать.
Сложным в проекте была (и остается) работа с видео. Я раньше с трансляциями никогда не работал, и было много вопросов.
Но, в то же время, работа с видео была самой интересной частью, т.к. раньше такого не делали и было интересно разобраться в том как это работает. Мы использовали SRT-протокол для стабильного соединения без потери пакетов и для защиты от колебаний пропускной способности сети.
Плюс взаимодействие с бекендом устроено на технологиях firebase — прикольно поразбираться в них и некоторые части очень удобно использовать в проекте.
Технологии
Новым и интересным опытом для команды разработки стала работа с потоковыми аудио и видео.
В этом проекте на стороне тестирования специфичных моментов и сложностей было значительно меньше, чем со стороны разработки, хотя работа с Firebase Firestore — это новый опыт для нас. Но например, одна из проблем тестирования — отсутствие запросов и ответов сервера в привычном виде. Поэтому мы не могли их поредактировать, погенерить ошибки и т. п. Но Firebase Firestore дает возможность проверять сами кейсы с отображаемой инфой моментально и удобно. И также впервые работаю с сервисом видеозвонков, трансляций. Это конечно класс!
iOS версия написана с применением нового API Apple: Combine, SwiftUI и Compositional layout.