Go-based webhook generic handler
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

35 lines
705 B

package webhookeverything
import (
"math/rand"
"time"
"git.samuelpua.com/telboon/webhook-everything/backend/internal/telegrampackage"
"github.com/go-chi/chi"
"gorm.io/gorm"
)
type Env struct {
DB *gorm.DB
TelegramEnv *telegrampackage.Env
HostURL string
}
func WebhookEverythingRoutes(db *gorm.DB, telegramEnv *telegrampackage.Env, hostURL string) chi.Router {
var env Env
env.DB = db
env.TelegramEnv = telegramEnv
env.HostURL = hostURL
// Seed random
rand.Seed(time.Now().UnixNano())
// Web Routes
r := chi.NewRouter()
r.HandleFunc("/routes/{routeID}", env.handleWebhook)
// Telegram handlers
env.TelegramEnv.AddTelegramHandlerFunc(env.registerWebhook)
return r
}