• 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 SsdpCommunicationsServer

Provides the platform independent logic for publishing device existence and responding to search requests.

Inheritance
System.Object
DisposableManagedObjectBase
SsdpCommunicationsServer
Implements
ISsdpCommunicationsServer
System.IDisposable
Inherited Members
DisposableManagedObjectBase.ThrowIfDisposed()
DisposableManagedObjectBase.IsDisposed
DisposableManagedObjectBase.Dispose()
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.Infrastructure
Assembly: cs.temp.dll.dll
Syntax
public sealed class SsdpCommunicationsServer : DisposableManagedObjectBase, ISsdpCommunicationsServer, IDisposable

Constructors

Name Description
SsdpCommunicationsServer(ISocketFactory)

Minimum constructor.

SsdpCommunicationsServer(ISocketFactory, Int32)

Partial constructor.

SsdpCommunicationsServer(ISocketFactory, Int32, Int32)

Full constructor.

Properties

Name Description
DeviceNetworkType

What type of sockets will be created: ipv6 or ipv4

IsShared

Gets or sets a boolean value indicating whether or not this instance is shared amongst multiple SsdpDeviceLocatorBase and/or ISsdpDevicePublisher instances.

UdpSendCount

The number of times the Udp message is sent. Any value less than 2 will result in one message being sent. SSDP spec recommends sending messages multiple times (not more than 3) to account for possible packet loss over UDP.

UdpSendDelay

The delay between repeating messages (as specified in UdpSendCount).

Methods

Name Description
BeginListeningForBroadcasts()

Causes the server to begin listening for multicast messages, being SSDP search requests and notifications.

Dispose(Boolean)

Stops listening for requests, disposes this instance and all internal resources.

SendMessage(Byte[], UdpEndPoint)

Sends a message to a particular address (uni or multicast) and port.

StopListeningForBroadcasts()

Causes the server to stop listening for multicast messages, being SSDP search requests and notifications.

StopListeningForResponses()

Stops listening for search responses on the local, unicast socket.

Events

Name Description
RequestReceived

Raised when a HTTPU request message is received by a socket (unicast or multicast).

ResponseReceived

Raised when an HTTPU response message is received by a socket (unicast or multicast).

Back to top Copyright (c) 2017 Troy Willmot