AnyRemote

Úvod

Anyremote je svobodný projekt, který umožňuje ovládat PC (nebo konkrétní programy) z mobilního telefonu připojeného přes bluetooth. Ovládací prvky se nastavují pomocí konfiguračního souboru, který se uvádí jako parametr při startu serverové (na PC) části Anyremote.

Zde popíši instalaci na distribuci Mythbuntu, analogicky lze postupovat i na jiných distribucích.

Instalace

Nainstalujeme balík

anyremote

pomocí oblíbeného instalačního nástroje, například

sudo aptitude install anyremote

Dále si z adresy http://anyremote.sourceforge.net/dload.html stáhneme Java aplikaci pro svůj telefon, doporučuji vyzkoušet velikosti ikon tak, aby to bylo na vašem dipleji dobře viditelné, tedy ne zbytečně malé, ale ani moc velké (sahá potom mimo okraj displeje).

Konfigurační soubor

V Anyremote se dá nakofigurovat obrovské množství věcí. Není cílem tohoto návodu vysvětlit všechny možnosti konfigurace, pouze uvedu svůj konfigurační soubor, který se zcela jistě bude dále vyvíjet. Zatím celou aplikaci testuji velice krátce, proto mě ty zajímavější nápady (snad) teprve napadnou.

Vytvoříme tedy soubor

myth.cfg

(kdekoliv, já jsem jej umístil přímo do domovského adresáře) a do souboru vložíme text

%
% anyremote konfigurační soubor pro MythTV
% 

Screen=true

GuiAppName=MythTV
GuiAppType=Application
GuiAppProtocols=Server

[Protocol]=Server

(Init)=Include($(CfgDir)/Utils/aliases-server.cfg);

(Connect)=Set(menu,add,EPG,Přehrávač);\
	Make(mode,mythtv);
	
MYTH_HELP =Set(text,replace,Nápověda, 1 Escape\n 2 Nahoru\n 3 Info\n 4 Doleva\n 5 Enter\n 6 Doprava\n 7 Zesílit\n 8 Dolů\n 9 Ztišit\n ** Nápověda\n 0 Menu\n # P\n *# U);
MYTH_PLAYER_HELP =Set(text,replace,Nápověda, 1 Ztišit\n 2 Mute\n 3 Zesílit\n 4 Rewind\n 5 Play/pause\n 6 Forward\n 7 Previous\n 8 Info\n 9 Next\n ** Nápověda\n 0 Sleep\n # Přidat k oblíbeným);
MYTH_EPG_HELP =Set(text,replace,Nápověda, 1 Escape\n 2 Nahoru\n 3 Info\n 4 Doleva\n 5 Enter\n 6 Doprava\n 7 Nahrát\n 8 Dolů\n 9 Přepnout v EPG\n ** Nápověda\n 0 Plánovat nahrávání\n # Označit jako oblíbené\n);


[Mode]=mythtv

(EnterMode)=Set(title,MythTV);\
	Set(skin,default);\
	Set(icons,MythTV,1,no,2,up,3,info,4,left,5,ok,6,right,7,vol_down,8,down,9,vol_up,*,question,0,launch,#,plus);\
	Set(status,);\
	Set(menu,replace,EPG,Přehrávač);\
	Set(font,small);

Back=Set(text,close);Make(mode,mythtv);

EPG=Make(mode,myth_epg)
Přehrávač=Make(mode,myth_player)

1=Emulate(key,Escape)
2=Emulate(key,Up)
3=Emulate(key,i)

4=Emulate(key,Left)
5=Emulate(key,Return)
6=Emulate(key,Right)

7=Exec(amixer -c 0 set Master 2dB-)
8=Emulate(key,Down)
9=Exec(amixer -c 0 set Master 2dB+)

0=Emulate(key,m)
* *=Macro(MYTH_HELP);
* #=Emulate(key,u)
#=Emulate(key,p)

[ModeEnd]

[Mode]=myth_epg

(EnterMode)=Set(title,EPG);\
	Set(skin,default);\
	Set(icons,EPG,1,no,2,up,3,info,4,left,5,ok,6,right,7,record,8,down,9,fit,*,question,0,plus,#,favorites);\
	Set(status,);\
	Set(menu,replace,MythTV,Přehrávač);\
	Set(font,small);

Back=Set(text,close);Make(mode,myth_epg);

MythTV=Make(mode,mythtv)
Přehrávač=Make(mode,myth_player)

1=Emulate(key,Escape)
2=Emulate(key,Up)
3=Emulate(key,u)

4=Emulate(key,Left)
5=Emulate(key,Return)
6=Emulate(key,Right)

7=Emulate(key,r)
8=Emulate(key,Down)
9=Emulate(key,x)

0=Emulate(key,i)
* *=Macro(MYTH_EPG_HELP);
#=Emulate(key,?)

[ModeEnd]

[Mode]=myth_player

(EnterMode)=Set(title,Přehrávač);\
	Set(skin,default);\
	Set(icons,Přehrávač,1,vol_down,2,mute,3,vol_up,4,rewind,5,play,6,forward,7,prev,8,info,9,next,*,question,0,exit,#,favorites);\
	Set(status,);\
	Set(menu,replace,MythTV,EPG);\
	Set(font,small);

Back=Set(text,close);Make(mode,myth_player);

MythTV=Make(mode,mythtv)
EPG=Make(mode,myth_epg)

1=Exec(amixer -c 0 set Master 2dB-)
2=Exec(amixer sset Master toggle)
3=Exec(amixer -c 0 set Master 2dB+)

4=Emulate(key,Left)
5=Emulate(key,p);Make(mode,myth_player_pause)
6=Emulate(key,Right)

7=Emulate(key,PageUp)
8=Emulate(key,i)
9=Emulate(key,PageDown)

0=Emulate(key,F8)
* *=Macro(MYTH_PLAYER_HELP);
#=Emulate(key,?)

[ModeEnd]

[Mode]=myth_player_pause

(EnterMode)=Set(title,Přehrávač);\
	Set(skin,default);\
	Set(icons,Přehrávač,1,vol_down,2,mute,3,vol_up,4,rewind,5,pause,6,forward,7,prev,8,info,9,next,*,question,0,exit,#,favorites);\
	Set(status,);\
	Set(menu,replace,MythTV,EPG);\
	Set(font,small);

Back=Set(text,close);Make(mode,myth_player_pause);

MythTV=Make(mode,mythtv)
EPG=Make(mode,myth_epg)

1=Exec(amixer -c 0 set Master 2dB-)
2=Exec(amixer sset Master toggle)
3=Exec(amixer -c 0 set Master 2dB+)

4=Emulate(key,Left)
5=Emulate(key,p);Make(mode,myth_player)
6=Emulate(key,Right)

7=Emulate(key,PageUp)
8=Emulate(key,i)
9=Emulate(key,PageDown)

0=Emulate(key,F8)
* *=Macro(MYTH_PLAYER_HELP);
#=Emulate(key,?)

[ModeEnd]

[End]

Po uložení souboru můžeme začít se zprovozněním celé aplikace.

Spuštění

Nejprve je nutné spárovat mobilní telefon s počítačem přes bluetooth. Jakmile máme hotové, v terminálu na počítači zjistíme HW adresu bluetooth modulu v PC pomocí příkazu

hcitool dev

. Anyremote server spustíme příkazem

anyremote -s bluetooth:19 -f /cesta/k/souboru/mythtv.cfg

. V mobilním telefonu spustíme anyRemote, zvolíme možnost Enter BT address a tam vložíme dříve zjištěnou HW adresu bluetooth modulu v počítači ve tvaru

btspp://HWADDRESS:19

, kde číslo 19 (stejně jako v parametru pro spuštění serveru – musí se shodovat) znamená číslo kanálu použitého při komunikaci přes bluetooth.

Jakmile máme zadanou adresu, připojíme se a už by se měly načíst ikony a celá aplikace by měla fungovat. Doporučuji nastavit si spouštění anyremote serveru při startu počítače.

Závěr

Při zprovoznění jsem se nesetkal s žádnými problémy, vše funguje výborně. Vím že anyremote nevyužije každý, ale pro vytržení trnu z paty na přechodnou dobu se může hodit.

Za různé úpravy a modifikace konfiguračního skriptu budu jedině rád.

Odkazy

Domovská stránka projektu