44 lines
1.0 KiB
Go
44 lines
1.0 KiB
Go
|
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)
|
||
|
}
|