Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: sethfox/SmartThingsPublic
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: SmartThingsCommunity/SmartThingsPublic
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Able to merge. These branches can be automatically merged.

Commits on Apr 1, 2016

  1. Copy the full SHA
    45663ff View commit details

Commits on Jul 22, 2016

  1. MSA-1408: it exposes a customer's smart thing switches, and allows th…

    …e user to toggle them from the Curb app.
    Curb Operations committed Jul 22, 2016
    Copy the full SHA
    1674dc7 View commit details

Commits on Dec 5, 2016

  1. Copy the full SHA
    dbc016b View commit details

Commits on Dec 7, 2016

  1. Merge pull request SmartThingsCommunity#1518 from SmartThingsCommunit…

    …y/staging
    
    Rolling up staging to prod for deploy
    workingmonk authored Dec 7, 2016
    Copy the full SHA
    083ed7c View commit details

Commits on Dec 13, 2016

  1. Copy the full SHA
    e7eb461 View commit details

Commits on Dec 14, 2016

  1. One further fix for NPEs

    tslagle13 authored Dec 14, 2016
    Copy the full SHA
    a4bc248 View commit details

Commits on Dec 15, 2016

  1. Merge pull request SmartThingsCommunity#1532 from tslagle13/fix-color…

    …-coordinator-NPE
    
    [DVCSMP-2273] Fix for NPE for slave/master settings
    bflorian authored Dec 15, 2016
    Copy the full SHA
    76e1391 View commit details

Commits on Dec 20, 2016

  1. [CHF-480]

    Health Check implementation for Z-Wave Thermostat
    pchomal committed Dec 20, 2016
    Copy the full SHA
    648dee9 View commit details

Commits on Dec 22, 2016

  1. [CHF-482]

    Health Check implementation for Z-Wave Metering Dimmer
    pchomal committed Dec 22, 2016
    Copy the full SHA
    ef8611d View commit details

Commits on Jan 6, 2017

  1. Copy the full SHA
    b7a08a8 View commit details
  2. Copy the full SHA
    259516f View commit details
  3. Increase zigbee message delays

    This changes our smartsense DTHs that don't use the ZigBee library for
    everything to have larger delays between ZigBee messages.  This is to
    reduce the network load to try to work around some of the poorer
    behaving ZigBee routers we support.
    
    This resolves: https://smartthings.atlassian.net/browse/DPROT-223
    varzac committed Jan 6, 2017
    Copy the full SHA
    930c4ed View commit details
  4. Merge pull request SmartThingsCommunity#1569 from workingmonk/feature…

    …/certification_work
    
    DEVC-518 Iris Smart Water Sensor
    workingmonk authored Jan 6, 2017
    Copy the full SHA
    3109049 View commit details
  5. Merge pull request SmartThingsCommunity#1570 from workingmonk/feature…

    …/iris_button
    
    DEVC-520 DEVC-525 Adding Iris Button after clearing certification
    workingmonk authored Jan 6, 2017
    Copy the full SHA
    490ec32 View commit details

Commits on Jan 9, 2017

  1. DVCSMP-2298 Philips Hue: Reduce number of daily exceptions

    -Stop retry when broken data received
    -Time out on light discovery if nothing is found
    -Avoid div/0 in color temp logic
    larsfinander committed Jan 9, 2017
    Copy the full SHA
    bd44027 View commit details

Commits on Jan 10, 2017

  1. Copy the full SHA
    5607a3e View commit details
  2. Merge pull request SmartThingsCommunity#1562 from varzac/increase-delays

    DPROT-223 Increase zigbee message delays
    workingmonk authored Jan 10, 2017
    Copy the full SHA
    8db0556 View commit details
  3. Copy the full SHA
    f969027 View commit details
  4. MSA-1577: OpenT2T

    This SmartApp enables the end-to-end SmartThings scenarios
    via OpenT2T. More information on OpenT2T can be found at
    http://www.opentranslatorstothings.org/#/
    larsfinander committed Jan 10, 2017
    Copy the full SHA
    03a7991 View commit details
  5. Merge pull request SmartThingsCommunity#1580 from SmartThingsCommunit…

    …y/DEVC-533
    
    Add fingerprint for GE Smart Motion Sensor DEVC-533
    mckeed authored Jan 10, 2017
    Copy the full SHA
    52357e4 View commit details
  6. Merge pull request SmartThingsCommunity#1582 from SmartThingsCommunit…

    …y/production
    
    Rolling down production hotfix to staging
    workingmonk authored Jan 10, 2017
    Copy the full SHA
    076ffec View commit details
  7. Merge pull request SmartThingsCommunity#1583 from SmartThingsCommunit…

    …y/staging
    
    Rolling up staging to production for deploy
    workingmonk authored Jan 10, 2017
    Copy the full SHA
    a17971d View commit details

Commits on Jan 11, 2017

  1. Merge pull request SmartThingsCommunity#1584 from SmartThingsCommunit…

    …y/staging
    
    Rolling down staging hotfix to master
    workingmonk authored Jan 11, 2017
    Copy the full SHA
    5ad20fb View commit details
  2. Merge pull request SmartThingsCommunity#1585 from SmartThingsCommunit…

    …y/master
    
    Rolling up master to staging
    workingmonk authored Jan 11, 2017
    Copy the full SHA
    7cbc2d1 View commit details
  3. Merge pull request SmartThingsCommunity#1581 from larsfinander/MSA-15…

    …77_OpenT2T_staging
    
    MSA-1577: OpenT2T
    workingmonk authored Jan 11, 2017
    Copy the full SHA
    3216f63 View commit details

Commits on Jan 12, 2017

  1. Merge pull request SmartThingsCommunity#1575 from larsfinander/DVCSMP…

    …-2298_Philips_Hue_Reduce_daily_exceptions_staging
    
    DVCSMP-2298 Philips Hue: Reduce number of daily exceptions
    workingmonk authored Jan 12, 2017
    Copy the full SHA
    57d20e2 View commit details

Commits on Jan 17, 2017

  1. Added fingerprints for the following devices:

    1. Leviton 5A Incandescent Switch (VRS05-1LZ)
    2. Leviton 15A Split Duplex Receptacle (VRR15-1LZ)
    parijatdas committed Jan 17, 2017
    Copy the full SHA
    61356ec View commit details

Commits on Jan 18, 2017

  1. Merge pull request SmartThingsCommunity#1596 from SmartThingsCommunit…

    …y/production
    
    Rolling down production to staging
    workingmonk authored Jan 18, 2017
    Copy the full SHA
    f0f02a2 View commit details
  2. Merge pull request SmartThingsCommunity#1597 from SmartThingsCommunit…

    …y/staging
    
    Rolling up staging to production
    workingmonk authored Jan 18, 2017
    Copy the full SHA
    30511d7 View commit details
  3. Merge pull request SmartThingsCommunity#1598 from SmartThingsCommunit…

    …y/staging
    
    Rolling down staging to master
    workingmonk authored Jan 18, 2017
    Copy the full SHA
    bd3367f View commit details

Commits on Jan 19, 2017

  1. Copy the full SHA
    de37d0c View commit details
  2. Merge pull request SmartThingsCommunity#1604 from workingmonk/feature…

    …/device_lab_cert_work
    
    DEVC-492 DEVC-493 DEVC-494 DEVC-526 Device Certification approved new fingerprints
    workingmonk authored Jan 19, 2017
    Copy the full SHA
    9686f37 View commit details

Commits on Jan 20, 2017

  1. [CHF-508] Hue bulbs hides enrollment events

    jackchi committed Jan 20, 2017
    Copy the full SHA
    a5d0c1d View commit details
  2. Copy the full SHA
    7648fd4 View commit details
  3. Merge pull request SmartThingsCommunity#1608 from juano2310/sim_fix

    DVCSMP-2325 - Remove parse method from simulated Switch
    bflorian authored Jan 20, 2017
    Copy the full SHA
    9900e53 View commit details
  4. DVCSMP-2324 - Centralite Thermostat handle multiple attributes (Smart…

    …ThingsCommunity#1606)
    
    - Curly braces
    - remove parseDescriptionAsMap
    - descMap to it
    - Appended to the result list
    - Convert to list and appended
    juano2310 authored Jan 20, 2017
    Copy the full SHA
    445c115 View commit details

Commits on Jan 23, 2017

  1. Copy the full SHA
    a36500a View commit details
  2. Merge pull request SmartThingsCommunity#1610 from dkirker/DEVC-490

    DEVC-490: Add Leviton Dimmer DL1KD fingerprint
    workingmonk authored Jan 23, 2017
    Copy the full SHA
    550214c View commit details

Commits on Jan 24, 2017

  1. Copy the full SHA
    fd1ad51 View commit details
  2. Merge pull request SmartThingsCommunity#1612 from SmartThingsCommunit…

    …y/production
    
    Rolling down production hotfix to staging
    workingmonk authored Jan 24, 2017
    Copy the full SHA
    6385443 View commit details
  3. Merge pull request SmartThingsCommunity#1613 from SmartThingsCommunit…

    …y/staging
    
    Rolling down staging hotfix to master
    workingmonk authored Jan 24, 2017
    Copy the full SHA
    eb4d5dc View commit details
  4. Merge pull request SmartThingsCommunity#1614 from SmartThingsCommunit…

    …y/master
    
    Rolling up master to staging
    workingmonk authored Jan 24, 2017
    Copy the full SHA
    ded7501 View commit details
  5. Netatmo Exceptions

    Adding try/catch blocks to reduce HTTP exceptions due to rate limits or
    unauthorized errors. Also updating the “devicelist” endpoint to
    “getstationdata” as the former is deprecated
    jasonbio committed Jan 24, 2017
    Copy the full SHA
    f334f65 View commit details
  6. Plant link Exceptions

    Adding try/catch blocks to reduce HTTP exceptions due to rate limits or
    unauthorized errors.
    jasonbio committed Jan 24, 2017
    Copy the full SHA
    41adc97 View commit details

Commits on Jan 25, 2017

  1. Copy the full SHA
    a15ca97 View commit details
  2. Copy the full SHA
    c650047 View commit details
  3. Merge pull request SmartThingsCommunity#1618 from workingmonk/feature…

    …/light_capability
    
    ICP-203 Adding Light Capability to hue lights
    workingmonk authored Jan 25, 2017
    Copy the full SHA
    8611d2e View commit details
  4. Merge pull request SmartThingsCommunity#1620 from SmartThingsCommunit…

    …y/staging
    
    Rolling down staging hotfix to master
    workingmonk authored Jan 25, 2017
    Copy the full SHA
    54da556 View commit details

Commits on Jan 26, 2017

  1. Manually refresh on/off status after setLevel

    This is because ZLL bulbs do not report or allow for configuration of
    reporting of attributes.  As a result if we change a value, we have to
    manually call a read of that attribute to update our status.
    
    This is a part of: https://smartthings.atlassian.net/browse/DPROT-227
    varzac committed Jan 26, 2017
    Copy the full SHA
    be2e19e View commit details

Commits on Jan 28, 2017

  1. Merge pull request SmartThingsCommunity#1621 from varzac/zll-bulb-rep…

    …orting
    
    [DPROT-227] Manually refresh on/off status after setLevel
    workingmonk authored Jan 28, 2017
    Copy the full SHA
    d4f21b9 View commit details
Showing 1,035 changed files with 110,278 additions and 19,654 deletions.
65 changes: 65 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
defaults: &defaults
working_directory: ~/SmartThingsCommunity/SmartThingsPublic
docker:
- image: smartthings-docker-build.jfrog.io/releng/build-common:latest
auth:
username: $ARTIFACTORY_USERNAME
password: $ARTIFACTORY_PASSWORD
shell: /bin/bash --login
parallelism: 1
version: 2
jobs:
build:
<<: *defaults
steps:
- checkout
- run: ./gradlew check -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD"
- run: ./gradlew compileSmartappsGroovy compileDevicetypesGroovy -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD"
deploy-dev:
<<: *defaults
steps:
- checkout
- run: ./gradlew deployArchives -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD" -Ps3Buckets="$S3_BUCKETS_DEV" -PawsAccessKey="$S3_IAM_PREPROD_USERNAME" -PawsSecretKey="$S3_IAM_PREPROD_PASSWORD"
- run: ./gradlew slackSendMessage -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD" -Pbranch="$CIRCLE_BRANCH" -PslackToken="$SLACK_TOKEN" -PslackWebhookUrl="$SLACK_WEBHOOK_URL" -PslackChannel="$SLACK_CHANNEL" --stacktrace
deploy-stage:
<<: *defaults
steps:
- checkout
- run: ./gradlew deployArchives -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD" -Ps3Buckets="$S3_BUCKETS_STAGE" -PawsAccessKey="$S3_IAM_PREPROD_USERNAME" -PawsSecretKey="$S3_IAM_PREPROD_PASSWORD"
- run: ./gradlew slackSendMessage -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD" -Pbranch="$CIRCLE_BRANCH" -PslackToken="$SLACK_TOKEN" -PslackWebhookUrl="$SLACK_WEBHOOK_URL" -PslackChannel="$SLACK_CHANNEL_STAGE" --stacktrace
deploy-accept:
<<: *defaults
steps:
- checkout
- run: ./gradlew deployArchives -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD" -Ps3Buckets="$S3_BUCKETS_ACCEPT" -PawsAccessKey="$S3_IAM_ACCEPTANCE_USERNAME" -PawsSecretKey="$S3_IAM_ACCEPTANCE_PASSWORD"
- run: ./gradlew slackSendMessage -PsmartThingsArtifactoryUserName="$ARTIFACTORY_USERNAME" -PsmartThingsArtifactoryPassword="$ARTIFACTORY_PASSWORD" -Pbranch="$CIRCLE_BRANCH" -PslackToken="$SLACK_TOKEN" -PslackWebhookUrl="$SLACK_WEBHOOK_URL" -PslackChannel="$SLACK_CHANNEL_ACCEPT" --stacktrace
workflows:
version: 2
deploy:
jobs:
- build:
filters:
branches:
only:
- master
- staging
- acceptance
- production
- deploy-dev:
requires:
- build
filters:
branches:
only: master
- deploy-stage:
requires:
- build
filters:
branches:
only: staging
- deploy-accept:
requires:
- build
filters:
branches:
only: acceptance
22 changes: 22 additions & 0 deletions .githooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash

ERROR_COUNT=0
while IFS= read -r DTH; do
echo "Verifying $DTH"
ERRORS=$(groovyc $DTH 2>&1 | grep ".groovy:")
# echo $ERRORS
IMPORTANT_ERRORS=$(echo $ERRORS | grep -v "unable")
if [[ ${#IMPORTANT_ERRORS} -eq 0 ]]; then
echo "No disqualifying compilation errors found"
else
echo "$DTH failed to compile, run groovyc on your source file for the full error: $ERRORS"
ERROR_COUNT=$((ERROR_COUNT + 1))
fi
echo "======================================================================="
done < <(git diff --cached --name-only | grep .*.groovy)

if [[ $ERROR_COUNT -gt 0 ]]; then
echo "rejected" && exit 1
else
exit 0
fi
17 changes: 7 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
# SmartThings Public GitHub Repo
# Welcome to the SmartThings Public GitHub Repo

An official list of SmartApps and Device Types from SmartThings.
This repo contains development code for SmartApps and Groovy DTHs (Dynamic Type Handlers).

Here are some links to help you get started coding right away:
Here are some links to help you get started:

* [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)
* [Developer Documentation](https://developer-preview.smartthings.com)
* [Developer Workspace](https://smartthings.developer.samsung.com/workspace)
* [Community Forums](http://community.smartthings.com)

Follow us on the web:

* Twitter: http://twitter.com/smartthingsdev
* Facebook: http://facebook.com/smartthingsdevelopers
> SmartThings Edge Device Drivers are the new method for integrating Hub Connected Devices into the SmartThings Platform. With the launch of SmartThings Edge, we are taking some events that would have happened in the Cloud and moving them to the SmartThings Hub. SmartThings Edge uses Lua-based device drivers and our Rules API to control and automate devices connected directly to a SmartThings Hub. This includes Zigbee, Z-Wave, and LAN devices as well as automations triggered by timers and other Hub Connected devices using drivers. In the future, this will expand to include more protocols and features, like the new Matter standard.
> To learn more about SmartThings Edge, visit [Get Started with SmartThings Edge](https://developer-preview.smartthings.com/docs/devices/hub-connected/get-started).
47 changes: 33 additions & 14 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -9,30 +9,28 @@ apply plugin: 'smartthings-slack'

buildscript {
dependencies {
classpath "com.smartthings.deployment:executable-deployment-scripts:1.0.8"
classpath "com.smartthings.deployment:executable-deployment-scripts:1.0.12"
}
repositories {
mavenLocal()
jcenter()
maven {
credentials {
username smartThingsArtifactoryUserName
password smartThingsArtifactoryPassword
}
url "https://artifactory.smartthings.com/libs-release-local"
url "https://smartthings.jfrog.io/smartthings/libs-release"
}
}
}

repositories {
mavenLocal()
jcenter()
maven {
credentials {
username smartThingsArtifactoryUserName
password smartThingsArtifactoryPassword
}
url "https://artifactory.smartthings.com/libs-release-local"
url "https://smartthings.jfrog.io/smartthings/libs-release"
}
}

@@ -51,10 +49,10 @@ sourceSets {

dependencies {
devicetypesCompile 'org.codehaus.groovy:groovy-all:2.4.7'
devicetypesCompile 'smartthings:appengine-z-wave:0.1.2'
devicetypesCompile 'smartthings:appengine-zigbee:0.1.11'
devicetypesCompile 'smartthings:appengine-z-wave:0.1.3'
devicetypesCompile 'smartthings:appengine-zigbee:0.1.12'
smartappsCompile 'org.codehaus.groovy:groovy-all:2.4.7'
smartappsCompile 'smartthings:appengine-common:0.1.8'
smartappsCompile 'smartthings:appengine-common:0.1.9'
smartappsCompile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1'
smartappsCompile 'org.grails:grails-web:2.3.11'
smartappsCompile 'org.json:json:20140107'
@@ -65,28 +63,35 @@ slackSendMessage {
String token = project.hasProperty('slackToken') ? project.property('slackToken') : null
String webhookUrl = project.hasProperty('slackWebhookUrl') ? project.property('slackWebhookUrl') : null
String channel = project.hasProperty('slackChannel') ? project.property('slackChannel') : null
String drinks = 'https://dl.dropboxusercontent.com/s/m1z5mpd3c83lwev/minion_beer.jpeg?dl=0'
String wolverine = 'https://dl.dropboxusercontent.com/s/4lbjqzvm2v033u9/minion_wolverine.jpg?dl=0'
String beach = 'https://dl.dropboxusercontent.com/s/rqrfgxk53gfng69/minion_beach.png?dl=0'
String drinks = 'https://d2j2zbtzrapq2t.cloudfront.net/minion_beer.jpeg'
String wolverine = 'https://d2j2zbtzrapq2t.cloudfront.net/minion_wolverine.jpg'
String beach = 'https://d2j2zbtzrapq2t.cloudfront.net/minion_beach.png'
String captain = 'https://d2j2zbtzrapq2t.cloudfront.net/minion_captain.jpeg'
String iconUrl
String color
String messageText
String username
switch (branch) {
case 'master':
username = 'Hickory'
username = 'DEV'
iconUrl = wolverine
color = '#35D0F2'
messageText = 'Began deployment of _SmartThingsPublic[master]_ branch to the _Dev_ environments.'
break
case 'staging':
username = 'Dickory'
username = 'STG'
iconUrl = beach
color = '#FFDE20'
messageText = 'Began deployment of _SmartThingsPublic[staging]_ branch to the _Staging_ environments.'
break
case 'acceptance':
username = 'ACC'
iconUrl = captain
color = '#FFDE20'
messageText = 'Began deployment of _SmartThingsPublic[acceptance]_ branch to the _Acceptance_ environments.'
break
case 'production':
username = 'Dock'
username = 'PRD'
iconUrl = drinks
color = '#FF1D23'
messageText = 'Began deployment of _SmartThingsPublic[production]_ branch to the _Prod_ environments.'
@@ -131,3 +136,17 @@ slackSendMessage {
text: messageText
)
}

task configure(type: Exec) {
description "Configures automatic spaces->tabs conversion on merge and a commit hook to detect syntax errors"
File attributeFile = new File("${projectDir}/.git/info/attributes")
attributeFile.write("*.groovy filter=tabspace\n")
commandLine "git", "config", "filter.tabspace.clean", "unexpand -t 2"
commandLine "git", "config", "core.hooksPath", ".githooks"
}

task unconfigure(type: Exec) {
description "Undoes configuration put in place by configure"
commandLine "git", "config", "--unset-all", "filter.tabspace.clean"
commandLine "git", "config", "core.hooksPath", "${projectDir}/.git/hooks"
}
27 changes: 0 additions & 27 deletions circle.yml

This file was deleted.

Loading