chatroid 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -21,33 +21,19 @@ Chatroid.new do
21
21
  set :access_secret, "..."
22
22
 
23
23
  on_message do |event|
24
- post "Hello"
25
- end
26
-
27
- on_message /^Hi/ do |event|
28
- post "Hi!"
24
+ if event["text"] =~ /yunotti/
25
+ post "✘╹◡╹✘"
26
+ end
29
27
  end
30
28
 
31
29
  on_reply do |event|
32
- post "Hi!", :to => event
33
- end
34
-
35
- on_reply /^Nice to meet you/ do |event|
36
- post "Nice to meet you too", :to => event
37
- end
38
-
39
- on_join do |event|
40
- post "Nice to meet you, #{event.username}", :to => event
30
+ post "me too", :to => event
41
31
  end
42
32
  end.run!
43
33
  ```
44
34
 
45
- ## API
46
-
47
- In the block of Chatroid.new, you can call following instance methods.
48
-
49
- * set
50
- * post
51
- * on_xxx
35
+ ## Adapters
36
+ Currently following services are supported:
52
37
 
53
- xxx can be anything, and the adapter class for the specified service trigger on_xxx properly.
38
+ * Twitter
39
+ * HipChat(WIP)
data/chatroid.gemspec CHANGED
@@ -16,5 +16,6 @@ Gem::Specification.new do |gem|
16
16
  gem.version = Chatroid::VERSION
17
17
 
18
18
  gem.add_dependency "twitter-stream"
19
+ gem.add_dependency "twitter_oauth"
19
20
  gem.add_development_dependency "rspec"
20
21
  end
@@ -1,4 +1,6 @@
1
1
  require "twitter/json_stream"
2
+ require "twitter_oauth"
3
+ require "json"
2
4
 
3
5
  class Chatroid
4
6
  module Adapter
@@ -8,6 +10,9 @@ class Chatroid
8
10
  end
9
11
 
10
12
  def connect
13
+ EventMachine.error_handler do |error|
14
+ puts "Error raised during event loop: #{error.message}"
15
+ end
11
16
  EventMachine::run do
12
17
  stream.each_item(&method(:on_each_event))
13
18
  end
@@ -18,7 +23,7 @@ class Chatroid
18
23
  end
19
24
 
20
25
  def user_info
21
- @user_info ||= @client.info
26
+ @user_info ||= client.info
22
27
  end
23
28
 
24
29
  private
@@ -47,9 +52,9 @@ class Chatroid
47
52
  )
48
53
  end
49
54
 
50
- def on_each_event(event)
51
- case
52
- when event["in_reply_to_id"]
55
+ def on_each_event(json)
56
+ case event = JSON.parse(json)
57
+ when event["in_reply_to_status_id"]
53
58
  on_reply(event)
54
59
  when event["text"]
55
60
  on_tweet(event)
@@ -1,3 +1,3 @@
1
1
  class Chatroid
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chatroid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-09-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: twitter-stream
16
- requirement: &70137995987880 !ruby/object:Gem::Requirement
16
+ requirement: &70293885438900 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,21 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70137995987880
24
+ version_requirements: *70293885438900
25
+ - !ruby/object:Gem::Dependency
26
+ name: twitter_oauth
27
+ requirement: &70293885438300 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70293885438300
25
36
  - !ruby/object:Gem::Dependency
26
37
  name: rspec
27
- requirement: &70137995987160 !ruby/object:Gem::Requirement
38
+ requirement: &70293885437520 !ruby/object:Gem::Requirement
28
39
  none: false
29
40
  requirements:
30
41
  - - ! '>='
@@ -32,7 +43,7 @@ dependencies:
32
43
  version: '0'
33
44
  type: :development
34
45
  prerelease: false
35
- version_requirements: *70137995987160
46
+ version_requirements: *70293885437520
36
47
  description: Chatroid is a gem for quickly creating chatterbot in Ruby
37
48
  email:
38
49
  - r7kamura@gmail.com