Last few days I had few messages which had phone number in them, none of them were in the format which the default dialler of the phone could understand and dial the number.
Then starts a tussle between remembering the number and typing into the dialler or using notepad where you convert the number into a proper country format and then copy the number and paste into the dialler.
Its incredible that its such a common problem and almost everyone faces it, still no one has solved it. The solution is pretty simple as well, use a library like libphone which converts a raw phone number into canonical phone number based on rules. Also the phone is aware of its MCC & MNC hence we can easily convert the raw phone numbers into canonical. Most of the apps when they ask phone number they do a similar task to normalize the phone numbers.
Once this task is done, then its easy to pass the appropriate number to the dialler which can immediately make the call without any fiddling.
Obviously there would be cases where the normal rules would not fit and you still would have to make changes to phone number but that should be rare.
The biggest challenge is to get something done like this on iOS which is a closed ecosphere, you cant change the dialler or do some smart things while you open the dialler app. On the other hand Android should be pretty straight forward.
Hopefully after reading this blog a smart engineer with some spare time, develops this utility 🙂