@@ -4,7 +4,7 @@ import io from "socket.io-client";
4
4
5
5
interface Props {
6
6
className ?: string ;
7
- roomId ?: String ;
7
+ roomId ?: string ;
8
8
}
9
9
10
10
const socket = io ( `${ process . env . NEXT_PUBLIC_COMMS } ` ) ;
@@ -24,7 +24,7 @@ function CommsPanel({ className, roomId }: Props) {
24
24
if ( socket ) {
25
25
console . log ( "destroying socket" ) ;
26
26
socket . close ( ) ;
27
- }
27
+ }
28
28
if ( connectionRef . current ) {
29
29
connectionRef . current . destroy ( ) ;
30
30
}
@@ -40,24 +40,30 @@ function CommsPanel({ className, roomId }: Props) {
40
40
. then ( ( newStream ) => {
41
41
console . log ( "new stream's status is " + newStream . active ) ;
42
42
newStream . getTracks ( ) . forEach ( ( track : MediaStreamTrack ) => {
43
- console . log ( "media track status (ready/enabled): " + track . readyState + "/" + track . enabled ) ;
44
- } )
43
+ console . log (
44
+ "media track status (ready/enabled): " +
45
+ track . readyState +
46
+ "/" +
47
+ track . enabled ,
48
+ ) ;
49
+ } ) ;
45
50
if ( myVideo . current ) {
46
- console . log ( "can set myVideo.current" )
51
+ console . log ( "can set myVideo.current" ) ;
47
52
myVideo . current . srcObject = newStream ;
48
53
}
49
54
setStream ( newStream ) ;
50
55
videoElement = newStream ;
51
- } ) . catch ( ( err ) => console . log ( "failed to get stream" ) ) ;
56
+ } )
57
+ . catch ( ( err ) => console . log ( "failed to get stream" , err ) ) ;
52
58
53
- return ( ) => {
54
- console . log ( "cleaning up media" ) ;
55
- if ( videoElement ) {
56
- console . log ( "destroying stream" ) ;
57
- videoElement . getTracks ( ) . forEach ( ( track ) => track . stop ( ) ) ;
58
- }
59
+ return ( ) => {
60
+ console . log ( "cleaning up media" ) ;
61
+ if ( videoElement ) {
62
+ console . log ( "destroying stream" ) ;
63
+ videoElement . getTracks ( ) . forEach ( ( track ) => track . stop ( ) ) ;
59
64
}
60
- } , [ ] )
65
+ } ;
66
+ } , [ ] ) ;
61
67
62
68
useEffect ( ( ) => {
63
69
if ( ! roomId || ! stream || ! socket . connected ) {
@@ -81,8 +87,9 @@ function CommsPanel({ className, roomId }: Props) {
81
87
socket . on ( "endCall" , ( ) => {
82
88
if ( userVideo . current ) {
83
89
( userVideo . current . srcObject as MediaStream )
84
- . getTracks ( ) . forEach ( ( tracks : MediaStreamTrack ) => {
85
- tracks . stop ( )
90
+ . getTracks ( )
91
+ . forEach ( ( tracks : MediaStreamTrack ) => {
92
+ tracks . stop ( ) ;
86
93
} ) ;
87
94
userVideo . current . srcObject = null ;
88
95
}
@@ -118,9 +125,10 @@ function CommsPanel({ className, roomId }: Props) {
118
125
}
119
126
120
127
function attachSocketReceiver (
121
- stream : MediaStream , roomId : String ,
122
- userVideo : React . RefObject < HTMLVideoElement > ,
123
- connectionRef : React . MutableRefObject < Peer . Instance | undefined >
128
+ stream : MediaStream ,
129
+ roomId : string ,
130
+ userVideo : React . RefObject < HTMLVideoElement > ,
131
+ connectionRef : React . MutableRefObject < Peer . Instance | undefined > ,
124
132
) {
125
133
socket . on ( "startCall" , ( data ) => {
126
134
console . log ( "received start call signal" ) ;
@@ -150,9 +158,10 @@ function attachSocketReceiver(
150
158
}
151
159
152
160
function attachSocketInitiator (
153
- stream : MediaStream , roomId : String ,
161
+ stream : MediaStream ,
162
+ roomId : string ,
154
163
userVideo : React . RefObject < HTMLVideoElement > ,
155
- connectionRef : React . MutableRefObject < Peer . Instance | undefined >
164
+ connectionRef : React . MutableRefObject < Peer . Instance | undefined > ,
156
165
) {
157
166
socket . on ( "peerConnected" , ( ) => {
158
167
console . log ( "peer connected, starting call" ) ;
@@ -161,24 +170,24 @@ function attachSocketInitiator(
161
170
trickle : false ,
162
171
stream : stream ,
163
172
} ) ;
164
-
173
+
165
174
peerInit . on ( "signal" , ( data ) => {
166
175
console . log ( "signal to start call received" ) ;
167
176
socket . emit ( "startCall" , { signalData : data , target : roomId } ) ;
168
177
} ) ;
169
-
178
+
170
179
peerInit . on ( "stream" , ( stream ) => {
171
180
if ( userVideo . current ) {
172
181
console . log ( "setting stream for handshake" ) ;
173
182
userVideo . current . srcObject = stream ;
174
183
}
175
184
} ) ;
176
-
185
+
177
186
connectionRef . current = peerInit ;
178
-
187
+
179
188
socket . on ( "handshakeCall" , ( data ) => {
180
189
console . log ( "received handshake" ) ;
181
- peerInit . signal ( data . signal )
190
+ peerInit . signal ( data . signal ) ;
182
191
} ) ;
183
192
} ) ;
184
193
}
0 commit comments