mpd_client 0.0.5 → 0.2.0
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 +5 -5
- data/.hound.yml +2 -0
- data/.rubocop.yml +30 -0
- data/.travis.yml +10 -0
- data/CHANGELOG.md +21 -6
- data/Gemfile +12 -0
- data/LICENSE +2 -2
- data/MPD_COMMANDS.md +41 -45
- data/README.md +46 -15
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/examples/Gemfile +3 -1
- data/examples/albumart.rb +18 -0
- data/examples/client.rb +17 -0
- data/examples/idle.rb +27 -0
- data/examples/range.rb +6 -4
- data/examples/rangeid.rb +5 -3
- data/examples/search_and_replace_playlist.rb +6 -6
- data/examples/stickers.rb +10 -8
- data/lib/mpd_client/version.rb +5 -3
- data/lib/mpd_client.rb +449 -347
- data/mpd_client.gemspec +20 -12
- data/spec/mpd_client/mpd_client_spec.rb +17 -0
- data/spec/spec_helper.rb +8 -0
- metadata +42 -14
- data/Rakefile +0 -2
data/examples/range.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'bundler'
|
2
4
|
Bundler.setup :default
|
3
5
|
|
@@ -5,16 +7,16 @@ require 'pp'
|
|
5
7
|
require 'logger'
|
6
8
|
require 'mpd_client'
|
7
9
|
|
8
|
-
|
10
|
+
MPD::Client.log = Logger.new($stderr)
|
9
11
|
|
10
|
-
client =
|
12
|
+
client = MPD::Client.new
|
11
13
|
client.connect('localhost', 6600)
|
12
14
|
|
13
15
|
# delete all songs from the current playlist, except for the firts ten
|
14
|
-
client.delete([10
|
16
|
+
client.delete([10])
|
15
17
|
|
16
18
|
# move the first three songs after the fifth number in the playlist
|
17
19
|
client.move([0, 3], 5)
|
18
20
|
|
19
21
|
# print songs form 5 to 10
|
20
|
-
client.playlistinfo([5, 10]).each{ |s| puts "#{s['artist']} - #{s['title']}"}
|
22
|
+
client.playlistinfo([5, 10]).each { |s| puts "#{s['artist']} - #{s['title']}" }
|
data/examples/rangeid.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'bundler'
|
2
4
|
Bundler.setup :default
|
3
5
|
|
@@ -5,9 +7,9 @@ require 'pp'
|
|
5
7
|
require 'logger'
|
6
8
|
require 'mpd_client'
|
7
9
|
|
8
|
-
|
10
|
+
MPD::Client.log = Logger.new($stderr)
|
9
11
|
|
10
|
-
client =
|
12
|
+
client = MPD::Client.new
|
11
13
|
client.connect('localhost', 6600)
|
12
14
|
|
13
15
|
# Get id of the first song in the playllist
|
@@ -16,7 +18,7 @@ pp "#{song['artist']} - #{song['title']}"
|
|
16
18
|
song_id = song['id']
|
17
19
|
|
18
20
|
# Specifies the portion of the song that shall be played
|
19
|
-
client.rangeid(song_id, [60,70])
|
21
|
+
client.rangeid(song_id, [60, 70])
|
20
22
|
|
21
23
|
# Play the playlist at song 1
|
22
24
|
client.play(1)
|
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'bundler'
|
4
4
|
Bundler.setup :default
|
@@ -6,21 +6,21 @@ Bundler.setup :default
|
|
6
6
|
require 'logger'
|
7
7
|
require 'mpd_client'
|
8
8
|
|
9
|
-
#
|
9
|
+
# MPD::Client.log = Logger.new($stderr)
|
10
10
|
|
11
|
-
client =
|
11
|
+
client = MPD::Client.new
|
12
12
|
|
13
13
|
type = ARGV[0]
|
14
14
|
what = ARGV[1]
|
15
15
|
|
16
|
-
client =
|
16
|
+
client = MPD::Client.new
|
17
17
|
client.log = Logger.new($stderr)
|
18
18
|
|
19
19
|
# Connecting to the server
|
20
20
|
client.connect('localhost', 6600)
|
21
21
|
|
22
22
|
puts "MPD version: #{client.mpd_version}"
|
23
|
-
puts "mpd_client version: #{
|
23
|
+
puts "mpd_client version: #{MPD::Client::VERSION}"
|
24
24
|
|
25
25
|
client.stop
|
26
26
|
client.clear # clear the current playlist
|
@@ -34,7 +34,7 @@ songs = client.search(type, what)
|
|
34
34
|
|
35
35
|
client.command_list_ok_begin # start a command list to speed up operations
|
36
36
|
songs.each do |song|
|
37
|
-
client.add(song['file']) if song.
|
37
|
+
client.add(song['file']) if song.key?('file')
|
38
38
|
end
|
39
39
|
client.command_list_end
|
40
40
|
|
data/examples/stickers.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'bundler'
|
4
4
|
Bundler.setup :default
|
@@ -6,23 +6,24 @@ Bundler.setup :default
|
|
6
6
|
require 'logger'
|
7
7
|
require 'mpd_client'
|
8
8
|
|
9
|
-
|
9
|
+
MPD::Client.log = Logger.new($stderr)
|
10
10
|
|
11
11
|
# Stickers
|
12
|
-
#
|
12
|
+
# https://mpd.readthedocs.io/en/latest/protocol.html#stickers
|
13
13
|
|
14
|
-
client =
|
14
|
+
client = MPD::Client.new
|
15
15
|
|
16
16
|
# Connecting to the server
|
17
17
|
client.connect('/run/mpd/socket')
|
18
18
|
|
19
19
|
puts "MPD version: #{client.mpd_version}"
|
20
|
-
puts "mpd_client version: #{
|
20
|
+
puts "mpd_client version: #{MPD::Client::VERSION}"
|
21
21
|
|
22
|
-
uri =
|
22
|
+
uri = 'world/j/Jane Air/2012.Иллюзия полёта/12. Любить любовь.ogg'
|
23
23
|
|
24
24
|
# sticker set {TYPE} {URI} {NAME} {VALUE}
|
25
|
-
# Adds a sticker value to the specified object.
|
25
|
+
# Adds a sticker value to the specified object.
|
26
|
+
# If a sticker item with that name already exists, it is replaced.
|
26
27
|
#
|
27
28
|
client.sticker_set('song', uri, 'rating', '1')
|
28
29
|
|
@@ -43,7 +44,8 @@ puts client.sticker_list('song', uri)
|
|
43
44
|
puts client.sticker_find('song', '/', 'rating')
|
44
45
|
|
45
46
|
# sticker delete {TYPE} {URI} [NAME]
|
46
|
-
# Deletes a sticker value from the specified object.
|
47
|
+
# Deletes a sticker value from the specified object.
|
48
|
+
# If you do not specify a sticker name, all sticker values are deleted.
|
47
49
|
#
|
48
50
|
client.sticker_delete('song', uri, 'rating')
|
49
51
|
|
data/lib/mpd_client/version.rb
CHANGED