My automated Calendar and Weather announcement (Tip)

3,744 views
Skip to first unread message

Chris Andrews

unread,
Aug 5, 2010, 9:36:30 AM8/5/10
to Tasker
Hi all

I have created a series of tasks that result in a lovely voice
greeting me in the morning and announcing my first appointment and
todays weather. I thought I'd share the process.
Here’s how I did it:

I created three separate tasks which I will explain in detail below:
Weather, Calendar, and Daily Announcement

Create a task

Weather:

1.HTTP Get
Server:Port rss.wunderground.com/auto/rss_full/global/stations/
02635.xml?units=metric
Mime Type text/xml

(02635 is my location, to find yours go to www.weatherunderground.com
and search for it,
you can also set unit type there. If you click for the RSS feed you
will get the correct URL
and can also use the feed in your browser window to easier identify
splitters in the next steps)

2. Variable Split
Name: %HTTPD Splitter: Forecast for

3. Variable Split
Name: %HTTPD2 Splitter: as of

4. Variable Split
Name: %HTTPD3 Splitter: as of

5. Variable Split
Name: %HTTPD22 Splitter: <description>

6. Variable Split
Name: %HTTPD32 Splitter: <description>

7. Variable Split
Name: %HTTPD222 Splitter: &amp

8. Variable Split
Name: %HTTPD322 Splitter: &amp

9. Variable Split
Name: %HTTPD2221 Splitter: :

10. Variable Split
Name: %HTTPD3221 Splitter: :

11. Variable Set
Name: %DAYCOND To: &HTTPD22211

12. Variable Set
Name: %DAYTEMP To: &HTTPD22212

13. Variable Set
Name: %NIGHTCOND To: &HTTPD32211

13. Variable Set
Name: %NIGHTTEMP To: &HTTPD32212

14. Variable Clear
Name: %HTTPD

(Repeat clearing the different %HTTPD variables until all the junk
variables are cleared I have a total of 15 variable clear commands but
I can't find a better way)

This task is now complete and I have four variabes (depending on
forecast of course):

%DAYCOND: Mostly Cloudy. High
%DAYTEMP: 25
%NIGHTCOND: Chance of Rain. Low
%NIGHTTEMP: 17

Create a new task

Calendar:

1. HTTP Get
Server:Port
www.google.com/calendar/feeds/Username%40gmail.com/private-*****************/full?singleevents=true&futureevents=true&orderby=starttime&sortorder=ascending&max-results=1
Mime Type text/xml

(This is your private Google Calendar feed and ofcourse Username and
the ****'s are replaced by your unique value. To get this URL go to
Calendar settings, Calendars, and click on the calendar you want- on
the bottom you will find your private XML address You must replace the
"basic" at the end of the URL with
"full
singleevents=true&futureevents=true&orderby=starttime&sortorder=ascending&max-
results=1"
because you only want the next event and you want them sorted a
specific way etc.(You can of course tweak this as you wish))

2. Variable Split
Name: %HTTPD Splitter: <title type=text'>

3. Variable Split
Name: %HTTPD3 Splitter: </title><content type='text'

4. Variable Split
Name: %HTTPD32 Splitter: startTime='

5. Variable Split
Name: %HTTPD322 Splitter: T

6. Variable Split
Name: %HTTPD3222 Splitter: :

7. Variable Set
Name: %NEXTAPT To: %HTTPD31

8. Variable Set
Name: %NEXTAPTSTART To: %HTTPD32221

9. Variable Clear
Name: %HTTPD

(Repeat clearing the different %HTTPD variables until all the junk
variables are cleared)

This task is now complete and I have two variabes (depending on
calendar of course):

%NEXTAPT: Meeting with John
%NEXTAPTSTART: 09 00

Create a new task

Daily Announcement:

1. Say
Text: Good morning Chris, Your first appointment is %NEXTAPT at
%NEXTAPTSTART.
Todays forecast is %DAYCOND %DAYTEMP and tonight %NIGHTCOND
%NIGHTTEMP. Have a great day.

2. Variable Clear
Name: %DAYCOND

3. Variable Clear
Name: %DAYTEMP

4. Variable Clear
Name: %NIGHTCOND

5. Variable Clear
Name: %NIGHTTEMP

6. Variable Clear
Name: %NEXTAPT

7. Variable Clear
Name: %NEXTAPTSTART

In cleartext this says: "Good morning Chris, Your first appointment is
Meeting with John at 09 00. Todays forecast is Mostly Cloudy. High 25
and tonight Chance of Rain. Low 17. Have a great day.

This task is now complete.

To tie it all together I created a time context named "Fetch Info"
I set the Context to: Time, From 06:00 Til 06:02 and added The tasks
"Calendar" as an entry task and "Weather" as an exit task. This causes
the phone to grab the info and set the variables at 6am while I'm
sleeping since the tasks take a while to run.

You can then add any context you wish as a trigger to run the "Daily
Announcement" task and read you the info.

Try it out and tweak it to your pleasing :)

Ricardo

unread,
Aug 5, 2010, 9:41:09 AM8/5/10
to Tasker

BossMan

unread,
Aug 5, 2010, 10:16:34 AM8/5/10
to Tasker
It really is :) I have just learned there are so many ways for
accessing google calendar... :)

Ricardo, your location profile (and address resolution) is great
two :-)

BR,
A.

Jerry

unread,
Aug 5, 2010, 11:06:23 AM8/5/10
to tas...@googlegroups.com

Can you put this up on the wiki for posterity's sake?

--
Jerry

Chris Andrews

unread,
Aug 5, 2010, 11:11:56 AM8/5/10
to Tasker
I'll try and figure out how to get it up on the Wiki.

@Ricardo, I also really like your Address solution :)


On Aug 5, 5:06 pm, Jerry <jriech...@gmail.com> wrote:
> Can you put this up on the wiki for posterity's sake?
>
> --
> Jerry
>
> www.google.com/calendar/feeds/Username%40gmail.com/private-**********...> Mime Type text/xml

Chris Andrews

unread,
Aug 5, 2010, 11:40:50 AM8/5/10
to Tasker
Edit to my first post,

Pent helped me figure out how to clear out all the garbage Variables
easier and cleaner:

After the HTTP Get command use a Variable Set Command and set a new
variable for example %DATAFEED to %HTTPD, then you can do the
splitting on that variable and once done run a Variable Join Command
on %DATAFEED with the delete parts box checked, then you can use
Variable Clear %DATAFEED and you will be all set.

-Chris

Stefan Sarzio

unread,
Aug 5, 2010, 12:29:00 PM8/5/10
to Tasker
Wow, great profile, Chris!

Thanks for sharing.

Chris Andrews

unread,
Aug 5, 2010, 1:06:17 PM8/5/10
to Tasker
OK update on the variable join solution, sorry :( seems like you have
to perform the variable join the same amount of times as the split
only in reverse order. It still ends up being cleaner than clearing
each value one at a time.

konradwalsh

unread,
Aug 5, 2010, 6:01:05 PM8/5/10
to Tasker
PLEASE PLEASe

I follow your post above and cannot get it working.... At least if i
could download it and just edit the bits that apply to me

nate barrett

unread,
Aug 5, 2010, 6:28:15 PM8/5/10
to Tasker
okay, I guess I don't get it. I would like this to work, but I have
followed the directions and keep getting errors. The calendar says IO
error when I try and test the HTTP get. Also it says that it cannot
split undefined variables. Let me know if I am missing something or
need to read something else first. Thanks for the help.

Chris

unread,
Aug 6, 2010, 6:08:25 AM8/6/10
to Tasker
I'm truing to get the entire task up on the Wiki then you can just
download it from there.

Have you changed the URL in the HTTP Get command to match the one you
get from your own Google Calendar?

-Chris

Frans

unread,
Aug 6, 2010, 9:08:58 AM8/6/10
to Tasker
This looks a bit like I set up and posted on XDA-devs (http://
forum.xda-developers.com/showpost.php?p=7484293&postcount=23), but I
ran into a problem. Since you seem to be more experienced in this
stuff, could you please take a look at where it goes wrong?

I'm using worldweatheronline.com for worldwide coverage and using of
my gps coordinates in case I'm not in my own zip area.

The task is as follows:

------------------------------------------------------------------------------------------------------------------------------------------

Action: HTTP GET
Server http://www.worldweatheronline.com/feed/weather.ash?key=%KEY&q=%LOC
Mime Type text/xml

Action: Variable Split
Name %HTTPD
Splitter </observation_time><temp_C>

Action: Variable Split
Name %HTTPD2
Splitter </temp_C>

Action: Variable Split
Name %HTTPD22
Splitter <weatherDesc><![CDATA[

Action: Variable Split
Name %HTTPD222
Splitter ]]></weatherDesc>

Action: Variable Split
Name %HTTPD2222
Splitter <tempMaxC>

Action: Variable Split
Name %HTTPD22222
Splitter </tempMaxC>

Action: Variable Split
Name %HTTPD222222
Splitter <tempMinC>

Action: Variable Split
Name %HTTPD2222222
Splitter </tempMinC>

Action: Variable Split
Name %HTTPD22222222
Splitter <weatherDesc><![CDATA[

Action: Variable Split
Name %HTTPD222222222
Splitter ]]

Action: Say
Text: Good morning. The weather is %HTTPD2221 with %HTTPD21 degrees.
The day will be %HTTPD2222222221 today with temperatures from
%HTTPD22222221 to %HTTPD222221 degrees. Have a nice day.

------------------------------------------------------------------------------------------------------------------------------------------

The XML it gets is:

<data>
<request>
<type>LatLon</type>
<query>Lat 52.04 and Lon 4.47</query>
</request>
<current_condition>
<observation_time>12:27 PM</observation_time>
<temp_C>22</temp_C>
<temp_F>72</temp_F>
<weatherCode>116</weatherCode>
<weatherIconUrl><![CDATA[http://www.worldweatheronline.com/
images/wsymbols01_png_64/wsymbol_0002_sunny_intervals.png]]></
weatherIconUrl>
<weatherDesc><![CDATA[Partly Cloudy ]]></weatherDesc>
<windspeedMiles>8</windspeedMiles>
<windspeedKmph>13</windspeedKmph>
<winddirDegree>230</winddirDegree>
<winddir16Point>SW</winddir16Point>
<precipMM>0.1</precipMM>
<humidity>43</humidity>
<visibility>10</visibility>
<pressure>1016</pressure>
<cloudcover>50</cloudcover>
</current_condition>
<weather>
<date>2010-08-06</date>
<tempMaxC>22</tempMaxC>
<tempMaxF>72</tempMaxF>
<tempMinC>13</tempMinC>
<tempMinF>55</tempMinF>
<windspeedMiles>8</windspeedMiles>
<windspeedKmph>13</windspeedKmph>
<winddirection>SW</winddirection>
<winddir16Point>SW</winddir16Point>
<winddirDegree>234</winddirDegree>
<weatherCode>176</weatherCode>
<weatherIconUrl><![CDATA[http://www.worldweatheronline.com/
images/wsymbols01_png_64/wsymbol_0009_light_rain_showers.png]]></
weatherIconUrl>
<weatherDesc><![CDATA[Patchy rain nearby]]></weatherDesc>
<precipMM>0.8</precipMM>
</weather>
<weather>
<date>2010-08-07</date>
<tempMaxC>20</tempMaxC>
<tempMaxF>68</tempMaxF>
<tempMinC>15</tempMinC>
<tempMinF>60</tempMinF>
<windspeedMiles>12</windspeedMiles>
<windspeedKmph>19</windspeedKmph>
<winddirection>WSW</winddirection>
<winddir16Point>WSW</winddir16Point>
<winddirDegree>238</winddirDegree>
<weatherCode>353</weatherCode>
<weatherIconUrl><![CDATA[http://www.worldweatheronline.com/
images/wsymbols01_png_64/wsymbol_0009_light_rain_showers.png]]></
weatherIconUrl>
<weatherDesc><![CDATA[Light rain shower]]></weatherDesc>
<precipMM>2.2</precipMM>
</weather>
</data>

For some reason, %HTTPD2222222221 becomes the url of the weather icon
instead of the current conditions. I could leave this one out and have
a working script, but it's information I'd rather like to know.

My apologies for the long post, and thanks in advance for any help.

nate barrett

unread,
Aug 6, 2010, 11:32:59 AM8/6/10
to Tasker
@chris
I am changing the URL to my private calendar link. But obviously I
am doing something incorrectly. Having it in the wiki would be
awesome. Thanks for the help.

nate barrett

unread,
Aug 6, 2010, 12:52:50 PM8/6/10
to Tasker
@chris
I am changing the URL to my private calendar link. But obviously I
am doing something incorrectly. Having it in the wiki would be
awesome. Thanks for the help.

On Aug 6, 5:08 am, Chris <andre...@gmail.com> wrote:

konradwalsh

unread,
Aug 9, 2010, 6:18:33 AM8/9/10
to Tasker
Has anyone else been successful in getting this to work.. I have tried
and tried...

Could anyone share there context/profile so i can copy it/import it

Chris

unread,
Aug 9, 2010, 6:40:40 AM8/9/10
to Tasker
@nate, @konrad

I emailed you the task,

let me know if it works, I'm sorry but I am not confident in updating
the Wiki.
The task works fine for me every time so I'm curious if others can get
it to work.

Thanx

Chris

unread,
Aug 9, 2010, 6:52:11 AM8/9/10
to Tasker
@frans

One problem could be that the "<weatherDesc><![CDATA[" occurs more
than once in the XML I see it three times which means that the command
Action: Variable Split
Name %HTTPD22
Splitter <weatherDesc><![CDATA[

actually results in %HTTPD221, %HTTPD222, %HTTPD223, and %HTTPD2224
each starting at the different occurrence of the splitter text.
If you split the test up in a word document after each occurrence it
may be easier to follow along and identify the different %HTTPD
sections.

same thing happens later when you use ]]></weatherDesc> etc.

Hope it helps

-Chris

On Aug 6, 3:08 pm, Frans <fran...@gmail.com> wrote:
> This looks a bit like I set up and posted on XDA-devs (http://
> forum.xda-developers.com/showpost.php?p=7484293&postcount=23), but I
> ran into a problem. Since you seem to be more experienced in this
> stuff, could you please take a look at where it goes wrong?
>
> I'm using worldweatheronline.com for worldwide coverage and using of
> my gps coordinates in case I'm not in my own zip area.
>
> The task is as follows:
>
> --------------------------------------------------------------------------- ---------------------------------------------------------------
>
> Action: HTTP GET
> Serverhttp://www.worldweatheronline.com/feed/weather.ash?key=%KEY&q=%LOC

konradwalsh

unread,
Aug 9, 2010, 7:12:29 AM8/9/10
to Tasker
Thanks mate... file import worked.. Now I have the calednar function I
dreamed off... :P

now to figure out the weather section and compare where i went wrong..

Dave

unread,
Aug 9, 2010, 3:31:41 PM8/9/10
to Tasker
I entered in the splitter tasks until the first variable set, then ran
a test. Oops, Tasker didn't like that one bit.

Turns out your xml is much different than mine. There is no "Forecast
for" in the text.

http://rss.wunderground.com/auto/rss_full/TX/Sugar_Land.xml?units=english

LOL

I wonder if using the Google Calendar version of the forecast would be
more portable?

http://ical.wunderground.com/auto/ical/TX/Sugar_Land.ics?units=english

For example, one line is

SUMMARY:Chance of a Thunderstorm 95F / 77F

Another is,

DESCRIPTION:Today - Partly cloudy with a 20 percent chance of showers
and thunderstorms. Highs in the mid 90s. Southeast winds around 5 mph
in the morning becoming south and increasing to 10 to 15 mph in the
afternoon. Heat index readings 102 to 107. \n


Looking at the ICS for your location, it appears the format is the
same. Without knowing how parsing works, it would seem to be straight
forward too...


SUMMARY:Chance of Rain 68F / 48F

DESCRIPTION:Tuesday - Chance of Rain. High 71 F Wind South 6
mph. Chance of precipitation 20%.\nTuesday Night - Chance of
Rain. Low 46 F Wind SSE 11 mph. Chance of
precipitation 20%.



Dave

Chris

unread,
Aug 9, 2010, 4:02:23 PM8/9/10
to Tasker
@Dave,

That Google rss looks pretty sweet. I'll have to check it out. It's
all about finding the info we wasn't and figuring out how to split it
up.

On Aug 9, 9:31 pm, Dave <hathaway.d...@gmail.com> wrote:
> I entered in the splitter tasks until the first variable set, then ran
> a test.  Oops, Tasker didn't like that one bit.
>
> Turns out your xml is much different than mine.  There is no "Forecast
> for" in the text.
>
> http://rss.wunderground.com/auto/rss_full/TX/Sugar_Land.xml?units=eng...

Dave

unread,
Aug 10, 2010, 9:12:06 AM8/10/10
to Tasker
Hi Chris,

I found that I can get a "reasonable" forecast with just two splits:

Action: HTTP GET
Server ical.wunderground.com/auto/ical/TX/Sugar_Land.ics%3Funits
%3Denglish
Mime Type text/xml

Action: Variable Split
Name %HTTPD
Splitter DESCRIPTION:

Action: Variable Split
Name %HTTPD2
Splitter \n

At this point, %HTTPD21 contains "Today - Partly cloudy with a 20
percent chance of showers and thunderstorms. Highs in the upper 90s.
East winds 5 to 10 mph. Heat index readings 104 to 109."

The funny part is that SAY will convert "90s" to "90 seconds". But it
will also change "mph" to "miles per hour".

To see how portable it was, I change my HTTP GET to use

ical.wunderground.com/auto/ical/global/stations/02635.ics?
units=english

And it said, "Tuesday - Clear. High 69 F Wind South 2 mph."
The problem was that it said "F" as in 'F'

However, the full text of DESCRIPTION is,

"Tuesday - Clear. High 69 F Wind South 2 mph.
\nTuesday Night - Chance of Rain. Low 48 F Wind SE 8
mph. Chance of precipitation 30%."

If you change the second splitter to LOCATION instead of \n, you get
that. But SAY will say "backslash n".

What I'd like to do is remove the standalone "F"s (I guess "C" if you
choose metric units?) and the \n. Is there a text replacement
action? I haven't found it.

Anyways, this seems easy, understandable, and portable.

Dave

nate barrett

unread,
Aug 11, 2010, 9:10:15 AM8/11/10
to Tasker
Alright everybody,

I have the calendar portion working, It shows the event and the time,
but it doesn't pull the date. This is important as sometimes I don't
have an event for everyday and don't want to be confused. I am trying
to figure it out, but I am still not sure how to know where each
%HTTPD break is. If anyone could help me understand or point me in the
right direction I would appreciate it. I am not usually this slow at
picking things up, but this is killing me. Also, I have been trying
the weather portion and keep getting an error that says can't split
unset variable. Here is my rss feed.
http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
Thanks for all the help.

Nate

nate barrett

unread,
Aug 11, 2010, 9:10:27 AM8/11/10
to Tasker
Alright everybody,

I have the calendar portion working, It shows the event and the time,
but it doesn't pull the date. This is important as sometimes I don't
have an event for everyday and don't want to be confused. I am trying
to figure it out, but I am still not sure how to know where each
%HTTPD break is. If anyone could help me understand or point me in the
right direction I would appreciate it. I am not usually this slow at
picking things up, but this is killing me. Also, I have been trying
the weather portion and keep getting an error that says can't split
unset variable. Here is my rss feed.
http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
Thanks for all the help.

Nate

On Aug 10, 8:12 am, Dave <hathaway.d...@gmail.com> wrote:

nate barrett

unread,
Aug 11, 2010, 9:34:54 AM8/11/10
to Tasker
Alright everybody,

I have the calendar portion working, It shows the event and the time,
but it doesn't pull the date. This is important as sometimes I don't
have an event for everyday and don't want to be confused. I am trying
to figure it out, but I am still not sure how to know where each
%HTTPD break is. If anyone could help me understand or point me in the
right direction I would appreciate it. I am not usually this slow at
picking things up, but this is killing me. Also, I have been trying
the weather portion and keep getting an error that says can't split
unset variable. Here is my rss feed.
http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
Thanks for all the help.

Nate

On Aug 10, 8:12 am, Dave <hathaway.d...@gmail.com> wrote:

Dave

unread,
Aug 11, 2010, 9:42:11 AM8/11/10
to Tasker
On Aug 11, 8:10 am, nate barrett <nbarrettfam...@gmail.com> wrote:
> Alright everybody,
>
> I have the calendar portion working, It shows the event and the time,
> but it doesn't pull the date. This is important as sometimes I don't
> have an event for everyday and don't want to be confused. I am trying
> to figure it out, but I am still not sure how to know where each
> %HTTPD break is. If anyone could help me understand or point me in the
> right direction I would appreciate it. I am not usually this slow at
> picking things up, but this is killing me.  Also, I have been trying
> the weather portion and keep getting an error that says can't split
> unset variable. Here is my rss feed.http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
> Thanks for all the help.
>
> Nate

Nate,

I had a similar weather problem (I've never had my calendar portion
work, either). After setting many popups to examine each variable, I
think I concluded that the XML was different for Chris (in Europe) and
me (in North America). Wunderground seems to get more information
from the USA National Weather Service, so the content provided is
different.

I think too that the 'set' variables in the original post are wrong.
Variables start with %, so all those that start with & are typos
(&HTTPD22211 should be %HTTPD22211)

You can try using my ical splitter instead of the rss spliter:

Action: HTTP GET
Server http://ical.wunderground.com/auto/ical/KS/Emporia.ics?units=english
Mime Type text/plain
***note, the server is in one line***


Action: Variable Split
Name %HTTPD
Splitter DESCRIPTION:
*** a space after the colon ***

Action: Variable Split
Name %HTTPD2
Splitter \n

Action: Variable Set
Name %WEATHER to %HTTPD21

Probably the responsible thing would be to unset all the HTTPD*
variables, but I haven't done that yet.

Good luck!

Dave

Tom

unread,
Aug 11, 2010, 9:50:34 AM8/11/10
to Tasker
I made some changes to Chris's fabulous work. I had the same problems
as others: Weather is formatted differently in the US (I think) so I
worked to create two summary forecasts, 1 for today and the second for
tonight. It is rather lengthly, but worth it. The other is to
determine if the next appt is today or tomorrow. If it is today it
works the same as Chris's, but if it is tomorrow it tells me so. If I
don't have an appt either day it tells me that. I also added 1 to
the hour variable and then subtracted 1 so if the appt is at 9 it
doesn't say 09. I also subtracted 12 if the appt. is >12 so it will
give the time in 12 hour format. At the beginning of the task it set
a variable AMPM to AM and if it is greater than 12 it sets it to PM.
(I had to fool around with pronunciation so it is set to "eh em" for
am and 'pee em" to get the pronunciation right. Anyway, if someone
could let me know how to get to export in a human readiable format I
will post it here. As a word of warning though, my code is not
elegant, but it does work.

On Aug 11, 9:10 am, nate barrett <nbarrettfam...@gmail.com> wrote:
> Alright everybody,
>
> I have the calendar portion working, It shows the event and the time,
> but it doesn't pull the date. This is important as sometimes I don't
> have an event for everyday and don't want to be confused. I am trying
> to figure it out, but I am still not sure how to know where each
> %HTTPD break is. If anyone could help me understand or point me in the
> right direction I would appreciate it. I am not usually this slow at
> picking things up, but this is killing me.  Also, I have been trying
> the weather portion and keep getting an error that says can't split
> unset variable. Here is my rss feed.http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english

nate barrett

unread,
Aug 11, 2010, 2:00:09 PM8/11/10
to Tasker
Thanks. Dave I'll give that a go.
> Serverhttp://ical.wunderground.com/auto/ical/KS/Emporia.ics?units=english

nate barrett

unread,
Aug 11, 2010, 9:39:59 PM8/11/10
to Tasker
Tom, I would love to see your code for the calendar. That is what I
need.

On Aug 11, 8:50 am, Tom <tom.brun...@gmail.com> wrote:
> I made some changes to Chris's fabulous work.  I had the same problems
> as others: Weather is formatted differently in the US (I think) so I
> worked to create two summary forecasts, 1 for today and the second for
> tonight.  It is rather lengthly, but worth it.  The other is to
> determine if the next appt is today or tomorrow.  If it is today it
> works the same as Chris's, but if it is tomorrow it tells me so.  If I
> don't have an appt either day it tells me that.   I also added 1 to
> the hour variable and then subtracted 1 so if the appt is at 9 it
> doesn't say 09.  I also subtracted 12 if the appt. is >12 so it will
> give the time in 12 hour format.  At the beginning of the task it set
> a variable AMPM to AM and if it is greater than 12 it sets it to PM.
> (I had to fool around with pronunciation so it is set to "eh em" for
> am and 'pee em" to get the pronunciation right.  Anyway, if someone
> could let me know how to get to export in a human readiable format I
> will post it here.  As a word of warning though,mycode is not
> elegant, but it does work.
>
> On Aug 11, 9:10 am, nate barrett <nbarrettfam...@gmail.com> wrote:
>
> > Alright everybody,
>
> > I have the calendar portion working, It shows the event and the time,
> > but it doesn't pull the date. This is important as sometimes I don't
> > have an event for everyday and don't want to be confused. I am trying
> > to figure it out, but I am still not sure how to know where each
> > %HTTPD break is. If anyone could help me understand or point me in the
> > right direction I would appreciate it. I am not usually this slow at
> > picking things up, but this is killing me.  Also, I have been trying
> > the weather portion and keep getting an error that says can't split
> > unset variable. Here ismyrss feed.http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
> > Thanks for all the help.
>
> > Nate
>
> > On Aug 10, 8:12 am, Dave <hathaway.d...@gmail.com> wrote:
>
> > > Hi Chris,
>
> > > I found that I can get a "reasonable" forecast with just two splits:
>
> > > Action: HTTP GET
> > > Server ical.wunderground.com/auto/ical/TX/Sugar_Land.ics%3Funits
> > > %3Denglish
> > > Mime Type text/xml
>
> > > Action: Variable Split
> > > Name %HTTPD
> > > Splitter DESCRIPTION:
>
> > > Action: Variable Split
> > > Name %HTTPD2
> > > Splitter \n
>
> > > At this point, %HTTPD21 contains "Today - Partly cloudy with a 20
> > > percent chance of showers and thunderstorms. Highs in the upper 90s.
> > > East winds 5 to 10 mph. Heat index readings 104 to 109."
>
> > > The funny part is that SAY will convert "90s" to "90 seconds".  But it
> > > will also change "mph" to "miles per hour".
>
> > > To see how portable it was, I changemyHTTP GET to use
> > > > > > greeting me in the morning and announcingmyfirst appointment and

Chris

unread,
Aug 12, 2010, 2:00:29 AM8/12/10
to Tasker
@Tom

Sweet, I'd like to see it to.

I'm sorry my version didn't work out of the box in the US. I didn't
think to test that.
But at least it got us started with using the XML's and variable
splitting right? :)

nate barrett

unread,
Aug 12, 2010, 9:20:36 AM8/12/10
to Tasker
@Chris

You bet! Love what I have got so far and I am going to keep tweaking
it.

On Aug 12, 1:00 am, Chris <andre...@gmail.com> wrote:
> @Tom
>
> Sweet, I'd like to see it to.
>
> I'm sorrymyversion didn't work out of the box in the US. I didn't
> think to test that.
> But at least it got us started with using the XML's and variable
> splitting right? :)
>
> On Aug 11, 3:50 pm, Tom <tom.brun...@gmail.com> wrote:
>
> > I made some changes to Chris's fabulous work.  I had the same problems
> > as others: Weather is formatted differently in the US (I think) so I
> > worked to create two summary forecasts, 1 for today and the second for
> > tonight.  It is rather lengthly, but worth it.  The other is to
> > determine if the next appt is today or tomorrow.  If it is today it
> > works the same as Chris's, but if it is tomorrow it tells me so.  If I
> > don't have an appt either day it tells me that.   I also added 1 to
> > the hour variable and then subtracted 1 so if the appt is at 9 it
> > doesn't say 09.  I also subtracted 12 if the appt. is >12 so it will
> > give the time in 12 hour format.  At the beginning of the task it set
> > a variable AMPM to AM and if it is greater than 12 it sets it to PM.
> > (I had to fool around with pronunciation so it is set to "eh em" for
> > am and 'pee em" to get the pronunciation right.  Anyway, if someone
> > could let me know how to get to export in a human readiable format I
> > will post it here.  As a word of warning though,mycode is not
> > elegant, but it does work.
>
> > On Aug 11, 9:10 am, nate barrett <nbarrettfam...@gmail.com> wrote:
>
> > > Alright everybody,
>
> > > I have the calendar portion working, It shows the event and the time,
> > > but it doesn't pull the date. This is important as sometimes I don't
> > > have an event for everyday and don't want to be confused. I am trying
> > > to figure it out, but I am still not sure how to know where each
> > > %HTTPD break is. If anyone could help me understand or point me in the
> > > right direction I would appreciate it. I am not usually this slow at
> > > picking things up, but this is killing me.  Also, I have been trying
> > > the weather portion and keep getting an error that says can't split
> > > unset variable. Here ismyrss feed.http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
> > > Thanks for all the help.
>
> > > Nate
>
> > > On Aug 10, 8:12 am, Dave <hathaway.d...@gmail.com> wrote:
>
> > > > Hi Chris,
>
> > > > I found that I can get a "reasonable" forecast with just two splits:
>
> > > > Action: HTTP GET
> > > > Server ical.wunderground.com/auto/ical/TX/Sugar_Land.ics%3Funits
> > > > %3Denglish
> > > > Mime Type text/xml
>
> > > > Action: Variable Split
> > > > Name %HTTPD
> > > > Splitter DESCRIPTION:
>
> > > > Action: Variable Split
> > > > Name %HTTPD2
> > > > Splitter \n
>
> > > > At this point, %HTTPD21 contains "Today - Partly cloudy with a 20
> > > > percent chance of showers and thunderstorms. Highs in the upper 90s.
> > > > East winds 5 to 10 mph. Heat index readings 104 to 109."
>
> > > > The funny part is that SAY will convert "90s" to "90 seconds".  But it
> > > > will also change "mph" to "miles per hour".
>
> > > > To see how portable it was, I changemyHTTP GET to use
> > > > > > > greeting me in the morning and announcingmyfirst appointment and

Tom

unread,
Aug 13, 2010, 6:50:01 AM8/13/10
to Tasker
I've had a complete phone meltdown. Not related to tasker or this
profile. Since I was totally irresponsible, I failed to make a
backup. I'm in the process of recreating it. It will be far less
kludgy. I'm having some design issues with dealing with 'all day'
events and how they are formatted. I plan on working on it over the
weekend, and I'll get the results to you soon.

Jason

unread,
Aug 13, 2010, 5:02:05 PM8/13/10
to Tasker
I took Dave's work, made just a few very minor changes, and exported
it.
It seems that I'm unable to host the file anywhere, but I would like
to forward it on to somebody who can put it up on the wiki.

nate barrett

unread,
Aug 23, 2010, 2:49:21 PM8/23/10
to Tasker
Tom,
Any luck getting the code rebuilt?

On Aug 13, 5:50 am, Tom <tom.brun...@gmail.com> wrote:
> I've had a complete phone meltdown. Not related to tasker or this
> profile.  Since I was totally irresponsible, I failed to make a
> backup.  I'm in the process of recreating it.  It will be far less
> kludgy.  I'm having some design issues with dealing with 'all day'
> events and how they are formatted.  I plan on working on it over the
> weekend, and I'll get the results to you soon.
>
> Chris wrote:
> > @Tom
>
> > Sweet, I'd like to see it to.
>
> > I'm sorrymyversion didn't work out of the box in the US. I didn't
> > think to test that.
> > But at least it got us started with using the XML's and variable
> > splitting right? :)
>
> > On Aug 11, 3:50 pm, Tom <tom.brun...@gmail.com> wrote:
> > > I made some changes to Chris's fabulous work.  I had the same problems
> > > as others: Weather is formatted differently in the US (I think) so I
> > > worked to create two summary forecasts, 1 for today and the second for
> > > tonight.  It is rather lengthly, but worth it.  The other is to
> > > determine if the next appt is today or tomorrow.  If it is today it
> > > works the same as Chris's, but if it is tomorrow it tells me so.  If I
> > > don't have an appt either day it tells me that.   I also added 1 to
> > > the hour variable and then subtracted 1 so if the appt is at 9 it
> > > doesn't say 09.  I also subtracted 12 if the appt. is >12 so it will
> > > give the time in 12 hour format.  At the beginning of the task it set
> > > a variable AMPM to AM and if it is greater than 12 it sets it to PM.
> > > (I had to fool around with pronunciation so it is set to "eh em" for
> > > am and 'pee em" to get the pronunciation right.  Anyway, if someone
> > > could let me know how to get to export in a human readiable format I
> > > will post it here.  As a word of warning though,mycode is not
> > > elegant, but it does work.
>
> > > On Aug 11, 9:10 am, nate barrett <nbarrettfam...@gmail.com> wrote:
>
> > > > Alright everybody,
>
> > > > I have the calendar portion working, It shows the event and the time,
> > > > but it doesn't pull the date. This is important as sometimes I don't
> > > > have an event for everyday and don't want to be confused. I am trying
> > > > to figure it out, but I am still not sure how to know where each
> > > > %HTTPD break is. If anyone could help me understand or point me in the
> > > > right direction I would appreciate it. I am not usually this slow at
> > > > picking things up, but this is killing me.  Also, I have been trying
> > > > the weather portion and keep getting an error that says can't split
> > > > unset variable. Here ismyrss feed.http://rss.wunderground.com/auto/rss_full/KS/Emporia.xml?units=english
> > > > Thanks for all the help.
>
> > > > Nate
>
> > > > On Aug 10, 8:12 am, Dave <hathaway.d...@gmail.com> wrote:
>
> > > > > Hi Chris,
>
> > > > > I found that I can get a "reasonable" forecast with just two splits:
>
> > > > > Action: HTTP GET
> > > > > Server ical.wunderground.com/auto/ical/TX/Sugar_Land.ics%3Funits
> > > > > %3Denglish
> > > > > Mime Type text/xml
>
> > > > > Action: Variable Split
> > > > > Name %HTTPD
> > > > > Splitter DESCRIPTION:
>
> > > > > Action: Variable Split
> > > > > Name %HTTPD2
> > > > > Splitter \n
>
> > > > > At this point, %HTTPD21 contains "Today - Partly cloudy with a 20
> > > > > percent chance of showers and thunderstorms. Highs in the upper 90s.
> > > > > East winds 5 to 10 mph. Heat index readings 104 to 109."
>
> > > > > The funny part is that SAY will convert "90s" to "90 seconds".  But it
> > > > > will also change "mph" to "miles per hour".
>
> > > > > To see how portable it was, I changemyHTTP GET to use
> > > > > > > > greeting me in the morning and announcingmyfirst appointment and

Prinsen

unread,
Aug 30, 2010, 5:04:20 PM8/30/10
to Tasker
Can someone please upload the files? I can't get this to work
properly.
> > > > doesn'tsay09.  I also subtracted 12 if the appt. is >12 so it will
> > > > give the time in 12 hour format.  At the beginning of the task it set
> > > > a variable AMPM to AM and if it is greater than 12 it sets it to PM.
> > > > (I had to fool around with pronunciation so it is set to "eh em" for
> > > > am and 'pee em" to get the pronunciation right.  Anyway, if someone
> > > > could let me know how to get to export in a human readiable format I
> > > > will post it here.  As a word of warning though,mycode is not
> > > > elegant, but it does work.
>
> > > > On Aug 11, 9:10 am, nate barrett <nbarrettfam...@gmail.com> wrote:
>
> > > > > Alright everybody,
>
> > > > > I have thecalendarportion working, It shows the event and the time,
> > > > > > The funny part is thatSAYwill convert "90s" to "90 seconds".  But it
> > > > > > will also change "mph" to "miles per hour".
>
> > > > > > To see how portable it was, I changemyHTTP GET to use
>
> > > > > > ical.wunderground.com/auto/ical/global/stations/02635.ics?
> > > > > > units=english
>
> > > > > > And it said, "Tuesday - Clear.        High 69 F  Wind South  2 mph."
> > > > > > The problem was that it said "F" as in 'F'
>
> > > > > > However, the full text of DESCRIPTION is,
>
> > > > > > "Tuesday - Clear.        High 69 F  Wind South  2 mph.
> > > > > > \nTuesday Night - Chance of Rain. Low 48 F  Wind SE                8
> > > > > > mph. Chance of precipitation 30%."
>
> > > > > > If you change the second splitter to LOCATION instead of \n, you get
> > > > > > that.  ButSAYwillsay"backslash n".
>
> > > > > > What I'd like to do is remove the standalone "F"s  (I guess "C" if you
> > > > > > choose metric units?) and the \n.  Is there a text replacement
> > > > > > action?  I haven't found it.
>
> > > > > > Anyways, this seems easy, understandable, and portable.
>
> > > > > > Dave
>
> > > > > > On Aug 9, 3:02 pm, Chris <andre...@gmail.com> wrote:
>
> > > > > > > @Dave,
>
> > > > > > > That Google rss looks pretty sweet. I'll have to check it out. It's
> > > > > > > all about finding the info we wasn't and figuring out how to split it
> > > > > > > up.
>
> > > > > > > On Aug 9, 9:31 pm, Dave <hathaway.d...@gmail.com> wrote:
>
> > > > > > > > I entered in the splitter tasks until the first variable set, then ran
> > > > > > > > a test.  Oops, Tasker didn't like that one bit.
>
> > > > > > > > Turns out your xml is much different than mine.  There is no "Forecast
> > > > > > > > for" in the text.
>
> > > > > > > >http://rss.wunderground.com/auto/rss_full/TX/Sugar_Land.xml?units=eng...
>
> > > > > > > > LOL
>
> > > > > > > > I wonder if using the GoogleCalendarversion of the forecast would be
> > > > > > > > > Weather,Calendar, and Daily Announcement

Steltron

unread,
Nov 15, 2011, 7:45:33 PM11/15/11
to tas...@googlegroups.com
could you send that to me?

Steltron

unread,
Nov 15, 2011, 7:47:17 PM11/15/11
to tas...@googlegroups.com
could you put up your profile and tasks? I would love to see how you did it.

wkd2639

unread,
Nov 19, 2011, 12:47:42 AM11/19/11
to tas...@googlegroups.com
I've cheated - 
I figured why make multiple HTTP requests to various websites and make the phone do all the processing - 
if you have access to a webserver write php that does the parsing for you and outputs text that the phone simply speaks with the say command :)

No dodgy variables, no worrying that the task will break if they change the format of their feeds....
My phone simply contacts my server and my server does the processing :)

This also makes it easy to add additional sources (like weather agency warnings)

see -

Philippe Delodder

unread,
Nov 23, 2011, 3:15:11 AM11/23/11
to tas...@googlegroups.com
Could it be possible to give the profiles and tasks?

ren b

unread,
Jul 9, 2013, 4:15:10 PM7/9/13
to tas...@googlegroups.com
I have created a task that can announce your whole day schedule to you without using the http get method from Google servers. It uses the native calendar functions in tasker and works offline .

If anyone is interested I can post the details here

Biggdadd73

unread,
Jul 11, 2013, 10:28:48 AM7/11/13
to tas...@googlegroups.com
I would definately be interested in seeing your solution.

tony karns

unread,
Jul 25, 2013, 11:27:41 PM7/25/13
to tas...@googlegroups.com
Chris

I just came across your post and i would like to know if i could get some help from you with setting up something similar but not with Google calender. Not sure if you even still mess with this but if you do i would appreciated your help.


On Thursday, August 5, 2010 9:36:30 AM UTC-4, Chris wrote:
Hi all

I have created a series of tasks that result in a lovely voice
greeting me in the morning and announcing my first appointment and
todays weather. I thought I'd share the process.
Here’s how I did it:

I created three separate tasks which I will explain in detail below:
Weather, Calendar, and Daily Announcement

Create a task

Weather:

1.HTTP Get
        Server:Port rss.wunderground.com/auto/rss_full/global/stations/
02635.xml?units=metric

        Mime Type text/xml

(02635 is my location, to find yours go to www.weatherunderground.com
and search for it,
you can also set unit type there. If you click for the RSS feed you
will get the correct URL
and can also use the feed in your browser window to easier identify
splitters in the next steps)

2. Variable Split
        Name: %HTTPD Splitter: Forecast for

3. Variable Split
        Name: %HTTPD2 Splitter: as of

4. Variable Split
        Name: %HTTPD3 Splitter: as of

5. Variable Split
        Name: %HTTPD22 Splitter: <description>

6. Variable Split
        Name: %HTTPD32 Splitter: <description>

7. Variable Split
        Name: %HTTPD222 Splitter: &amp

8. Variable Split
        Name: %HTTPD322 Splitter: &amp

9. Variable Split
        Name: %HTTPD2221 Splitter: :

10. Variable Split
        Name: %HTTPD3221 Splitter: :

11. Variable Set
        Name: %DAYCOND To: &HTTPD22211

12. Variable Set
        Name: %DAYTEMP To: &HTTPD22212

13. Variable Set
        Name: %NIGHTCOND To: &HTTPD32211

13. Variable Set
        Name: %NIGHTTEMP To: &HTTPD32212

14. Variable Clear
        Name: %HTTPD

(Repeat clearing the different %HTTPD variables until all the junk
variables are cleared I have a total of 15 variable clear commands but
I can't find a better way)

This task is now complete and I have four variabes (depending on
forecast of course):

%DAYCOND: Mostly Cloudy. High
%DAYTEMP: 25
%NIGHTCOND: Chance of Rain. Low
%NIGHTTEMP: 17

Create a new task

Calendar:

1. HTTP Get
        Server:Port
www.google.com/calendar/feeds/Username%40gmail.com/private-*****************/full?singleevents=true&futureevents=true&orderby=starttime&sortorder=ascending&max-results=1
        Mime Type text/xml

(This is your private Google Calendar feed and ofcourse Username and
the ****'s are replaced by your unique value. To get this URL go to
Calendar settings, Calendars, and click on the calendar you want- on
the bottom you will find your private XML address You must replace the
"basic" at the end of the URL with
"full
singleevents=true&futureevents=true&orderby=starttime&sortorder=ascending&max-
results=1"
because you only want the next event and you want them sorted a
specific way etc.(You can of course tweak this as you wish))

2. Variable Split
        Name: %HTTPD Splitter: <title type=text'>

3. Variable Split
        Name: %HTTPD3 Splitter: </title><content type='text'

4. Variable Split
        Name: %HTTPD32 Splitter: startTime='

5. Variable Split
        Name: %HTTPD322 Splitter: T

6. Variable Split
        Name: %HTTPD3222 Splitter: :

7. Variable Set
        Name: %NEXTAPT To: %HTTPD31

8. Variable Set
        Name: %NEXTAPTSTART To: %HTTPD32221

9. Variable Clear
        Name: %HTTPD

(Repeat clearing the different %HTTPD variables until all the junk
variables are cleared)

This task is now complete and I have two variabes (depending on
calendar of course):

%NEXTAPT: Meeting with John
%NEXTAPTSTART: 09 00

Create a new task

Daily Announcement:

1. Say
        Text: Good morning Chris, Your first appointment is %NEXTAPT at
%NEXTAPTSTART.
        Todays forecast is %DAYCOND %DAYTEMP and tonight %NIGHTCOND
%NIGHTTEMP. Have a great day.

2. Variable Clear
        Name: %DAYCOND

3. Variable Clear
        Name: %DAYTEMP

4. Variable Clear
        Name: %NIGHTCOND

5. Variable Clear
        Name: %NIGHTTEMP

6. Variable Clear
        Name: %NEXTAPT

7. Variable Clear
        Name: %NEXTAPTSTART

In cleartext this says: "Good morning Chris, Your first appointment is
Meeting with John at 09 00. Todays forecast is Mostly Cloudy. High 25
and tonight Chance of Rain. Low 17. Have a great day.

This task is now complete.

To tie it all together I created a time context named "Fetch Info"
I set the Context to: Time, From 06:00 Til 06:02 and added The tasks
"Calendar" as an entry task and "Weather" as an exit task. This causes
the phone to grab the info and set the variables at 6am while I'm
sleeping since the tasks take a while to run.

You can then add any context you wish as a trigger to run the "Daily
Announcement" task and read you the info.

Try it out and tweak it to your pleasing :)

Mike Kramer

unread,
Jan 21, 2015, 10:04:34 AM1/21/15
to tas...@googlegroups.com
I have successfully created a weather announcement with your instructions. I have now tried recreating the calendar one, but it is stuck on the first step, the http get.
 
This is what I have created as per instructions:
 

Calendar (119)

                A1: HTTP Get [

Server:Port:www.google.com/calendar/feeds/abc%40gmail.com/private-xxx/full?singleevents=true&futureevents=true&orderby=starttime&sortorder=ascending&max-results=1

Path: Attributes: Cookies: User Agent: Timeout:10 Mime Type:text/xml Output

File: Trust Any Certificate:Off ]

 

abc being my gmail, a...@gmail.com

xxx being my private key

 

I get a Input/output Error

java.io file not found exception

 

Any idea what that is please ?

technogeezer

unread,
Jan 21, 2015, 10:15:18 AM1/21/15
to tas...@googlegroups.com
Just guessing but is 'abc' supposed to be just your user name, i.e. no '@gmail.com'?

HTH

Mike Kramer

unread,
Jan 21, 2015, 10:30:20 AM1/21/15
to tas...@googlegroups.com
My email is a...@gmail.com (have replaced the real bits before @gmail.com with abc) basically as it comes of the xml from the calendar settings, and I replaced the /basic with /fulletc as per original post

technogeezer

unread,
Jan 21, 2015, 11:12:09 AM1/21/15
to tas...@googlegroups.com
Perhaps I was not clear.  Your post showed 'abc being my email abc...@gmail.com', so does the final HTTP:GET expand to this,

.../feeds/<user name>%40gmail.com/...

or this,

.../feeds/<user name>@gmail.com%40gmail.com/...

where '%40' = '@' in hexadecimal ASCII

Other than that, yours looks like mine, and mine works.

HTH

Mike Kramer

unread,
Jan 21, 2015, 11:26:44 AM1/21/15
to tas...@googlegroups.com
the final HTTP:GET expand to this,

.../feeds/<user name>%40gmail.com/...
I thought I did everything right, but then I got the red dot and error message on it.

easiuser

unread,
Jan 21, 2015, 12:21:06 PM1/21/15
to tas...@googlegroups.com
%40gmail is treated as a variable by Tasker. 

This can be fixed by either replacing %40 with @ like a...@gmail.com

or

using a backslash before the % to make it literal, like "abc\%40gmail.com"

technogeezer

unread,
Jan 21, 2015, 1:01:05 PM1/21/15
to tas...@googlegroups.com
I spoke too soon.

Mine used to work but no longer.

I made the changes easiuser listed above but I still get an HTTP error 403.

What changed?

Mike Kramer

unread,
Jan 21, 2015, 4:03:49 PM1/21/15
to tas...@googlegroups.com
I have tried replacing %40 with @, it did not work, still getting the same error. The backslash befor the %40 did not work either.

technogeezer

unread,
Jan 22, 2015, 7:18:23 AM1/22/15
to tas...@googlegroups.com
Same here.  I think the link has changed.

Mike Kramer

unread,
Jan 22, 2015, 7:31:58 AM1/22/15
to tas...@googlegroups.com
The weird thing is I only just set up google calendar, and got the link from google calendar yesterday

Mike Kramer

unread,
Jan 30, 2015, 3:43:04 AM1/30/15
to tas...@googlegroups.com
I have given up on the google calendar, I might start a new thread about it some time.
 
But there is something I'd like to do. I am using the weather
 
HTTP Get
        Server:Port rss.wunderground.com/auto/rss_full/global/stations/
02635.xml?units=metric

        Mime Type text/xml
 
and it works fine. But how can I get the current weather condition (snow, rain, sunshine etc)
at the moment I am getting the forecast which is great, but I would like to expand this to current condition as well. I have not been able to figure out how to do that

technogeezer

unread,
Jan 30, 2015, 7:12:45 AM1/30/15
to tas...@googlegroups.com
I have discovered why Google calendar no longer works with that URL - as of November, Google has officially switched to a new calendar API.

https://developers.google.com/google-apps/calendar/v2/developers_guide_protocol

For current weather, I use NOAA and split.

https://groups.google.com/forum/#!topic/tasker/9rfIVsO39xs

HTH

Mike Kramer

unread,
Jan 30, 2015, 11:46:33 AM1/30/15
to tas...@googlegroups.com
Weatherace was a good idea. I downloaded that the other day, and just played with the tasker plugin and bingo, got it. Very easy.
But - trying to digest the information on the google page, that's a different story. Way above my head, no idea what they're talking about... Did you get what they are saying ? Can you still get calendar or is it not possible any more ?
Reply all
Reply to author
Forward
0 new messages