mirror of
https://gitlab.com/comunic/ComunicRTCProxy
synced 2024-11-17 02:51:12 +00:00
Automatically close websocket
This commit is contained in:
parent
c30af1b6d7
commit
a0f41fe2e1
12
ws.go
12
ws.go
@ -6,6 +6,8 @@ package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
"os"
|
||||
"os/signal"
|
||||
|
||||
"github.com/gorilla/websocket"
|
||||
)
|
||||
@ -13,6 +15,10 @@ import (
|
||||
// Open websocket connection
|
||||
func openWs(conf *Config) {
|
||||
|
||||
// Auto-close connection when the system request it
|
||||
interrupt := make(chan os.Signal, 1)
|
||||
signal.Notify(interrupt, os.Interrupt)
|
||||
|
||||
u := conf.getURL()
|
||||
log.Printf("Connecting to %s", u.String())
|
||||
|
||||
@ -23,6 +29,12 @@ func openWs(conf *Config) {
|
||||
}
|
||||
defer c.Close()
|
||||
|
||||
// Wait for interrupt signal
|
||||
go func() {
|
||||
<-interrupt
|
||||
c.Close()
|
||||
}()
|
||||
|
||||
// Read remote messages
|
||||
for {
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user