Compare commits

...

1 Commits

Author SHA1 Message Date
Tyler d9a5b1160c Check major version only if it exists 2021-01-06 21:35:22 -05:00
1 changed files with 11 additions and 7 deletions

18
node.go
View File

@ -77,10 +77,11 @@ type FrameStats struct {
func (node *Node) open(ctx context.Context) error { func (node *Node) open(ctx context.Context) error {
header := http.Header{} header := http.Header{}
header.Set("User-Agent", gavalinkUserAgent())
header.Set("Authorization", node.config.Password) header.Set("Authorization", node.config.Password)
header.Set("Num-Shards", strconv.Itoa(node.manager.shards)) header.Set("Num-Shards", strconv.Itoa(node.manager.shards))
header.Set("User-Id", node.manager.userID) header.Set("User-Id", node.manager.userID)
header.Set("Client-Name", "Gavalink")
header.Set("User-Agent", gavalinkUserAgent())
if node.manager.capabilities != nil { if node.manager.capabilities != nil {
v := make([]string, 0) v := make([]string, 0)
@ -104,16 +105,19 @@ func (node *Node) open(ctx context.Context) error {
return err return err
} }
// TODO: This isn't officially required, so we ignore it for now if it's empty.
vstr := resp.Header.Get("Lavalink-Major-Version") vstr := resp.Header.Get("Lavalink-Major-Version")
v, err := strconv.Atoi(vstr) if vstr != "" {
v, err := strconv.Atoi(vstr)
if err != nil { if err != nil {
return err return err
} }
if v < 3 { if v < 3 {
return errInvalidVersion return errInvalidVersion
}
} }
node.wsConn = ws node.wsConn = ws