Socket
Socket
Sign inDemoInstall

github.com/SevereCloud/vksdk

Package Overview
Dependencies
5
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    github.com/SevereCloud/vksdk

Package vksdk implements the basic VK API functions. Source https://github.com/SevereCloud/vksdk


Version published

Readme

Source

VK SDK for Golang

Build Status Documentation VK Developers codecov VK chat release license

VK SDK for Golang готовая реализация основных функций VK API для языка Go.

English documentation

Возможности

  • API
    • Возвращает готовые структуры
    • Реализовано 400+ методов
    • Возможность изменять обработчик запросов
    • Возможность изменять HTTP клиент
    • Ограничитель запросов
    • Загрузка файлов
  • Callback API
    • Поддерживает все события
    • Возвращает готовые структуры
  • Bots Long Poll API
    • Поддерживает все события
    • Возвращает готовые структуры
    • Возможность изменять HTTP клиент
  • User Long Poll API
    • Возвращает готовые структуры
    • Возможность изменять HTTP клиент
  • Streaming API
    • Возвращает готовые структуры
    • Возможность изменять HTTP клиент
  • FOAF
    • Работает с пользователями и группами
    • Возвращает готовые структуры
  • VK Mini Apps
    • Проверка параметров запуска
    • Промежуточный http обработчик
  • Payments API
    • Обрабатывает уведомления о платежах
  • Скиллы Маруси
    • Готовые структуры и методы
    • Обработка запросов от Маруси

Установка

# go mod init mymodulename
go get github.com/SevereCloud/vksdk@latest

Примеры использования

Пример

package main

import (
	"log"

	"github.com/SevereCloud/vksdk/api"
	"github.com/SevereCloud/vksdk/api/params"
	"github.com/SevereCloud/vksdk/longpoll-bot"
	"github.com/SevereCloud/vksdk/object"
)

func main() {
	token := "<TOKEN>" // рекомендуется использовать os.Getenv("TOKEN")
	vk := api.NewVK(token)

	// Получаем информацию о группе
	group, err := vk.GroupsGetByID(api.Params{})
	if err != nil {
		log.Fatal(err)
	}

	// Инициализируем longpoll
	lp, err := longpoll.NewLongpoll(vk, group[0].ID)
	if err != nil {
		log.Fatal(err)
	}

	// Событие нового сообщения
	lp.MessageNew(func(obj object.MessageNewObject, groupID int) {
		log.Printf("%d: %s", obj.Message.PeerID, obj.Message.Text)

		if obj.Message.Text == "ping" {
			b := params.NewMessagesSendBuilder()
			b.Message("pong")
			b.RandomID(0)
			b.PeerID(obj.Message.PeerID)

			_, err := vk.MessagesSend(b.Params)
			if err != nil {
				log.Fatal(err)
			}
		}
	})

	// Запускаем Bots Longpoll
	log.Println("Start longpoll")
	if err := lp.Run(); err != nil {
		log.Fatal(err)
	}
}

Лицензия

FOSSA Status

FAQs

Last updated on 29 Jun 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc