Files
lkm/stream/hook_event.go
2024-10-22 11:23:43 +08:00

56 lines
1.5 KiB
Go

package stream
import "fmt"
type HookEvent int
const (
HookEventPublish = HookEvent(0x1)
HookEventPublishDone = HookEvent(0x2)
HookEventPlay = HookEvent(0x3)
HookEventPlayDone = HookEvent(0x4)
HookEventRecord = HookEvent(0x5)
HookEventIdleTimeout = HookEvent(0x6)
HookEventReceiveTimeout = HookEvent(0x7)
HookEventStarted = HookEvent(0x8)
)
var (
hookUrls map[HookEvent]string
)
func InitHookUrls() {
hookUrls = map[HookEvent]string{
HookEventPublish: AppConfig.Hooks.OnPublishUrl,
HookEventPublishDone: AppConfig.Hooks.OnPublishDoneUrl,
HookEventPlay: AppConfig.Hooks.OnPlayUrl,
HookEventPlayDone: AppConfig.Hooks.OnPlayDoneUrl,
HookEventRecord: AppConfig.Hooks.OnRecordUrl,
HookEventIdleTimeout: AppConfig.Hooks.OnIdleTimeoutUrl,
HookEventReceiveTimeout: AppConfig.Hooks.OnReceiveTimeoutUrl,
HookEventStarted: AppConfig.Hooks.OnStartedUrl,
}
}
func (h *HookEvent) ToString() string {
if HookEventPublish == *h {
return "publish"
} else if HookEventPublishDone == *h {
return "publish done"
} else if HookEventPlay == *h {
return "play"
} else if HookEventPlayDone == *h {
return "play done"
} else if HookEventRecord == *h {
return "record"
} else if HookEventIdleTimeout == *h {
return "idle timeout"
} else if HookEventReceiveTimeout == *h {
return "receive timeout"
} else if HookEventStarted == *h {
return "started"
}
panic(fmt.Sprintf("unknow hook type %d", h))
}