Ответы пользователя по тегу Node.js
  • Ф getBot is not a function?

    @defriz
    люблю js
    function getBot(clinicId)
    {
        const bot = bots.find(bot => bot.clinic.id === clinicId);
        return bot;
    }
    
    module.exports = getBot

    const getBot = require("../initBot");
    
    function selectBranch(clinicId) 
    {
      getBot(clinicId);
    Ответ написан
    Комментировать
  • Пишет ошибку функций при запуске сервера?

    @defriz
    люблю js
    async function start(){
        
        try{
    
            await mongoose.connect(config.get('mongooseUri')),{
                useNewUrlParser: true, 
                useUnifiedTopology: true,
                useCreateIndex: true
             
            }
            app.listen(PORT, console.log(`App has been app on ${PORT}`))
    
        } catch(e){
            console.log('Server error', e.massage)
            process.exit(1)
        }
    
    }
    Ответ написан
    Комментировать
  • Выходит ошибка 27 VK API. Почему?

    @defriz
    люблю js
    Этот метод нельзя вызывать с помощью токена группы (в ошибке же написано). Используйте пользовательский токен с vkhost.github.io (метод Kate Mobile).
    Ответ написан
  • Как бот должен запоминать результат?

    @defriz
    люблю js
    Если Вам нужно именно дождаться ответа от пользователя, то используйте vk-io-question.
    Ответ написан
    Комментировать
  • Как сделать проверку на перевод vk coin?

    @defriz
    люблю js
    Получать список входных транзакций каждые, например, 3-5 секунд, проверять в нашем массиве делали ли мы с ними что-то, делать с ними действия и в итоге добавлять в массив для дальнейших проверок.
    Ответ написан
    Комментировать
  • Из-за чего клиент не может подключиться к сокет серверу?

    @defriz
    люблю js
    это происходит из-за того, что у Вас http подключение, а не https.
    попробуйте лучше socket.io, с ним все работает. https://www.npmjs.com/package/socket.io

    редактировал:
    пересмотрел вопрос и увидел, что на сервере используете socket.io, а на клиенте нет - это неправильно:
    Вы должны использовать socket.io и там, и там.
    Ответ написан
  • VK-IO BOT VK NodeJS?

    @defriz
    люблю js
    vk.updates.hear(/^(?:qr)\s(.*)/i, async (message) => {
    const qr = require('qr-image');
    let qr_svg = qr.image(message.$match[1], { type: 'jpeg' });
    qr_svg.pipe(require('fs').createWriteStream('qr.png'));
    var svg_string = qr.imageSync(message.$match[1], { type: 'png' });
    message.sendPhotos({ value: svg_string });
    });
    Ответ написан
    Комментировать
  • Vk bot страничник nodejs таймер?

    @defriz
    люблю js
    лучше бы обновить код на новую версию vk-io.
    const {VK, Keyboard, random, util} = require('vk-io');
    const vk = new VK();
    const {updates: cm, snippets} = vk;
    const id = '472111592' //СВОЙ ИД СТРАНИЦЫ!!!!!!!!!!!!!!!
    let user = new VK(); //VK()
    const bot = vk.updates;
    
    user.setOptions({
      token: 'токен'
    });
    
    vk.setOptions({
        token: 'токен',
        apiMode: 'parallel',
        pollingUserId: 472111592  //сюда айди твоей стр
    });
    
    setInterval(() => { vk.api.messages.send({ peer_id: /* айди беседы */, message: 'текст сообщения' }); }. 1200000);
    
    vk.updates.startPolling();
    // ТАМ КОМАНДЫ
    /* || || || || || */
    /* \/ \/ \/ \/ \/ */
    
    
    vk.updates.hear(/^(?:help)$/i, async (message, bot) => {
     	return message.send(`Я тестовой бот`);
    });
    
      console.log('я все проверил Бот запушен');
    Ответ написан
    Комментировать
  • Получение ID человека?

    @defriz
    люблю js
    message.replyMessage.senderId;
    Ответ написан
    Комментировать
  • Как отфильтровать документы, с самыми большими значениями?

    @defriz
    люблю js
    var players = [
        {
            id: 1,
            points: 14
        },
        {
            id: 2,
            points: 8
        },
        {
            id: 3,
            points: 36
        }
    ]; // json для примера. если монго, то нужно просто получить массив со всеми игроками
    players.sort(function (a, b) {
    if(b.points > a.points) return 1;
    	if(b.points < a.points) return -1;
    	return 0;
    }); // сортировка
    var top = [];
    for (var i = 0; i < 20; i++) {
        if(players[i]) top.push(players[i]);
    };
    Ответ написан
  • Почеиу возвращает ReferenceError: body is not defined?

    @defriz
    люблю js
    попробуйте другую библиотеку, например, axios
    const axios = require("axios");
    const token = "СЕКРЕТ";
    module.exports = (id) => {
      axios.post("https://api.vk.com/method/users.get", {
      params: {
          'token': token,
          'user_ids': id,
          'v': '5.131'
      }
    }).then((res) => { console.log(res) /* или console.log(res.data), чтобы вывести ответ от ВК */  }).catch((err) => { console.log(err) });
    };
    Ответ написан
    Комментировать
  • Как отправить кнопку с помощью модуля vk-io-question?

    @defriz
    люблю js
    так и отправляете, например, название твоего объекта "message" и объект твоей клавиатуры "keyboard"
    let answer = await message.question({ message: `текст сообщения`, keyboard: keyboard, random_id: Date.now() * 1000  })
    Ответ написан
    Комментировать
  • Бот не видит 2 аргумент?

    @defriz
    люблю js
    cmd.hear(/^(?:создать ставку)\s([0-9]+)\s([0-9]+)$/i, async (msg, bot) => {
        const user = await getUserData(msg.senderId)
        let args1 = msg.$match[1]
        let args2 = msg.$match[2]
    
        if (args1 && args2 <= 0) return msg.send(`Введено некорректное значение!`)
        if (args2 > user.money) return msg.send(`На балансе недостаточно средств!`)
        if (rooms.rooms[args1].igra === true) return msg.send(`В данный момент стол занят!`)
     // if (rooms.rooms[i] > 10) return msg.send(`Такого стола нет!`)
     // if (rooms.rooms[i] < 1) return msg.send(`Такого стола нет!`)
     // if (rooms.rooms[i].play == true) return msg.send(`Стол занят!`)
        rooms.rooms[args1].stavka += args2
        rooms.rooms[args1].user1 += msg.senderId
    
        return msg.send(`Вы создали стол ${args1} со ставкой ${args2}`)
    });
    Ответ написан
  • Как вывести attachments: []?

    @defriz
    люблю js
    посмотрите как у Вас выглядит команда, то есть, например, cmd.on(/^test/i, message => {}), вот как раз смотрите, что у Вас написано, вместо message и потом уже чтобы получить любую информацию из сообщения мы делаем: message.attachments или, например, message.text это текст сообщения
    const attachment = message.attachments
    const example = attachment.filter(x => x.text == message.text)[0] //без фильтра почему то не мог получить параметры..

    и позже мы можем брать любое свойство example, например, console.log(example.ownerId) // выведет айди создателя этого вложения в консоль
    Ответ написан
    Комментировать
  • Как сделать реакцию на вступление в беседу по ссылке?

    @defriz
    люблю js
    беда с пробелами
    убери отступы в квадратных скобках кроме того который после запятой
    в конце убери отступы до скобок
    пробелы после async оставь
    должно получится что то вроде:

    vk.updates.on([ 'chat_invite_user', пробел'chat_invite_user_by_link' ], async (context) => {
    'таб'context.send('Привет')
    'таб'console.log(context)
    })
    Ответ написан