joerg-krause writes

I’ve no Python interpreter installed, so I’ve removed the scmakempdsender script. As a result, the Sender service is notified as invalid and not visible:

Log for invalid Sender service:

:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:upnp-org:serviceId:AVTransport]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:upnp-org:serviceId:RenderingControl]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:upnp-org:serviceId:ConnectionManager]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Info]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Time]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Volume]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Playlist]
:4:src/ohplaylist.cxx:107::ohPlaylist: cache restore done
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Radio]
:3:src/ohradio.cxx:75::OHRadio: python2 not found, no radio service will be created
:4:libupnpp/device/device.cxx:436::UpnpDevice::forgetService: urn:av-openhome-org:serviceId:Radio
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Receiver]
:4:libupnpp/device/device.cxx:423::UpnpDevice::addService: [urn:av-openhome-org:serviceId:Product]
:4:src/ohproduct.cxx:103::OHProduct::OHProduct: sources: <SourceList >
 <Source >
  <Name >Playlist</Name >
  <Type >Playlist</Type >
  <Visible >1</Visible >
  </Source >
 <Source >
  <Name >Receiver</Name >
  <Type >Receiver</Type >
  <Visible >0</Visible >
  </Source >
</SourceList >

:4:src/main.cxx:702::Entering event loop
:4:src/main.cxx:709::Renderer event loop
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:RenderingControl
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:AVTransport
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:ConnectionManager
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Product
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Info
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Time
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:RenderingControl
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:AVTransport
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:ConnectionManager
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Product
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Info
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Time
:4:src/mpdcli.cxx:809::MPDCli::getQueueData
:4:src/mpdcli.cxx:794::MPDCli::getQueueSongs: 0 songs
:4:src/ohplaylist.cxx:146::OHPlaylist::translateIdArray: current ids:
:2:libupnpp/device/device.cxx:482::UpnpDevice::notifyEvent: id :-111: UPNP_E_INVALID_SERVICE for urn:av-openhome-org:serviceId:Receiver
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:RenderingControl
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:AVTransport
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:ConnectionManager
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Product
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Info
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Time
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:RenderingControl
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:AVTransport
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:ConnectionManager
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Product
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Info
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Time
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:RenderingControl
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:AVTransport
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:upnp-org:serviceId:ConnectionManager
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Product
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Info
:4:libupnpp/device/device.cxx:382::UPNP_EVENT_SUBSCRIPTION_REQUEST: urn:av-openhome-org:serviceId:Time

If I install the script again, the Sender service is present.

medoc92 writes

Upmpdcli tests for the presence of this script to detect the installation of the Sender package and set up the plumbing. Probably any executable empty script would be enough for this. I did not look again at the code, but quite probably, if the default script is not present, upmpdcli does not even look for the ones in src_scripts.

The scmakempdsender/mpd2sc source does have special status over the ones in src_scripts at the moment, which is indeed a bit ennoying if it is not used/usable (if only because the corresponding Sources will be listed in the selection menu).

It would probably be feasible to avoid this, but this would involve a bit of thinking and some work, and I don’t feel that this is important enough, I don’t have time for it (and not even to think about and test an hypothetical pull request). I think that it should be possible to just replace the script with an appropriate one (not python-based) at packaging time anyway, so this should not be a big deal.

joerg-krause writes

Yes, it can be replaced by a non-python script. However, it is never killed. That’s why I moved the script to src_scripts with the effect of having now two sources doing the same thing. But, it’s not a big deal!