github.com/xhghs/rclone@v1.51.1-0.20200430155106-e186a28cced8/cmd/serve/dlna/cms.go (about) 1 package dlna 2 3 import ( 4 "net/http" 5 6 "github.com/anacrolix/dms/upnp" 7 ) 8 9 const defaultProtocolInfo = "http-get:*:video/mpeg:*,http-get:*:video/mp4:*,http-get:*:video/vnd.dlna.mpeg-tts:*,http-get:*:video/avi:*,http-get:*:video/x-matroska:*,http-get:*:video/x-ms-wmv:*,http-get:*:video/wtv:*,http-get:*:audio/mpeg:*,http-get:*:audio/mp3:*,http-get:*:audio/mp4:*,http-get:*:audio/x-ms-wma*,http-get:*:audio/wav:*,http-get:*:audio/L16:*,http-get:*image/jpeg:*,http-get:*image/png:*,http-get:*image/gif:*,http-get:*image/tiff:*" 10 11 type connectionManagerService struct { 12 *server 13 upnp.Eventing 14 } 15 16 func (cms *connectionManagerService) Handle(action string, argsXML []byte, r *http.Request) (map[string]string, error) { 17 switch action { 18 case "GetProtocolInfo": 19 return map[string]string{ 20 "Source": defaultProtocolInfo, 21 "Sink": "", 22 }, nil 23 default: 24 return nil, upnp.InvalidActionError 25 } 26 }