cmus-bt 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +2 -0
- data/lib/cmus-bt/device/bluetooth.rb +3 -5
- data/lib/cmus-bt/main.rb +9 -3
- data/lib/cmus-bt/player.rb +12 -12
- data/lib/cmus-bt/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5eb8d1c1799109a59a6af9715bb52ac9f5953feafc9f66659ac8cfb3599317ad
|
4
|
+
data.tar.gz: a0516ec4172eebab275b43e1e2ecab38d4faeef4b14d4764c61675accaa9125c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a88776b65a4b6a5039e52827b89ecd3ea4e22cb1b8b6ef61a47ca80d32a384d2683b80bba6a41fa99e53204990662aa973bb89e9e78bc5d54013873178ed6b63
|
7
|
+
data.tar.gz: c8d279072f4d4c6d3508cb90f06a234164414b955dcc54b66f8c46ddbee8fb7c5c5cc39084ec563232539a8c985b13e32a5485956fd1f043d41be11dec6eceae
|
data/Rakefile
ADDED
@@ -34,17 +34,15 @@ module CMusBt
|
|
34
34
|
private :root
|
35
35
|
|
36
36
|
def objman
|
37
|
-
@objman ||=
|
38
|
-
root["org.freedesktop.DBus.ObjectManager"].GetManagedObjects
|
39
|
-
|
40
|
-
return @objman
|
37
|
+
return @objman ||= root["org.freedesktop.DBus.ObjectManager"]
|
41
38
|
end
|
42
39
|
private :objman
|
43
40
|
|
44
41
|
def list
|
45
42
|
ret = []
|
43
|
+
dir = objman.GetManagedObjects()
|
46
44
|
|
47
|
-
|
45
|
+
dir.each { |path, hash|
|
48
46
|
next if not hash.keys.include?("org.bluez.Device1")
|
49
47
|
|
50
48
|
iface = hash["org.bluez.Device1"]
|
data/lib/cmus-bt/main.rb
CHANGED
@@ -37,7 +37,7 @@ module CMusBt
|
|
37
37
|
list = availables()
|
38
38
|
|
39
39
|
if list.empty?
|
40
|
-
print("Available device is not exist
|
40
|
+
print("Available device is not exist.\n")
|
41
41
|
|
42
42
|
else
|
43
43
|
list.each { |info|
|
@@ -64,10 +64,12 @@ module CMusBt
|
|
64
64
|
|
65
65
|
thread = Thread.fork {Player.daemon(info)}
|
66
66
|
status = system("cmus")
|
67
|
+
raise("execute cmus failed.") if not status.success?
|
67
68
|
|
68
|
-
|
69
|
+
ensure
|
70
|
+
thread&.raise
|
71
|
+
thread&.join
|
69
72
|
$logger.info("exit #{APP_NAME}")
|
70
|
-
exit(status)
|
71
73
|
end
|
72
74
|
private :run_app
|
73
75
|
|
@@ -82,6 +84,10 @@ module CMusBt
|
|
82
84
|
else
|
83
85
|
raise("Not implement yet")
|
84
86
|
end
|
87
|
+
|
88
|
+
rescue Exception => e
|
89
|
+
STDERR.print("#{e.message}\n")
|
90
|
+
exit(1)
|
85
91
|
end
|
86
92
|
end
|
87
93
|
end
|
data/lib/cmus-bt/player.rb
CHANGED
@@ -15,10 +15,10 @@ module CMusBt
|
|
15
15
|
EVENT_STRUCTURE = "l!l!S!S!i!"
|
16
16
|
|
17
17
|
FUNC_TABLE = {
|
18
|
-
200 => :
|
19
|
-
201 => :
|
20
|
-
163 => :
|
21
|
-
165 => :
|
18
|
+
200 => :on_play, # KEY_PLAYCD
|
19
|
+
201 => :on_pause, # KEY_PAUSECD
|
20
|
+
163 => :on_next, # KEY_NEXTSONG
|
21
|
+
165 => :on_prev, # KEY_PREVIOUSSONG
|
22
22
|
}
|
23
23
|
|
24
24
|
class << self
|
@@ -68,7 +68,7 @@ module CMusBt
|
|
68
68
|
end
|
69
69
|
private :read_meta
|
70
70
|
|
71
|
-
def
|
71
|
+
def on_play
|
72
72
|
if status == :playing
|
73
73
|
system("cmus-remote --pause")
|
74
74
|
$logger.info("PAUSE")
|
@@ -77,25 +77,25 @@ module CMusBt
|
|
77
77
|
$logger.info("PLAY")
|
78
78
|
end
|
79
79
|
end
|
80
|
-
private :
|
80
|
+
private :on_play
|
81
81
|
|
82
|
-
def
|
82
|
+
def on_pause
|
83
83
|
system("cmus-remote --pause")
|
84
84
|
$logger.info("PAUSE")
|
85
85
|
end
|
86
|
-
private :
|
86
|
+
private :on_pause
|
87
87
|
|
88
|
-
def
|
88
|
+
def on_next
|
89
89
|
system("cmus-remote --next")
|
90
90
|
$logger.info("NEXT")
|
91
91
|
end
|
92
|
-
private :
|
92
|
+
private :on_next
|
93
93
|
|
94
|
-
def
|
94
|
+
def on_prev
|
95
95
|
system("cmus-remote --prev")
|
96
96
|
$logger.info("PREV")
|
97
97
|
end
|
98
|
-
private :
|
98
|
+
private :on_prev
|
99
99
|
|
100
100
|
def daemon(info)
|
101
101
|
io = File.open(info[:dev_file], "rb")
|
data/lib/cmus-bt/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cmus-bt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hirosho Kuwagata
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02-
|
11
|
+
date: 2020-02-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -78,6 +78,7 @@ files:
|
|
78
78
|
- Gemfile
|
79
79
|
- LICENSE
|
80
80
|
- README.md
|
81
|
+
- Rakefile
|
81
82
|
- bin/cmus-bt
|
82
83
|
- cmus-bt.gemspec
|
83
84
|
- lib/cmus-bt/device.rb
|