This commit is contained in:
Steven Tracey 2022-08-29 07:25:09 -04:00
commit 1c9e1daf22
8 changed files with 114 additions and 0 deletions

8
.idea/.gitignore vendored Normal file
View File

@ -0,0 +1,8 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

9
.idea/GoBot.iml Normal file
View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="Go" enabled="true" />
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

8
.idea/modules.xml Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/GoBot.iml" filepath="$PROJECT_DIR$/.idea/GoBot.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

BIN
GoBot.exe Normal file

Binary file not shown.

10
go.mod Normal file
View File

@ -0,0 +1,10 @@
module GoBot
go 1.19
require (
github.com/bwmarrin/discordgo v0.26.0 // indirect
github.com/gorilla/websocket v1.4.2 // indirect
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b // indirect
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68 // indirect
)

12
go.sum Normal file
View File

@ -0,0 +1,12 @@
github.com/bwmarrin/discordgo v0.26.0 h1:/AdFmxHXSHInYAZ7K0O3VEIXlVjGpztk/nuCr9o+JCs=
github.com/bwmarrin/discordgo v0.26.0/go.mod h1:NJZpH+1AfhIcyQsPeuBKsUtYrRnjkyu0kIVMCHkZtRY=
github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b h1:7mWr3k41Qtv8XlltBkDkl8LoP3mpSgBW8BUoxtEdbXg=
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68 h1:nxC68pudNYkKU6jWhgrqdreuFiOQWj1Fs7T3VrH4Pjw=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=

61
main.go Normal file
View File

@ -0,0 +1,61 @@
package main
import (
"fmt"
"github.com/bwmarrin/discordgo"
"os"
)
const botToken = "MTAxMzU4NDA1ODAxMTM2OTYwMg.GQRu8W.hH1uPAuqIq1ST7tBoMI_o2mYRZdOrp1P9qPjnU"
var BotId string
func main() {
fmt.Println("Bot is starting...")
discord, err := discordgo.New("Bot " + botToken)
checkErr(err)
user, err := discord.User("@me")
checkErr(err)
BotId = user.ID
discord.AddHandler(messageHandler)
err = discord.Open()
checkErr(err)
fmt.Println("Bot is running!")
<-make(chan struct{})
return
}
func messageHandler(session *discordgo.Session, message *discordgo.MessageCreate) {
if message.Author.ID == BotId {
return
}
switch message.Content {
case "go$ping":
_, _ = session.ChannelMessageSendReply(message.ChannelID, "pong!", message.Reference())
case "go$stop", "go$exit":
{
_, _ = session.ChannelMessageSend(message.ChannelID, "Shutting down...")
os.Exit(0)
}
}
fmt.Println(message.Content)
}
func checkErr(err error) {
if err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}