I built a similar internet-over-voice system for a hackathon a couple of years ago. A mobile app started a call, sent a URL over the line via DTMF tones, the server fetched the page, converted each response character to a frequency, saved it all as a sound file, and played it back over the line.
The app would listen to the call, decode the sound via FFT and display the resultant data as a web page. I found decent results by increasing the pitch variance between notes. The interesting thing about GSM/low-quality audio is that, since quality is known, it might be possible to account for it in a more specific way.
The idea was to provide a means of internet access on a device with no mobile data plan.
Of course, the worst case scenario is just sending everything as DTMF tones, but getting a tweet out would take like an hour
The app would listen to the call, decode the sound via FFT and display the resultant data as a web page. I found decent results by increasing the pitch variance between notes. The interesting thing about GSM/low-quality audio is that, since quality is known, it might be possible to account for it in a more specific way.
The idea was to provide a means of internet access on a device with no mobile data plan.
Of course, the worst case scenario is just sending everything as DTMF tones, but getting a tweet out would take like an hour