2011-10-21, 03:33
I have just installed XBMC "PRE-11.0 GIT:20111020-bc49ac0 (Compiled: Oct 20 2011)" and see a problem with XML formatting of UPnP notifications - the metadata portion.
The SetAVTransportURI SOAP looks like:
The LastChange response looks good, except for the MetaData section:
Please, take a look at the following element:
The "<" is properly twice escaped, thus "&lt;" However, the ">" is only escaped once, thus ">"
All elements in the metadata section are escaped the same way (left twice, right once), what is causing parsing problems on the controller side.
jacek
The SetAVTransportURI SOAP looks like:
Code:
<?xml version="1.0" encoding="utf-8"?><s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><u:SetAVTransportURI xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><CurrentURI>http://192.168.2.213/youtube.mp4</CurrentURI><CurrentURIMetaData><DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dc="[url]http://purl.org/dc/elements/1.1/"[/url] xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/"><item id="1" parentID="0" restricted="true"><upnp:class>object.item.videoItem.movie</upnp:class><dc:title></dc:title><res protocolInfo="http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_PS_NTSC;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000*" >http://192.168.2.213/youtube.mp4</res></item></DIDL-Lite></CurrentURIMetaData></u:SetAVTransportURI></s:Body></s:Envelope>
The LastChange response looks good, except for the MetaData section:
Code:
<CurrentTrackMetaData val="&lt;DIDL-Lite xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot; xmlns:dc=&quot;[url]http://purl.org/dc/elements/1.1/&quot;[/url] xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot;>&lt;item id=&quot;1&quot; parentID=&quot;0&quot; restricted=&quot;true&quot;>&lt;upnp:class>object.item.videoItem.movie&lt;/upnp:class>&lt;dc:title>&lt;/dc:title>&lt;res protocolInfo=&quot;http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_PS_NTSC;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000*&quot; >http://192.168.2.213/youtube.mp4&lt;/res>&lt;/item>&lt;/DIDL-Lite>"/>
Please, take a look at the following element:
Code:
&lt;upnp:class>
All elements in the metadata section are escaped the same way (left twice, right once), what is causing parsing problems on the controller side.
jacek