|
|
@@ -6,22 +6,6 @@ var RTCBrowserType = require("../RTC/RTCBrowserType");
|
|
6
|
6
|
|
|
7
|
7
|
|
|
8
|
8
|
module.exports = function(XMPP, eventEmitter) {
|
|
9
|
|
- function CallIncomingJingle(sid, connection) {
|
|
10
|
|
- var sess = connection.jingle.sessions[sid];
|
|
11
|
|
-
|
|
12
|
|
- // TODO: do we check activecall == null?
|
|
13
|
|
- connection.jingle.activecall = sess;
|
|
14
|
|
-
|
|
15
|
|
- eventEmitter.emit(XMPPEvents.CALL_INCOMING, sess);
|
|
16
|
|
-
|
|
17
|
|
- // TODO: check affiliation and/or role
|
|
18
|
|
- console.log('emuc data for', sess.peerjid, connection.emuc.members[sess.peerjid]);
|
|
19
|
|
- sess.usedrip = true; // not-so-naive trickle ice
|
|
20
|
|
- sess.sendAnswer();
|
|
21
|
|
- sess.accept();
|
|
22
|
|
-
|
|
23
|
|
- }
|
|
24
|
|
-
|
|
25
|
9
|
Strophe.addConnectionPlugin('jingle', {
|
|
26
|
10
|
connection: null,
|
|
27
|
11
|
sessions: {},
|
|
|
@@ -136,7 +120,18 @@ module.exports = function(XMPP, eventEmitter) {
|
|
136
|
120
|
// the callback should either
|
|
137
|
121
|
// .sendAnswer and .accept
|
|
138
|
122
|
// or .sendTerminate -- not necessarily synchronus
|
|
139
|
|
- CallIncomingJingle(sess.sid, this.connection);
|
|
|
123
|
+
|
|
|
124
|
+ // TODO: do we check activecall == null?
|
|
|
125
|
+ this.connection.jingle.activecall = sess;
|
|
|
126
|
+
|
|
|
127
|
+ eventEmitter.emit(XMPPEvents.CALL_INCOMING, sess);
|
|
|
128
|
+
|
|
|
129
|
+ // TODO: check affiliation and/or role
|
|
|
130
|
+ console.log('emuc data for', sess.peerjid,
|
|
|
131
|
+ this.connection.emuc.members[sess.peerjid]);
|
|
|
132
|
+ sess.usedrip = true; // not-so-naive trickle ice
|
|
|
133
|
+ sess.sendAnswer();
|
|
|
134
|
+ sess.accept();
|
|
140
|
135
|
break;
|
|
141
|
136
|
case 'session-accept':
|
|
142
|
137
|
sess.setRemoteDescription($(iq).find('>jingle'), 'answer');
|