Egy tipikus "now listening" plugint kéne összerakni, Python-ban. Sajnos nem ismerem a nyelvet, de az alapanyagok megvannak, csak valakinek össze kéne raknia az akábbiakból:A plugin rész
Arra gondoltam, hogy dbussal lehetne megoldani a Gaim részt. Erre van a
dbus-send
nevű program. Ennek használata:
dbus-send --dest=net.sf.gaim.GaimService --print-reply --type=method_call /net/sf/gaim/GaimObject net.sf.gaim.GaimInterface.GaimConnectionsGetAll
ami egy
int32
-kből álló tömbbel tér vissza.
Már csak a név átírása van hátra, ezt a következő paranccsal tehetjük meg (egyenként, az előzőleg kapott kapcsolat ID-kre (a példában 2997)):
dbus-send --dest=net.sf.gaim.GaimService --print-reply --type=method_call /net/sf/gaim/GaimObject net.sf.gaim.GaimInterface.GaimConnectionSetDisplayName int32:2997 string:"a név"
Nos, hát ez lenne, ezeket a bash parancsokat kéne beleszőni a python kódba. Kommentben jelezzétek ha írtatok hozzá valamit.
Előre is kösz, remélem nem csak nekem lesz hasznos.
Update
Ha nagyon belejön valaki a szkriptelésbe, beleszőhetné az albumborító-icon részt is. Az idevágó dolgok:
cover = self.exaile.cover.loc
(Módosítva a pastebin-en is)
gaim-send GaimAccountSetBuddyIcon int32:41 string:"elérési/út"
Az első paraméter pedig a következő tömb eleme:
gaim-send GaimAccountsGetAll
Update vol. 2
Egy már működő prototípus: http://mcbuddha.pastebin.co.uk/8668
Csak be kell másolni az
/usr/share/exaile/plugins
könyvtárba, és már megy is. A forrás 15. sorában az
int32:
utáni részeben a
gaim-send GaimAccountsGetAll
visszatérési értékét kell írni (ez a jövőben remélem automatizálásra kerül).
- 2042 megtekintés
Hozzászólások
Szerintem van a pythonban dbus, nem kell a parancsokat hivogatni sem.
- A hozzászóláshoz be kell jelentkezni
Tudom, hogy van, és nem kellenek parancsok, de így egyszerűbb volt megadni, mert a python dbus bindingjének is hasonló formában kellenek az adatok.
- A hozzászóláshoz be kell jelentkezni
8627-ben módosítottam, de amint ott is írom, azt nem írtad le, a connect/disconnect fveknek mit kéne csinálniuk...
Amit itt megadtál, azt beletettem.
- A hozzászóláshoz be kell jelentkezni
Félreértetted, kicsit konkretizáltam: http://mcbuddha.pastebin.co.uk/8631 (ez csak egy plugin, egy csomó dolog az exaile-nek kell)
- A hozzászóláshoz be kell jelentkezni
érdekes, bár nekem még a nevemet se sikerült gaim-ben átírni (csak local alias-t lehet), csak ebuddy-val
- A hozzászóláshoz be kell jelentkezni
Ezt írd be parancssorba:
dbus-send --dest=net.sf.gaim.GaimService --print-reply --type=method_call /net/sf/gaim/GaimObject net.sf.gaim.GaimInterface.GaimConnectionsGetAll
Kiír egy vagy több számot. Ezt a számot írd be ide, meg a nevedet:
dbus-send --dest=net.sf.gaim.GaimService --print-reply --type=method_call /net/sf/gaim/GaimObject net.sf.gaim.GaimInterface.GaimConnectionSetDisplayName int32:szám string:"név"
- A hozzászóláshoz be kell jelentkezni
kösz, majd megpróbálom, de csak január végén lesz linuxos gépem
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Első dolgom, hogy Gaimban aliasolom az ismerőseimet így bármit írhat a neve mögé nem érdekel ;-)
--
A nyúl egy igazi jellem. Ott ül a fűben, de akkor sem szívja!
- A hozzászóláshoz be kell jelentkezni
igen, az ilyen [797597][b][c]xy... nevek elég irritálóak :)
- A hozzászóláshoz be kell jelentkezni
Igaz, igaz.
- A hozzászóláshoz be kell jelentkezni
http://mcbuddha.pastebin.co.uk/8668
Fejlődik, fejlődik. Ez már rendesen működik, (csak) azt csinálja amit kell, de a connectionID-t még kézzel kell beleszőni...
- A hozzászóláshoz be kell jelentkezni