<commit_before>Simple-Scheduler
----------------

This is a simple scheduler for the [Telldus Live!](http://live.telldus.com/) API written in Scala.

**Telldus Live!** is an easy way to control gear controlled with a [TellStick](http://www.telldus.se/products/tellstick)
using the internet. **Simple-Scheduler** is a simple scheduler that uses the Telldus Live! to turn on and off devices
at given times. This makes it possible for the scheduler to run on a different machine than the one where the TellStick
is connected.

Simple-Scheduler uses an embedded [jetty](http://jetty.codehaus.org/jetty/) server to present a [jQuery mobile](http://jquerymobile.com/)
interface, that makes it simple to add, remove and view events from an iPad or iPhone.

Scroll down for a screenshot.

### Disclaimer

I am still learning Scala and my code is far from perfect. I don't mind suggestions on how to make it better.

### Requirements

* [Telldus TellStick](http://www.telldus.se/products/tellstick)
* TelldusCenter installed and configured
* [Scala](http://www.scala-lang.org/) >= 2.9.1
* [Simple Build Tool - sbt](http://code.google.com/p/simple-build-tool/) >= 0.11.1
* [MongoDB](http://www.mongodb.org/) installed and running on the machine that will run the scheduler
<commit_msg>Updated readme with technologies and tools used.<commit_after>Simple-Scheduler
----------------

This is a scheduler for the [Telldus Live!](http://live.telldus.com/) API written in Scala.

**Telldus Live!** is an easy way to control gear controlled with a [TellStick](http://www.telldus.se/products/tellstick)
using the internet. **Simple-Scheduler** is a scheduler with a web interface that uses the Telldus Live! to turn on and off devices
at given times.

Simple-Scheduler has a built in web server with an interface designed for mobile devices. This makes it easy to start (just *java -jar ...*)
and simple to use from your phone or tablet.

Scroll down for a screenshot.

### Used technologies and tools

* [Scala]((http://www.scala-lang.org/) the language it's written in
* [Simple Build Tool](http://code.google.com/p/simple-build-tool/) for building
* [Jetty](http://jetty.codehaus.org/jetty/) as the embedded web server
* [jQuery Mobile](http://jquerymobile.com/) for the mobile interface
* [Scalatra](https://github.com/scalatra/scalatra) as the web framework
* [Scalate](http://scalate.fusesource.org/) as the template engine
* [MongoDB](http://www.mongodb.org/) as the database to save the scheduled events in
* [Salat](https://github.com/novus/salat) for Scala case class to MongoDB mapping
* [openid4java](http://code.google.com/p/openid4java/) for authentication against the Telldus OpenID server
* [dispatch-oauth](http://databinder.net/dispatch-doc/dispatch/oauth/package.html) for OAUTH authorization against the Telldus API
* [Quartz](http://quartz-scheduler.org/) as the scheduler


### Disclaimer

I am still learning Scala and my code is far from perfect. I don't mind suggestions on how to make it better.

### Requirements

* [Telldus TellStick](http://www.telldus.se/products/tellstick)
* TelldusCenter installed and configured
* [Scala](http://www.scala-lang.org/) >= 2.9.1
* [Simple Build Tool - sbt](http://code.google.com/p/simple-build-tool/) >= 0.11.1
* [MongoDB](http://www.mongodb.org/) installed and running on the machine that will run the scheduler

{'fraction_non_alphanumeric': 0.12704552216602202, 'fraction_numerical': 0.0047604879500148765, 'mean_word_length': 4.220496894409938, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 2, 'lorem ipsum': 0, 'www.': 10, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2525004', 'n_tokens_mistral': 1041, 'n_tokens_neox': 999, 'n_words': 369}