Skip to content

Commit 415cb49

Browse files
authored
feat: Updated core SDK for service support and bug fixes (#146)
1 parent c66988d commit 415cb49

File tree

4 files changed

+48
-6
lines changed

4 files changed

+48
-6
lines changed

lib/smart-app.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -702,6 +702,17 @@ module.exports = class SmartApp {
702702
return this
703703
}
704704

705+
/**
706+
* Service event handler. Only one can be used at a time.
707+
* @param {String} name
708+
* @param {SecurityArmStateEventCallback} callback
709+
*/
710+
subscribedServiceEventHandler(name, callback) {
711+
const eventType = 'SERVICE_EVENT'
712+
this.subscribedEventHandler(name, callback, eventType)
713+
return this
714+
}
715+
705716
/**
706717
* Handler for named subscriptions to **scheduled** events
707718
*
@@ -1077,6 +1088,14 @@ module.exports = class SmartApp {
10771088
break
10781089
}
10791090

1091+
case 'SERVICE_EVENT': {
1092+
// TODO - remove when handler name is returned in event
1093+
const handlerName = this._eventTypeHandlers[event.eventType]
1094+
const handler = this._subscribedEventHandlers[handlerName]
1095+
results.push(handler(context, event.serviceEvent, event.serviceType))
1096+
break
1097+
}
1098+
10801099
case 'INSTALLED_APP_LIFECYCLE_EVENT': {
10811100
// TODO - remove when handler name is returned in event
10821101
const handlerName = this._eventTypeHandlers[event.eventType]

lib/util/authorizer.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ const smartthingsKeyApiHost = 'https://key.smartthings.com'
1212

1313
/**
1414
* @typedef KeyResolverOptions
15-
* @property {Log=} logger Logging utility
16-
* @property {String|Object=} publicKey Public key
15+
* @property {Log} logger Logging utility
16+
* @property {String|Object} publicKey Public key
1717
* @property {number} [keyCacheTTL=86400000] Lifetime of key cache in milliseconds. Default 24 hours.
1818
* @property {String} [keyApiHost='https://key.smartthings.com'] SmartThings Key API host
1919
*/

package-lock.json

Lines changed: 26 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
},
3333
"homepage": "https://github.com/SmartThingsCommunity/smartapp-sdk-nodejs#readme",
3434
"dependencies": {
35-
"@smartthings/core-sdk": "0.0.2",
35+
"@smartthings/core-sdk": "^0.2.3",
3636
"async-mutex": "^0.1.4",
3737
"axios": "^0.19.2",
3838
"fs-extra": "~7.0.1",

0 commit comments

Comments
 (0)