Blockr, Block Unwanted Calls on Your Android Phone

28 Nov

Description

If you are being hounded by a caller who you don’t want to hear from any longer, then this solution will take care of your problem.  Blockr is a Tasker profile that disconnects a call from telephone numbers of your choice.  It provides you with very robust matching capabilities which will allow you to block calls from multiple phone numbers, all hidden telephone numbers, all unknown callers, and specific area codes.

You Will Need

Tasker application for Android
– A former significant other, a stalker, a tax collector, an intrusive boss, or the like

Solution

You will set up an Incoming Call context that evaluates the telephone number for each incoming call.   If the incoming call matches the number(s) in your blocked caller list, the call will automatically be disconnected and will not be sent to voicemail.

Start with These Steps

  • Open Tasker
  • Create a new Profile and name it Blockr
  • Select the State context menu and the Incoming Call context from that menu
  • Keep this screen open and follow the instructions below to indicate which calls you would like to block on your phone

Programming the Blocked Telephone Numbers

You have the option to enter a single number, multiple telephone numbers, any number that is not listed in your contacts, or any number that is not listed as a favorite in your contacts.  Any combination of the above options can be included in the blocked call list.  Multiple numbers are separated by the ‘/’ symbol which indicates ‘or’ in Tasker’s pattern match.  You can also use the * symbol to indicate a match with any number of characters in the telephone number to create area code (or country code) call blocks.  Here are examples of what you need to enter in the Caller field of the Incoming Call context dialog box in order to create each type of call block list:

1. To block a single caller with the number 123-456-7890 enter:

1234567890

2. To block two telephone numbers, enter the telephone numbers with a / symbol between them:

1234567890/1234567891

3. To block three telephone numbers, enter all three telephone numbers with the / between them:

1234567890/1234567890/1234567892

4. To block calls from individuals who are using a caller ID blocking feature enter the number zero:

0

5. To block calls from individuals who are not in your contact list, a pre-configured variable that matches all numbers in your contact list is used (C:ANY) with the exclamation point.  The ! indicates ‘not’ and is literally interpreted as all callers that are not the number that you enter.  In this case, all numbers that are not part of your contact list:

!C:ANY

6. To block calls from both callers with caller ID blocked and those who are not listed as your contacts enter:

0/!C:ANY

7. To block a number of a specific caller and individuals with caller ID blocked enter the number, the / separator, and zero:

1234567890/0

8. To block calls from all numbers except for one caller, enter an exclamation point before the number of the caller that you want to allow.

!1234567890

9. To block calls from all callers except those who are in your favorite list, enter:

!C:FAV

10. To block all calls from an area code, use the * symbol to indicate that any number of characters can be matched following the first three digits (US area code) that you enter.  In the following example, any telephone number from the 123 area code would be blocked:

123*

11.  Block all calls from two area codes.  Simply use the / symbol to combine the area code match in example 10.  In the following example, all calls from numbers with area codes 123 or 321 will be blocked:

123*/321*

Attach the Call Blocking Action

  • Click Done on the Incoming Call context window
  • Select New Task from the top of the Task selection window that is displayed
  • Name the task CallBlock
  • Click the (+) button at the bottom left hand of the screen to add a new action
  • Select the Phone action menu
  • Select the Take Call action from the Phone action menu
  • Click Done
  • Click the (+) button at the bottom left hand of the screen to add a new action
  • Select the Phone action menu
  • Select the End Call action from the Phone action menu
  • Click Done
  • Click Done again on the Task Edit window
  • Make sure that the green check mark is displayed next to the Blockr profile on the Profile screen
  • Click Apply

Tasker will close and Blockr will begin to actively watch your incoming calls for those numbers in your call block list.  When an incoming call with one of the matched numbers is detected, the call is disconnected and your ringer is silenced.  You set the actions up to briefly answer and immediately disconnect the call so it is not sent to your voicemail.

Modify Blockr to Direct Calls to Voicemail

If you would prefer to send the calls to your voicemail rather than simply disconnect the caller, eliminate the Take Call action from the CallBlock task and only use the End Call action.  With this modification, your phone will silence the ringer and immediately send the call to voicemail for any matched telephone number(s).

Testing

In my testing on a Motorola Droid against a single telephone number match, the call was disconnected after a single ring on 10 out of 10 attempts.  It works!

31 Responses to “Blockr, Block Unwanted Calls on Your Android Phone”

  1. Edward November 30, 2010 at 4:31 pm #

    First off great site. Thanks for the great instructions on these profiles and how they need to be put into tasker.
    I have put this Blockr profile into tasker and when I put the !C:FAV into the Call context dialog box everything works as described above, but if I have !C:FAV/0 it blocks all incoming calls, even known ones. If I reverse 0/!C:FAV it also blocks all incoming calls. Is there a way to do this or is a limitation of tasker somehow?
    Thanks for your time and looking forward to the next project you may have in store for us readers.

    • Chris November 30, 2010 at 9:48 pm #

      Thank you very much for the nice comments Edward. I am glad to hear that you’ve found these tutorials helpful.

      Sorry to hear that you are having problems with telephone number matching. I checked the Tasker User Guide and found this:

      a ! at the very start of a match means not e.g. !*Magic*/*Yellow* matches anything not containing the words Magic or Yellow

      That explains why the first statement that you entered does not work (!C:FAV/o). The ! is apparently applied to both statements so your match literally reads: block calls from anyone who is not a favorite or is not unknown. I am puzzled by the fact that the second one does not work. It should block all calls from anyone who is unknown or not in your favorites list. The simple solution is to change the statement to !C:FAV alone because any caller who is unknown is, by definition, not in your favorites list. !C:FAV will block calls from everyone except your favorites (including contacts who are not favorites).

      If you would like to dig a bit deeper into this, there is a very active users forum for Tasker. It’s hosted on Google Groups and you will need a Google account to sign up for it. I would also recommend the Pattern Matching section of the User Guide. Hope that this helps a bit. Please let me know if you track down any more information about it!

      • Chris January 7, 2011 at 12:51 pm #

        v 1.0.17 just fixed this issue. from the developer’s version notes:

        change: incoming call from ‘PRIVATE/ABSENT NUMBER’ is changed to 0 for compatibility with other OS/devices

  2. Bioshi December 3, 2010 at 1:11 am #

    Very instructive blog !!! Empressed !!!

    This tip is cool, but do you know if it’s possible to block SMS too ?

    Best Regards

  3. rob December 22, 2010 at 8:41 pm #

    This don’t work with samsung moment

    • Chris December 22, 2010 at 10:13 pm #

      Is the profile active?

      • rob December 24, 2010 at 4:56 pm #

        No it never goes active and yes there is a check next to it so it will run.

      • Chris January 3, 2011 at 2:20 pm #

        @rob Sorry to hear that Rob. Unfortuately I don’t have any experience with Samsung phones but perhaps another reader will be able to provide some feedback. You can post the problem on the Tasker Google Groups site to see if there is anyone there who can give you a hand:

        http://groups.google.com/group/tasker

  4. Steve December 31, 2010 at 3:00 pm #

    HUGE THANKS for this post. I have been very frustrated by toll-free numbers & unknonw callers and VZW only allowing me to block certain numbers without paying a monthly fee. This task solves my frustration! Thanks so much!

    • Chris December 31, 2010 at 3:28 pm #

      Perfect! Glad it helped!

  5. bbman January 13, 2011 at 1:35 pm #

    Great site, have used a few of these with great success. However, this one didn’t quite work for me with the instructions provided. However, when I changed the collision handling of the CallBlock task to Run Both Together, it finally did work correctly…maybe I have a conflicting profile?
    One other thing I did, I selected One Contact in the Incoming Call context and selected a contact I created called IGNORE (which has it’s ringer set to silent also), when I add new numbers to that contact, they are also blocked. So I don’t have to edit the Tasker profile at all…

    • Chris January 13, 2011 at 9:19 pm #

      Thanks for the comment bb. I’m not sure why the collision handling change was necessary. Are you running other profiles based on incoming calls? I like the ignore contact method that you used. That is novel. Are you able to add additional numbers to the contact and block all of them as long as that ignore contact is recognized as the caller?

      -c

  6. Roger January 14, 2011 at 8:10 pm #

    Tried this in Canada and it didn’t work. It took the call, but didn’t end it.

    HTC Desire

    • Chris January 14, 2011 at 10:58 pm #

      Sorry, don’t have any idea why that would be the case. Any other Canadian Tasker users out there?

  7. Roger February 14, 2011 at 10:01 am #

    I searched the Tasker website and the internet with no answers. I figured it out, however. It’s the same problem as the GPS activation before running the navigation app. If there is no delay between GPS and running a program it misses it. So I added a one second delay between taking the call and ending it and voila!

    • Chris February 14, 2011 at 1:00 pm #

      Excellent!

  8. IronPixel February 14, 2011 at 12:04 pm #

    Thanks! This is terrific, but it didn’t quite work for me as written; it takes the call but doesn’t end it.
    According to someone on xda there is a bug in Android’s telephonyService.endCall() function. One suggested work around is to have Tasker take the call, turn on airplane mode then turn it off again.
    I was also wondering if you could play a sound file, ie the disconnected message or fax noise, before hanging up.

  9. LBX February 25, 2011 at 9:56 am #

    Nice explanation. Would like to know if you can block groups with this idea. This would make it easier than having to enter tons of numbers in some cases.

  10. phil March 26, 2011 at 8:02 pm #

    I went through your call blocker setup and then decided to make it go to voicemail. I ended up redoing the whole profile and skipped the “take call” action. I redid the whole profile because I didn’t know how to just delete the action in the profile.
    Is there a way to delete actions?

    • Chris March 26, 2011 at 8:21 pm #

      Long press on the action and drag it down to the trash can. Good luck! Thanks for stopping by.

  11. Nick May 7, 2011 at 1:56 pm #

    Is there a way to set this up so that when certain numbers call, you can have the call automatically forwarded to a different number? I’ve been trying to set this up for a few weeks and can’t figure it out.

    Thanks!
    Nick

  12. oscar May 25, 2011 at 9:38 am #

    I’m trying to use this method to change the ringtone depending on the caller ID so I can identify calls from my work. so into first box, where I shuld but the phone number I enter 0872* because all of our numbers at work starts with that numbers. Then I do a task that changes the ringtone. It worked once, but then it won’t work anymore… Why ?

  13. Seth G May 29, 2011 at 9:07 am #

    Hi,

    Is this possible to setup using this profile: I want to send certain numbers to voicemail after a certain hour without ringing my phone. How would I do that?

  14. Harold July 28, 2011 at 1:54 pm #

    Nice post but I wanted something that would keep my volume on zero but turn it up for people on my contact list so I could take their calls, block anyone on my blacklist and do not leave an option for them to go to voicemail, send everyone outside my selected area code to voicemail and give me the option of inside my area code taking it or sending it to voicemail. That’s a lot for something like this to do but illustrates how you can do almost anything.
    For me my default volume is 2. The first task is if it is inside the area code then set the volume to 5. Then if it is on my contact list then set it to 7 (I really want to know when they call). Then if it is one of the list of blocked numbers it should pick up. Then if it is not in my selected area codes or on my contact list it should end call.
    So, call from contacts and people inside my area code ring until answered or go to voice mail if I don’t answer. Calls from blocked numbers pick up and then end call so there is no opportunity to go to voice mail. Calls outside my selected area code(s) go directly to voice mail.
    So, I not only block calls I don’t want, but send others that many not be sales directly to voicemail, can check to see who is calling from my local area codes where they might not be on my contact list (might be business, kids camp programs, etc) and decide to answer it or not and my contacts still get through.

  15. Bill B September 27, 2011 at 9:22 am #

    Tried on the Droid Bionic and when I clicked the TAKE CALL action, it gave the message THIS IS NOT AVAILABE ON YOUR PHONE. Any ideas?

    • Tim Schlaylie November 10, 2011 at 11:57 am #

      Same thing for me too, on my Bionic too. Has anybody figured out why AND a work-around for it?

      • vipul March 24, 2012 at 2:59 am #

        same here. I am having Motorola defy plus. I think problem is with Motorola handset only.

  16. ChrisGNV October 7, 2011 at 8:13 am #

    I started testing this and was disappointed that tasker doesn’t offer to identify called numbers by membership in a contacts group. It would be very easy to block callers selectively by adding them to your contacts and to a group named something like blacklist. Perhaps the reason tasker doesn’t do this is a limitation of the Android pocketbook? I guess maunder the same thing is accomplished with a single contact named blacklist, having a lot of phone numbers. Is this a limit to the number of phone entries you can add to any one contact?

  17. David Withers January 17, 2012 at 11:29 pm #

    Take call is unavailable with Bionic

  18. akgrrl June 22, 2012 at 5:16 am #

    I have an alternate solution for call blocking.

    Put all the numbers of unwanted calls in one contact (this doesn’t work for unknown/restricted numbers).

    View the contact. Click the Menu button, then Options (not Edit). Click the box to “Send calls directly to voicemail.”

    Then the best part is if you have set up Google Voice for your voicemail (instructions not given here, google for tutorials):

    Go to voice.google.com, click Contacts, and edit Google Voice Settings for the contact you wish to block.

    Click “Edit” next to “Ring All Contacts phones.”

    Click the button next to “Send to Voicemail.”

    Select “Block Caller” in the drop down box.

    Click “Save”.

    What happens is this:

    Unwanted caller calls you.

    ** Your phone never rings, not even once! **

    Caller gets a “Number not in service” recording, and then the call disconnects. They are not able to leave you a voice message either!

    Enjoy the complete and utter silence…

Leave a comment