39 lines
759 B
Go
39 lines
759 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"net/http"
|
|
_ "net/http/pprof"
|
|
"os"
|
|
|
|
"github.com/veggiedefender/torrent-client/internal/app"
|
|
"github.com/veggiedefender/torrent-client/internal/config"
|
|
"github.com/veggiedefender/torrent-client/internal/tgbot"
|
|
"github.com/veggiedefender/torrent-client/ui"
|
|
)
|
|
|
|
func main() {
|
|
go func() {
|
|
log.Println(http.ListenAndServe("localhost:6060", nil))
|
|
}()
|
|
|
|
controller := app.NewController()
|
|
|
|
cfg, _ := config.Load()
|
|
var token string
|
|
if cfg != nil {
|
|
token = cfg.TelegramToken
|
|
}
|
|
if envTok := os.Getenv("TG_BOT_TOKEN"); envTok != "" {
|
|
token = envTok
|
|
}
|
|
|
|
bot, err := tgbot.NewBot(controller, token)
|
|
if err != nil {
|
|
// Log but don't fail, bot is optional
|
|
} else if bot != nil {
|
|
bot.Start()
|
|
}
|
|
|
|
ui.Start(controller)
|
|
}
|