Documentation
¶
Index ¶
- Constants
- func ArrayToStr(a []int) string
- func BoolToInt(a bool) int
- func GetFilesSizeMB(files []string) (int, error)
- func IntToBool(a int) bool
- type APIResponse
- type Attachment
- type AttachmentAudio
- type AttachmentAudioAlbum
- type AttachmentAudioAlbumThumb
- type AttachmentAudioArtist
- type AttachmentDoc
- type AttachmentImageInfo
- type AttachmentPhoto
- type AttachmentSticker
- type AttachmentVideo
- type AudioAttachment
- type BotlLongPollDM
- type BotsLongPollEvent
- type BotsLongPollObject
- type BotsLongPollServer
- type BotsLongPollUpdate
- type Button
- type Career
- type Comment
- type Comments
- type Dialog
- type DialogMessage
- type DocAttachment
- type Docs
- type Error
- type ForwardedMessage
- type FriendDeleteResult
- type Friends
- type FriendsIds
- type FriendsRequests
- type Gift
- type GiftInfo
- type GiftItem
- type Group
- type GroupContact
- type GroupMembers
- type GroupSearchResult
- type HistoryAttachment
- type HistoryAttachmentItem
- type Item
- type Keyboard
- type LastSeen
- type Like
- type LikeUser
- type Likes
- type LinkAttachment
- type LongPollMessage
- type LongPollServer
- type LongPollUpdate
- type Message
- type MessageAttachment
- type Military
- type Mutual
- type OnlineInfo
- type Personal
- type PhotoAttachment
- type PhotoAttachmentSizes
- type Poll
- type PollAnswer
- type Push
- type Relative
- type Repost
- type Request
- type ResolveScreenName
- type School
- type ShortLink
- type Source
- type StickerAttachment
- type Token
- type TokenOptions
- type Topic
- type TopicComment
- type TopicCommentLike
- type Topics
- type University
- type User
- type UserCity
- type UserContacts
- type UserCounters
- type UserCountry
- type UserEducation
- type UserMin
- type UserNorm
- type UserOccupation
- type VKClient
- func (client *VKClient) AddLongpollCallback(name string, f func(*LongPollMessage))
- func (client *VKClient) BoardAddTopic(groupID int, title string, text string, fromGroup bool, attachments []string) (int, error)
- func (client *VKClient) BoardCloseTopic(groupID int, topicID int) (bool, error)
- func (client *VKClient) BoardCreateComment(groupID int, topicID int, message string, attachments []string, fromGroup bool, ...) (int, error)
- func (client *VKClient) BoardDeleteComment(groupID int, topicID int, commetID int) (bool, error)
- func (client *VKClient) BoardDeleteTopic(groupID int, topicID int) (bool, error)
- func (client *VKClient) BoardEditComment(groupID int, topicID int, commentID int, message string, attachments []string) (bool, error)
- func (client *VKClient) BoardEditTopic(groupID int, topicID int, title string) (bool, error)
- func (client *VKClient) BoardFixTopic(groupID int, topicID int) (bool, error)
- func (client *VKClient) BoardGetComments(groupID int, topicID int, count int, params url.Values) (*Comments, error)
- func (client *VKClient) BoardGetTopics(groupID int, count int, params url.Values) (*Topics, error)
- func (client *VKClient) BoardOpenTopic(groupID int, topicID int) (bool, error)
- func (client *VKClient) BoardRestoreComment(groupID int, topicID int, commentID int) (bool, error)
- func (client *VKClient) BoardUnfixTopic(groupID int, topicID int) (bool, error)
- func (client *VKClient) DeleteLongpollCallback(name string)
- func (client *VKClient) DialogsGet(count int, params url.Values) (*Dialog, error)
- func (client *VKClient) DocsSearch(query string, count int, params url.Values) (int, []*DocAttachment, error)
- func (client *VKClient) FriendsAdd(userID int, text string, follow int) (int, error)
- func (client *VKClient) FriendsDelete(userID int) (bool, error)
- func (client *VKClient) FriendsGet(uid int, count int, offset int, fields string) (int, []*User, error)
- func (client *VKClient) FriendsGetIds(uid int) (count int, userIds []int, err error)
- func (client *VKClient) FriendsGetRequests(count int, out int) (int, []*Request, error)
- func (client *VKClient) GetDocsString(docs []*DocAttachment) string
- func (client *VKClient) GetGifts(id int, count int, offset int) (*Gift, error)
- func (client *VKClient) GetHistoryAttachments(peerID int, mediaType string, count int, params url.Values) (*HistoryAttachment, error)
- func (client *VKClient) GetPhotosString(photos []*PhotoAttachment) string
- func (client *VKClient) GetShortLink(toUrl string, private int) (*ShortLink, error)
- func (client *VKClient) GroupGet(userID int, count int) (int, []*Group, error)
- func (client *VKClient) GroupGetMembers(group_id, count, offset int) (int, []*User, error)
- func (client *VKClient) GroupSearch(query string, count int) (int, []*Group, error)
- func (client *VKClient) GroupSendInvite(groupID int, userID int) error
- func (client *VKClient) GroupsGetByID(groupsID []int) ([]*Group, error)
- func (client *VKClient) LikesGet(itemType string, ownerID int, itemID int, count int, params url.Values) (int, []*LikeUser, error)
- func (client *VKClient) ListenLongPollServer()
- func (client *VKClient) ListenLongPollServerWithCancel(cancelCtx context.Context)
- func (client *VKClient) MakeRequest(method string, params url.Values) (APIResponse, error)
- func (client *VKClient) MessagesDelete(ids []int, spam int, deleteForAll int) (int, error)
- func (client *VKClient) MessagesGet(count int, chatID int, isDialog bool, params url.Values) (int, []*DialogMessage, error)
- func (client *VKClient) MessagesGetByID(message_ids []int, params url.Values) (int, []*DialogMessage, error)
- func (client *VKClient) MessagesSend(peerOrDomain interface{}, message string, params url.Values) (APIResponse, error)
- func (client *VKClient) MessagesSetActivity(user int, params url.Values) error
- func (client *VKClient) ResolveScreenName(name string) (ResolveScreenName, error)
- func (c *VKClient) SetCustomHTTPClient(client *http.Client)
- func (client *VKClient) UploadByLinkGroupWallPhotos(groupID int, urlFile string) ([]*PhotoAttachment, error)
- func (client *VKClient) UploadGroupWallDoc(groupID int, fileName string) (*DocAttachment, error)
- func (client *VKClient) UploadGroupWallPhotos(groupID int, files []string) ([]*PhotoAttachment, error)
- func (client *VKClient) UploadMessagesPhotos(peerID int, files []string) ([]*PhotoAttachment, error)
- func (client *VKClient) UsersGet(users []int, fields string) ([]*User, error)
- func (client *VKClient) VideoGet(ownerID int, count int, params url.Values) (*Videos, error)
- func (client *VKClient) WallGet(id interface{}, count int, params url.Values) (*Wall, error)
- func (client *VKClient) WallGetByID(id string, params url.Values) (*Wall, error)
- func (client *VKClient) WallPost(ownerID int, message string, params url.Values) (int, error)
- func (client *VKClient) WallPostComment(ownerID int, postID int, message string, params url.Values) (int, error)
- type VKGroupBot
- func (client *VKGroupBot) AddBotsLongpollCallback(name string, f func(*BotsLongPollObject))
- func (client *VKGroupBot) DeleteBotsLongpollCallback(name string)
- func (client *VKGroupBot) ListenBotsLongPollServer()
- func (client *VKGroupBot) ListenBotsLongPollServerWithCancel(cancelCtx context.Context)
- func (c *VKGroupBot) SetCustomHTTPClient(client *http.Client)
- type Video
- type VideoAttachment
- type VideoFirstFrame
- type VideoImage
- type Videos
- type Wall
- type WallPost
Constants ¶
const ( DeviceIPhone = iota DeviceWPhone DeviceAndroid )
const ( TypePost = "post" TypeComment = "comment" TypePhoto = "photo" TypeDocument = "doc" TypeAudio = "audio" TypeVideo = "video" TypeNote = "note" TypePhotoComment = "photo_comment" TypeVideoComment = "video_comment" TypeTopicComment = "topic_comment" TypeSitepage = "sitepage" )
const ( ActivityTypeTyping = "typing" ActivityTypeAudioMsg = "audiomessage" )
const ( PlatformMobile PlatformIPhone PlatfromIPad PlatformAndroid PlatformWPhone PlatformWindows PlatformWeb )
last seen device
Variables ¶
This section is empty.
Functions ¶
func ArrayToStr ¶
func GetFilesSizeMB ¶
Types ¶
type APIResponse ¶
type APIResponse struct {
Response json.RawMessage `json:"response"`
ResponseError Error `json:"error"`
}
APIResponse содержит ответ сервера ВК на API-запросы
type Attachment ¶
type Attachment struct {
Type string `json:"type"`
Photo *AttachmentPhoto `json:"photo"`
Video *AttachmentVideo `json:"video"`
Audio *AttachmentAudio `json:"audio"`
Doc *AttachmentDoc `json:"doc"`
Sticker *AttachmentSticker `json:"sticker"`
}
type AttachmentAudio ¶
type AttachmentAudio struct {
Artist string `json:"artist"`
ID int `json:"id"`
OwnerID int `json:"owner_id"`
Title string `json:"title"`
Duration int `json:"duration"`
AccessKey string `json:"access_key"`
IsLicensed bool `json:"is_licensed"`
TrackCode string `json:"track_code"`
Url string `json:"url"`
Date int64 `json:"date"`
Album *AttachmentAudioAlbum `json:"album"`
MainArtist []*AttachmentAudioArtist `json:"main_artist"`
}
type AttachmentAudioAlbum ¶
type AttachmentAudioAlbum struct {
ID int `json:"id"`
Title string `json:"title"`
OwnerID int `json:"owner_id"`
AccessKey string `json:"access_key"`
Thumb *AttachmentAudioAlbumThumb `json:"thumb"`
}
type AttachmentAudioArtist ¶
type AttachmentDoc ¶
type AttachmentDoc struct {
ID int `json:"id"`
OwnerID int `json:"owner_id"`
Title string `json:"title"`
Size int `json:"size"`
Ext string `json:"ext"`
Url string `json:"url"`
Date int64 `json:"date"`
Type int `json:"type"`
IsLicensed int `json:"is_licensed"` // NOTE(Pedro): There is some inconsistency on VK API, this field can return "true" or zero for false
AccessKey string `json:"access_key"`
}
type AttachmentImageInfo ¶
type AttachmentPhoto ¶
type AttachmentSticker ¶
type AttachmentSticker struct {
ProductID int `json:"product_id"`
StickerID int `json:"sticker_id"`
Images []*AttachmentImageInfo `json:"images"`
ImagesWithBackground []*AttachmentImageInfo `json:"images_with_background"`
}
type AttachmentVideo ¶
type AttachmentVideo struct {
AccessKey string `json:"access_key"`
CanComment int `json:"can_comment"`
CanEdit int `json:"can_edit"`
CanLike int `json:"can_like"`
CanRepost int `json:"can_repost"`
CanSubscribe int `json:"can_subscribe"`
CanAddToFaves int `json:"can_add_to_faves"`
CanAdd int `json:"can_add"`
CanAttachLink int `json:"can_attach_link"`
Comments int `json:"comments"`
Date int64 `json:"date"`
Description string `json:"description"`
Duration int `json:"duration"`
Image []*AttachmentImageInfo `json:"image"`
FirstFrame []*AttachmentImageInfo `json:"first_frame"`
Width int `json:"width"`
Height int `json:"height"`
ID int `json:"id"`
OwnerID int `json:"owner_id"`
UserID int `json:"user_id"`
Title string `json:"title"`
IsFavorite bool `json:"is_favorite"`
TrackCode string `json:"track_code"`
Type string `json:"type"`
Views int `json:"views"`
LocalViews int `json:"local_views"`
Platform string `json:"platform"`
}
type AudioAttachment ¶
type BotlLongPollDM ¶
type BotlLongPollDM struct {
MessageID int `json:"id"`
Date int64 `json:"date"`
PeerID int64 `json:"peer_id"`
SendByID int64 `json:"from_id"`
Text string `json:"text"`
RandomID int64 `json:"random_id"`
Attachments []MessageAttachment `json:"attachments"`
Isimportant bool `json:"important"`
FwdMessages []BotlLongPollDM `json:"fwd_messages"`
ReplyMessage *BotlLongPollDM `json:"reply_message"`
Payload string `json:"payload"`
}
type BotsLongPollEvent ¶
type BotsLongPollEvent struct {
Type string `json:"type"`
Object BotsLongPollObject `json:"object"`
}
type BotsLongPollObject ¶
type BotsLongPollObject struct {
// message_*
Message BotlLongPollDM `json:"message"`
ClientInfo interface{} `json:"client_info"`
// group_join
UserId int64 `json:"user_id"`
JoinType string `json:"join_type"`
// wall_post_new
WallPost
}
type BotsLongPollServer ¶
type BotsLongPollUpdate ¶
type BotsLongPollUpdate struct {
Failed int `json:"failed"`
TS string `json:"ts"`
Updates []BotsLongPollEvent `json:"updates"`
}
type Career ¶
type Career struct {
GroupID int `json:"group_id"`
Company string `json:"company"`
CountryID int `json:"country_id"`
CityID int `json:"city_id"`
CityName string `json:"city_name"`
From int `json:"from"`
Until int `json:"until"`
Position string `json:"position"`
}
Career содержит информацию о карьере пользователя. Объект, содержащий следующие поля: group_id (integer) — идентификатор сообщества (если доступно, иначе company); company (string) — название компании (если доступно, иначе group_id); country_id (integer) — идентификатор страны; city_id (integer) — идентификатор города (если доступно, иначе city_name); city_name (string) — название города (если доступно, иначе city_id); from (integer) — год начала работы; until (integer) — год окончания работы; position (string) — должность.
type Comments ¶
type Comments struct {
Count int `json:"count"`
Comments []*TopicComment `json:"items"`
Poll *Poll `json:"poll"`
Profiles []*User `json:"profiles"`
RealOffset int `json:"real_offset"`
}
type DialogMessage ¶
type DialogMessage struct {
MID int `json:"id"`
Date int64 `json:"date"`
Out int `json:"out"`
UID int `json:"user_id"`
ReadState int `json:"read_state"`
Title string `json:"title"`
Body string `json:"body"`
RandomID int `json:"random_id"`
ChatID int64 `json:"chat_id"`
ChatActive string `json:"chat_active"`
PushSettings *Push `json:"push_settings"`
UsersCount int `json:"users_count"`
AdminID int `json:"admin_id"`
Photo50 string `json:"photo_50"`
Photo100 string `json:"photo_100"`
Photo200 string `json:"photo_200"`
ForwardedMessages []*ForwardedMessage `json:"fwd_messages"`
Attachments []*MessageAttachment `json:"attachments"`
}
type DocAttachment ¶
type Docs ¶
type Docs struct {
Count int `json:"count"`
Documents []*DocAttachment `json:"items"`
}
type ForwardedMessage ¶
type ForwardedMessage struct {
UID int `json:"user_id"`
Date int64 `json:"date"`
Body string `json:"body"`
Attachments []*MessageAttachment `json:"attachments"`
ForwardedMessages []*ForwardedMessage `json:"fwd_messages"`
}
type FriendDeleteResult ¶
type FriendDeleteResult struct {
Success int `json:"success"` // удалось успешно удалить друга;
Friend_deleted int `json:"friend_deleted"` // был удален друг;
Out_request_deleted int `json:"out_request_deleted"` // отменена исходящая заявка;
In_request_deleted int `json:"in_request_deleted"` // отклонена входящая заявка;
Suggestion_deleted int `json:"suggestion_deleted"` // отклонена рекомендация друга.
}
type FriendsIds ¶
type FriendsRequests ¶
type Group ¶
type Group struct {
ID int `json:"id"`
Name string `json:"name"`
ScreenName string `json:"screen_name"`
Description string `json:"description"`
Activity string `json:"activity"`
Contacts []*GroupContact `json:"contacts"`
IsClosed int `json:"is_closed"`
Type string `json:"type"`
IsAdmin int `json:"is_admin"`
IsMember int `json:"is_member"`
MembersCount int `json:"members_count"`
HasPhoto int `json:"has_photo"`
IsMessagesBlocked int `json:"is_messages_blocked"`
Photo50 string `json:"photo_50"`
Photo100 string `json:"photo_100"`
Photo200 string `json:"photo_200"`
AgeLimit int `json:"age_limits"`
CanCreateTopic int `json:"can_create_topic"`
CanMessage int `json:"can_message"`
CanPost int `json:"can_post"`
CanSeeAllPosts int `json:"can_see_all_posts"`
City *UserCity `json:"city"`
}
type GroupContact ¶
type GroupMembers ¶
type GroupSearchResult ¶
type HistoryAttachment ¶
type HistoryAttachment struct {
Attachments []HistoryAttachmentItem `json:"items"`
NextFrom string `json:"next_from"`
}
type HistoryAttachmentItem ¶
type HistoryAttachmentItem struct {
MID int `json:"message_id"`
Attachment *MessageAttachment `json:"attachment"`
}
type Item ¶
type Item struct {
Message *DialogMessage `json:"message"`
InRead int `json:"in_read"`
OutRead int `json:"out_read"`
}
type LastSeen ¶
LastSeen содержит информацию о последнем посещении пользователя (время и тип устройства). time (integer) — время последнего посещения в формате Unixtime. platform (integer) — тип платформы. Возможные значения: 1 — мобильная версия; 2 — приложение для iPhone; 3 — приложение для iPad; 4 — приложение для Android; 5 — приложение для Windows Phone; 6 — приложение для Windows 10; 7 — полная версия сайта.
type LinkAttachment ¶
type LongPollMessage ¶
type LongPollServer ¶
type LongPollUpdate ¶
type Message ¶
type Message struct {
Count int `json:"count"`
Messages []*DialogMessage `json:"items"`
}
type MessageAttachment ¶
type MessageAttachment struct {
Type string `json:"type"`
Audio *AudioAttachment `json:"audio"`
Video *VideoAttachment `json:"video"`
Photo *PhotoAttachment `json:"photo"`
Document *DocAttachment `json:"doc"`
Link *LinkAttachment `json:"link"`
Wall *WallPost `json:"wall"`
Sticker *StickerAttachment `json:"sticker"`
}
type Military ¶
type Military struct {
Unit string `json:"unit"`
UnitID int `json:"unit_id"`
CountryID int `json:"country_id"`
From int `json:"from"`
Until int `json:"until"`
}
Military - информация о военной службе пользователя. Объект, содержащий следующие поля: unit (string) — номер части; unit_id (integer) — идентификатор части в базе данных; country_id (integer) — идентификатор страны, в которой находится часть; from (integer) — год начала службы; until (integer) — год окончания службы.
type OnlineInfo ¶
OnlineInfo содержит информацию о статусе "онлайн" пользователя
type Personal ¶
type Personal struct {
Political int `json:"political"`
Langs []int `json:"langs"`
Religion string `json:"religion"`
InspiredBy string `json:"inspired_by"`
PeopleMain int `json:"people_main"`
LifeMain int `json:"life_main"`
Smoking int `json:"smoking"`
Alcohol int `json:"alcohol"`
}
Personal - информация о полях из раздела «Жизненная позиция». political (integer) — политические предпочтения. Возможные значения: 1 — коммунистические; 2 — социалистические; 3 — умеренные; 4 — либеральные; 5 — консервативные; 6 — монархические; 7 — ультраконсервативные; 8 — индифферентные; 9 — либертарианские. langs (array) — языки. religion (string) — мировоззрение. inspired_by (string) — источники вдохновения. people_main (integer) — главное в людях. Возможные значения: 1 — ум и креативность; 2 — доброта и честность; 3 — красота и здоровье; 4 — власть и богатство; 5 — смелость и упорство; 6 — юмор и жизнелюбие. life_main (integer) — главное в жизни. Возможные значения: 1 — семья и дети; 2 — карьера и деньги; 3 — развлечения и отдых; 4 — наука и исследования; 5 — совершенствование мира; 6 — саморазвитие; 7 — красота и искусство; 8 — слава и влияние; smoking (integer) — отношение к курению. Возможные значения: 1 — резко негативное; 2 — негативное; 3 — компромиссное; 4 — нейтральное; 5 — положительное. alcohol (integer) — отношение к алкоголю. Возможные значения: 1 — резко негативное; 2 — негативное; 3 — компромиссное; 4 — нейтральное; 5 — положительное.
type PhotoAttachment ¶
type PhotoAttachment struct {
ID int `json:"id"`
AID int `json:"album_id"`
OwnerID int `json:"owner_id"`
Photo75 string `json:"photo_75"`
Photo130 string `json:"photo_130"`
Photo604 string `json:"photo_604"`
Photo807 string `json:"photo_807"`
Photo1280 string `json:"photo_1280"`
Photo2560 string `json:"photo_2560"`
Width int `json:"width"`
Height int `json:"height"`
Text string `json:"text"`
Created int64 `json:"created"`
AccessKey string `json:"access_key"`
Sizes []PhotoAttachmentSizes `json:"sizes"`
}
type PhotoAttachmentSizes ¶
type Poll ¶
type Poll struct {
ID int `json:"id"`
OwnerID int `json:"owner_id"`
Created int64 `json:"created"`
Question string `json:"question"`
Votes int `json:"votes"`
Answers []*PollAnswer `json:"answers"`
Anonymous bool `json:"anonymous"`
Multiple bool `json:"multiple"`
AnswerIDS []int `json:"answer_ids"`
EndDate int64 `json:"end_date"`
Closed bool `json:"closed"`
IsBoard bool `json:"is_board"`
CanEdit bool `json:"can_edit"`
CanVote bool `json:"can_vote"`
CanReport bool `json:"can_report"`
}
type PollAnswer ¶
type Relative ¶
Relative - родственник. Выдается в массиве - списке родсвенников. Объект содержит поля: id (integer) — идентификатор пользователя; name (string) — имя родственника (если родственник не является пользователем ВКонтакте, то предыдущее значение id возвращено не будет); type (string) — тип родственной связи. Возможные значения: child — сын/дочь; sibling — брат/сестра; parent — отец/мать; grandparent — дедушка/бабушка; grandchild — внук/внучка.
type ResolveScreenName ¶
type School ¶
type School struct {
SchoolID int `json:"id"`
CountryID int `json:"country"`
CityID int `json:"city"`
Name string `json:"name"`
YearFrom int `json:"year_from"`
YearTo int `json:"year_to"`
YearGraduated int `json:"year_graduated"`
Class string `json:"class"`
Speciality string `json:"speciality"`
Type int `json:"type"`
TypeStr string `json:"type_str"`
}
School - школа. Выдается в массиве - списке школ, в которых учился пользователь. Объект содержит следующие поля: id (string?) — идентификатор школы; country (integer) — идентификатор страны, в которой расположена школа; city (integer) — идентификатор города, в котором расположена школа; name (string) — наименование школы; year_from (integer) — год начала обучения; year_to (integer) — год окончания обучения; year_graduated (integer) — год выпуска; class (string) — буква класса; speciality (string) — специализация; type (integer) — идентификатор типа; type_str (string) — название типа. Возможные значения для пар type-typeStr: 0 — "школа"; 1 — "гимназия"; 2 — "лицей"; 3 — "школа-интернат"; 4 — "школа вечерняя"; 5 — "школа музыкальная"; 6 — "школа спортивная"; 7 — "школа художественная"; 8 — "колледж"; 9 — "профессиональный лицей"; 10 — "техникум"; 11 — "ПТУ"; 12 — "училище"; 13 — "школа искусств".
type StickerAttachment ¶
type StickerAttachment struct {
ID int `json:"id"`
ProductID int `json:"product_id"`
Photo64 string `json:"photo_64"`
Photo128 string `json:"photo_128"`
Photo256 string `json:"photo_256"`
Photo352 string `json:"photo_352"`
Photo512 string `json:"photo_512"`
Width int `json:"width"`
Height int `json:"height"`
}
type Token ¶
type Token struct {
AccessToken string `json:"access_token"`
ExpiresIn int `json:"expires_in"`
UID int `json:"user_id"`
Error string `json:"error"`
ErrorDescription string `json:"error_description"`
FirstName string
LastName string
PicSmall string
PicMedium string
PicBig string
Lang string
}
Token содержит всю авторизационную информацию аккаунта, а также ФИО и фото
type TokenOptions ¶
type Topic ¶
type Topic struct {
ID int `json:"id"`
Title string `json:"title"`
Created int64 `json:"created"`
CreatedBy int `json:"created_by"`
Updated int64 `json:"updated"`
UpdatedBy int `json:"updated_by"`
IsClosed int `json:"is_closed"`
IsFixed int `json:"is_fixed"`
Comments int `json:"comments"`
FirstComment string `json:"first_comment"`
LastComment string `json:"last_comment"`
}
type TopicComment ¶
type TopicComment struct {
ID int `json:"id"`
FromID int `json:"from_id"`
Date int64 `json:"date"`
Text string `json:"text"`
Likes *TopicCommentLike `json:"likes"`
ReplyToUID int `json:"reply_to_uid"`
ReplyToCID int `json:"reply_to_cid"`
Attachments []*Attachment `json:"attachments"`
}
type TopicCommentLike ¶
type University ¶
type University struct {
UniversityID int `json:"id"`
CountryID int `json:"country"`
CityID int `json:"city"`
Name string `json:"name"`
Faculty int `json:"faculty"`
FacultyName string `json:"faculty_name"`
Chair int `json:"chair"`
ChairName string `json:"chair_name"`
Graduation int `json:"graduation"`
EducationForm string `json:"education_form"`
EducationStatus string `json:"education_status"`
}
University - университет. Выдается в массиве - списке вузов, в которых учился пользователь. Объект содержит следующие поля: id (integer)— идентификатор университета; country (integer) — идентификатор страны, в которой расположен университет; city (integer) — идентификатор города, в котором расположен университет; name (string) — наименование университета; faculty (integer) — идентификатор факультета; faculty_name (string) — наименование факультета; chair (integer) — идентификатор кафедры; chair_name (string) — наименование кафедры; graduation (integer) — год окончания обучения; education_form (string) — форма обучения; education_status (string) — статус (например, «Выпускник (специалист)»).
type User ¶
type User struct {
UID int `json:"id"` // Идентификатор пользователя.
FirstName string `json:"first_name"` // Имя.
LastName string `json:"last_name"` // Фамилия.
Deactivated string `json:"deactivated"` // Поле возвращается, если страница пользователя удалена или заблокирована, содержит значение deleted или banned. В этом случае опциональные поля не возвращаются.
IsClosed bool `json:"is_closed"` // Скрыт ли профиль пользователя настройками приватности.
CanAccessClosed bool `json:"can_access_closed"` // Может ли текущий пользователь видеть профиль при is_closed = 1 (например, он есть в друзьях).
About string `json:"about"` // Содержимое поля «О себе» из профиля.
Activities string `json:"activities"` // Содержимое поля «Деятельность» из профиля.
Bdate string `json:"bdate"` // Дата рождения. Возвращается в формате D.M.YYYY или D.M (если год рождения скрыт). Если дата рождения скрыта целиком, поле отсутствует в ответе.
Blacklisted int `json:"blacklisted"` // Информация о том, находится ли текущий пользователь в черном списке. Возможные значения: 1 — находится; 0 — не находится.
BlacklistedByMe int `json:"blacklisted_by_me"` // Информация о том, находится ли пользователь в черном списке у текущего пользователя. Возможные значения: 1 — находится; 0 — не находится.
Books string `json:"books"` // Содержимое поля «Любимые книги» из профиля пользователя.
CanPost int `json:"can_post"` // Информация о том, может ли текущий пользователь оставлять записи на стене. Возможные значения: 1 — может; 0 — не может.
CanSeeAllPosts int `json:"can_see_all_posts"` // Информация о том, может ли текущий пользователь видеть чужие записи на стене. Возможные значения: 1 — может; 0 — не может.
CanSeeAudio int `json:"can_see_audio"` // Информация о том, может ли текущий пользователь видеть аудиозаписи. Возможные значения: 1 — может; 0 — не может.
CanSendFriendRequest int `json:"can_send_friend_request"` // Информация о том, будет ли отправлено уведомление пользователю о заявке в друзья от текущего пользователя. Возможные значения: 1 — уведомление будет отправлено; 0 — уведомление не будет отправлено.
CanWritePrivateMessage int `json:"can_write_private_message"` // Информация о том, может ли текущий пользователь отправить личное сообщение. Возможные значения: 1 — может; 0 — не может.
Career []Career `json:"career"` // Информация о карьере пользователя. Объект, содержащий следующие поля: group_id (integer) — идентификатор сообщества (если доступно, иначе company); company (string) — название компании (если доступно, иначе group_id); country_id (integer) — идентификатор страны; city_id (integer) — идентификатор города (если доступно, иначе city_name); city_name (string) — название города (если доступно, иначе city_id); from (integer) — год начала работы; until (integer) — год окончания работы; position (string) — должность.
City *UserCity `json:"city"` // Информация о городе, указанном на странице пользователя в разделе «Контакты». Возвращаются следующие поля: id (integer) — идентификатор города, который можно использовать для получения его названия с помощью метода database.getCitiesById; title (string) — название города.
CommonCount int `json:"common_count"` // Количество общих друзей с текущим пользователем.
Connections string `json:"connections"` // Возвращает данные об указанных в профиле сервисах пользователя, таких как: skype, livejournal. Для каждого сервиса возвращается отдельное поле с типом string, содержащее никнейм пользователя. Например, "skype": "username".
Contacts *UserContacts `json:"contacts"` // Информация о телефонных номерах пользователя. Если данные указаны и не скрыты настройками приватности, возвращаются следующие поля: mobile_phone (string) — номер мобильного телефона пользователя (только для Standalone-приложений); home_phone (string) — дополнительный номер телефона пользователя.
Counters *UserCounters `json:"counters"` // Количество различных объектов у пользователя. Поле возвращается только в методе users.get при запросе информации об одном пользователе, с передачей пользовательского access_token. Объект, содержащий следующие поля: albums (integer) — количество фотоальбомов; videos (integer) — количество видеозаписей; audios (integer) — количество аудиозаписей; photos (integer) — количество фотографий; notes (integer) — количество заметок; friends (integer) — количество друзей; groups (integer) — количество сообществ; online_friends (integer) — количество друзей онлайн; mutual_friends (integer) — количество общих друзей; user_videos (integer) — количество видеозаписей с пользователем; followers (integer) — количество подписчиков; pages (integer) — количество объектов в блоке «Интересные страницы».
Country *UserCountry `json:"country"` // Информация о стране, указанной на странице пользователя в разделе «Контакты». Возвращаются следующие поля: id (integer) — идентификатор страны, который можно использовать для получения ее названия с помощью метода database.getCountriesById; title (string) — название страны.
Domain string `json:"domain"` // Короткий адрес страницы. Возвращается строка, содержащая короткий адрес страницы (например, andrew). Если он не назначен, возвращается "id"+user_id, например, id35828305.
Education *UserEducation `json:"education"` // Информация о высшем учебном заведении пользователя. Возвращаются поля: university (integer) — идентификатор университета; university_name (string) — название университета; faculty (integer) — идентификатор факультета; faculty_name (string)— название факультета; graduation (integer) — год окончания.
Exports string `json:"exports"` // Внешние сервисы, в которые настроен экспорт из ВК ( livejournal).
FirstNameCaseNom string `json:"first_name_nom"` // Имя в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; acc — винительный; ins — творительный; abl — предложный. В запросе можно передать несколько значений
FirstNameCaseGen string `json:"first_name_gen"` // Имя в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; acc — винительный; ins — творительный; abl — предложный. В запросе можно передать несколько значений
FirstNameCaseDat string `json:"first_name_dat"` // Имя в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; acc — винительный; ins — творительный; abl — предложный. В запросе можно передать несколько значений
FirstNameCaseAcc string `json:"first_name_acc"` // Имя в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; acc — винительный; ins — творительный; abl — предложный. В запросе можно передать несколько значений
FirstNameCaseIns string `json:"first_name_ins"` // Имя в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; acc — винительный; ins — творительный; abl — предложный. В запросе можно передать несколько значений
FirstNameCaseAbl string `json:"first_name_abl"` // Имя в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; acc — винительный; ins — творительный; abl — предложный. В запросе можно передать несколько значений
FollowersCount int `json:"followers_count"` // Количество подписчиков пользователя.
FriendStatus int `json:"friend_status"` // Статус дружбы с пользователем. Возможные значения: 0 — не является другом, 1 — отправлена заявка/подписка пользователю, 2 — имеется входящая заявка/подписка от пользователя, 3 — является другом.
Games string `json:"games"` // Содержимое поля «Любимые игры» из профиля.
HasMobile int `json:"has_mobile"` // Информация о том, известен ли номер мобильного телефона пользователя. Возвращаемые значения: 1 — известен, 0 — не известен.
HasPhoto int `json:"has_photo"` // Информация о том, установил ли пользователь фотографию для профиля. Возвращаемые значения: 1 — установил, 0 — не установил.
HomeTown string `json:"home_town"` // Название родного города.
Interests string `json:"interests"` // Содержимое поля «Интересы» из профиля.
IsFavorite int `json:"is_favorite"` // Информация о том, есть ли пользователь в закладках у текущего пользователя. Возможные значения: 1 — есть; 0 — нет.
IsFriend int `json:"is_friend"` // Информация о том, является ли пользователь другом текущего пользователя. Возможные значения: 1 — да; 0 — нет.
IsHiddenFromFeed int `json:"is_hidden_from_feed"` // Информация о том, скрыт ли пользователь из ленты новостей текущего пользователя. Возможные значения: 1 — да; 0 — нет.
IsNoIndex int `json:"is_no_index"` // Индексируется ли профиль поисковыми сайтами. Возможные значения: 1 — профиль скрыт от поисковых сайтов; 0 — профиль доступен поисковым сайтам. (В настройках приватности: https://vk.com/settings?act=privacy, в пункте «Кому в интернете видна моя страница», выбрано значение «Всем»).
LastNameCaseNom string `json:"last_name_nom"` // Фамилия в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; ac — винительный; ins — творительный; abl — предложный.
LastNameCaseGen string `json:"last_name_gen"` // Фамилия в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; ac — винительный; ins — творительный; abl — предложный.
LastNameCaseDat string `json:"last_name_dat"` // Фамилия в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; ac — винительный; ins — творительный; abl — предложный.
LastNameCaseAcc string `json:"last_name_acc"` // Фамилия в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; ac — винительный; ins — творительный; abl — предложный.
LastNameCaseIns string `json:"last_name_ins"` // Фамилия в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; ac — винительный; ins — творительный; abl — предложный.
LastNameCaseAbl string `json:"last_name_abl"` // Фамилия в заданном падеже. Возможные значения для {case}: nom — именительный; gen — родительный; dat — дательный; ac — винительный; ins — творительный; abl — предложный.
LastSeen *LastSeen `json:"last_seen"` // Время последнего посещения. Объект, содержащий следующие поля: time (integer) — время последнего посещения в формате Unixtime. platform (integer) — тип платформы. Возможные значения: 1 — мобильная версия; 2 — приложение для iPhone; 3 — приложение для iPad; 4 — приложение для Android; 5 — приложение для Windows Phone; 6 — приложение для Windows 10; 7 — полная версия сайта.
Lists string `json:"lists"` // Разделенные запятой идентификаторы списков друзей, в которых состоит пользователь. Поле доступно только для метода friends.get.
MaidenName string `json:"maiden_name"` // Девичья фамилия.
Military []Military `json:"military"` // Информация о военной службе пользователя. Объект, содержащий следующие поля: unit (string) — номер части; unit_id (integer) — идентификатор части в базе данных; country_id (integer) — идентификатор страны, в которой находится часть; from (integer) — год начала службы; until (integer) — год окончания службы.
Movies string `json:"movies"` // Содержимое поля «Любимые фильмы» из профиля пользователя.
Music string `json:"music"` // Содержимое поля «Любимая музыка» из профиля пользователя.
Nickname string `json:"nickname"` // Никнейм (отчество) пользователя.
Occupation *UserOccupation `json:"occupation"` // Информация о текущем роде занятия пользователя. Объект, содержащий следующие поля: type (string) — тип. Возможные значения: work — работа; school — среднее образование; university — высшее образование. id (integer) — идентификатор школы, вуза, сообщества компании (в которой пользователь работает); name (string) — название школы, вуза или места работы;
Online int `json:"online"` // Информация о том, находится ли пользователь сейчас на сайте. Если пользователь использует мобильное приложение либо мобильную версию, возвращается дополнительное поле online_mobile, содержащее 1. При этом, если используется именно приложение, дополнительно возвращается поле online_app, содержащее его идентификатор.
Personal *Personal `json:"personal"` // Информация о полях из раздела «Жизненная позиция». political (integer) — политические предпочтения. Возможные значения: 1 — коммунистические; 2 — социалистические; 3 — умеренные; 4 — либеральные; 5 — консервативные; 6 — монархические; 7 — ультраконсервативные; 8 — индифферентные; 9 — либертарианские. langs (array) — языки. religion (string) — мировоззрение. inspired_by (string) — источники вдохновения. people_main (integer) — главное в людях. Возможные значения: 1 — ум и креативность; 2 — доброта и честность; 3 — красота и здоровье; 4 — власть и богатство; 5 — смелость и упорство; 6 — юмор и жизнелюбие. life_main (integer) — главное в жизни. Возможные значения: 1 — семья и дети; 2 — карьера и деньги; 3 — развлечения и отдых; 4 — наука и исследования; 5 — совершенствование мира; 6 — саморазвитие; 7 — красота и искусство; 8 — слава и влияние; smoking (integer) — отношение к курению. Возможные значения: 1 — резко негативное; 2 — негативное; 3 — компромиссное; 4 — нейтральное; 5 — положительное. alcohol (integer) — отношение к алкоголю. Возможные значения: 1 — резко негативное; 2 — негативное; 3 — компромиссное; 4 — нейтральное; 5 — положительное.
Photo string `json:"photo"` //
PhotoMedium string `json:"photo_medium"` //
PhotoBig string `json:"photo_big"` //
Photo50 string `json:"photo_50"` // URL квадратной фотографии пользователя, имеющей ширину 50 пикселей. В случае отсутствия у пользователя фотографии возвращается https://vk.com/images/camera_50.png.
Photo100 string `json:"photo_100"` // URL квадратной фотографии пользователя, имеющей ширину 100 пикселей. В случае отсутствия у пользователя фотографии возвращается https://vk.com/images/camera_100.png.
Photo200Orig string `json:"photo_200_orig"` // URL фотографии пользователя, имеющей ширину 200 пикселей. В случае отсутствия у пользователя фотографии возвращается https://vk.com/images/camera_200.png.
Photo200 string `json:"photo_200"` // URL квадратной фотографии, имеющей ширину 200 пикселей. Если у пользователя отсутствует фотография таких размеров, в ответе вернется https://vk.com/images/camera_200.png
Photo400Orig string `json:"photo_400_orig"` // URL фотографии, имеющей ширину 400 пикселей. Если у пользователя отсутствует фотография такого размера, в ответе вернется https://vk.com/images/camera_400.png.
PhotoId string `json:"photo_id"` // Строковый идентификатор главной фотографии профиля пользователя в формате {user_id}_{photo_id}, например, 6492_192164258. Обратите внимание, это поле может отсутствовать в ответе.
PhotoMax string `json:"photo_max"` // URL квадратной фотографии с максимальной шириной. Может быть возвращена фотография, имеющая ширину как 200, так и 100 пикселей. В случае отсутствия у пользователя фотографии возвращается https://vk.com/images/camera_200.png.
PhotoMaxOrig string `json:"photo_max_orig"` // URL фотографии максимального размера. Может быть возвращена фотография, имеющая ширину как 400, так и 200 пикселей. В случае отсутствия у пользователя фотографии возвращается https://vk.com/images/camera_400.png.
Quotes string `json:"quotes"` // Любимые цитаты.
Relatives []Relative `json:"relatives"` // Список родственников. Массив объектов, каждый из которых содержит поля: id (integer) — идентификатор пользователя; name (string) — имя родственника (если родственник не является пользователем ВКонтакте, то предыдущее значение id возвращено не будет); type (string) — тип родственной связи. Возможные значения: child — сын/дочь; sibling — брат/сестра; parent — отец/мать; grandparent — дедушка/бабушка; grandchild — внук/внучка.
Relation int `json:"relation"` // Семейное положение. Возможные значения: 1 — не женат/не замужем; 2 — есть друг/есть подруга; 3 — помолвлен/помолвлена; 4 — женат/замужем; 5 — всё сложно; 6 — в активном поиске; 7 — влюблён/влюблена; 8 — в гражданском браке; 0 — не указано. Если в семейном положении указан другой пользователь, дополнительно возвращается объект relation_partner, содержащий id и имя этого человека.
Schools []School `json:"schools"` // Список школ, в которых учился пользователь. Массив объектов, описывающих школы. Каждый объект содержит следующие поля: id (string) — идентификатор школы; country (integer) — идентификатор страны, в которой расположена школа; city (integer) — идентификатор города, в котором расположена школа; name (string) — наименование школы year_from (integer) — год начала обучения; year_to (integer) — год окончания обучения; year_graduated (integer) — год выпуска; class (string) — буква класса; speciality (string) — специализация; type (integer) — идентификатор типа; type_str (string) — название типа. Возможные значения для пар type-typeStr: 0 — "школа"; 1 — "гимназия"; 2 — "лицей"; 3 — "школа-интернат"; 4 — "школа вечерняя"; 5 — "школа музыкальная"; 6 — "школа спортивная"; 7 — "школа художественная"; 8 — "колледж"; 9 — "профессиональный лицей"; 10 — "техникум"; 11 — "ПТУ"; 12 — "училище"; 13 — "школа искусств".
ScreenName string `json:"screen_name"` // Короткое имя страницы.
Sex int `json:"sex"` // Пол. Возможные значения: 1 — женский; 2 — мужской; 0 — пол не указан.
Site string `json:"site"` // Адрес сайта, указанный в профиле.
Status string `json:"status"` // Статус пользователя. Возвращается строка, содержащая текст статуса, расположенного в профиле под именем. Если включена опция «Транслировать в статус играющую музыку», возвращается дополнительное поле status_audio, содержащее информацию о композиции.
Timezone int `json:"timezone"` // Временная зона. Только при запросе информации о текущем пользователе.
Trending int `json:"trending"` // Информация о том, есть ли на странице пользователя «огонёк».
Tv string `json:"tv"` // Любимые телешоу.
Universities []University `json:"universities"` // Список вузов, в которых учился пользователь. Массив объектов, описывающих университеты. Каждый объект содержит следующие поля: id (integer)— идентификатор университета; country (integer) — идентификатор страны, в которой расположен университет; city (integer) — идентификатор города, в котором расположен университет; name (string) — наименование университета; faculty (integer) — идентификатор факультета; faculty_name (string) — наименование факультета; chair (integer) — идентификатор кафедры; chair_name (string) — наименование кафедры; graduation (integer) — год окончания обучения; education_form (string) — форма обучения; education_status (string) — статус (например, «Выпускник (специалист)»).
Verified int `json:"verified"` // Возвращается 1, если страница пользователя верифицирована, 0 — если нет.
WallDefault string `json:"wall_default"` // Режим стены по умолчанию. Возможные значения: owner, all.
}
User содержит ВСЕ личные данные пользователя ВК
type UserCity ¶
UserCity содержит id и название населенного пункта пользователя ВК Информация о городе, указанном на странице пользователя в разделе «Контакты». Возвращаются следующие поля: id (integer) — идентификатор города, который можно использовать для получения его названия с помощью метода database.getCitiesById; title (string) — название города.
type UserContacts ¶
type UserContacts struct {
MobilePhone string `json:"mobile_phone"`
HomePhone string `json:"home_phone"`
}
Contacts содержит информацию о телефонных номерах пользователя. Если данные указаны и не скрыты настройками приватности, возвращаются следующие поля: mobile_phone (string) — номер мобильного телефона пользователя (только для Standalone-приложений); home_phone (string) — дополнительный номер телефона пользователя.
type UserCounters ¶
type UserCounters struct {
Albums int `json:"albums"`
Videos int `json:"videos"`
Audios int `json:"audios"`
Photos int `json:"photos"`
Notes int `json:"notes"`
Friends int `json:"friends"`
Groups int `json:"groups"`
OnlineFriends int `json:"online_friends"`
Mutual_friends int `json:"mutual_friends"`
UserVideos int `json:"user_videos"`
Followers int `json:"followers"`
Pages int `json:"pages"`
}
Counters - количество различных объектов у пользователя. Поле возвращается только в методе users.get при запросе информации об одном пользователе, с передачей пользовательского access_token. Объект, содержащий следующие поля: albums (integer) — количество фотоальбомов; videos (integer) — количество видеозаписей; audios (integer) — количество аудиозаписей; photos (integer) — количество фотографий; notes (integer) — количество заметок; friends (integer) — количество друзей; groups (integer) — количество сообществ; online_friends (integer) — количество друзей онлайн; mutual_friends (integer) — количество общих друзей; user_videos (integer) — количество видеозаписей с пользователем; followers (integer) — количество подписчиков; pages (integer) — количество объектов в блоке «Интересные страницы».
type UserCountry ¶
UserCountry содержит id и название страны пользователя ВК Информация о стране, указанной на странице пользователя в разделе «Контакты». Возвращаются следующие поля: id (integer) — идентификатор страны, который можно использовать для получения ее названия с помощью метода database.getCountriesById; title (string) — название страны.
type UserEducation ¶
type UserEducation struct {
UniversityID int `json:"university"`
UniversityName string `json:"university_name"`
FacultyID int `json:"faculty"`
FacultyName string `json:"faculty_name"`
Graduation int `json:"graduation"`
}
UserEducation - информация о высшем учебном заведении пользователя. Возвращаются поля: university (integer) — идентификатор университета; university_name (string) — название университета; faculty (integer) — идентификатор факультета; faculty_name (string)— название факультета; graduation (integer) — год окончания.
type UserMin ¶
type UserMin struct {
UID int `json:"id"` // Идентификатор пользователя.
FirstName string `json:"first_name"` // Имя.
LastName string `json:"last_name"` // Фамилия.
Deactivated string `json:"deactivated"` // Поле возвращается, если страница пользователя удалена или заблокирована, содержит значение deleted или banned. В этом случае опциональные поля не возвращаются.
IsClosed bool `json:"is_closed"` // Скрыт ли профиль пользователя настройками приватности.
CanAccessClosed bool `json:"can_access_closed"` // Может ли текущий пользователь видеть профиль при is_closed = 1 (например, он есть в друзьях).
}
type UserNorm ¶
type UserNorm struct {
//type User struct {
UID int `json:"id"`
FirstName string `json:"first_name"`
LastName string `json:"last_name"`
Sex int `json:"sex"`
Nickname string `json:"nickname"`
ScreenName string `json:"screen_name"`
BDate string `json:"bdate"`
City *UserCity `json:"city"`
Country *UserCountry `json:"country"`
Photo string `json:"photo"`
PhotoMedium string `json:"photo_medium"`
PhotoBig string `json:"photo_big"`
Photo50 string `json:"photo_50"`
Photo100 string `json:"photo_100"`
HasMobile int `json:"has_mobile"`
Online int `json:"online"`
OnlineInfo *OnlineInfo `json:"online_info"`
CanPost int `json:"can_post"`
CanSeeAllPosts int `json:"can_see_all_posts"`
CanWritePrivateMessages int `json:"can_write_private_message"`
Status string `json:"status"`
LastSeen *LastSeen `json:"last_seen"`
Hidden int `json:"hidden"`
Deactivated string `json:"deactivated"`
Relation int `json:"relation"`
}
User содержит все (ли?) личные данные пользователя ВК
type UserOccupation ¶
type UserOccupation struct {
Type string `json:"type"`
ID int `json:"id"`
Name string `json:"name"`
}
UserOccupation - информация о текущем роде занятия пользователя. Объект, содержащий следующие поля: type (string) — тип. Возможные значения: work — работа; school — среднее образование; university — высшее образование$ id (integer) — идентификатор школы, вуза, сообщества компании (в которой пользователь работает); name (string) — название школы, вуза или места работы.
type VKClient ¶
VKClient содержит авторизационные данные и настройки коммуникации с сервером ВК
func NewVKClient ¶
func NewVKClientWithToken ¶
func NewVKClientWithToken(token string, options *TokenOptions, limitrate bool) (*VKClient, error)
func (*VKClient) AddLongpollCallback ¶
func (client *VKClient) AddLongpollCallback(name string, f func(*LongPollMessage))
func (*VKClient) BoardAddTopic ¶
func (*VKClient) BoardCloseTopic ¶
func (*VKClient) BoardCreateComment ¶
func (*VKClient) BoardDeleteComment ¶
func (*VKClient) BoardDeleteTopic ¶
func (*VKClient) BoardEditComment ¶
func (*VKClient) BoardEditTopic ¶
func (*VKClient) BoardFixTopic ¶
func (*VKClient) BoardGetComments ¶
func (*VKClient) BoardGetTopics ¶
func (*VKClient) BoardOpenTopic ¶
func (*VKClient) BoardRestoreComment ¶
func (*VKClient) BoardUnfixTopic ¶
func (*VKClient) DeleteLongpollCallback ¶
func (*VKClient) DialogsGet ¶
DialogsGet возвращает список диалогов текущего пользователя или сообщества. Актуальный метод: messages.getConversations.
Данный метод устарел и может быть отключён через некоторое время, пожалуйста, избегайте его использования.
func (*VKClient) DocsSearch ¶
func (*VKClient) FriendsAdd ¶
FriendsAdd - одобряет или создаёт заявку на добавление в друзья. user_id (positive) - Идентификатор пользователя, которому необходимо отправить заявку, либо заявку от которого необходимо одобрить. text (string) - Текст сопроводительного сообщения для заявки на добавление в друзья. Максимальная длина сообщения - 500 символов. follow (checkbox) = 1, если необходимо отклонить входящую заявку (оставить пользователя в подписчиках).
После успешного выполнения возвращает одно из следующих значений: 1 - заявка на добавление данного пользователя в друзья отправлена; 2 - заявка на добавление в друзья от данного пользователя одобрена; 4 - повторная отправка заявки.
func (*VKClient) FriendsDelete ¶
FriendsDelete - удаляет пользователя из списка друзей или отклоняет заявку в друзья. user_id (positive) - Идентификатор пользователя, которого необходимо удалить из списка друзей, либо заявку от которого необходимо отклонить. Результат - возвращается объект с полями (типа "success":1): success - удалось успешно удалить друга; friend_deleted - был удален друг; out_request_deleted - отменена исходящая заявка; in_request_deleted - отклонена входящая заявка; suggestion_deleted - отклонена рекомендация друга.
func (*VKClient) FriendsGet ¶
func (client *VKClient) FriendsGet(uid int, count int, offset int, fields string) (int, []*User, error)
FriendsGet возвращает список идентификаторов друзей пользователя (см. FriendsGetIds) или расширенную информацию о друзьях пользователя (при использовании параметра fields).
Если вы используете социальный граф пользователя ВКонтакте в своём приложении, обратите внимание на п. 4.4. Правил платформы (https://dev.vk.com/rules)
user_id (integer) - Идентификатор пользователя, для которого необходимо получить список друзей. Если параметр не задан, то считается, что он равен идентификатору текущего пользователя (справедливо для вызова с передачей access_token).
order (string) - Порядок, в котором нужно вернуть список друзей. Допустимые значения: hints — сортировать по рейтингу, аналогично тому, как друзья сортируются в разделе Мои друзья. Это значение доступно только для Standalone-приложений с ключом доступа, полученным по схеме Implicit Flow. random — возвращает друзей в случайном порядке. name — сортировать по имени. Данный тип сортировки работает медленно, так как сервер будет получать всех друзей а не только указанное количество count. (работает только при переданном параметре fields). По умолчанию список сортируется в порядке возрастания идентификаторов пользователей.
count (positive) - Количество друзей, которое нужно вернуть. 0 - вернуть всех друзей. При использовании параметра fields возвращается не более 5000 друзей.
offset (positive) - Смещение, необходимое для выборки определенного подмножества друзей.
fields (string) - Список дополнительных полей, которые необходимо вернуть (см. var userFields в user.go).
name_case (string) - Падеж для склонения имени и фамилии пользователя. Возможные значения: именительный – nom; родительный – gen; дательный – dat; винительный – acc; творительный – ins; предложный – abl. По умолчанию nom.
Результат. После успешного выполнения возвращает список идентификаторов (id) друзей пользователя, если параметр fields не использовался. При использовании параметра fields возвращает список объектов пользователей, но не более 5000.
func (*VKClient) FriendsGetIds ¶
FriendsGetIds возвращает только список идентификаторов всех друзей пользователя. или расширенную информацию о друзьях пользователя (при использовании параметра fields).
Если вы используете социальный граф пользователя ВКонтакте в своём приложении, обратите внимание на п. 4.4. Правил платформы (https://dev.vk.com/rules)
user_id (integer) - Идентификатор пользователя, для которого необходимо получить список друзей. Если параметр не задан, то считается, что он равен идентификатору текущего пользователя (справедливо для вызова с передачей access_token).
func (*VKClient) FriendsGetRequests ¶
FriendsGetRequests возвращает информацию о полученных или отправленных заявках на добавление в друзья для текущего пользователя.
offset (positive) - Смещение, необходимое для выборки определенного подмножества заявок на добавление в друзья.
count (positive) - Максимальное количество заявок на добавление в друзья, которые необходимо получить (не более 1000). По умолчанию — 100.
extended (checkbox) - Определяет, требуется ли возвращать в ответе сообщения от пользователей, подавших заявку на добавление в друзья. И отправителя рекомендации при suggested = 1.
need_mutual (checkbox) - Определяет, требуется ли возвращать в ответе список общих друзей, если они есть. Обратите внимание, что при использовании need_mutual будет возвращено не более 2 заявок.
out (checkbox) - 0 — возвращать полученные заявки в друзья (по умолчанию), 1 — возвращать отправленные пользователем заявки.
sort (positive) - 0 — сортировать по дате добавления, 1 — сортировать по количеству общих друзей. (Если out = 1, этот параметр не учитывается).
Результат. Если не установлен параметр need_mutual, то в случае успеха возвращает отсортированный в антихронологическом порядке по времени подачи заявки список идентификаторов (id) пользователей (кому или от кого пришла заявка). Если установлен параметр need_mutual, то в случае успеха возвращает отсортированный в антихронологическом порядке по времени подачи заявки массив объектов, содержащих информацию о заявках на добавление в друзья. Каждый из объектов содержит поле uid, являющийся идентификатором пользователя. При наличии общих друзей, в объекте будет содержаться поле mutual, в котором будет находиться список идентификаторов общих друзей.
func (*VKClient) GetDocsString ¶
func (client *VKClient) GetDocsString(docs []*DocAttachment) string
func (*VKClient) GetHistoryAttachments ¶
func (client *VKClient) GetHistoryAttachments(peerID int, mediaType string, count int, params url.Values) (*HistoryAttachment, error)
GetHistoryAttachments возвращает материалы диалога или беседы.
func (*VKClient) GetPhotosString ¶
func (client *VKClient) GetPhotosString(photos []*PhotoAttachment) string
func (*VKClient) GetShortLink ¶
func (*VKClient) GroupGetMembers ¶
GroupGetMembers возвращает список участников сообщества.
func (*VKClient) GroupSearch ¶
GroupSearch осуществляет поиск сообществ по заданной подстроке.
func (*VKClient) GroupSendInvite ¶
GroupSendInvite позволяет приглашать друзей в группу.
func (*VKClient) GroupsGetByID ¶
GroupsGetByID возвращает информацию о заданном сообществе или о нескольких сообществах.
func (*VKClient) LikesGet ¶
func (client *VKClient) LikesGet(itemType string, ownerID int, itemID int, count int, params url.Values) (int, []*LikeUser, error)
LikesGet получает список идентификаторов пользователей, которые добавили заданный объект в свой список «Мне нравится».
Обратите внимание, данные о репостах доступны только для записей, созданных текущим пользователем или сообществом, в котором он является администратором.
func (*VKClient) ListenLongPollServer ¶
func (client *VKClient) ListenLongPollServer()
func (*VKClient) ListenLongPollServerWithCancel ¶
func (*VKClient) MakeRequest ¶
func (*VKClient) MessagesDelete ¶
MessagesDelete удаляет сообщение.
func (*VKClient) MessagesGet ¶
func (client *VKClient) MessagesGet(count int, chatID int, isDialog bool, params url.Values) (int, []*DialogMessage, error)
MessagesGet возвращает список входящих личных сообщений текущего пользователя или сообщества.
Данный метод устарел и может быть отключён через некоторое время, пожалуйста, избегайте его использования.
func (*VKClient) MessagesGetByID ¶
func (client *VKClient) MessagesGetByID(message_ids []int, params url.Values) (int, []*DialogMessage, error)
MessagesGetByID возвращает сообщения по их идентификаторам.
func (*VKClient) MessagesSend ¶
func (client *VKClient) MessagesSend(peerOrDomain interface{}, message string, params url.Values) (APIResponse, error)
MessagesSend отправляет сообщение "message" адресату "peerOrDomain", заданному в ВК номером id или коротким именем
func (*VKClient) MessagesSetActivity ¶
MessagesSetActivity изменяет статус набора текста пользователем в диалоге.
func (*VKClient) ResolveScreenName ¶
func (client *VKClient) ResolveScreenName(name string) (ResolveScreenName, error)
func (*VKClient) SetCustomHTTPClient ¶
func (*VKClient) UploadByLinkGroupWallPhotos ¶
func (client *VKClient) UploadByLinkGroupWallPhotos(groupID int, urlFile string) ([]*PhotoAttachment, error)
func (*VKClient) UploadGroupWallDoc ¶
func (client *VKClient) UploadGroupWallDoc(groupID int, fileName string) (*DocAttachment, error)
func (*VKClient) UploadGroupWallPhotos ¶
func (client *VKClient) UploadGroupWallPhotos(groupID int, files []string) ([]*PhotoAttachment, error)
func (*VKClient) UploadMessagesPhotos ¶
func (client *VKClient) UploadMessagesPhotos(peerID int, files []string) ([]*PhotoAttachment, error)
func (*VKClient) WallGet ¶
WallGet возвращает список записей со стены пользователя или сообщества. Для этого метода действует ограничение - 5000 вызовов в сутки на 1 аккаунт (токен).
count - количество записей, которое необходимо получить. Максимальное значение: 100.
func (*VKClient) WallGetByID ¶
func (*VKClient) WallPost ¶
WallPost позволяет создать запись на стене, предложить запись на стене публичной страницы, опубликовать существующую отложенную запись.
Чтобы создать предложенную запись, необходимо передать в owner_id идентификатор публичной страницы, в которой текущий пользователь не является руководителем.
Для публикации предложенных и отложенных записей используйте параметр post_id, значение для которого можно получить методом wall.get с filter=suggests и postponed соответственно.
owner_id (int) - идентификатор пользователя или сообщества, на стене которого должна быть опубликована запись. Идентификатор сообщества в параметре owner_id необходимо указывать со знаком «-». Например, owner_id=-1 соответствует идентификатору сообщества ВКонтакте API (club1).
type VKGroupBot ¶
func NewVKGroupBot ¶
func NewVKGroupBot(token string, options *TokenOptions, limitrate bool) (*VKGroupBot, error)
func (*VKGroupBot) AddBotsLongpollCallback ¶
func (client *VKGroupBot) AddBotsLongpollCallback(name string, f func(*BotsLongPollObject))
func (*VKGroupBot) DeleteBotsLongpollCallback ¶
func (client *VKGroupBot) DeleteBotsLongpollCallback(name string)
func (*VKGroupBot) ListenBotsLongPollServer ¶
func (client *VKGroupBot) ListenBotsLongPollServer()
func (*VKGroupBot) ListenBotsLongPollServerWithCancel ¶
func (client *VKGroupBot) ListenBotsLongPollServerWithCancel(cancelCtx context.Context)
func (*VKGroupBot) SetCustomHTTPClient ¶
func (c *VKGroupBot) SetCustomHTTPClient(client *http.Client)
type Video ¶
type Video struct {
ID int `json:"id"`
OwnerID int `json:"owner_id"`
UserID int `json:"user_id"`
Title string `json:"title"`
Duration int `json:"duration"`
Description string `json:"description"`
Date int64 `json:"date"`
Comments int `json:"comments"`
Views int `json:"views"`
Photo130 string `json:"photo_130"`
Photo320 string `json:"photo_320"`
Photo640 string `json:"photo_640"`
IsFavorite bool `json:"is_favorite"`
AddingDate int64 `json:"adding_date"`
Player string `json:"player"`
Platftorm string `json:"platform"`
CanAdd int `json:"can_add"`
CanComment int `json:"can_comment"`
CanLike int `json:"can_like"`
CanRepost int `json:"can_repost"`
CanSubscribe int `json:"can_subscribe"`
CanAddToFaves int `json:"can_add_to_faves"`
Image []*VideoImage `json:"image"`
FirstFrame []*VideoFirstFrame `json:"first_frame"`
Type string `json:"type"`
Likes struct {
UserLikes int `json:"user_likes"`
Count int `json:"count"`
} `json:"likes"`
Reposts struct {
Count int `json:"count"`
UserReposted int `json:"user_reposted"`
} `json:"reposts"`
Files struct {
External string `json:"external"`
FLV_320 string `json:"mp4_320"`
MP4_240 string `json:"mp4_240"`
MP4_360 string `json:"mp4_360"`
MP4_480 string `json:"mp4_480"`
MP4_720 string `json:"mp4_720"`
MP4_1080 string `json:"mp4_1080"`
} `json:"files"`
}
type VideoAttachment ¶
type VideoAttachment struct {
ID int `json:"id"`
OwnerID int `json:"owner_id"`
Title string `json:"title"`
Duration int `json:"duration"`
Description string `json:"description"`
Date int64 `json:"date"`
AddingDate int64 `json:"adding_date"`
Views int `json:"views"`
Width int `json:"width"`
Height int `json:"height"`
Photo130 string `json:"photo130"`
Photo320 string `json:"photo320"`
Photo800 string `json:"photo800"`
FirstFrame320 string `json:"first_frame_320"`
FirstFrame160 string `json:"first_frame_160"`
FirstFrame130 string `json:"first_frame_130"`
FirstFrame800 string `json:"first_frame_800"`
Player string `json:"player"`
CanEdit int `json:"can_edit"`
CanAdd int `json:"can_add"`
CanComment int `json:"can_comment"`
CanLike int `json:"can_like"`
CanRepost int `json:"can_repost"`
CanSubscribe int `json:"can_subscribe"`
CanAddToFaves int `json:"can_add_to_faves"`
AccessKey string `json:"access_key"`
Image []*VideoImage `json:"image"`
}
type VideoFirstFrame ¶
type VideoImage ¶
type WallPost ¶
type WallPost struct {
ID int `json:"id"`
FromID int `json:"from_id"`
OwnerID int `json:"owner_id"`
ToID int `json:"to_id"`
Date int64 `json:"date"`
MarkedAsAd int `json:"marked_as_ads"`
IsPinned int `json:"is_pinned"`
PostType string `json:"post_type"`
CopyPostDate int64 `json:"copy_post_date"`
CopyPostType string `json:"copy_post_type"`
CopyOwnerID int `json:"copy_owner_id"`
CopyPostID int `json:"copy_post_id"`
CopyHistory []*WallPost `json:"copy_history"`
CreatedBy int `json:"created_by"`
Text string `json:"text"`
CanDelete int `json:"can_delete"`
CanPin int `json:"can_pin"`
Attachments []*MessageAttachment `json:"attachments"`
PostSource *Source `json:"post_source"`
Comments *Comment `json:"comments"`
Likes *Like `json:"likes"`
Reposts *Repost `json:"reposts"`
Online int `json:"online"`
ReplyCount int `json:"reply_count"`
SignerID int `json:"signer_id"`
}