La manera de hacerlo ha sido sencilla gracias a que dcop te va contando las diferentes funciones disponibles según qué comando ejecutes. Por ejemplo, si sólo ejecutamos dcop, nos indicará una lista de módulos "controlables" o a los cuales les podemos mandar mensajes:
[sromero@compiler:~/scripts]$ dcop
kwin
konsole-12899
kicker
kded
konsole-29740
knotify
konsole-22639
kio_uiserver
kalarmd
kcookiejar
konsole-12811
klauncher
khotkeys
kopete
kdesktop
ksmserver
Si queremos saber qué podemos hacer con kdestop, ejecutamos dcop kdesktop:
[sromero@compiler:~/scripts]$ dcop kdesktop
qt
KBackgroundIface
KBookmarkManager-/home/sromero/.kde/share/apps/konqueror/bookmarks.xml
KBookmarkNotifier
KDesktopIface (default)
KDirNotify-1
KIO::Observer
KIO::Scheduler
KScreensaverIface
KShortURIFilterIface
KURIIKWSFilterIface
KURISearchFilterIface
KonqUndoManager
LocalDomainURIFilterIface
kdesktop
ksycoca
Si seguimos mirando el interfaz KBackgroundIface, con dcop kdesktop KBackgroundIface, podemos ver las siguientes funciones:
[sromero@compiler:~/scripts]$ dcop kdesktop KBackgroundIface
QCStringList interfaces()
QCStringList functions()
void configure()
void setExport(int xport)
bool isExport()
void setCommon(int common)
bool isCommon()
void setCache(int bLimit,int size)
void setWallpaper(QString wallpaper,int mode)
void changeWallpaper()
Es decir, con dcop podríamos por ejemplo cambiar el fondo de pantalla usando las funciones de KDE, desde línea de comandos. Siguiendo los mismos pasos, me he creado los 2 siguientes scripts para poder añadir y quitar el Applet XMMS-KDE desde entradas del menú de KDE:
[sromero@compiler:~/scripts]$ cat add_xmmskde.sh
#!/bin/sh
dcop kicker Panel addApplet /usr/share/apps/kicker/applets/xmms-kde.desktop
[sromero@compiler:~/scripts]$ cat del_xmmskde.sh
#!/bin/sh
EL_PID=`ps auxww | grep xmms-kde.desktop | grep -v grep | awk '{ print $2}'`
dcop xmmskde-${EL_PID} MainApplication-Interface quit
Espero que os sea útil. Creo que subiré también está entrada al blogdrake . :)