How to Build an Audio Application that Handles Common Internet Connection Problems
Audio is experiencing a renaissance. With live audio, wearable tech and voice operated smart devices on the rise, this innovative technology is keeping people connected more than ever. However, despite the rapid growth, the audio landscape does have its own limitations due to various network conditions. One of the most common problems end users experience is poor internet connection. This is especially the case in certain geographies with unreliable internet infrastructure. More commonly, mobile device users are constantly switching between networks to stay connected as they go on with their day to day. At Voxer, we wanted to ensure that all end users- even those with slower or intermittent connections have the best possible audio and messaging experience.
In this blog post, we will review connectivity issues user commonly face, examples of application types where handling these connectivity limitations are detrimental to the end users experience for the app to remain useful and how the Voxer SDK allows developers to integrate the technology needed to handle connection dropouts.
Common internet connectivity issues
A short internet disruption may seem like just a minor inconvenience however, without considering the nature of all network conditions and implementing the technology needed to compensate for their limitations the cost would be messages will not be able to be sent and received. The follow are challenges dealing with internet protocol:
– Unreliable local area network
– Network switching when mobile devices undergo connecting from secure WIFI networks, to public internet, to slower cellular, to LTE/5G
– Insufficient bandwidth
– Insecure networks
– Crowded channels – too many connections on WIFI channel
App use cases that require intermittent connection handling
When designing for audio centric applications, requirements for audio quality, audio sources and audio devices, and low latency often come to mind. However, with the above internet conditions noted, it is imperative that having the ability to retrieve the message during time outs is crucial for allowing the app to remain useful. The following are examples of types of applications where the consideration of network conditions are critical
– Sport applications that involve activities like running, cycling, motorcycling, and skiing where users are communicating with one another as the move between areas with different connectivity
– Integrated applications with bluetooth headsets or wearable tech where users constantly on the move or in large crowds such as guided tour applications
– Dispatching or emergency response applications where users are dispersed among various network connections and receiving every message timely is critical
How to send audio over intermittent network conditions with Voxer SDK
With the above use cases and pain points in mind we have build a solution into the Voxer SDK that enables users to send audio messages during intermittent network interruptions. By hitting our API, during times of disconnection audio messages are partially uploaded and then downloaded upon reconnection where as traditional calls and other live streaming technology disconnect entirely during an intermittent network. This results in users being able to send and receive full audio messages efficiently and never missing a message even with unreliable network connection. Messages are partially sent as devices regain connection, in order, and are timestamped appropriately. To learn more and integrate reliable live audio and other messaging features into your application, you can sign up for access to the Voxer SDK at https://get.voxer.com/sdk/.