tit 1.2.5 → 2.0.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.
- data/ChangeLog.markdown +9 -0
- data/VERSION.yml +3 -3
- data/bin/tit +17 -1
- data/lib/tit.rb +20 -4
- data/tit.gemspec +1 -1
- metadata +1 -1
data/ChangeLog.markdown
CHANGED
data/VERSION.yml
CHANGED
@@ -1,4 +1,4 @@
|
|
1
1
|
---
|
2
|
-
:major:
|
3
|
-
:minor:
|
4
|
-
:patch:
|
2
|
+
:major: 2
|
3
|
+
:minor: 0
|
4
|
+
:patch: 1
|
data/bin/tit
CHANGED
@@ -48,6 +48,17 @@ def main
|
|
48
48
|
options[:payload] ||= {}
|
49
49
|
options[:payload]["status"] = status
|
50
50
|
end
|
51
|
+
opts.on("-d", "--dm [USERNAME] [MESSAGE]", "Read direct messages. Send a direct message if USERNAME and MESSAGE are set") do |user, message|
|
52
|
+
unchanged = false
|
53
|
+
if not user.nil? and not message.nil?
|
54
|
+
options[:action] = :new_direct_message
|
55
|
+
options[:payload] ||= {}
|
56
|
+
options[:payload]["screen_name"] = user
|
57
|
+
options[:payload]["text"] = message
|
58
|
+
else
|
59
|
+
options[:action] = :direct_messages
|
60
|
+
end
|
61
|
+
end
|
51
62
|
opts.on("--pin PIN", ("Set auth pin if this is your first time playing " +
|
52
63
|
"with this tit")) do |pin|
|
53
64
|
unchanged = false
|
@@ -97,7 +108,7 @@ def main
|
|
97
108
|
options[:debug] = true
|
98
109
|
end
|
99
110
|
|
100
|
-
opts.on_tail("-c", "--count [
|
111
|
+
opts.on_tail("-c", "--count [NUM]", "Set number of statuses you see") do |count|
|
101
112
|
unchanged = false
|
102
113
|
tit.update_count(count)
|
103
114
|
end
|
@@ -146,6 +157,11 @@ def main
|
|
146
157
|
tit.abort("can't repeatedly update status") unless options[:wait].nil?
|
147
158
|
tit.abort("can't notify when updating status") unless options[:notify].nil?
|
148
159
|
end
|
160
|
+
if options[:action] == :new_direct_message
|
161
|
+
tit.abort("need message to send a dm") unless options[:payload].include? "message"
|
162
|
+
tit.abort("can't repeatedly update status") unless options[:wait].nil?
|
163
|
+
tit.abort("can't notify when updating status") unless options[:notify].nil?
|
164
|
+
end
|
149
165
|
|
150
166
|
# do it
|
151
167
|
if options[:debug]
|
data/lib/tit.rb
CHANGED
@@ -91,21 +91,23 @@ end
|
|
91
91
|
Why are you reading the documentation, you cunt?
|
92
92
|
=end
|
93
93
|
class Tit
|
94
|
-
VERSION = [
|
94
|
+
VERSION = [2, 0, 1]
|
95
95
|
|
96
96
|
RCFILE = File.join(ENV["HOME"], ".titrc")
|
97
97
|
RTFILE = File.join(ENV["HOME"], ".titrt")
|
98
98
|
ATFILE = File.join(ENV["HOME"], ".titat")
|
99
99
|
|
100
|
-
READERS = [:public, :home, :mentions, :user_timeline]
|
101
|
-
WRITERS = [:update]
|
100
|
+
READERS = [:public, :home, :mentions, :user_timeline, :direct_messages]
|
101
|
+
WRITERS = [:update, :new_direct_message]
|
102
102
|
|
103
103
|
URLS = {
|
104
104
|
:public => "/statuses/public_timeline.xml",
|
105
105
|
:home => "/statuses/home_timeline.xml",
|
106
106
|
:mentions => "/statuses/mentions.xml",
|
107
107
|
:user_timeline => "/statuses/user_timeline.xml",
|
108
|
-
:update => "/statuses/update.xml"
|
108
|
+
:update => "/statuses/update.xml",
|
109
|
+
:direct_messages => "/direct_messages.xml",
|
110
|
+
:new_direct_message => "/direct_messages/new.xml"
|
109
111
|
}
|
110
112
|
|
111
113
|
KEY = "K2OOlWbQodfm4YV9Fmeg"
|
@@ -216,6 +218,17 @@ class Tit
|
|
216
218
|
|
217
219
|
@access_token.post(URLS[:update], payload)
|
218
220
|
end
|
221
|
+
|
222
|
+
def send_dm(payload)
|
223
|
+
if payload["text"].length > 140
|
224
|
+
tuts "your message is too long (by #{payload["text"].length - 140} characters)"
|
225
|
+
tuts "here is what would get posted:"
|
226
|
+
payload["text"][0...140].wrapped(@cols - 2).each { |l| puts " #{l}" }
|
227
|
+
exit(-1)
|
228
|
+
end
|
229
|
+
|
230
|
+
@access_token.post(URLS[:new_direct_message], payload)
|
231
|
+
end
|
219
232
|
|
220
233
|
def show_tit(status)
|
221
234
|
person = if status[:userid].eql? @userid
|
@@ -278,11 +291,14 @@ class Tit
|
|
278
291
|
end
|
279
292
|
elsif options[:action] == :update
|
280
293
|
update options[:payload]
|
294
|
+
elsif options[:action] == :new_direct_message
|
295
|
+
send_dm options[:payload]
|
281
296
|
end
|
282
297
|
end
|
283
298
|
|
284
299
|
def update_count(count)
|
285
300
|
@prefs[:count] = count
|
301
|
+
@prefs["count"] = count
|
286
302
|
File.open(RCFILE, "w") do |rc|
|
287
303
|
YAML.dump(@prefs, rc)
|
288
304
|
end
|
data/tit.gemspec
CHANGED