twitter2jabber 0.2.5 → 0.2.6

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.
data/README CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  == VERSION
4
4
 
5
- This documentation refers to twitter2jabber version 0.2.5
5
+ This documentation refers to twitter2jabber version 0.2.6
6
6
 
7
7
 
8
8
  == DESCRIPTION
@@ -28,7 +28,7 @@ Rubyforge project:: <http://rubyforge.org/projects/twitter2jabber>
28
28
 
29
29
  == LICENSE AND COPYRIGHT
30
30
 
31
- Copyright (C) 2009 Jens Wille
31
+ Copyright (C) 2009-2010 Jens Wille
32
32
 
33
33
  twitter2jabber is free software: you can redistribute it and/or modify it
34
34
  under the terms of the GNU General Public License as published by the Free
data/Rakefile CHANGED
@@ -16,7 +16,10 @@ begin
16
16
  :homepage => %q{http://twitter2jabber.rubyforge.org/},
17
17
  :files => FileList['lib/**/*.rb', 'bin/*'].to_a,
18
18
  :extra_files => FileList['[A-Z]*', 'sample/**/*'].to_a,
19
- :dependencies => %w[twitter xmpp4r-simple highline shorturl longurl elif]
19
+ :dependencies => %w[
20
+ twitter xmpp4r-simple shorturl longurl
21
+ highline elif ruby-nuggets
22
+ ]
20
23
  }
21
24
  }}
22
25
  rescue LoadError
data/TODO CHANGED
@@ -1,4 +1,3 @@
1
- - some kind of bookmark/remember/read later command
2
1
  - threading? (decouple Twitter and Jabber event loops)
3
2
  - use streaming API? (http://apiwiki.twitter.com/Streaming-API-Documentation)
4
3
  - explicit retweet (http://apiwiki.twitter.com/Twitter-REST-API-Method:-statuses-retweet)
@@ -4,7 +4,7 @@ class Twitter2Jabber
4
4
 
5
5
  MAJOR = 0
6
6
  MINOR = 2
7
- TINY = 5
7
+ TINY = 6
8
8
 
9
9
  class << self
10
10
 
@@ -3,7 +3,7 @@
3
3
  # #
4
4
  # twitter2jabber - Twitter-to-Jabber gateway. #
5
5
  # #
6
- # Copyright (C) 2009 Jens Wille #
6
+ # Copyright (C) 2009-2010 Jens Wille #
7
7
  # #
8
8
  # Authors: #
9
9
  # Jens Wille <ww@blackwinter.de> #
@@ -32,6 +32,7 @@ require 'twitter'
32
32
  require 'xmpp4r-simple'
33
33
  require 'shorturl'
34
34
  require 'longurl'
35
+ require 'nuggets/array/runiq'
35
36
 
36
37
  require 'twitter2jabber/version'
37
38
 
@@ -253,6 +254,10 @@ de[bug] on|off -- Turn debug mode on/off
253
254
  bl[ock] @USER -- Block USER
254
255
  fa[v[orite]] #ID -- Add ID to favorites
255
256
 
257
+ bm|bookmark[s] -- List bookmarks
258
+ bm|bookmark #ID -- Bookmark ID
259
+ bm|bookmark -#ID -- Remove ID from bookmarks
260
+
256
261
  rt|retweet #ID [!] [STATUS] -- Retweet ID
257
262
  re[ply] #ID [!] STATUS -- Reply to ID
258
263
  d[m]|direct[_message] @USER [!] STATUS -- Send direct message to USER
@@ -279,6 +284,19 @@ le[n[gth]] STATUS -- Determine length
279
284
  twitter.block($1) if execute && !debug
280
285
  when /\Afav?(?:orite)?\s+#?(\d+)\z/i
281
286
  twitter.favorite_create($1) if execute && !debug
287
+ when /\A(?:bm|bookmarks?)\z/i
288
+ deliver(from, bookmarks.map { |bm|
289
+ st = twitter.status(bm)
290
+ st = "@#{st.user.screen_name}: #{st.text[0, 10]}..." if st.is_a?(Hashie::Mash)
291
+ "#{bm} - #{st || '???'}"
292
+ }.join("\n")) if execute && !debug
293
+ when /\A(?:bm|bookmark)\s+(\d+)\z/i
294
+ if execute && !debug
295
+ bookmarks << $1
296
+ bookmarks.runiq!
297
+ end
298
+ when /\A(?:bm|bookmark)\s+-(\d+)\z/i
299
+ bookmarks.delete($1) if execute && !debug
282
300
  else
283
301
  command, options = nil, {}
284
302
 
@@ -396,4 +414,8 @@ le[n[gth]] STATUS -- Determine length
396
414
  logm("JABBER #{msg}", verbose)
397
415
  end
398
416
 
417
+ def bookmarks
418
+ @bookmarks ||= []
419
+ end
420
+
399
421
  end
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twitter2jabber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 2
8
+ - 6
9
+ version: 0.2.6
5
10
  platform: ruby
6
11
  authors:
7
12
  - Jens Wille
@@ -9,69 +14,93 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-01-10 00:00:00 +01:00
17
+ date: 2010-03-18 00:00:00 +01:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: twitter
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ">="
22
26
  - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
23
29
  version: "0"
24
- version:
30
+ type: :runtime
31
+ version_requirements: *id001
25
32
  - !ruby/object:Gem::Dependency
26
33
  name: xmpp4r-simple
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
34
+ prerelease: false
35
+ requirement: &id002 !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - ">="
32
38
  - !ruby/object:Gem::Version
39
+ segments:
40
+ - 0
33
41
  version: "0"
34
- version:
35
- - !ruby/object:Gem::Dependency
36
- name: highline
37
42
  type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
43
+ version_requirements: *id002
44
+ - !ruby/object:Gem::Dependency
45
+ name: shorturl
46
+ prerelease: false
47
+ requirement: &id003 !ruby/object:Gem::Requirement
40
48
  requirements:
41
49
  - - ">="
42
50
  - !ruby/object:Gem::Version
51
+ segments:
52
+ - 0
43
53
  version: "0"
44
- version:
45
- - !ruby/object:Gem::Dependency
46
- name: shorturl
47
54
  type: :runtime
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
55
+ version_requirements: *id003
56
+ - !ruby/object:Gem::Dependency
57
+ name: longurl
58
+ prerelease: false
59
+ requirement: &id004 !ruby/object:Gem::Requirement
50
60
  requirements:
51
61
  - - ">="
52
62
  - !ruby/object:Gem::Version
63
+ segments:
64
+ - 0
53
65
  version: "0"
54
- version:
55
- - !ruby/object:Gem::Dependency
56
- name: longurl
57
66
  type: :runtime
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
67
+ version_requirements: *id004
68
+ - !ruby/object:Gem::Dependency
69
+ name: highline
70
+ prerelease: false
71
+ requirement: &id005 !ruby/object:Gem::Requirement
60
72
  requirements:
61
73
  - - ">="
62
74
  - !ruby/object:Gem::Version
75
+ segments:
76
+ - 0
63
77
  version: "0"
64
- version:
78
+ type: :runtime
79
+ version_requirements: *id005
65
80
  - !ruby/object:Gem::Dependency
66
81
  name: elif
82
+ prerelease: false
83
+ requirement: &id006 !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - ">="
86
+ - !ruby/object:Gem::Version
87
+ segments:
88
+ - 0
89
+ version: "0"
67
90
  type: :runtime
68
- version_requirement:
69
- version_requirements: !ruby/object:Gem::Requirement
91
+ version_requirements: *id006
92
+ - !ruby/object:Gem::Dependency
93
+ name: ruby-nuggets
94
+ prerelease: false
95
+ requirement: &id007 !ruby/object:Gem::Requirement
70
96
  requirements:
71
97
  - - ">="
72
98
  - !ruby/object:Gem::Version
99
+ segments:
100
+ - 0
73
101
  version: "0"
74
- version:
102
+ type: :runtime
103
+ version_requirements: *id007
75
104
  description: Twitter-to-Jabber gateway.
76
105
  email: jens.wille@uni-koeln.de
77
106
  executables:
@@ -86,14 +115,14 @@ files:
86
115
  - lib/twitter2jabber.rb
87
116
  - lib/twitter2jabber/version.rb
88
117
  - bin/twitter2jabber
89
- - COPYING
90
- - Rakefile
91
118
  - README
92
119
  - ChangeLog
120
+ - Rakefile
93
121
  - TODO
94
- - sample/config.yaml
95
- - sample/templates/tweet.html
122
+ - COPYING
96
123
  - sample/templates/tweet.txt
124
+ - sample/templates/tweet.html
125
+ - sample/config.yaml
97
126
  has_rdoc: true
98
127
  homepage: http://twitter2jabber.rubyforge.org/
99
128
  licenses: []
@@ -106,27 +135,29 @@ rdoc_options:
106
135
  - twitter2jabber Application documentation
107
136
  - --main
108
137
  - README
109
- - --all
110
138
  - --line-numbers
111
139
  - --inline-source
140
+ - --all
112
141
  require_paths:
113
142
  - lib
114
143
  required_ruby_version: !ruby/object:Gem::Requirement
115
144
  requirements:
116
145
  - - ">="
117
146
  - !ruby/object:Gem::Version
147
+ segments:
148
+ - 0
118
149
  version: "0"
119
- version:
120
150
  required_rubygems_version: !ruby/object:Gem::Requirement
121
151
  requirements:
122
152
  - - ">="
123
153
  - !ruby/object:Gem::Version
154
+ segments:
155
+ - 0
124
156
  version: "0"
125
- version:
126
157
  requirements: []
127
158
 
128
159
  rubyforge_project: twitter2jabber
129
- rubygems_version: 1.3.5
160
+ rubygems_version: 1.3.6
130
161
  signing_key:
131
162
  specification_version: 3
132
163
  summary: Twitter-to-Jabber gateway.