summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlstwitchvid.rb22
1 files changed, 15 insertions, 7 deletions
diff --git a/lstwitchvid.rb b/lstwitchvid.rb
index c0b89fd..c8dd7b5 100755
--- a/lstwitchvid.rb
+++ b/lstwitchvid.rb
@@ -10,6 +10,12 @@ user = URI.escape(ARGV[0])
broadcasts = String.new
+confdir = Dir.home + '/.config/twitch/'
+ENV['APPDATA'] && confdir = ENV['APPDATA'] + "\\twitch\\"
+ENV['XDG_CONFIG_HOME'] && confdir = ENV['XDG_CONFIG_HOME'] + '/twitch/'
+
+client_id = IO.read( confdir + 'client_id' ).chomp
+
http = Net::HTTP.new('api.twitch.tv', 443)
http.use_ssl = true
#http.verify_mode = OpenSSL::SSL::VERIFY_NONE
@@ -21,18 +27,20 @@ if width < 97
width=97
end
-def videos(http, path, width, broadcasts)
+def videos(http, path, width, broadcasts, client_id)
total = 100
offset = 0
while offset <= total
- response = JSON.parse(http.request(Net::HTTP::Get.new("#{path}?limit=100&offset=#{offset}&broadcasts=#{broadcasts}")).body)
+ response = JSON.parse(http.request(Net::HTTP::Get.new("#{path}?limit=100&offset=#{offset}&broadcasts=#{broadcasts}&client_id=#{client_id}")).body)
+ if response['videos']
total = response['_total']
- for video in response['videos']
- printf( "%-45s %6i %6i %-36s %-.#{width-46-37-7-7}s\n", video['url'].to_s, video['length'].to_i, video['views'].to_i, video['game'].to_s, video['title'].to_s)
-# Curses.cols
+ for video in response['videos']
+ printf( "%-45s %6i %6i %-36s %-.#{width-46-37-7-7}s\n", video['url'].to_s, video['length'].to_i, video['views'].to_i, video['game'].to_s, video['title'].to_s)
+# Curses.cols
+ end
end
offset += 100
@@ -42,8 +50,8 @@ end
print("Highlights:\n\n")
-videos(http, "/kraken/channels/#{user}/videos/", width, false)
+videos(http, "/kraken/channels/#{user}/videos/", width, false, client_id)
print("\nBroadcasts:\n\n")
-videos(http, "/kraken/channels/#{user}/videos/", width, true)
+videos(http, "/kraken/channels/#{user}/videos/", width, true, client_id)