commit a89cd6cc66a204d77e3114d5ce5dd7e5fc157a62
parent 03d5dc2190596a1a05bc89617bf53a4b1b07b405
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Tue, 10 May 2022 17:10:42 -0700
auto kick spammers
Diffstat:
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/src/main.rs b/src/main.rs
@@ -75,6 +75,8 @@ const CAPTCHA_WG_ERR: &str = "Wrong Captcha";
const CAPTCHA_USED_ERR: &str = "Captcha already used or timed out";
const UNKNOWN_ERR: &str = "Unknown error";
const N0TR1V: &str = "n0tr1v";
+const STUXNET: &str = "STUXNET";
+const FAGGOT: &str = "faggot";
const DNMX_URL: &str = "http://hxuzjtocnzvv5g2rtg2bhwkcbupmk7rclb6lly3fo4tvqkk5oyrv3nid.onion";
type Result<T> = std::result::Result<T, Box<dyn error::Error>>;
@@ -583,13 +585,23 @@ impl<'a> LeChatPHPClient<'a> {
.to_owned();
tx.send(PostType::Post(msg, None)).unwrap();
} else if msg == "/logout"
- && from == "STUXNET"
+ && from == STUXNET
&& username == N0TR1V
{
eprintln!("forced logout by {}", from);
sig.lock().unwrap().signal(ExitSignal::Terminate);
return;
}
+ // Auto kick spammers
+ if username == N0TR1V {
+ if from != N0TR1V && from != FAGGOT {
+ if msg.contains(FAGGOT) && (msg.contains("pedo") || msg.contains("child")) {
+ let msg = "spam".to_owned();
+ let username_to_kick = from.to_owned();
+ tx.send(PostType::Kick(msg, username_to_kick)).unwrap();
+ }
+ }
+ }
// Notify when tagged
if msg.contains(format!("@{}", &username).as_str()) {
should_notify = true;