diff options
Diffstat (limited to 'app/cmd/main.go')
| -rw-r--r-- | app/cmd/main.go | 35 |
1 files changed, 10 insertions, 25 deletions
diff --git a/app/cmd/main.go b/app/cmd/main.go index 7d8ffa0..49e645f 100644 --- a/app/cmd/main.go +++ b/app/cmd/main.go @@ -2,6 +2,7 @@ package main import ( "encoding/json" + "fmt" "log" "net/http" "os" @@ -9,7 +10,6 @@ import ( "syscall" "github.com/ketsuna-org/bot-creator-api/internal" - zmq "github.com/pebbe/zmq4" ) var botList = make(map[string]*internal.Bot) @@ -28,34 +28,19 @@ func main() { w.Write([]byte("Hello, World!")) }) - // Contexte ZeroMQ - ctx, err := zmq.NewContext() - if err != nil { - log.Fatalf("[SERVER] Failed to create context: %v", err) - } - defer ctx.Term() - - // Socket dealer ZeroMQ - dealer, err := ctx.NewSocket(zmq.REP) - if err != nil { - log.Fatalf("[SERVER] Failed to create dealer: %v", err) - } - defer dealer.Close() - - err = dealer.Bind("tcp://*:5555") - if err != nil { - log.Fatalf("[SERVER] Failed to bind dealer: %v", err) - } - // Route POST /create/{bot_token} mux.HandleFunc("POST /create/{bot_token}", func(w http.ResponseWriter, r *http.Request) { // Extraire le token du bot de l'URL - botToken := r.URL.Query().Get("bot_token") + botToken := r.PathValue("bot_token") + + // we need to retrieve the amount of bots running bot := &internal.Bot{ - BotToken: botToken, + BotToken: botToken, + ProcessID: fmt.Sprint(len(botList) + 5555), // or any unique identifier } - bot, err := internal.Start(bot, dealer) + + bot, err := internal.Start(bot) if err != nil { log.Printf("[SERVER] Error starting bot: %v", err) http.Error(w, "Error starting bot", http.StatusInternalServerError) @@ -70,7 +55,7 @@ func main() { // Route POST /stop/{bot_token} mux.HandleFunc("POST /stop/{bot_token}", func(w http.ResponseWriter, r *http.Request) { // Extraire le token du bot de l'URL - botToken := r.URL.Query().Get("bot_token") + botToken := r.PathValue("bot_token") bot, ok := botList[botToken] if !ok { @@ -91,7 +76,7 @@ func main() { // Route POST /update/{bot_token} mux.HandleFunc("POST /update/{bot_token}", func(w http.ResponseWriter, r *http.Request) { // Extraire le token du bot de l'URL - botToken := r.URL.Query().Get("bot_token") + botToken := r.PathValue("bot_token") bot, ok := botList[botToken] if !ok { http.Error(w, "Bot not found", http.StatusNotFound) |
