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