Skip to content

Commit 1ec23ad

Browse files
committed
middle
1 parent bede9d1 commit 1ec23ad

File tree

7 files changed

+86
-52
lines changed

7 files changed

+86
-52
lines changed

js/modules/webrtc/qbRTCPeerConnection.js

Lines changed: 26 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -239,35 +239,32 @@ RTCPeerConnection.prototype.onIceConnectionStateCallback = function() {
239239
};
240240

241241
RTCPeerConnection.prototype._getStatsWrap = function() {
242-
var self = this,
243-
selector = self.delegate.callType == 1 ? self.getLocalStreams()[0].getVideoTracks()[0] : self.getLocalStreams()[0].getAudioTracks()[0],
244-
statsReportInterval;
245-
246-
if (!config.webrtc && !config.webrtc.statsReportTimeInterval) {
247-
return;
248-
}
249-
250-
if (isNaN(+config.webrtc.statsReportTimeInterval)) {
251-
Helpers.traceError('statsReportTimeInterval (' + config.webrtc.statsReportTimeInterval + ') must be integer.');
252-
return;
253-
}
254-
255-
statsReportInterval = config.webrtc.statsReportTimeInterval * 1000;
256-
257-
var _statsReportCallback = function() {
258-
_getStats(self, selector,
259-
function (results) {
260-
self.delegate._onCallStatsReport(self.userID, results);
261-
},
262-
function errorLog(err) {
263-
Helpers.traceError("_getStats error. " + err.name + ": " + err.message);
264-
}
265-
);
266-
};
267-
268-
Helpers.trace('Stats tracker has been started.');
269-
270-
self.statsReportTimer = setInterval(_statsReportCallback, statsReportInterval);
242+
var self = this,
243+
selector = self.delegate.callType == 1 ? self.getLocalStreams()[0].getVideoTracks()[0] : self.getLocalStreams()[0].getAudioTracks()[0],
244+
statsReportInterval;
245+
246+
if (config.webrtc && config.webrtc.statsReportTimeInterval) {
247+
if (isNaN(+config.webrtc.statsReportTimeInterval)) {
248+
Helpers.traceError('statsReportTimeInterval (' + config.webrtc.statsReportTimeInterval + ') must be integer.');
249+
return;
250+
}
251+
252+
statsReportInterval = config.webrtc.statsReportTimeInterval * 1000;
253+
254+
var _statsReportCallback = function() {
255+
_getStats(self, selector,
256+
function (results) {
257+
self.delegate._onCallStatsReport(self.userID, results);
258+
},
259+
function errorLog(err) {
260+
Helpers.traceError('_getStats error. ' + err.name + ': ' + err.message);
261+
}
262+
);
263+
};
264+
265+
Helpers.trace('Stats tracker has been started.');
266+
self.statsReportTimer = setInterval(_statsReportCallback, statsReportInterval);
267+
}
271268
};
272269

273270
RTCPeerConnection.prototype._clearWaitingReconnectTimer = function() {

js/modules/webrtc/qbWebRTCSession.js

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -336,29 +336,32 @@ WebRTCSession.prototype.reject = function(extension) {
336336
* @param {array} A map with custom parameters
337337
*/
338338
WebRTCSession.prototype.stop = function(extension) {
339-
var self = this,
340-
ext = _prepareExtension(extension);
341-
var peersLen = Object.keys(self.peerConnections).length;
339+
var self = this,
340+
ext = _prepareExtension(extension),
341+
peersLen = Object.keys(self.peerConnections).length;
342342

343-
Helpers.trace('Stop, extension: ' + JSON.stringify(ext));
343+
Helpers.trace('Stop, extension: ' + JSON.stringify(ext));
344344

345-
self.state = WebRTCSession.State.HUNGUP;
345+
self.state = WebRTCSession.State.HUNGUP;
346346

347-
self._clearAnswerTimer();
347+
if(self.answerTimer) {
348+
self._clearAnswerTimer();
349+
}
348350

349-
ext["sessionID"] = self.ID;
350-
ext["callType"] = self.callType;
351-
ext["callerID"] = self.initiatorID;
352-
ext["opponentsIDs"] = self.opponentsIDs;
351+
ext.sessionID = self.ID;
352+
ext.callType = self.callType;
353+
ext.callerID = self.initiatorID;
354+
ext.opponentsIDs = self.opponentsIDs;
353355

354-
if(peersLen > 0){
355-
for (var key in self.peerConnections) {
356-
var peerConnection = self.peerConnections[key];
357-
self.signalingProvider.sendMessage(peerConnection.userID, ext, SignalingConstants.SignalingType.STOP);
356+
if(peersLen > 0){
357+
for (var key in self.peerConnections) {
358+
var peerConnection = self.peerConnections[key];
359+
360+
self.signalingProvider.sendMessage(peerConnection.userID, ext, SignalingConstants.SignalingType.STOP);
361+
}
358362
}
359-
}
360363

361-
self._close();
364+
self._close();
362365
};
363366

364367
/**

js/qbConfig.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ var config = {
3030
answerTimeInterval: 60,
3131
dialingTimeInterval: 5,
3232
disconnectTimeInterval: 30,
33-
statsReportTimeInterval: 10,
33+
statsReportTimeInterval: false,
3434
iceServers: [
3535
{
3636
'url': 'stun:stun.l.google.com:19302'

quickblox.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

samples/webrtc/config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
'login': 'Login as any user on this computer and another user on another computer.',
2020
'create_session': 'Creating a session...',
2121
'connect': 'Connecting...',
22-
'connect_error': 'Something wrong with connect to chat. Check internet connection or user info and trying again.',
22+
'connect_error': 'Something wrong with connect to chat. Check internet connection or user info and trying again.',
2323
'login_as': 'Logged in as ',
2424
'title_login': 'Choose a user to login with:',
2525
'title_callee': 'Choose users to call:',

samples/webrtc/index.html

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,25 @@ <h4>
8484
</div>
8585

8686
<!-- MODALS -->
87+
<div class="modal fade" id="connect_err" tabindex="-1" data-backdrop="static" data-keyboard="false">
88+
<div class="modal-dialog modal-sm">
89+
<div class="modal-content">
90+
<div class="modal-header">
91+
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
92+
93+
<h4>Connect to chat is failed</h4>
94+
</div>
95+
96+
<div class="modal-body">
97+
<p class="text-danger">
98+
Something wrong with connect to chat. Check internet connection or user info and trying again.
99+
</p>
100+
</div>
101+
<p></p>
102+
</div>
103+
</div>
104+
</div>
105+
87106
<div class="modal fade" id="error_no_calles" tabindex="-1">
88107
<div class="modal-dialog modal-sm">
89108
<div class="modal-content">

samples/webrtc/js/app.js

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -164,8 +164,22 @@
164164
password: 'webAppPass'
165165
}, function(err, res) {
166166
if(err) {
167-
QB.chat.disconnect();
168-
app.router.navigate('join', { trigger: true });
167+
// $('#connect_err').modal();
168+
// console.info(app.currentSession);
169+
// QB.chat.disconnect();
170+
//
171+
// app.helpers.stateBoard.update({
172+
// 'title': 'tpl_default',
173+
// 'property': {
174+
// 'tag': app.caller.user_tags,
175+
// 'name': app.caller.full_name,
176+
// }
177+
// });
178+
// console.info('STAT');
179+
// app.currentSession.stop({});
180+
// app.currentSession = {};
181+
182+
// app.helpers.setFooterPosition();
169183
} else {
170184
$form.removeClass('join-wait');
171185
$form.trigger('reset');
@@ -250,6 +264,7 @@
250264
/** Hangup */
251265
if ($btn.hasClass('hangup')) {
252266
if(!_.isEmpty(app.currentSession)) {
267+
253268
app.currentSession.stop({});
254269
app.currentSession = {};
255270

@@ -525,7 +540,7 @@
525540
var inboundrtp = _.findWhere(stats, {type: 'inboundrtp'});
526541

527542
if(!inboundrtp || !app.helpers.isBytesReceivedChanges(userId, inboundrtp)) {
528-
console.warn("This is Firefox and user " + userId + " has lost his connection.");
543+
console.warn('This is Firefox and user ' + userId + ' has lost his connection.');
529544

530545
if(!_.isEmpty(app.currentSession)) {
531546
app.currentSession.closeConnection(userId);

0 commit comments

Comments
 (0)