1 | ;
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
8 |
|
9 | function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
10 |
|
11 | /**
|
12 | * Provides access to the `stream` resource.
|
13 | */
|
14 | var StreamResource = function () {
|
15 | _createClass(StreamResource, null, [{
|
16 | key: "PATH",
|
17 |
|
18 | /**
|
19 | * The path to the `stream` resource.
|
20 | */
|
21 | get: function get() {
|
22 | return "/v1/calls/{call_uuid}/stream";
|
23 | }
|
24 |
|
25 | /**
|
26 | * Creates a new StreamResource.
|
27 | *
|
28 | * @param {Credentials} creds - Credentials used when interacting with the Nexmo API.
|
29 | * @param {Object} options - additional options for the class.
|
30 | */
|
31 |
|
32 | }]);
|
33 |
|
34 | function StreamResource(creds, options) {
|
35 | _classCallCheck(this, StreamResource);
|
36 |
|
37 | this.creds = creds;
|
38 | this.options = options;
|
39 | }
|
40 |
|
41 | /**
|
42 | * Starts a stream in a call.
|
43 | *
|
44 | * @param {Object} params - Parameters used when starting the stream. See https://developer.nexmo.com/api/voice#stream for more information.
|
45 | * @param {function} callback - function to be called when the request completes.
|
46 | */
|
47 |
|
48 |
|
49 | _createClass(StreamResource, [{
|
50 | key: "start",
|
51 | value: function start(callId, params, callback) {
|
52 | params = JSON.stringify(params);
|
53 |
|
54 | var config = {
|
55 | host: this.options.apiHost || "api.nexmo.com",
|
56 | path: StreamResource.PATH.replace("{call_uuid}", callId),
|
57 | method: "PUT",
|
58 | body: params,
|
59 | headers: {
|
60 | "Content-Type": "application/json",
|
61 | "Content-Length": Buffer.byteLength(params),
|
62 | Authorization: "Bearer " + this.creds.generateJwt()
|
63 | }
|
64 | };
|
65 | this.options.httpClient.request(config, callback);
|
66 | }
|
67 |
|
68 | /**
|
69 | * Stop a stream in a call.
|
70 | *
|
71 | * @param {string} callId - The unique identifier for the call for the stream to be stopped in.
|
72 | * @param {function} callback - function to be called when the request completes.
|
73 | */
|
74 |
|
75 | }, {
|
76 | key: "stop",
|
77 | value: function stop(callId, callback) {
|
78 | var config = {
|
79 | host: this.options.apiHost || "api.nexmo.com",
|
80 | path: StreamResource.PATH.replace("{call_uuid}", callId),
|
81 | method: "DELETE",
|
82 | headers: {
|
83 | "Content-Type": "application/json",
|
84 | Authorization: "Bearer " + this.creds.generateJwt()
|
85 | }
|
86 | };
|
87 | this.options.httpClient.request(config, callback);
|
88 | }
|
89 | }]);
|
90 |
|
91 | return StreamResource;
|
92 | }();
|
93 |
|
94 | exports.default = StreamResource;
|
95 | module.exports = exports["default"];
|
96 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9TdHJlYW1SZXNvdXJjZS5qcyJdLCJuYW1lcyI6WyJTdHJlYW1SZXNvdXJjZSIsImNyZWRzIiwib3B0aW9ucyIsImNhbGxJZCIsInBhcmFtcyIsImNhbGxiYWNrIiwiSlNPTiIsInN0cmluZ2lmeSIsImNvbmZpZyIsImhvc3QiLCJhcGlIb3N0IiwicGF0aCIsIlBBVEgiLCJyZXBsYWNlIiwibWV0aG9kIiwiYm9keSIsImhlYWRlcnMiLCJCdWZmZXIiLCJieXRlTGVuZ3RoIiwiQXV0aG9yaXphdGlvbiIsImdlbmVyYXRlSnd0IiwiaHR0cENsaWVudCIsInJlcXVlc3QiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTs7O0lBR01BLGM7Ozs7QUFDSjs7O3dCQUdrQjtBQUNoQixhQUFPLDhCQUFQO0FBQ0Q7O0FBRUQ7Ozs7Ozs7OztBQU1BLDBCQUFZQyxLQUFaLEVBQW1CQyxPQUFuQixFQUE0QjtBQUFBOztBQUMxQixTQUFLRCxLQUFMLEdBQWFBLEtBQWI7QUFDQSxTQUFLQyxPQUFMLEdBQWVBLE9BQWY7QUFDRDs7QUFFRDs7Ozs7Ozs7OzswQkFNTUMsTSxFQUFRQyxNLEVBQVFDLFEsRUFBVTtBQUM5QkQsZUFBU0UsS0FBS0MsU0FBTCxDQUFlSCxNQUFmLENBQVQ7O0FBRUEsVUFBSUksU0FBUztBQUNYQyxjQUFNLEtBQUtQLE9BQUwsQ0FBYVEsT0FBYixJQUF3QixlQURuQjtBQUVYQyxjQUFNWCxlQUFlWSxJQUFmLENBQW9CQyxPQUFwQixDQUE0QixhQUE1QixFQUEyQ1YsTUFBM0MsQ0FGSztBQUdYVyxnQkFBUSxLQUhHO0FBSVhDLGNBQU1YLE1BSks7QUFLWFksaUJBQVM7QUFDUCwwQkFBZ0Isa0JBRFQ7QUFFUCw0QkFBa0JDLE9BQU9DLFVBQVAsQ0FBa0JkLE1BQWxCLENBRlg7QUFHUGUscUNBQXlCLEtBQUtsQixLQUFMLENBQVdtQixXQUFYO0FBSGxCO0FBTEUsT0FBYjtBQVdBLFdBQUtsQixPQUFMLENBQWFtQixVQUFiLENBQXdCQyxPQUF4QixDQUFnQ2QsTUFBaEMsRUFBd0NILFFBQXhDO0FBQ0Q7O0FBRUQ7Ozs7Ozs7Ozt5QkFNS0YsTSxFQUFRRSxRLEVBQVU7QUFDckIsVUFBSUcsU0FBUztBQUNYQyxjQUFNLEtBQUtQLE9BQUwsQ0FBYVEsT0FBYixJQUF3QixlQURuQjtBQUVYQyxjQUFNWCxlQUFlWSxJQUFmLENBQW9CQyxPQUFwQixDQUE0QixhQUE1QixFQUEyQ1YsTUFBM0MsQ0FGSztBQUdYVyxnQkFBUSxRQUhHO0FBSVhFLGlCQUFTO0FBQ1AsMEJBQWdCLGtCQURUO0FBRVBHLHFDQUF5QixLQUFLbEIsS0FBTCxDQUFXbUIsV0FBWDtBQUZsQjtBQUpFLE9BQWI7QUFTQSxXQUFLbEIsT0FBTCxDQUFhbUIsVUFBYixDQUF3QkMsT0FBeEIsQ0FBZ0NkLE1BQWhDLEVBQXdDSCxRQUF4QztBQUNEOzs7Ozs7a0JBR1lMLGMiLCJmaWxlIjoiU3RyZWFtUmVzb3VyY2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFByb3ZpZGVzIGFjY2VzcyB0byB0aGUgYHN0cmVhbWAgcmVzb3VyY2UuXG4gKi9cbmNsYXNzIFN0cmVhbVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHRoZSBgc3RyZWFtYCByZXNvdXJjZS5cbiAgICovXG4gIHN0YXRpYyBnZXQgUEFUSCgpIHtcbiAgICByZXR1cm4gXCIvdjEvY2FsbHMve2NhbGxfdXVpZH0vc3RyZWFtXCI7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBTdHJlYW1SZXNvdXJjZS5cbiAgICpcbiAgICogQHBhcmFtIHtDcmVkZW50aWFsc30gY3JlZHMgLSBDcmVkZW50aWFscyB1c2VkIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgTmV4bW8gQVBJLlxuICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyAtIGFkZGl0aW9uYWwgb3B0aW9ucyBmb3IgdGhlIGNsYXNzLlxuICAgKi9cbiAgY29uc3RydWN0b3IoY3JlZHMsIG9wdGlvbnMpIHtcbiAgICB0aGlzLmNyZWRzID0gY3JlZHM7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBzdHJlYW0gaW4gYSBjYWxsLlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zIC0gUGFyYW1ldGVycyB1c2VkIHdoZW4gc3RhcnRpbmcgdGhlIHN0cmVhbS4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm5leG1vLmNvbS9hcGkvdm9pY2Ujc3RyZWFtIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9ufSBjYWxsYmFjayAtIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSByZXF1ZXN0IGNvbXBsZXRlcy5cbiAgICovXG4gIHN0YXJ0KGNhbGxJZCwgcGFyYW1zLCBjYWxsYmFjaykge1xuICAgIHBhcmFtcyA9IEpTT04uc3RyaW5naWZ5KHBhcmFtcyk7XG5cbiAgICB2YXIgY29uZmlnID0ge1xuICAgICAgaG9zdDogdGhpcy5vcHRpb25zLmFwaUhvc3QgfHwgXCJhcGkubmV4bW8uY29tXCIsXG4gICAgICBwYXRoOiBTdHJlYW1SZXNvdXJjZS5QQVRILnJlcGxhY2UoXCJ7Y2FsbF91dWlkfVwiLCBjYWxsSWQpLFxuICAgICAgbWV0aG9kOiBcIlBVVFwiLFxuICAgICAgYm9keTogcGFyYW1zLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgXCJDb250ZW50LUxlbmd0aFwiOiBCdWZmZXIuYnl0ZUxlbmd0aChwYXJhbXMpLFxuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dGhpcy5jcmVkcy5nZW5lcmF0ZUp3dCgpfWBcbiAgICAgIH1cbiAgICB9O1xuICAgIHRoaXMub3B0aW9ucy5odHRwQ2xpZW50LnJlcXVlc3QoY29uZmlnLCBjYWxsYmFjayk7XG4gIH1cblxuICAvKipcbiAgICogU3RvcCBhIHN0cmVhbSBpbiBhIGNhbGwuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjYWxsSWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBjYWxsIGZvciB0aGUgc3RyZWFtIHRvIGJlIHN0b3BwZWQgaW4uXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb259IGNhbGxiYWNrIC0gZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHJlcXVlc3QgY29tcGxldGVzLlxuICAgKi9cbiAgc3RvcChjYWxsSWQsIGNhbGxiYWNrKSB7XG4gICAgdmFyIGNvbmZpZyA9IHtcbiAgICAgIGhvc3Q6IHRoaXMub3B0aW9ucy5hcGlIb3N0IHx8IFwiYXBpLm5leG1vLmNvbVwiLFxuICAgICAgcGF0aDogU3RyZWFtUmVzb3VyY2UuUEFUSC5yZXBsYWNlKFwie2NhbGxfdXVpZH1cIiwgY2FsbElkKSxcbiAgICAgIG1ldGhvZDogXCJERUxFVEVcIixcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXG4gICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0aGlzLmNyZWRzLmdlbmVyYXRlSnd0KCl9YFxuICAgICAgfVxuICAgIH07XG4gICAgdGhpcy5vcHRpb25zLmh0dHBDbGllbnQucmVxdWVzdChjb25maWcsIGNhbGxiYWNrKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTdHJlYW1SZXNvdXJjZTtcbiJdfQ== |
\ | No newline at end of file |