UNPKG

agora-rest-client

Version:
89 lines (88 loc) 3.75 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.WebScenarioClient = void 0; const types_1 = require("../../types"); class WebScenarioClient { constructor(api) { this.api = api; } acquire(cname, uid, clientRequest) { return __awaiter(this, void 0, void 0, function* () { const requestPayload = { cname, uid, clientRequest: { scene: 1, resourceExpiredHour: clientRequest.resourceExpiredHour, regionAffinity: clientRequest.regionAffinity, excludeResourceIds: clientRequest.excludeResourceIds, }, }; if (clientRequest.startParameter) { requestPayload.clientRequest.startParameter = { storageConfig: clientRequest.startParameter.storageConfig, recordingFileConfig: clientRequest.startParameter.recordingFileConfig, extensionServiceConfig: clientRequest.startParameter.extensionServiceConfig, }; } return yield this.api.acquire(requestPayload); }); } start(cname, uid, resourceId, clientRequest) { return __awaiter(this, void 0, void 0, function* () { return yield this.api.start(resourceId, types_1.RecordingMode.Web, { uid, cname, clientRequest: { storageConfig: clientRequest.storageConfig, recordingFileConfig: clientRequest.recordingFileConfig, extensionServiceConfig: clientRequest.extensionServiceConfig, }, }); }); } query(resourceId, sid) { return __awaiter(this, void 0, void 0, function* () { const res = yield this.api.query(resourceId, sid, types_1.RecordingMode.Web); return { cname: res.cname, uid: res.uid, sid: res.sid, serverResponse: res.webRecordingServerResponse, }; }); } update(cname, uid, resourceId, sid, clientRequest) { return __awaiter(this, void 0, void 0, function* () { return yield this.api.update(resourceId, sid, types_1.RecordingMode.Web, { cname, uid, clientRequest: { webRecordingConfig: clientRequest.webRecordingConfig, rtmpPublishConfig: clientRequest.rtmpPublishConfig, }, }); }); } stop(cname, uid, resourceId, sid, asyncStop) { return __awaiter(this, void 0, void 0, function* () { return yield this.api.stop(resourceId, sid, types_1.RecordingMode.Web, { cname, uid, clientRequest: { async_stop: asyncStop, }, }, 10000); }); } } exports.WebScenarioClient = WebScenarioClient;