Új hozzászólás Aktív témák

  • Mr Dini

    addikt

    LOGOUT blog

    válasz Somatom #6403 üzenetére

    Üdvözlet az itteni topiklakóknak!

    No, úgy látom, meg lettem említve. :))

    A kérdezőnek! Egy service típusú intentet kell a Yatse felé küldeni ezzel az URI paraméterrel:

    org.leetzone.android.yatsewidget.ACTION_MEDIA_COMMAND

    És ezzel az extra-val:

    org.leetzone.android.yatsewidget.EXTRA_STRING_PARAMS:pause

    De szerintem overkill erre a dologra bevonni a Yatse-t, amikor a Kodi rendelkezik egy JSONRPC kiszolgálóval is. A Yatse is ezen keresztül szólítja meg egyébként a Kodit, s a használata pofon egyszerű! Csupán ezt kell lekérni a robot URL letöltése, vagy shellparancs (wget/curl (de ezeket egy alap droid nem tartalmazza) segítségével.

    http://<kodi ip>:8080/jsonrpc?request={"jsonrpc": "2.0", "method": "Player.PlayPause", "params": { "playerid": 1 }, "id": 1}

    Persze ezt lehet fokozni még azzal, hogy ellenőrizzük, hogy a Kodi épp játszik-e valamit, s csak akkor fut le a task, erre szintén van JSONRPC hívás, de sajnos ezt nem tudtam összehozni Neked, mivel valamiért robotban a Javascript alatt nem tudok xhr-t indítani, azaz oldal forrást letölteni változóba, mert errort dob a robot; kézzel letöltve robottal, majd változóba olvasva, s onnan feldolgozni Javascripttel pedig nem sikerült, mert dolgoztam a parancson kb tíz percet, már majdnem a finishbe voltam, mikor kaptam egy hívást, s elveszett az egész... :W

    És, hogy miért akartam JS-t használni ehhez? Egyrészt, mert első robot parancsom, másrészt pedig nagyon könnyen lehet a JS segítségével JSON-t feldolgozni.

    -----------------------------------------------------

    Most ismerkedem az alkalmazással, eddig Taskert és automagicket használtam. :) Ugyan egész jól megy - hála a logikus felépítésnek - az 'átszokás', valószínűleg lesznek majd kérdéseim.

    Ami nekem első pár észrevételem a programmal kapcsolatban, hogy:

    + nagyon tetszik, hogy Tamás megoldotta JS-ből az alert, és a többi GUI-s visszajelzés támogatást
    - viszont a DOM objektumok, mint például a Math, xhr, date hiányoznak belőle, tehát komolyabb számolásokra, oldalak letöltésére/feldolgozására alkalmatlan
    - ha szeretnék letárolni változókat a JS lefutása után, akkor vagy az összeset, vagy semmit sem tudok letárolni. Ez azért kellemetlen, mert elég sok változóval dolgozom, de nem szeretném mindet átadni a robotnak, ezért egyetlen megoldás, ha a kód végén kinullázom a már nem kellőeket. A Tasker viszont picit okosabban csinálta, mert ott volt erre egy setGlobal, illetve egy setLocal függvény.
    + nagyon tetszik, hogy érthető, átlátható és jól kategorizált fülekkel van megoldva a műveletválasztó, s hogy vannak benne olyan programozói szemmel 'finomságok' is, mint például a PendingIntent
    - hiányolok a Hálózat alól egy Url betöltése változóba opciót, illetve a HTTP Post és HTTP Head-et.

    Egyébként hogyan lehet rábírni a robotot, hogy néha mentse a projekt állapotát? Taskerben eggyel visszalépve lehetett erre rábírni a programot.

    Eleinte angol billentzuyetet akartam. De aztán megismerkedtem a nagy 'Ő'-vel!

Új hozzászólás Aktív témák