comparison main.go @ 6:4deabe76bd7f

cmd: add CMD package
author Dennis C. M. <dennis@denniscm.com>
date Wed, 12 Mar 2025 14:13:24 +0000
parents
children 228ab74e8321
comparison
equal deleted inserted replaced
5:8cf3011fc949 6:4deabe76bd7f
1 package main
2
3 import (
4 "net/http"
5
6 "github.com/denniscmcom/pacobot/cmd"
7 "github.com/gin-gonic/gin"
8 )
9
10 func main() {
11 gin.SetMode(gin.DebugMode)
12 r := gin.Default()
13
14 var authRes cmd.AuthRes
15
16 r.GET("/", func(c *gin.Context) {
17 c.JSON(http.StatusOK, gin.H{
18 "message": "Hello world",
19 })
20 })
21
22 // TODO: Pass username in parameters
23 r.GET("/id", func(c *gin.Context) {
24 cmd.GetBroadcasterUserId("denniscmartin", authRes.AccessToken)
25
26 c.JSON(http.StatusOK, gin.H{
27 "message": "ok",
28 })
29 })
30
31 r.GET("/auth", func(c *gin.Context) {
32 authUrl := cmd.GetAuthUrl()
33
34 c.Redirect(http.StatusMovedPermanently, authUrl)
35 })
36
37 r.GET("/auth-validate", func(c *gin.Context) {
38 msg := "failed"
39
40 if cmd.IsAuthTokenValid(authRes.AccessToken) {
41 msg = "ok"
42 }
43
44 c.JSON(http.StatusOK, gin.H{
45 "message": msg,
46 })
47 })
48
49 r.GET("/auth-refresh", func(c *gin.Context) {
50 authRes = cmd.RefreshAuthToken(authRes.AccessToken, authRes.RefreshToken)
51
52 c.JSON(http.StatusOK, gin.H{
53 "message": "ok",
54 })
55 })
56
57 r.GET("/auth-revoke", func(c *gin.Context) {
58 cmd.RevokeAuthToken(authRes.AccessToken)
59
60 c.JSON(http.StatusOK, gin.H{
61 "message": "ok",
62 })
63 })
64
65 r.GET("/twitch-auth-code-callback", func(c *gin.Context) {
66 authCode := c.Query("code")
67 authRes = cmd.GetAuthToken(authCode)
68
69 c.JSON(http.StatusOK, gin.H{
70 "message": "ok",
71 })
72 })
73
74 r.GET("/connect", func(c *gin.Context) {
75 go cmd.ConnSocket(authRes.AccessToken)
76
77 c.JSON(http.StatusOK, gin.H{
78 "message": "ok",
79 })
80 })
81
82 r.Run()
83 }