forked from lug/matterbridge
		
	
		
			
				
	
	
		
			258 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			258 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package object // import "github.com/SevereCloud/vksdk/v2/object"
 | 
						|
 | 
						|
// WallAppPost struct.
 | 
						|
type WallAppPost struct {
 | 
						|
	ID       int    `json:"id"`        // Application ID
 | 
						|
	Name     string `json:"name"`      // Application name
 | 
						|
	Photo130 string `json:"photo_130"` // URL of the preview image with 130 px in width
 | 
						|
	Photo604 string `json:"photo_604"` // URL of the preview image with 604 px in width
 | 
						|
}
 | 
						|
 | 
						|
// WallAttachedNote struct.
 | 
						|
type WallAttachedNote struct {
 | 
						|
	Comments     int    `json:"comments"`      // Comments number
 | 
						|
	Date         int    `json:"date"`          // Date when the note has been created in Unixtime
 | 
						|
	ID           int    `json:"id"`            // Note ID
 | 
						|
	OwnerID      int    `json:"owner_id"`      // Note owner's ID
 | 
						|
	ReadComments int    `json:"read_comments"` // Read comments number
 | 
						|
	Title        string `json:"title"`         // Note title
 | 
						|
	ViewURL      string `json:"view_url"`      // URL of the page with note preview
 | 
						|
}
 | 
						|
 | 
						|
// WallCommentAttachment struct.
 | 
						|
type WallCommentAttachment struct {
 | 
						|
	Audio             AudioAudio        `json:"audio"`
 | 
						|
	Doc               DocsDoc           `json:"doc"`
 | 
						|
	Link              BaseLink          `json:"link"`
 | 
						|
	Market            MarketMarketItem  `json:"market"`
 | 
						|
	MarketMarketAlbum MarketMarketAlbum `json:"market_market_album"`
 | 
						|
	Note              WallAttachedNote  `json:"note"`
 | 
						|
	Page              PagesWikipageFull `json:"page"`
 | 
						|
	Photo             PhotosPhoto       `json:"photo"`
 | 
						|
	Sticker           BaseSticker       `json:"sticker"`
 | 
						|
	Type              string            `json:"type"`
 | 
						|
	Video             VideoVideo        `json:"video"`
 | 
						|
	Graffiti          WallGraffiti      `json:"graffiti"`
 | 
						|
}
 | 
						|
 | 
						|
// WallGraffiti struct.
 | 
						|
type WallGraffiti struct {
 | 
						|
	ID        int    `json:"id"`        // Graffiti ID
 | 
						|
	OwnerID   int    `json:"owner_id"`  // Graffiti owner's ID
 | 
						|
	Photo200  string `json:"photo_200"` // URL of the preview image with 200 px in width
 | 
						|
	Photo586  string `json:"photo_586"` // URL of the preview image with 586 px in width
 | 
						|
	URL       string `json:"url"`
 | 
						|
	Width     int    `json:"width"`
 | 
						|
	Height    int    `json:"height"`
 | 
						|
	AccessKey string `json:"access_key"`
 | 
						|
}
 | 
						|
 | 
						|
// Type of post source.
 | 
						|
const (
 | 
						|
	WallPostSourceTypeVk     = "vk"
 | 
						|
	WallPostSourceTypeWidget = "widget"
 | 
						|
	WallPostSourceTypeAPI    = "api"
 | 
						|
	WallPostSourceTypeRss    = "rss"
 | 
						|
	WallPostSourceTypeSms    = "sms"
 | 
						|
)
 | 
						|
 | 
						|
// WallPostSource struct.
 | 
						|
type WallPostSource struct {
 | 
						|
	Link     BaseLink `json:"link"`
 | 
						|
	Data     string   `json:"data"`     // Additional data
 | 
						|
	Platform string   `json:"platform"` // Platform name
 | 
						|
	Type     string   `json:"type"`
 | 
						|
	URL      string   `json:"url"` // URL to an external site used to publish the post
 | 
						|
}
 | 
						|
 | 
						|
// WallPostedPhoto struct.
 | 
						|
type WallPostedPhoto struct {
 | 
						|
	ID       int    `json:"id"`        // Photo ID
 | 
						|
	OwnerID  int    `json:"owner_id"`  // Photo owner's ID
 | 
						|
	Photo130 string `json:"photo_130"` // URL of the preview image with 130 px in width
 | 
						|
	Photo604 string `json:"photo_604"` // URL of the preview image with 604 px in width
 | 
						|
}
 | 
						|
 | 
						|
// WallViews struct.
 | 
						|
type WallViews struct {
 | 
						|
	Count int `json:"count"` // Count
 | 
						|
}
 | 
						|
 | 
						|
// WallWallCommentThread struct.
 | 
						|
type WallWallCommentThread struct {
 | 
						|
	Count           int               `json:"count"` // Comments number
 | 
						|
	Items           []WallWallComment `json:"items"`
 | 
						|
	CanPost         BaseBoolInt       `json:"can_post"`        // Information whether current user can comment the post
 | 
						|
	GroupsCanPost   BaseBoolInt       `json:"groups_can_post"` // Information whether groups can comment the post
 | 
						|
	ShowReplyButton BaseBoolInt       `json:"show_reply_button"`
 | 
						|
}
 | 
						|
 | 
						|
// WallWallComment struct.
 | 
						|
type WallWallComment struct {
 | 
						|
	Attachments    []WallCommentAttachment `json:"attachments"`
 | 
						|
	Date           int                     `json:"date"` // Date when the comment has been added in Unixtime
 | 
						|
	Deleted        BaseBoolInt             `json:"deleted"`
 | 
						|
	FromID         int                     `json:"from_id"` // Author ID
 | 
						|
	ID             int                     `json:"id"`      // Comment ID
 | 
						|
	Likes          BaseLikesInfo           `json:"likes"`
 | 
						|
	RealOffset     int                     `json:"real_offset"`      // Real position of the comment
 | 
						|
	ReplyToComment int                     `json:"reply_to_comment"` // Replied comment ID
 | 
						|
	ReplyToUser    int                     `json:"reply_to_user"`    // Replied user ID
 | 
						|
	Text           string                  `json:"text"`             // Comment text
 | 
						|
	PostID         int                     `json:"post_id"`
 | 
						|
	PostOwnerID    int                     `json:"post_owner_id"`
 | 
						|
	PhotoID        int                     `json:"photo_id"`
 | 
						|
	PhotoOwnerID   int                     `json:"photo_owner_id"`
 | 
						|
	VideoID        int                     `json:"video_id"`
 | 
						|
	VideoOwnerID   int                     `json:"video_owner_id"`
 | 
						|
	ItemID         int                     `json:"item_id"`
 | 
						|
	MarketOwnerID  int                     `json:"market_owner_id"`
 | 
						|
	ParentsStack   []int                   `json:"parents_stack"`
 | 
						|
	OwnerID        int                     `json:"owner_id"`
 | 
						|
	Thread         WallWallCommentThread   `json:"thread"`
 | 
						|
	Donut          WallWallCommentDonut    `json:"donut"`
 | 
						|
}
 | 
						|
 | 
						|
// WallWallCommentDonut info about VK Donut.
 | 
						|
type WallWallCommentDonut struct {
 | 
						|
	IsDonut     BaseBoolInt `json:"is_donut"`
 | 
						|
	Placeholder string      `json:"placeholder"`
 | 
						|
}
 | 
						|
 | 
						|
// WallPost type.
 | 
						|
const (
 | 
						|
	WallPostTypePost     = "post"
 | 
						|
	WallPostTypeCopy     = "copy"
 | 
						|
	WallPostTypeReply    = "reply"
 | 
						|
	WallPostTypePostpone = "postpone"
 | 
						|
	WallPostTypeSuggest  = "suggest"
 | 
						|
)
 | 
						|
 | 
						|
// WallWallpost  struct.
 | 
						|
type WallWallpost struct {
 | 
						|
	AccessKey      string                   `json:"access_key"` // Access key to private object
 | 
						|
	ID             int                      `json:"id"`         // Post ID
 | 
						|
	OwnerID        int                      `json:"owner_id"`   // Wall owner's ID
 | 
						|
	FromID         int                      `json:"from_id"`    // Post author ID
 | 
						|
	CreatedBy      int                      `json:"created_by"`
 | 
						|
	Date           int                      `json:"date"` // Date of publishing in Unixtime
 | 
						|
	Text           string                   `json:"text"` // Post text
 | 
						|
	ReplyOwnerID   int                      `json:"reply_owner_id"`
 | 
						|
	ReplyPostID    int                      `json:"reply_post_id"`
 | 
						|
	FriendsOnly    int                      `json:"friends_only"`
 | 
						|
	Comments       BaseCommentsInfo         `json:"comments"`
 | 
						|
	Likes          BaseLikesInfo            `json:"likes"`   // Count of likes
 | 
						|
	Reposts        BaseRepostsInfo          `json:"reposts"` // Count of reposts
 | 
						|
	Views          WallViews                `json:"views"`   // Count of views
 | 
						|
	PostType       string                   `json:"post_type"`
 | 
						|
	PostSource     WallPostSource           `json:"post_source"`
 | 
						|
	Attachments    []WallWallpostAttachment `json:"attachments"`
 | 
						|
	Geo            BaseGeo                  `json:"geo"`
 | 
						|
	SignerID       int                      `json:"signer_id"` // Post signer ID
 | 
						|
	CopyHistory    []WallWallpost           `json:"copy_history"`
 | 
						|
	CanPin         BaseBoolInt              `json:"can_pin"`
 | 
						|
	CanDelete      BaseBoolInt              `json:"can_delete"`
 | 
						|
	CanEdit        BaseBoolInt              `json:"can_edit"`
 | 
						|
	IsPinned       BaseBoolInt              `json:"is_pinned"`
 | 
						|
	IsFavorite     BaseBoolInt              `json:"is_favorite"` // Information whether the post in favorites list
 | 
						|
	IsArchived     BaseBoolInt              `json:"is_archived"` // Is post archived, only for post owners
 | 
						|
	MarkedAsAds    BaseBoolInt              `json:"marked_as_ads"`
 | 
						|
	Edited         int                      `json:"edited"` // Date of editing in Unixtime
 | 
						|
	Copyright      WallPostCopyright        `json:"copyright"`
 | 
						|
	PostID         int                      `json:"post_id"`
 | 
						|
	ParentsStack   []int                    `json:"parents_stack"`
 | 
						|
	Donut          WallWallpostDonut        `json:"donut"` // need api v5.125
 | 
						|
	ShortTextRate  float64                  `json:"short_text_rate"`
 | 
						|
	CarouselOffset int                      `json:"carousel_offset"`
 | 
						|
}
 | 
						|
 | 
						|
// Attachment type.
 | 
						|
//
 | 
						|
// TODO: check this.
 | 
						|
const (
 | 
						|
	AttachmentTypePhoto       = "photo"
 | 
						|
	AttachmentTypePostedPhoto = "posted_photo"
 | 
						|
	AttachmentTypeAudio       = "audio"
 | 
						|
	AttachmentTypeVideo       = "video"
 | 
						|
	AttachmentTypeDoc         = "doc"
 | 
						|
	AttachmentTypeLink        = "link"
 | 
						|
	AttachmentTypeGraffiti    = "graffiti"
 | 
						|
	AttachmentTypeNote        = "note"
 | 
						|
	AttachmentTypeApp         = "app"
 | 
						|
	AttachmentTypePoll        = "poll"
 | 
						|
	AttachmentTypePage        = "page"
 | 
						|
	AttachmentTypeAlbum       = "album"
 | 
						|
	AttachmentTypePhotosList  = "photos_list"
 | 
						|
	AttachmentTypeMarketAlbum = "market_album"
 | 
						|
	AttachmentTypeMarket      = "market"
 | 
						|
	AttachmentTypeEvent       = "event"
 | 
						|
	AttachmentTypeWall        = "wall"
 | 
						|
	AttachmentTypeStory       = "story"
 | 
						|
	AttachmentTypePodcast     = "podcast"
 | 
						|
)
 | 
						|
 | 
						|
// WallWallpostAttachment struct.
 | 
						|
type WallWallpostAttachment struct {
 | 
						|
	AccessKey         string            `json:"access_key"` // Access key for the audio
 | 
						|
	Album             PhotosPhotoAlbum  `json:"album"`
 | 
						|
	App               WallAppPost       `json:"app"`
 | 
						|
	Audio             AudioAudio        `json:"audio"`
 | 
						|
	Doc               DocsDoc           `json:"doc"`
 | 
						|
	Event             EventsEventAttach `json:"event"`
 | 
						|
	Graffiti          WallGraffiti      `json:"graffiti"`
 | 
						|
	Link              BaseLink          `json:"link"`
 | 
						|
	Market            MarketMarketItem  `json:"market"`
 | 
						|
	MarketMarketAlbum MarketMarketAlbum `json:"market_market_album"`
 | 
						|
	Note              WallAttachedNote  `json:"note"`
 | 
						|
	Page              PagesWikipageFull `json:"page"`
 | 
						|
	Photo             PhotosPhoto       `json:"photo"`
 | 
						|
	PhotosList        []string          `json:"photos_list"`
 | 
						|
	Poll              PollsPoll         `json:"poll"`
 | 
						|
	PostedPhoto       WallPostedPhoto   `json:"posted_photo"`
 | 
						|
	Type              string            `json:"type"`
 | 
						|
	Video             VideoVideo        `json:"video"`
 | 
						|
	Podcast           PodcastsEpisode   `json:"podcast"`
 | 
						|
}
 | 
						|
 | 
						|
// WallWallpostToID struct.
 | 
						|
type WallWallpostToID struct {
 | 
						|
	Attachments   []WallWallpostAttachment `json:"attachments"`
 | 
						|
	Comments      BaseCommentsInfo         `json:"comments"`
 | 
						|
	CopyOwnerID   int                      `json:"copy_owner_id"` // ID of the source post owner
 | 
						|
	CopyPostID    int                      `json:"copy_post_id"`  // ID of the source post
 | 
						|
	Date          int                      `json:"date"`          // Date of publishing in Unixtime
 | 
						|
	FromID        int                      `json:"from_id"`       // Post author ID
 | 
						|
	Geo           BaseGeo                  `json:"geo"`
 | 
						|
	ID            int                      `json:"id"` // Post ID
 | 
						|
	Likes         BaseLikesInfo            `json:"likes"`
 | 
						|
	PostID        int                      `json:"post_id"` // wall post ID (if comment)
 | 
						|
	PostSource    WallPostSource           `json:"post_source"`
 | 
						|
	PostType      string                   `json:"post_type"`
 | 
						|
	Reposts       BaseRepostsInfo          `json:"reposts"`
 | 
						|
	SignerID      int                      `json:"signer_id"`   // Post signer ID
 | 
						|
	Text          string                   `json:"text"`        // Post text
 | 
						|
	ToID          int                      `json:"to_id"`       // Wall owner's ID
 | 
						|
	IsFavorite    BaseBoolInt              `json:"is_favorite"` // Information whether the post in favorites list
 | 
						|
	MarkedAsAds   BaseBoolInt              `json:"marked_as_ads"`
 | 
						|
	ParentsStack  []int                    `json:"parents_stack"`
 | 
						|
	Donut         WallWallpostDonut        `json:"donut"` // need api v5.125
 | 
						|
	ShortTextRate float64                  `json:"short_text_rate"`
 | 
						|
}
 | 
						|
 | 
						|
// WallWallpostDonut info about VK Donut.
 | 
						|
type WallWallpostDonut struct {
 | 
						|
	IsDonut            BaseBoolInt          `json:"is_donut"`
 | 
						|
	CanPublishFreeCopy BaseBoolInt          `json:"can_publish_free_copy"`
 | 
						|
	PaidDuration       int                  `json:"paid_duration"`
 | 
						|
	EditMode           string               `json:"edit_mode"`
 | 
						|
	Durations          []BaseObjectWithName `json:"durations"`
 | 
						|
}
 | 
						|
 | 
						|
// WallPostCopyright information about the source of the post.
 | 
						|
type WallPostCopyright struct {
 | 
						|
	ID   int    `json:"id,omitempty"`
 | 
						|
	Link string `json:"link"`
 | 
						|
	Type string `json:"type"`
 | 
						|
	Name string `json:"name"`
 | 
						|
}
 |