Have you looked at Google Voice? I'm in the VOIP industry, but we do business servers/devices etc.
I don't have personal experience with Google voice, but if I'm not mistaken, you can get a free account and port your existing number to them.
At that point you can use a mobile app, or desktop app...