mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-04-20 09:04:42 +01:00
add startup error handling
This commit is contained in:
@@ -44,11 +44,12 @@ namespace MediaBrowser.Server.Implementations.Connect
|
||||
LoadCachedAddress();
|
||||
|
||||
_timer = new PeriodicTimer(TimerCallback, null, TimeSpan.FromSeconds(5), TimeSpan.FromHours(3));
|
||||
((ConnectManager)_connectManager).Start();
|
||||
}
|
||||
|
||||
private readonly string[] _ipLookups =
|
||||
{
|
||||
"http://bot.whatismyipaddress.com",
|
||||
"http://bot.whatismyipaddress.com",
|
||||
"https://connect.emby.media/service/ip"
|
||||
};
|
||||
|
||||
@@ -78,17 +79,18 @@ namespace MediaBrowser.Server.Implementations.Connect
|
||||
}
|
||||
|
||||
// If this produced an ipv6 address, try again
|
||||
if (validIpAddress == null || validIpAddress.AddressFamily == AddressFamily.InterNetworkV6)
|
||||
if (validIpAddress != null && validIpAddress.AddressFamily == AddressFamily.InterNetworkV6)
|
||||
{
|
||||
foreach (var ipLookupUrl in _ipLookups)
|
||||
{
|
||||
try
|
||||
{
|
||||
validIpAddress = await GetIpAddress(ipLookupUrl, true).ConfigureAwait(false);
|
||||
var newAddress = await GetIpAddress(ipLookupUrl, true).ConfigureAwait(false);
|
||||
|
||||
// Try to find the ipv4 address, if present
|
||||
if (validIpAddress.AddressFamily == AddressFamily.InterNetwork)
|
||||
if (newAddress.AddressFamily == AddressFamily.InterNetwork)
|
||||
{
|
||||
validIpAddress = newAddress;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -139,11 +139,14 @@ namespace MediaBrowser.Server.Implementations.Connect
|
||||
_securityManager = securityManager;
|
||||
_fileSystem = fileSystem;
|
||||
|
||||
_config.ConfigurationUpdated += _config_ConfigurationUpdated;
|
||||
|
||||
LoadCachedData();
|
||||
}
|
||||
|
||||
internal void Start()
|
||||
{
|
||||
_config.ConfigurationUpdated += _config_ConfigurationUpdated;
|
||||
}
|
||||
|
||||
internal void OnWanAddressResolved(IPAddress address)
|
||||
{
|
||||
DiscoveredWanIpAddress = address;
|
||||
|
||||
Reference in New Issue
Block a user