Advanced Tasker - Android Software/Hacking General [Developers Only]

Tasker is a very versatile tool for controlling your Android device. The more I learn about it, the more I want to learn. For that reason, I am starting this thread which I hope will be a place for people to not only ask specific advanced questions about Tasker, but also to show off the tricks and hoops they have been able to accomplish with Tasker and its plug-ins.
Example:
To start the ball rolling, and provide an example of what I think this thread should be about, here is an example of an advanced Tasker profile.
Time Recording Pro has a plug-in for Tasker. Following their FAQ to their Product Help page provides Public App Services and some basic directions for creating a task which (with Google Calendar Sync) will create timeclock-like punches.
Public App Services
'Time Recording' provides these public services for 3rd party check-in and check-out integration.
Broadcast receivers
com.dynamicg.timerecording.CHECK_IN
com.dynamicg.timerecording.CHECK_OUT
com.dynamicg.timerecording.PUNCH
Activities
com.dynamicg.timerecording.activity.CHECK_IN
com.dynamicg.timerecording.activity.CHECK_OUT
Sample setup in the 'Tasker' app:
1. Create a Task
2. Add an Action of type 'Action Intent' (found under category Misc)
3. Set Action=com.dynamicg.timerecording.CHECK_IN, Cat=None, Target=BroadcastReceiver
4. Done.
5. Hit the "Test" button​
By creating a context of Cell Nearby (and scanning or entering the cells at a physical location), I have created a task to turn WiFi on, turn BT, Cell Data and GPS off, and record a time-punch to my calendar when I arrive at a site. These tasks are reversed when leaving. This not only saves battery at a site without using GPS, but also automatically records time at a location for Time Billing purposes.
The limitation of this is the time-stamp is fairly generic. I have tried entries in the Extra and other fields of the Action, but not had success creating anything more specific. So it is a very useful context, but has room for improvement.
Challenge:
Another situation that advanced Tasker development would resolve would be overriding the default function of hard buttons on a device. For example, creating a task that changes the default camera app that is launched by long pressing the hard camera button. You can imagine the possibilities are nearly endless for reprogramming the hard buttons, and the potential for problems equally vast. What is needed to accomplish this, however, would be some knowledge of the actions and broadcast receivers similar to those provided by Time Recording Pro. I suspect android programmers might be able to provide some of that information.
Summary:
I hope this thread will start a discussion. Tasker is a very versatile app with numerous plug-ins that offer the ability to accomplish extraordinary control without the need to develop a special app. Whether or not my specific examples are commented on or improved upon, I think there needs to be a better forum for Tasker users to gather and help each other.
Thanks

I'm reviving this old thread in scope of getting some help. As you can see here the list of intents has grown a little bit.
What I'm trying to achieve and can't manage is to get info back to Tasker about the current status of Time Recording.
I presume that com.dynamicg.timerecording.GET_INFO should be called and then wait for an answer on com.dynamicg.timerecording.RESULT, but I cannot seem to get this working.
Thanks!

Related

A new App for web-tinkerers (Open Source)

I don't participate much, but I've learned a great deal from this site. So I'm posting this here as GPL2 software as a way of thanking everyone. All I really ask is that it not be used in a closed-source app without talking to me first.
Can't poast URLs, because I have fewer than 10 poasts (I lurk hard). Mod, if you don't deem this to be spam, would you kindly provide the link (or allow me to do so)?
[sourceForge.net]/projects/webremote/
Basically, this was meant to be a generalized HTTP(S) client, with the URLs being assembled dynamically and under a variety of different circumstances. The server-end of the transaction is a creation of the user.
I wrote this tool to assist me with repititive tasks at work (specifically, asterisk/linux administration). I wrote a PHP page to do things like add users, check server load, trigger recordings and dialplan modes, and so forth.
I have also used it in conjuction with a Raspberry Pi to trigger relays and read sensors in my home from wherever I happen to be at that moment.
There are lots of things I want to do with this app...
Implement GPS, so I can trigger URLs at waypoints.
Tie into NFC and make a bitcoin wallet that you can "bump" or scan a QR code to pay someone.
Implement Trigger packages to support one-click importing of Triggers for a specific task (IE, minecraft server administration)
Use BouncyCastle to encrypt the DB.
Hook into the camera and fire triggers using snapshots (or image files) as arguments.
Actually cause the HTTPS Receivers to validate certificates. Presently it does not (although the traffic is still encrypted).
I will take requests, questions, and bug reports at the sourceforge page, but how fast things get done will directly correlate to how much interest the project attrracts (which may very well be none).
For those learning how to program and trying to learn something by reading the source, I'm sorry.
I've tried to keep things hygenic. I come from a C/Java background, so Android was a bit of a leap, with respect to its organization. This program is a work of evolution.
To check out the source, use subversion:
svn checkout svn://svn.code.sf.net/p/webremote/code/trunk webremote
My working copy is also my Eclipse directory, so importing it with Eclipse should be minimal trouble.
If anyone *really* wants to thank me, I am a bitcoin user:
12rA36FH4NUFZojxyxQgWmQm6WUnzfQ1yR
Or you could buy the version I have up at google play (but I consider this a donation):
Can't poast URLs.... Search the Play store for WebRemote.
Thank you all again for sharing your knowledge.

[Q] What automation app do you prefer?

I don't have a lot of information yet, so I decided to post this in questions.
I'm trying to make a list of features/benefits/weak points of the multiple automations apps available in the Play Store. Here's what I have so far:
Free:
Llama
Profile Flow
Free + Premium Version:
Actions Lite/Pro
AutomateIt
Paid:
Tasker
Automagic
Llama*
Pros
Free
Composite triggers
Lower RAM usage (based on various forum posts)
Location detection & learning (you can specific multiple methods such as wifi, cell tower id, gps location)
Cons
Issues with sound profiles (when I used it I had problems with it enforcing the silent profile. It kept reverting to vibrate. This was possibly bad settings on my part)
Weak integration with SMS triggers (based on forum posts)
Less actions and triggers compared to alternatives
Interface can be tricky until you figure it out
Profile Flow
Actions Lite
Actions Pro
AutomateIt (paid)
Pros
Composite triggers and actions
Simple layout
Market where already made rulesets can be downloaded
Backup/restore rules
Active development (based on xda-developers video)
Cons
Free version is very limited
Tasker*
Pros
Easy to use interface (compared to Llama, but can still be tricky)
Scenes (ability to create interfaces)
Massive amount of actions (including HTTP GET/POST requests which can be used to auto-login to wifi networks)
Cons
No free version
Automagic
Llama and Tasker are the only two I've played around with a lot. I poked around very briefly in Actions Lite and Profile Flow, but haven't tested those yet. Actions Lite looked very similar to Tasker, but with less actions/triggers. I only included the paid version of AutomateIt in the comparison list since it seems the free version is basically just a trial. The information in the list came from various forum posts, Youtube videos by Kevin of xda-developers and personal experience.
Hopefully people that have used these more can provide some more information.

[Completed] Where would I ask for someone else to create a app for me

I would like to 'commission' an app (that might be a java app from the playstore, or code installed via recovery)
The app I am looking for would need su privilege, or other ways to automatically shutdown / reboot phone
I submitted this forms post a while ago and got absolutely no responses... So I think I put it in the wrong spot, or asked the questions wrong
-------------
I have searched for a particular application on the Interwebbies and across XDA and have not been able to find what I'm looking for.
I have searched across XDA for the right forum to "petition" for the creation of an app that meets my needs and found no obvious "appropriate" thread. (In both cases the failure could be my searching skills)
So I have chosen this thread as my best guess for where to plea for help. (And accept wholeheartedly if my post needs to be moved)
I am looking for an android app to solve the following need, within the following constraints, etc.
1) a primary, required, function of the app is to shutdown/power off (or reboot) the device if a human does not interact with the app within a preconfigured time period.
1a) the minimum definition of interact is
1aa) a human who intends to re-arm the timer must be physically within the maximum distance of at least one onboard sensor or radio of the device. (I am constraining the need to be ”not triggerable from a remote sensor”, however I do not deny that may be valuable)
--and--
1ab) said human must cause a onboard sensor to "register their presence" (or send a "signal" or trigger to one of the devices radios) in a way that would be generally accepted by the programming community as unlikely to be accidentally triggered. (To avoid re-arming without valid interaction)
2) a secondary, optional, function of the app is to obscure its primary purpose
2a) for instance have innocent other functions (like a text editor), or be integrated in a way that this app is just part of list of functions (like integrated into the settings app)
3) the app can be an "Android App" (Like: a java based APK). Or an "Android Extension/Tweak" (Like: a java, C, or shell based alteration of Android OS)
3a) if it is possible without root, it would make the app more "reusable" for other's need. If not a Xposed module is a valid solution (to gain root without this app needing to specifically acquire it)
4) if a setting and configuration function is not supplied to the user, then the expected interaction is to "cause pre-explained process to come to the foreground" and the expected timer is 24 hours from boot but reset the timer to 24 hours from the most recent time a correct and successful "interaction" occurs.
---
The underlying purpose of the app is to help one maintain security, confidentiality, etc. of a device that is fully encrypted. The goal is, if the human who caused the device to be encrypted: does not check in, the device would revert to its pre-passphrase state
Aaron
Reply or PM me for clarifications.
PS there is no bounty for this app at this time. But I am not oppose to compensating, but I have a pizza level budget
PPS I have 15+ years in the IT field with emphasises on security and encryption. But my programing skills are generally MS windows based (and generally in forensic, automation, and Windows administration tasks) though I can read and give feedback, bug reports, etc. for almost any language.
Hi,
You could try asking about that here,
> Android Development and Hacking > Android Q&A, Help & Troubleshooting
Good luck !

[TOOL] Free time / location / whatever tracking API

I was in need of a simple way to automatically track the hours that I spent at the office. There are a ton of time tracking tools out there, but I didn't want to trigger a button every time I start or stop working. That's why I created this simple JSON API.
You can find the API on GitHub: https://github.com/Steppschuh/PlaceTracking
I used IFTTT to automatically send requests to the API whenever I connect or disconnect the office WiFi. I've set up some public recipes that you can use here.
The API only serves 3 endpoints:
Users, representing the one who is using the API (e.g. you)
Topics, representing whatever you want to track (e.g. a project or location)
Actions, representing tracking events (e.g. starting or stopping to work)
which are documented in the GitHub repo. Basically, all you have to do is firing 2 requests for setting up a user and a topic:
Code:
http://placetracking.appspot.com/api/users/add/?name=John%20Doe
http://placetracking.appspot.com/api/topics/add/?name=Work
And that's it. Now you can add some events whenever you start or stop working:
Code:
http://placetracking.appspot.com/api/actions/add/?name=start&userId=123&topicId=456
http://placetracking.appspot.com/api/actions/add/?name=stop&userId=123&topicId=456
When you want to analyse what you tracked so far, simply call:
Code:
http://placetracking.appspot.com/api/actions/get/?userId=123
Please let me know what you think and if you have suggestions!

HyperTrack - The fastest way to build live location features [Android/iOS]

HyperTrack is the easiest (and fastest) way to build dynamic location features in your apps.
In three easy steps:
Step 1: You plug a lightweight and open sourced SDK into your app. Add a few lines of code in Android and iOS.
Code:
// Swift and Java
HyperTrack.setUserId("249d26da-c31c-4a70-bab8-53ef164411f0");
HyperTrack.startTracking();
Step 2: Watch your user's location data on a pretty looking dashboard. No code to be written, and did we mention, free to view for unlimited users and usage?
Step 3: Play with the data through events (via webhooks) and actions (via APIs) to build location features in your product within
minutes. All our dashboard views are easy to embed into your own workflow to create a seamless experience.
Code:
<iframe frameborder="0" scrolling="no" marginheight="0" marginwidth="0" width="100%"
height="100% src="https://dashboard.hypertrack.io/widget/users/<YOUR_USER_ID>/timeline;action_id=<YOUR_ACTION_ID>?key=SECRET_KEY">
Tell me more
The SDK generates accurate, battery-efficient location and activity data using a bunch of black magic with device sensors, maps and business context. The location data is organized as trips and stops in the life of the user. Useful events are automatically generated along the way and available via webhooks. When actions are performed by the user in the app or expected by the business workflow on the server, they may be posted via APIs.
Unlimited trips, stops and events for unlimited users are free to view on the dashboard. Pay to play with this data and build location features within your product in minutes. To test your integration before deploying in production, we have a free test mode that lets you sandbox the API/webhook integrations with your users’ live data - up to 20 of them.
So What's the Catch?
Thanks for asking. The catch is... there is none. We are offering you the ability to add our location stack to your application and begin tracking immediately, for an unlimited time, for FREE. If you want to begin performing actions, analyzing trips, etc. then we have pricing which you can find on our website (https://hypertrack.io).
Compatibiliy
Hi,
Good to know about this. I wanted to see if this can be used with ibeacon to facilitate the functionality to track locations? iBeacon is a top way to add location based features in iOS and so if this can be used with it then it makes sense.
hnrindani said:
Hi,
Good to know about this. I wanted to see if this can be used with ibeacon to facilitate the functionality to track locations? iBeacon is a top way to add location based features in iOS and so if this can be used with it then it makes sense.
Click to expand...
Click to collapse
Thanks for the reply. This would depend on how you are using iBeacon.
hypertrack said:
Thanks for the reply. This would depend on how you are using iBeacon.
Click to expand...
Click to collapse
Ok, so I will ask my team to test it and shall get back to you incase of any query. Thanks for the response though.

Categories

Resources