24 lines
646 B
Go
24 lines
646 B
Go
package dto
|
|
|
|
import (
|
|
"encoding/json"
|
|
"time"
|
|
|
|
"quyun/v2/pkg/consts"
|
|
)
|
|
|
|
// ContentPlayableAsset is a deliverable media asset item with short-lived play URL/token.
|
|
type ContentPlayableAsset struct {
|
|
AssetID int64 `json:"asset_id"`
|
|
Type consts.MediaAssetType `json:"type"`
|
|
|
|
// PlayURL is a short-lived URL; do NOT expose bucket/object_key directly.
|
|
PlayURL string `json:"play_url"`
|
|
|
|
// ExpiresAt indicates when PlayURL/token expires; optional.
|
|
ExpiresAt *time.Time `json:"expires_at,omitempty"`
|
|
|
|
// Meta is a display-safe whitelist (currently passthrough JSON); optional.
|
|
Meta json.RawMessage `json:"meta,omitempty"`
|
|
}
|