ad.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package resource
  2. import xtime "go-common/library/time"
  3. // StrategyOnly int8
  4. const (
  5. StrategyOnly = int8(0) // only
  6. StrategyShare = int8(1) // share
  7. StrategyRank = int8(2) // rank
  8. )
  9. // VideoAD is Ads of videos
  10. type VideoAD struct {
  11. ID int `json:"-"`
  12. Name string `json:"name"`
  13. AidS string `json:"-"`
  14. Aid int64 `json:"aid"`
  15. Cid int64 `json:"cid"`
  16. URL string `json:"url"`
  17. Skipable int8 `json:"skipable"`
  18. Strategy int8 `json:"strategy"`
  19. MTime xtime.Time `json:"-"`
  20. }
  21. // Ad struct
  22. type Ad struct {
  23. RequestID string `json:"request_id"`
  24. AdsInfo map[string]map[string]*AdsInfo `json:"ads_info"`
  25. }
  26. // AdsInfo struct
  27. type AdsInfo struct {
  28. Index int64 `json:"index"`
  29. IsAd bool `json:"is_ad"`
  30. CmMark int8 `json:"cm_mark"`
  31. AdInfo *AdInfo `json:"ad_info"`
  32. }
  33. // CreativeImage type
  34. const (
  35. CreativeImage = int8(0)
  36. CreativeVideo = int8(1)
  37. )
  38. // AdInfo struct
  39. type AdInfo struct {
  40. CreativeID int64 `json:"creative_id"`
  41. CreativeType int8 `json:"creative_type"`
  42. CreativeContent struct {
  43. Title string `json:"title"`
  44. Desc string `json:"description"`
  45. VideoID int64 `json:"video_id"`
  46. UserName string `json:"username"`
  47. ImageURL string `json:"image_url"`
  48. ImageMD5 string `json:"image_md5"`
  49. LogURL string `json:"log_url"`
  50. LogMD5 string `json:"log_md5"`
  51. URL string `json:"url"`
  52. ClickURL string `json:"click_url"`
  53. ShowURL string `json:"show_url"`
  54. ThumbnailURL string `json:"thumbnail_url"`
  55. } `json:"creative_content"`
  56. AdCb string `json:"ad_cb"`
  57. }