%
% anyremote configuration file for MPD management (AT-mode)
% prerequisites: mpc client
%

% STATUS unknown
% XTEST no
% SOUND app
% ENV no

GuiAppName=MPD
GuiAppBinary=mpc
GuiAppRun=P=`ps -ef|grep mpd|grep -v grep|grep -v anyremote|grep -v nedit|grep -v mpd.cfg`; if [ "x$P" = "x" ]; then echo NOK; else echo OK; fi
GuiAppIcon=mpd.png
GuiAppType=Application
GuiAppProtocols=AT
GuiAppDesc=Music Player Daemon (MPD) allows remote access for playing music.

[Protocol]=AT

(Init)=\
	Include($(CfgDir)/Utils/aliases-at.cfg);\
	Make(var,TwoWayComm,by_value,false);\
	Macro(CHECK_RFCOMM_DEVICE);\
	Macro(CheckMPC);\
	Macro(CheckMPD);\
    Macro(CheckPL);\
    Make(var,mpd_volume,by_value,-1);\
    Exec(mpd);

CheckMPC=\
	Exec(P=`which mpc 2> /dev/null|grep mpc|grep -v no|wc -l|tr -d " "`; if [ "x$P" = "x0" ]; then $(CfgDir)/Utils/message.sh "ERROR: mpc client is not installed"; fi);

CheckMPD=\
	Exec(P=`ps -ef|grep mpd|grep -v grep|grep -v mpd.cfg|wc -l|tr -d " "`; if [ "x$P" = "x0" ]; then $(CfgDir)/Utils/message.sh "ERROR: mpd is not run"; fi);

CheckPL=\
	Exec(P=`mpc playlist 2> /dev/null|wc -l|tr -d " "`; if [ "x$P" = "x0" ]; then $(CfgDir)/Utils/message.sh "ERROR: mpd playlist is empty"; fi);

Cancel=\
	Exec(killall mpd);\
	Make(exit);

1=Exec(mpc volume -5)
2=Make(var,mpd_volume,\
       if [ "x$(mpd_volume)" = "x-1" ]; then \
           mpc volume|tr -s " "|cut -f 2 -d " "|sed "s/%//";mpc volume 0 > /dev/null; \
       else \
           mpc volume $(mpd_volume) > /dev/null;echo "-1"; \
       fi);
3=Exec(mpc volume +5)

4=Exec(mpc seek -00:00:05)
5=Exec(mpc play);
6=Exec(mpc seek +00:00:05)

7=Exec(mpc prev);
8=Exec(mpc stop);
9=Exec(mpc next);

* *=Exec(F="$(TmpDir)/anyrem.hlp";echo "1 - Vol- 2 - Mute  3 - Vol+" > $F;echo "4 - Rew  5 - Play  6 - FF" >> $F;echo "7 - Prew 8 - Stop  9 - Next" >> $F;echo "*        0 - Pause # - Quit" >> $F);\
	Macro(SHOW_HELP);
0=Exec(mpc toggle);
#=Exec(killall mpd)

[End]
