Not open source but pretty cheap and does 80% of what you want, especially if you combined it with this.