Comment 2 for bug 621722

Revision history for this message
Martin Bartlett (martin-j-bartlett) wrote :

OK, I think I see the problem - it's a painful painful route to get there, but the basic thing I believe (not knowing anything really about UPNP) is that the MediaServerClient object built to talk to my server never sees the last_updated fields of those services being anything but None.

That field gets set (and a Coherence.UPnP.DeviceClient.Service.notified signal sent, which triggers the checking code in MediaServerClient) by the code around line 320 in service.py - but THAT code only gets called when the relevant service receives an update event from the server.

My server seems to be fairly unchatty and doesn't send an update when not necessary. The Service objects associated with my server do, already, have the info necessary to be considered complete on initialization - SO copying the code at lines 316 to 321 down to after 370 (just after the Coherence.UPnP.Service.detection_completed signal is sent) appears to solve the issue - I can now see the server and its content in Rythmbox.

HOWEVER I am not a UPNP expert and the complete lack of doc and comments in the code makes it very tough to be sure that this is the correct fix - I'd appreciate an experts eye on the matter.