(self,map)
| 295 | return '\n'.join(m3u8List) |
| 296 | |
| 297 | def proxyMedia(self,map): |
| 298 | shareId = map['share_id'] |
| 299 | fileId = map['file_id'] |
| 300 | mediaId = map['media_id'] |
| 301 | shareToken = self.getToken(shareId,'') |
| 302 | |
| 303 | refresh = False |
| 304 | url = '' |
| 305 | ts = 0 |
| 306 | if fileId in self.localMedia: |
| 307 | fileMap = self.localMedia[fileId] |
| 308 | if mediaId in fileMap: |
| 309 | url = fileMap[mediaId] |
| 310 | if len(url) > 0: |
| 311 | ts = int(self.regStr(url,"x-oss-expires=(\\d+)&")) |
| 312 | |
| 313 | self.localTime = int(time.time()) |
| 314 | |
| 315 | if ts - self.localTime <= 60: |
| 316 | self.getMediaSlice(shareId,shareToken,fileId) |
| 317 | url = self.localMedia[fileId][mediaId] |
| 318 | |
| 319 | action = { |
| 320 | 'url':url, |
| 321 | 'header':self.header, |
| 322 | 'param':'', |
| 323 | 'type':'stream', |
| 324 | 'after':'' |
| 325 | } |
| 326 | return [200, "video/MP2T", action, ""] |
| 327 | |
| 328 | def proxyM3U8(self,map): |
| 329 | shareId = map['share_id'] |
no test coverage detected