Skip to content

Commit bca8048

Browse files
tonesto7tonesto7
tonesto7
authored and
tonesto7
committed
updated version and license info to remove it from the file and into a text file
1 parent 8a85f2e commit bca8048

File tree

3 files changed

+91
-78
lines changed

3 files changed

+91
-78
lines changed

Data/changelog.txt

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
V4.4.2 (January 16th, 2017):
2+
▔▔▔▔▔▔▔▔▔▔▔
3+
• FIXED: Lot's and lot's of bugs
4+
5+
V4.4.2 (January 16th, 2017):
6+
▔▔▔▔▔▔▔▔▔▔▔
7+
• FIXED: Lot's and lot's of bugs
8+
9+
V4.4.1 (January 7th, 2017):
10+
▔▔▔▔▔▔▔▔▔▔▔
11+
• UPDATE: Added the Nest Auth token to appData for easy management
12+
13+
V4.4.0 (January 7th, 2017):
14+
▔▔▔▔▔▔▔▔▔▔▔
15+
• FIXED: NullPointer issue during install if ST mode was not set
16+
• FIXED: Eco fix for WatchDog warnings to honor \'Off\'
17+
• FIXED: Nest mode should now work properly in cases where there are no thermostats
18+
19+
V4.3.1 (December 23rd, 2016):
20+
▔▔▔▔▔▔▔▔▔▔▔
21+
• ADDED: Nest Manager | Automations will now allow you to repair/rebuild corrupted states.
22+
23+
V4.2.0 (December 12th, 2016):
24+
▔▔▔▔▔▔▔▔▔▔▔
25+
• Updated: Modified the minimum device version removed some unnecessary code.
26+
27+
V4.1.0 (November 21st, 2016):
28+
▔▔▔▔▔▔▔▔▔▔▔
29+
• Updated: Modified the minimum device version removed some unnecessary code.
30+
31+
V4.1.0 (November 19th, 2016):
32+
▔▔▔▔▔▔▔▔▔▔▔
33+
• ADDED: Manager and thermostat devices now support all of the new Nest Api features like time-to-temp, sunlight correction, and Eco mode.
34+
• ADDED: Devices now support SmartThings undocumented device Health Check system. Which will show you when your device isn't communicating.
35+
• ADDED: Cleaned up thermostat voice reports to sound more natural and added some more detail.
36+
• ADDED: Voice Report preferences to the Setup Review and preferences pages. This allows you to select which items to disable from the voice report (zone info, automation schedule info, device usage info)
37+
• ADDED: Thermostat device graphs updated to display external temps and HVAC runtime.
38+
• ADDED: Added two new pie charts to represent the Today and Month usage.
39+
• UPDATED: Virtual Thermostat device now shares the same code as the physical device handler
40+
• UPDATED: All device logging methods modified to honor the manager setting to disable appending app/device name to log entries
41+
• UPDATED: Complete update to device and child app diagnostic pages it includes filters to increase loading and not show irrelevant data."
42+
• UPDATED: Lot's of bug fixes.
43+
44+
V4.0.0 (October 28th, 2016):
45+
▔▔▔▔▔▔▔▔▔▔▔
46+
• V4.0.0 Release

app_license.txt

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
Licensed under the Apache License, Version 2.0 (the 'License');
2+
you may not use this file except in compliance with the License.
3+
You may obtain a copy of the License at
4+
5+
http://www.apache.org/licenses/LICENSE-2.0
6+
7+
Unless required by applicable law or agreed to in writing, software
8+
distributed under the License is distributed on an 'AS IS' BASIS,
9+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10+
See the License for the specific language governing permissions and
11+
limitations under the License.

smartapps/tonesto7/nest-manager.src/nest-manager.groovy

+34-78
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,18 @@
11
/********************************************************************************************
2-
| Application Name: Nest Manager and Automations |
2+
| Application Name: Nest Manager and Automations |
3+
| Copyright (C) 2017 Anthony S. |
34
| Authors: Anthony S. (@tonesto7), Eric S. (@E_sch) |
45
| Contributors: Ben W. (@desertblade) |
56
| A few code methods are modeled from those in CoRE by Adrian Caramaliu |
6-
| |
7-
|*******************************************************************************************|
8-
| There maybe portions of the code that may resemble code from other apps in the |
9-
| community. I may have used some of it as a point of reference. |
10-
| Thanks go out to those Authors!!! |
11-
| I apologize if i've missed anyone. Please let me know and I will add your credits |
12-
| |
13-
| ### I really hope that we don't have a ton or forks being released to the community, |
14-
| ### I hope that we can collaborate and make app and device type that will accommodate |
15-
| ### every use case |
16-
*********************************************************************************************/
7+
| |
8+
| License Info: https://github.com/tonesto7/nest-manager/blob/master/app_license.txt |
9+
| |
10+
| NOTE: I really hope that we don't have a ton or forks being released to the community, |
11+
| and that we can collaborate to make the smartapp and devices that will accommodate |
12+
| every use case |
13+
|*******************************************************************************************|*/
1714

1815
import groovy.json.*
19-
import groovy.time.*
2016
import java.text.SimpleDateFormat
2117
import java.security.MessageDigest
2218

@@ -40,54 +36,8 @@ definition(
4036

4137
include 'asynchttp_v1'
4238

43-
def appVersion() { "4.4.2" }
44-
def appVerDate() { "1-16-2017" }
45-
def appVerInfo() {
46-
def str = ""
47-
str += "V4.4.2 (January 16th, 2017):"
48-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
49-
str += "\n • FIXED: Lot's and lot's of bugs"
50-
51-
str += "\n\nV4.4.1 (January 7th, 2017):"
52-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
53-
str += "\n • UPDATE: Added the Nest Auth token to appData for easy management"
54-
55-
str += "\n\nV4.4.0 (January 7th, 2017):"
56-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
57-
str += "\n • FIXED: NullPointer issue during install if ST mode was not set"
58-
str += "\n • FIXED: Eco fix for WatchDog warnings to honor \'Off\'"
59-
str += "\n • FIXED: Nest mode should now work properly in cases where there are no thermostats"
60-
61-
str += "\n\nV4.3.1 (December 23rd, 2016):"
62-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
63-
str += "\n • ADDED: Nest Manager | Automations will now allow you to repair/rebuild corrupted states."
64-
65-
str += "\n\nV4.2.0 (Decemnber 12th, 2016):"
66-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
67-
str += "\n • Updated: Modified the minimum device version removed some unnecessary code."
68-
69-
str += "\n\nV4.1.0 (November 21st, 2016):"
70-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
71-
str += "\n • Updated: Modified the minimum device version removed some unnecessary code."
72-
73-
str += "\n\nV4.1.0 (November 19th, 2016):"
74-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
75-
str += "\n • ADDED: Manager and thermostat devices now support all of the new Nest Api features like time-to-temp, sunlight correction, and Eco mode."
76-
str += "\n • ADDED: Devices now support SmartThings undocumented device Health Check system. Which will show you when your device isn't communicating."
77-
str += "\n • ADDED: Cleaned up thermostat voice reports to sound more natural and added some more detail."
78-
str += "\n • ADDED: Voice Report preferences to the Setup Review and preferences pages. This allows you to select which items to disable from the voice report (zone info, automation schedule info, device usage info)"
79-
str += "\n • ADDED: Thermostat device graphs updated to display external temps and hvac runtime."
80-
str += "\n • ADDED: Added two new pie charts to represent the Today and Month usage."
81-
str += "\n • UPDATED: Virtual Thermostat device now shares the same code as the physical device handler"
82-
str += "\n • UPDATED: All device logging methods modified to honor the manager setting to disable appending app/device name to log entries"
83-
str += "\n • UPDATED: Complete update to device and child app diagnostic pages it includes filters to increase loading and not show irrelavent data."
84-
str += "\n • UPDATED: Lot's of Bugfixes"
85-
86-
str += "\n\nV4.0.0 (October 28th, 2016):"
87-
str += "\n▔▔▔▔▔▔▔▔▔▔▔"
88-
str += "\n • V4.0.0 Release"
89-
return str
90-
}
39+
def appVersion() { "4.5.0" }
40+
def appVerDate() { "1-17-2017" }
9141

9242
preferences {
9343
//startPage
@@ -2247,7 +2197,7 @@ def updateChildData(force = false) {
22472197
curWeatherTemp = getTemperatureScale() == "C" ? (cur?.current_observation?.temp_c ? Math.round(cur?.current_observation?.temp_c.toDouble()) : null) : (cur?.current_observation?.temp_f ? Math.round(cur?.current_observation?.temp_f).toInteger() : null)
22482198
}
22492199
}
2250-
def devices = getAllChildDevices()
2200+
def devices = getAllChildDevices()
22512201
devices?.each {
22522202
def devId = it?.deviceNetworkId
22532203
if(atomicState?.thermostats && atomicState?.deviceData?.thermostats[devId]) {
@@ -3517,6 +3467,24 @@ def webResponse(resp, data) {
35173467
return result
35183468
}
35193469

3470+
def getWebData(path, content, label) {
3471+
try {
3472+
LogAction("Getting ${label} data", "info", true)
3473+
httpGet([ uri: path, contentType: "$content" ]) { resp ->
3474+
return resp?.data?.text.toString()
3475+
}
3476+
}
3477+
catch (ex) {
3478+
if(ex instanceof groovyx.net.http.HttpResponseException) {
3479+
LogAction("${label} file not found", "warn", true)
3480+
} else {
3481+
log.error "getWebData($path, $content, $label) Exception:", ex
3482+
}
3483+
sendExceptionData(ex, "getWebData")
3484+
return "${label} info not found"
3485+
}
3486+
}
3487+
35203488
def clientBlacklisted() {
35213489
if(atomicState?.clientBlacklisted == null) { atomicState?.clientBlacklisted == false }
35223490
def curBlState = atomicState?.clientBlacklisted
@@ -9185,11 +9153,11 @@ def setAway(away) {
91859153
parent?.setStructureAway(null, true)
91869154
} else {
91879155
parent?.setStructureAway(null, false)
9188-
}
9156+
}
91899157
def didstr = away ? "AWAY" : "HOME"
91909158
LogAction("setAway($away): | Setting structure to $didstr", "trace", true)
91919159
storeLastAction("Set structure to $didstr", getDtNow())
9192-
}
9160+
}
91939161
}
91949162

91959163
def nModeScheduleOk() { return autoScheduleOk(nModePrefix()) }
@@ -12223,21 +12191,9 @@ def textModified() { return "Updated: ${appVerDate()}" }
1222312191
def textAuthor() { return "${appAuthor()}" }
1222412192
def textNamespace() { return "${appNamespace()}" }
1222512193
def textVerInfo() { return "${appVerInfo()}" }
12194+
def appVerInfo() { return getWebData("https://raw.githubusercontent.com/tonesto7/nest-manager/${gitBranch()}/Data/changelog.txt", "text/plain; charset=UTF-8", "changelog") }
12195+
def textLicense() { return getWebData("https://raw.githubusercontent.com/tonesto7/nest-manager/${gitBranch()}/app_license.txt", "text/plain; charset=UTF-8", "license") }
1222612196
def textDonateLink(){ return "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2CJEVN439EAWS" }
1222712197
def stIdeLink() { return "https://graph.api.smartthings.com" }
1222812198
def textCopyright() { return "Copyright© 2017 - Anthony S." }
1222912199
def textDesc() { return "This SmartApp is used to integrate your Nest devices with SmartThings and to enable built-in automations" }
12230-
def textHelp() { return "" }
12231-
def textLicense() {
12232-
return "Licensed under the Apache License, Version 2.0 (the 'License'); "+
12233-
"you may not use this file except in compliance with the License. "+
12234-
"You may obtain a copy of the License at"+
12235-
"\n\n"+
12236-
" http://www.apache.org/licenses/LICENSE-2.0"+
12237-
"\n\n"+
12238-
"Unless required by applicable law or agreed to in writing, software "+
12239-
"distributed under the License is distributed on an 'AS IS' BASIS, "+
12240-
"WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. "+
12241-
"See the License for the specific language governing permissions and "+
12242-
"limitations under the License."
12243-
}

0 commit comments

Comments
 (0)