preferences {
page(name: "setupNotifications")
- page(name: "chooseTrack", title: "Select a song or station")
page(name: "timeIntervalInput", title: "Only during a certain time") {
section {
input "starting", "time", title: "Starting", required: false
dynamicPage(name: "setupNotifications", title: "Configure Your Goal Notifications.", install: true, uninstall: true) {
section("Select your Jawbone UP") {
- input "jawbone", "device.jawboneUser", title: "Jawbone UP", required: true, multiple: false
+ input "jawbone", "capability.stepSensor", title: "Jawbone UP", required: true, multiple: false
}
section("Notify Me When"){
- input "thresholdType", "enum", title: "Select When to Notify", required: false, defaultValue: "Goal Reached", options: [["Goal":"Goal Reached"],["Threshold":"Specific Number of Steps"]], submitOnChange:true
+ input "thresholdType", "enum", title: "Select When to Notify", required: false, defaultValue: "Goal Reached", options: ["Goal","Threshold"], submitOnChange:true
if (settings.thresholdType) {
if (settings.thresholdType == "Threshold") {
input "threshold", "number", title: "Enter Step Threshold", description: "Number", required: true
section("Change the Color of the Lights") {
input "hues", "capability.colorControl", title: "Which Hue Bulbs?", required:false, multiple:true
input "color", "enum", title: "Hue Color?", required: false, multiple:false, options: ["Red","Green","Blue","Yellow","Orange","Purple","Pink"]
- input "lightLevel", "enum", title: "Light Level?", required: false, options: [[10:"10%"],[20:"20%"],[30:"30%"],[40:"40%"],[50:"50%"],[60:"60%"],[70:"70%"],[80:"80%"],[90:"90%"],[100:"100%"]]
+ input "lightLevel", "enum", title: "Light Level?", required: false, options: [10,20,30,40,50,60,70,80,90,100]
input "duration", "number", title: "Duration in Seconds?", defaultValue: 30, required: false
}
}
}
-def chooseTrack() {
- dynamicPage(name: "chooseTrack") {
- section{
- input "song","enum",title:"Play this track", required:true, multiple: false, options: songOptions()
- }
- }
-}
-
private songOptions() {
// Make sure current selection is in the set
-
+ /*
def options = new LinkedHashSet()
if (state.selectedSong?.station) {
options << state.selectedSong.station
options.addAll(dataMaps.collect{it.station})
log.trace "${options.size()} songs in list"
- options.take(20) as List
+ options.take(20) as List*/
+ state.selectedSong = "SomeTrack"
}
private saveSelectedSong() {
+ /*
try {
def thisSong = song
log.info "Looking for $thisSong"
}
catch (Throwable t) {
log.error t
- }
+ }*/
+ state.selectedSong = "SomeTrack"
}
def installed() {
log.debug "Installed with settings: ${settings}"
-
+ // Initialize input value
+ color = "Orange"
initialize()
}
log.trace "Entering initialize()"
state.lastSteps = 0
- state.steps = jawbone.currentValue("steps").toInteger()
+ state.steps = jawbone.currentValue("steps").toInteger()
state.goal = jawbone.currentValue("goal").toInteger()
subscribe (jawbone,"goal",goalHandler)
for (i in 1..flashCount) {
lights.on()
- pause(500)
+ //pause(500)
lights.off()
}