@ -1,8 +1,6 @@
using MediaBrowser.Common.Events ;
using MediaBrowser.Common.Net ;
using MediaBrowser.Controller.Configuration ;
using MediaBrowser.Dlna.PlayTo ;
using MediaBrowser.Model.Events ;
using MediaBrowser.Model.Logging ;
using System ;
using System.Collections.Generic ;
@ -10,7 +8,6 @@ using System.Linq;
using System.Net ;
using System.Net.NetworkInformation ;
using System.Net.Sockets ;
using System.Text ;
using System.Threading ;
using System.Threading.Tasks ;
@ -75,7 +72,7 @@ namespace MediaBrowser.Dlna.Ssdp
}
}
void _ssdpHandler_MessageReceived ( object sender , SsdpMessageEventArgs e )
void _ssdpHandler_MessageReceived ( object sender , SsdpMessageEventArgs e )
{
string nts ;
e . Headers . TryGetValue ( "NTS" , out nts ) ;
@ -87,10 +84,16 @@ namespace MediaBrowser.Dlna.Ssdp
EventHelper . FireEventIfNotNull ( DeviceLeft , this , e , _logger ) ;
return ;
}
try
try
{
//TryCreateDevice(e, IPAddress.Parse(_networkManager.GetLocalIpAddresses().First()));
//var ip = _networkManager.GetLocalIpAddresses().FirstOrDefault();
//if (ip != null)
//{
// e.LocalIp = IPAddress.Parse(ip);
// TryCreateDevice(e);
//}
}
catch ( OperationCanceledException )
{
@ -184,36 +187,6 @@ namespace MediaBrowser.Dlna.Ssdp
}
private void CreateNotifier ( Socket socket )
{
Task . Factory . StartNew ( async ( o ) = >
{
try
{
var msg = new SsdpMessageBuilder ( ) . BuildRendererDiscoveryMessage ( ) ;
var request = Encoding . UTF8 . GetBytes ( msg ) ;
while ( true )
{
socket . SendTo ( request , new IPEndPoint ( IPAddress . Parse ( "239.255.255.250" ) , 1900 ) ) ;
var delay = _config . GetDlnaConfiguration ( ) . ClientDiscoveryIntervalSeconds * 1000 ;
await Task . Delay ( delay ) . ConfigureAwait ( false ) ;
}
}
catch ( OperationCanceledException )
{
}
catch ( Exception ex )
{
_logger . ErrorException ( "Error in notifier" , ex ) ;
}
} , _tokenSource . Token , TaskCreationOptions . LongRunning ) ;
}
private Socket GetMulticastSocket ( int networkInterfaceIndex )
{
var socket = new Socket ( AddressFamily . InterNetwork , SocketType . Dgram , ProtocolType . Udp ) ;
@ -223,7 +196,7 @@ namespace MediaBrowser.Dlna.Ssdp
return socket ;
}
private void TryCreateDevice ( SsdpMessageEventArgs args )
private void TryCreateDevice ( SsdpMessageEventArgs args )
{
string nts ;
args . Headers . TryGetValue ( "NTS" , out nts ) ;
@ -262,7 +235,7 @@ namespace MediaBrowser.Dlna.Ssdp
public void Dispose ( )
{
_ssdpHandler . MessageReceived - = _ssdpHandler_MessageReceived ;
if ( ! _disposed )
{
_disposed = true ;