mirror of
https://github.com/flibusta-apps/book_bot.git
synced 2025-12-06 07:25:36 +01:00
Add channel messages ignoring
This commit is contained in:
@@ -11,11 +11,12 @@ use self::modules::{
|
||||
update_history::get_update_log_handler,
|
||||
};
|
||||
|
||||
use super::{BotCommands, BotHandler};
|
||||
use super::{BotCommands, BotHandler, ignore_channel_messages};
|
||||
|
||||
pub fn get_approved_handler() -> (BotHandler, BotCommands) {
|
||||
(
|
||||
dptree::entry()
|
||||
.branch(ignore_channel_messages())
|
||||
.branch(get_help_handler())
|
||||
.branch(get_settings_handler())
|
||||
.branch(get_support_handler())
|
||||
|
||||
@@ -15,6 +15,16 @@ type BotHandler = Handler<
|
||||
|
||||
type BotCommands = Option<Vec<teloxide::types::BotCommand>>;
|
||||
|
||||
fn ignore_channel_messages() -> crate::bots::BotHandler
|
||||
{
|
||||
Update::filter_message()
|
||||
.chain(dptree::filter(move |message: Message| {
|
||||
message.chat.is_channel()
|
||||
})).endpoint(|_message: Message, _bot: AutoSend<Bot>| async {
|
||||
Ok(())
|
||||
})
|
||||
}
|
||||
|
||||
fn get_pending_handler() -> BotHandler {
|
||||
let handler = |msg: Message, bot: AutoSend<Bot>| async move {
|
||||
let message_text = "
|
||||
@@ -26,7 +36,11 @@ fn get_pending_handler() -> BotHandler {
|
||||
Ok(())
|
||||
};
|
||||
|
||||
Update::filter_message().chain(dptree::endpoint(handler))
|
||||
dptree::entry()
|
||||
.branch(ignore_channel_messages())
|
||||
.branch(
|
||||
Update::filter_message().chain(dptree::endpoint(handler))
|
||||
)
|
||||
}
|
||||
|
||||
fn get_blocked_handler() -> BotHandler {
|
||||
@@ -37,7 +51,11 @@ fn get_blocked_handler() -> BotHandler {
|
||||
Ok(())
|
||||
};
|
||||
|
||||
Update::filter_message().chain(dptree::endpoint(handler))
|
||||
dptree::entry()
|
||||
.branch(ignore_channel_messages())
|
||||
.branch(
|
||||
Update::filter_message().chain(dptree::endpoint(handler))
|
||||
)
|
||||
}
|
||||
|
||||
pub fn get_bot_handler(status: crate::bots_manager::BotStatus) -> (BotHandler, BotCommands) {
|
||||
|
||||
Reference in New Issue
Block a user