IOS Dev для исправления работы VoIP Push нотификаций в Linphone
Ищу iOS Objective-C разработчика с опытом работы с VoIP.
Имеется приложение на базе Linphone, собственные SIP и PUSH серверы. Приложение использует VoIP Push и CallKit для отображения и приема звонков на iOS.
Проблема состоит в следующем:
1. Приложение получает push нотификацию, iOS отображает экран входящего вызова CallKit.
2. Пользователь отвечает на звонок, приложение открывае главный экран приложения вместо экрана разговора.
3. При переходе на домашний экран iOS, вверху экрана отображается зеленая строка текущего вызова.
4. При нажатии на строку вызова, iOS откроет меню текущего вызовов.
5. После завершения вызова в логе приложения можно прочесть, что SIP-соединение не было установлено.
Также в журналах приложения мы видим несколько ошибок:
1. Иногда приложение не может распасрсить заголовок «To», потому что размер заголовка, приходящий с сервера, больше, чем ограничение на его длину в приложении.
2. Ошибка CallKit после получения push-уведомления.
```
ERROR (roviderDelegate.m:187 ) CallKit: cannot complete incoming call from [29028] caused by [The operation couldnÕt be completed. (com.apple.CallKit.error.incomingcall error 2.)]
2020-08-17 15:03:11:320 [bctbx] DEBUG (roviderDelegate.m:455 ) CallKit : Call changed
```
3. CallKit не ожидает вызова после получения push нотификации.
```
2020-08-17 15:09:31:807 [bctbx] DEBUG (roviderDelegate.m:273 ) CallKit : Answering Call
2020-08-17 15:09:31:822 [bctbx] DEBUG (roviderDelegate.m:455 ) CallKit : Call changed
2020-08-17 15:09:32:090 [bctbx] DEBUG (roviderDelegate.m:401 ) CallKit : Audio session activated
2020-08-17 15:09:32:090 [bctbx] ERROR (roviderDelegate.m:422 ) CallKit : No pending call
```
Журнал приложений доступен в gist - https://gist.github.com/dmpanch/27749d0985cff18d15eda8d23274a9d9
Видео с описанной проблемой - https://mega.nz/file/knQUQb7I#lbtKWRS2fuIXWpbmlq9Thx5EKUeSCHw2ywXSYuvawdA
Наши предположения о проблеме:
CallKit ожидает INVITE от сервера через определенное время после получения VoIP push нотификации, Linphone использует таймеры, а не модель подписки, чтобы проверить, поступил ли вызов после push нотификации, и если CallKit ожиает слишком долго/не получает INVITE вообще/получает INVITE перед push нотификацией - телефон отображает экран вызовов iOS, но после ответа на вызов соединение не устанавливается.
Необходимо исправить указанные выше ошибки и добиться стабильного соединения после push нотификации.
-
143 Здравствуйте! Интересно взять работы! Опыть есть по voip и libphone
Aktualne zlecenia dla freelancerów w kategorii Programowanie na iOS (iPhone i iPad)
Aplikacja mobilna iOS/Androd
75 PLN
Poszukuję programisty aplikacji mobilnych (iOS i/lub Android) do stworzenia aplikacji treningowej dla osób początkujących i średniozaawansowanych. Aplikacja ma pomagać użytkownikom w planowaniu treningów, monitorowaniu postępów i motywowaniu do regularnej aktywności fizycznej.… Programowanie na Androida, Programowanie na iOS (iPhone i iPad) ∙ 8 godzin 37 minut temu ∙ 7 ofert |
Rozwój aplikacji na iOSDzień dobry, chcemy stworzyć aplikację na zasadzie Saldo, dotycząca finansowej wiedzy z integracją banków, a w przyszłości kryptowalut, organizacja wydatków i kosztów Interesują nas terminy i widełki kosztów na stworzenie, chcielibyśmy zacząć od szkieletu i stopniowo wypełniać… Programowanie na iOS (iPhone i iPad) ∙ 1 dzień 2 godziny temu ∙ 30 ofert |
Dopracowanie aplikacji mobilnej na Capacitor (Android/iOS)O projekcie Jest działająca strona (rynek z ogłoszeniami), która już została opakowana w aplikację mobilną za pomocą Capacitor. Strona działa na: TanStack Start (SSR) Supabase Cloudflare Pages Android (Capacitor) Wymagana jest finalizacja aplikacji mobilnej do pełnej… Programowanie na Androida, Programowanie na iOS (iPhone i iPad) ∙ 5 dni 21 godzin temu ∙ 12 ofert |
Mobilna aplikacja na iOS "Flight Radar"Witam! Szukam dewelopera iOS do stworzenia aplikacji mobilnej. Pomysł, jak w Flightradar24 – śledzenie lotów, przewodnik po lotniskach. Wszystkie dane będą pobierane przez API. Posiadam gotowy projekt. Należy opracować aplikację w tym projekcie. Chciałbym prosić o oszacowanie… Programowanie na iOS (iPhone i iPad) ∙ 8 dni 5 godzin temu ∙ 44 oferty |