[GUIDE][Difficulty: Intermediate] Display motivational quotes every-time you unlock - Tasker Tips & Tricks

People often say that motivation doesn't last. Well, neither does bathing, that's why we recommend it daily.
Steps:
1. Create a profile> Event> Display> Display Unlocked
Set priority according to your choice.​
2. Create a new task named “Motivation” with following configuration:
Read File> File> (select the location of the text file)​To Var> %Insptext​Tick Continue Task After Error​Variable Split> Name> %Insptext​Splitter> /​Variable Set> Name> %Insprandom​To> %Insprext(#)​Variable Randomize> Name> %Insptextno​Min> 1​Max> %Insprandom (You won’t be able to type, so use Variable Select)​Variable Set> Name> %Inspsugg​To> %Insptext(%Insptextno)​
Play the task for it to able to create required variables​
3. Create a new Scene “Motivational” with following configuration
First set the scene size as per your device under Properties> Geometry​Add element Text> Text> %Inspsugg​
Theme the scene as you like.​
4. Last step is to go back to Motivation task and add
Show Scene> Name> Motivational​Display As> Dialog​
5. Rejoice! You will motivated and focused every-time you unlock your phone. :fingers-crossed:
(I have added link containing quotes in it each separated by “/”, feel free to add more quotes {no duplicate})
Link for editable quotes--https://docs.google.com/document/d/1zib8ig-nbo_C2OZbhi8LJhEN7Pc0aNE8HOmLoDAn1u8/edit?usp=sharing
Link for backup of quotes (just in case somebody messed up)--https://docs.google.com/document/d/1i-EfvcgslZvZIyx6W_9jK_U6Uzwdk3Dt21Dkxu0zlBc/edit?usp=sharing

Deleted

Related

[Q] Naming the nook device / hostname?

Does anybody know how to change the name of the Nook Color? In order to use an application in Citrix, it needs to have a specific name, and I can't figure out how to change it.
I've seen various ideas, such as:
http://forum.xda-developers.com/showthread.php?t=668300
which says to change the /proc/sys/kernel/hostname
I've done so, but disconnecting and reconnecting the wifi with the desired name for the NC in the above file does not work; the name stays the same. For me, the name is ROID7047BCFB-EB96-44.
How does the android/linux OS figure out a name for the NC, and how can I change it?
Thanks in advance for any help.
Update:
pinging ROID7047BCFB-EB96-44 works, as does pinging NEWHOSTNAME (what I want my NC to be called), both give the same IP address. However, my Citrix receiver still recognizes me as ROID* and boots me off.
Maybe this is some kind of DNS issue, or how do I get rid of the ROID* name and get my device to be recognized only by NEWHOSTNAME?
I suppose I can ask the Citrix/I.T. administrators to give me access on my NC (which they probably won't support doing), or I can rename my NC to something that already has access in Citrix.
It really shouldn't be that hard to name your NC, as you can any computing device.
Do I have to go into userinit.sh to set localhost to NEWHOSTNAME, or edit the init.rc file, or edit the .IMG on the ROM (it's been a while since I played around with unix, and so I'm pretty new to this stuff)?
Nook Color Device ID / Hostname
Didn't want to start a new thread on this topic...
Our network admin sees unknown devices as a security threat (or annoyance) to his network. He therefore requires a unique hostname to obtain a DHCP lease.
A hostname of "localhost" (the NC default), is seen as blank by the server. The Nook Color (and many other Android devices) must be rooted and modified to gain access.
Several posts recommend changing net.hostname. This did not work for me. Changing /proc/sys/kernel/hostname, however, would work.
For a single instance, use the following from a root prompt. THEN TURN OFF AND TURN ON WIFI to request a new DHCP lease.
# echo NEWHOSTNAME > /proc/sys/kernel/hostname
EDIT: Removed paragraph about setting at boot until I figure it out.
To set HOSTNAME / Device ID at boot
Thanks to JoshMiers for instructions on persistent settings following a reboot...
http://forum.xda-developers.com/showthread.php?t=901791
To set the HOSTNAME at boot (on rooted stock eclair, anyway)...
1. Create (via adb or RootExplorer) file /data/boot_complete_hook.sh
2. Add the following lines via a text editor (on Windows use Notepad++):
Code:
#!/system/bin/sh
#
## Set hostname/deviceID
#
echo yourchosenhostname > /proc/sys/kernel/hostname
3. At root prompt, change properties of new file
Code:
#chmod 755 /data/boot_complete_hook.sh
At root prompt, test to see if it works by executing
Code:
#/data/boot_complete_hook.sh
#cat /proc/sys/kernel/hostname
I did not need to reset the wireless after booting. If necessary, code could be added to the file to renew the DHCP lease or reset the wireless (tiwlan0).
I did have difficulty using ADB to do this, as Josh describes, and did not take time to debug. Instead, I used RootExplorer and Terminal to do it all directly on the NC.
KBMN said:
Does anybody know how to change the name of the Nook Color? In order to use an application in Citrix, it needs to have a specific name, and I can't figure out how to change it.
how about this?
http://forum.xda-developers.com/showthread.php?p=17287446#post17287446
Click to expand...
Click to collapse
Well, I can use the setprop net.hostname command to set the device hostname. However, the Citrix application takes the "clientname" from the android_id field in /data/data/com.android.providers.settings/databases/settings.db, regardless of the hostname. So, the Citrix application sees the device as "ROID"+android_id. I can't figure out how to get rid of the "ROID" part so I can make the device "clientname" to show as whatever is desired (after changing the android_id). Tried to put in a backspace character in the field, as "\b" to get rid of the "ROID" part, but that didn't work. Oh well.

[HELP] Have tasker tell me when to leave the house based on current traffic

Okay, so thanks to @MishaalRahman, I've recently set up a profile that gives me the best route to work and the travel time in current traffic. I'm trying to modify it to take into account the time I'm supposed to be at work and the current travel time so that the task fires 5 minutes before I'm supposed to leave. For example, I'm supposed to be at work at 9:00am. If the travel time to work in current traffic is 24 minutes, I want the task to fire 29 minutes before I'm supposed to be at work and tell me that it's time to leave.
I figured the best way to do this is to have the task (minus the actual 'say' portion) fire after I dismiss my alarm in the morning and check the traffic every 3 minutes, until it detects that it's time to leave, at which point the 'say' action kicks in and tells me it's time to leave. The problem is that my 'If' condition that compares the variable containing the time I'm supposed to be at work (taking into account the travel time and the 5 minutes cushion) and the variable containing the current time never seems to be met, and I think it's probably in the conversions.
I'm almost positive the issue lies in my formulas, but I cannot seem to find it. I'm hoping one of you can help. Here's my task (I've also attached it if you want to try and tinker with it):
Task 1 - Get Traffic
1) Variable Clear; Name GMAPS; Label Top
2) Variable Set; Name %start; To (my home address)
3) Variable Set; Name %destination; To (my work address)
4) Variable Set; Name %api; To (my google maps api key)
5) HTTP Get that pulls traffic data from Google Maps
6) Variable Set; %GMAPS to %HTTPD
7) JavaScriptlet that parses the data down to the needed info
All of this works with no issue since it is basically pulled directly from the task that Mishaal posted. I'm almost positive the problem lies somewhere in the bold section below:
8) Variable Set; Name %Routename; To %routename (wanted to check what was populated on the 'vars' tab)
9) Variable Set; Name %Routetraffic; To %routetraffic (same reason as above)
10) Variable Split; %Routetraffic; Splitter m (so that all I have is '24' as opposed to '24 mins')
11) Variable Convert; Name %DATE; Function Date Time To Seconds; Store Result In %date
12) Variable Set; Name %Worktime (the time I'm supposed to be at work); To %date+(60*60*9); Do Maths Checked (9:00am)
13) Variable Set; Name %Timetoleave; To %Worktime-(%Routetraffic1*60)-300; Do Maths Checked (I multiplied %Routetraffic1 by 60 to convert to seconds and then subtracted 300 seconds to get that 5 minute cushion)
14) Variable Set; Name %time; To %TIMES (current time in seconds)
15) If; Condition %time = %Timetoleave OR %time > %Timetoleave (this way if the check happens after %time would have matched %Timetoleave, the task will still fire since %time will, theoretically, be a larger #)
16) Perform Task; Name Speak Traffic (This is the task that fires that tells me when to leave. Attached)
17) Stop
18) Else
19) Wait 3 minutes
20) Goto; Action Label Top
21) End if
I know it's a lot to look over, but any help would be greatly appreciated. This task could be incredibly useful if I can figure it out, and I would of course share it with the community. Thanks for all you do, guys.
I've done something that comes quite close to what you are looking for I guess, take a look at my post here.

GUIDE:[DIFFICULTY: Beginner] Post to Twitter using a voice command

Here it is an easy way to post to Twitter using Tasker and AutoVoice
Foreplay:
1. Go to IFTTT's web page and sign up.
2. Download Do Note from the Play Store.
3. Choose the Recipe : Post a quick Tweet.
4. Download Autovoice and AutoInput from the Play Store.
You are ready to go!
Profile:
State>Plugin>Autovoice Recognize. Check Event Behaviour. Command Filter; " post (?<message>.+) to Twitter" Check Regex. (Creating a variable)
Task:
1. Say> Text: Tweeting %message. Ok? (It allows you to check if everything is going according to the plan.)
2. AutoVoice Recognize Prompt Text: %message. Matching options: Check Don't Trigger Conditions.( AutoVoice will pop up. You must check if the message is ok and say yes.)
3. If Condition: %avcomm ~yes ( Set a condition because if the message is wrong the task will not be fired.)
4. Launch apps> DO NOTE
5. Wait 2 seconds
6. Type %message
7. Wait 8 seconds
8. AutoInput> Action> Easy set up. Go to DO NOTE , click on ADD on the notification bar, go back to DO Note and click on the send button. Then click on the Accept button of the notification and go back to AutoInput. Select the button you pressed and accept the settings. (This will make AutoInput click on the send button.)
9. End if
If Type does not work for you, you can use Set Clipboard with the text %message and paste it using AutoInput: Actions>Paste>Text> %message. This will make AutoInput paste your tweet on the focus.
Have fun!

[Question] Best Practise to make a profile based on more than one variable state?

I would like to change my audio profiles based on different situations:
Audioprofile Normal
Normal audiosettings at daytime, when car is not connected and no meeting in calendar.
Audioprofile Night.
Silent audiosettings at nighttime, but only when I'm at home and car is not connected.
Audioprofile Car
Audioprofile in car when connected to bluetooth. Overwrites every other audioprofile.
Audioprofile Silent
Audioprofiles for meetings and special locations.
Every state has his own variable, like the daytime, the bluetooth connection, my location etc..
So I tought I could combine the variable states in a profile with "Variable Value" and the operator AND:
"[email protected]"
Variable Value
%Day=1
AND
%Meeting=1
AND
%Car=0
Enter Task=Audioprofile Silent
But I read this in the Tasker Wiki:
...
Warning: if you want to trigger on a variable and then take some action which sets the thing the variable represents you should use the Variable Set event instead. A Variable Value state will cause complications when the state exits and tries to restore the value again.
...
With "Variable Set" I can only query the value of one variable. That's not enough for my profiles.
How could I do this? Is the warning still valid?
JasMan78 said:
I would like to change my audio profiles based on different situations:
Audioprofile Normal
Normal audiosettings at daytime, when car is not connected and no meeting in calendar.
Audioprofile Night.
Silent audiosettings at nighttime, but only when I'm at home and car is not connected.
Audioprofile Car
Audioprofile in car when connected to bluetooth. Overwrites every other audioprofile.
Audioprofile Silent
Audioprofiles for meetings and special locations.
Every state has his own variable, like the daytime, the bluetooth connection, my location etc..
So I tought I could combine the variable states in a profile with "Variable Value" and the operator AND:
"[email protected]"
Variable Value
%Day=1
AND
%Meeting=1
AND
%Car=0
Enter Task=Audioprofile Silent
But I read this in the Tasker Wiki:
...
Warning: if you want to trigger on a variable and then take some action which sets the thing the variable represents you should use the Variable Set event instead. A Variable Value state will cause complications when the state exits and tries to restore the value again.
...
With "Variable Set" I can only query the value of one variable. That's not enough for my profiles.
How could I do this? Is the warning still valid?
Click to expand...
Click to collapse
What i would do create individual profiles based on time of day, power supply connection, wifi network connection, bluetooth device connection, etc. Each one of those trigger their own individual task which:
1. Sets a specific variable to "1".
2. Sets other settings specific to that profile (if needed).
3. Performs a separate task that change common settings all profiles share.
Then create exit tasks for each profile to:
1. Set specific variables to "0".
2. Set other settings specific to that profile no longer being active (if needed).
3. Performs that same separate task that changes common settings all profiles share.
The common task should be set up with a series of if/else statements for each condition you want. So if variables time of day and home wifi connected are "1", do this, else do nothing. if car Bluetooth connected set to "1", do this, else do nothing. Etc etc etc.
LeftyGR said:
What i would do create individual profiles based on time of day, power supply connection, wifi network connection, bluetooth device connection, etc. Each one of those trigger their own individual task which:
1. Sets a specific variable to "1".
2. Sets other settings specific to that profile (if needed).
3. Performs a separate task that change common settings all profiles share.
Then create exit tasks for each profile to:
1. Set specific variables to "0".
2. Set other settings specific to that profile no longer being active (if needed).
3. Performs that same separate task that changes common settings all profiles share.
The common task should be set up with a series of if/else statements for each condition you want. So if variables time of day and home wifi connected are "1", do this, else do nothing. if car Bluetooth connected set to "1", do this, else do nothing. Etc etc etc.
Click to expand...
Click to collapse
Thank you for your answer.
That could be a way to do it. I must think about it.
But is the warning still valid? I've a lot of profiles which base on variable states. I never have had any problems with them.
JasMan78 said:
Thank you for your answer.
That could be a way to do it. I must think about it.
But is the warning still valid? I've a lot of profiles which base on variable states. I never have had any problems with them.
Click to expand...
Click to collapse
I could be wrong, but I think it is saying not to trigger based on a variable. Meaning, a variable set to x causes y to happen. You can have a profile set a variable, but can get problems if a variable triggers a profile.
At least I think that's what it's saying...lol
That's exactly what I'm doing. A variable is set to 1, and a profile gets active because it checks the state "Variable Value" of this variable. This works fine for me, also the exit task as soon as the value is not longer 1.
The advantage of this method is, that I need only one profil which checks my location, appointments, bluetooth connection, etc.. The profile then sets the variable e.g. $Appointment to 1, and I can work with this variable in any other profile where I need to check if I've an appointment. If the name of the calendar change, I need only to change the name of the calendar in one profile.
And I can simply combine different variables to complex profiles.
Also, the wiki is old-ish, and not really all that up to date. So it is possible tasker has been updated to fix that issue since it was posted.
I found a good solution for me.
I've created a Tasker task, which checks the needed variables and executes the associated audio profile.
E.g. if %Day=1 then execute the task "Profil Normal", if %BluetoothConnected=Car then execute the task "Profil Car".
To execute the task I created Tasker profiles with the event "Variable Set" for every variable, which I query to choose the right audio profile. I left the value field emtpy, so everty time the variable changed the profile executes my task.
Now every time one of this variables changes, the task, which checks the values of the variables and calls the audio profile task, is executed.

can tasker diferenciate between state contexts and trigger contexts?

Hi,
I'm new to tasker, i downloaded it like a week ago. So any help will be apreciated.
I want to know if it is possible to make some contexts to trigger a profile (trigger contexts), while others not (they must be true for the profile to get activated, but they must not trigger it (state contexts)).
For example, i want to try this:
- When waze is active and at certain locations (like my home), run and intent to cleanly exit waze.
This is intented so when i arrive at destination, waze gets closed automatically. The problem arises if i'm at home and then open waze to drive somewhere, then it gets closed immediatly. Therefore, i'd like that only the location context triggers the profile.
Is this even possible? I want to create other profiles and task under this premise too.
Regards
Make a profile that only activates on location.
Make a second, separate profile for Waze running.
Method 1:
1. Give a custom name to the Waze profile (necessary), e.g. "Waze is Running".
2. Set the Waze profile to run a dummy task like "wait 10 milliseconds".
3. In the first step of your location task, add a Task > Stop > if %PACTIVE doesn't match regex .*Waze is Running.*
4. After this first step, the location task has to stop Waze.
Alternatively, instead of adding a Task > Stop, you can put the "if condition" in the step that closes Waze. Just change it from "doesn't match regex" to "matches regex".
Method 2:
1. Waze profile sets a global variable like %Waze to yes or 1 when Waze is running (enter task)
2. Waze profile clears the global variable when Waze quits (exit task)
3. Location profile checks %Waze instead of checking %PACTIVE
%PACTIVE contains a list of all currently active profiles, but you can only check for those profiles to which you've given a custom name.
Ok, thanks. I had already started with method 2, the only thing i was missing was the third step.
I think this is a task for the state event "Variable Set". As soon as an variable has changed, the task will be executed once. There is no exit task.
Example:
1. Create profiles which set your location to a variable, e.g. %Location
2. New Profile with event "Variable Set" and the variable %Location
3. If %Location change, execute Task which checks if %Location is equal Home or not. If Home, kill Waze. If not, do nothing.
4. When you are at home and start Waze, it will not get killed because the variable %Location has not changed. Therefore the profile will not be triggered. Only when you left home the variable changes and the task will be executed. When you come back to your home, the task will be executed again.
Thanks!! , this is more consistent and more easily applied to others profiles given the way I handle my profiles and tasks.

Categories

Resources