-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.go
36 lines (29 loc) · 1.02 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package main
import (
"flag"
"fmt"
"homeSerBot/cmd/telegram"
"homeSerBot/cmd/web"
"homeSerBot/pkg/mysqlmodels"
"runtime"
)
func main() {
tApi := flag.String("tApi", "<Telegram Token>", "The Telegram API token")
addr := flag.String("addr", "4000", "The network port to use")
ip := fmt.Sprintf("0.0.0.0:%s", *addr)
dbUserName := flag.String("dbUserName", "admin", "The database username")
dbPass := flag.String("dbPass", "admin", "The database password")
dbIp := flag.String("dbIp", "8.8.8.8", "The database IP")
dbPort := flag.Int("dbPort", 3306, "The database port")
dbName := flag.String("dbName", "TelegramBot", "The database name")
dbType := flag.String("dbType", "mysql", "The database type can be: mysql, sqlite, postgres, sqlserver")
flag.Parse()
dsn := fmt.Sprint(*dbUserName, ":", *dbPass, "@tcp(", *dbIp, ":", *dbPort, ")/", *dbName, "?parseTime=true")
db, err := mysqlmodels.ConnectDb(dsn, *dbType)
if err != nil {
panic(err)
}
go telegram.Telegram(*tApi, *db)
go web.Web(ip, *db)
runtime.Goexit()
}