|
- package main
-
- import (
- "fmt"
- "net/http"
- "strings"
- )
-
- //display vimeo video in biukop brand
-
- const videoPrefix = "/v/"
-
- type vimeoPlayer struct {
- VideoId string
- Token string
-
- playsinline int
- autoplay int
- autopause int
- loop int
- background int
- muted int
-
- Title string
- ContentDescription string
- ThumbnailURL string
-
- FavIconURL string
- }
-
- func videoMain(w http.ResponseWriter, r *http.Request) {
- videoVimeo(w, r)
- }
-
- var thumbnailDataURL = `data:image/png;base64,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`
-
- func videoVimeo(w http.ResponseWriter, r *http.Request) {
-
- vimeo := getVimeoParams(r)
-
- pattern := `
- <html>
- <head>
- <link rel="shortcut icon" type="image/png" href="%s" />
- <meta property="og:type" content="website" />
- <meta property="og:title" content="%s">
- <meta property="og:description" content="%s">
- <meta property="og:image" content="%s">
- <title> %s </title>
- </head>
- <body style="margin:0px">
-
- <div style="display:none;"><img src="%s" alt=""></div>
-
- <style> iframe {width: 100vw; height: 100vh; overflow:hidden;} </style>
- <iframe src="%s"
- scrolling="no" frameborder="0"
- style="width: 100vw; height: 100vh; overflow:hidden;"
- allow="autoplay; fullscreen"
- webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
- </body>
- </html>`
- output := fmt.Sprintf(pattern,
- vimeo.FavIconURL,
- vimeo.Title,
- vimeo.ContentDescription,
- vimeo.ThumbnailURL,
- vimeo.Title,
- //r.Host + r.URL.Path,
- vimeo.ThumbnailURL,
- vimeo.getUrl())
- fmt.Fprintf(w, output)
- }
-
- /**
- http://v.io/v/1234567/token where token might be optional
- */
- func getVimeoParams(r *http.Request) (ret vimeoPlayer) {
- prefix := videoPrefix + "v/"
- var IdAndToken = strings.Split(r.URL.Path[len(prefix):], "/")
-
- if len(IdAndToken) == 1 {
- ret.VideoId = IdAndToken[0]
- ret.Token = ""
- } else if len(IdAndToken) == 2 {
- ret.VideoId = IdAndToken[0]
- ret.Token = IdAndToken[1]
- } else { // a default video will be given
- ret.VideoId = "719542916"
- ret.Token = ""
- }
-
- if strings.ToLower(r.Host) == ("v.io") {
- ret.Title = "您有一条视频消息"
- ret.ContentDescription = "私密视频"
- }
- ret.Title = "Video Message"
- ret.ContentDescription = "Modern Video Communication"
- ret.FavIconURL = "/assets/videoIcon300x300.png"
- ret.ThumbnailURL = "/assets/videoIcon300x300.png"
- ret.autopause = 0
- ret.autoplay = 1
- ret.playsinline = 0
- ret.loop = 1
- ret.background = 0
- ret.muted = 0
-
- if r.URL.Path[:len(prefix)] == videoPrefix+"b/" {
- ret.playsinline = 1
- ret.background = 1
- ret.muted = 1 // autoplay video must be muted.
- }
- return
- }
-
- func (m *vimeoPlayer) getUrl() (ret string) {
- ret = fmt.Sprintf(
- "https://player.vimeo.com/video/%s?h=%s&playsinline=%d&autoplay=%d&autopause=%d&loop=%d&background=%d&muted=%d",
- m.VideoId, m.Token, m.playsinline, m.autoplay, m.autopause, m.loop, m.background, m.muted)
- return
- }
|