52 lines
1022 B
Go
52 lines
1022 B
Go
package conf
|
|
|
|
import (
|
|
"os"
|
|
"strconv"
|
|
|
|
"github.com/joho/godotenv"
|
|
"github.com/sirupsen/logrus"
|
|
)
|
|
|
|
type botSettings struct {
|
|
HTTPProxy string
|
|
BotToken string
|
|
MCServer string
|
|
MCBotName string
|
|
GroupID int64
|
|
}
|
|
|
|
var (
|
|
botSettingsInstance *botSettings
|
|
)
|
|
|
|
func init() {
|
|
godotenv.Load()
|
|
http_proxy := os.Getenv("HTTP_PROXY")
|
|
bot_token := os.Getenv("BOT_TOKEN")
|
|
mc_server := os.Getenv("MC_SERVER")
|
|
mc_bot_name := os.Getenv("MC_BOT_NAME")
|
|
group_id_str := os.Getenv("GROUP_ID")
|
|
|
|
if http_proxy == "" || bot_token == "" || mc_server == "" || mc_bot_name == "" || group_id_str == "" {
|
|
logrus.Panic("请检查环境变量是否设置正确")
|
|
}
|
|
|
|
group_id, err := strconv.ParseInt(group_id_str, 10, 64)
|
|
if err != nil {
|
|
logrus.Panic("请检查环境变量是否设置正确")
|
|
}
|
|
|
|
botSettingsInstance = &botSettings{
|
|
HTTPProxy: http_proxy,
|
|
BotToken: bot_token,
|
|
MCServer: mc_server,
|
|
MCBotName: mc_bot_name,
|
|
GroupID: group_id,
|
|
}
|
|
}
|
|
|
|
func GetBotSettings() *botSettings {
|
|
return botSettingsInstance
|
|
}
|