If you’ve made or received a phone call using a mobile app, such as WhatsApp, you’ve used Voice over Internet Protocol (VoIP). A mobile application enabled with VoIP lets you make and receive calls using mobile data instead of the device’s cellular network.
However, VoIP apps have to maintain a persistent connection with a server to receive incoming calls, which means constant communication between the app and the server in the background to keep the connection alive even when the app isn’t in use. Maintaining a persistent connection consumes battery power — but if you kill the app, it loses its connection to the server and cannot receive incoming calls.
Push notification is the solution
Using push notifications is a better way to handle incoming calls on your mobile app. With push notifications, smartphone users can receive an incoming call even when their phone is locked or an app isn’t running in the background.
Plivo mobile SDKs are built to provide a great VoIP experience in your mobile apps, and VoIP push support comes “out of the box.” Your voice-enabled app simply registers with Plivo to receive incoming calls and Plivo manages the rest.
Benefits of push notifications
Push notifications offer several benefits:
- An app can wake up when VoIP push occurs, saving battery power.
- VoIP push goes straight to the app for processing, improving efficiency.
- VoIP push is considered a high-priority notification and delivered to an app without delay.
- An app launches automatically when it receives a VoIP push, removing the requirement to keep the app running in the background.
Push notifications with Plivo mobile SDKs
The Plivo mobile SDKs for Android and iOS come integrated with push notifications. They use Apple Push Notification service (APNs) for iOS and Firebase Cloud Messaging (FCM) for Android to send notifications to an app.
Apple and Google issue push credentials for iOS and Android apps to receive incoming call alerts when push notifications are enabled on the app. Managing multiple push credentials becomes tricky when you’re building apps on different platforms. You’re likely to use unique push credentials for apps in different stages of development — alpha, beta, or general release. If you’re managing several apps with push notifications enabled, you need to generate credentials for each app.
You can manage push credentials on the Voice > Mobile Push Credentials screen of the Plivo console so that Plivo can deliver incoming calls to mobile apps.