287 lines
11 KiB
JavaScript
287 lines
11 KiB
JavaScript
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
|