• 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

Class SsdpDevice

Base class representing the common details of a (root or embedded) device, either to be published or that has been located.

Inheritance
System.Object
SsdpDevice
SsdpEmbeddedDevice
SsdpRootDevice
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Rssdp
Assembly: cs.temp.dll.dll
Syntax
public abstract class SsdpDevice
Remarks

Do not derive new types directly from this class. New device classes should derive from either SsdpRootDevice or SsdpEmbeddedDevice.

Constructors

Name Description
SsdpDevice()

Derived type constructor, allows constructing a device with no parent. Should only be used from derived types that are or inherit from SsdpRootDevice.

SsdpDevice(String)

Deserialisation constructor.

Properties

Name Description
CustomProperties

Returns a dictionary of SsdpDeviceProperty objects keyed by FullName. Each value represents a custom property in the device description document.

CustomResponseHeaders

Provides a list of additional information to provide about this device in search response and notification messages.

Devices

Returns a read-only enumerable set of SsdpDevice objects representing children of this device. Child devices are optional.

DeviceType

Sets or returns the core device type (not including namespace, version etc.). Required.

DeviceTypeNamespace

Sets or returns the namespace for the DeviceType of this device. Optional, but defaults to UPnP schema so should be changed if DeviceType is not a UPnP device type.

DeviceVersion

Sets or returns the version of the device type. Optional, defaults to 1.

FriendlyName

Sets or returns a friendly/display name for this device on the network. Something the user can identify the device/instance by, i.e Lounge Main Light. Required.

FullDeviceType

Returns the full device type string.

Icons

Returns a list of icons (images) that can be used to display this device. Optional, but recommended you provide at least one at 48x48 pixels.

Manufacturer

Sets or returns the name of the manufacturer of this device. Required.

ManufacturerUrl

Sets or returns a URL to the manufacturers web site. Optional.

ModelDescription

Sets or returns a description of this device model. Recommended.

ModelName

Sets or returns the name of this model. Required.

ModelNumber

Sets or returns the number of this model. Recommended.

ModelUrl

Sets or returns a URL to a web page with details of this device model. Optional.

PresentationUrl

Sets or returns the URL to a web page that can be used to configure/manager/use the device. Recommended.

SerialNumber

Sets or returns the serial number for this device. Recommended.

Services

Returns a read-only enumerable set of SsdpService objects representing services associated with this device.

Udn

Returns (or sets*) a unique device name for this device. Optional, not recommended to be explicitly set.

Upc

Sets or returns the universal product code of the device, if any. Optional.

Uuid

Sets or returns the universally unique identifier for this device (without the uuid: prefix). Required.

Methods

Name Description
AddDevice(SsdpEmbeddedDevice)

Adds a child device to the Devices collection.

AddService(SsdpService)

Adds a service to the Services collection.

OnDeviceAdded(SsdpEmbeddedDevice)

Raises the DeviceAdded event.

OnDeviceRemoved(SsdpEmbeddedDevice)

Raises the DeviceRemoved event.

OnServiceAdded(SsdpService)

Raises the ServiceAdded event.

OnServiceRemoved(SsdpService)

Raises the ServiceRemoved event.

RemoveDevice(SsdpEmbeddedDevice)

Removes a child device from the Devices collection.

RemoveService(SsdpService)

Removes a service from the Services collection.

StringToUri(String)

Converts a string to a , or returns null if the string provided is null.

WriteDeviceDescriptionXml(XmlWriter, SsdpDevice)

Writes this device to the specified as a device node and it's content.

Events

Name Description
DeviceAdded

Raised when a new child device is added.

DeviceRemoved

Raised when a child device is removed.

ServiceAdded

Raised when a new service is added.

ServiceRemoved

Raised when a service is removed.

See Also

SsdpRootDevice
SsdpEmbeddedDevice
Back to top Copyright (c) 2017 Troy Willmot