quickblox 2.15.1 → 2.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +3 -3
- package/quickblox.js +18881 -18974
- package/quickblox.min.js +1 -1
- package/src/modules/chat/qbChat.js +98 -185
- package/src/modules/chat/qbDialog.js +12 -12
- package/src/modules/chat/qbMessage.js +18 -18
- package/src/modules/qbAddressBook.js +4 -4
- package/src/modules/qbContent.js +71 -71
- package/src/modules/qbData.js +65 -66
- package/src/modules/qbPushNotifications.js +77 -73
- package/src/modules/qbUsers.js +77 -77
- package/src/modules/webrtc/qbRTCPeerConnection.js +30 -4
- package/src/modules/webrtc/qbWebRTCClient.js +28 -15
- package/src/modules/webrtc/qbWebRTCSession.js +80 -50
- package/src/plugins/streamManagement.js +11 -8
- package/src/qbConfig.js +3 -2
- package/src/qbMain.js +17 -16
- package/src/qbUtils.js +5 -1
package/src/modules/qbUsers.js
CHANGED
|
@@ -25,21 +25,21 @@ function UsersProxy(service) {
|
|
|
25
25
|
UsersProxy.prototype = {
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
|
-
* Call this API to get a list of current users of you app. By default it returns upto 10 users, but you can change this by adding pagination parameters. You can filter the list of users by supplying a filter string. You can sort results by ask/desc
|
|
28
|
+
* Call this API to get a list of current users of you app. By default it returns upto 10 users, but you can change this by adding pagination parameters. You can filter the list of users by supplying a filter string. You can sort results by ask/desc({@link https://docs.quickblox.com/docs/js-users#retrieve-users read more}).
|
|
29
29
|
* @memberof QB.users
|
|
30
|
-
* @param {object} params - Object of parameters
|
|
31
|
-
* @param {number} [params.page=1] - Used to paginate the results when more than one page of users retrieved
|
|
32
|
-
* @param {number} [params.per_page=10] - The maximum number of users to return per page, if not specified then the default is 10
|
|
33
|
-
* @param {string} [params.filter] - You can filter the list of users by supplying a {@link https://quickblox.com/
|
|
34
|
-
* @param {string} [params.order] - Parameter to sort results. Possible values: asc and desc. Allowed fields' types: string,number,date. Allowed fields: id, full_name, email, login, phone, website, created_at, updated_at, last_request_at, external_user_id, twitter_id, twitter_digits_id, facebook_id ('asc+date+created_at' (format is 'sort_type+field_type+field_name'))
|
|
35
|
-
* @param {listUsersCallback} callback - The listUsersCallback function
|
|
30
|
+
* @param {object} params - Object of parameters.
|
|
31
|
+
* @param {number} [params.page=1] - Used to paginate the results when more than one page of users retrieved.
|
|
32
|
+
* @param {number} [params.per_page=10] - The maximum number of users to return per page, if not specified then the default is 10.
|
|
33
|
+
* @param {string} [params.filter] - You can filter the list of users by supplying a {@link https://docs.quickblox.com/docs/js-users#search-operators filter string}. Possible operators: gt, lt, ge, le, eq, ne, between, in. Allowed fields' types: string,number,date. Allowed fields: id, full_name, email, login, phone, website, created_at, updated_at, last_request_at, external_user_id, twitter_id, twitter_digits_id, facebook_id (example: 'field_type+field_name+operator+value').
|
|
34
|
+
* @param {string} [params.order] - Parameter to sort results. Possible values: asc and desc. Allowed fields' types: string,number,date. Allowed fields: id, full_name, email, login, phone, website, created_at, updated_at, last_request_at, external_user_id, twitter_id, twitter_digits_id, facebook_id ('asc+date+created_at' (format is 'sort_type+field_type+field_name')).
|
|
35
|
+
* @param {listUsersCallback} callback - The listUsersCallback function.
|
|
36
36
|
*/
|
|
37
37
|
listUsers: function(params, callback) {
|
|
38
38
|
/**
|
|
39
|
-
* Callback for QB.users.listUsers(params, callback)
|
|
39
|
+
* Callback for QB.users.listUsers(params, callback).
|
|
40
40
|
* @callback listUsersCallback
|
|
41
|
-
* @param {object} error - The error object
|
|
42
|
-
* @param {object} response - Object with Array of users
|
|
41
|
+
* @param {object} error - The error object.
|
|
42
|
+
* @param {object} response - Object with Array of users.
|
|
43
43
|
*/
|
|
44
44
|
var message = {}, filters = [], item;
|
|
45
45
|
|
|
@@ -78,20 +78,20 @@ UsersProxy.prototype = {
|
|
|
78
78
|
},
|
|
79
79
|
|
|
80
80
|
/**
|
|
81
|
-
* Retrieve a specific user or users
|
|
81
|
+
* Retrieve a specific user or users.
|
|
82
82
|
* @memberof QB.users
|
|
83
|
-
* @param {(number|object)} params -
|
|
84
|
-
* @param {string} params.login - The login of the user to be retrieved
|
|
85
|
-
* @param {string} params.full_name - The full name of users to be retrieved
|
|
86
|
-
* @param {string} params.facebook_id - The user's facebook uid
|
|
87
|
-
* @param {string} params.twitter_id - The user's twitter uid
|
|
88
|
-
* @param {string} params.phone - The user's phone number
|
|
89
|
-
* @param {string} params.email - The user's email address
|
|
90
|
-
* @param {(string|string[])} params.tags - A comma separated list of tags associated with users
|
|
91
|
-
* @param {(number|string)} params.external - An uid that represents the user in an external user registry
|
|
92
|
-
* @param {string} [params.page=1] - Used to paginate the results when more than one page of users retrieved (can be used with get by 'full_name' or 'tags')
|
|
93
|
-
* @param {string} [params.per_page=10] - The maximum number of users to return per page, if not specified then the default is 10 (can be used with get by 'full_name' or 'tags')
|
|
94
|
-
* @param {getUsersCallback} callback - The getUsersCallback function
|
|
83
|
+
* @param {(number|object)} params - User ID (number) or object of parameters (object with one of next required properties).
|
|
84
|
+
* @param {string} params.login - The login of the user to be retrieved({@link https://docs.quickblox.com/docs/js-users#retrieve-user-by-login read more}).
|
|
85
|
+
* @param {string} params.full_name - The full name of users to be retrieved({@link https://docs.quickblox.com/docs/js-users#retrieve-users-by-full-name read more}).
|
|
86
|
+
* @param {string} params.facebook_id - The user's facebook uid.
|
|
87
|
+
* @param {string} params.twitter_id - The user's twitter uid.
|
|
88
|
+
* @param {string} params.phone - The user's phone number({@link https://docs.quickblox.com/docs/js-users#retrieve-users-by-phone-number read more}).
|
|
89
|
+
* @param {string} params.email - The user's email address({@link https://docs.quickblox.com/docs/js-users#retrieve-user-by-email read more}).
|
|
90
|
+
* @param {(string|string[])} params.tags - A comma separated list of tags associated with users({@link https://docs.quickblox.com/docs/js-users#retrieve-users-by-tags read more}).
|
|
91
|
+
* @param {(number|string)} params.external - An uid that represents the user in an external user registry({@link https://docs.quickblox.com/docs/js-users#retrieve-user-by-external-user-id read more}).
|
|
92
|
+
* @param {string} [params.page=1] - Used to paginate the results when more than one page of users retrieved (can be used with get by 'full_name' or 'tags').
|
|
93
|
+
* @param {string} [params.per_page=10] - The maximum number of users to return per page, if not specified then the default is 10 (can be used with get by 'full_name' or 'tags').
|
|
94
|
+
* @param {getUsersCallback} callback - The getUsersCallback function.
|
|
95
95
|
* @example
|
|
96
96
|
* var params = {'email': 'example-email@gmail.com'};
|
|
97
97
|
*
|
|
@@ -116,10 +116,10 @@ UsersProxy.prototype = {
|
|
|
116
116
|
*/
|
|
117
117
|
get: function(params, callback) {
|
|
118
118
|
/**
|
|
119
|
-
* Callback for QB.users.get(params, callback)
|
|
119
|
+
* Callback for QB.users.get(params, callback).
|
|
120
120
|
* @callback getUsersCallback
|
|
121
|
-
* @param {object} error - The error object
|
|
122
|
-
* @param {object} response - The user object or object with Array of users
|
|
121
|
+
* @param {object} error - The error object.
|
|
122
|
+
* @param {object} response - The user object or object with Array of users.
|
|
123
123
|
*/
|
|
124
124
|
var url;
|
|
125
125
|
|
|
@@ -158,29 +158,29 @@ UsersProxy.prototype = {
|
|
|
158
158
|
},
|
|
159
159
|
|
|
160
160
|
/**
|
|
161
|
-
* Registers a new app user. Call this API to register a user for the app. You must provide either a user login or email address along with their password, passing both email address and login is permitted but not required
|
|
161
|
+
* Registers a new app user. Call this API to register a user for the app. You must provide either a user login or email address along with their password, passing both email address and login is permitted but not required({@link https://docs.quickblox.com/docs/js-users#create-user read more}).
|
|
162
162
|
* @memberof QB.users
|
|
163
|
-
* @param {object} params -
|
|
164
|
-
* @param {string} params.login - The user's login name
|
|
165
|
-
* @param {string} params.password - The user's password for this app
|
|
166
|
-
* @param {string} params.email - The user's email address
|
|
167
|
-
* @param {string} [params.full_name] - The user's full name
|
|
168
|
-
* @param {string} [params.phone] - The user's phone number
|
|
169
|
-
* @param {string} [params.website] - The user's web address, or other url
|
|
170
|
-
* @param {string} [params.facebook_id] - The user's facebook uid
|
|
171
|
-
* @param {string} [params.twitter_id] - The user's twitter uid
|
|
172
|
-
* @param {number} [params.blob_id] - The id of an associated blob for this user, for example their photo
|
|
173
|
-
* @param {(number|string)} [params.external_user_id] - An uid that represents the user in an external user registry
|
|
174
|
-
* @param {(string|string[])} [params.tag_list] - A comma separated list of tags associated with the user. Set up user tags and address them separately in your app
|
|
175
|
-
* @param {string} [params.custom_data] - The user's additional info
|
|
176
|
-
* @param {createUserCallback} callback - The createUserCallback function
|
|
163
|
+
* @param {object} params - Object of user's parameters.
|
|
164
|
+
* @param {string} params.login - The user's login name.
|
|
165
|
+
* @param {string} params.password - The user's password for this app.
|
|
166
|
+
* @param {string} params.email - The user's email address.
|
|
167
|
+
* @param {string} [params.full_name] - The user's full name.
|
|
168
|
+
* @param {string} [params.phone] - The user's phone number.
|
|
169
|
+
* @param {string} [params.website] - The user's web address, or other url.
|
|
170
|
+
* @param {string} [params.facebook_id] - The user's facebook uid.
|
|
171
|
+
* @param {string} [params.twitter_id] - The user's twitter uid.
|
|
172
|
+
* @param {number} [params.blob_id] - The id of an associated blob for this user, for example their photo.
|
|
173
|
+
* @param {(number|string)} [params.external_user_id] - An uid that represents the user in an external user registry.
|
|
174
|
+
* @param {(string|string[])} [params.tag_list] - A comma separated list of tags associated with the user. Set up user tags and address them separately in your app.
|
|
175
|
+
* @param {string} [params.custom_data] - The user's additional info.
|
|
176
|
+
* @param {createUserCallback} callback - The createUserCallback function.
|
|
177
177
|
*/
|
|
178
178
|
create: function(params, callback) {
|
|
179
179
|
/**
|
|
180
|
-
* Callback for QB.users.create(params, callback)
|
|
180
|
+
* Callback for QB.users.create(params, callback).
|
|
181
181
|
* @callback createUserCallback
|
|
182
|
-
* @param {object} error - The error object
|
|
183
|
-
* @param {object} response - The user object
|
|
182
|
+
* @param {object} error - The error object.
|
|
183
|
+
* @param {object} response - The user object.
|
|
184
184
|
*/
|
|
185
185
|
this.service.ajax({url: Utils.getUrl(config.urls.users), type: 'POST', data: {user: params}},
|
|
186
186
|
function(err, res) {
|
|
@@ -193,31 +193,31 @@ UsersProxy.prototype = {
|
|
|
193
193
|
},
|
|
194
194
|
|
|
195
195
|
/**
|
|
196
|
-
* Update current user. In normal usage, nobody except the user is allowed to modify their own data. Any fields you don’t specify will remain unchanged, so you can update just a subset of the user’s data. login/email and password may be changed, but the new login/email must not already be in use
|
|
196
|
+
* Update current user. In normal usage, nobody except the user is allowed to modify their own data. Any fields you don’t specify will remain unchanged, so you can update just a subset of the user’s data. login/email and password may be changed, but the new login/email must not already be in use({@link https://docs.quickblox.com/docs/js-users#update-user read more}).
|
|
197
197
|
* @memberof QB.users
|
|
198
|
-
* @param {number} id - The id of user to update
|
|
199
|
-
* @param {object} params - object of user's parameters
|
|
200
|
-
* @param {string} [params.login] - The user's login name
|
|
201
|
-
* @param {string} [params.old_password] - The user's old password for this app
|
|
202
|
-
* @param {string} [params.password] - The user's new password for this app
|
|
203
|
-
* @param {string} [params.email] - The user's email address
|
|
204
|
-
* @param {string} [params.full_name] - The user's full name
|
|
205
|
-
* @param {string} [params.phone] - The user's phone number
|
|
206
|
-
* @param {string} [params.website] - The user's web address, or other url
|
|
207
|
-
* @param {string} [params.facebook_id] - The user's facebook uid
|
|
208
|
-
* @param {string} [params.twitter_id] - The user's twitter uid
|
|
209
|
-
* @param {number} [params.blob_id] - The id of an associated blob for this user, for example their photo
|
|
210
|
-
* @param {(number|string)} [params.external_user_id] - An uid that represents the user in an external user registry
|
|
211
|
-
* @param {(string|string[])} [params.tag_list] - A comma separated list of tags associated with the user. Set up user tags and address them separately in your app
|
|
212
|
-
* @param {string} [params.custom_data] - The user's additional info
|
|
213
|
-
* @param {updateUserCallback} callback - The updateUserCallback function
|
|
198
|
+
* @param {number} id - The id of user to update.
|
|
199
|
+
* @param {object} params - object of user's parameters.
|
|
200
|
+
* @param {string} [params.login] - The user's login name.
|
|
201
|
+
* @param {string} [params.old_password] - The user's old password for this app.
|
|
202
|
+
* @param {string} [params.password] - The user's new password for this app.
|
|
203
|
+
* @param {string} [params.email] - The user's email address.
|
|
204
|
+
* @param {string} [params.full_name] - The user's full name.
|
|
205
|
+
* @param {string} [params.phone] - The user's phone number.
|
|
206
|
+
* @param {string} [params.website] - The user's web address, or other url.
|
|
207
|
+
* @param {string} [params.facebook_id] - The user's facebook uid.
|
|
208
|
+
* @param {string} [params.twitter_id] - The user's twitter uid.
|
|
209
|
+
* @param {number} [params.blob_id] - The id of an associated blob for this user, for example their photo.
|
|
210
|
+
* @param {(number|string)} [params.external_user_id] - An uid that represents the user in an external user registry.
|
|
211
|
+
* @param {(string|string[])} [params.tag_list] - A comma separated list of tags associated with the user. Set up user tags and address them separately in your app.
|
|
212
|
+
* @param {string} [params.custom_data] - The user's additional info.
|
|
213
|
+
* @param {updateUserCallback} callback - The updateUserCallback function.
|
|
214
214
|
*/
|
|
215
215
|
update: function(id, params, callback) {
|
|
216
216
|
/**
|
|
217
|
-
* Callback for QB.users.update(id, params, callback)
|
|
217
|
+
* Callback for QB.users.update(id, params, callback).
|
|
218
218
|
* @callback updateUserCallback
|
|
219
|
-
* @param {object} error - The error object
|
|
220
|
-
* @param {object} response - The user object
|
|
219
|
+
* @param {object} error - The error object.
|
|
220
|
+
* @param {object} response - The user object.
|
|
221
221
|
*/
|
|
222
222
|
this.service.ajax({url: Utils.getUrl(config.urls.users, id), type: 'PUT', data: {user: params}},
|
|
223
223
|
function(err, res) {
|
|
@@ -230,11 +230,11 @@ UsersProxy.prototype = {
|
|
|
230
230
|
},
|
|
231
231
|
|
|
232
232
|
/**
|
|
233
|
-
* Remove a user from the app, {@
|
|
233
|
+
* Remove a user from the app, {@linkhttps://docs.quickblox.com/docs/js-users#delete-user by user's id} or uid that represents the user in an external user registry.
|
|
234
234
|
* @memberof QB.users
|
|
235
|
-
* @param {(number|object)} params - An id of user to remove or object with external user id
|
|
236
|
-
* @param {(number|string)} params.external - An id of user to remove or object with external user id
|
|
237
|
-
* @param {deleteUserCallback} callback - An uid that represents the user in an external user registry
|
|
235
|
+
* @param {(number|object)} params - An id of user to remove or object with external user id.
|
|
236
|
+
* @param {(number|string)} params.external - An id of user to remove or object with external user id.
|
|
237
|
+
* @param {deleteUserCallback} callback - An uid that represents the user in an external user registry.
|
|
238
238
|
* @example
|
|
239
239
|
* // parameter as user id:
|
|
240
240
|
* var params = 567831;
|
|
@@ -252,10 +252,10 @@ UsersProxy.prototype = {
|
|
|
252
252
|
*/
|
|
253
253
|
delete: function(params, callback) {
|
|
254
254
|
/**
|
|
255
|
-
* Callback for QB.users.delete(params, callback)
|
|
255
|
+
* Callback for QB.users.delete(params, callback).
|
|
256
256
|
* @callback deleteUserCallback
|
|
257
|
-
* @param {object} error - The error object
|
|
258
|
-
* @param {object} response - Empty body
|
|
257
|
+
* @param {object} error - The error object.
|
|
258
|
+
* @param {object} response - Empty body.
|
|
259
259
|
*/
|
|
260
260
|
var url;
|
|
261
261
|
|
|
@@ -271,17 +271,17 @@ UsersProxy.prototype = {
|
|
|
271
271
|
},
|
|
272
272
|
|
|
273
273
|
/**
|
|
274
|
-
* You can initiate password resets for users who have emails associated with their account. Password reset instruction will be sent to this email address
|
|
274
|
+
* You can initiate password resets for users who have emails associated with their account. Password reset instruction will be sent to this email address({@link https://docs.quickblox.com/docs/js-users#reset-user-password read more}).
|
|
275
275
|
* @memberof QB.users
|
|
276
|
-
* @param {string} email - The user's email to send reset password instruction
|
|
277
|
-
* @param {resetPasswordByEmailCallback} callback - The resetPasswordByEmailCallback function
|
|
276
|
+
* @param {string} email - The user's email to send reset password instruction.
|
|
277
|
+
* @param {resetPasswordByEmailCallback} callback - The resetPasswordByEmailCallback function.
|
|
278
278
|
*/
|
|
279
279
|
resetPassword: function(email, callback) {
|
|
280
280
|
/**
|
|
281
|
-
* Callback for QB.users.resetPassword(email, callback)
|
|
281
|
+
* Callback for QB.users.resetPassword(email, callback).
|
|
282
282
|
* @callback resetPasswordByEmailCallback
|
|
283
|
-
* @param {object} error - The error object
|
|
284
|
-
* @param {object} response - Empty body
|
|
283
|
+
* @param {object} error - The error object.
|
|
284
|
+
* @param {object} response - Empty body.
|
|
285
285
|
*/
|
|
286
286
|
this.service.ajax({url: Utils.getUrl(resetPasswordUrl), data: {email: email}, dataType: 'text'}, callback);
|
|
287
287
|
}
|
|
@@ -10,6 +10,12 @@ var config = require('../../qbConfig');
|
|
|
10
10
|
var Helpers = require('./qbWebRTCHelpers');
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
+
* @namespace QB.webrtc.RTCPeerConnection
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @function qbRTCPeerConnection
|
|
18
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
13
19
|
* @param {RTCConfiguration} [config]
|
|
14
20
|
*/
|
|
15
21
|
var qbRTCPeerConnection = function qbRTCPeerConnection(config) {
|
|
@@ -103,7 +109,9 @@ qbRTCPeerConnection.prototype.negotiate = function () {
|
|
|
103
109
|
};
|
|
104
110
|
|
|
105
111
|
/**
|
|
106
|
-
* Save remote SDP for future use
|
|
112
|
+
* Save remote SDP for future use.
|
|
113
|
+
* @function setRemoteSDP
|
|
114
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
107
115
|
* @param {RTCSessionDescriptionInit} newSDP
|
|
108
116
|
*/
|
|
109
117
|
qbRTCPeerConnection.prototype.setRemoteSDP = function (newSDP) {
|
|
@@ -115,7 +123,9 @@ qbRTCPeerConnection.prototype.setRemoteSDP = function (newSDP) {
|
|
|
115
123
|
};
|
|
116
124
|
|
|
117
125
|
/**
|
|
118
|
-
* Returns SDP if it was set previously
|
|
126
|
+
* Returns SDP if it was set previously.
|
|
127
|
+
* @function getRemoteSDP
|
|
128
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
119
129
|
* @returns {RTCSessionDescriptionInit|undefined}
|
|
120
130
|
*/
|
|
121
131
|
qbRTCPeerConnection.prototype.getRemoteSDP = function () {
|
|
@@ -123,7 +133,9 @@ qbRTCPeerConnection.prototype.getRemoteSDP = function () {
|
|
|
123
133
|
};
|
|
124
134
|
|
|
125
135
|
/**
|
|
126
|
-
* Create offer or answer SDP and set as local description
|
|
136
|
+
* Create offer or answer SDP and set as local description.
|
|
137
|
+
* @function setLocalSessionDescription
|
|
138
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
127
139
|
* @param {Object} params
|
|
128
140
|
* @param {'answer'|'offer'} params.type
|
|
129
141
|
* @param {RTCOfferOptions} [params.options]
|
|
@@ -175,7 +187,9 @@ qbRTCPeerConnection.prototype.setLocalSessionDescription = function (params, cal
|
|
|
175
187
|
});
|
|
176
188
|
}
|
|
177
189
|
|
|
178
|
-
/**
|
|
190
|
+
/**
|
|
191
|
+
* @param {RTCSessionDescriptionInit} description
|
|
192
|
+
*/
|
|
179
193
|
function successCallback(description) {
|
|
180
194
|
var modifiedDescription = _removeExtmapMixedFromSDP(description);
|
|
181
195
|
modifiedDescription.sdp = setPreferredCodec(
|
|
@@ -214,6 +228,9 @@ qbRTCPeerConnection.prototype.setLocalSessionDescription = function (params, cal
|
|
|
214
228
|
};
|
|
215
229
|
|
|
216
230
|
/**
|
|
231
|
+
* Set remote session description.
|
|
232
|
+
* @function setRemoteSessionDescription
|
|
233
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
217
234
|
* @param {RTCSessionDescriptionInit} description
|
|
218
235
|
* @param {Function} callback
|
|
219
236
|
* @returns {void}
|
|
@@ -238,6 +255,9 @@ qbRTCPeerConnection.prototype.setRemoteSessionDescription = function (
|
|
|
238
255
|
};
|
|
239
256
|
|
|
240
257
|
/**
|
|
258
|
+
* Add local stream.
|
|
259
|
+
* @function addLocalStream
|
|
260
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
241
261
|
* @param {MediaStream} stream
|
|
242
262
|
*/
|
|
243
263
|
qbRTCPeerConnection.prototype.addLocalStream = function (stream) {
|
|
@@ -251,6 +271,9 @@ qbRTCPeerConnection.prototype.addLocalStream = function (stream) {
|
|
|
251
271
|
};
|
|
252
272
|
|
|
253
273
|
/**
|
|
274
|
+
* Add ice candidate.
|
|
275
|
+
* @function _addIceCandidate
|
|
276
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
254
277
|
* @param {RTCIceCandidateInit} iceCandidate
|
|
255
278
|
* @returns {Promise<void>}
|
|
256
279
|
*/
|
|
@@ -261,6 +284,9 @@ qbRTCPeerConnection.prototype._addIceCandidate = function (iceCandidate) {
|
|
|
261
284
|
};
|
|
262
285
|
|
|
263
286
|
/**
|
|
287
|
+
* Add ice candidates.
|
|
288
|
+
* @function addCandidates
|
|
289
|
+
* @memberOf QB.webrtc.RTCPeerConnection
|
|
264
290
|
* @param {Array<RTCIceCandidateInit>} iceCandidates
|
|
265
291
|
*/
|
|
266
292
|
qbRTCPeerConnection.prototype.addCandidates = function (iceCandidates) {
|
|
@@ -5,6 +5,10 @@
|
|
|
5
5
|
* WebRTC Module (WebRTC client)
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
/**
|
|
9
|
+
* @namespace QB.webrtc
|
|
10
|
+
*/
|
|
11
|
+
|
|
8
12
|
/*
|
|
9
13
|
* User's callbacks (listener-functions):
|
|
10
14
|
* - onCallListener(session, extension)
|
|
@@ -51,10 +55,12 @@ function WebRTCClient(service, chat) {
|
|
|
51
55
|
}
|
|
52
56
|
|
|
53
57
|
/**
|
|
54
|
-
*
|
|
55
|
-
* @
|
|
56
|
-
*
|
|
57
|
-
* @
|
|
58
|
+
* Return data or all active devices.
|
|
59
|
+
* @function getMediaDevices
|
|
60
|
+
* @memberof QB.webrtc
|
|
61
|
+
* @param {String} spec - Specify what type of devices you wnat to get.
|
|
62
|
+
* Possible values: audioinput, audiooutput, videoinput.
|
|
63
|
+
* @returns {Array} Array of devices.
|
|
58
64
|
*/
|
|
59
65
|
WebRTCClient.prototype.getMediaDevices = function(spec) {
|
|
60
66
|
var specDevices = [],
|
|
@@ -84,17 +90,22 @@ WebRTCClient.prototype.getMediaDevices = function(spec) {
|
|
|
84
90
|
|
|
85
91
|
/**
|
|
86
92
|
* A map with all sessions the user had/have.
|
|
87
|
-
* @
|
|
93
|
+
* @member {Object.<string, Object>} sessions
|
|
94
|
+
* @memberof QB.webrtc
|
|
88
95
|
*/
|
|
89
96
|
WebRTCClient.prototype.sessions = {};
|
|
90
97
|
|
|
91
98
|
/**
|
|
92
|
-
* Creates the new session.
|
|
93
|
-
* @
|
|
94
|
-
* @
|
|
95
|
-
* @param {number}
|
|
99
|
+
* Creates the new session({@link https://docs.quickblox.com/docs/js-video-calling#create-session read more}).
|
|
100
|
+
* @function createNewSession
|
|
101
|
+
* @memberof QB.webrtc
|
|
102
|
+
* @param {Array<number>} opponentsIDs - Opponents IDs.
|
|
103
|
+
* @param {1|2} ct - Call type.
|
|
104
|
+
* @param {number} [cID=yourUserId] - Initiator ID.
|
|
96
105
|
* @param {object} [opts]
|
|
97
|
-
* @param {number} [opts.bandwidth=0] - Bandwidth limit (kbps)
|
|
106
|
+
* @param {number} [opts.bandwidth=0] - Bandwidth limit (kbps).
|
|
107
|
+
*
|
|
108
|
+
* @returns {WebRTCSession}
|
|
98
109
|
*/
|
|
99
110
|
WebRTCClient.prototype.createNewSession = function(opponentsIDs, ct, cID, opts) {
|
|
100
111
|
var opponentsIdNASessions = getOpponentsIdNASessions(this.sessions),
|
|
@@ -150,8 +161,10 @@ WebRTCClient.prototype._createAndStoreSession = function(sessionID, callerID, op
|
|
|
150
161
|
};
|
|
151
162
|
|
|
152
163
|
/**
|
|
153
|
-
* Deletes a session
|
|
154
|
-
* @
|
|
164
|
+
* Deletes a session.
|
|
165
|
+
* @function clearSession
|
|
166
|
+
* @memberof QB.webrtc
|
|
167
|
+
* @param {string} sessionId - Session id.
|
|
155
168
|
*
|
|
156
169
|
*/
|
|
157
170
|
WebRTCClient.prototype.clearSession = function(sessionId) {
|
|
@@ -159,9 +172,9 @@ WebRTCClient.prototype.clearSession = function(sessionId) {
|
|
|
159
172
|
};
|
|
160
173
|
|
|
161
174
|
/**
|
|
162
|
-
* Check all session and find session with status 'NEW' or 'ACTIVE' which ID != provided
|
|
163
|
-
* @param {string}
|
|
164
|
-
* @returns {boolean} if active or new session exist
|
|
175
|
+
* Check all session and find session with status 'NEW' or 'ACTIVE' which ID != provided.
|
|
176
|
+
* @param {string} sessionID - Session id.
|
|
177
|
+
* @returns {boolean} True if active or new session exist.
|
|
165
178
|
*/
|
|
166
179
|
WebRTCClient.prototype.isExistLiveSessionExceptSessionID = function(sessionID) {
|
|
167
180
|
var exist = false;
|