client.go
func (c *Client) Channel(name string, additionalQueries map[string]string) (*Channel, error) {
	path := fmt.Sprintf("/apps/%s/channels/%s", c.AppId, name)
	u, err := createRequestURL("GET", c.Host, path, c.Key, c.Secret, authTimestamp(), c.Secure, nil, additionalQueries, c.Cluster)
	if err != nil {
		return nil, err
	}
	response, err := c.request("GET", u, nil)
	if err != nil {
		return nil, err
	}
	return unmarshalledChannel(response, name)
}
func (c *Client) Channel(name string, additionalQueries map[string]string) (*Channel, error) {
	path := fmt.Sprintf("/apps/%s/channels/%s", c.AppId, name)
	u, err := createRequestURL("GET", c.Host, path, c.Key, c.Secret, authTimestamp(), c.Secure, nil, additionalQueries, c.Cluster)
	if err != nil {
		return nil, err
	}
	response, err := c.request("GET", u, nil)
	if err != nil {
		return nil, err
	}
	return unmarshalledChannel(response, name)
}
/*
Get the state of a single channel.

The parameter `additionalQueries` is a map with query options. An `"info"` key can
have comma-separated vales of `"user_count"`, for presence-channels,
and `"subscription_count"`, for all-channels. Note that the subscription
count is not allowed by default. Please contact us at http://support.pusher.com
if you wish to enable this. Pass in `nil` if you do not wish to specify any query attributes.

	channelParams := map[string]string{
		"info": "user_count,subscription_count",
	}

	channel, err := client.Channel("presence-chatroom", channelParams)

	//channel=> &{Name:presence-chatroom Occupied:true UserCount:42 SubscriptionCount:42}
*/