Socket
Socket
Sign inDemoInstall

spotted

Package Overview
Dependencies
12
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    spotted

Library for creating Vkontakte bots with ease.


Version published
Weekly downloads
1
decreased by-50%
Maintainers
1
Install size
12.2 MB
Created
Weekly downloads
 

Readme

Source

spotted · npm npm

$ npm install spotted

Библиотека для быстрого и простого создания ботов для сообществ ВКонтакте.

Включает в себя сервер для обработки приходящих от ВКонтакте запросов и клиент для вызова методов API ВКонтакте.

Клиент позволяет вызывать открытые методы и методы, доступные с ключом доступа сообщества, а также загружать файлы в сообщество: обложку, документы и фотографии.

Документация

spotted()

  • Returns Application

Возвращает экземпляр класса Application.

Application

app.run([options])

Запускает сервер для обработки входящих запросов.

Options

Свойства объекта options и их значения по умолчанию.

{
  port: 8080 // <Number> Порт
}

app.setCommunity(community)

Устанавливает данные сообщества.

Community

Свойства объекта community.

{
  accessToken,      // <String> Ключ доступа сообщества
  confirmationCode, // <String> Код подтверждения адреса сервера из настроек сообщества
  secretKey         // <String> Секретный ключ сообщества (если используется)
}

Client

При установке данных сообщества (app.setCommunity) экземпляр Client создаётся автоматически, а после хранится в переменной app.client.

client.call(method[, params])

  • method<String> Название метода
  • params<Object> Параметры метода
  • Returns Promise<Any>

Вызывает методы API ВКонтакте.

При этом, метод не вызывается сразу, а помещается в очередь. Методы, находящиеся в очереди, отправляются на сервер ВКонтакте «пачками» и вызываются через execute.

client.callDirect(method[, params])

  • method<String> Название метода
  • params<Object> Параметры метода
  • Returns Promise<Any>

В отличие от client.call вызывает методы в обход очереди.

client.upload(type, file[, params[, afterUploadParams]])

  • type<String> Тип загрузки
  • file<Any> Файл к загрузке
  • params<Object> Параметры запроса на получение URL для загрузки. Подробнее
  • afterUploadParams<Object> Параметры запроса на сохранение загруженного файла. Подробнее
  • Returns Promise<Any>

Выполняет загрузку файлов во ВКонтакте.

Типы загрузок
File

Файл должен представлять собой FS Stream либо объект, который содержит следующие свойства:

СвойствоТип
contentBufferСодержимое файла
nameStringИмя файла
Как загружать граффити и аудио-сообщения?

Для того, чтобы загрузить граффити или аудио-сообщение, нужно указать document как тип загрузки, а в параметрах запроса params указать тип загружаемого документа: для граффити — это graffiti, для аудио-сообщения — audio_message.

Message

Для событий message_new и message_reply возвращается экземпляр класса Message, который имеет расширенный список методов.

message.delete([params])

  • params<Number/Object> Параметры запроса. По умолчанию равен ID текущего сообщения
  • Returns Promise<Any>

Позволяет быстро удалить сообщение.

params может быть как ID сообщения, которое нужно удалить, так и объектом, содержащим параметры для метода messages.delete.

message.isAudio()

  • Returns Boolean

Вернёт true, если первое прикрепление к сообщению является аудиозаписью.

message.isAudioMessage()

  • Returns Boolean

Вернёт true, если было получено аудио-сообщение.

message.isGraffiti()

  • Returns Boolean

Вернёт true, если было получено сообщение с граффити.

message.isPhoto()

  • Returns Boolean

Вернёт true, если первое прикрепление к сообщению является фотографией.

message.isSticker()

  • Returns Boolean

Вернёт true, если был получен стикер.

message.isText()

  • Returns Boolean

Вернёт true, если было получено сообщение без прикреплений.

message.reply(answer)

  • answer<String/Object> Сообщение-ответ
  • Returns Promise<Any>

Позволяет быстро отправить ответ на сообщение в текущий диалог.

answer может быть как строкой-ответом, так и объектом, содержащим параметры для метода messages.send.

message.replyWithPhoto(photo)

  • photo<String/Stream/Object> Фотография
  • Returns Promise<Any>

Позволяет быстро отправить фотографию в текущий диалог.

photo принимается в таком же формате, как и второй аргумент (file) для метода client.upload.

Однако, можно просто передать URL фотографии, которую нужно загрузить, и всё будет работать.

message.restore([messageId])

  • messageId<Number> ID сообщения. По умолчанию ID текущего сообщения
  • Returns Promise<Any>

Восстанавливает сообщение по его ID.

message.send(params)

  • params<Object> Параметры для метода messages.send
  • Returns Promise<Any>

Отправляет сообщение.

message.setTyping([userId])

  • userId<Number> ID пользователя (= ID диалога). По умолчанию ID автора текущего сообщения
  • Returns Promise<Any>

Изменяет статус набора текста сообществом в диалоге.

Keywords

FAQs

Last updated on 08 Jan 2018

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