cm.go 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package cm
  2. import (
  3. "encoding/json"
  4. )
  5. type Ad struct {
  6. RequestID string `json:"request_id,omitempty"`
  7. AdsInfo map[int64]map[int]*AdsInfo `json:"ads_info,omitempty"`
  8. ClientIP string `json:"-"`
  9. }
  10. type AdsInfo struct {
  11. Index int `json:"index,omitempty"`
  12. IsAd bool `json:"is_ad,omitempty"`
  13. CmMark int64 `json:"cm_mark,omitempty"`
  14. AdInfo *AdInfo `json:"ad_info,omitempty"`
  15. CardIndex int `json:"card_index,omitempty"`
  16. }
  17. type AdInfo struct {
  18. CreativeID int64 `json:"creative_id,omitempty"`
  19. CreativeType int `json:"creative_type,omitempty"`
  20. CardType int `json:"card_type,omitempty"`
  21. CreativeContent *struct {
  22. Title string `json:"title,omitempty"`
  23. Desc string `json:"description,omitempty"`
  24. VideoID int64 `json:"video_id,omitempty"`
  25. UserName string `json:"username,omitempty"`
  26. ImageURL string `json:"image_url,omitempty"`
  27. ImageMD5 string `json:"image_md5,omitempty"`
  28. LogURL string `json:"log_url,omitempty"`
  29. LogMD5 string `json:"log_md5,omitempty"`
  30. URL string `json:"url,omitempty"`
  31. ClickURL string `json:"click_url,omitempty"`
  32. ShowURL string `json:"show_url,omitempty"`
  33. } `json:"creative_content,omitempty"`
  34. AdCb string `json:"ad_cb,omitempty"`
  35. Resource int64 `json:"resource,omitempty"`
  36. Source int `json:"source,omitempty"`
  37. RequestID string `json:"request_id,omitempty"`
  38. IsAd bool `json:"is_ad,omitempty"`
  39. CmMark int64 `json:"cm_mark,omitempty"`
  40. Index int `json:"index,omitempty"`
  41. IsAdLoc bool `json:"is_ad_loc,omitempty"`
  42. CardIndex int `json:"card_index,omitempty"`
  43. ClientIP string `json:"client_ip,omitempty"`
  44. Extra json.RawMessage `json:"extra,omitempty"`
  45. }