services

package
v0.0.0-...-316d69b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 26, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// CateCourse 课程
	CateCourse = "bauhinia"
	// CateAudioBook 听书
	CateAudioBook = "odob"
	// CateEbook 电子书
	CateEbook = "ebook"
	// CateAce 锦囊
	CateAce = "compass"
	// CatAll 全部
	CatAll = "all"
)

Variables

View Source
var (
	CsrfToken = ""
	SetCookie []string
)
View Source
var (
	UserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36"
)

Functions

func ParseCookies

func ParseCookies(cookie string, v interface{}) (err error)

ParseCookies parse cookie string to cookie options

Types

type AgencyDetail

type AgencyDetail struct {
	ID              int    `json:"id"`
	IDStr           string `json:"id_str"`
	Name            string `json:"name"`
	Intro           string `json:"intro"`
	QcgID           int    `json:"qcg_id"`
	QcgMemberName   string `json:"qcg_member_name"`
	QcgMemberAvatar string `json:"qcg_member_avatar"`
	BookCount       int    `json:"book_count"`
	Uv              int    `json:"uv"`
	Status          int    `json:"status"`
}

type AlgoFilter

type AlgoFilter struct {
	Title            string   `json:"title"`
	ProductTypes     Strategy `json:"product_types"`
	SortStrategy     Strategy `json:"sort_strategy"`
	ProgressStrategy Strategy `json:"progress_strategy"`
	BuyStrategy      Strategy `json:"buy_strategy"`
	Navigations      Strategy `json:"navigations"`
	Tags             Strategy `json:"tags"`
}

type AlgoFilterParam

type AlgoFilterParam struct {
	ClassfcName  string        `json:"classfc_name"` //  default "心理学"
	LabelId      string        `json:"label_id"`
	NavType      int           `json:"nav_type"`
	NavigationId string        `json:"navigation_id"`
	Page         int           `json:"page"`          // default 0
	PageSize     int           `json:"page_size"`     // default 18
	ProductTypes string        `json:"product_types"` // default "66"
	RequestId    string        `json:"request_id"`
	SortStrategy string        `json:"sort_strategy"` // default "HOT" "NEW"
	TagsIds      []interface{} `json:"tags_ids"`
}

type AlgoFilterResp

type AlgoFilterResp struct {
	Filter  AlgoFilter      `json:"filter"`
	Total   int             `json:"total"`
	Request AlgoFilterParam `json:"request"`
}

type AlgoProduct

type AlgoProduct struct {
	ItemType              int               `json:"item_type"`
	Id                    int               `json:"id"`
	ProductType           int               `json:"product_type"`
	ProductId             int               `json:"product_id"`
	Name                  string            `json:"name"`
	Intro                 string            `json:"intro"`
	PhaseNum              int               `json:"phase_num"`
	LearnUserCount        int               `json:"learn_user_count"`
	Price                 int               `json:"price"`
	CurrentPrice          int               `json:"current_price"`
	IndexImg              string            `json:"index_img"`
	HorizontalImage       string            `json:"horizontal_image"`
	LecturersImg          string            `json:"lecturers_img"`
	PriceDesc             string            `json:"price_desc"`
	IsBuy                 int               `json:"is_buy"`
	IsVip                 bool              `json:"is_vip"`
	Trackinfo             string            `json:"trackinfo"`
	LogId                 string            `json:"log_id"`
	LogType               string            `json:"log_type"`
	CornerImg             string            `json:"corner_img"`
	LecturerNameAndTitle  string            `json:"lecturer_name_and_title"`
	LecturersVStatus      int               `json:"lecturers_v_status"`
	CornerImgVertical     string            `json:"corner_img_vertical"`
	LecturerName          string            `json:"lecturer_name"`
	LecturerTitle         string            `json:"lecturer_title"`
	AuthorList            []string          `json:"author_list"`
	IdOut                 string            `json:"id_out"`
	IsLimitFree           bool              `json:"is_limit_free"`
	HasPlayAuth           bool              `json:"has_play_auth"`
	ButtonType            int               `json:"button_type"`
	AudioId               string            `json:"audio_id"`
	AliasId               string            `json:"alias_id"`
	InBookrack            bool              `json:"in_bookrack"`
	IsShowNewbook         bool              `json:"is_show_newbook"`
	IsSubscribe           bool              `json:"is_subscribe"`
	OnlineTime            string            `json:"online_time"`
	ArticleInfo           ArticleSimpleInfo `json:"article_info"`
	NeedLogin             int               `json:"need_login"`
	IsOnBookshelf         bool              `json:"is_on_bookshelf"`
	Duration              int               `json:"duration"`
	CollectionNum         int               `json:"collection_num"`
	DdUrl                 string            `json:"dd_url"`
	LearningDaysDesc      string            `json:"learning_days_desc"`
	IsPreferential        int               `json:"is_preferential"`
	IsCountDown           int               `json:"is_count_down"`
	PreferentialStartTime int               `json:"preferential_start_time"`
	PreferentialEndTime   int               `json:"preferential_end_time"`
	EarlyBirdPrice        int               `json:"early_bird_price"`
	TimeNow               int               `json:"time_now"`
	HotLearnDesc          string            `json:"hot_learn_desc"`
	Score                 string            `json:"score"`
	Introduction          string            `json:"introduction"`
	UserScoreCount        int               `json:"user_score_count"`
	Progress              int               `json:"progress"`
	Metrics               string            `json:"metrics"`
	CostIntro             CostIntro         `json:"cost_intro"`
	ConsumedNum           int               `json:"consumed_num"`
	FreeMaximum           int               `json:"free_maximum"`
	BSellingChannelGroup  int               `json:"b_selling_channel_group"`
	TrackInfo             string            `json:"track_info"`
	SortValues            []interface{}     `json:"sort_values"`
}

type AlgoProductResp

type AlgoProductResp struct {
	ProductList []AlgoProduct `json:"product_list"`
	RequestId   string        `json:"request_id"`
	Total       int           `json:"total"`
	IsMore      int           `json:"is_more"`
}

type Article

type Article struct {
	ID          int64  `json:"Id"`
	AppID       int    `json:"AppId"`
	Version     int    `json:"Version"`
	CreateTime  int    `json:"CreateTime"`
	UpdateTime  int    `json:"UpdateTime"`
	PublishTime int    `json:"PublishTime"`
	Status      int    `json:"Status"`
	IDStr       string `json:"IdStr"`
	AppIDStr    string `json:"AppIdStr"`
}

Article metadata

type ArticleBase

type ArticleBase struct {
	ID             int      `json:"id"`
	IDStr          string   `json:"id_str"`
	Enid           string   `json:"enid"`
	ClassEnid      string   `json:"class_enid"`
	OriginID       int      `json:"origin_id"`
	OriginIDStr    string   `json:"origin_id_str"`
	ProductType    int      `json:"product_type"`
	ProductID      int      `json:"product_id"`
	ProductIDStr   string   `json:"product_id_str"`
	ClassID        int      `json:"class_id"`
	ClassIDStr     string   `json:"class_id_str"`
	ChapterID      int      `json:"chapter_id"`
	ChapterIDStr   string   `json:"chapter_id_str"`
	Title          string   `json:"title"`
	URL            string   `json:"url"`
	Summary        string   `json:"summary"`
	Mold           int      `json:"mold"`
	PushContent    string   `json:"push_content"`
	PublishTime    int      `json:"publish_time"`
	PushTime       int      `json:"push_time"`
	PushStatus     int      `json:"push_status"`
	ShareTitle     string   `json:"share_title"`
	ShareContent   string   `json:"share_content"`
	ShareSwitch    int      `json:"share_switch"`
	DdArticleID    int64    `json:"dd_article_id"`
	DdArticleIDStr string   `json:"dd_article_id_str"`
	DdArticleToken string   `json:"dd_article_token"`
	Status         int      `json:"status"`
	CreateTime     int      `json:"create_time"`
	UpdateTime     int      `json:"update_time"`
	CurLearnCount  int      `json:"cur_learn_count"`
	IsFreeTry      bool     `json:"is_free_try"`
	IsUserFreeTry  bool     `json:"is_user_free_try"`
	OrderNum       int      `json:"order_num"`
	IsLike         bool     `json:"is_like"`
	ShareURL       string   `json:"share_url"`
	TrialShareURL  string   `json:"trial_share_url"`
	IsRead         bool     `json:"is_read"`
	LogID          string   `json:"log_id"`
	LogType        string   `json:"log_type"`
	RecommendTitle string   `json:"recommend_title"`
	AudioAliasIds  []string `json:"audio_alias_ids"`
	IsBuy          bool     `json:"is_buy"`
	DdMediaID      int      `json:"dd_media_id"`
	DdMediaIDStr   string   `json:"dd_media_id_str"`
	VideoStatus    int      `json:"video_status"` // 1-video
	DdLiveID       int      `json:"dd_live_id"`
	NotJoinPlan    int      `json:"not_join_plan"`
}

ArticleBase article base info

type ArticleCommentList

type ArticleCommentList struct {
	List   []Comment `json:"list"`
	Total  int       `json:"total"`
	IsMore int       `json:"is_more"`
}

type ArticleDetail

type ArticleDetail struct {
	Article Article `json:"article"`
	Content string  `json:"content"`
}

ArticleDetail article content GET query params token,sign,appid

type ArticleInfo

type ArticleInfo struct {
	ClassID           int          `json:"class_id"`
	ClassEnid         string       `json:"class_enid"`
	Ptype             int          `json:"ptype"`
	Pid               int          `json:"pid"`
	ArticleID         int          `json:"article_id"`
	OriginArticleID   int          `json:"origin_article_id"`
	DdArticleID       int64        `json:"dd_article_id"`
	DdArticleToken    string       `json:"dd_article_token"`
	LikeNum           int          `json:"like_num"`
	IsLike            bool         `json:"is_like"`
	IsBuy             int          `json:"is_buy"`
	ShareSwitch       int          `json:"share_switch"`
	IsFreeTry         bool         `json:"is_free_try"`
	IsUserFreeTry     bool         `json:"is_user_free_try"`
	PrevArticleID     int          `json:"prev_article_id"`
	PrevArticleEnid   string       `json:"prev_article_enid"`
	NextArticleID     int          `json:"next_article_id"`
	NextArticleEnid   string       `json:"next_article_enid"`
	ArticleInfo       ArticleIntro `json:"article_info"`
	ClassInfo         ClassInfo    `json:"class_info"`
	Extra             string       `json:"extra"`
	TrialReadCount    int          `json:"trial_read_count"`
	TrialMaxReadCount int          `json:"trial_max_read_count"`
	ShareImage        string       `json:"share_image"`
	ShareURL          string       `json:"share_url"`
	ArticleTitle      string       `json:"article_title"`
	ClassTitle        string       `json:"class_title"`
	PaymentAudioID    int          `json:"payment_audio_id"`
	ResourceID        int          `json:"resource_id"`
	ResourceType      int          `json:"resource_type"`
	Audio             Audio        `json:"audio"`
}

ArticleInfo article info

type ArticleIntro

type ArticleIntro struct {
	ArticleBase
	MediaBaseInfo []MediaBaseInfo `json:"media_base_info"`
	Audio         *Audio          `json:"audio,omitempty"`
	Video         *[]Video        `json:"video,omitempty"`
}

ArticleIntro article introduce

type ArticleList

type ArticleList struct {
	List         []ArticleIntro `json:"article_list"`
	ClassID      int            `json:"class_id"`
	Ptype        int            `json:"ptype"`
	PID          int            `json:"pid"`
	Reverse      bool           `json:"reverse"`
	ChapterIDStr string         `json:"chapter_id"`
	MaxID        int            `json:"max_id"`
}

ArticleList class article list

type ArticlePoint

type ArticlePoint struct {
	HasArticlePoint int    `json:"has_article_point"`
	Content         string `json:"content"`
}

ArticlePoint article point note

type ArticleSimpleInfo

type ArticleSimpleInfo struct {
	ArticleId            int    `json:"article_id"`
	OriginArticleId      int    `json:"origin_article_id"`
	ArticleAudioDuration int    `json:"article_audio_duration"`
	ArticleTitle         string `json:"article_title"`
	ArticleIntro         string `json:"article_intro"`
	Image                string `json:"image"`
}

type Audio

type Audio struct {
	AliasID        string  `json:"alias_id"`
	Extrainfo      string  `json:"extrainfo"`
	ClassID        int     `json:"class_id"`
	Title          string  `json:"title"`
	ShareTitle     string  `json:"share_title"`
	Mp3PlayURL     string  `json:"mp3_play_url"`
	Duration       int     `json:"duration"`
	Schedule       int     `json:"schedule"`
	TopicID        int     `json:"topic_id"`
	Summary        string  `json:"summary"`
	Price          int     `json:"price"`
	Icon           string  `json:"icon"`
	Size           int     `json:"size"`
	Etag           string  `json:"etag"`
	Token          string  `json:"token"`
	ShareSummary   string  `json:"share_summary"`
	Collection     int     `json:"collection"`
	Count          int     `json:"count"`
	BoredCount     int     `json:"bored_count"`
	AudioType      int     `json:"audio_type"`
	DrmVersion     int     `json:"drm_version"`
	SourceID       int     `json:"source_id"`
	SourceType     int     `json:"source_type"`
	SourceIcon     string  `json:"source_icon"`
	SourceName     string  `json:"source_name"`
	ListenProgress float64 `json:"listen_progress"`
	ListenFinished bool    `json:"listen_finished"`
	DdArticleID    string  `json:"dd_article_id"`
	AudioListIcon  string  `json:"audio_list_icon"`
	ClassCourseID  string  `json:"class_course_id"`
	ClassArticleID string  `json:"class_article_id"`
	LogID          string  `json:"log_id"`
	LogType        string  `json:"log_type"`
	LogInterface   string  `json:"log_interface"`
	Trackinfo      string  `json:"trackinfo"`
	UsedDrm        int     `json:"used_drm"`
	IndexImg       string  `json:"index_img"`
	Reader         string  `json:"reader"`
	ReaderName     string  `json:"reader_name"`
	OdobGroupEnid  string  `json:"odob_group_enid"`
}

Audio audio

type AudioDetail

type AudioDetail struct {
	Detail Audio `json:"audio_detail"`
}

type AudioInfo

type AudioInfo struct {
	ID             int            `json:"id"`
	AudioID        string         `json:"audio_id"`
	Title          string         `json:"title"`
	Icon           string         `json:"icon"`
	Duration       int            `json:"duration"`
	AudioPrice     string         `json:"audio_price"`
	AudioSummary   string         `json:"audio_summary"`
	PublishTime    int            `json:"publish_time"`
	IsVipGived     bool           `json:"is_vip_gived"`
	IsVip          bool           `json:"is_vip"`
	AgencyDetail   AgencyDetail   `json:"agency_detail"`
	LogID          int            `json:"log_id"`
	IsBuy          bool           `json:"is_buy"`
	InBookrack     bool           `json:"in_bookrack"`
	Progress       int            `json:"progress"`
	Tag            []string       `json:"tag"`
	TopicSummary   []TopicSummary `json:"topic_summary"`
	IsLimitFree    bool           `json:"is_limit_free"`
	TopicEncodeId  string         `json:"topic_encode_id"`
	H5ShareUrl     string         `json:"h5_share_url"`
	CanShare       bool           `json:"can_share"`
	LimitFree      LimitFree      `json:"limit_free"`
	VipEndTime     int            `json:"vip_end_time"`
	ButtonType     int            `json:"button_type"`
	HasPlayAuth    bool           `json:"has_play_auth"`
	Rank           Rank           `json:"rank"`
	LearnCount     int            `json:"learn_count"`
	LearnCountDesc string         `json:"learn_count_desc"`
}

type AudioInfoResp

type AudioInfoResp struct {
	AudioInfo AudioInfo `json:"detail"`
	Quality   Quality   `json:"quality"`
}

type AudioList

type AudioList struct {
	List []Audio `json:"list"`
}

AudioList audio basic info list

type Banner struct {
	BeginTime int    `json:"beginTime"`
	EndTime   int    `json:"endTime"`
	Id        int    `json:"id"`
	Img       string `json:"img"`
	IsDelete  int    `json:"isDelete"`
	ModuleId  int    `json:"moduleId"`
	Sort      int    `json:"sort"`
	SourceId  string `json:"sourceId"`
	Title     string `json:"title"`
	Url       string `json:"url"`
	UrlType   int    `json:"urlType"`
}

type Book

type Book struct {
	BookType int `json:"book_type"`
}

type CampHazy

type CampHazy struct {
	SourceIdHazy string `json:"SourceIdHazy"`
	OriginIdHazy string `json:"OriginIdHazy"`
}

type Catalog

type Catalog struct {
	Level     int    `json:"level"`
	Text      string `json:"text"`
	Href      string `json:"href"`
	PlayOrder int    `json:"playOrder"`
}

Catalog ebook catalog

type Chapter

type Chapter struct {
	ID             int           `json:"id"`
	IDStr          string        `json:"id_str"`
	ClassID        int           `json:"class_id"`
	ClassIDStr     string        `json:"class_id_str"`
	OrderName      string        `json:"order_name"`
	Name           string        `json:"name"`
	Intro          string        `json:"intro"`
	PhaseNum       int           `json:"phase_num"`
	Status         int           `json:"status"`
	OrderNum       int           `json:"order_num"`
	IsFinished     int           `json:"is_finished"`
	UpdateTime     int           `json:"update_time"`
	LogID          string        `json:"log_id"`
	LogType        string        `json:"log_type"`
	AppendageCount int           `json:"appendage_count"`
	ArticleList    []ArticleBase `json:"article_list"`
}

Chapter metadata

type CheckLoginResp

type CheckLoginResp struct {
	ErrCode int    `json:"errCode"`
	ErrMsg  string `json:"errMsg"`
	Data    struct {
		Status int `json:"status"` // 1-扫码成功,2-过期
	} `json:"data"`
}

type ClassComment

type ClassComment struct {
	ID             int    `json:"id"`
	UserID         int    `json:"user_id"`
	Title          string `json:"title"`
	Score          int    `json:"score"`
	Content        string `json:"content"`
	NoStyleContent string `json:"no_style_content"`
	NoteID         string `json:"note_id"`
	Nickname       string `json:"nickname"`
	Avatar         string `json:"avatar"`
	AvatarS        string `json:"avatar_s"`
	TrackInfo      string `json:"track_info"`
}

type ClassCommentInfo

type ClassCommentInfo struct {
	CommentList  []ClassComment `json:"comment_list"`
	Count        int            `json:"count"`
	AverageScore string         `json:"average_score"`
}

type ClassInfo

type ClassInfo struct {
	LogID                 string     `json:"log_id"`
	LogType               string     `json:"log_type"`
	ID                    int        `json:"id"`
	IDStr                 string     `json:"id_str"`
	Enid                  string     `json:"enid"`
	ProductID             int        `json:"product_id"`
	ProductType           int        `json:"product_type"`
	HasChapter            int        `json:"has_chapter"`
	Name                  string     `json:"name"`
	Intro                 string     `json:"intro"`
	PhaseNum              int        `json:"phase_num"`
	LearnUserCount        int        `json:"learn_user_count"`
	CurrentArticleCount   int        `json:"current_article_count"`
	Highlight             string     `json:"highlight"`
	Price                 int        `json:"price"`
	IndexImg              string     `json:"index_img"`
	IndexImgApplet        string     `json:"index_img_applet"`
	LogoIphonex           string     `json:"logo_iphonex"`
	SquareImg             string     `json:"square_img"`
	OutlineImg            string     `json:"outline_img"`
	PlayerImg             string     `json:"player_img"`
	ShareTitle            string     `json:"share_title"`
	ShareSummary          string     `json:"share_summary"`
	Status                int        `json:"status"`
	OrderNum              int        `json:"order_num"`
	ShzfURL               string     `json:"shzf_url"`
	ShzfURLQr             string     `json:"shzf_url_qr"`
	PriceDesc             string     `json:"price_desc"`
	ArticleTime           int        `json:"article_time"`
	ArticleTitle          string     `json:"article_title"`
	IsSubscribe           int        `json:"is_subscribe"`
	LecturerUID           int        `json:"lecturer_uid"`
	LecturerName          string     `json:"lecturer_name"`
	LecturerTitle         string     `json:"lecturer_title"`
	LecturerIntro         string     `json:"lecturer_intro"`
	LecturerNameAndTitle  string     `json:"lecturer_name_and_title"`
	LecturerAvatar        string     `json:"lecturer_avatar"`
	IsFinished            int        `json:"is_finished"`
	UpdateTime            int        `json:"update_time"`
	ShareURL              string     `json:"share_url"`
	DefaultSortReverse    bool       `json:"default_sort_reverse"`
	PresaleURL            string     `json:"presale_url"`
	WithoutAudio          bool       `json:"without_audio"`
	ViewType              int        `json:"view_type"`
	H5URLName             string     `json:"h5_url_name"`
	PackageManagerSwitch  bool       `json:"package_manager_switch"`
	PackageManager        bool       `json:"package_manager"`
	LectureAvatorSpecial  string     `json:"lecture_avator_special"`
	MiniShareImg          string     `json:"mini_share_img"`
	EstimatedShelfTime    int        `json:"estimated_shelf_time"`
	EstimatedDownTime     int        `json:"estimated_down_time"`
	CornerImg             string     `json:"corner_img"`
	CornerImgVertical     string     `json:"corner_img_vertical"`
	WithoutGiving         bool       `json:"without_giving"`
	DdURL                 string     `json:"dd_url"`
	PublishTime           int        `json:"publish_time"`
	DdMediaID             string     `json:"dd_media_id"`
	VideoCover            string     `json:"video_cover"`
	IsInVip               bool       `json:"is_in_vip"`
	IsVip                 bool       `json:"is_vip"`
	Collection            Collection `json:"collection"`
	FormalArticleCount    int        `json:"formal_article_count"`
	VideoClass            int        `json:"video_class"`
	VideoClassIntro       string     `json:"video_class_intro"`
	ActivityIcon          string     `json:"activity_icon"`
	ActivityTitle         string     `json:"activity_title"`
	ActivityURL           string     `json:"activity_url"`
	RealityExtraCount     int        `json:"reality_extra_count"`
	RealityFormalCount    int        `json:"reality_formal_count"`
	IntroArticleIds       []int      `json:"intro_article_ids"`
	IsPreferential        int        `json:"is_preferential"`
	IsCountDown           int        `json:"is_count_down"`
	PreferentialStartTime int        `json:"preferential_start_time"`
	PreferentialEndTime   int        `json:"preferential_end_time"`
	EarlyBirdPrice        int        `json:"early_bird_price"`
	TrialCount            int        `json:"trial_count"`
	EarlyBirdMsg          string     `json:"early_bird_msg"`
}

ClassInfo class info

type ClassReviews

type ClassReviews struct {
	ShowText    string `json:"show_text"`
	ReviewDone  bool   `json:"review_done"`
	IsSatisfied bool   `json:"is_satisfied"`
	Detail      string `json:"detail"`
}

type Collection

type Collection struct {
	IsCollected     bool `json:"is_collected"`
	CollectionCount int  `json:"collection_count"`
}

type Comb

type Comb struct {
	Uid     int    `json:"uid"`
	UidHazy string `json:"uid_hazy"`
	Name    string `json:"name"`
}

type Comment

type Comment struct {
	AttachmentType          int            `json:"attachment_type"`
	AuditState              int            `json:"audit_state"`
	Class                   int            `json:"class"`
	CommentReply            string         `json:"comment_reply"`
	CommentReplyTime        int            `json:"comment_reply_time"`
	Content                 string         `json:"content"`
	ContentType             int            `json:"content_type"`
	CreateTime              int            `json:"create_time"`
	CurrentState            int            `json:"current_state"`
	Ddurl                   Ddurl          `json:"ddurl"`
	DetailId                int            `json:"detail_id"`
	Extra                   NotesExtra     `json:"extra"`
	FeedId                  int64          `json:"feed_id"`
	Highlights              []interface{}  `json:"highlights"`
	IsFromMe                int            `json:"is_from_me"`
	CanEdit                 bool           `json:"can_edit"`
	IsLike                  bool           `json:"is_like"`
	IsOpenLedgers           bool           `json:"is_open_ledgers"`
	IsPermission            bool           `json:"is_permission"`
	IsReposted              bool           `json:"is_reposted"`
	IsUpmost                bool           `json:"is_upmost"`
	LevelPermission         bool           `json:"level_permission"`
	Lesson                  Lesson         `json:"lesson"`
	Level                   int            `json:"level"`
	LevelType               int            `json:"level_type"`
	LogId                   string         `json:"log_id"`
	LogType                 string         `json:"log_type"`
	Note                    string         `json:"note"`
	NoteId                  int64          `json:"note_id"`
	NoteIdHazy              string         `json:"note_id_hazy"`
	NoteIdStr               string         `json:"note_id_str"`
	NoteLine                string         `json:"note_line"`
	NoteLineStyle           string         `json:"note_line_style"`
	NoteTitle               string         `json:"note_title"`
	NoteType                int            `json:"note_type"`
	NotesCount              NotesCount     `json:"notes_count"`
	NotesOwner              NotesUser      `json:"notes_owner"`
	NotesTopicInfo          NotesTopicInfo `json:"notes_topic_info,omitempty"`
	OriginAuditState        int            `json:"origin_audit_state"`
	OriginContentType       int            `json:"origin_content_type"`
	OriginNoteIdHazy        string         `json:"origin_note_id_hazy"`
	OriginNoteIdStr         string         `json:"origin_note_id_str"`
	OriginNotesOwner        NotesUser      `json:"origin_notes_owner"`
	OriginState             int            `json:"origin_state"`
	Pid                     int            `json:"pid"`
	PidStr                  string         `json:"pid_str"`
	Ptype                   int            `json:"ptype"`
	RefId                   int            `json:"ref_id"`
	RootAuditState          int            `json:"root_audit_state"`
	RootContentType         int            `json:"root_content_type"`
	RootHighlights          []interface{}  `json:"root_highlights"`
	RootNoteId              int            `json:"root_note_id"`
	RootNoteIdHazy          string         `json:"root_note_id_hazy"`
	RootNoteIdStr           string         `json:"root_note_id_str"`
	RootNotesOwner          NotesUser      `json:"root_notes_owner"`
	RootState               int            `json:"root_state"`
	ShareUrl                string         `json:"share_url"`
	SourceType              int            `json:"source_type"`
	State                   int            `json:"state"`
	StyleNoteLine           string         `json:"style_note_line"`
	Switch                  Switch         `json:"switch"`
	Tags                    []interface{}  `json:"tags"`
	Uid                     int            `json:"uid"`
	UidHazy                 string         `json:"uid_hazy"`
	UpdateTime              int            `json:"update_time"`
	UserExpectStatus        int            `json:"user_expect_status"`
	Video                   CommentVideo   `json:"video"`
	CommentIdStr            string         `json:"comment_id_str"`
	CommentReplyUser        NotesUser      `json:"comment_reply_user"`
	RepostCommentNoteIdStr  string         `json:"repost_comment_note_id_str"`
	RepostCommentNoteIdHazy string         `json:"repost_comment_note_id_hazy"`
	PidHazy                 string         `json:"pid_hazy"`
}

type CommentVideo

type CommentVideo struct {
	CardType             int    `json:"card_type"`
	Resource             string `json:"resource"`
	ResourceCommentCount int    `json:"resource_comment_count"`
	ResourceIcon         string `json:"resource_icon"`
	ResourceStudyCount   int    `json:"resource_study_count"`
	VideoCover           string `json:"video_cover"`
	VideoDuration        int    `json:"video_duration"`
	VideoDurationLabel   string `json:"video_duration_label"`
	VideoHeight          int    `json:"video_height"`
	VideoId              int    `json:"video_id"`
	VideoRst             string `json:"video_rst"`
	VideoState           int    `json:"video_state"`
	VideoWidth           int    `json:"video_width"`
	ViewCount            int    `json:"view_count"`
}

type Content

type Content struct {
	Aid      string      `json:"aid"`
	AliasID  string      `json:"aliasId"`
	Contents interface{} `json:"contents"`
	Desc     string      `json:"desc"`
	Duration int64       `json:"duration"`
	Height   int64       `json:"height"`
	Jump     string      `json:"jump"`
	Justify  string      `json:"justify"`
	Legend   string      `json:"legend"`
	Level    int         `json:"level"`
	Size     int64       `json:"size"`
	Text     string      `json:"text"`
	Title    string      `json:"title"`
	Type     string      `json:"type"`
	Ordered  bool        `json:"ordered"`
	URL      string      `json:"url"`
	Width    int64       `json:"width"`
	Labels   []string    `json:"labels"`
}

Content article Content

type Contents

type Contents []struct {
	Text struct {
		Bold      bool   `json:"bold"`
		Content   string `json:"content"`
		Highlight bool   `json:"highlight"`
	} `json:"text"`
	Type string `json:"type"`
}

type CookieOptions

type CookieOptions struct {
	GAT           string `json:"gat"`
	ISID          string `json:"isid"`
	Iget          string `json:"iget"`
	Token         string `json:"token"`
	CsrfToken     string `json:"csrfToken"`
	GuardDeviceID string `json:"_guard_device_id" mapstructure:"_guard_device_id"`
	SID           string `json:"_sid" mapstructure:"_sid"`
	AcwTc         string `json:"acw_tc" mapstructure:"acw_tc"`
	AliyungfTc    string `json:"aliyungf_tc"`
	CookieStr     string `json:"cookieStr"`
}

CookieOptions dedao cookie options

type CostIntro

type CostIntro struct {
	Price string `json:"price"`
}

type Course

type Course struct {
	Enid           string        `json:"enid"`
	ID             int           `json:"id"`
	Type           int           `json:"type"`
	ClassType      int           `json:"class_type"`
	ClassID        int           `json:"class_id"`
	HasExtra       bool          `json:"has_extra"`
	ClassFinished  bool          `json:"class_finished"`
	Title          string        `json:"title"`
	Intro          string        `json:"intro"`
	Author         string        `json:"author"`
	Icon           string        `json:"icon"`
	CreateTime     int           `json:"create_time"`
	LastRead       string        `json:"last_read"`
	Progress       int           `json:"progress"`
	Duration       int           `json:"duration"`
	CourseNum      int           `json:"course_num"`
	PublishNum     int           `json:"publish_num"`
	LogID          string        `json:"log_id"`
	LogType        string        `json:"log_type"`
	IsTop          int           `json:"is_top"`
	LastActionTime int           `json:"last_action_time"`
	IsNew          int           `json:"is_new"`
	IsFinished     int           `json:"is_finished"`
	Size           string        `json:"size"`
	DdURL          string        `json:"dd_url"`
	AssetsType     int           `json:"assets_type"`
	DrmToken       string        `json:"drm_token"`
	AudioDetail    Audio         `json:"audio_detail"`
	ProductPrice   int           `json:"product_price"`
	Price          string        `json:"price"`
	ProductIntro   string        `json:"product_intro"`
	HasPlayAuth    bool          `json:"has_play_auth"`
	ExtInfo        []ReplierInfo `json:"ext_info"`
	Status         int           `json:"status"`
	DdExtURL       string        `json:"dd_ext_url"`
	IsCollected    bool          `json:"is_collected"`
	WendaExtInfo   WendaExtInfo  `json:"wenda_ext_info"`
}

Course metadata

func EnlightenClub

func EnlightenClub() (detail Course)

func (*Course) HasAudio

func (c *Course) HasAudio() bool

HasAudio include audio

type CourseCategory

type CourseCategory struct {
	Name     string `json:"name"`
	Count    int    `json:"count"`
	Category string `json:"category"`
}

CourseCategory course category metadata

type CourseCategoryList

type CourseCategoryList struct {
	Data struct {
		List      []CourseCategory `json:"list"`
		IsShowURL bool             `json:"is_show_url"`
		PCURL     string           `json:"pc_url"`
	} `json:"data"`
}

CourseCategoryList course type list

type CourseInfo

type CourseInfo struct {
	ClassInfo              ClassInfo     `json:"class_info"`
	Items                  []CourseIntro `json:"items"`
	ArticleIntro           ArticleIntro  `json:"intro_article"`
	ChapterList            []Chapter     `json:"chapter_list"`
	FlatArticleList        []ArticleBase `json:"flat_article_list"`
	UserType               string        `json:"user_type"`
	HasMoreFlatArticleList bool          `json:"has_more_flat_article_list"`
	IsShowGrading          bool          `json:"is_show_grading"`

	ClassVideo           interface{}          `json:"class_video"`
	LiveInfo             interface{}          `json:"live_info"`
	TimeNow              int                  `json:"time_now"`
	ClassReviewsCount    int                  `json:"class_reviews_count"`
	ClassReviews         ClassReviews         `json:"class_reviews"`
	AchievementDetail    interface{}          `json:"achievement_detail"`
	ClassCommentInfo     ClassCommentInfo     `json:"class_comment_info"`
	LiveInnerArticleInfo LiveInnerArticleInfo `json:"live_inner_article_info"`
}

CourseInfo product intro info

func (*CourseInfo) HasAudio

func (c *CourseInfo) HasAudio() bool

HasAudio include audio

func (*CourseInfo) IsSubscribe

func (c *CourseInfo) IsSubscribe() bool

IsSubscribe Is Subscribe

type CourseIntro

type CourseIntro struct {
	Type    int    `json:"type"`
	Title   string `json:"title"`
	Content string `json:"content"`
}

CourseIntro course introduce

type CourseList

type CourseList struct {
	List   []Course `json:"list"`
	ISMore int      `json:"is_more"`
	Page   int      `json:"page"`
}

CourseList product list

type Ddurl

type Ddurl struct {
	NeedVisitorPopLoginView bool   `json:"needVisitorPopLoginView"`
	NeedCheckBuy            bool   `json:"needCheckBuy"`
	Url1                    string `json:"url1"`
	Url2                    string `json:"url2"`
}

type EbookBlock

type EbookBlock struct {
	ChapterID   string `json:"chapterId"`
	SectionID   string `json:"sectionID"`
	EndOffset   int    `json:"endOffset"`
	StartOffset int    `json:"startOffset"`
}

EbookBlock ebook block

type EbookCommentList

type EbookCommentList struct {
	EbookScore EbookScore `json:"ebook_score"`
	SelfInfo   SelfInfo   `json:"self_info"`
	List       []Comment  `json:"list"`
	Total      int        `json:"total"`
	Book       Book       `json:"book"`
}

type EbookDetail

type EbookDetail struct {
	ID                  int           `json:"id"`
	Title               string        `json:"title"`
	Style               int           `json:"style"`
	Cover               string        `json:"cover"`
	Count               int           `json:"count"`
	Price               string        `json:"price"`
	Status              int           `json:"status"`
	OperatingTitle      string        `json:"operating_title"`
	OtherShareTitle     string        `json:"other_share_title"`
	OtherShareSummary   string        `json:"other_share_summary"`
	AuthorInfo          string        `json:"author_info"`
	BookAuthor          string        `json:"book_author"`
	PublishTime         string        `json:"publish_time"`
	CatalogList         []Catalog     `json:"catalog_list"`
	BookIntro           string        `json:"book_intro"`
	BSpecialPrice       string        `json:"b_special_price"`
	CurrentPrice        string        `json:"current_price"`
	IsBuy               bool          `json:"is_buy"`
	IsTrial             bool          `json:"is_trial"`
	IsTtsSwitch         bool          `json:"is_tts_switch"`
	LogID               string        `json:"log_id"`
	LogType             string        `json:"log_type"`
	OriginalPrice       string        `json:"original_price"`
	AuthorList          []string      `json:"author_list"`
	CanTrialRead        bool          `json:"can_trial_read"`
	TrialReadProportion string        `json:"trial_read_proportion"`
	WithVideo           bool          `json:"with_video"`
	Enid                string        `json:"enid"`
	BOverseasPurchase   int           `json:"b_overseas_purchase"`
	RankName            string        `json:"rank_name"`
	RankNum             int           `json:"rank_num"`
	IsVipBook           int           `json:"is_vip_book"`
	IsOnBookshelf       bool          `json:"is_on_bookshelf"`
	ProductScore        string        `json:"product_score"`
	ReadTime            int           `json:"read_time"`
	ReadNumber          []interface{} `json:"read_number"`
	Press               Press         `json:"press"`
	DoubanScore         string        `json:"douban_score"`
	ClassifyName        string        `json:"classify_name"`
	ClassifyID          int           `json:"classify_id"`
	AddStudylistDdURL   string        `json:"add_studylist_dd_url"`
}

EbookDetail ebook detail

type EbookInfo

type EbookInfo struct {
	BookInfo struct {
		EbookBlock [][]EbookBlock   `json:"block"`
		Orders     []EbookOrders    `json:"orders"`
		Toc        []utils.EbookToc `json:"toc"`
		Pages      []EbookInfoPage  `json:"pages"`
	} `json:"bookInfo"`
}

EbookInfo ebook info

type EbookInfoPage

type EbookInfoPage struct {
	Cid         string `json:"cid"`
	EndOffset   int    `json:"end_offset"`
	PageNum     int    `json:"page_num"`
	StartOffset int    `json:"start_offset"`
}

type EbookOrders

type EbookOrders struct {
	ChapterID  string `json:"chapterId"`
	PathInEpub string `json:"pathInEpub"`
}

EbookOrders ebook orders

type EbookPage

type EbookPage struct {
	IsEnd bool `json:"is_end"`
	Pages []struct {
		BeginOffset           int64  `json:"begin_offset"`
		EndOffset             int64  `json:"end_offset"`
		IsFirst               bool   `json:"is_first"`
		IsLast                bool   `json:"is_last"`
		Svg                   string `json:"svg"`
		ViewHeighToChapterTop int64  `json:"view_heigh_to_chapter_top"`
	} `json:"pages"`
}

type EbookScore

type EbookScore struct {
	Id           int      `json:"id"`
	Pid          int      `json:"pid"`
	Ptype        int      `json:"ptype"`
	Isbn         string   `json:"isbn"`
	AverageScore string   `json:"average_score"`
	ScoreInfo    []string `json:"score_info"`
	CreateTime   string   `json:"create_time"`
	UpdateTime   string   `json:"update_time"`
	Total        string   `json:"total"`
	Status       int      `json:"status"`
	BookStatus   int      `json:"book_status"`
}

type EbookShelfAddResp

type EbookShelfAddResp struct {
	Data struct {
		N     int `json:"n"`
		Count int `json:"count"`
	} `json:"data"`
}

type EbookToc

type EbookToc struct {
	Href      string `json:"href"`
	Level     int    `json:"level"`
	PlayOrder int    `json:"playOrder"`
	Offset    int    `json:"offset"`
	Text      string `json:"text"`
}

EbookToc ebook toc

type EbookVIPInfo

type EbookVIPInfo struct {
	UID                int           `json:"uid"`
	Nickname           string        `json:"nickname"`
	Slogan             string        `json:"slogan"`
	Avatar             string        `json:"avatar"`
	AvatarS            string        `json:"avatar_s"`
	MonthCount         int           `json:"month_count"`
	TotalCount         int           `json:"total_count"`
	WeekCount          int           `json:"week_count"`
	FinishedCount      int           `json:"finished_count"`
	SavePrice          string        `json:"save_price"`
	IsVip              bool          `json:"is_vip"`
	BeginTime          int           `json:"begin_time"`
	EndTime            int           `json:"end_time"`
	EnterpriseEndTime  int           `json:"enterprise_end_time"`
	ExpireTime         int           `json:"expire_time"`
	SurplusTime        int           `json:"surplus_time"`
	IsExpire           bool          `json:"is_expire"`
	CardID             int           `json:"card_id"`
	CardType           int           `json:"card_type"`
	PriceDesc          string        `json:"price_desc"`
	IsBuyMonthDiscount bool          `json:"is_buy_month_discount"`
	MonthDiscountPrice int           `json:"month_discount_price"`
	DdURL              string        `json:"dd_url"`
	ErrTips            string        `json:"err_tips"`
	VStateValue        int           `json:"v_state_value"`
	UpgradeTips        []interface{} `json:"upgrade_tips"`
}

EbookVIPInfo ebook vip info

type FlatArticleList

type FlatArticleList struct {
	ID             int           `json:"id"`
	IDStr          string        `json:"id_str"`
	Enid           string        `json:"enid"`
	ClassEnid      string        `json:"class_enid"`
	OriginID       int           `json:"origin_id"`
	OriginIDStr    string        `json:"origin_id_str"`
	ProductType    int           `json:"product_type"`
	ProductID      int           `json:"product_id"`
	ProductIDStr   string        `json:"product_id_str"`
	ClassID        int           `json:"class_id"`
	ClassIDStr     string        `json:"class_id_str"`
	ChapterID      int           `json:"chapter_id"`
	ChapterIDStr   string        `json:"chapter_id_str"`
	Title          string        `json:"title"`
	URL            string        `json:"url"`
	Summary        string        `json:"summary"`
	Mold           int           `json:"mold"`
	PushContent    string        `json:"push_content"`
	PublishTime    int           `json:"publish_time"`
	PushTime       int           `json:"push_time"`
	PushStatus     int           `json:"push_status"`
	ShareTitle     string        `json:"share_title"`
	ShareContent   string        `json:"share_content"`
	ShareSwitch    int           `json:"share_switch"`
	DdArticleID    int64         `json:"dd_article_id"`
	DdArticleIDStr string        `json:"dd_article_id_str"`
	DdArticleToken string        `json:"dd_article_token"`
	Status         int           `json:"status"`
	CreateTime     int           `json:"create_time"`
	UpdateTime     int           `json:"update_time"`
	CurLearnCount  int           `json:"cur_learn_count"`
	IsFreeTry      bool          `json:"is_free_try"`
	IsUserFreeTry  bool          `json:"is_user_free_try"`
	OrderNum       int           `json:"order_num"`
	IsLike         bool          `json:"is_like"`
	ShareURL       string        `json:"share_url"`
	TrialShareURL  string        `json:"trial_share_url"`
	IsRead         bool          `json:"is_read"`
	LogID          string        `json:"log_id"`
	LogType        string        `json:"log_type"`
	RecommendTitle string        `json:"recommend_title"`
	AudioAliasIds  []interface{} `json:"audio_alias_ids"`
	IsBuy          bool          `json:"is_buy"`
	DdMediaID      int           `json:"dd_media_id"`
	DdMediaIDStr   string        `json:"dd_media_id_str"`
	VideoStatus    int           `json:"video_status"`
	DdLiveID       int           `json:"dd_live_id"`
	NotJoinPlan    int           `json:"not_join_plan"`
}

FlatArticleList flat

type HTab

type HTab struct {
	Id             int         `json:"id"`
	Title          string      `json:"title"`
	SubTitle       string      `json:"subTitle"`
	SearchKey      string      `json:"searchKey"`
	Url            string      `json:"url"`
	PinnedDeadLine interface{} `json:"pinnedDeadLine"`
	SceneId        int         `json:"sceneId"`
	Uv             int         `json:"uv"`
	Click          int         `json:"click"`
	Ctr            int         `json:"ctr"`
	TrackInfo      string      `json:"trackInfo"`
	TurnType       int         `json:"turnType"`
	HotType        int         `json:"hotType"`
	LogId          int         `json:"log_id"`
	LogType        string      `json:"log_type"`
}

type HomeCategory

type HomeCategory struct {
	EnglishName  string  `json:"englishName"`
	Enid         string  `json:"enid"`
	Icon         string  `json:"icon"`
	Id           int     `json:"id"`
	LabelList    []Label `json:"labelList"`
	Name         string  `json:"name"`
	NavType      int     `json:"navType"`
	RelationId   int     `json:"relationId"`
	RelationName string  `json:"relationName"`
	Type         int     `json:"type"`
}

type HomeData

type HomeData struct {
	ModuleList   []HomeModule   `json:"moduleList"`
	CategoryList []HomeCategory `json:"categoryList"`
	Banner       []Banner       `json:"banner"`
}

type HomeInitState

type HomeInitState struct {
	IsLogin  bool     `json:"isLogin"`
	HomeData HomeData `json:"homeData"`
	Uid      string   `json:"uid"`
}

type HomeModule

type HomeModule struct {
	Description string `json:"description"`
	Ext1        string `json:"ext1"`
	Ext2        string `json:"ext2"`
	Ext3        string `json:"ext3"`
	Ext4        string `json:"ext4"`
	Ext5        string `json:"ext5"`
	Id          int    `json:"id"`
	IsShow      int    `json:"isShow"`
	Name        string `json:"name"`
	Sort        int    `json:"sort"`
	Title       string `json:"title"`
	Type        string `json:"type"`
}

type HotTab

type HotTab struct {
	Id         int       `json:"id"`
	Name       string    `json:"name"`
	SceneId    int       `json:"scene_id"`
	Status     int       `json:"status"`
	SortNum    int       `json:"sort_num"`
	CreateTime time.Time `json:"create_time"`
	UpdateTime time.Time `json:"update_time"`
	SceneName  string    `json:"scene_name"`
	List       []HTab    `json:"list"`
}

type Label

type Label struct {
	Enid string `json:"enid"`
	Name string `json:"name"`
}

type Lesson

type Lesson struct {
	Pid     int    `json:"pid"`
	PidStr  string `json:"pid_str"`
	Ptype   int    `json:"ptype"`
	PidHazy string `json:"pid_hazy"`
}

type LimitFree

type LimitFree struct {
	LimitFreeExpire bool `json:"limit_free_expire"`
	IsLimitFree     bool `json:"is_limit_free"`
	IsRedPacket     bool `json:"is_red_packet"`
	FreeBeginTime   int  `json:"free_begin_time"`
	FreeEndTime     int  `json:"free_end_time"`
	FreeMaximum     int  `json:"free_maximum"`
	ConsumeNum      int  `json:"consume_num"`
	VipEndTime      int  `json:"vip_end_time"`
}

type Live

type Live struct {
	Status               int    `json:"status"`
	OnlineNum            int    `json:"online_num"`
	ReservationNum       int    `json:"reservation_num"`
	Title                string `json:"title"`
	RoomId               int    `json:"room_id"`
	Intro                string `json:"intro"`
	Starttime            int    `json:"starttime"`
	StarttimeDesc        string `json:"starttime_desc"`
	Duration             int    `json:"duration"`
	Endtime              int    `json:"endtime"`
	Id                   int    `json:"id"`
	Type                 int    `json:"type"`
	LogId                int    `json:"log_id"`
	LogType              string `json:"log_type"`
	LiveType             string `json:"live_type"`
	LivePrivilegeTips    string `json:"live_privilege_tips"`
	HomeImg              string `json:"home_img"`
	Author               string `json:"author"`
	PvNum                int    `json:"pv_num"`
	PrivilegeStatus      int    `json:"privilege_status"`
	AliasId              string `json:"alias_id"`
	AppointmentStatus    int    `json:"appointment_status"`
	PlaybackStatus       int    `json:"playback_status"`
	PublishStatus        int    `json:"publish_status"`
	LiveDurationText     string `json:"live_duration_text"`
	VideoDuration        string `json:"video_duration"`
	LivePrivilegeType    int    `json:"live_privilege_type"`
	TimeReport           int    `json:"time_report"`
	HideOnlineNumber     int    `json:"hide_online_number"`
	LivePv               int    `json:"live_pv"`
	LiveViewers          int    `json:"live_viewers"`
	ShowPv               int    `json:"show_pv"`
	IsPrivilegeLive      bool   `json:"is_privilege_live"`
	InviteCount          int    `json:"invite_count"`
	CanWatch             bool   `json:"can_watch"`
	HasBuy               bool   `json:"has_buy"`
	PrivilegeLiveTag     string `json:"privilege_live_tag"`
	SubscribeSummary     string `json:"subscribe_summary"`
	DdUrl                string `json:"dd_url"`
	ShowSubscribeSummary int    `json:"show_subscribe_summary"`
	AlertTips            string `json:"alert_tips"`
	Currenttime          int    `json:"currenttime"`
	VideoCoverM3U8       string `json:"video_cover_m3u8"`
	LiveCoverM3U8        string `json:"live_cover_m3u8"`
	WebPcMediaToken      string `json:"web_pc_media_token"`
	LdFlv                string `json:"ld_flv"`
	VideoCoverMediaId    int64  `json:"video_cover_media_id"`
	LastStartTimestamp   int    `json:"last_start_timestamp"`
	LastEndTimestamp     int    `json:"last_end_timestamp"`

	PrivilegeProduct LivePrivilegeProduct `json:"privilege_product"`
}

type LiveActivityInfo

type LiveActivityInfo struct {
	LiveActivityDdurl    string `json:"live_activity_ddurl"`
	LiveActivityType     int    `json:"live_activity_type"`
	LivePlaybackDisabled int    `json:"live_playback_disabled"`
	LiveActivityId       string `json:"live_activity_id"`
}

type LiveArticleInfo

type LiveArticleInfo struct {
	ArticleId          int    `json:"article_id"`
	ArticleDetailDdurl string `json:"article_detail_ddurl"`
}

type LiveBase

type LiveBase struct {
	LiveLectureList     []LiveLecture    `json:"live_lecture_list"`
	LiveOutline         LiveOutline      `json:"live_outline"`
	RoomDetailDdurl     string           `json:"room_detail_ddurl"`
	Status              int              `json:"status"`
	ShareImageSquare    string           `json:"share_image_square"`
	PosterImage         string           `json:"poster_image"`
	Intro               string           `json:"intro"`
	Title               string           `json:"title"`
	Starttimestamp      int              `json:"starttimestamp"`
	ShareTitle          string           `json:"share_title"`
	ShareSummary        string           `json:"share_summary"`
	Id                  int              `json:"id"`
	ShareUrl            string           `json:"share_url"`
	Booking             LiveBooking      `json:"booking"`
	LiveSeriesIds       string           `json:"live_series_ids"`
	PlaybackStatus      int              `json:"playback_status"`
	PublishStatus       int              `json:"publish_status"`
	LiveSeriresInfo     interface{}      `json:"live_serires_info"`
	LiveType            string           `json:"live_type"`
	Ptype               int              `json:"ptype"`
	LastStartTime       string           `json:"last_start_time"`
	LastEndTime         string           `json:"last_end_time"`
	MaxNum              int              `json:"max_num"`
	Uv                  int              `json:"uv"`
	LivePv              int              `json:"live_pv"`
	LiveViewers         int              `json:"live_viewers"`
	ShowPv              int              `json:"show_pv"`
	InviteCount         int              `json:"invite_count"`
	IsPrivilegeLive     bool             `json:"is_privilege_live"`
	AuthorText          string           `json:"author_text"`
	LiveArticleInfo     LiveArticleInfo  `json:"live_article_info"`
	LiveActivityInfo    LiveActivityInfo `json:"live_activity_info"`
	IsActivityLive      bool             `json:"is_activity_live"`
	YouzanVipProductUrl string           `json:"youzan_vip_product_url"`
	LiveUv              int              `json:"live_uv"`
	LiveMedalModule     interface{}      `json:"live_medal_module"`
	LivePrivilegeType   int              `json:"live_privilege_type"`
	LiveRecordNum       string           `json:"live_record_num"`
}

type LiveBooking

type LiveBooking struct {
	BookStatus int `json:"bookStatus"`
	TotalNum   int `json:"totalNum"`
}

type LiveCheck

type LiveCheck struct {
	Status             int    `json:"status"`
	Token              string `json:"token"`
	LivePrivilegeTips  string `json:"live_privilege_tips"`
	LiveType           string `json:"live_type"`
	ExpiredSeconds     int    `json:"expired_seconds"`
	ProductType        int    `json:"product_type"`
	ProductId          int    `json:"product_id"`
	Ddurl              string `json:"ddurl"`
	NeedBuy            bool   `json:"need_buy"`
	ButtonText         string `json:"button_text"`
	ProductSubid       int    `json:"product_subid"`
	LiveProductBuyTips string `json:"live_product_buy_tips"`
	InviteCount        int    `json:"invite_count"`
	IsPrivilegeLive    bool   `json:"is_privilege_live"`
	ErrorMsg           string `json:"error_msg"`
	HasBuy             bool   `json:"has_buy"`
}

type LiveInnerArticleInfo

type LiveInnerArticleInfo struct {
	ArticleID    int    `json:"article_id"`
	ArticleTitle string `json:"article_title"`
	LogType      string `json:"log_type"`
	LogID        string `json:"log_id"`
}

type LiveLecture

type LiveLecture struct {
	TeacherUid      int    `json:"teacher_uid"`
	TeacherName     string `json:"teacher_name"`
	TeacherIntro    string `json:"teacher_intro"`
	Avatar          string `json:"avatar"`
	ProfileUrl      string `json:"profile_url"`
	IsBigv          int    `json:"is_bigv"`
	FllowStatus     int    `json:"fllow_status"`
	FollowCount     int    `json:"follow_count"`
	FansCount       int    `json:"fans_count"`
	TeacherUidAlias string `json:"teacher_uid_alias"`
}

type LiveList

type LiveList struct {
	IsMore int    `json:"is_more"`
	List   []Live `json:"list"`
}

type LiveOutline

type LiveOutline struct {
	Title   string `json:"title"`
	Content string `json:"content"`
}

type LivePrivilegeProduct

type LivePrivilegeProduct struct {
	Id              int    `json:"id"`
	ProductId       int    `json:"product_id"`
	ProductSubId    int    `json:"product_sub_id"`
	ProductType     int    `json:"product_type"`
	Title           string `json:"title"`
	Ddurl           string `json:"ddurl"`
	LiveStartTime   int    `json:"live_start_time"`
	LiveId          int    `json:"live_id"`
	HasPrivilege    bool   `json:"has_privilege"`
	AliasName       string `json:"alias_name"`
	AliasId         string `json:"alias_id"`
	IsPrivilegeLive bool   `json:"is_privilege_live"`
	ProductGroupId  int    `json:"product_group_id"`
}

type LiveTab

type LiveTab struct {
	TabName  string `json:"tab_name"`
	TabCount int    `json:"tab_count"`
	LiveType int    `json:"live_type"`
}

type LiveTabList

type LiveTabList struct {
	List []LiveTab `json:"list"`
}

type MediaBaseInfo

type MediaBaseInfo struct {
	MediaType     int    `json:"media_type"` // 1-audio,2-video
	SourceID      string `json:"source_id"`
	SecurityToken string `json:"security_token"`
}

MediaBaseInfo media info

type MediaVolc

type MediaVolc struct {
	MediaAliasId string       `json:"media_alias_id"`
	LastModify   time.Time    `json:"last_modify"`
	VersionId    int          `json:"version_id"`
	Tracks       []VideoTrack `json:"tracks"`
}
type Navigation struct {
	Enid         string  `json:"enid"`
	Id           int     `json:"id"`
	RelationId   int     `json:"relation_id"`
	RelationName string  `json:"relation_name"`
	Type         int     `json:"type"`
	NavType      int     `json:"nav_type"`
	Name         string  `json:"name"`
	Icon         string  `json:"icon"`
	EnglishName  string  `json:"english_name"`
	LabelList    []Label `json:"label_list"`
}

type NoteBaseSource

type NoteBaseSource struct {
	Title          string   `json:"title"`
	SubTitle       string   `json:"sub_title"`
	Img            string   `json:"img"`
	PType          int      `json:"p_type"`
	PidStr         string   `json:"pid_str"`
	NotePtype      int      `json:"note_ptype"`
	IsPopLoginView bool     `json:"is_pop_login_view"`
	NeedCheckBuy   bool     `json:"need_check_buy"`
	URL1           string   `json:"url1"`
	URL2           string   `json:"url2"`
	CampHazy       CampHazy `json:"camp_hazy"`
}

NoteBaseSource Note BaseSource

type NoteCount

type NoteCount struct {
	RepostCount  int `json:"repost_count"`
	CommentCount int `json:"comment_count"`
	LikeCount    int `json:"like_count"`
}

NoteCount note count

type NoteDetail

type NoteDetail struct {
	DetailTitle     string        `json:"detail_title"`
	Comb            *[]Comb       `json:"comb"`
	State           int           `json:"state"`
	IsMine          bool          `json:"is_mine"`
	IsReposted      bool          `json:"is_reposted"`
	IsLike          bool          `json:"is_like"`
	OwnUIDHazy      string        `json:"own_uid_hazy"`
	Topic           NoteTopic     `json:"topic"`
	Tags            []interface{} `json:"tags"`
	Folders         interface{}   `json:"folders"`
	NoteCount       NoteCount     `json:"note_count"`
	FPart           NoteFPart     `json:"f_part"`
	SPart           *NoteFPart    `json:"s_part"`
	ShareURL        string        `json:"share_url"`
	Class           int           `json:"class"`
	Level           int           `json:"level"`
	LevelType       int           `json:"level_type"`
	LevelPermission bool          `json:"level_permission"`
	NotesType       int           `json:"notes_type"`
}

NoteDetail note detail

type NoteFPart

type NoteFPart struct {
	UID           int            `json:"uid"`
	UIDHazy       string         `json:"uid_hazy"`
	NickName      string         `json:"nick_name"`
	Avatar        string         `json:"avatar"`
	Follow        int            `json:"follow"`
	IsV           int            `json:"is_v"`
	Slogan        string         `json:"slogan"`
	VInfo         string         `json:"v_info"`
	StudentID     int            `json:"student_id"`
	StudentIDHazy string         `json:"student_id_hazy"`
	IsPoster      bool           `json:"is_poster"`
	QrCode        string         `json:"qr_code"`
	Note          string         `json:"note"`
	TimeDesc      string         `json:"time_desc"`
	NoteTitle     string         `json:"note_title"`
	NoteScore     string         `json:"note_score"`
	NoteLine      string         `json:"note_line"`
	NoteID        string         `json:"note_id"`
	NoteIDHazy    string         `json:"note_id_hazy"`
	Tip           string         `json:"tip"`
	Images        []string       `json:"images"`
	BaseSource    NoteBaseSource `json:"base_source"`
	StyleNoteLine string         `json:"style_note_line"`
}

NoteFPart Note FPart

type NoteTopic

type NoteTopic struct {
	TopicID     int    `json:"topic_id"`
	TopicIDHazy string `json:"topic_id_hazy"`
	IsElected   bool   `json:"is_elected"`
	IsTopmost   bool   `json:"is_topmost"`
	TopicName   string `json:"topic_name"`
}

type NotesCount

type NotesCount struct {
	CommentCount int `json:"comment_count"`
	LikeCount    int `json:"like_count"`
	RepostCount  int `json:"repost_count"`
}

type NotesExtra

type NotesExtra struct {
	OldClassID       int           `json:"OldClassID"`
	OldClassType     int           `json:"OldClassType"`
	ArticleTitle     string        `json:"article_title"`
	AuthorName       string        `json:"author_name"`
	BookAuthor       string        `json:"book_author"`
	BookId           int           `json:"book_id"`
	BookIsOldVersion int           `json:"book_is_old_version"`
	BookName         string        `json:"book_name"`
	BookShelfStatus  int           `json:"book_shelf_status"`
	ColumnTitle      string        `json:"column_title"`
	Images           []interface{} `json:"images"`
	ImagesSuffix     []interface{} `json:"images_suffix"`
	Img              string        `json:"img"`
	LogId            string        `json:"log_id"`
	ResourceIcon     string        `json:"resource_icon"`
	ScoreDesc        string        `json:"score_desc"`
	ScoreStr         string        `json:"score_str"`
	ShareUrl         string        `json:"share_url"`
	SourceId         int           `json:"source_id"`
	SourceSubTitle   string        `json:"source_sub_title"`
	SourceTitle      string        `json:"source_title"`
	SourceType       int           `json:"source_type"`
	SourceTypeName   string        `json:"source_type_name"`
	SubTitle         string        `json:"sub_title"`
	Title            string        `json:"title"`
	Tname            string        `json:"tname"`
	IsVipBook        int           `json:"is_vip_book,omitempty"`
	LogType          string        `json:"log_type,omitempty"`

	ColumnIntro  string `json:"column_intro"`
	ViewType     int    `json:"view_type"`
	AudioIdAlias string `json:"audio_id_alias"`
}

type NotesList

type NotesList struct {
	HasMore          bool          `json:"has_more"`
	List             []interface{} `json:"list"`
	NoteDetailList   []NoteDetail  `json:"note_detail_list"`
	PresenterUID     []interface{} `json:"presenter_uid"`
	PresenterUIDHazy []string      `json:"presenter_uid_hazy"`
}

NotesList topic NotesList

type NotesTimeline

type NotesTimeline struct {
	IsMore bool         `json:"is_more"`
	MaxId  string       `json:"max_id"`
	Notes  []NoteDetail `json:"notes"`
}

type NotesTopicInfo

type NotesTopicInfo struct {
	IsTopicNotesElected bool   `json:"is_topic_notes_elected"`
	IsTopicNotesTopmost bool   `json:"is_topic_notes_topmost"`
	NotesTopicId        string `json:"notes_topic_id"`
	NotesTopicIdHazy    string `json:"notes_topic_id_hazy"`
	NotesTopicName      string `json:"notes_topic_name"`
}

type NotesUser

type NotesUser struct {
	Id          string `json:"id"`
	Uid         int    `json:"uid"`
	Name        string `json:"name"`
	Avatar      string `json:"avatar"`
	Follow      int    `json:"follow"`
	IsV         int    `json:"isV"`
	Slogan      string `json:"slogan"`
	Vinfo       string `json:"Vinfo"`
	StudentId   int    `json:"student_id"`
	IsPoster    bool   `json:"is_poster"`
	Qrcode      string `json:"qrcode"`
	LogId       string `json:"log_id"`
	LogType     string `json:"log_type"`
	UidHazy     string `json:"uid_hazy"`
	NoteIdHazy  string `json:"note_id_hazy"`
	Role        string `json:"role"`
	Attribution string `json:"attribution"`
}

type OdobCard

type OdobCard struct {
	AvailableBuy     bool        `json:"available_buy"`
	CanGift          int         `json:"can_gift"`
	CardType         int         `json:"card_type"`
	ContractTemplate string      `json:"contract_template"`
	Cover            string      `json:"cover"`
	CreatedAt        string      `json:"created_at"`
	Days             int         `json:"days"`
	Description      string      `json:"description"`
	Device           string      `json:"device"`
	DiscountTip      string      `json:"discount_tip"`
	Displayed        int         `json:"displayed"`
	FirstMonthPrice  string      `json:"first_month_price"`
	ID               int         `json:"id"`
	IosSwitch        bool        `json:"ios_switch"`
	IsFirstSubscribe bool        `json:"is_first_subscribe"`
	IsSubscribed     int         `json:"is_subscribed"`
	MaxNum           int         `json:"max_num"`
	Name             string      `json:"name"`
	OriginPrice      string      `json:"origin_price"`
	Price            string      `json:"price"`
	PriceDesc        string      `json:"price_desc"`
	Ptype            int64       `json:"ptype"`
	Rights           []OdobRight `json:"rights"`
	Selected         int         `json:"selected"`
	Sku              string      `json:"sku"`
	SortNo           int         `json:"sort_no"`
	Status           int         `json:"status"`
	StyleType        int         `json:"style_type"`
	SubscribeDesc    string      `json:"subscribe_desc"`
	SubscribedFlag   string      `json:"subscribed_flag"`
	Type             int         `json:"type"`
	UpdatedAt        string      `json:"updated_at"`
	UsedCardCount    int         `json:"used_card_count"`
	UserMaxBuyCount  int         `json:"user_max_buy_count"`
	WelfareInfo      string      `json:"welfare_info"`
}

type OdobRight

type OdobRight struct {
	Name  string `json:"name"`
	Right bool   `json:"right"`
}

type OdobUser

type OdobUser struct {
	Avatar            string `json:"avatar"`
	AvatarS           string `json:"avatar_s"`
	BeginTime         int    `json:"begin_time"`
	CanGivenCount     int    `json:"can_given_count"`
	CardID            int    `json:"card_id"`
	DdURL             string `json:"dd_url"`
	EndTime           int64  `json:"end_time"`
	EnterpriseEndTime int    `json:"enterprise_end_time"`
	ErrTips           string `json:"err_tips"`
	ExpireTime        int    `json:"expire_time"`
	GivenCardCount    int    `json:"given_card_count"`
	IsExpire          bool   `json:"is_expire"`
	IsVip             bool   `json:"is_vip"`
	Nickname          string `json:"nickname"`
	PriceDesc         string `json:"price_desc"`
	SavePrice         string `json:"save_price"`
	Slogan            string `json:"slogan"`
	SurplusTime       int64  `json:"surplus_time"`
	TotalCount        int    `json:"total_count"`
	UID               int    `json:"uid"`
	VStateValue       int    `json:"v_state_value"`
	WeekCount         int    `json:"week_count"`
}

type OdobVip

type OdobVip struct {
	Card []OdobCard `json:"card"`
	User OdobUser   `json:"user"`
}

type Option

type Option struct {
	Name       string   `json:"name"`
	Value      string   `json:"value"`
	SubOptions []Option `json:"sub_options,omitempty"`
}

type Press

type Press struct {
	Name  string `json:"name"`
	Brief string `json:"brief"`
}

Press ebook press info

type ProductSimple

type ProductSimple struct {
	ProductType     int      `json:"product_type"`
	ProductEnid     string   `json:"product_enid"`
	Title           string   `json:"title"`
	Intro           string   `json:"intro"`
	Introduction    string   `json:"introduction"`
	IndexImage      string   `json:"index_image"`
	Score           string   `json:"score"`
	UserScoreCount  int      `json:"user_score_count"`
	HorizontalImage string   `json:"horizontal_image"`
	LearnUserCount  int      `json:"learn_user_count"`
	AuthorList      []string `json:"author_list"`
	TrackInfo       string   `json:"trackinfo"`
	LogType         string   `json:"log_type"`
}

type QrCodeResp

type QrCodeResp struct {
	ErrCode int    `json:"errCode"`
	ErrMsg  string `json:"errMsg"`
	Data    struct {
		QrCode       string `json:"qrcode"`
		QrCodeString string `json:"qrCodeString"`
	} `json:"data"`
}

type Quality

type Quality struct {
	Desc    string        `json:"desc"`
	List    []QualityUser `json:"list"`
	Paytime string        `json:"paytime"`
}

type QualityUser

type QualityUser struct {
	Avatar string `json:"avatar"`
	Id     string `json:"id"`
	Name   string `json:"name"`
	Title  string `json:"title"`
}

type RTab

type RTab struct {
	Id         int    `json:"id"`
	Idstr      string `json:"idstr"`
	Name       string `json:"name"`
	Rank       int    `json:"rank"`
	Status     int    `json:"status"`
	CreateTime int    `json:"create_time"`
	UpdateTime int    `json:"update_time"`
	FinishTime int    `json:"finish_time"`
	Type       int    `json:"type"`
	IsHot      int    `json:"is_hot"`
	IsTop      int    `json:"is_top"`
	TrackInfo  string `json:"track_info"`
	SearchKey  string `json:"search_key"`
}

type Rank

type Rank struct {
	RankNumber int    `json:"rank_number"`
	RankName   string `json:"rank_name"`
	RankType   int    `json:"rank_type"`
	RankDesc   string `json:"rank_desc"`
	DdUrl      string `json:"dd_url"`
}

type Recommend

type Recommend struct {
	PtypeSceneName string `json:"ptype_scene_name"`
	Type           int    `json:"type"`
	List           []RTab `json:"list"`
}

type ReplierInfo

type ReplierInfo struct {
	ReplierUID         int    `json:"replier_uid"`
	ReplierName        string `json:"replier_name"`
	ReplierImg         string `json:"replier_img"`
	ReplierIntro       string `json:"replier_intro"`
	ReplierVStatus     bool   `json:"replier_v_status"`
	ReplierVStateValue int    `json:"replier_v_state_value"`
	ReplierTitle       string `json:"replier_title"`
}

ReplierInfo Replier Info

type Response

type Response struct {
	H respH `json:"h"`
	C respC `json:"c"`
}

Response dedao success response

type SearchTot

type SearchTot struct {
	HotTabList   []HotTab    `json:"hot_tab_list"`
	RecommendMap []Recommend `json:"recommend_map"`
}

type SelfInfo

type SelfInfo struct {
	Score      int `json:"score"`
	AuditState int `json:"audit_state"`
}

type Service

type Service struct {
	// contains filtered or unexported fields
}

Service dedao service

func NewService

func NewService(co *CookieOptions) *Service

NewService new service

func (*Service) AlgoFilter

func (s *Service) AlgoFilter(param AlgoFilterParam) (resp *AlgoFilterResp, err error)

func (*Service) AlgoProduct

func (s *Service) AlgoProduct(param AlgoFilterParam) (resp *AlgoProductResp, err error)

func (*Service) ArticleCommentList

func (s *Service) ArticleCommentList(id, sort string, page, limit, sType int) (list *ArticleCommentList, err error)

ArticleCommentList get article comment list

func (*Service) ArticleDetail

func (s *Service) ArticleDetail(token, id, appID string) (detail *ArticleDetail, err error)

ArticleDetail get article detail

func (*Service) ArticleInfo

func (s *Service) ArticleInfo(enid string, aType int) (info *ArticleInfo, err error)

ArticleInfo get article info enid article enid, aType 1-course article, 2-odob article

func (*Service) ArticleList

func (s *Service) ArticleList(id, chapterID string, count, maxID int) (list *ArticleList, err error)

ArticleList get class article list

func (*Service) ArticlePoint

func (s *Service) ArticlePoint(id, pType string) (detail *ArticleDetail, err error)

ArticlePoint get article point

func (*Service) AudioByAlias

func (s *Service) AudioByAlias(ID string) (list *AudioList, err error)

AudioByAlias get article audio info

func (*Service) AudioDetail

func (s *Service) AudioDetail(ID string) (detail *AudioInfoResp, err error)

AudioDetail get odob introduce

func (*Service) AudioDetailAlias

func (s *Service) AudioDetailAlias(ID string) (detail *Audio, err error)

AudioDetailAlias get odob audio info

func (*Service) CheckLogin

func (s *Service) CheckLogin(token, qrcode string) (check *CheckLoginResp, cookie string, err error)

func (*Service) CourseCount

func (s *Service) CourseCount(category string) (count int, err error)

CourseCount 获取课程数量 by 分类

func (*Service) CourseDetail

func (s *Service) CourseDetail(category string, id int) (detail *Course, err error)

CourseDetail get course list

func (*Service) CourseInfo

func (s *Service) CourseInfo(enid string) (info *CourseInfo, err error)

CourseInfo get course info

func (*Service) CourseList

func (s *Service) CourseList(category, order string, page, limit int) (list *CourseList, err error)

CourseList get course list by page

func (*Service) CourseListAll

func (s *Service) CourseListAll(category, order string) (list *CourseList, err error)

CourseListAll get all course list

func (*Service) CourseType

func (s *Service) CourseType() (list *CourseCategoryList, err error)

CourseType get course type list

func (*Service) EbookCommentList

func (s *Service) EbookCommentList(id, sort string, page, limit int) (list *EbookCommentList, err error)

EbookCommentList get ebook comment list sort like_count

func (*Service) EbookDetail

func (s *Service) EbookDetail(enid string) (detail *EbookDetail, err error)

EbookDetail get ebook detail

func (*Service) EbookInfo

func (s *Service) EbookInfo(token string) (info *EbookInfo, err error)

EbookInfo get ebook info include book block, book TOC, epubPath etc

func (*Service) EbookPages

func (s *Service) EbookPages(chapterID, token string, index, count, offset int) (pages *EbookPage, err error)

func (*Service) EbookReadToken

func (s *Service) EbookReadToken(enid string) (t *Token, err error)

EbookReadToken get ebook read token

func (*Service) EbookShelfAdd

func (s *Service) EbookShelfAdd(ids []string) (resp *EbookShelfAddResp, err error)

EbookShelfAdd add ebook shelf

func (*Service) EbookShelfRemove

func (s *Service) EbookShelfRemove(ids []string) (resp *EbookShelfAddResp, err error)

EbookShelfRemove remove from ebook shelf

func (*Service) EbookUserInfo

func (s *Service) EbookUserInfo() (info *EbookVIPInfo, err error)

EbookUserInfo get ebook vip info

func (*Service) GetHomeInitialState

func (s *Service) GetHomeInitialState() (state HomeInitState, err error)

func (*Service) GetQrcode

func (s *Service) GetQrcode(token string) (resp *QrCodeResp, err error)

func (*Service) GetVolcPlayAuthToken

func (s *Service) GetVolcPlayAuthToken(mediaIDStr, securityToken string) (info *MediaVolc, err error)

GetVolcPlayAuthToken get 火山引擎点播 Vid+PlayAuthToken

func (*Service) GetVolcPlayInfo

func (s *Service) GetVolcPlayInfo(query string) (info *VodPlayInfoResp, err error)

GetVolcPlayInfo 火山引擎点播

func (*Service) LiveBase

func (s *Service) LiveBase(aliasID string) (detail *LiveBase, err error)

func (*Service) LiveCheck

func (s *Service) LiveCheck(aliasID, inviteCode string) (detail *LiveCheck, err error)

func (*Service) LiveList

func (s *Service) LiveList(liveType, page, limit int) (list *LiveList, err error)

func (*Service) LiveTabList

func (s *Service) LiveTabList() (list *LiveTabList, err error)

func (*Service) LoginAccessToken

func (s *Service) LoginAccessToken() (token string, err error)

LoginAccessToken get login access token

func (*Service) OdobShelfAdd

func (s *Service) OdobShelfAdd(ids []string) (resp *EbookShelfAddResp, err error)

OdobShelfAdd add ebook shelf

func (*Service) OdobUserInfo

func (s *Service) OdobUserInfo() (info *OdobVip, err error)

OdobUserInfo get odob vip info

func (*Service) SearchHot

func (s *Service) SearchHot() (list *SearchTot, err error)

SearchHot 搜索框热门搜索

func (*Service) SunflowerLabelContent

func (s *Service) SunflowerLabelContent(enID string, nType, page, pageSize int) (list *SunflowerContent, err error)

SunflowerLabelContent 首页导航标签内容列表 nType 2-好看又好查的电子书, 4-精选课程 page default=0 pageSize default=4

func (*Service) SunflowerLabelList

func (s *Service) SunflowerLabelList(nType int) (list *SunflowerLabelList, err error)

SunflowerLabelList 首页导航标签列表 nType 2-好看又好查的电子书, 4-精选课程

func (*Service) SunflowerResourceList

func (s *Service) SunflowerResourceList() (list *SunflowerResourceList, err error)

SunflowerResourceList 首页免费专区

func (*Service) Token

func (s *Service) Token() (t *Token, err error)

Token get token

func (*Service) TopicAll

func (s *Service) TopicAll(page, limit int) (list *TopicAll, err error)

TopicAll topic all

func (*Service) TopicDetail

func (s *Service) TopicDetail(id string) (detail *TopicDetail, err error)

TopicDetail topic detail by id hazy

func (*Service) TopicNotesList

func (s *Service) TopicNotesList(id string, isElected bool, page, limit int) (list *NotesList, err error)

TopicNotesList Topic NotesList

func (*Service) TopicNotesTimeline

func (s *Service) TopicNotesTimeline(maxID string) (list *NotesTimeline, err error)

TopicNotesTimeline Topic timeline

func (*Service) User

func (s *Service) User() (user *User, err error)

User get user info

type Strategy

type Strategy struct {
	Title      string   `json:"title"`
	IsMultiple bool     `json:"is_multiple"`
	IsHide     bool     `json:"is_hide"`
	Options    []Option `json:"options"`
}

type SunflowerContent

type SunflowerContent struct {
	ProductList    []ProductSimple `json:"product_list"`
	CurrentEnid    string          `json:"current_enid"`
	NavigationList []Navigation    `json:"navigation_list"`
	PageId         int             `json:"page_id"`
	PageSize       int             `json:"page_size"`
	IsMore         int             `json:"is_more"` // 0,1
	RequestId      string          `json:"request_id"`
}

type SunflowerLabelList

type SunflowerLabelList struct {
	List []Navigation `json:"list"`
}

type SunflowerResource

type SunflowerResource struct {
	Id          int     `json:"id"`
	Enid        string  `json:"enid"`
	Name        string  `json:"name"`
	Intro       string  `json:"intro"`
	ProductType int     `json:"product_type"`
	ProductId   int     `json:"product_id"`
	Score       float64 `json:"score"`
	ClassType   int     `json:"class_type"`
	Status      int     `json:"status"`
}

type SunflowerResourceList

type SunflowerResourceList struct {
	List []SunflowerResource `json:"list"`
}

type Switch

type Switch struct {
	ImgOrigin bool `json:"img_origin"`
}

type Token

type Token struct {
	Token string `json:"token"`
}

Token token

type TopicAll

type TopicAll struct {
	HasMore bool         `json:"has_more"`
	List    []TopicIntro `json:"list"`
}

TopicAll topic all

type TopicDetail

type TopicDetail struct {
	TopicIntro
	Presenters []TopicPresenter `json:"presenters"`
	TopArea    []TopicTopArea   `json:"top_area"`

	CreateTime       int    `json:"create_time"`
	UpdateTime       int    `json:"update_time"`
	State            int    `json:"state"`
	ShareURL         string `json:"share_url"`
	Ddurl            string `json:"ddurl"`
	TopicIDStr       string `json:"topic_id_str"`
	LastNotesID      string `json:"last_notes_id"`
	LastNotesIDHazy  string `json:"last_notes_id_hazy"`
	LastNotesUID     string `json:"last_notes_uid"`
	LastNotesUIDHazy string `json:"last_notes_uid_hazy"`
	LastNotesContent string `json:"last_notes_content"`
	LastUpdateTime   int    `json:"last_update_time"`
}

TopicDetail topic detail

type TopicIntro

type TopicIntro struct {
	NotesTopicID string `json:"notes_topic_id"`
	TopicIDHazy  string `json:"topic_id_hazy"`
	Name         string `json:"name"`
	Img          string `json:"img"`
	Topmost      bool   `json:"topmost"`
	Tag          int    `json:"tag"`
	Intro        string `json:"intro"`
	ViewCount    int    `json:"view_count"`
	NotesCount   int    `json:"notes_count"`
	HasNewNotes  bool   `json:"has_new_notes"`
	UserState    int    `json:"user_state"`
	LogID        string `json:"log_id"`
	LogType      string `json:"log_type"`
}

TopicIntro topic intro

type TopicPresenter

type TopicPresenter struct {
	ID         int    `json:"id"`
	IDHazy     string `json:"id_hazy"`
	UID        int    `json:"uid"`
	UIDHazy    string `json:"uid_hazy"`
	IsV        int    `json:"isV"`
	Name       string `json:"name"`
	Avatar     string `json:"avatar"`
	TopicCount int    `json:"topic_count"`
	Icon       string `json:"icon"`
	Relation   int    `json:"relation"`
}

TopicPresenter topic presenter

type TopicSummary

type TopicSummary struct {
	ID        int    `json:"id"`
	TopicID   int    `json:"topic_id"`
	Title     string `json:"title"`
	SubTitle  string `json:"sub_title"`
	CreatedAt string `json:"created_at"`
	UpdatedAt string `json:"updated_at"`
}

type TopicTopArea

type TopicTopArea struct {
	ID       int    `json:"id"`
	IDHazy   string `json:"id_hazy"`
	Icon     string `json:"icon"`
	Title    string `json:"title"`
	URL      string `json:"url"`
	State    int    `json:"state"`
	IndexNum int    `json:"index_num"`
}

TopicTopArea Topic TopArea

type User

type User struct {
	Nickname        string  `json:"nickname"`
	Avatar          string  `json:"avatar"`
	TodayStudyTime  int     `json:"today_study_time"`
	StudySerialDays int     `json:"study_serial_days"`
	IsV             int     `JSON:"is_v"`
	VIPUser         VIPUser `json:"vip_user"`
	IsTeacher       int     `json:"is_teacher"`
	UIDHazy         string  `json:"uid_hazy"`
}

User user info

type VIPUser

type VIPUser struct {
	Info string `json:"info"`
	Stat int    `json:"stat"`
}

VIPUser vip info

type Video

type Video struct {
	Token            string  `json:"token"`
	TokenVersion     int     `json:"token_version"`
	CoverImg         string  `json:"cover_img"`
	DdMediaID        int64   `json:"dd_media_id"`
	DdMediaIDStr     string  `json:"dd_media_id_str"`
	Duration         int     `json:"duration"`
	Bitrate480       string  `json:"bitrate_480"`
	Bitrate480Size   int     `json:"bitrate_480_size"`
	Bitrate480Audio  string  `json:"bitrate_480_audio"`
	Bitrate720       string  `json:"bitrate_720"`
	Bitrate720Size   int     `json:"bitrate_720_size"`
	Bitrate720Audio  string  `json:"bitrate_720_audio"`
	Bitrate1080      string  `json:"bitrate_1080"`
	Bitrate1080Size  int     `json:"bitrate_1080_size"`
	Bitrate1080Audio string  `json:"bitrate_1080_audio"`
	IsDrm            bool    `json:"is_drm"`
	ListenProgress   float64 `json:"listen_progress"`
	ListenFinished   bool    `json:"listen_finished"`
	LogID            string  `json:"log_id"`
	LogType          string  `json:"log_type"`
	Caption          string  `json:"caption"`
}

type VideoTrack

type VideoTrack struct {
	TrackId      int          `json:"track_id"`
	TrackType    int          `json:"track_type"`
	TrackTypeTag string       `json:"track_type_tag"`
	Duration     int          `json:"duration"`
	Formats      []VolcFormat `json:"formats"`
}

type VodAdaptiveInfo

type VodAdaptiveInfo struct {
	MainPlayUrl   string `json:"MainPlayUrl"`
	BackupPlayUrl string `json:"BackupPlayUrl"`
	AdaptiveType  string `json:"AdaptiveType"`
}

type VodPlayInfo

type VodPlayInfo struct {
	FileId            string      `json:"FileId"`
	Md5               string      `json:"Md5"`
	FileType          string      `json:"FileType"`
	Format            string      `json:"Format"`
	Codec             string      `json:"Codec"`
	Definition        string      `json:"Definition"`
	MainPlayUrl       string      `json:"MainPlayUrl"`
	BackupPlayUrl     string      `json:"BackupPlayUrl"`
	Bitrate           int         `json:"Bitrate"`
	Width             int         `json:"Width"`
	Height            int         `json:"Height"`
	Size              int         `json:"Size"`
	CheckInfo         string      `json:"CheckInfo"`
	IndexRange        string      `json:"IndexRange"`
	InitRange         string      `json:"InitRange"`
	PlayAuth          string      `json:"PlayAuth"`
	PlayAuthId        string      `json:"PlayAuthId"`
	LogoType          string      `json:"LogoType"`
	Quality           string      `json:"Quality"`
	BarrageMaskOffset string      `json:"BarrageMaskOffset"`
	Duration          float64     `json:"Duration"`
	KeyFrameAlignment string      `json:"KeyFrameAlignment"`
	Volume            interface{} `json:"Volume"`
}

type VodPlayInfoModel

type VodPlayInfoModel struct {
	Version          int             `json:"Version"`
	Vid              string          `json:"Vid"`
	Status           int             `json:"Status"`
	PosterUrl        string          `json:"PosterUrl"`
	Duration         float64         `json:"Duration"`
	FileType         string          `json:"FileType"`
	EnableAdaptive   bool            `json:"EnableAdaptive"`
	TotalCount       int             `json:"TotalCount"`
	AdaptiveInfo     VodAdaptiveInfo `json:"AdaptiveInfo"`
	PlayInfoList     []VodPlayInfo   `json:"PlayInfoList"`
	ThumbInfoList    []VodThumbInfo  `json:"ThumbInfoList"`
	BarrageMaskUrl   string          `json:"BarrageMaskUrl"`
	SubtitleInfoList []interface{}   `json:"SubtitleInfoList"`
}

type VodPlayInfoResp

type VodPlayInfoResp struct {
	ResponseMetadata VodRespMetadata  `json:"ResponseMetadata"`
	Result           VodPlayInfoModel `json:"Result"`
}

VodPlayInfoResp 获取播放地址 https://www.volcengine.com/docs/4/2918#vodplayinfomodel

type VodRespMetadata

type VodRespMetadata struct {
	RequestId string `json:"RequestId"`
	Action    string `json:"Action"`
	Version   string `json:"Version"`
	Service   string `json:"Service"`
	Region    string `json:"Region"`
}

type VodThumbInfo

type VodThumbInfo struct {
	CaptureNum int      `json:"CaptureNum"`
	StoreUrls  []string `json:"StoreUrls"`
	CellWidth  int      `json:"CellWidth"`
	CellHeight int      `json:"CellHeight"`
	ImgXLen    int      `json:"ImgXLen"`
	ImgYLen    int      `json:"ImgYLen"`
	Interval   float64  `json:"Interval"`
	Format     string   `json:"Format"`
}

type VolcFormat

type VolcFormat struct {
	Type              string `json:"type"`
	Format            string `json:"format"`
	VolcId            string `json:"volc_id"`
	VolcPlayAuthToken string `json:"volc_play_auth_token"`
	VolcKeyToken      string `json:"volc_key_token"`
}

type WendaExtInfo

type WendaExtInfo struct {
	AnswerID int `json:"answer_id"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL