heating-monitor/cmd/bot/main.go

44 lines
1.0 KiB
Go
Raw Normal View History

2024-11-28 13:52:58 +01:00
package main
import (
"log"
"os"
"strconv"
"heating-monitor/internal/bot"
"heating-monitor/internal/config"
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5"
"github.com/joho/godotenv"
)
func main() {
// Cargar variables de entorno
err := godotenv.Load()
if err != nil {
log.Fatal("Error cargando el archivo .env")
}
// Iniciar la base de datos
config.InitDB()
// Iniciar el bot de Telegram
botAPI, err := tgbotapi.NewBotAPI(os.Getenv("TELEGRAM_TOKEN"))
if err != nil {
log.Panic(err)
}
// Mensajes de conexión
botAPI.Debug = true
log.Printf("Bot conectado como %s. Esperando instrucciones...", botAPI.Self.UserName)
log.Printf("Autenticado como %s", botAPI.Self.UserName)
chatID, _ := strconv.ParseInt(os.Getenv("TELEGRAM_CHATID"), 10, 64)
msg := tgbotapi.NewMessage(chatID, "¡El bot está conectado y funcionando!")
if _, err := botAPI.Send(msg); err != nil {
log.Printf("Error al enviar el mensaje inicial: %v", err)
}
// Iniciar el bot y pasar la instancia de la base de datos
bot.StartBot(botAPI, config.DB)
}