breakout 0.0.2 → 0.0.3

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.
@@ -0,0 +1,42 @@
1
+ class Chat
2
+
3
+ include Breakout::Worker
4
+
5
+ def initialize
6
+ @redis = Redis.new
7
+ end
8
+
9
+ def members
10
+ @redis.smembers "chat_members"
11
+ end
12
+
13
+ def member?(bid)
14
+ @redis.sismember "chat_members", bid
15
+ end
16
+
17
+ def add(bid)
18
+ @redis.sadd "chat_members", bid
19
+ end
20
+
21
+ def delete(bid)
22
+ @redis.srem "chat_members", bid
23
+ end
24
+
25
+ def do_work(sender, message)
26
+ if message.start_with? "/open"
27
+ unless member? sender
28
+ add sender
29
+ send_message "#{sender} has joined." => members
30
+ end
31
+ elsif message.start_with? "/close"
32
+ if member? sender
33
+ delete sender
34
+ disconnect sender
35
+ send_message "#{sender} has left." => members
36
+ end
37
+ elsif message != ''
38
+ send_message "#{sender}: #{message}" => members
39
+ end
40
+ end
41
+
42
+ end
@@ -8,6 +8,5 @@ require 'breakout/web_socket'
8
8
  require 'breakout/api'
9
9
  require 'breakout/app'
10
10
  require 'breakout/config'
11
- require 'lib/breakout/railtie' if defined?(Rails)
12
11
  require 'breakout/socket'
13
12
  require 'breakout/worker'
@@ -1,4 +1,4 @@
1
1
  module Breakout
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
4
4
 
metadata CHANGED
@@ -1,24 +1,29 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: breakout
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.2
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 0.0.3
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Steve Masterman
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-05-02 00:00:00.000000000 -04:00
12
+
13
+ date: 2011-05-23 00:00:00 -04:00
13
14
  default_executable:
14
15
  dependencies: []
16
+
15
17
  description: Breakout routes messages among web browsers and workers using WebSockets.
16
- email:
18
+ email:
17
19
  - steve@vermonster.com
18
20
  executables: []
21
+
19
22
  extensions: []
23
+
20
24
  extra_rdoc_files: []
21
- files:
25
+
26
+ files:
22
27
  - .gitignore
23
28
  - .rvmrc
24
29
  - Gemfile
@@ -33,13 +38,13 @@ files:
33
38
  - examples/public/javascripts/echo.js
34
39
  - examples/public/javascripts/jquery-1.4.2.min.js
35
40
  - examples/public/javascripts/ping.js
41
+ - examples/redis_chat.rb
36
42
  - examples/web_app.rb
37
43
  - examples/worker_app.rb
38
44
  - lib/breakout.rb
39
45
  - lib/breakout/api.rb
40
46
  - lib/breakout/app.rb
41
47
  - lib/breakout/config.rb
42
- - lib/breakout/railtie.rb
43
48
  - lib/breakout/socket.rb
44
49
  - lib/breakout/version.rb
45
50
  - lib/breakout/web_socket.rb
@@ -50,26 +55,32 @@ files:
50
55
  has_rdoc: true
51
56
  homepage: https://github.com/steve9001/breakout
52
57
  licenses: []
58
+
53
59
  post_install_message:
54
60
  rdoc_options: []
55
- require_paths:
61
+
62
+ require_paths:
56
63
  - lib
57
- required_ruby_version: !ruby/object:Gem::Requirement
64
+ required_ruby_version: !ruby/object:Gem::Requirement
58
65
  none: false
59
- requirements:
60
- - - ! '>='
61
- - !ruby/object:Gem::Version
62
- version: '0'
63
- required_rubygems_version: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: "0"
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
64
71
  none: false
65
- requirements:
66
- - - ! '>='
67
- - !ruby/object:Gem::Version
68
- version: '0'
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: "0"
69
76
  requirements: []
77
+
70
78
  rubyforge_project: breakout
71
79
  rubygems_version: 1.6.2
72
80
  signing_key:
73
81
  specification_version: 3
74
82
  summary: Breakout routes messages among web browsers and workers using WebSockets.
75
- test_files: []
83
+ test_files:
84
+ - spec/breakout_spec.rb
85
+ - spec/spec.opts
86
+ - spec/spec_helper.rb
@@ -1,9 +0,0 @@
1
- require 'breakout'
2
- require 'rails'
3
-
4
- module Breakout
5
- class Railtie < Rails::Railtie
6
- railtie_name :breakout
7
- end
8
- end
9
-