|
@@ -17,7 +17,10 @@ available_commands() {
|
17
|
17
|
echo at
|
18
|
18
|
echo back
|
19
|
19
|
echo bbl
|
|
20
|
+ echo deaf
|
|
21
|
+ echo deafnomore
|
20
|
22
|
echo gone
|
|
23
|
+ echo listening
|
21
|
24
|
echo moving
|
22
|
25
|
echo ooo
|
23
|
26
|
echo wfh
|
|
@@ -79,6 +82,21 @@ set_status() {
|
79
|
82
|
iniread -p iam.saying.like.this.$what | bash
|
80
|
83
|
}
|
81
|
84
|
|
|
85
|
+sound_is_muted() {
|
|
86
|
+ #
|
|
87
|
+ # At least one playback channel is muted
|
|
88
|
+ #
|
|
89
|
+ local master_status="$(amixer get Master)"
|
|
90
|
+ echo "$master_status" \
|
|
91
|
+ | grep "Playback channels" \
|
|
92
|
+ | sed -e 's/.*: //; s/ - /\n/' \
|
|
93
|
+ | while read chname
|
|
94
|
+ do
|
|
95
|
+ grep -e "^ *$chname" <<<"$master_status"
|
|
96
|
+ done \
|
|
97
|
+ | grep -qse '\[off\]$'
|
|
98
|
+}
|
|
99
|
+
|
82
|
100
|
|
83
|
101
|
#
|
84
|
102
|
# subcommand handlers
|
|
@@ -132,6 +150,14 @@ i_am_bbl() {
|
132
|
150
|
setxkbmap "$nxt"
|
133
|
151
|
}
|
134
|
152
|
|
|
153
|
+i_am_deaf() {
|
|
154
|
+ amixer -q sset Master 5%+
|
|
155
|
+}
|
|
156
|
+
|
|
157
|
+i_am_deafnomore() {
|
|
158
|
+ amixer -q sset Master 5%-
|
|
159
|
+}
|
|
160
|
+
|
135
|
161
|
i_am_gone() {
|
136
|
162
|
#
|
137
|
163
|
# gone fishin'
|
|
@@ -143,6 +169,15 @@ i_am_gone() {
|
143
|
169
|
i_am_back
|
144
|
170
|
}
|
145
|
171
|
|
|
172
|
+i_am_listening() {
|
|
173
|
+ if sound_is_muted;
|
|
174
|
+ then
|
|
175
|
+ amixer -q sset Master unmute;
|
|
176
|
+ else
|
|
177
|
+ amixer -q sset Master mute;
|
|
178
|
+ fi
|
|
179
|
+}
|
|
180
|
+
|
146
|
181
|
i_am_moving() {
|
147
|
182
|
#
|
148
|
183
|
# to other train or dreamland, but localhost must sleep now
|