File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ package main
2+
3+ import (
4+ "fmt"
5+ "log"
6+ "os"
7+
8+ "github.com/bwmarrin/discordgo"
9+ )
10+
11+ var Token string
12+
13+ // Este é o handler para quando o bot receber uma mensagem
14+ func messageCreate (s * discordgo.Session , m * discordgo.MessageCreate ) {
15+ // Ignorar mensagens do próprio bot
16+ if m .Author .ID == s .State .User .ID {
17+ return
18+ }
19+
20+ // Responder ao comando !ping com "Pong!"
21+ if m .Content == "!ping" {
22+ s .ChannelMessageSend (m .ChannelID , "Pong!" )
23+ }
24+ }
25+
26+ func main () {
27+ // Pega o token do bot a partir da variável de ambiente
28+ Token = os .Getenv ("DISCORD_TOKEN" )
29+ if Token == "" {
30+ log .Fatal ("Token do Discord não encontrado" )
31+ }
32+
33+ // Cria uma nova sessão do bot
34+ dg , err := discordgo .New ("Bot " + Token )
35+ if err != nil {
36+ fmt .Println ("Erro ao criar a sessão do bot:" , err )
37+ return
38+ }
39+
40+ // Adiciona um handler para a criação de mensagens
41+ dg .AddMessageCreateHandler (messageCreate )
42+
43+ // Abre uma conexão com o WebSocket do Discord
44+ err = dg .Open ()
45+ if err != nil {
46+ fmt .Println ("Erro ao conectar ao Discord:" , err )
47+ return
48+ }
49+ defer dg .Close ()
50+
51+ fmt .Println ("Bot está ativo. Pressione Ctrl+C para sair." )
52+
53+ // Espera até que o bot seja fechado
54+ select {}
55+ }
You can’t perform that action at this time.
0 commit comments