Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * 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.
- *
- */
- metadata {
- definition (name: "SHM Switch", namespace: "erocm123", author: "Eric Maycock") {
- capability "Switch"
- capability "Relay Switch"
- capability "Actuator"
- command "onPhysical"
- command "offPhysical"
- }
- tiles(scale: 2) {
- multiAttributeTile(name:"switch", type: "lighting", width: 6, height: 4, canChangeIcon: true){
- tileAttribute ("device.switch", key: "PRIMARY_CONTROL") {
- attributeState "off", label: "Disarmed", icon: "st.switches.light.off", backgroundColor: "#ffffff", nextState:"turningOn"
- attributeState "on", label: '${name}', icon: "st.switches.light.on", backgroundColor: "#00a0dc", nextState:"turningOff"
- attributeState "turningOff", label:"Armed", action:"switch.on", icon:"st.switches.light.off", backgroundColor:"#ffffff", nextState:"turningOn"
- attributeState "turningOn", label:'${name}', action:"switch.off", icon:"st.switches.light.on", backgroundColor:"#00a0dc", nextState:"turningOff"
- }
- }
- main "switch"
- details(["switch"])
- }
- }
- def parse(String description) {
- //def pair = description.split(":")
- //createEvent(name: pair[0].trim(), value: pair[1].trim())
- }
- def parse(Map description) {
- //def pair = description.split(":")
- //createEvent(name: pair[0].trim(), value: pair[1].trim())
- def eventMap
- if (description.type == null) eventMap = [name:"$description.name", value:"$description.value"]
- else eventMap = [name:"$description.name", value:"$description.value", type:"$description.type"]
- createEvent(eventMap)
- }
- def on() {
- log.debug "$version on()"
- sendEvent(name: "switch", value: "on")
- }
- def off() {
- log.debug "$version off()"
- sendEvent(name: "switch", value: "off")
- }
- def onPhysical() {
- log.debug "$version onPhysical()"
- sendEvent(name: "switch", value: "on", type: "physical")
- }
- def offPhysical() {
- log.debug "$version offPhysical()"
- sendEvent(name: "switch", value: "off", type: "physical")
- }
- private getVersion() {
- "PUBLISHED"
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement