Files
SmartThingsPublic/smartapps/smartthings/habit-helper.src/habit-helper.groovy
2016-09-07 11:28:08 -07:00

68 lines
1.9 KiB
Groovy

/**
* Copyright 2015 SmartThings
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
* for the specific language governing permissions and limitations under the License.
*
* Habit Helper
* Every day at a specific time, get a text reminding you about your habit
*
* Author: SmartThings
*/
definition(
name: "Habit Helper",
namespace: "smartthings",
author: "SmartThings",
description: "Add something you want to be reminded about each day and get a text message to help you form positive habits.",
category: "Family",
iconUrl: "https://s3.amazonaws.com/smartapp-icons/Meta/text.png",
iconX2Url: "https://s3.amazonaws.com/smartapp-icons/Meta/text@2x.png"
)
preferences {
section("Remind me about..."){
input "message1", "text", title: "What?"
}
section("At what time?"){
input "time1", "time", title: "When?"
}
section("Text me at..."){
input("recipients", "contact", title: "Send notifications to") {
input "phone1", "phone", title: "Phone number?"
}
}
}
def installed()
{
schedule(time1, "scheduleCheck")
}
def updated()
{
unschedule()
schedule(time1, "scheduleCheck")
}
def scheduleCheck()
{
log.trace "scheduledCheck"
def message = message1 ?: "SmartThings - Habit Helper Reminder!"
if (location.contactBookEnabled) {
log.debug "Texting reminder to contacts:${recipients?.size()}"
sendNotificationToContacts(message, recipients)
}
else {
log.debug "Texting reminder"
sendSms(phone1, message)
}
}