Send a WhatsApp Message programatically -- Tasker WhatsTasker

Here is My code snippet:

Uri mUri = Uri.parse("smsto:+9876543210");

Intent mIntent = new Intent(Intent.ACTION_SENDTO, mUri);

mIntent.setPackage("com.whatsapp");

mIntent.putExtra("sms_body", "The text goes here");

mIntent.putExtra("chat",true);

startActivity(mIntent);



I'm trying to send a whatsapp directly to a specific phone number doing something

like this from a webapp using html5, jquery mobile & php:

<a href="whatsapp://send?abid=phoneNumberHere&text=Hello%20World!">Send Whatsapp</a>

All this does is

 

I’m a long-time user of Tasker and have been using the great WhatsTasker plugin to automatically reply to (or send) whatsapp messages.

This has always needed root, and its well-documented,

just insert your message into the Whatsapp db appropriately and restart whatsapp,

then Whatsapp will detect the message not having been sent and will send it. 

 

However, I just got a new phone (and also already own a Sony Smartwatch 2) and found this cool app [1]

which emulates Android Wear’s look on the SW2. Including the ability to reply to a Whatsapp post. Without root.

Does anyone know how the author of this app did it? The app was released Aug 5th

so I’m sure its related to new functionality in Whatsapp (a quick google shows that that was also around the time

Whatsapp updated for Android Wear auto-reply functionality. 

I have asked the author via email but not (yet) received a reply.

 

I'm thinking of installing Tasker on my phone, but I don't want to root it. Is it worth my while?

What Tasker tasks require root access? What can it do without root access?

Here are some examples:

  • I would like to turn on the GPS whenever I start certain apps (various driving directions apps, for instance), and turn it off when I exit them. I understand that apps can't turn on the GPS (otherwise the apps in question would do it themselves instead of directing me to the settings). Tasker claims to be able to do that. Does it need root for that?

  • I remember seeing somewhere (lifehacker maybe?) that Tasker can disable the lock screen based on location, such as when I get home, and turn it off when I leave. Can it do that? Does it need root access for that?

The simple answer is that it requires root to do things that would require root if they weren't automated by Tasker

and you were doing them manually.

Tasker is irrelevant.

Edit: 

Turning on/off GPS does not require root.

Apps must be able to do it, because Power Widget can.

As for the lock screen, I think what you read must have actually referred to the keyguard (the "swype to unlock" screen).

The phone is not locked the same way as it is with a pattern/password when the keyguard is on;

it's just to prevent accidentally keypresses, not for security. Tasker can disable the keyguard.

Actually, GPS turn on / off does require root. The Power Widget thing just takes you to the settings page 

I'm not sure what you're talking about, Tasker does not require root for any of its features.

This simple concept profoundly extends your control of your Android device and it's capabilities,

without the need for 'root' or a special home screen. 

there are some tasks in tasker which need root privileges, i.e. toggle 2g only / 2g and 3g. 

This answer is just wrong. There's lots (I would say most of the useful ones) of features

it can't do without root. toggling GPS, DPAD, set CPU frequency etc.)

 

I was in the same boat as you. Wanted tasker, didn't want to root my app.

After downloading it, I did it find it fairly limiting without a root because as Matthew Read said,

it basically only allows you to do the things that any other app could do.

So unless your requirement are some niche thing that you wanted, there's probably an app that does it for you anyway.

Some of the things that can't be done without a root include

  • Turning GPS on / off
  • Toggling 3g on / off
  • Setting CPU speed
  • DPAD (allows you to script the phone like it was being used)
  • turn the screen on
  • reboot the phone

I mainly got Tasker as I thought I could optimize the battery life on my phone but without those settings, there's not that much I can really do.

Still worth the 2 bucks though, been great learning playing with it. And maybe down the line, I will go and root my phone.

EDIT - this answer is only for ICS and above. Not sure what it'd be if you were still on Gingerbread

 

I want to Send a message to multiple Whatsapp Contacts/Groups using "Tasker" with "WhatsTasker" plugin .

I tested my implementation to send SMS message to multiple contacts and it works well. But when I try to send message to whatsapp it sends the message only to the first index (Contact/Group) 

Also, I have test this to send a personal message to 2 contacts but it sends the message only to first number 

I tried to trim the "@s.whatsapp.net"/for contacts and "@g.us" for groups in 2 variables then add them inside whatstasker After the number -> Still sends to only first number

I thought it's because it's using root access and Toast message displays so I used "Wait" action for 10 seconds inside For loop after sending the message but still same thing only first contact will receive the message 

did I miss something with my implementation?

this is my latest Task Description (Ignore A3 and A10) 

SMS (9)
    A1: Variable Set [ Name:%msg To:Test tasker Do Maths:eek:ff Append:eek:ff ] 
    A2: Variable Set [ Name:%telephones To:90123456789-1395136140,91234567890-1395136053 Do Maths:eek:ff Append:eek:ff ] 
    A3: Variable Set [ Name:%whatsappname To:@s.whatsapp.net Do Maths:eek:ff Append:eek:ff ] 
    A4: Variable Set [ Name:%whatsappgroup To:@g.us Do Maths:eek:ff Append:eek:ff ] 
    A5: Variable Split [ Name:%telephones Splitter:, Delete Base:eek:ff ] 
    A6: For [ Variable:%current Items:1:%telephones(#) ] 
    A7: WhatsTasker Send Message [ Configuration:ID: %telephones(%current)%whatsappgroup
        Message: %msg Package:net.zhdev.whatstasker Name:WhatsTasker Send Message Timeout (Seconds):3 ] 
    A8: Wait [ MS:0 Seconds:10 Minutes:0 Hours:0 Days:0 ] 
    A9: [X] Send SMS [ Number:%telephones(%current) Message:%msg Store In Messaging App:eek:ff ] 
    A10: End For

 

Try increasing the Timeout (Seconds)
 
Before
I have been sending Whatsapp messages to two different Whatsapp groups once.
I will say it works about 90% of the time with or without delay in between the [Send Message] action
When it fails (~10% of the time), it send to the first group only.

Then
Then, I realise the default Timeout (Seconds): is 3. 
Changing the Timeout to 1 second definitely mess up the process and cause the rest of the [Send Message] action to fail.
However the first message will still be sent. (If the first [Send Message] is not given enough time to send, the rest of the [Send Message] action will fail too.)

Near future
Perhaps, the action didn't get the run finished within 3 seconds sometimes?
I am going increasing the Timeout to 15 seconds and see how it goes!
 

 

 

posted @ 2015-05-01 00:47  IAmAProgrammer  阅读(7985)  评论(0编辑  收藏  举报