added DEMOCRACY ALERT and delay
This commit is contained in:
parent
44de5a191a
commit
82a0eef029
|
@ -32,7 +32,13 @@ pub mod ban{
|
|||
Ok(_) => {
|
||||
bot.send_message(
|
||||
chat_id,
|
||||
format!("Пользователь {} был заблокирован по причине {}",
|
||||
format!("Пользователь {} был заблокирован по причине {}.\
|
||||
\n Совершился 🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅📞📞📞🎺 ⚠️⚠️⚠️DEMOCRATION \
|
||||
ALERT⚠️⚠️⚠️🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅📞📞📞🎺USA🇺🇸🦅🦅📞🇺🇸🦅🦅📞🇺🇸🦅🦅📞\
|
||||
📞📞🎺🇺🇸🦅🦅📞📞📞🎺 ⚠️⚠️⚠️DEMOCRATION ALERT⚠️⚠️⚠️🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅\
|
||||
📞📞📞🎺USA🇺🇸🦅🦅📞🇺🇸🦅🦅📞🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅📞📞📞🎺 ⚠️⚠️⚠️DEMOCRATION ALERT⚠️⚠️\
|
||||
⚠️🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅📞📞📞🎺USA🇺🇸🦅🦅📞🇺🇸🦅🦅📞🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅📞📞📞🎺 \
|
||||
⚠️⚠️⚠️DEMOCRATION ALERT⚠️⚠️⚠️🇺🇸🦅🦅📞📞📞🎺🇺🇸🦅🦅📞📞📞🎺USA🇺🇸🦅🦅📞🇺🇸🦅🦅📞",
|
||||
user.first_name,
|
||||
reason.unwrap()
|
||||
)
|
||||
|
|
41
src/main.rs
41
src/main.rs
|
@ -25,9 +25,8 @@ async fn main() {
|
|||
enum Command {
|
||||
#[command(description = "Команда для отображения инструкции")]
|
||||
Help,
|
||||
#[command(description = "Снимается мьют."
|
||||
)]
|
||||
Unmute,
|
||||
#[command(description = "Снимается мьют.")]
|
||||
DemocracyUnmute,
|
||||
#[command(description = "Банит человека. Для этого необходимо \
|
||||
1. Сделать реплай на сообщение человека, которого вы хотите забанить; \
|
||||
2. Указать причину бана."
|
||||
|
@ -37,7 +36,7 @@ enum Command {
|
|||
1. Сделать реплай на сообщение человека, которого вы хотите замьютить; \
|
||||
2. Указать множитель мьюта."
|
||||
)]
|
||||
Mute(i64),
|
||||
DemocracyMute(i64),
|
||||
}
|
||||
|
||||
async fn callback(bot: Bot, msg: Message, commands: Command) -> ResponseResult<()> {
|
||||
|
@ -56,17 +55,35 @@ async fn callback(bot: Bot, msg: Message, commands: Command) -> ResponseResult<(
|
|||
).await;
|
||||
}
|
||||
},
|
||||
Command::Mute(multiplier) => {
|
||||
if is_admin_check(&msg, &bot).await {
|
||||
let _ = mute_user(
|
||||
msg.reply_to_message(),
|
||||
multiplier,
|
||||
&bot,
|
||||
Command::DemocracyMute(multiplier) => {
|
||||
if let 1i64..=10i64 = multiplier{
|
||||
if is_admin_check(&msg, &bot).await {
|
||||
let _ = mute_user(
|
||||
msg.reply_to_message(),
|
||||
multiplier,
|
||||
&bot,
|
||||
msg.chat.id,
|
||||
).await;
|
||||
}
|
||||
} else if let 10i64..=i64::MAX = multiplier{
|
||||
bot.send_message(
|
||||
msg.chat.id,
|
||||
).await;
|
||||
"Вы ввели слишком большой множитель, пожалуйста, \
|
||||
выберите множитель из промежутка [1; 10]"
|
||||
).await
|
||||
.expect("Вы ввели слишком большой множитель, пожалуйста, \
|
||||
выберите множитель из промежутка [1; 10]");
|
||||
} else {
|
||||
bot.send_message(
|
||||
msg.chat.id,
|
||||
"Вы ввели нулевой или отрицательный множитель, пожалуйста, \
|
||||
выберите множитель из промежутка [1; 10]"
|
||||
).await
|
||||
.expect("Вы ввели нулевой или отрицательный множитель, пожалуйста, \
|
||||
выберите множитель из промежутка [1; 10]");
|
||||
}
|
||||
}
|
||||
Command::Unmute => {
|
||||
Command::DemocracyUnmute => {
|
||||
if is_admin_check(&msg, &bot).await {
|
||||
let _ = unmute(
|
||||
msg.reply_to_message(),
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
pub mod mute {
|
||||
use teloxide::Bot;
|
||||
use chrono::{Duration, Local};
|
||||
use teloxide::requests::Requester;
|
||||
use tokio::time::{sleep, Duration};
|
||||
use chrono::{Duration as ChronoDuration, Local};
|
||||
use teloxide::payloads::RestrictChatMemberSetters;
|
||||
use teloxide::types::{ChatId, ChatPermissions, Message, MessageKind};
|
||||
|
||||
|
@ -31,9 +32,9 @@ pub mod mute {
|
|||
.unwrap()
|
||||
.value as i64;
|
||||
|
||||
let duration = Local::now().naive_utc() + Duration::hours(multiplier * dice_value);
|
||||
let duration = Local::now().naive_utc() + ChronoDuration::hours(multiplier * dice_value);
|
||||
|
||||
println!("{:?}", duration);
|
||||
sleep(Duration::from_secs(4)).await ;
|
||||
|
||||
match bot.restrict_chat_member(
|
||||
chat_id,
|
||||
|
|
Reference in New Issue