remove legacy ping/status seperation

This commit is contained in:
stryan 2021-01-03 19:49:12 -05:00
parent 70b0a691b6
commit ba29c23cae
2 changed files with 20 additions and 27 deletions

View File

@ -100,37 +100,32 @@ func startBridge(discord *discordgo.Session, discordGID string, discordCID strin
}
}
func pingMumble(host, port string, c chan int) {
m, _ := time.ParseDuration("30s")
func discordStatusUpdate(dg *discordgo.Session, host, port string) {
status := ""
curr := 0
m, _ := time.ParseDuration("30s")
for {
time.Sleep(3 * time.Second)
resp, err := gumble.Ping(host+":"+port, -1, m)
curr = resp.ConnectedUsers
if err != nil {
panic(err)
}
if Bridge.Connected {
curr = curr - 1
}
if curr != Bridge.MumbleUserCount {
Bridge.MumbleUserCount = curr
c <- Bridge.MumbleUserCount
}
}
}
func discordStatusUpdate(dg *discordgo.Session, c chan int) {
status := ""
curr := 0
for {
curr = <-c
if curr == 0 {
status = ""
if err != nil {
log.Printf("error pinging mumble server %v\n", err)
dg.UpdateListeningStatus("an error pinging mumble")
} else {
status = fmt.Sprintf("%v users in Mumble\n", curr)
curr = resp.ConnectedUsers
if Bridge.Connected {
curr = curr - 1
}
if curr != Bridge.MumbleUserCount {
Bridge.MumbleUserCount = curr
}
if curr == 0 {
status = ""
} else {
status = fmt.Sprintf("%v users in Mumble\n", curr)
}
dg.UpdateListeningStatus(status)
}
dg.UpdateListeningStatus(status)
}
}

View File

@ -98,9 +98,7 @@ func main() {
MumbleUserCount: 0,
DiscordUserCount: 0,
}
userCount := make(chan int)
go pingMumble(*mumbleAddr, strconv.Itoa(*mumblePort), userCount)
go discordStatusUpdate(discord, userCount)
go discordStatusUpdate(discord, *mumbleAddr, strconv.Itoa(*mumblePort))
if *autoMode {
Bridge.AutoChan = make(chan bool)
go AutoBridge(discord)