Add IRC connection status indicator
This commit is contained in:
parent
83aef5df7b
commit
f429a528ba
11 changed files with 124 additions and 38 deletions
|
@ -31,13 +31,21 @@ func newIRCHandler(client *irc.Client, session *Session) *ircHandler {
|
|||
|
||||
func (i *ircHandler) run() {
|
||||
for {
|
||||
msg, ok := <-i.client.Messages
|
||||
if !ok {
|
||||
i.session.deleteIRC(i.client.Host)
|
||||
return
|
||||
}
|
||||
select {
|
||||
case msg, ok := <-i.client.Messages:
|
||||
if !ok {
|
||||
i.session.deleteIRC(i.client.Host)
|
||||
return
|
||||
}
|
||||
|
||||
i.dispatchMessage(msg)
|
||||
i.dispatchMessage(msg)
|
||||
|
||||
case connected := <-i.client.ConnectionChanged:
|
||||
i.session.sendJSON("connection_update", map[string]bool{
|
||||
i.client.Host: connected,
|
||||
})
|
||||
i.session.setConnectionState(i.client.Host, connected)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue