client.go
func (c *Client) Join(channel string) {
	channel = strings.ToLower(channel)

	// If we don't have the channel in our map AND we have an
	// active connection, explicitly join before we add it to our map
	c.channelsMtx.Lock()
	if !c.channels[channel] && c.connActive.get() {
		go c.send(fmt.Sprintf("JOIN #%s", channel))
	}

	c.channels[channel] = true
	c.channelUserlistMutex.Lock()
	c.channelUserlist[channel] = map[string]bool{}
	c.channelUserlistMutex.Unlock()
	c.channelsMtx.Unlock()
}
func (c *Client) Join(channel string) {
	channel = strings.ToLower(channel)

	// If we don't have the channel in our map AND we have an
	// active connection, explicitly join before we add it to our map
	c.channelsMtx.Lock()
	if !c.channels[channel] && c.connActive.get() {
		go c.send(fmt.Sprintf("JOIN #%s", channel))
	}

	c.channels[channel] = true
	c.channelUserlistMutex.Lock()
	c.channelUserlist[channel] = map[string]bool{}
	c.channelUserlistMutex.Unlock()
	c.channelsMtx.Unlock()
}
// Join enter a twitch channel to read more messages