Last active
August 29, 2015 14:07
-
-
Save mager/c84ca99b14787e97a032 to your computer and use it in GitHub Desktop.
On/Off Shield Device Type code
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
metadata { | |
definition (name: "On/Off Shield", namespace: "smartthings", author: "SmartThings") { | |
capability "Actuator" | |
capability "Switch" | |
capability "Sensor" | |
} | |
// Simulator metadata | |
simulator { | |
status "on": "catchall: 0104 0000 01 01 0040 00 0A21 00 00 0000 0A 00 0A6F6E" | |
status "off": "catchall: 0104 0000 01 01 0040 00 0A21 00 00 0000 0A 00 0A6F6666" | |
// reply messages | |
reply "raw 0x0 { 00 00 0a 0a 6f 6e }": "catchall: 0104 0000 01 01 0040 00 0A21 00 00 0000 0A 00 0A6F6E" | |
reply "raw 0x0 { 00 00 0a 0a 6f 66 66 }": "catchall: 0104 0000 01 01 0040 00 0A21 00 00 0000 0A 00 0A6F6666" | |
} | |
// UI tile definitions | |
tiles { | |
standardTile("switch", "device.switch", width: 2, height: 2, canChangeIcon: true, canChangeBackground: true) { | |
state "on", label: '${name}', action: "switch.off", icon: "st.switches.switch.on", backgroundColor: "#79b821" | |
state "off", label: '${name}', action: "switch.on", icon: "st.switches.switch.off", backgroundColor: "#ffffff" | |
} | |
main "switch" | |
details "switch" | |
} | |
} | |
// Parse incoming device messages to generate events | |
def parse(String description) { | |
def value = zigbee.parse(description)?.text | |
def name = value in ["on","off"] ? "switch" : null | |
def result = createEvent(name: name, value: value) | |
log.debug "Parse returned ${result?.descriptionText}" | |
return result | |
} | |
// Commands sent to the device | |
def on() { | |
zigbee.smartShield(text: "on").format() | |
} | |
def off() { | |
zigbee.smartShield(text: "off").format() | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment