|
@@ -1,103 +0,0 @@
|
|
-package main
|
|
|
|
-
|
|
|
|
-import (
|
|
|
|
- "encoding/json"
|
|
|
|
- "flag"
|
|
|
|
- "fmt"
|
|
|
|
- "os"
|
|
|
|
-
|
|
|
|
- "github.com/bwmarrin/discordgo"
|
|
|
|
-)
|
|
|
|
-
|
|
|
|
-// Variables used for command line options
|
|
|
|
-var (
|
|
|
|
- Token string
|
|
|
|
- Name string
|
|
|
|
- DeleteID string
|
|
|
|
- ListOnly bool
|
|
|
|
-)
|
|
|
|
-
|
|
|
|
-func init() {
|
|
|
|
-
|
|
|
|
- flag.StringVar(&Token, "t", "", "Owner Account Token")
|
|
|
|
- flag.StringVar(&Name, "n", "", "Name to give App/Bot")
|
|
|
|
- flag.StringVar(&DeleteID, "d", "", "Application ID to delete")
|
|
|
|
- flag.BoolVar(&ListOnly, "l", false, "List Applications Only")
|
|
|
|
- flag.Parse()
|
|
|
|
-
|
|
|
|
- if Token == "" {
|
|
|
|
- flag.Usage()
|
|
|
|
- os.Exit(1)
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-func main() {
|
|
|
|
-
|
|
|
|
- var err error
|
|
|
|
-
|
|
|
|
- // Create a new Discord session using the provided login information.
|
|
|
|
- dg, err := discordgo.New(Token)
|
|
|
|
- if err != nil {
|
|
|
|
- fmt.Println("error creating Discord session,", err)
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // If -l set, only display a list of existing applications
|
|
|
|
- // for the given account.
|
|
|
|
- if ListOnly {
|
|
|
|
-
|
|
|
|
- aps, err := dg.Applications()
|
|
|
|
- if err != nil {
|
|
|
|
- fmt.Println("error fetching applications,", err)
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- for _, v := range aps {
|
|
|
|
- fmt.Println("-----------------------------------------------------")
|
|
|
|
- b, _ := json.MarshalIndent(v, "", " ")
|
|
|
|
- fmt.Println(string(b))
|
|
|
|
- }
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // if -d set, delete the given Application
|
|
|
|
- if DeleteID != "" {
|
|
|
|
- err = dg.ApplicationDelete(DeleteID)
|
|
|
|
- if err != nil {
|
|
|
|
- fmt.Println("error deleting application,", err)
|
|
|
|
- }
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if Name == "" {
|
|
|
|
- flag.Usage()
|
|
|
|
- os.Exit(1)
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // Create a new application.
|
|
|
|
- ap := &discordgo.Application{}
|
|
|
|
- ap.Name = Name
|
|
|
|
- ap, err = dg.ApplicationCreate(ap)
|
|
|
|
- if err != nil {
|
|
|
|
- fmt.Println("error creating new application,", err)
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- fmt.Printf("Application created successfully:\n")
|
|
|
|
- b, _ := json.MarshalIndent(ap, "", " ")
|
|
|
|
- fmt.Println(string(b))
|
|
|
|
-
|
|
|
|
- // Create the bot account under the application we just created
|
|
|
|
- bot, err := dg.ApplicationBotCreate(ap.ID)
|
|
|
|
- if err != nil {
|
|
|
|
- fmt.Println("error creating bot account,", err)
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- fmt.Printf("Bot account created successfully.\n")
|
|
|
|
- b, _ = json.MarshalIndent(bot, "", " ")
|
|
|
|
- fmt.Println(string(b))
|
|
|
|
-
|
|
|
|
- fmt.Println("Please save the above posted info in a secure place.")
|
|
|
|
- fmt.Println("You will need that information to login with your bot account.")
|
|
|
|
-}
|
|
|