• API Documentation
Show / Hide Table of Contents
  • Rssdp
    • CustomHttpHeader
      • CustomHttpHeader
      • Name
      • ToString
      • Value
    • CustomHttpHeadersCollection
      • Add
      • Contains
      • Count
      • CustomHttpHeadersCollection
      • GetEnumerator
      • Item
      • Remove
    • DeviceAvailableEventArgs
      • DeviceAvailableEventArgs
      • DiscoveredDevice
      • IsNewlyDiscovered
    • DeviceEventArgs
      • Device
      • DeviceEventArgs
    • DeviceNetworkType
      • IPv4
      • IPv6
    • DeviceNetworkTypeExtensions
      • GetMulticastIPAddress
    • DeviceUnavailableEventArgs
      • DeviceUnavailableEventArgs
      • DiscoveredDevice
      • Expired
    • DiscoveredSsdpDevice
      • AsAt
      • CacheLifetime
      • DescriptionLocation
      • GetDeviceInfo
      • IsExpired
      • NotificationType
      • ResponseHeaders
      • ToString
      • Usn
    • ExceptionExtensions
      • IsCritical
    • ISsdpLogger
      • LogError
      • LogInfo
      • LogVerbose
      • LogWarning
    • NullLogger
      • Instance
      • LogError
      • LogInfo
      • LogVerbose
      • LogWarning
    • Resource
    • Resource.Attribute
    • Resource.String
      • ApplicationName
      • Hello
    • ServiceEventArgs
      • Service
      • ServiceEventArgs
    • SocketClosedException
      • SocketClosedException
    • SocketFactory
      • CreateUdpMulticastSocket
      • CreateUdpSocket
      • DeviceNetworkType
      • SocketFactory
    • SsdpDevice
      • AddDevice
      • AddService
      • CustomProperties
      • CustomResponseHeaders
      • DeviceAdded
      • DeviceRemoved
      • Devices
      • DeviceType
      • DeviceTypeNamespace
      • DeviceVersion
      • FriendlyName
      • FullDeviceType
      • Icons
      • Manufacturer
      • ManufacturerUrl
      • ModelDescription
      • ModelName
      • ModelNumber
      • ModelUrl
      • OnDeviceAdded
      • OnDeviceRemoved
      • OnServiceAdded
      • OnServiceRemoved
      • PresentationUrl
      • RemoveDevice
      • RemoveService
      • SerialNumber
      • ServiceAdded
      • ServiceRemoved
      • Services
      • SsdpDevice
      • StringToUri
      • Udn
      • Upc
      • Uuid
      • WriteDeviceDescriptionXml
    • SsdpDeviceExtensions
      • ToRootDevice
    • SsdpDeviceIcon
      • ColorDepth
      • Height
      • MimeType
      • Url
      • Width
    • SsdpDeviceLocator
      • SsdpDeviceLocator
    • SsdpDevicePropertiesCollection
      • Add
      • Contains
      • Count
      • GetEnumerator
      • Item
      • Remove
      • SsdpDevicePropertiesCollection
    • SsdpDeviceProperty
      • FullName
      • Name
      • Namespace
      • Value
    • SsdpDevicePublisher
      • SsdpDevicePublisher
    • SsdpEmbeddedDevice
      • RootDevice
      • SsdpEmbeddedDevice
    • SsdpRootDevice
      • CacheLifetime
      • Location
      • SsdpRootDevice
      • ToDescriptionDocument
      • UrlBase
    • SsdpService
      • ControlUrl
      • EventSubUrl
      • FullServiceType
      • ScpdUrl
      • ServiceId
      • ServiceType
      • ServiceTypeNamespace
      • ServiceVersion
      • SsdpService
      • Uuid
      • WriteServiceDescriptionXml
    • SsdpStandardsMode
      • Default
      • Relaxed
      • Strict
    • SsdpTraceLogger
      • LogError
      • LogInfo
      • LogVerbose
      • LogWarning
    • UdpSocket
      • Dispose
      • ReceiveAsync
      • SendTo
      • UdpSocket
  • Rssdp.Infrastructure
    • DisposableManagedObjectBase
      • Dispose
      • IsDisposed
      • ThrowIfDisposed
    • HttpParserBase<T>
      • IsContentHeader
      • Parse
      • ParseHttpVersion
      • ParseStatusLine
    • HttpRequestParser
      • IsContentHeader
      • Parse
      • ParseStatusLine
    • HttpResponseParser
      • IsContentHeader
      • Parse
      • ParseStatusLine
    • ISocketFactory
      • CreateUdpMulticastSocket
      • CreateUdpSocket
      • DeviceNetworkType
    • ISsdpCommunicationsServer
      • BeginListeningForBroadcasts
      • DeviceNetworkType
      • IsShared
      • RequestReceived
      • ResponseReceived
      • SendMessage
      • StopListeningForBroadcasts
      • StopListeningForResponses
      • UdpSendCount
      • UdpSendDelay
    • ISsdpDeviceLocator
      • DeviceAvailable
      • DeviceUnavailable
      • IsSearching
      • NotificationFilter
      • SearchAsync
      • StartListeningForNotifications
      • StopListeningForNotifications
    • ISsdpDevicePublisher
      • AddDevice
      • Devices
      • RemoveDevice
    • IUdpSocket
      • ReceiveAsync
      • SendTo
    • IUpnpDeviceValidator
      • GetValidationErrors
      • ThrowIfDeviceInvalid
    • ReceivedUdpData
      • Buffer
      • ReceivedBytes
      • ReceivedFrom
    • RequestReceivedEventArgs
      • Message
      • ReceivedFrom
      • RequestReceivedEventArgs
    • ResponseReceivedEventArgs
      • Message
      • ReceivedFrom
      • ResponseReceivedEventArgs
    • SsdpCommunicationsServer
      • BeginListeningForBroadcasts
      • DeviceNetworkType
      • Dispose
      • IsShared
      • RequestReceived
      • ResponseReceived
      • SendMessage
      • SsdpCommunicationsServer
      • StopListeningForBroadcasts
      • StopListeningForResponses
      • UdpSendCount
      • UdpSendDelay
    • SsdpConstants
      • DefaultUdpResendCount
      • DefaultUdpResendDelay
      • DefaultUdpSocketBufferSize
      • MaxUdpSocketBufferSize
      • MulticastLinkLocalAddressV6
      • MulticastLocalAdminAddress
      • MulticastPort
      • PnpDeviceTypeRootDevice
      • SsdpDefaultMulticastTimeToLive
      • UpnpDeviceTypeBasicDevice
      • UpnpDeviceTypeNamespace
      • UpnpDeviceTypeRootDevice
    • SsdpDeviceLocatorBase
      • DeviceAvailable
      • DeviceUnavailable
      • Dispose
      • IsSearching
      • NotificationFilter
      • OnDeviceAvailable
      • OnDeviceUnavailable
      • SearchAsync
      • SsdpDeviceLocatorBase
      • StartListeningForNotifications
      • StopListeningForNotifications
    • SsdpDevicePublisherBase
      • AddDevice
      • Devices
      • Dispose
      • Log
      • NotificationBroadcastInterval
      • RemoveDevice
      • SsdpDevicePublisherBase
      • StandardsMode
      • SupportPnpRootDevice
    • UdpEndPoint
      • IPAddress
      • Port
      • ToString
    • Upnp10DeviceValidator
      • GetValidationErrors
      • ThrowIfDeviceInvalid

Method GetDeviceInfo

GetDeviceInfo()

Retrieves the device description document specified by the DescriptionLocation property.

Declaration
public Task<SsdpDevice> GetDeviceInfo()
Returns
Type Description
Task<SsdpDevice>

An SsdpDevice instance describing the full device details.

Remarks

This method may choose to cache (or return cached) information if called multiple times within the CacheLifetime period.

Exceptions
Type Condition
System.Exception

This method using an HttpClient instance to retrieve the device description document, and as such any exception that can be thrown by HttpClient may be rethrown by this method. On the UWP platform this is likely to be a System.Exception instance and the hresult can be checked to determine the exact nature of the error. On other platforms it is likely to be a System.Net.WebException or System.Net.Http.HttpRequestException. Check the documentation for HttpClient on the platform(s) you're using.

GetDeviceInfo(HttpClient)

Retrieves the device description document specified by the DescriptionLocation property using the provided instance.

Declaration
public Task<SsdpRootDevice> GetDeviceInfo(HttpClient downloadHttpClient)
Parameters
Type Name Description
HttpClient downloadHttpClient

A to use when downloading the document data.

Returns
Type Description
Task<SsdpRootDevice>

An SsdpDevice instance describing the full device details.

Remarks

This method may choose to cache (or return cached) information if called multiple times within the CacheLifetime period.

This method performs no error handling, if an exception occurs downloading or parsing the document it will be thrown to the calling code. Ensure you setup correct error handling for these scenarios.

Exceptions
Type Condition
System.Exception

This method using an HttpClient instance to retrieve the device description document, and as such any exception that can be thrown by HttpClient may be rethrown by this method. On the UWP platform this is likely to be a System.Exception instance and the hresult can be checked to determine the exact nature of the error. On other platforms it is likely to be a System.Net.WebException or System.Net.Http.HttpRequestException. Check the documentation for HttpClient on the platform(s) you're using.

Back to top Copyright (c) 2017 Troy Willmot