My echobot restarter daemon mechanism is far too bespoke and complicated. Switching to the well-tested mission-control is my task for the next few days.
echobot: script that starts dbus-daemon and relies on
service activation for everything else.
o.fd.T.EchobotController: service that starts M.C. and
attempts to bring accounts online. Also listens
for and accepts incoming subscription requests.
o.fd.T.Client.TextEcho: handles text chats and commands
o.fd.T.Client.StreamedMediaEcho: handles StreamedMedia
channels and uses hints to determine whether to
echo, identity, playsong, storytime, ... them.
mission-control: does what it does best.
WIP is on http://cgit.collabora.com/git/user/alsuren/telepathy-ashes.git/log/?h=mc-41117
Note that I will probs change the repo to telepathy-echobot rather than telepathy-ashes too.
got a little bit further. If someone can take a look at my wip commit and tell me why http://telepathy.freedesktop.org/spec/Client_Interface_Requests.html#Method:AddRequest isn't being called (media_echoer.py) that would be useful
Note also that I tried and failed to get the hints out of the request with a dbus call. I was confused, but it might have been because I wasn't loggging exceptions properly.