mirror of
				https://gitlab.com/comunic/ComunicRTCProxy
				synced 2025-11-04 04:04:19 +00:00 
			
		
		
		
	Ensure all clients connection automatically close
This commit is contained in:
		
							
								
								
									
										5
									
								
								relay.go
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								relay.go
									
									
									
									
									
								
							@@ -157,7 +157,6 @@ func onCloseConnection(callHash, peerID string) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
/// Close a connection
 | 
					/// Close a connection
 | 
				
			||||||
func closeConnection(r *activeRelay) {
 | 
					func closeConnection(r *activeRelay) {
 | 
				
			||||||
	log.Printf("Closing call %s / id: %d", r.callHash, r.id)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Close the channel
 | 
						// Close the channel
 | 
				
			||||||
	if !r.closed {
 | 
						if !r.closed {
 | 
				
			||||||
@@ -169,6 +168,8 @@ func closeConnection(r *activeRelay) {
 | 
				
			|||||||
	if val, ok := connections[r.callHash]; ok && val.id == r.id {
 | 
						if val, ok := connections[r.callHash]; ok && val.id == r.id {
 | 
				
			||||||
		delete(connections, r.callHash)
 | 
							delete(connections, r.callHash)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						log.Printf("Closing call %s / id: %d (%d remaining open calls)", r.callHash, r.id, len(connections))
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Ask for a channel to be closed
 | 
					// Ask for a channel to be closed
 | 
				
			||||||
@@ -438,6 +439,8 @@ func newCall(mainOffer receivedSignal, r *activeRelay) {
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
			clients[newMessage.peerID] = newPeerConnection
 | 
								clients[newMessage.peerID] = newPeerConnection
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								defer newPeerConnection.Close()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// Send ice candidates
 | 
								// Send ice candidates
 | 
				
			||||||
			newPeerConnection.OnICECandidate(func(c *webrtc.ICECandidate) {
 | 
								newPeerConnection.OnICECandidate(func(c *webrtc.ICECandidate) {
 | 
				
			||||||
				if c == nil || r.closed {
 | 
									if c == nil || r.closed {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user