Tasker: Forwarding Texts and Creating Your Own Android Features

I’m about a year in from when I talked about my current phone, and I’m happy to say that things are going great.  Well, they’ve been going great, but as I write this it seems that Motorola may be making some poor choices as far as supporting phones goes, so we’ll see how things pan out.  But I digress, my Moto X has been working really well, and I’ve been really pleased with the additions from Motorola in Lollipop, and sincerely hope that this experience continues into Marshmallow.  However, despite the features added into Android and those provided by Motorola or the apps you download, there’s always personal tweaks and alterations that users may want.  Thanks to the open nature of Android, these are possible, and thanks to Tasker, it’s possible for all users, wherever you have your phone, even when you’re watching chefs play in a band at your girlfriend’s job.

The Idea

So the situation is this: I’ve got a “work phone.” That’s correct, I’m one of those obnoxious people that you can find carrying around multiple phones on the weekend, checking one, then the other, then pocketing one and putting the other one back on my belt.  And while that’s great and all, I don’t always want to be carrying both around…like when I’m at work and moving around from office to office, meeting to meeting.  It’s hard enough for me to try and remember a water bottle, never mind multiple phones. So what’s a nerd to do?  Normally, I end up leaving my personal phone at my desk when I head out on these little adventures, thereby missing any notifications that may occur in my absence.  Thanks to these wonderful things called apps, and “the cloud,” most of these will be mirrored to the work phone, with the noted exception being calls, and texts.  To stereotype, being a millenial means I don’t have to worry much about missed calls, which leaves texts, which of late I’ve missed quite a number of important ones, including a “you locked me out and I can’t get to work”…definitely room to improve here.  So it was while listening to some chefs cook up some classics, I saw a feature in Tasker that read “Send SMS,” and an idea was born: What if my phone could text my work phone and let me know I’m missing something?

The Task

I immediately created a simple task to send a text, ran it, and watched it appear on the other phone.  Then while poking around the settings, I realized Tasker could identify the sender, message body, and sending number.  Suddenly my simple notification was becoming more advanced.  With my phone forwarding all this information, I began to wonder if the converse was possible…could I get my phone to respond to messages as well?

I needed a way for my phone to be able to differentiate between me replying to a text, and someone else sending me a new one.  Luckily, I had Tasker Variables at my disposal.  I stored the work phone’s number in a variable, and could now compare a sender’s number against it.  If they matched, I knew it would be a reply from myself and if they were not the same, that would be a new message that would need to be forwarded.  This worked great with one notable exception: how would my phone know who to reply to in the event of multiple texts?  I needed a format of some sort.

Expanding the Use and Functionality

Delving deeper into Tasker, and with a little substantial help from Google, I discovered the numerous ways to manipulate variables.  This allowed me to segment and parse variables I already had, most importantly the body of a text message.  With this I was able to create and decode a sort of “message header” with the texts.  By using a format to specify a person, their number, and the associated message body, when receiving a new text I was now be able to know who it was from and what phone number they were using, and when replying, my phone would be able to determine what number to send the text to as well as what the message was.  I had been able to turn my phone from an endpoint, to a forwarding device, and finally to a middleman in about an hour of tinkering.  By subsequently revising my regular expression, I was able to account for some bugs such as newlines, and even get emojis working (an absolute MUST, I know).

With the chef band getting late into their second set I knew I didn’t have too much time left, but I did know that Tasker had some more to offer me.  Since it would behoove me to know when this Tasker profile was active, I added a persistent notification that tells me as much, and threw in the forwarding number for good measure.  I then made it actionable, so that I’d be able to disable it right from the Notification Shade.  I had now taken care of everything except turning this forwarding on.  Leveraging one of my favorite features of the Moto X (constant activation-phrase detection), I used the AutoVoice plugin to set the profile up to be activated when I tell my phone to “forward my texts,” at which point my phone will audibly respond letting me know that it is activated.  Unnecessary? Yes, but then again isn’t this whole process?

A Feature Complete

At this point the band was saying their thank yous, and the place was getting ready to close up for the night, but I had a working, voice-activated Text-Forwarder.  It was a little rough around the edges, but it was unmatched in terms of the ease of creation.  I even went so far as to combine this with my Google Voice (…err Hangouts?) number, and got myself a poor-man’s version of iMessage, not too shabby in my opinion.  Now with my increased knowledge and experience with it, I can’t wait to see what else comes to mind the next time I’m exploring the features of Tasker!