forked from SmartThingsCommunity/SmartThingsPublic
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 6ad3c4f
Showing
322 changed files
with
67,201 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# SmartThings Public Github Repo | ||
|
||
An official list of SmartApps and Device Types from SmartThings. | ||
|
||
Here are some links to help you get started coding right away: | ||
|
||
* [Github-specific Documentation](http://docs.smartthings.com/en/latest/tools-and-ide/github-integration.html) | ||
* [Full Documentation](http://docs.smartthings.com) | ||
* [IDE & Simulator](http://ide.smartthings.com) | ||
* [Community Forums](http://community.smartthings.com) | ||
|
||
Follow us on the web: | ||
|
||
* Twitter: http://twitter.com/smartthingsdev | ||
* Facebook: http://facebook.com/smartthingsdevelopers |
38 changes: 38 additions & 0 deletions
38
...pes/capabilities/acceleration-sensor-capability.src/acceleration-sensor-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
/** | ||
* 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: "Acceleration Sensor Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Acceleration Sensor" | ||
} | ||
|
||
simulator { | ||
status "active": "acceleration:active" | ||
status "inactive": "acceleration:inactive" | ||
} | ||
|
||
tiles { | ||
standardTile("acceleration", "device.acceleration", width: 2, height: 2) { | ||
state("inactive", label:'${name}', icon:"st.motion.acceleration.inactive", backgroundColor:"#ffffff") | ||
state("active", label:'${name}', icon:"st.motion.acceleration.active", backgroundColor:"#53a7c0") | ||
} | ||
|
||
main "acceleration" | ||
details "acceleration" | ||
} | ||
} | ||
|
||
def parse(String description) { | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} |
73 changes: 73 additions & 0 deletions
73
devicetypes/capabilities/alarm-capability.src/alarm-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
/** | ||
* 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: "Alarm Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Alarm" | ||
} | ||
|
||
simulator { | ||
// reply messages | ||
["strobe","siren","both","off"].each { | ||
reply "$it": "alarm:$it" | ||
} | ||
} | ||
|
||
tiles { | ||
standardTile("alarm", "device.alarm", width: 2, height: 2) { | ||
state "off", label:'off', action:'alarm.strobe', icon:"st.alarm.alarm.alarm", backgroundColor:"#ffffff" | ||
state "strobe", label:'strobe!', action:'alarm.off', icon:"st.alarm.alarm.alarm", backgroundColor:"#e86d13" | ||
state "siren", label:'siren!', action:'alarm.off', icon:"st.alarm.alarm.alarm", backgroundColor:"#e86d13" | ||
state "both", label:'alarm!', action:'alarm.off', icon:"st.alarm.alarm.alarm", backgroundColor:"#e86d13" | ||
} | ||
standardTile("strobe", "device.alarm", inactiveLabel: false, decoration: "flat") { | ||
state "off", label:'', action:"alarm.strobe", icon:"st.secondary.strobe", backgroundColor:"#cccccc" | ||
state "siren", label:'', action:"alarm.strobe", icon:"st.secondary.strobe", backgroundColor:"#cccccc" | ||
state "strobe", label:'', action:'alarm.strobe', icon:"st.secondary.strobe", backgroundColor:"#e86d13" | ||
state "both", label:'', action:'alarm.strobe', icon:"st.secondary.strobe", backgroundColor:"#e86d13" | ||
} | ||
standardTile("siren", "device.alarm", inactiveLabel: false, decoration: "flat") { | ||
state "off", label:'', action:"alarm.siren", icon:"st.secondary.siren", backgroundColor:"#cccccc" | ||
state "strobe", label:'', action:"alarm.siren", icon:"st.secondary.siren", backgroundColor:"#cccccc" | ||
state "siren", label:'', action:'alarm.siren', icon:"st.secondary.siren", backgroundColor:"#e86d13" | ||
state "both", label:'', action:'alarm.siren', icon:"st.secondary.siren", backgroundColor:"#e86d13" | ||
} | ||
standardTile("off", "device.alarm", inactiveLabel: false, decoration: "flat") { | ||
state "default", label:'', action:"alarm.off", icon:"st.secondary.off" | ||
} | ||
main "alarm" | ||
details(["alarm","strobe","siren","test","off"]) | ||
} | ||
} | ||
|
||
def strobe() { | ||
"strobe" | ||
} | ||
|
||
def siren() { | ||
"siren" | ||
} | ||
|
||
def both() { | ||
"both" | ||
} | ||
|
||
def off() { | ||
"off" | ||
} | ||
|
||
// Parse incoming device messages to generate events | ||
def parse(String description) { | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} |
46 changes: 46 additions & 0 deletions
46
devicetypes/capabilities/button-capability.src/button-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
/** | ||
* 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: "Button Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Button" | ||
} | ||
|
||
simulator { | ||
status "button 1 pushed": "command: 2001, payload: 01" | ||
status "button 1 held": "command: 2001, payload: 15" | ||
status "button 2 pushed": "command: 2001, payload: 29" | ||
status "button 2 held": "command: 2001, payload: 3D" | ||
status "wakeup": "command: 8407, payload: " | ||
} | ||
tiles { | ||
standardTile("button", "device.button", width: 2, height: 2) { | ||
state "default", label: "", icon: "st.unknown.zwave.remote-controller", backgroundColor: "#ffffff" | ||
} | ||
main "button" | ||
details "button" | ||
} | ||
} | ||
|
||
def parse(String description) { | ||
def results = [] | ||
if (description.startsWith("Err")) { | ||
results = createEvent(descriptionText:description, displayed:true) | ||
} else { | ||
def cmd = zwave.parse(description, [0x2B: 1, 0x80: 1, 0x84: 1]) | ||
if(cmd) results += zwaveEvent(cmd) | ||
if(!results) results = [ descriptionText: cmd, displayed: false ] | ||
} | ||
// log.debug("Parsed '$description' to $results") | ||
return results | ||
} |
37 changes: 37 additions & 0 deletions
37
devicetypes/capabilities/contact-sensor-capability.src/contact-sensor-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
/** | ||
* 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: "Contact Sensor Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Contact Sensor" | ||
} | ||
|
||
simulator { | ||
status "open": "contact:open" | ||
status "closed": "contact:closed" | ||
} | ||
|
||
tiles { | ||
standardTile("contact", "device.contact", width: 2, height: 2) { | ||
state("closed", label:'${name}', icon:"st.contact.contact.closed", backgroundColor:"#79b821") | ||
state("open", label:'${name}', icon:"st.contact.contact.open", backgroundColor:"#ffa81e") | ||
} | ||
main "contact" | ||
details "contact" | ||
} | ||
} | ||
|
||
def parse(String description) { | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} |
39 changes: 39 additions & 0 deletions
39
...bilities/illuminance-measurement-capability.src/illuminance-measurement-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
/** | ||
* 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: "Illuminance Measurement Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Illuminance Measurement" | ||
} | ||
|
||
simulator { | ||
for (i in [0,5,10,15,20,30,40,50,100,200,300,400,600,800,1000]) { | ||
status "${i} lux": "illuminance:${i}" | ||
} | ||
} | ||
|
||
tiles { | ||
valueTile("illuminance", "device.illuminance", width: 2, height: 2) { | ||
state "luminosity", label:'${currentValue} ${unit}', unit:"lux" | ||
} | ||
main(["illuminance"]) | ||
details(["illuminance"]) | ||
} | ||
} | ||
|
||
// Parse incoming device messages to generate events | ||
def parse(String description) | ||
{ | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} |
55 changes: 55 additions & 0 deletions
55
devicetypes/capabilities/lock-capability.src/lock-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
/** | ||
* 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: "Lock Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Lock" | ||
} | ||
|
||
simulator { | ||
status "locked": "lock:locked" | ||
status "unlocked": "lock:unlocked" | ||
|
||
reply "lock": "lock:locked" | ||
reply "unlock": "lock:unlocked" | ||
} | ||
|
||
tiles { | ||
standardTile("toggle", "device.lock", width: 2, height: 2) { | ||
state "unlocked", label:'unlocked', action:"lock.lock", icon:"st.locks.lock.unlocked", backgroundColor:"#ffffff" | ||
state "locked", label:'locked', action:"lock.unlock", icon:"st.locks.lock.locked", backgroundColor:"#79b821" | ||
} | ||
standardTile("lock", "device.lock", inactiveLabel: false, decoration: "flat") { | ||
state "default", label:'lock', action:"lock.lock", icon:"st.locks.lock.locked" | ||
} | ||
standardTile("unlock", "device.lock", inactiveLabel: false, decoration: "flat") { | ||
state "default", label:'unlock', action:"lock.unlock", icon:"st.locks.lock.unlocked" | ||
} | ||
|
||
main "toggle" | ||
details(["toggle", "lock", "unlock", "refresh"]) | ||
} | ||
} | ||
|
||
def parse(String description) { | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} | ||
|
||
def lock() { | ||
"lock" | ||
} | ||
|
||
def unlock() { | ||
"unlock" | ||
} |
50 changes: 50 additions & 0 deletions
50
devicetypes/capabilities/momentary-capability.src/momentary-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
/** | ||
* 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: "Momentary Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Momentary" | ||
} | ||
|
||
// simulator metadata | ||
simulator { | ||
// status messages | ||
// none | ||
|
||
// reply messages | ||
reply "'on','delay 2000','off'": "switch:off" | ||
} | ||
|
||
// UI tile definitions | ||
tiles { | ||
standardTile("switch", "device.switch", width: 2, height: 2, canChangeIcon: true) { | ||
state "off", label: '${name}', action: "switch.on", icon: "st.switches.switch.off", backgroundColor: "#ffffff", nextState: "on" | ||
state "on", label: '${name}', action: "switch.off", icon: "st.switches.switch.on", backgroundColor: "#79b821" | ||
} | ||
main "switch" | ||
details "switch" | ||
} | ||
} | ||
|
||
def parse(String description) { | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} | ||
|
||
def push() { | ||
['on','delay 2000','off'] | ||
} | ||
|
||
def off() { | ||
'off' | ||
} |
37 changes: 37 additions & 0 deletions
37
devicetypes/capabilities/motion-sensor-capability.src/motion-sensor-capability.groovy
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
/** | ||
* 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: "Motion Sensor Capability", namespace: "capabilities", author: "SmartThings") { | ||
capability "Motion Sensor" | ||
} | ||
|
||
simulator { | ||
status "active": "motion:active" | ||
status "inactive": "motion:inactive" | ||
} | ||
|
||
tiles { | ||
standardTile("motion", "device.motion", width: 2, height: 2) { | ||
state("inactive", label:'no motion', icon:"st.motion.motion.inactive", backgroundColor:"#ffffff") | ||
state("active", label:'motion', icon:"st.motion.motion.active", backgroundColor:"#53a7c0") | ||
} | ||
main "motion" | ||
details "motion" | ||
} | ||
} | ||
|
||
def parse(String description) { | ||
def pair = description.split(":") | ||
createEvent(name: pair[0].trim(), value: pair[1].trim()) | ||
} |
Oops, something went wrong.