grim/wasdead

f141bfcf7ef0
Parents 43eaf7bd7bbb
Children 1cb0807a8bb9
Fix the twitch login by using an app access token
--- a/twitch/twitch.go Sat Sep 26 03:29:07 2020 -0500
+++ b/twitch/twitch.go Sat Sep 26 04:14:03 2020 -0500
@@ -1,7 +1,6 @@
package twitch
import (
- "fmt"
"net/url"
"strings"
@@ -14,14 +13,22 @@
client *helix.Client
}
-func New(token string) (presence.Provider, error) {
+func New(clientID, clientSecret string) (presence.Provider, error) {
client, err := helix.NewClient(&helix.Options{
- ClientID: token,
+ ClientID: clientID,
+ ClientSecret: clientSecret,
})
if err != nil {
return nil, err
}
+ resp, err := client.RequestAppAccessToken([]string{})
+ if err != nil {
+ return nil, err
+ }
+
+ client.SetAppAccessToken(resp.Data.AccessToken)
+
return &Twitch{client: client}, nil
}
@@ -60,7 +67,10 @@
}
if len(users.Data.Users) <= 0 || len(streams.Data.Streams) <= 0 {
- return presence.Presence{}, fmt.Errorf("%s is not streaming", username)
+ return presence.Presence{
+ Provider: "twitch",
+ Username: username,
+ }, nil
}
user := users.Data.Users[0]
@@ -79,6 +89,8 @@
game := games.Data.Games[0]
p := presence.Presence{
+ Provider: "twitch",
+ Live: true,
StreamID: stream.ID,
Username: user.DisplayName,
UserID: user.ID,