Env documentation, log, last hope handler

Signed-off-by: Terekhin Alexandr <alex@bearns.me>
doc
Terekhin Alexandr 4 years ago
parent 313b21f316
commit b7bcfd5d94
  1. 2
      go.mod
  2. 55
      main.go

@ -1,3 +1,5 @@
module bearns.me/didinst/tg-bot-example module bearns.me/didinst/tg-bot-example
go 1.15 go 1.15
require gopkg.in/tucnak/telebot.v2 v2.3.5

@ -8,37 +8,42 @@ import (
) )
func main() { func main() {
var ( var (
port = os.Getenv("PORT") port = os.Getenv("PORT") // Bot app listening port, same as port in API_URL
publicURL = os.Getenv("PUBLIC_URL") publicURL = os.Getenv("PUBLIC_URL") // http://<telegram-api-server>:<port>
token = os.Getenv("TOKEN") token = os.Getenv("TOKEN") // Token from @BotFather
apiURL = os.Getenv("API_URL") apiURL = os.Getenv("API_URL") // http://<bot-app-host>:<bot-app-port>/<random-name-path>
) )
webhook := &tb.Webhook{ webhook := &tb.Webhook{
Listen: ":" + port, Listen: ":" + port,
Endpoint: &tb.WebhookEndpoint{PublicURL: publicURL}, Endpoint: &tb.WebhookEndpoint{PublicURL: publicURL},
} }
pref := tb.Settings{ pref := tb.Settings{
Token: token, Token: token,
Poller: webhook, Poller: webhook,
URL: apiURL, URL: apiURL,
} }
b, err := tb.NewBot(pref)
if err != nil {
log.Fatal(err)
}
b, err := tb.NewBot(pref)
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
return
} }
b.Handle("/hello", func(m *tb.Message) { b.Handle("/hello", func(m *tb.Message) {
b.Send(m.Sender, "Hello World!") log.Print(m)
_, err := b.Send(m.Sender, "Hello World!")
if err != nil {
log.Print(err)
}
})
b.Handle(tb.OnText, func(m *tb.Message) {
log.Print(m)
// all the text messages that weren't
// captured by existing handlers
}) })
b.Start() b.Start()
} }

Loading…
Cancel
Save