I am looking for iOS VoIP App developer. I have an app that can make a calls via multicast and SIP. After ~3 minutes in standby app lost all connection, can't receive local push notifications and calls.
Application working modes description.
Right now app have 2 call modes:
1. Via multicast. App found indoor monitor with the same address in network and listen. When someone call from outdoor panel to monitor - monitor redirect call to all app that have the same apartment address.
2. Via SIP. App registering on SIP PBX or VoIP service, as panel, for example. In this mode all devices work as based SIP phones. All calls can be with video.
This app developer before used quickhack to make app work in background - play empty mp3 file. App work in background, phone don't go to deep sleep and don't stop the app, so we can get all calls without any issues. Now Apple reject this quickhack and we can't push it to AppStore.
Now app lost registration on monitor or PBX after 3 minutes in background and we can't get a call to app. Interesting, that if we test app in Xcode simulator - app work perfect and don't go to sleep. If we test it on the real device - it stop working after ~3 minutes, so we thing that issue in background mode. Before iOS 10 Apple had a special VoIP background mode for VoIP calls feature, but now this mode is deprecated, so we need to make it run in sleep/background mode with new VoIP API and receive push notifications via PushKit to make it work stable and stop losing connection.
App written for iOS 7, maybe it's need to be rewritten to iOS 10.
Application will be distributed via AppStore so it should be done without any quickhacks.
Connections controlled by static library, sources is not accessible, for SIP calls used eXosip.
What exactly need to be done:
1. Now app lose VoIP and multicast registration in background mode after ~3 minutes. Need to make it keep connect via VoIP API, maybe add CallAPI support.
2. Add push notification support via PushKit.
3. Make server that will keep connect for VoIP calls and push notifications. Need one global server by default for app that will have access to internet and server implementation for local network, for apps that use calls only in local network. In app we should have field where we can choose our default server or enter IP for local. Actually, I have a plan to preinstall this local server to PBXs with Centos inside.
4. Rewrite code for iOS 10.
5. Add menu for app where we can connect and see IP cameras via RTSP or ONVIF. I think this is not hard to make via VLC libraries.