@jellyfin/sdk
Version:
A TypeScript SDK for Jellyfin.
823 lines (822 loc) • 72 kB
JavaScript
import globalAxios from 'axios';
import { assertParamExists, DUMMY_BASE_URL, setApiKeyToObject, setSearchParams, toPathString, serializeDataIfNeeded, createRequestFunction } from '../common.js';
import { operationServerMap, BaseAPI, BASE_PATH } from '../base.js';
/* tslint:disable */
/* eslint-disable */
/**
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* Do not edit the class manually.
*
* Jellyfin API
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
/**
* SessionApi - axios parameter creator
* @export
*/
const SessionApiAxiosParamCreator = function (configuration) {
return {
/**
*
* @summary Adds an additional user to a session.
* @param {string} sessionId The session id.
* @param {string} userId The user id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
addUserToSession: async (sessionId, userId, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('addUserToSession', 'sessionId', sessionId);
// verify required parameter 'userId' is not null or undefined
assertParamExists('addUserToSession', 'userId', userId);
const localVarPath = `/Sessions/{sessionId}/User/{userId}`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)))
.replace(`{${"userId"}}`, encodeURIComponent(String(userId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Instructs a session to browse to an item or view.
* @param {string} sessionId The session Id.
* @param {BaseItemKind} itemType The type of item to browse to.
* @param {string} itemId The Id of the item.
* @param {string} itemName The name of the item.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
displayContent: async (sessionId, itemType, itemId, itemName, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('displayContent', 'sessionId', sessionId);
// verify required parameter 'itemType' is not null or undefined
assertParamExists('displayContent', 'itemType', itemType);
// verify required parameter 'itemId' is not null or undefined
assertParamExists('displayContent', 'itemId', itemId);
// verify required parameter 'itemName' is not null or undefined
assertParamExists('displayContent', 'itemName', itemName);
const localVarPath = `/Sessions/{sessionId}/Viewing`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (itemType !== undefined) {
localVarQueryParameter['itemType'] = itemType;
}
if (itemId !== undefined) {
localVarQueryParameter['itemId'] = itemId;
}
if (itemName !== undefined) {
localVarQueryParameter['itemName'] = itemName;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Get all auth providers.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getAuthProviders: async (options = {}) => {
const localVarPath = `/Auth/Providers`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Get all password reset providers.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getPasswordResetProviders: async (options = {}) => {
const localVarPath = `/Auth/PasswordResetProviders`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Gets a list of sessions.
* @param {string} [controllableByUserId] Filter by sessions that a given user is allowed to remote control.
* @param {string} [deviceId] Filter by device Id.
* @param {number} [activeWithinSeconds] Optional. Filter by sessions that were active in the last n seconds.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getSessions: async (controllableByUserId, deviceId, activeWithinSeconds, options = {}) => {
const localVarPath = `/Sessions`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (controllableByUserId !== undefined) {
localVarQueryParameter['controllableByUserId'] = controllableByUserId;
}
if (deviceId !== undefined) {
localVarQueryParameter['deviceId'] = deviceId;
}
if (activeWithinSeconds !== undefined) {
localVarQueryParameter['activeWithinSeconds'] = activeWithinSeconds;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Instructs a session to play an item.
* @param {string} sessionId The session id.
* @param {PlayCommand} playCommand The type of play command to issue (PlayNow, PlayNext, PlayLast). Clients who have not yet implemented play next and play last may play now.
* @param {Array<string>} itemIds The ids of the items to play, comma delimited.
* @param {number} [startPositionTicks] The starting position of the first item.
* @param {string} [mediaSourceId] Optional. The media source id.
* @param {number} [audioStreamIndex] Optional. The index of the audio stream to play.
* @param {number} [subtitleStreamIndex] Optional. The index of the subtitle stream to play.
* @param {number} [startIndex] Optional. The start index.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
play: async (sessionId, playCommand, itemIds, startPositionTicks, mediaSourceId, audioStreamIndex, subtitleStreamIndex, startIndex, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('play', 'sessionId', sessionId);
// verify required parameter 'playCommand' is not null or undefined
assertParamExists('play', 'playCommand', playCommand);
// verify required parameter 'itemIds' is not null or undefined
assertParamExists('play', 'itemIds', itemIds);
const localVarPath = `/Sessions/{sessionId}/Playing`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (playCommand !== undefined) {
localVarQueryParameter['playCommand'] = playCommand;
}
if (itemIds) {
localVarQueryParameter['itemIds'] = itemIds;
}
if (startPositionTicks !== undefined) {
localVarQueryParameter['startPositionTicks'] = startPositionTicks;
}
if (mediaSourceId !== undefined) {
localVarQueryParameter['mediaSourceId'] = mediaSourceId;
}
if (audioStreamIndex !== undefined) {
localVarQueryParameter['audioStreamIndex'] = audioStreamIndex;
}
if (subtitleStreamIndex !== undefined) {
localVarQueryParameter['subtitleStreamIndex'] = subtitleStreamIndex;
}
if (startIndex !== undefined) {
localVarQueryParameter['startIndex'] = startIndex;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Updates capabilities for a device.
* @param {string} [id] The session id.
* @param {Array<MediaType>} [playableMediaTypes] A list of playable media types, comma delimited. Audio, Video, Book, Photo.
* @param {Array<GeneralCommandType>} [supportedCommands] A list of supported remote control commands, comma delimited.
* @param {boolean} [supportsMediaControl] Determines whether media can be played remotely..
* @param {boolean} [supportsPersistentIdentifier] Determines whether the device supports a unique identifier.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
postCapabilities: async (id, playableMediaTypes, supportedCommands, supportsMediaControl, supportsPersistentIdentifier, options = {}) => {
const localVarPath = `/Sessions/Capabilities`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (id !== undefined) {
localVarQueryParameter['id'] = id;
}
if (playableMediaTypes) {
localVarQueryParameter['playableMediaTypes'] = playableMediaTypes;
}
if (supportedCommands) {
localVarQueryParameter['supportedCommands'] = supportedCommands;
}
if (supportsMediaControl !== undefined) {
localVarQueryParameter['supportsMediaControl'] = supportsMediaControl;
}
if (supportsPersistentIdentifier !== undefined) {
localVarQueryParameter['supportsPersistentIdentifier'] = supportsPersistentIdentifier;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Updates capabilities for a device.
* @param {ClientCapabilitiesDto} clientCapabilitiesDto The MediaBrowser.Model.Session.ClientCapabilities.
* @param {string} [id] The session id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
postFullCapabilities: async (clientCapabilitiesDto, id, options = {}) => {
// verify required parameter 'clientCapabilitiesDto' is not null or undefined
assertParamExists('postFullCapabilities', 'clientCapabilitiesDto', clientCapabilitiesDto);
const localVarPath = `/Sessions/Capabilities/Full`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (id !== undefined) {
localVarQueryParameter['id'] = id;
}
localVarHeaderParameter['Content-Type'] = 'application/json';
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
localVarRequestOptions.data = serializeDataIfNeeded(clientCapabilitiesDto, localVarRequestOptions, configuration);
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Removes an additional user from a session.
* @param {string} sessionId The session id.
* @param {string} userId The user id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
removeUserFromSession: async (sessionId, userId, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('removeUserFromSession', 'sessionId', sessionId);
// verify required parameter 'userId' is not null or undefined
assertParamExists('removeUserFromSession', 'userId', userId);
const localVarPath = `/Sessions/{sessionId}/User/{userId}`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)))
.replace(`{${"userId"}}`, encodeURIComponent(String(userId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Reports that a session has ended.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
reportSessionEnded: async (options = {}) => {
const localVarPath = `/Sessions/Logout`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Reports that a session is viewing an item.
* @param {string} itemId The item id.
* @param {string} [sessionId] The session id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
reportViewing: async (itemId, sessionId, options = {}) => {
// verify required parameter 'itemId' is not null or undefined
assertParamExists('reportViewing', 'itemId', itemId);
const localVarPath = `/Sessions/Viewing`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (sessionId !== undefined) {
localVarQueryParameter['sessionId'] = sessionId;
}
if (itemId !== undefined) {
localVarQueryParameter['itemId'] = itemId;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Issues a full general command to a client.
* @param {string} sessionId The session id.
* @param {GeneralCommand} generalCommand The MediaBrowser.Model.Session.GeneralCommand.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
sendFullGeneralCommand: async (sessionId, generalCommand, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('sendFullGeneralCommand', 'sessionId', sessionId);
// verify required parameter 'generalCommand' is not null or undefined
assertParamExists('sendFullGeneralCommand', 'generalCommand', generalCommand);
const localVarPath = `/Sessions/{sessionId}/Command`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
localVarHeaderParameter['Content-Type'] = 'application/json';
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
localVarRequestOptions.data = serializeDataIfNeeded(generalCommand, localVarRequestOptions, configuration);
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Issues a general command to a client.
* @param {string} sessionId The session id.
* @param {GeneralCommandType} command The command to send.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
sendGeneralCommand: async (sessionId, command, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('sendGeneralCommand', 'sessionId', sessionId);
// verify required parameter 'command' is not null or undefined
assertParamExists('sendGeneralCommand', 'command', command);
const localVarPath = `/Sessions/{sessionId}/Command/{command}`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)))
.replace(`{${"command"}}`, encodeURIComponent(String(command)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Issues a command to a client to display a message to the user.
* @param {string} sessionId The session id.
* @param {MessageCommand} messageCommand The MediaBrowser.Model.Session.MessageCommand object containing Header, Message Text, and TimeoutMs.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
sendMessageCommand: async (sessionId, messageCommand, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('sendMessageCommand', 'sessionId', sessionId);
// verify required parameter 'messageCommand' is not null or undefined
assertParamExists('sendMessageCommand', 'messageCommand', messageCommand);
const localVarPath = `/Sessions/{sessionId}/Message`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
localVarHeaderParameter['Content-Type'] = 'application/json';
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
localVarRequestOptions.data = serializeDataIfNeeded(messageCommand, localVarRequestOptions, configuration);
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Issues a playstate command to a client.
* @param {string} sessionId The session id.
* @param {PlaystateCommand} command The MediaBrowser.Model.Session.PlaystateCommand.
* @param {number} [seekPositionTicks] The optional position ticks.
* @param {string} [controllingUserId] The optional controlling user id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
sendPlaystateCommand: async (sessionId, command, seekPositionTicks, controllingUserId, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('sendPlaystateCommand', 'sessionId', sessionId);
// verify required parameter 'command' is not null or undefined
assertParamExists('sendPlaystateCommand', 'command', command);
const localVarPath = `/Sessions/{sessionId}/Playing/{command}`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)))
.replace(`{${"command"}}`, encodeURIComponent(String(command)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (seekPositionTicks !== undefined) {
localVarQueryParameter['seekPositionTicks'] = seekPositionTicks;
}
if (controllingUserId !== undefined) {
localVarQueryParameter['controllingUserId'] = controllingUserId;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Issues a system command to a client.
* @param {string} sessionId The session id.
* @param {GeneralCommandType} command The command to send.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
sendSystemCommand: async (sessionId, command, options = {}) => {
// verify required parameter 'sessionId' is not null or undefined
assertParamExists('sendSystemCommand', 'sessionId', sessionId);
// verify required parameter 'command' is not null or undefined
assertParamExists('sendSystemCommand', 'command', command);
const localVarPath = `/Sessions/{sessionId}/System/{command}`
.replace(`{${"sessionId"}}`, encodeURIComponent(String(sessionId)))
.replace(`{${"command"}}`, encodeURIComponent(String(command)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
};
};
/**
* SessionApi - functional programming interface
* @export
*/
const SessionApiFp = function (configuration) {
const localVarAxiosParamCreator = SessionApiAxiosParamCreator(configuration);
return {
/**
*
* @summary Adds an additional user to a session.
* @param {string} sessionId The session id.
* @param {string} userId The user id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async addUserToSession(sessionId, userId, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.addUserToSession(sessionId, userId, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.addUserToSession']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Instructs a session to browse to an item or view.
* @param {string} sessionId The session Id.
* @param {BaseItemKind} itemType The type of item to browse to.
* @param {string} itemId The Id of the item.
* @param {string} itemName The name of the item.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async displayContent(sessionId, itemType, itemId, itemName, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.displayContent(sessionId, itemType, itemId, itemName, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.displayContent']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Get all auth providers.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getAuthProviders(options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getAuthProviders(options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.getAuthProviders']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Get all password reset providers.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getPasswordResetProviders(options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getPasswordResetProviders(options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.getPasswordResetProviders']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Gets a list of sessions.
* @param {string} [controllableByUserId] Filter by sessions that a given user is allowed to remote control.
* @param {string} [deviceId] Filter by device Id.
* @param {number} [activeWithinSeconds] Optional. Filter by sessions that were active in the last n seconds.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getSessions(controllableByUserId, deviceId, activeWithinSeconds, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getSessions(controllableByUserId, deviceId, activeWithinSeconds, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.getSessions']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Instructs a session to play an item.
* @param {string} sessionId The session id.
* @param {PlayCommand} playCommand The type of play command to issue (PlayNow, PlayNext, PlayLast). Clients who have not yet implemented play next and play last may play now.
* @param {Array<string>} itemIds The ids of the items to play, comma delimited.
* @param {number} [startPositionTicks] The starting position of the first item.
* @param {string} [mediaSourceId] Optional. The media source id.
* @param {number} [audioStreamIndex] Optional. The index of the audio stream to play.
* @param {number} [subtitleStreamIndex] Optional. The index of the subtitle stream to play.
* @param {number} [startIndex] Optional. The start index.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async play(sessionId, playCommand, itemIds, startPositionTicks, mediaSourceId, audioStreamIndex, subtitleStreamIndex, startIndex, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.play(sessionId, playCommand, itemIds, startPositionTicks, mediaSourceId, audioStreamIndex, subtitleStreamIndex, startIndex, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.play']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Updates capabilities for a device.
* @param {string} [id] The session id.
* @param {Array<MediaType>} [playableMediaTypes] A list of playable media types, comma delimited. Audio, Video, Book, Photo.
* @param {Array<GeneralCommandType>} [supportedCommands] A list of supported remote control commands, comma delimited.
* @param {boolean} [supportsMediaControl] Determines whether media can be played remotely..
* @param {boolean} [supportsPersistentIdentifier] Determines whether the device supports a unique identifier.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async postCapabilities(id, playableMediaTypes, supportedCommands, supportsMediaControl, supportsPersistentIdentifier, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.postCapabilities(id, playableMediaTypes, supportedCommands, supportsMediaControl, supportsPersistentIdentifier, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.postCapabilities']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Updates capabilities for a device.
* @param {ClientCapabilitiesDto} clientCapabilitiesDto The MediaBrowser.Model.Session.ClientCapabilities.
* @param {string} [id] The session id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async postFullCapabilities(clientCapabilitiesDto, id, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.postFullCapabilities(clientCapabilitiesDto, id, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.postFullCapabilities']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Removes an additional user from a session.
* @param {string} sessionId The session id.
* @param {string} userId The user id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async removeUserFromSession(sessionId, userId, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.removeUserFromSession(sessionId, userId, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.removeUserFromSession']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Reports that a session has ended.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async reportSessionEnded(options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.reportSessionEnded(options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.reportSessionEnded']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Reports that a session is viewing an item.
* @param {string} itemId The item id.
* @param {string} [sessionId] The session id.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async reportViewing(itemId, sessionId, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.reportViewing(itemId, sessionId, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.reportViewing']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Issues a full general command to a client.
* @param {string} sessionId The session id.
* @param {GeneralCommand} generalCommand The MediaBrowser.Model.Session.GeneralCommand.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async sendFullGeneralCommand(sessionId, generalCommand, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.sendFullGeneralCommand(sessionId, generalCommand, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['SessionApi.sendFullGeneralCommand']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(ax