humble_rpi 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a16d197f2224abbf7e20ad307da8bae3e5ac6b74
4
- data.tar.gz: 893d5eb884d273ced2572a753a7156a3d061964d
3
+ metadata.gz: c91dbb08a6a98e3420395c3acb830c83b41b3193
4
+ data.tar.gz: fdbd48f13dbd94249e584983c4c80c3995e01098
5
5
  SHA512:
6
- metadata.gz: c569f97098ec3574f0336947de82e05d06646e082ae523a4970ccdb28f58a9077fbe76a4ac00a9d1681b6031c7e57b8e0a2cf72372d687cba00e5ded6454ebdb
7
- data.tar.gz: fbecd49aed12065c564ea78bd7730ea3f94c9b395f8caa7dd904324db3402829573157de87a9c2c1d9afe5bfe010899b58ec1226c8df841805a9660abd4ecf02
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 'websocket-eventmachine-client'
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
- t1 = Time.now
68
- ws, opt = @ws, @opt
69
- #puts 'inside motion //'
70
- after pin: opt[:motion_pin].to_i, goes: :high do
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
- #puts Time.now.to_s + ' : motion detected'
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
- ws.send opt[:device_name] + ': motion detected'
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
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: 2013-12-01 00:00:00.000000000 Z
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: '0'
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: '0'
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: '0'
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: '0'
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: '0'
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: '0'
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: '0'
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.0.0.rc.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