humble_rpi 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/humble_rpi.rb +22 -10
- data.tar.gz.sig +0 -0
- metadata +48 -10
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c91dbb08a6a98e3420395c3acb830c83b41b3193
|
4
|
+
data.tar.gz: fdbd48f13dbd94249e584983c4c80c3995e01098
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 58cbdc3345a12e858abe42d1c69d6dc256cc19982941fdefe9aac89c96dd2516cdd93bfbc49a09ecb02e016adb32644a51790eda7e461205374150ade6706e14
|
7
|
+
data.tar.gz: 04da06fa0baf46a4f433318cedf19e97bfde3a2a825cf93e10b0615e962bc17e94f079d46f8f5b0940ecdcf5a0ea501448bf8c094077e3e36c86787d48fb6f69
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/humble_rpi.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
require 'rpi'
|
6
6
|
require 'chronic_duration'
|
7
|
-
require '
|
7
|
+
require 'sps-pub'
|
8
8
|
|
9
9
|
|
10
10
|
class HumbleRPi < RPi
|
@@ -12,20 +12,29 @@ class HumbleRPi < RPi
|
|
12
12
|
|
13
13
|
def initialize(options={})
|
14
14
|
|
15
|
-
puts 'inside humble_rpi'
|
16
15
|
default_options = {
|
17
16
|
device_name: 'rpi',
|
18
|
-
led_pins:
|
17
|
+
led_pins: [],
|
19
18
|
motion_pin: nil,
|
20
19
|
sps_address: nil,
|
21
20
|
sps_port: '59000'
|
22
21
|
}
|
23
22
|
|
24
23
|
@opt = default_options.merge options
|
24
|
+
send_message 'humble_rpi initialized'
|
25
25
|
super @opt[:led_pins]
|
26
26
|
@ws = nil
|
27
27
|
end
|
28
|
+
|
29
|
+
def send_message(msg)
|
30
|
+
|
31
|
+
topic, address, port = @opt[:device_name], @opt[:sps_address], @opt[:sps_port]
|
32
|
+
fqm = (topic + ': ' + msg)
|
33
|
+
address ? SPSPub.notice(fqm, address: address, port: port) : puts(fqm)
|
34
|
+
end
|
28
35
|
|
36
|
+
protected
|
37
|
+
|
29
38
|
def led_listener(&blk)
|
30
39
|
rpi = self
|
31
40
|
|
@@ -64,15 +73,17 @@ class HumbleRPi < RPi
|
|
64
73
|
|
65
74
|
def motion_detect()
|
66
75
|
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
76
|
+
send_message 'motion detection activated'
|
77
|
+
t1 = Time.now - ChronicDuration.parse('1 minute and 10 seconds')
|
78
|
+
topic = @opt[:device_name]
|
79
|
+
address, port = @opt[:sps_address], @opt[:sps_port]
|
71
80
|
|
72
|
-
|
81
|
+
hrpi = self
|
82
|
+
|
83
|
+
after pin: @opt[:motion_pin].to_i, goes: :high do
|
73
84
|
|
74
85
|
if Time.now > t1 + ChronicDuration.parse('1 minute') then
|
75
|
-
|
86
|
+
hrpi.send_message 'motion detected'
|
76
87
|
t1 = Time.now
|
77
88
|
end
|
78
89
|
|
@@ -80,6 +91,7 @@ class HumbleRPi < RPi
|
|
80
91
|
PiPiper.wait
|
81
92
|
|
82
93
|
end
|
94
|
+
|
83
95
|
end
|
84
96
|
|
85
97
|
|
@@ -120,4 +132,4 @@ if __FILE__ == $0 then
|
|
120
132
|
sleep 3 # wait for the client to connect
|
121
133
|
f.motion_detect
|
122
134
|
|
123
|
-
end
|
135
|
+
end
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: humble_rpi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -31,50 +31,88 @@ cert_chain:
|
|
31
31
|
K97Fz/NM76+KNaPEa6pYgH+JF/i/VxG6aln5EavRfNdLWM0pBirSt/kpw9jDToHo
|
32
32
|
YglbilVTUndGuw==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
34
|
+
date: 2014-06-22 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rpi
|
38
38
|
requirement: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0.1'
|
40
43
|
- - ">="
|
41
44
|
- !ruby/object:Gem::Version
|
42
|
-
version:
|
45
|
+
version: 0.1.1
|
43
46
|
type: :runtime
|
44
47
|
prerelease: false
|
45
48
|
version_requirements: !ruby/object:Gem::Requirement
|
46
49
|
requirements:
|
50
|
+
- - "~>"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '0.1'
|
47
53
|
- - ">="
|
48
54
|
- !ruby/object:Gem::Version
|
49
|
-
version:
|
55
|
+
version: 0.1.1
|
50
56
|
- !ruby/object:Gem::Dependency
|
51
57
|
name: chronic_duration
|
52
58
|
requirement: !ruby/object:Gem::Requirement
|
53
59
|
requirements:
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0.10'
|
54
63
|
- - ">="
|
55
64
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
65
|
+
version: 0.10.4
|
57
66
|
type: :runtime
|
58
67
|
prerelease: false
|
59
68
|
version_requirements: !ruby/object:Gem::Requirement
|
60
69
|
requirements:
|
70
|
+
- - "~>"
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '0.10'
|
61
73
|
- - ">="
|
62
74
|
- !ruby/object:Gem::Version
|
63
|
-
version:
|
75
|
+
version: 0.10.4
|
64
76
|
- !ruby/object:Gem::Dependency
|
65
77
|
name: websocket-eventmachine-client
|
66
78
|
requirement: !ruby/object:Gem::Requirement
|
67
79
|
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '1.0'
|
83
|
+
- - ">="
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 1.0.1
|
86
|
+
type: :runtime
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
requirements:
|
90
|
+
- - "~>"
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: '1.0'
|
93
|
+
- - ">="
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: 1.0.1
|
96
|
+
- !ruby/object:Gem::Dependency
|
97
|
+
name: sps-pub
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - "~>"
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '0.3'
|
68
103
|
- - ">="
|
69
104
|
- !ruby/object:Gem::Version
|
70
|
-
version:
|
105
|
+
version: 0.3.0
|
71
106
|
type: :runtime
|
72
107
|
prerelease: false
|
73
108
|
version_requirements: !ruby/object:Gem::Requirement
|
74
109
|
requirements:
|
110
|
+
- - "~>"
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0.3'
|
75
113
|
- - ">="
|
76
114
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
115
|
+
version: 0.3.0
|
78
116
|
description:
|
79
117
|
email: james@r0bertson.co.uk
|
80
118
|
executables: []
|
@@ -94,7 +132,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
94
132
|
requirements:
|
95
133
|
- - ">="
|
96
134
|
- !ruby/object:Gem::Version
|
97
|
-
version:
|
135
|
+
version: 2.1.2
|
98
136
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
99
137
|
requirements:
|
100
138
|
- - ">="
|
@@ -102,7 +140,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
102
140
|
version: '0'
|
103
141
|
requirements: []
|
104
142
|
rubyforge_project:
|
105
|
-
rubygems_version: 2.
|
143
|
+
rubygems_version: 2.2.2
|
106
144
|
signing_key:
|
107
145
|
specification_version: 4
|
108
146
|
summary: Designed for a Raspberry Pi which uses GPIO LEDs, 1 motion sensor and communicates
|
metadata.gz.sig
CHANGED
Binary file
|