Object.defineProperty(exports, "__esModule", { value: true }); exports.WirecastConnection = void 0; var axios_1 = require("axios"); var WirecastConnection = /** @class */ (function () { function WirecastConnection() { var _this = this; this.shots = { '1': { shots: {} }, '2': { shots: {} }, '3': { shots: {} }, '4': { shots: {} }, '5': { shots: {} } }; this.layers = { '1': { id: null, name: null }, '2': { id: null, name: null }, '3': { id: null, name: null }, '4': { id: null, name: null }, '5': { id: null, name: null } }; this.clockInterval = setInterval(function () { _this.clock(); }, 30000); } WirecastConnection.prototype.destroy = function () { clearInterval(this.clockInterval); }; WirecastConnection.prototype.clock = function () { this.update(); }; WirecastConnection.prototype.update = function () { if (this.ip != undefined && this.port != undefined) { // axios // .get(`http://${this.ip}:${this.port}/api/v2/shots/get`) // .then((response) => { // if (response.data != undefined && response.data.succeed == true) { // this.shots = response.data.shots; // } // }) // .catch(() => {}); // axios // .get(`http://${this.ip}:${this.port}/api/v2/layers/get`) // .then((response) => { // if (response.data != undefined && response.data.succeed == true) { // this.layers = response.data.layers; // } // }) // .catch(() => {}); } }; WirecastConnection.prototype.setHost = function (ip, port) { this.ip = ip; this.port = port; this.update(); }; WirecastConnection.prototype.ping = function (callback) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/ping")) .then(function () { if (callback) callback(true); if (callback == undefined) resolve(); }) .catch(function (error) { if (callback) callback(false); if (callback == undefined) reject(); }); }); }; WirecastConnection.prototype.setShotLiveByID = function (shotID) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/shots/liveByID/").concat(shotID)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject(); }); }); }; WirecastConnection.prototype.clearShotIfLive = function (shotID) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/shots/clearIfLive/").concat(shotID)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject(); }); }); }; WirecastConnection.prototype.clearLayer = function (layerID) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/layers/clear/").concat(layerID)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject(); }); }); }; WirecastConnection.prototype.go = function () { var _this = this; return new Promise(function (resolve, reject) { console.log("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/document/go")); axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/document/go")) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject(); }); }); }; WirecastConnection.prototype.multiShot = function (layer1Shot, layer2Shot, layer3Shot, layer4Shot, layer5Shot) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this .port, "/api/v2/shots/multi/").concat(layer1Shot, "/").concat(layer2Shot, "/").concat(layer3Shot, "/").concat(layer4Shot, "/").concat(layer5Shot)) .then(function (response) { if (response.data.succeed == true) resolve(response.data); else reject(response.data); }) .catch(function (error) { console.log(error); reject({ succeed: false, error: 'Unable to reach Wirecast-Bridge' }); }); }); }; WirecastConnection.prototype.setBroadcasting = function (state) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/document/broadcasting/").concat(state)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject('Unable to reach Wirecast-Bridge'); }); }); }; WirecastConnection.prototype.setRecording = function (state) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/document/recording/").concat(state)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject('Unable to reach Wirecast-Bridge'); }); }); }; WirecastConnection.prototype.setAutoLive = function (state) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/document/autolive/").concat(state)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject('Unable to reach Wirecast-Bridge'); }); }); }; WirecastConnection.prototype.setTransitionSpeed = function (speed) { var _this = this; return new Promise(function (resolve, reject) { axios_1.default .get("http://".concat(_this.ip, ":").concat(_this.port, "/api/v2/document/transitionspeed/").concat(speed)) .then(function (response) { if (response.data.succeed == true) resolve(); else reject(); }) .catch(function (error) { console.log(error); reject('Unable to reach Wirecast-Bridge'); }); }); }; WirecastConnection.prototype.getShots = function (callback) { var _this = this; if (this.ip != undefined && this.port != undefined) { axios_1.default .get("http://".concat(this.ip, ":").concat(this.port, "/api/v2/shots/get")) .then(function (response) { if (response.data != undefined && response.data.succeed == true) { _this.shots = response.data.shots; callback(_this.shots); } }) .catch(function () { }); } }; WirecastConnection.prototype.getShotsList = function (layerIndex, callback) { var _this = this; this.getShots(function () { var list = []; if (layerIndex == undefined) for (var layer in _this.shots) { for (var shot in _this.shots[layer].shots) { list.push(_this.shots[layer].shots[shot]); } } else { for (var shot in _this.shots[layerIndex].shots) { list.push(_this.shots[layerIndex].shots[shot]); } } callback(list); }); }; WirecastConnection.prototype.getLayers = function (callback) { var _this = this; axios_1.default .get("http://".concat(this.ip, ":").concat(this.port, "/api/v2/layers/get")) .then(function (response) { if (response.data != undefined && response.data.succeed == true) { _this.layers = response.data.layers; callback(_this.layers); } }) .catch(function () { }); }; WirecastConnection.prototype.getLayersList = function (callback) { var _this = this; this.getLayers(function () { var list = []; for (var layer in _this.layers) { list.push(_this.layers[layer]); } callback(list); }); }; return WirecastConnection; }()); exports.WirecastConnection = WirecastConnection; //# sourceMappingURL=WirecastConnection.js.map