Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_library",
)
go_library(
name = "go_default_library",
srcs = [
"http.go",
"stream_forwarding_conf.go",
"stream_source_station.go",
],
importpath = "go-common/app/interface/video/portal/server/http",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = [
"//app/interface/video/portal/conf:go_default_library",
"//app/interface/video/portal/middleware:go_default_library",
"//app/interface/video/portal/service:go_default_library",
"//library/ecode:go_default_library",
"//library/log:go_default_library",
"//library/net/http/blademaster:go_default_library",
"//library/net/http/blademaster/middleware/verify:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,59 @@
package http
import (
"net/http"
"go-common/app/interface/video/portal/conf"
"go-common/app/interface/video/portal/middleware"
"go-common/app/interface/video/portal/service"
"go-common/library/log"
bm "go-common/library/net/http/blademaster"
"go-common/library/net/http/blademaster/middleware/verify"
)
var (
srv *service.Service
vfy *verify.Verify
)
// Init init
func Init(c *conf.Config, svc *service.Service) {
srv = svc
vfy = verify.New(c.Verify)
engine := bm.DefaultServer(c.BM)
route(engine)
if err := engine.Start(); err != nil {
log.Error("bm Start error(%v)", err)
panic(err)
}
}
func route(e *bm.Engine) {
e.Ping(ping)
e.Register(register)
g := e.Group("/video/portal")
{
g.GET("/", howToStart)
g.GET("/whitelist", middleware.TXCheckSecretkey, txStreamForwardingConf)
g.GET("/whitelist/conf", middleware.BvcCheckSecret, bvcStreamForwardingConf)
g.GET("/leveltwosourcestation", streamLevelTwoSourceStation)
g.GET("/lplallstar", streamLplAllStar)
}
}
func ping(c *bm.Context) {
if err := srv.Ping(c); err != nil {
log.Error("ping error(%v)", err)
c.AbortWithStatus(http.StatusServiceUnavailable)
}
}
func register(c *bm.Context) {
c.JSON(map[string]interface{}{}, nil)
}
// example for http request handler
func howToStart(c *bm.Context) {
//c.String(0, "Golang 大法好 !!!")
c.JSON(nil, nil)
}

View File

@@ -0,0 +1,17 @@
package http
import (
"go-common/app/interface/video/portal/conf"
bm "go-common/library/net/http/blademaster"
)
func txStreamForwardingConf(c *bm.Context) {
thisconf := *conf.Conf
c.JSONMap(map[string]interface{}{"message": "ok", "data": thisconf.StreamForward}, nil)
}
// bvcStreamForwardingConf bvc转推白名单
func bvcStreamForwardingConf(c *bm.Context) {
thisconf := *conf.Conf
c.JSONMap(map[string]interface{}{"message": "ok", "data": thisconf.BvcStreamForward}, nil)
}

View File

@@ -0,0 +1,48 @@
package http
import (
"go-common/app/interface/video/portal/conf"
"go-common/library/ecode"
bm "go-common/library/net/http/blademaster"
)
func init() {
conf.Init()
}
// StreamSourceStation 提供给第三方的源站地址
func streamLevelTwoSourceStation(c *bm.Context) {
//从配置中心读取
//conf.Config.LevelTwoSourceStation
thisconf := *conf.Conf
c.JSONMap(map[string]interface{}{"message": "ok", "data": thisconf.LevelTwoSourceStation}, nil)
}
//LPL全明星赛
func streamLplAllStar(c *bm.Context) {
params := c.Request.URL.Query()
rid := params.Get("room_id")
if rid == "" {
c.Set("output_data", "some fields are empty")
c.JSONMap(map[string]interface{}{"message": "some fields are empty"}, ecode.RequestErr)
c.Abort()
return
}
urls := []map[string]interface{}{}
url := map[string]interface{}{}
if rid == "1111" || rid == "11090072" {
url["ext"] = "flv"
url["rate_level"] = 4
url["url"] = "http://nbvc.live-play.acgvideo.com/live-bvc/946862/live_325164925_5324520_800.flv?wsSecret=a65b9dd9a5a04e298ebce381673d8a77&wsTime=1546571918&trid=f9516d154cf54f47bd9b329bb34c8b25&sig=no"
// allstarresult.default_rate_level = 4
urls = append(urls, url)
//allstarresult.urls = urls
c.JSONMap(map[string]interface{}{"message": "ok", "data": map[string]interface{}{"default_rate_level": 4, "urls": urls}}, nil)
} else {
c.JSONMap(map[string]interface{}{"message": "ok", "data": map[string]interface{}{"default_rate_level": 4, "urls": urls}}, nil)
}
}