Закрыть
npm

Примеры Редактировано: 28.08.2020 в 04:45

Прежде чем начать работу с Easy VK, познакомьтесь с ним на примерах, так будет проще понять, что он из себя представляет. Я постараюсь объяснить абсолютно все.

# Чат-бот игра "Виселица"

Когда-то давно я писал игру "Виселица" в виде игры-бота, этот пример доступен, его можно скачать и воспользоваться бесплатно. Если возникнут вопросы, или Вы захотите попросить меня его запустить, пишите.

Easy VK пример чат-бота игра виселица

СКАЧАТЬ: vk.com/npm_easyvk?w=wall-162208999_131

# Отправка сообщения

В этом примере показано, как работает Easy VK в целом, на самом простом примере - отправке сообщения самому себе, многие моменты можно опустить, и оставить только самую важную часть

const easyvk = require('easyvk')

easyvk({
    // воспользуйтесь password и username, чтобы получить токен
    // автоматически
    token: "{ТОКЕН_ПОЛЬЗОВАТЕЛЯ}",
}).then(async (vk) => { 
    // после авторизации вы получаете объект EasyVK (vk), с которым работаете дальше
			
    // user_id авторизованного аккаунта (по токену)
    const me = vk.session.user_id

    // Обращаемся к методу messages.send с параметром user_id и message
    vk.call('messages.send', {
        user_id: me,
        message: 'Привет!', // Текст сообщения, по мануалу ВКонтакте
        random_id: easyvk.randomId()
    }).then((response) => {

        // После выполнения запроса, ВКонтакте возвращает ответ
        console.log(response)

        // Получить полный ответ, а не только его часть response
        console.log(response.getFullResponse()) 
    }).catch((error) => {
        
        // Если произойдет ошибка при отправке запроса, она выводится в консоль
        console.log(error);

    });

}).catch(console.error)

# Чат-бот

Теперь Вы, уже зная, как работать с методами, можете понять, как работает иерархия объектов в EasyVK. Посмотрите, как можно создать простейший чат-бот

Данный пример показывает работу только для пользовательского LongPoll, чтобы прослушивать группы и создавать чат-бота группы, используйте Bots LongPoll API

const easyvk = require('easyvk')


easyvk({
  token: '{ТОКЕН_ПОЛЬЗОВАТЕЛЯ}'
}).then(vk => {
	
  async function getMessage (msgArray = []) {
    const MESSAGE_ID__INDEX = 1;
	
    return vk.call('messages.getById', {
      message_ids: msgArray[MESSAGE_ID__INDEX]
    })
  }

  // Подключаемся к серверу для "прослушивания" пользователя
  vk.longpoll.connect().then((connection) => {
    
    // Слушаем сообщения пользователя
    connection.on('message', async (msg) => {      
      
      // сообщение для User LongPoll хранится в массиве
      let fullMessage = await getMessage(msg);


      fullMessage = fullMessage.items[0]

      if (!fullMessage.out) { // если это не наше сообщение
	    
	      vk.call('messages.send', {
	        user_id: fullMessage.user_id,
	        message: 'Привет!',
          random_id: easyvk.randomId()
	      });

      }

    })

  })

})