About Triggers
Triggers is the geek's alternative to Timeriffic (http://play.google.com/store/apps/details?id=com.alfray.timeriffic), Llama (http://play.google.com/store/apps/details?id=com.kebab.Llama) and Locale (http://play.google.com/store/apps/details?id=com.twofortyfouram.locale). I played with Timeriffic and Llama and read about Locale, but none of them seemed to do quite what I wanted - i.e. script events. If you're not a geek, maybe one of these apps might be more to your liking. If you are a geek, read on!
Triggers is a fairly thin interface between various Android events and Lua scripting. When an event happens, your script is run and handed a table containing information about the event. You are also handed a table into which you can store data persistently between calls and, using the functionality provided by LuaJava you can call Android functions.
This isn't for the faint hearted. You need to know how to program Lua, and to be familiar with Android programming concepts. The help page (http://www.ty-penguin.org.uk/~auj/triggers/) isn't all I could hope it to be either.
Permissions: Of course it asks for lots. It needs them so it can receive events and pass them to your Lua script, and then let your Lua script do something with them. Triggers doesn't, itself, do anything worrying, I promise (though obviously I can't vouch for any Lua you may load into it).