mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
hls updates
This commit is contained in:
parent
bbdbdf346e
commit
9fc4c86111
19 changed files with 255 additions and 246 deletions
|
@ -24,6 +24,7 @@
|
|||
|
||||
var self = this;
|
||||
var apiClients = [];
|
||||
var defaultTimeout = 15000;
|
||||
|
||||
function mergeServers(list1, list2) {
|
||||
|
||||
|
@ -73,7 +74,7 @@
|
|||
url: url,
|
||||
dataType: "json",
|
||||
|
||||
timeout: timeout || 15000
|
||||
timeout: timeout || defaultTimeout
|
||||
|
||||
});
|
||||
}
|
||||
|
@ -100,10 +101,33 @@
|
|||
return credentialProvider.credentials().ConnectAccessToken;
|
||||
};
|
||||
|
||||
self.addApiClient = function (apiClient, enableAutomaticNetworking) {
|
||||
self.getLastUsedApiClient = function() {
|
||||
|
||||
var servers = credentialProvider.credentials().servers;
|
||||
|
||||
servers.sort(function (a, b) {
|
||||
return b.DateLastAccessed - a.DateLastAccessed;
|
||||
});
|
||||
|
||||
if (!servers.length) {
|
||||
return null;
|
||||
}
|
||||
|
||||
var server = servers[0];
|
||||
|
||||
return getOrAddApiClient(server, server.LastConnectionMode);
|
||||
};
|
||||
|
||||
self.addApiClient = function (apiClient) {
|
||||
|
||||
apiClients.push(apiClient);
|
||||
|
||||
Events.on(apiClient, 'authenticated', function (e, result) {
|
||||
onAuthenticated(this, result, {}, true);
|
||||
});
|
||||
|
||||
Events.trigger(self, 'apiclientcreated', [apiClient]);
|
||||
|
||||
return apiClient.getPublicSystemInfo().done(function (systemInfo) {
|
||||
|
||||
var server = credentialProvider.credentials().servers.filter(function (s) {
|
||||
|
@ -115,13 +139,7 @@
|
|||
updateServerInfo(server, systemInfo);
|
||||
|
||||
apiClient.serverInfo(server);
|
||||
Events.trigger(self, 'apiclientcreated', [apiClient]);
|
||||
|
||||
if (enableAutomaticNetworking) {
|
||||
self.connectToServer(server);
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
function onConnectUserSignIn(user) {
|
||||
|
@ -151,7 +169,7 @@
|
|||
Events.trigger(self, 'apiclientcreated', [apiClient]);
|
||||
}
|
||||
|
||||
if (server.AccessToken) {
|
||||
if (server.AccessToken && server.UserId) {
|
||||
|
||||
apiClient.setAuthenticationInfo(server.AccessToken, server.UserId);
|
||||
}
|
||||
|
@ -799,7 +817,7 @@
|
|||
var address = self.getServerAddress(server, mode);
|
||||
var enableRetry = false;
|
||||
var skipTest = false;
|
||||
var timeout = 15000;
|
||||
var timeout = defaultTimeout;
|
||||
|
||||
if (mode == MediaBrowser.ConnectionMode.Local) {
|
||||
|
||||
|
@ -807,7 +825,7 @@
|
|||
skipTest = true;
|
||||
}
|
||||
enableRetry = true;
|
||||
timeout = 5000;
|
||||
timeout = 7000;
|
||||
}
|
||||
|
||||
else if (mode == MediaBrowser.ConnectionMode.Manual) {
|
||||
|
@ -924,7 +942,7 @@
|
|||
case MediaBrowser.ConnectionMode.Remote:
|
||||
return server.RemoteAddress;
|
||||
default:
|
||||
throw new Error("Unexpected ConnectionMode");
|
||||
return server.ManualAddress || server.LocalAddress || server.RemoteAddress;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -934,6 +952,10 @@
|
|||
address = "http://" + address;
|
||||
}
|
||||
|
||||
// Seeing failures in iOS when protocol isn't lowercase
|
||||
address = address.replace('Http:', 'http:');
|
||||
address = address.replace('Https:', 'https:');
|
||||
|
||||
return address;
|
||||
}
|
||||
|
||||
|
@ -953,7 +975,7 @@
|
|||
resolveWithFailure(deferred);
|
||||
}
|
||||
|
||||
tryConnect(address, 15000).done(function (publicInfo) {
|
||||
tryConnect(address, defaultTimeout).done(function (publicInfo) {
|
||||
|
||||
logger.log('connectToAddress ' + address + ' succeeded');
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue