6
6
7
7
var log = require ( './logger' ) . logger . getLogger ( 'V11Client' ) ;
8
8
var requestData = require ( './requestDataValidator' ) ;
9
- const { v4 : uuid } = require ( 'uuid' ) ;
10
9
11
10
var idPattern = / ^ [ 0 - 9 a - z A - Z \- ] + $ / ;
12
11
function isValidIdString ( str ) {
@@ -79,7 +78,7 @@ var V11Client = function(clientId, sigConnection, portal) {
79
78
} ;
80
79
81
80
const validateSubReq = ( subReq ) => {
82
- if ( ( ! subReq . media && ! subReq . data ) || ( subReq . media && ! subReq . media . audio && ! subReq . media . video ) ) {
81
+ if ( ! subReq . media || ! ( subReq . media . audio || subReq . media . video ) ) {
83
82
return Promise . reject ( 'Bad subscription request' ) ;
84
83
}
85
84
return requestData . validate ( 'subscription-request' , subReq ) ;
@@ -95,21 +94,17 @@ var V11Client = function(clientId, sigConnection, portal) {
95
94
const validateSOAC = ( SOAC ) => {
96
95
return validateId ( 'session id' , SOAC . id )
97
96
. then ( ( ) => {
98
- if ( SOAC . signaling . type === 'offer' ||
99
- SOAC . signaling . type === 'answer' ||
100
- SOAC . signaling . type === 'candidate' ||
101
- SOAC . signaling . type === 'removed-candidates' ) {
97
+ if ( SOAC . signaling . type === 'offer'
98
+ || SOAC . signaling . type === 'answer'
99
+ || SOAC . signaling . type === 'candidate'
100
+ || SOAC . signaling . type === 'removed-candidates' ) {
102
101
return Promise . resolve ( SOAC ) ;
103
102
} else {
104
103
return Promise . reject ( 'Invalid signaling type' ) ;
105
104
}
106
105
} ) ;
107
106
} ;
108
107
109
- const uuidWithoutDash = function ( ) {
110
- return uuid ( ) . replace ( / - / g, '' ) ;
111
- } ;
112
-
113
108
const listenAt = ( socket ) => {
114
109
socket . on ( 'text' , function ( textReq , callback ) {
115
110
if ( ! that . inRoom ) {
@@ -129,22 +124,13 @@ var V11Client = function(clientId, sigConnection, portal) {
129
124
return safeCall ( callback , 'error' , 'Illegal request' ) ;
130
125
}
131
126
132
- var stream_id = uuidWithoutDash ( ) ;
133
- let transport_id ;
127
+ var stream_id = Math . round ( Math . random ( ) * 1000000000000000000 ) + '' ;
134
128
return validatePubReq ( pubReq )
135
129
. then ( ( req ) => {
136
- if ( pubReq . transport && pubReq . transport . type == 'quic' ) {
137
- req . type = 'quic' ;
138
- if ( ! req . transport . id ) {
139
- req . transport . id = uuidWithoutDash ( ) ;
140
- }
141
- transport_id = req . transport . id ;
142
- } else {
143
- req . type = 'webrtc' ; //FIXME: For backend compatibility with v3.4 clients.
144
- }
130
+ req . type = 'webrtc' ; //FIXME: For backend compatibility with v3.4 clients.
145
131
return portal . publish ( clientId , stream_id , req ) ;
146
132
} ) . then ( ( result ) => {
147
- safeCall ( callback , 'ok' , { id : stream_id , transportId : transport_id } ) ;
133
+ safeCall ( callback , 'ok' , { id : stream_id } ) ;
148
134
} ) . catch ( onError ( 'publish' , callback ) ) ;
149
135
} ) ;
150
136
@@ -179,22 +165,13 @@ var V11Client = function(clientId, sigConnection, portal) {
179
165
return safeCall ( callback , 'error' , 'Illegal request' ) ;
180
166
}
181
167
182
- var subscription_id = uuid ( ) . replace ( / - / g, '' ) ;
183
- let transport_id ;
168
+ var subscription_id = Math . round ( Math . random ( ) * 1000000000000000000 ) + '' ;
184
169
return validateSubReq ( subReq )
185
170
. then ( ( req ) => {
186
- if ( req . transport && req . transport . type == 'quic' ) {
187
- req . type = 'quic' ;
188
- if ( ! req . transport . id ) {
189
- req . transport . id = uuidWithoutDash ( ) ;
190
- }
191
- transport_id = req . transport . id ;
192
- } else {
193
- req . type = 'webrtc' ; //FIXME: For backend compatibility with v3.4 clients.
194
- }
171
+ req . type = 'webrtc' ; //FIXME: For backend compatibility with v3.4 clients.
195
172
return portal . subscribe ( clientId , subscription_id , req ) ;
196
173
} ) . then ( ( result ) => {
197
- safeCall ( callback , 'ok' , { id : subscription_id , transportId : transport_id } ) ;
174
+ safeCall ( callback , 'ok' , { id : subscription_id } ) ;
198
175
} ) . catch ( onError ( 'subscribe' , callback ) ) ;
199
176
} ) ;
200
177
0 commit comments