package router import ( "github.com/gin-gonic/gin" "onvif-agent/integration/zabbixagent" "onvif-agent/router/handler" "onvif-agent/router/handler/onvif" ) func SetupRoutes(r *gin.Engine) { r.GET("/", handler.Hello) onvifGroup := r.Group("/onvif") { connectionGroup := onvifGroup.Group("/sessions") { connectionGroup.POST("/", onvif.CreateSession) connectionGroup.GET("/", onvif.GetSessions) connectionGroup.GET("/:xaddr", onvif.GetSessionByXaddr) connectionGroup.DELETE("/:xaddr", onvif.DeleteSession) } subscriptionGroup := onvifGroup.Group("/subscriptions") { subscriptionGroup.POST("/:xaddr", onvif.CreateSubscription) subscriptionGroup.POST("/:xaddr/callback", onvif.NotifyCallback) } notificationGroup := onvifGroup.Group("/notifications") { notificationGroup.GET("/", onvif.GetNotifications) } } zabbixGroup := r.Group("/zabbix") { zabbixGroup.POST("/onvifDeviceDiscovery", zabbixagent.ONVIFDeviceDiscovery) zabbixGroup.POST("/onvifDeviceRegister", zabbixagent.ONVIFDeviceRegister) } }