telegram-bot-manager/main.go

130 lines
2.8 KiB
Go
Raw Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

// Package classification JNX Telegram Bot Manager API Documentation.
//
// Schemes: https
// Host: jannex
// BasePath: /v1
// Version: 1.0.0
//
// Consumes:
// - application/json
//
// Produces:
// - application/json
//
// swagger:meta
package main
import (
"fmt"
"jannex/telegram-bot-manager/modules/config"
"jannex/telegram-bot-manager/modules/database"
"jannex/telegram-bot-manager/modules/telegram"
"jannex/telegram-bot-manager/modules/utils"
"jannex/telegram-bot-manager/routers/router"
"os"
"time"
"git.ex.umbach.dev/Alex/roese-utils/rsconfig"
"git.ex.umbach.dev/Alex/roese-utils/rslogger"
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/cors"
"github.com/gofiber/fiber/v2/middleware/logger"
tblogger "jannex/telegram-bot-manager/modules/logger"
)
func init() {
rsconfig.CreateEnvConfigFileIfNotExists(`DEBUG=false
COLORIZED_OUTPUT=true
HOST=127.0.0.1
PORT=8080
LOG_MANAGER_SERVER_URL=http://localhost:50110
# MariaDB
MARIADB_HOSTNAME=127.0.0.1
MARIADB_PORT=3306
MARIADB_USERNAME=db_user
MARIADB_PASSWORD=db_password
MARIADB_DATABASE_NAME=db_database_name`)
config.LoadConfig()
rslogger.InitLogger(true, config.Cfg.ColorizedOutput, config.Cfg.LogManagerServerUrl)
if os.Getenv("DOCKER") != "" {
fmt.Println("Waiting for mariadb docker")
time.Sleep(10 * time.Second)
}
database.InitDatabase()
utils.ValidatorInit()
}
func main() {
app := fiber.New()
app.Use(cors.New())
if config.Cfg.Debug {
app.Use(logger.New(logger.Config{
Format: "${pid} ${locals:requestid} ${status} - ${latency} ${method} ${path}\n",
}))
}
router.SetupRoutes(app)
telegram.InitBot()
tblogger.AddSystemLog(rslogger.LogTypeInfo, "Server started")
app.Listen(config.Cfg.Host + ":" + config.Cfg.Port)
}
/*
func main() {
// Setze deinen Telegram Bot Token hier ein
bot, err := tgbotapi.NewBotAPI("6450280279:AAGxXdPv_YwRtl_pXIqYojqOecBrEjn3fJo")
if err != nil {
log.Panic(err)
}
bot.Debug = true
log.Printf("Angemeldet als %s", bot.Self.UserName)
// Erstelle eine Nachricht, die du senden möchtest
msg := tgbotapi.NewMessage(935432572, "Das freut mich mein Hase. Ich liebe dich.")
// Sende die Nachricht
_, err = bot.Send(msg)
if err != nil {
log.Panic(err)
}
// Erstelle eine Update-Konfiguration, um auf eingehende Nachrichten zu reagieren
updateConfig := tgbotapi.NewUpdate(0)
updateConfig.Timeout = 60
updates, err := bot.GetUpdatesChan(updateConfig)
for update := range updates {
if update.Message == nil {
continue
}
chatID := update.Message.Chat.ID
text := update.Message.Text
log.Printf("[%s] %s", update.Message.From.UserName, text)
// Hier kannst du auf die empfangene Nachricht reagieren
// Zum Beispiel, eine Antwort senden
reply := tgbotapi.NewMessage(chatID, "Du hast folgende Nachricht gesendet: "+text)
_, err := bot.Send(reply)
if err != nil {
log.Panic(err)
}
}
}
*/