tinyscrobbler 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. data/Changelog +167 -1
  2. data/README.md +3 -4
  3. data/lib/parser.rb +6 -5
  4. data/lib/tinyscrobbler.rb +15 -16
  5. metadata +4 -4
data/Changelog CHANGED
@@ -1 +1,167 @@
1
- soon...
1
+ commit 20e419aca78fce1d95b185e0da77965e61ea2746
2
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
3
+ Date: Mon Feb 15 16:30:29 2010 +0000
4
+
5
+ Changed client identifier provided by last.fm
6
+
7
+ commit 1f51ac4a62e73c118b8cfc408a6693ccf16020e8
8
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
9
+ Date: Sun Feb 14 23:00:28 2010 +0000
10
+
11
+ Removed error in main test. Removed require parser in Tinyscrobbler.rb
12
+
13
+ commit a9d7ab6aedf5510b81b5d8f5609d70399805c5af
14
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
15
+ Date: Sun Jan 31 01:55:04 2010 +0000
16
+
17
+ Solved 2 code smells from reek tests.
18
+
19
+ commit d54019d3fc4f3b5b5e92b7c230a6a5ef13ea7cc4
20
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
21
+ Date: Wed Jan 27 02:08:07 2010 +0000
22
+
23
+ README updated
24
+
25
+ commit 4013a106590bdbfeb3886c31dce461c093e8f370
26
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
27
+ Date: Wed Jan 27 02:04:12 2010 +0000
28
+
29
+ Changelog updated
30
+
31
+ commit 790304455522363342e1440a880928106effb61b
32
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
33
+ Date: Wed Jan 27 01:14:58 2010 +0000
34
+
35
+ Fixed stupid timestamp error left by mistake from 0.2.
36
+
37
+ commit b0df962a7d2d464a18465652d65684a12aa010d1
38
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
39
+ Date: Wed Jan 27 00:39:37 2010 +0000
40
+
41
+ Removed forgotten debug line.
42
+
43
+ commit c1c8d8feb09eeb312fa9c6ae9bd677b4780caf61
44
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
45
+ Date: Wed Jan 27 00:38:43 2010 +0000
46
+
47
+ Removed metadata accessor. Created method that updates the current time and returns metadata. This fixed a bug in the parser that was setting the time to when the music first played, making lastfm return error on track submission.
48
+
49
+ commit 9ea96cb109e6366da923b8b51aeed1d41354febe
50
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
51
+ Date: Thu Jan 14 00:09:04 2010 +0000
52
+
53
+ changed attribute accessor to reader.
54
+
55
+ commit 21d3178abc3fb4547214aaba1483cde7e8e823d8
56
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
57
+ Date: Wed Jan 13 00:30:34 2010 +0000
58
+
59
+ Changed example to reflect recent changes.
60
+
61
+ commit d2c82bfd6e50a92ff23d53cbc744ca56ee59cfce
62
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
63
+ Date: Tue Jan 12 01:58:36 2010 +0000
64
+
65
+ Changed audiometa to module tinyscrobbler and renamed to parser. Fixed parser bug.
66
+
67
+ commit 889d4b19832d598113c7b9cc966560a4c8fb191e
68
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
69
+ Date: Mon Jan 11 17:35:42 2010 +0000
70
+
71
+ Added require rubygems for compatibility issues
72
+
73
+ commit b04ffda1557bd91dee558313799c43d1865d3d87
74
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
75
+ Date: Mon Jan 11 00:29:57 2010 +0000
76
+
77
+ Added gem packaging format.
78
+
79
+ commit d25a9d4e9418c7fb547fee3202e1574a94623c35
80
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
81
+ Date: Sun Jan 10 23:10:48 2010 +0000
82
+
83
+ Added a code example to README using audiometa.rb
84
+
85
+ commit e7160219e5ac7a905fbd1c14e0c61c6ec9816fe1
86
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
87
+ Date: Sun Jan 10 22:33:48 2010 +0000
88
+
89
+ Optimized the initialize method.
90
+
91
+ commit 5505eb7f59bd064d7f73add7df80416ea9b5e8c1
92
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
93
+ Date: Sun Jan 10 22:32:34 2010 +0000
94
+
95
+ Added rubygems require for better compatibility with other systems
96
+
97
+ commit 5e44f5e101776f29a9da63fc3e420ccbfc313593
98
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
99
+ Date: Sun Jan 10 22:30:10 2010 +0000
100
+
101
+ This class now uses mp3info gem to read id3 tags. Mp3 only support for now.
102
+
103
+ commit a9e24c670871c013e10a53883ad60bc79203bb3d
104
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
105
+ Date: Mon Jan 4 23:59:55 2010 +0000
106
+
107
+ Changed track hash to be equal in now_playing and played. THe only difference now is that played expects 3 more params. Added some more comments.
108
+
109
+ commit acc4f5efca41922c17ee680c597a962c30861bdc
110
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
111
+ Date: Sun Jan 3 01:27:03 2010 +0000
112
+
113
+ Removed old README. Added comments to Audiometa.
114
+
115
+ commit 6cac244c0f31acf5f9e586d52208e018ec73673a
116
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
117
+ Date: Sun Jan 3 01:23:37 2010 +0000
118
+
119
+ Changed README to Markdown. Added comments in Audiometa.
120
+
121
+ commit 60f5148e404115dcc4085bb4ff291e8a73c52e37
122
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
123
+ Date: Sat Jan 2 01:43:46 2010 +0000
124
+
125
+ Added a module for reading audio files metadata so the correct track info can be submited to tinyscrobbler.
126
+
127
+ commit 49ef4123b58ba9c0f8367c7b71644589f25cf463
128
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
129
+ Date: Thu Dec 31 00:45:22 2009 +0000
130
+
131
+ wrapped code in module
132
+
133
+ commit 3d393e7868e298a11f7b5b1d99aad8e82fc7252a
134
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
135
+ Date: Wed Dec 30 15:18:50 2009 +0000
136
+
137
+ track submission is working. Passes basic test. Test code added for multiple track submission
138
+
139
+ commit 300769166c2261591342be47fa5973371e6185d8
140
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
141
+ Date: Wed Dec 30 14:17:38 2009 +0000
142
+
143
+ now playing submission is working and passed the basic test.
144
+
145
+ commit 942f8613c72af967c95f3fb24099b680303f7457
146
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
147
+ Date: Wed Dec 30 01:42:19 2009 +0000
148
+
149
+ class code restructured. added lots of comments. More test code also added.
150
+
151
+ commit 9a6d3d07850f1eaae9c8b6b63715ab4fc8a9ca00
152
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
153
+ Date: Tue Dec 29 19:29:24 2009 +0000
154
+
155
+ added tests folder with dummy test.
156
+
157
+ commit 7b304b50975d96bd7113455df40abde980649c5c
158
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
159
+ Date: Tue Dec 29 17:49:59 2009 +0000
160
+
161
+ Added info to README
162
+
163
+ commit 943e868d3aeaa86c7a68eea2854b3a9b574c9a59
164
+ Author: Rogerio Vicente <rogerpvl@gmail.com>
165
+ Date: Tue Dec 29 17:43:41 2009 +0000
166
+
167
+ first commit. Partially working class.
data/README.md CHANGED
@@ -58,10 +58,9 @@ Please notice that currently on mp3 files are supported (other formats are under
58
58
 
59
59
  # Currently listening to...
60
60
  file_path = '/Users/rogeriopvl/Music/Moonspell/Wolfheart/08_Alma_Mater.mp3'
61
- parser = Tinyscrobbler::Parser.new(file_path)
62
- current_track = parser.metadata
61
+ current_track = Tinyscrobbler::Parser.new(file_path)
63
62
 
64
- ls.now_playing(current_track)
63
+ ls.now_playing(current_track.metadata)
65
64
 
66
65
  # after track played
67
66
 
@@ -69,7 +68,7 @@ Please notice that currently on mp3 files are supported (other formats are under
69
68
  # half of the track length has passed
70
69
  # or lastfm may ignore the submission
71
70
 
72
- ls.played(current_track)
71
+ ls.played(current_track.metadata)
73
72
 
74
73
 
75
74
  More info soon...
data/lib/parser.rb CHANGED
@@ -34,13 +34,14 @@ module Tinyscrobbler
34
34
 
35
35
  def parse_metadata
36
36
  track = Mp3Info.new(@path)
37
- tag = track.hastag1? ? track.tag1 : track.tag2
37
+ tag_type = track.hastag1?
38
+ tag = tag_type ? track.tag1 : track.tag2
38
39
 
39
40
  track_meta = {}
40
- track_meta['track'] = track.hastag1? ? tag.title : tag.TIT2
41
- track_meta['artistname'] = track.hastag1? ? tag.artist : tag.TPE1
42
- track_meta['album'] = track.hastag1? ? tag.album : tag.TALB
43
- track_meta['tracknumber'] = track.hastag1? ? tag.tracknum.to_s : tag.TRCK.to_s
41
+ track_meta['track'] = tag_type ? tag.title : tag.TIT2
42
+ track_meta['artistname'] = tag_type ? tag.artist : tag.TPE1
43
+ track_meta['album'] = tag_type ? tag.album : tag.TALB
44
+ track_meta['tracknumber'] = tag_type ? tag.tracknum.to_s : tag.TRCK.to_s
44
45
  track_meta['secs'] = track.length.round.to_s
45
46
  track_meta['time'] = Time.now.to_i.to_s
46
47
  track_meta['source'] = 'P'
data/lib/tinyscrobbler.rb CHANGED
@@ -9,7 +9,6 @@
9
9
 
10
10
  require 'net/http'
11
11
  require 'Digest/md5'
12
- require 'parser.rb'
13
12
 
14
13
  module Tinyscrobbler
15
14
 
@@ -28,8 +27,8 @@ module Tinyscrobbler
28
27
 
29
28
  class Client
30
29
 
31
- CLIENT_ID = 'tst'
32
- CLIENT_VERSION = '1.0'
30
+ CLIENT_ID = 'tny'
31
+ CLIENT_VERSION = '0.3.2'
33
32
 
34
33
  HANDSHAKE_BASE_URL = "http://post.audioscrobbler.com/?hs=true&p=1.2.1&c=#{CLIENT_ID}&v=#{CLIENT_VERSION}"
35
34
 
@@ -83,7 +82,7 @@ module Tinyscrobbler
83
82
  params << "&l=#{URI.escape(track['secs'])}"
84
83
  params << "&n=#{URI.escape(track['tracknumber'])}"
85
84
  params << "&m=#{URI.escape(track['mbtrackid'])}"
86
-
85
+
87
86
  send_submission(@now_playing_url, params)
88
87
  end
89
88
 
@@ -133,18 +132,18 @@ module Tinyscrobbler
133
132
 
134
133
  def submit_queue
135
134
  params = "s=#{@session_id}"
136
- i = 0
135
+ counter = 0
137
136
  @queue.each do |item|
138
- params << "&a[#{i}]=#{URI.escape(item['artistname'])}"
139
- params << "&t[#{i}]=#{URI.escape(item['track'])}"
140
- params << "&i[#{i}]=#{URI.escape(item['time'])}"
141
- params << "&o[#{i}]=#{URI.escape(item['source'])}"
142
- params << "&r[#{i}]=#{URI.escape(item['rating'])}"
143
- params << "&l[#{i}]=#{URI.escape(item['secs'])}"
144
- params << "&b[#{i}]=#{URI.escape(item['album'])}"
145
- params << "&n[#{i}]=#{URI.escape(item['tracknumber'])}"
146
- params << "&m[#{i}]=#{URI.escape(item['mbtrackid'])}"
147
- i+=1
137
+ params << "&a[#{counter}]=#{URI.escape(item['artistname'])}"
138
+ params << "&t[#{counter}]=#{URI.escape(item['track'])}"
139
+ params << "&i[#{counter}]=#{URI.escape(item['time'])}"
140
+ params << "&o[#{counter}]=#{URI.escape(item['source'])}"
141
+ params << "&r[#{counter}]=#{URI.escape(item['rating'])}"
142
+ params << "&l[#{counter}]=#{URI.escape(item['secs'])}"
143
+ params << "&b[#{counter}]=#{URI.escape(item['album'])}"
144
+ params << "&n[#{counter}]=#{URI.escape(item['tracknumber'])}"
145
+ params << "&m[#{counter}]=#{URI.escape(item['mbtrackid'])}"
146
+ counter+=1
148
147
  end
149
148
 
150
149
  send_submission(@submission_url, params)
@@ -172,4 +171,4 @@ module Tinyscrobbler
172
171
  end
173
172
 
174
173
  end
175
- end
174
+ end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tinyscrobbler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
- - Rogerio Vicente
7
+ - "Rog\xC3\xA9rio Vicente"
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-01-10 00:00:00 +00:00
12
+ date: 2010-02-15 00:00:00 +00:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -23,7 +23,7 @@ dependencies:
23
23
  version: 0.6.13
24
24
  version:
25
25
  description:
26
- email: rogerpvl@gmail.com
26
+ email: rogeriopvl@gmail.com
27
27
  executables: []
28
28
 
29
29
  extensions: []