I use Tasker to put my phone into airplane mode at work, battery saving. Every 15 minutes it comes out of airplane mode and syncs.
I borrowed from http://tasker.wikidot.com/airplanenight to make my work profile.
On my google calendar I created a private calendar named work. This website helped me in figuring out how to log into and retrieve data from there. http://gadgetdesire.blogspot.com/2011/03/tasker-agenda-updated.html
In the calendar.tsk you have to set cget1 to your login information. You will also need to change the variable set %WORK, Work if %CTITLE ~ Work to whatever you put in the "what" section of your google calendar event.
I borrowed from the talking clock. (See here from explanation http://tasker.wikidot.com/talkingclock)
I have modified it heavily for my use and what I want the clock to say. This profile runs every 15 minutes but only annouces the time on the hour and half hour.
I broke the talking clock into 2 profiles. 1 sets the time and the other does the talking that way I can use the voice part on other profiles.
The variable %BREAK in Say Time.tsk should be set a half hour before your break starts. It is default set to 08.30/10.30/13.00/15.00/10.30L
This means that my breaks are at 9am 11am 1:30pm 3:30pm. The 10.30L denotes my lunch time. Breaks are 15 minutes and lunch is half hour. The 3:30pm is quitting time and it is always nice to know you have 10 mintues left in your day. :D
The main action for the breaks comes from Zzz - Work - 1.tsk. Here we set the break variables
%BREAK_10 - Ten minutes till break
%BREAK_05 - Five minutes till break
%BREAK_0 - Zero minutes to break (Break Starts)
%BREAK_E - Break ends - 15 minutes after %BREAK_0
%BREAK_L - %BREAK_E - Break ends - 30 minutes after %BREAK_0 (Lunch Ends)
The concepts from http://tasker.wikidot.com/togglewidget are in the Data Profile.tsk & Data Profile - 2.tsk & Data - Toggle.tsk.
I use Loquendo and you may have to change action 4 in voice.tsk. You will also notice in voice.tsk that the %SAYTEXT is done from the alarm stream. I did this so when I am listening to music it will be clear and understandable. Also note if the %HEADSET =1 section there are two alarm volumes set. If I am using earbuds I do not want the volume to be max, but if I am using the AUX jack then I do not mind.