We should add some sort of DBus interface in t-i-d at least with a "quit" method, and hopefully also a "reload" method. A very cool method could also clean the whole telepathy stuff from the nepomuk database and rebuild it.
We should also have some way to check that it is running (like we do with the query api) because if it is not running we might be using outdated data. Also telepathy-integration-daemon needs to run only if nepomukserver is running, and crashes if nepomukserver is started after t-i-d and hangs if it is started after nepomukserver but before it is initialized. Finally t-i-d depends on nepomukstorage and nepomukqueryservice and nepomuk implements dependencies between services This makes me believe that we could save a lot of troubles if we implement it as a nepomuk service[1][2] [1]http://techbase.kde.org/index.php?title=Development/Tutorials/Metadata/Nepomuk/NepomukServices [2]http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Service.html
I modified of t-i-d that runs as nepomuk service and commited it in trunk/playground/network/nepomukservicetelepathy If you want to test it, I suggest uninstalling t-i-d and telepathy-launcher-kded.
*I modified t-i-d to run as a nepomuk service and committed it in trunk/playground/network/nepomukservicetelepathy
Fixed in r1181210. telepathy-integration-daemon is now a nepomuk service and can nepomuk dbus interface can be used to start/stop/check status. (see http://reviewboard.kde.org/r/5449/ )