All Devices For Any Number

So, all of the numbers can be answered from one VoIP device, but what device is that? Why choose, I say. There is, of course, several SIP clients for Android that I use to register all of the numbers. The nice thing about using everything over data is that my phone doesn't stop working when I lose signal, so long as I still have access to Wi-Fi. This also means that I don't actually need to have a SIM card oin my phone at all. This is useful because I actually have a second, identical Nexus 5. The battery is terrible, so I can always have one charging. They sync automatically, so it doesn't really matter which one I pick up except that I will need the one with the SIM card if I'm going to stray from Wi-Fi.

But I was just mentioning that I don't want to be locked to any one interface, so the same interface on a second device isn't really an improvement. Again, because it only relies on the internet, not a specific cellular network, I can just as easily connect on basically anything with a network connection. SIP applications come in all forms, including for smartphones, all desktop operating systems, tablets and embedded systems. My primary calling device is actually my ThinkPad running Debian with Linphone. I have the same setup on my desktops at work and home.

SMS

So. That's talking, which is the simple part. The nerdy bit comes with SMS. The number of ways that I could send or receive a text message is verging on silly. The obvious place to start is still the text messaging app on my phone. I went with a VoIP provider that already had one in the Play Store. The voice recognition for Android would be a cool way to interact with that, but it is provided by the Google Keyboard which I no longer use because Google creeps me out. So the app is probably my least favourite way to send text messages since the keyboard is small and is always trying to correct my spelling.

SMS-to-Email

This section is now actually sort of dated. As described below, my VoIP service provides an easy SMS to Email tool which I had hacked to allow a variety of ways to interact inbound and outbound. All of them are still possible and I actually do still have the emails coming in to be archived, but I have improved the other methods of interaction. But here is the old techniques if you are curious.

Inbox

This functionality is exactly what it sounds like. When I receive a message, a copy is sent to me as an email. It, of course, uses a special mailbox but I run my own mail server, so I have the VoIP service whitelisted to guarantee delivery and reroute the mail wherever I like. Of course, if reply from any of my email client, that reply will be sent out as an SMS.

Online Archive

I also have my emails archived using my spam filter, so if my mail server is down I can still reply from there and I can even enforce filtering rules if I feel like it. If I don't want texts from area codes other than my own I can just block them, for example. Of course, that doesn't stop them from making it to my phone, but I don't actually look for messages on my phone very often.

IRC

The great thing about email is that it just lands as raw text on the mail server. You can do absolutely anything you want with raw text, so this is where it gets nerdy. My favourite way to answer text messages is IRC. I got addicted to IRC at the office where we use it for everything: generating support tickets based off of caller display, alerts for new email tickets, vacation schedules, meeting and call reminders, and just to chat and ask questions. As a result, I always have an irssi window open and have alerts set up whenever my nick is mentioned.

This allowed me to simply set up procmail to send messages to a special IRC channel mentioning my nick so that I get a notification in the corner of my screen when messages come in. Procmail actually runs a script that creates, or retrieves a nick for each phone number before sending the message to IRC. The nick is made up of a 3 character shortcut plus the actual phone number. That way I can tell who it was from and reply by referencing the shortcut as shown in the image. I have an IRC bot that then parses for the shortcut, finds the associated phone number and sends the message back to it as a reply via email. This way I can have multiple conversations going in the same window, only visible to me, and can reply to each seperately.

My IRC channel is open from anywhere, but password protected outside of my LAN, so as long as my firewall is open and I have an IRC client, this is usually how I 'text'. The fallback is then my desktop email client. If that fails there is always webmail. If my mail server is down I can use my Archiver. Finally, if I don't have access to a keyboard, I can be an animal and answer with my cell phone, but what am I, some sort of Millenial.