thermostat 0.0.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,159 @@
1
+ body {
2
+ background-color: #8DBD82;
3
+ font-family: "Georgia", sans-serif;
4
+ font-size: 16px;
5
+ line-height: 1.6em;
6
+ padding: 1.6em 0 0 0;
7
+ color: #333;
8
+ }
9
+ h1, h2, h3, h4, h5, h6 {
10
+ color: #444;
11
+ }
12
+ h1 {
13
+ font-family: sans-serif;
14
+ font-weight: normal;
15
+ font-size: 4em;
16
+ line-height: 0.8em;
17
+ letter-spacing: -0.1ex;
18
+ margin: 5px;
19
+ }
20
+ li {
21
+ padding: 0;
22
+ margin: 0;
23
+ list-style-type: square;
24
+ }
25
+ a {
26
+ color: #5E5AFF;
27
+ background-color: #A1DDB1;
28
+ font-weight: normal;
29
+ text-decoration: underline;
30
+ }
31
+ blockquote {
32
+ font-size: 90%;
33
+ font-style: italic;
34
+ border-left: 1px solid #111;
35
+ padding-left: 1em;
36
+ }
37
+ .caps {
38
+ font-size: 80%;
39
+ }
40
+
41
+ #main {
42
+ width: 55em;
43
+ padding: 0;
44
+ margin: 0 auto;
45
+ }
46
+ .coda {
47
+ text-align: right;
48
+ color: #77f;
49
+ font-size: smaller;
50
+ }
51
+
52
+ table {
53
+ font-size: 90%;
54
+ line-height: 1.4em;
55
+ color: #ff8;
56
+ background-color: #111;
57
+ padding: 2px 10px 2px 10px;
58
+ border-style: dashed;
59
+ }
60
+
61
+ th {
62
+ color: #fff;
63
+ }
64
+
65
+ td {
66
+ padding: 2px 10px 2px 10px;
67
+ }
68
+
69
+ .success {
70
+ color: #0CC52B;
71
+ }
72
+
73
+ .failed {
74
+ color: #E90A1B;
75
+ }
76
+
77
+ .unknown {
78
+ color: #995000;
79
+ }
80
+ pre, code {
81
+ font-family: monospace;
82
+ font-size: 90%;
83
+ line-height: 1.4em;
84
+ color: #ff8;
85
+ background-color: #111;
86
+ width: 40em;
87
+ padding: 2px 10px 2px 10px;
88
+ }
89
+ .comment { color: #aaa; font-style: italic; }
90
+ .keyword { color: #eff; font-weight: bold; }
91
+ .punct { color: #eee; font-weight: bold; }
92
+ .symbol { color: #0bb; }
93
+ .string { color: #6b4; }
94
+ .ident { color: #ff8; }
95
+ .constant { color: #66f; }
96
+ .regex { color: #ec6; }
97
+ .number { color: #F99; }
98
+ .expr { color: #227; }
99
+
100
+ .sidebar {
101
+ float: right;
102
+ }
103
+
104
+ #version {
105
+ width: 217px;
106
+ text-align: right;
107
+ font-family: sans-serif;
108
+ font-weight: normal;
109
+ color: #141331;
110
+ padding: 15px 20px 10px 20px;
111
+ margin: 0 auto;
112
+ margin-top: 15px;
113
+ background-color: #9A5535;
114
+ border: 3px solid #7E393E;
115
+ }
116
+
117
+ #version .numbers {
118
+ display: block;
119
+ font-size: 4em;
120
+ line-height: 0.8em;
121
+ letter-spacing: -0.1ex;
122
+ margin-bottom: 15px;
123
+ }
124
+
125
+ #version p {
126
+ text-decoration: none;
127
+ color: #F1F4FF;
128
+ background-color: #9A5535;
129
+ margin: 0;
130
+ padding: 0;
131
+ }
132
+
133
+ #version a {
134
+ text-decoration: none;
135
+ color: #F1F4FF;
136
+ background-color: #9A5535;
137
+ }
138
+
139
+ .clickable {
140
+ cursor: pointer;
141
+ cursor: hand;
142
+ }
143
+
144
+ #twitter_search {
145
+ margin: 40px 0 10px 15px;
146
+ color: #F1F4FF;
147
+ background-color: #9A5535;
148
+ border: 3px solid #7E393E;
149
+ }
150
+
151
+ #twitter_search h3 {
152
+ color: #F1F4FF;
153
+ margin-bottom: 0px;
154
+ }
155
+
156
+ #twitter_search center b {
157
+ display: none;
158
+ }
159
+
@@ -0,0 +1,50 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <link rel="stylesheet" href="stylesheets/screen.css" type="text/css" media="screen" />
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <title>
8
+ <%= title %>
9
+ </title>
10
+ <script src="javascripts/rounded_corners_lite.inc.js" type="text/javascript"></script>
11
+ <style>
12
+
13
+ </style>
14
+ <script type="text/javascript">
15
+ window.onload = function() {
16
+ settings = {
17
+ tl: { radius: 10 },
18
+ tr: { radius: 10 },
19
+ bl: { radius: 10 },
20
+ br: { radius: 10 },
21
+ antiAlias: true,
22
+ autoPad: true,
23
+ validTags: ["div"]
24
+ }
25
+ var versionBox = new curvyCorners(settings, document.getElementById("version"));
26
+ versionBox.applyCornersToAll();
27
+ }
28
+ </script>
29
+ </head>
30
+ <body>
31
+ <div id="main">
32
+
33
+ <h1><%= title %></h1>
34
+ <div class="sidebar">
35
+ <div id="version" class="clickable" onclick='document.location = "<%= download %>"; return false'>
36
+ <p>Get Version</p>
37
+ <a href="<%= download %>" class="numbers"><%= version %></a>
38
+ </div>
39
+ </div>
40
+ <%= body %>
41
+ <p class="coda">
42
+ <a href="FIXME email">FIXME full name</a>, <%= modified.pretty %><br>
43
+ Theme extended from <a href="http://rb2js.rubyforge.org/">Paul Battley</a>
44
+ </p>
45
+ </div>
46
+
47
+ <!-- insert site tracking codes here, like Google Urchin -->
48
+
49
+ </body>
50
+ </html>
metadata CHANGED
@@ -1,50 +1,136 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.4
3
- specification_version: 1
4
2
  name: thermostat
5
3
  version: !ruby/object:Gem::Version
6
- version: 0.0.2
7
- date: 2008-03-10 00:00:00 -04:00
8
- summary: Ruby modules to control Prolipix IP Thermostats
9
- require_paths:
10
- - lib
11
- email: sean at dague dot net
12
- homepage: http://rubyforge.net/projects/rtc
13
- rubyforge_project:
14
- description:
15
- autorequire: thermostat
16
- default_executable:
17
- bindir: bin
18
- has_rdoc: true
19
- required_ruby_version: !ruby/object:Gem::Version::Requirement
20
- requirements:
21
- - - ">"
22
- - !ruby/object:Gem::Version
23
- version: 0.0.0
24
- version:
4
+ version: 1.0.0
25
5
  platform: ruby
26
- signing_key:
27
- cert_chain:
28
- post_install_message:
29
6
  authors:
30
7
  - Sean Dague
31
- files:
32
- - lib/thermostat.rb
33
- - lib/pdp
34
- - lib/pdp/constants.rb
35
- - lib/pdp/oid.rb
36
- - README
37
- test_files: []
38
-
39
- rdoc_options: []
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
40
11
 
41
- extra_rdoc_files:
42
- - README
12
+ date: 2010-03-09 00:00:00 -05:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: temperature
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.0.0
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: rubyforge
27
+ type: :development
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 2.0.3
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: gemcutter
37
+ type: :development
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 0.3.0
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: hoe
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 2.5.0
54
+ version:
55
+ description: |-
56
+ Thermostat.rb is an attempt to build an easy to use ruby api around
57
+ the web services provided by the Proliphix line of network
58
+ thermostats. Their API is documented at
59
+ http://www.proliphix.com/Documentation.aspx.
60
+
61
+ The code is tested on the NT20e unit, which is what I own. It should
62
+ react that same across all their network accessible units.
63
+ email:
64
+ - sean@dague.net
43
65
  executables: []
44
66
 
45
67
  extensions: []
46
68
 
47
- requirements: []
69
+ extra_rdoc_files:
70
+ - History.txt
71
+ - Manifest.txt
72
+ - PostInstall.txt
73
+ - website/index.txt
74
+ files:
75
+ - History.txt
76
+ - Manifest.txt
77
+ - PostInstall.txt
78
+ - README.rdoc
79
+ - Rakefile
80
+ - account.yaml.example
81
+ - config/website.yml
82
+ - config/website.yml.sample
83
+ - docs/PDP_API_R1_11.pdf
84
+ - examples/test-fan-off.rb
85
+ - examples/test-fan-on.rb
86
+ - examples/test-run.rb
87
+ - examples/test-set-heat.rb
88
+ - lib/pdp/constants.rb
89
+ - lib/pdp/network.rb
90
+ - lib/pdp/oid.rb
91
+ - lib/thermostat.rb
92
+ - script/console
93
+ - script/destroy
94
+ - script/generate
95
+ - script/txt2html
96
+ - test/test_helper.rb
97
+ - test/test_oid.rb
98
+ - test/test_thermostat.rb
99
+ - website/index.html
100
+ - website/index.txt
101
+ - website/javascripts/rounded_corners_lite.inc.js
102
+ - website/stylesheets/screen.css
103
+ - website/template.html.erb
104
+ has_rdoc: true
105
+ homepage: http://github.com/sdague/thermostat.rb
106
+ licenses: []
48
107
 
49
- dependencies: []
108
+ post_install_message: PostInstall.txt
109
+ rdoc_options:
110
+ - --main
111
+ - README.rdoc
112
+ require_paths:
113
+ - lib
114
+ required_ruby_version: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: "0"
119
+ version:
120
+ required_rubygems_version: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: "0"
125
+ version:
126
+ requirements: []
50
127
 
128
+ rubyforge_project: sdaguegems
129
+ rubygems_version: 1.3.5
130
+ signing_key:
131
+ specification_version: 3
132
+ summary: Thermostat.rb is an attempt to build an easy to use ruby api around the web services provided by the Proliphix line of network thermostats
133
+ test_files:
134
+ - test/test_thermostat.rb
135
+ - test/test_oid.rb
136
+ - test/test_helper.rb
data/README DELETED
@@ -1,36 +0,0 @@
1
- Copyright (c) 2008 - Sean Dague <sean at dague dot net>
2
-
3
- THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS
4
- OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
5
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
6
- DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
7
- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
8
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
9
- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
10
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
11
- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
12
- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
13
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
14
-
15
-
16
- This code is based on the Proliphix Software API which can be found
17
- here ( http://www.proliphix.com/Documentation.aspx ). I am writing
18
- this software to interface with my NT20e unit. The API looks to be
19
- the same across all their IP units, but I will only be testing on my
20
- unit in my house.
21
-
22
- Important notices from the manual:
23
-
24
- **Limitations on the Frequency of Operations**
25
-
26
- While the device can handle numerous back to back requests, it is
27
- advisable to not sustain an operation frequency higher than 1 request
28
- per 60 second period for a substantial amount of time. In other words,
29
- sustained polling of the device should not exceed a few requests per
30
- minute. A prolonged burst of requests higher than 1 request per 60
31
- second period may degrade the main function of the thermostat. Also,
32
- if one is making a PIB set and wishes to observe a reaction from the
33
- device, it is advisable to wait for at least 1 second between the set
34
- request and subsequent get request.
35
-
36
-