UNPKG

8.11 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _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
9var _index = require("./index");
10
11var _index2 = _interopRequireDefault(_index);
12
13function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
15function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
16
17/**
18 * Provides access to the `members` resource.
19 */
20var Members = function () {
21 _createClass(Members, null, [{
22 key: "PATH",
23
24 /**
25 * The path to the `members` resource.
26 */
27 get: function get() {
28 return "/beta/conversations/{conversation_uuid}/members";
29 }
30
31 /**
32 * Creates a new Members.
33 *
34 * @param {Credentials} creds - Credentials used when interacting with the Nexmo API.
35 * @param {Object} options - additional options for the class.
36 */
37
38 }]);
39
40 function Members(creds, options) {
41 _classCallCheck(this, Members);
42
43 this.creds = creds;
44 this.options = options;
45
46 this._nexmo = this.options.nexmoOverride || _index2.default;
47 }
48
49 /**
50 * Adds a member to a conversation.
51 *
52 * @param {string} [conversationId] - The unique identifier for the conversation
53 * @param {Object} params - Parameters used when adding a member to the conversation. See https://ea.developer.nexmo.com/api/conversation#add-a-user-to-a-conversation for more information.
54 * @param {function} callback - function to be called when the request completes.
55 */
56
57
58 _createClass(Members, [{
59 key: "add",
60 value: function add(conversationId, params, callback) {
61 params = JSON.stringify(params);
62
63 var config = {
64 host: "api.nexmo.com",
65 path: Members.PATH.replace("{conversation_uuid}", conversationId),
66 method: "POST",
67 body: params,
68 headers: {
69 "Content-Type": "application/json",
70 Authorization: "Bearer " + this.creds.generateJwt()
71 }
72 };
73 this.options.httpClient.request(config, callback);
74 }
75
76 /**
77 * Get an existing member.
78 *
79 * @param {string} [conversationId] - The unique identifier for the conversation
80 * @param {string|object} query - The unique identifier for the member to retrieve
81 * or a set of filter parameters for the query. For more information
82 * see https://ea.developer.nexmo.com/api/conversation#retrieve-members-of-a-conversation
83 * @param {function} callback - function to be called when the request completes.
84 */
85
86 }, {
87 key: "get",
88 value: function get(conversationId, query, callback) {
89 this._nexmo.getWithQuery(Members.PATH.replace("{conversation_uuid}", conversationId), query, this.creds, this.options, callback);
90 }
91 }]);
92
93 return Members;
94}();
95
96exports.default = Members;
97module.exports = exports["default"];
98//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9NZW1iZXJzLmpzIl0sIm5hbWVzIjpbIk1lbWJlcnMiLCJjcmVkcyIsIm9wdGlvbnMiLCJfbmV4bW8iLCJuZXhtb092ZXJyaWRlIiwiY29udmVyc2F0aW9uSWQiLCJwYXJhbXMiLCJjYWxsYmFjayIsIkpTT04iLCJzdHJpbmdpZnkiLCJjb25maWciLCJob3N0IiwicGF0aCIsIlBBVEgiLCJyZXBsYWNlIiwibWV0aG9kIiwiYm9keSIsImhlYWRlcnMiLCJBdXRob3JpemF0aW9uIiwiZ2VuZXJhdGVKd3QiLCJodHRwQ2xpZW50IiwicmVxdWVzdCIsInF1ZXJ5IiwiZ2V0V2l0aFF1ZXJ5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBOzs7Ozs7OztBQUVBOzs7SUFHTUEsTzs7OztBQUNKOzs7d0JBR2tCO0FBQ2hCLGFBQU8saURBQVA7QUFDRDs7QUFFRDs7Ozs7Ozs7O0FBTUEsbUJBQVlDLEtBQVosRUFBbUJDLE9BQW5CLEVBQTRCO0FBQUE7O0FBQzFCLFNBQUtELEtBQUwsR0FBYUEsS0FBYjtBQUNBLFNBQUtDLE9BQUwsR0FBZUEsT0FBZjs7QUFFQSxTQUFLQyxNQUFMLEdBQWMsS0FBS0QsT0FBTCxDQUFhRSxhQUFiLG1CQUFkO0FBQ0Q7O0FBRUQ7Ozs7Ozs7Ozs7O3dCQU9JQyxjLEVBQWdCQyxNLEVBQVFDLFEsRUFBVTtBQUNwQ0QsZUFBU0UsS0FBS0MsU0FBTCxDQUFlSCxNQUFmLENBQVQ7O0FBRUEsVUFBSUksU0FBUztBQUNYQyxjQUFNLGVBREs7QUFFWEMsY0FBTVosUUFBUWEsSUFBUixDQUFhQyxPQUFiLENBQXFCLHFCQUFyQixFQUE0Q1QsY0FBNUMsQ0FGSztBQUdYVSxnQkFBUSxNQUhHO0FBSVhDLGNBQU1WLE1BSks7QUFLWFcsaUJBQVM7QUFDUCwwQkFBZ0Isa0JBRFQ7QUFFUEMscUNBQXlCLEtBQUtqQixLQUFMLENBQVdrQixXQUFYO0FBRmxCO0FBTEUsT0FBYjtBQVVBLFdBQUtqQixPQUFMLENBQWFrQixVQUFiLENBQXdCQyxPQUF4QixDQUFnQ1gsTUFBaEMsRUFBd0NILFFBQXhDO0FBQ0Q7O0FBRUQ7Ozs7Ozs7Ozs7Ozt3QkFTSUYsYyxFQUFnQmlCLEssRUFBT2YsUSxFQUFVO0FBQ25DLFdBQUtKLE1BQUwsQ0FBWW9CLFlBQVosQ0FDRXZCLFFBQVFhLElBQVIsQ0FBYUMsT0FBYixDQUFxQixxQkFBckIsRUFBNENULGNBQTVDLENBREYsRUFFRWlCLEtBRkYsRUFHRSxLQUFLckIsS0FIUCxFQUlFLEtBQUtDLE9BSlAsRUFLRUssUUFMRjtBQU9EOzs7Ozs7a0JBR1lQLE8iLCJmaWxlIjoiTWVtYmVycy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBuZXhtbyBmcm9tIFwiLi9pbmRleFwiO1xuXG4vKipcbiAqIFByb3ZpZGVzIGFjY2VzcyB0byB0aGUgYG1lbWJlcnNgIHJlc291cmNlLlxuICovXG5jbGFzcyBNZW1iZXJzIHtcbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHRoZSBgbWVtYmVyc2AgcmVzb3VyY2UuXG4gICAqL1xuICBzdGF0aWMgZ2V0IFBBVEgoKSB7XG4gICAgcmV0dXJuIFwiL2JldGEvY29udmVyc2F0aW9ucy97Y29udmVyc2F0aW9uX3V1aWR9L21lbWJlcnNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IE1lbWJlcnMuXG4gICAqXG4gICAqIEBwYXJhbSB7Q3JlZGVudGlhbHN9IGNyZWRzIC0gQ3JlZGVudGlhbHMgdXNlZCB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIE5leG1vIEFQSS5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgLSBhZGRpdGlvbmFsIG9wdGlvbnMgZm9yIHRoZSBjbGFzcy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGNyZWRzLCBvcHRpb25zKSB7XG4gICAgdGhpcy5jcmVkcyA9IGNyZWRzO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG5cbiAgICB0aGlzLl9uZXhtbyA9IHRoaXMub3B0aW9ucy5uZXhtb092ZXJyaWRlIHx8IG5leG1vO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBtZW1iZXIgdG8gYSBjb252ZXJzYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbY29udmVyc2F0aW9uSWRdIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29udmVyc2F0aW9uXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXMgLSBQYXJhbWV0ZXJzIHVzZWQgd2hlbiBhZGRpbmcgYSBtZW1iZXIgdG8gdGhlIGNvbnZlcnNhdGlvbi4gU2VlIGh0dHBzOi8vZWEuZGV2ZWxvcGVyLm5leG1vLmNvbS9hcGkvY29udmVyc2F0aW9uI2FkZC1hLXVzZXItdG8tYS1jb252ZXJzYXRpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb259IGNhbGxiYWNrIC0gZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHJlcXVlc3QgY29tcGxldGVzLlxuICAgKi9cbiAgYWRkKGNvbnZlcnNhdGlvbklkLCBwYXJhbXMsIGNhbGxiYWNrKSB7XG4gICAgcGFyYW1zID0gSlNPTi5zdHJpbmdpZnkocGFyYW1zKTtcblxuICAgIHZhciBjb25maWcgPSB7XG4gICAgICBob3N0OiBcImFwaS5uZXhtby5jb21cIixcbiAgICAgIHBhdGg6IE1lbWJlcnMuUEFUSC5yZXBsYWNlKFwie2NvbnZlcnNhdGlvbl91dWlkfVwiLCBjb252ZXJzYXRpb25JZCksXG4gICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgYm9keTogcGFyYW1zLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuY3JlZHMuZ2VuZXJhdGVKd3QoKX1gXG4gICAgICB9XG4gICAgfTtcbiAgICB0aGlzLm9wdGlvbnMuaHR0cENsaWVudC5yZXF1ZXN0KGNvbmZpZywgY2FsbGJhY2spO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBleGlzdGluZyBtZW1iZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbY29udmVyc2F0aW9uSWRdIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29udmVyc2F0aW9uXG4gICAqIEBwYXJhbSB7c3RyaW5nfG9iamVjdH0gcXVlcnkgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBtZW1iZXIgdG8gcmV0cmlldmVcbiAgICogICAgICAgICAgICAgICBvciBhIHNldCBvZiBmaWx0ZXIgcGFyYW1ldGVycyBmb3IgdGhlIHF1ZXJ5LiBGb3IgbW9yZSBpbmZvcm1hdGlvblxuICAgKiAgICAgICAgICAgICAgIHNlZSBodHRwczovL2VhLmRldmVsb3Blci5uZXhtby5jb20vYXBpL2NvbnZlcnNhdGlvbiNyZXRyaWV2ZS1tZW1iZXJzLW9mLWEtY29udmVyc2F0aW9uXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb259IGNhbGxiYWNrIC0gZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHJlcXVlc3QgY29tcGxldGVzLlxuICAgKi9cbiAgZ2V0KGNvbnZlcnNhdGlvbklkLCBxdWVyeSwgY2FsbGJhY2spIHtcbiAgICB0aGlzLl9uZXhtby5nZXRXaXRoUXVlcnkoXG4gICAgICBNZW1iZXJzLlBBVEgucmVwbGFjZShcIntjb252ZXJzYXRpb25fdXVpZH1cIiwgY29udmVyc2F0aW9uSWQpLFxuICAgICAgcXVlcnksXG4gICAgICB0aGlzLmNyZWRzLFxuICAgICAgdGhpcy5vcHRpb25zLFxuICAgICAgY2FsbGJhY2tcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1lbWJlcnM7XG4iXX0=
\No newline at end of file