agig 0.1.0 → 0.1.1
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
- data/lib/agig/session.rb +18 -10
- data/lib/agig/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 85c3534182243b9ba925a9068dfa6b45e7992643
|
4
|
+
data.tar.gz: 360327ae6d1e468a68afa2ed31f12f56968428c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f18dbae633187362b4dfe8f96aafdd3d5ef5be40ee476a96ff3dafbf1e633f1736435b9deb9bb0acef0e7a68783034d6f11338d1b9bfed786339122f13139e45
|
7
|
+
data.tar.gz: 370b74d5eb2449eff2141bdc11e5e5c1e544675e02800ac3208c2ee39ff14195aec4b2758a101194b286ff4f7006f6f07d2846f402ffb545daf8bbed4e618102
|
data/lib/agig/session.rb
CHANGED
@@ -12,13 +12,13 @@ class Agig::Session < Net::IRC::Server::Session
|
|
12
12
|
"0.0.0"
|
13
13
|
end
|
14
14
|
|
15
|
-
def
|
16
|
-
|
15
|
+
def channels
|
16
|
+
['#notification', '#watch']
|
17
17
|
end
|
18
18
|
|
19
19
|
def initialize(*args)
|
20
20
|
super
|
21
|
-
@
|
21
|
+
@notification_last_retrieved = @watch_last_retrieved = Time.now.utc - 3600
|
22
22
|
end
|
23
23
|
|
24
24
|
def client
|
@@ -42,7 +42,7 @@ class Agig::Session < Net::IRC::Server::Session
|
|
42
42
|
else value
|
43
43
|
end
|
44
44
|
}
|
45
|
-
post @nick, JOIN, channel
|
45
|
+
channels.each{|channel| post @nick, JOIN, channel }
|
46
46
|
|
47
47
|
@retrieve_thread = Thread.start do
|
48
48
|
loop do
|
@@ -50,15 +50,23 @@ class Agig::Session < Net::IRC::Server::Session
|
|
50
50
|
@log.info 'retrieveing feed...'
|
51
51
|
|
52
52
|
entries = client.notifications
|
53
|
-
|
54
53
|
entries.sort_by(&:updated_at).reverse_each do |entry|
|
55
|
-
updated_at = Time.parse(entry
|
56
|
-
next if updated_at <= @
|
54
|
+
updated_at = Time.parse(entry.updated_at).utc
|
55
|
+
next if updated_at <= @notification_last_retrieved
|
56
|
+
|
57
|
+
post entry.repository.owner.login, PRIVMSG, "#notification", "\0035#{entry.subject.title}\017 \00314#{entry.subject.latest_comment_url}\017"
|
58
|
+
@notification_last_retrieved = updated_at
|
59
|
+
end
|
60
|
+
|
61
|
+
events = client.received_events('hsbt')
|
62
|
+
events.sort_by(&:created_at).reverse_each do |event|
|
63
|
+
next if event.type != "WatchEvent"
|
57
64
|
|
58
|
-
|
59
|
-
|
65
|
+
created_at = Time.parse(event.created_at).utc
|
66
|
+
next if created_at <= @watch_last_retrieved
|
60
67
|
|
61
|
-
|
68
|
+
post event.actor.login, PRIVMSG, "#watch", "\0035#{event.payload.action}\017 \00314http://github.com/#{event.repo.name}\017"
|
69
|
+
@watch_last_retrieved = created_at
|
62
70
|
end
|
63
71
|
|
64
72
|
@log.info 'sleep'
|
data/lib/agig/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: agig
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- SHIBATA Hiroshi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-03-
|
11
|
+
date: 2013-03-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-irc
|
@@ -91,9 +91,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
91
91
|
version: '0'
|
92
92
|
requirements: []
|
93
93
|
rubyforge_project:
|
94
|
-
rubygems_version: 2.0.
|
94
|
+
rubygems_version: 2.0.2
|
95
95
|
signing_key:
|
96
96
|
specification_version: 4
|
97
97
|
summary: agig is another Github IRC Gateway. agig is forked from gig.rb, and contained
|
98
98
|
net-irc gems.
|
99
99
|
test_files: []
|
100
|
+
has_rdoc:
|