3.12.2005

PREZENTACE OVL?DAN? TELEFONEM

Filed under: Linux,school — nax @ 12:34

Na p??edm?t Nov?? m?dia jsem pot??eboval ud?lat presentaci toho co jsem zat?m vytvo??il a napadlo mne, ?e bych si mohl ochodit ovl??d??n? t? presentace pomoc? mobiln?ho telefonu. U? jsem to jednou vid?l na p??edlo??sk?m openweekendu kde mobil jako d??lkov? ovl??d??n? presentace pou??val Pavel Machek, kernelov?? to v??voj????, toho času zam?stnanec SuSE (pard??n, cht?l jsem ???ct Novellu). Jednou jsem s n?m d?lal rozhovor pro Terabajt a mus?m ???ci, ?e je to hodn? dobr?? člov?k (ve smyslu anglick?ho nice).

Za ten rok ale v??voj na tomto poli určit? musel trochu pokročit a tak jsem se dal do hled??n? zdroj??, jak ?e to ten Pavel tehdy ud?lal. Jako prvn? jsem na??el soft?k pro K750i, ale j?? m??m bohu?el telefon o kousek star???: T630. Hledal jsem trochu v?c a na??el t??eba tohle. To se mi ale stejn? nepoda??ilo rozchodit, a? jsem se dostal p??es str??nku Sony Ericsson T630 and Linux na projekt tsemgr.

Ten um? krom? jin??ch v?c? jako je zaz??lohovat smsky a telefonn? seznam z telefonu do poč?tače, nebo opačn? z poč?tače naplnit telefon, tak? jednu funkci nazvanou remote. Nejde o nic jin?ho, ne? ?e po sp??rov??ni (klasicky pou??v??m bluez) a klepnut? na tlač?tko connect pr??v? na kart? remote se v??m do telefonu v sekci p??ipojitelnost menu p???slu??enstv? objev? menu, kter? v tom programu (respektive v jeho konfigu ~/.tsemgr/tsemgr_remote.conf) definujete.

Ka?d?? p???kaz z menu pak odpov?d?? n?jak?mu p???kazu shellu. T??eba pro xmms je u? situace jasn?? a stač? zadefinovat polo?ky t??eba takhle:

0,root,xmms,
1,xmms,play,xmms-shell -e play
1,xmms,stop,xmms-shell -e stop

atd.

Ostatn? tenhle p???klad je u? v tom konfigu obsa?en. Jen?e co kdy? chci ovl??dat aplikaci jako je t??eba Acrobat Reader, nebo jako v m?m p???pad? pspresent (d?lal jsem prezentaci v LaTeXu pomoc? maker ha-prosper)? Pot??eboval jsem n?co, co by p??i n?jak?m p???kazu shellu vygenerovalo event jako by byla stisknuta n?jak?? kl??vesa a poslalo jej X??m. No a nebudu v??s nap?nat, ale na??el jsem dost dobr?? projekt?k android. Jedn?? se o pokus ud?lat defakto makra pr??v? z event?? X11 a v podstat? by to m?lo fungovat tak, ?e vy si nejd???v “nahrajete” svoje chov??n? v X (kam jste klikli, jakou kl??vesu zm??čkli) a pak kdy? to spust?te jako skript, tak se to odehraje znova. Kolega v pr??ci m? asi p??ed rokem ???kal o n?čem podobn?m pro Windows, kde m?? n?co podobn?ho je??t? daleko v?t??? Vi?in??m (kdo n?kdy programoval n?jak? slo?it?j??? skripty t??eba pro spr??vu AD dom?ny, tak mi d?? nejsp??? za pravdu, ?e to u? by muselo b??t sakra velk?? ??spora času aby se to nevyplatilo prost? naklikat v t?ch pr??vodc?ch). Kolega pr?? m?l kolegu, co takhle ode??el na ob?d, pustil tohle ud?l??tko a ne? se vr??til, tak m?l p??lku denn? pr??ce hotovou. No nev?m. J?? bych se asi b??l, ?e se vr??t?m a budu m?t naform??tovan?? poč?tač (ono kdyby ve vhodn?? okam?ik na vhodn? m?sto vyskočila nečekan? vhodn?? hl????ka 😉

Nicm?n? abych se vr??til k t?matu. Po asi t??et? instalaci (android toti? nen? dostupn?? v emerge bal?čkovac?m syst?mu m?ho Gentooo, tak jsem m?l trochu probl?my s cestami), ale nakonec se povedlo a ud?lal jsem si takov?hle skript?ky:

$ cat ~/bin/prosper/vpred 
#!/usr/bin/wish
wm withdraw .
set failures 0
package require android
proc waitfor_window { name { howlong 60 } } {
  set result ""
  while 1 { 
    catch { set result [ exec xwininfo -name $name ] } error
    if [ string equal "" $result ] {
      if { $howlong == 0 } { return 0 }
      incr howlong -1
      after 1000
      continue
    }
    regexp {Window id: (0x[0-9a-f]*)} $result -> id
    return $id
  }
}
send_xevents key Right

# report and exit
#puts "Total failures: $failures"
exit

V podstat? je to cel? n?jak?? p???klad, kter?? jsem sebral v distribuci android, jedin?? zaj?mav?? je tenhle ????dek:
send_xevents key Right

Tady to stač? zm?nit na
send_xevents key Left
a m??te skript vzad. V tom konfigu tsemgr_remote.conf jsem pak zadefinoval tohle:

0,root,prosper,
1,prosper,Dalsi,/home/nax/bin/prosper/vpred
1,prosper,Predchozi,/home/nax/bin/prosper/zpet

No a zase se m???u chlubit o n?co lep???m prezent??torsk??m um?n?m. Mimochodem cvič?c?mu se to v???n? l?bilo a za prezentaci jsem nejen tedy k??li tomuhle dostal pln?? počet.

Comments are closed.

Powered by WordPress