Загрузка...

Bot VK - NEED URGENT HELP

Thread in Node.js created by vcentrevkusa Oct 21, 2021. (bumped Oct 22, 2021) 672 views

  1. vcentrevkusa
    vcentrevkusa Topic starter Oct 21, 2021 Banned 405 Nov 18, 2019
    Приветствую. Создаю бота для вк на Node js (VK-IO)
    Хочу написать команду бан, но чтобы она реагировала не только на ссылку пользователя, а при ответном сообщении
    Как сделать?
     
  2. Lokshshdvhd
    Lokshshdvhd Oct 21, 2021 26 Jun 26, 2020
    JavaScript
     if (!message.hasForwards && !message.replyMessage) {
    if (!message.args[1])
    return bot(
    `вы не указали обязательный аргумент. (ссылка/id/пересланное сообщение)`
    );

    user = users.find(x => x.uid == Number(message.args[1]));
    if (!user) {
    let res = await vk.snippets.resolveResource(message.args[1]);
    user = users.find(x => x.id == res.id);
    }
    } else {
    mes = message.hasForwards
    ? message.forwards[0].senderId
    : message.replyMessage.senderId;
    user = users.find(x => x.id == mes);
    }
    if (!user) return bot(`Не удалось найти игрока`);
    json база, взял с бота одного
     
    1. vcentrevkusa Topic starter
      Lokshshdvhd, работает только на упоминание, а на ответ сообщения не работает
    2. r3ged1t
      Lokshshdvhd, дак это старая вк ио версия
  3. noteee
    noteee Oct 21, 2021 Banned 82 Mar 28, 2018
    На пересланное сообщение сделать невозможно. Это вконтакте (та ещё помойка), только с ответом на сообщение выйдет
     
    1. vcentrevkusa Topic starter
      noteee, не на переслонное а на ответ
  4. r3ged1t
    r3ged1t Oct 22, 2021 3 Mar 28, 2021
    JavaScript
    let get_id = await ctx.replyMessage.conversationMessageId;
    console.log(get_id)
     
  5. FasterWox
    FasterWox Oct 26, 2021 Я мусульман 47 Jun 26, 2021
    Code
    if (!context.text && ! !context.forwards[0] && !context.replyMessage) {
    return context.send(`Ты должен ввести ссылку на человека или переслать его сообщение.`)
    }

    let id

    if (context.replyMessage) {
    id = context.replyMessage.senderId;
    }

    else if(context.forwards[0]) {
    id = context.forwards[0].senderId;
    }

    console.log(id)
     
    1. FasterWox
      FasterWox,
      Code
      const { API, resolveResource } = require('vk-io');
      const api = new API({ token: 'token' })

      /**
      * Это уже кидай там где будет обрабатывать
      */

      if (!context.text && !context.forwards[0] && !context.replyMessage) {
      return context.send(`Ты должен ввести ссылку на человека или переслать его сообщение.`)
      }

      let id, response

      if (context.replyMessage) {
      id = context.replyMessage.senderId;
      }

      else if(context.forwards[0]) {
      id = context.forwards[0].senderId;
      }

      else {
      try {
      response = await resolveResource({
      api,
      resource: context.text.split(' ')[1]
      })

      if (response.type !== 'user') {
      return context.send('Указанная ссылка ведет не на человека.')
      }

      id = response.id;
      }

      catch (e) {
      // Тут обработка ошибки
      }
      }
      console.log(id)
Loading...
Top