negezor / vk-io

Modern VK API SDK for Node.js
https://npm.im/vk-io
MIT License
548 stars 85 forks source link

setHearFallbackHandler #206

Closed artemykust closed 5 years ago

artemykust commented 5 years ago

Можно наглядный пример использования setHearFallbackHandler? У меня он реагирует на все сообщения :(

negezor commented 5 years ago

Обработчик в setHearFallbackHandler вызывается в конце цепочки hear если не один обработчик в .hear() не был перехвачен. Это фактический всё что нужно о нём знать.

artemykust commented 5 years ago

Получается, он будет реагировать НА КАЖДОЕ сообщение? Тогда получается, переписка в чате не возможна, потому что она превращается в это: image

negezor commented 5 years ago

Но вы ведь владеете основами JS? Вся кастомная логика на вас. Можно например в чате отключить отправку:

vk.updates.setHearFallbackHandler(async (context, next) => {
    if (context.isChat) {
        return;
    }       

    await context.send('Такой команды нет :(');
});
negezor commented 5 years ago

Я закрою этот вопрос из-за не активности, не стесняйтесь открыть его снова.

ghost commented 4 years ago

На самом деле, достаточно в настройках longpoll отключить пункт "Исходящие сообщения". Что решит проблему со "спамом" в лс.