aboutsummaryrefslogtreecommitdiff
path: root/Emby.Dlna/Server/DescriptionXmlBuilder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Dlna/Server/DescriptionXmlBuilder.cs')
-rw-r--r--Emby.Dlna/Server/DescriptionXmlBuilder.cs38
1 files changed, 21 insertions, 17 deletions
diff --git a/Emby.Dlna/Server/DescriptionXmlBuilder.cs b/Emby.Dlna/Server/DescriptionXmlBuilder.cs
index bba4adc5f4..988d45e075 100644
--- a/Emby.Dlna/Server/DescriptionXmlBuilder.cs
+++ b/Emby.Dlna/Server/DescriptionXmlBuilder.cs
@@ -22,12 +22,12 @@ namespace Emby.Dlna.Server
public DescriptionXmlBuilder(DeviceProfile profile, string serverUdn, string serverAddress, string serverName, string serverId)
{
- if (string.IsNullOrWhiteSpace(serverUdn))
+ if (string.IsNullOrEmpty(serverUdn))
{
throw new ArgumentNullException("serverUdn");
}
- if (string.IsNullOrWhiteSpace(serverAddress))
+ if (string.IsNullOrEmpty(serverAddress))
{
throw new ArgumentNullException("serverAddress");
}
@@ -77,6 +77,11 @@ namespace Emby.Dlna.Server
builder.Append("<minor>0</minor>");
builder.Append("</specVersion>");
+ if (!EnableAbsoluteUrls)
+ {
+ builder.Append("<URLBase>" + Escape(_serverAddress) + "</URLBase>");
+ }
+
AppendDeviceInfo(builder);
builder.Append("</root>");
@@ -90,6 +95,9 @@ namespace Emby.Dlna.Server
AppendDeviceProperties(builder);
AppendIconList(builder);
+
+ builder.Append("<presentationURL>" + Escape(_serverAddress) + "/web/index.html</presentationURL>");
+
AppendServiceList(builder);
builder.Append("</device>");
}
@@ -169,12 +177,12 @@ namespace Emby.Dlna.Server
private void AppendDeviceProperties(StringBuilder builder)
{
- builder.Append("<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>");
-
- builder.Append("<dlna:X_DLNACAP>" + Escape(_profile.XDlnaCap ?? string.Empty) + "</dlna:X_DLNACAP>");
+ builder.Append("<dlna:X_DLNACAP/>");
+ builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">DMS-1.50</dlna:X_DLNADOC>");
builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">M-DMS-1.50</dlna:X_DLNADOC>");
- builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">" + Escape(_profile.XDlnaDoc ?? string.Empty) + "</dlna:X_DLNADOC>");
+
+ builder.Append("<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>");
builder.Append("<friendlyName>" + Escape(GetFriendlyName()) + "</friendlyName>");
builder.Append("<manufacturer>" + Escape(_profile.Manufacturer ?? string.Empty) + "</manufacturer>");
@@ -186,7 +194,7 @@ namespace Emby.Dlna.Server
builder.Append("<modelNumber>" + Escape(_profile.ModelNumber ?? string.Empty) + "</modelNumber>");
builder.Append("<modelURL>" + Escape(_profile.ModelUrl ?? string.Empty) + "</modelURL>");
- if (string.IsNullOrWhiteSpace(_profile.SerialNumber))
+ if (string.IsNullOrEmpty(_profile.SerialNumber))
{
builder.Append("<serialNumber>" + Escape(_serverId) + "</serialNumber>");
}
@@ -195,15 +203,11 @@ namespace Emby.Dlna.Server
builder.Append("<serialNumber>" + Escape(_profile.SerialNumber) + "</serialNumber>");
}
- builder.Append("<UDN>uuid:" + Escape(_serverUdn) + "</UDN>");
- builder.Append("<presentationURL>" + Escape(_serverAddress) + "</presentationURL>");
+ builder.Append("<UPC/>");
- if (!EnableAbsoluteUrls)
- {
- //builder.Append("<URLBase>" + Escape(_serverAddress) + "</URLBase>");
- }
+ builder.Append("<UDN>uuid:" + Escape(_serverUdn) + "</UDN>");
- if (!string.IsNullOrWhiteSpace(_profile.SonyAggregationFlags))
+ if (!string.IsNullOrEmpty(_profile.SonyAggregationFlags))
{
builder.Append("<av:aggregationFlags xmlns:av=\"urn:schemas-sony-com:av\">" + Escape(_profile.SonyAggregationFlags) + "</av:aggregationFlags>");
}
@@ -211,7 +215,7 @@ namespace Emby.Dlna.Server
private string GetFriendlyName()
{
- if (string.IsNullOrWhiteSpace(_profile.FriendlyName))
+ if (string.IsNullOrEmpty(_profile.FriendlyName))
{
return "Emby - " + _serverName;
}
@@ -226,7 +230,7 @@ namespace Emby.Dlna.Server
}
}
- var characters = characterList.ToArray(characterList.Count);
+ var characters = characterList.ToArray();
var serverName = new string(characters);
@@ -277,7 +281,7 @@ namespace Emby.Dlna.Server
private string BuildUrl(string url)
{
- if (string.IsNullOrWhiteSpace(url))
+ if (string.IsNullOrEmpty(url))
{
return string.Empty;
}