From 6b91648666ade06423f7af7fddf446d58d89ae87 Mon Sep 17 00:00:00 2001 From: eleksir Date: Thu, 17 Aug 2023 10:08:04 -0700 Subject: [PATCH] Implement random phrase before ban action --- buny.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/buny.go b/buny.go index 8afac37..0195d9b 100644 --- a/buny.go +++ b/buny.go @@ -71,6 +71,24 @@ func buny(v xmpp.Presence) error { //nolint:gocognit if re.MatchString(evilJid) { log.Infof("Hammer falls on %s", v.JID) + + if config.Jabber.BanPhrasesEnable { + phrase := randomPhrase(config.Jabber.BanPhrases) + + if _, err := talk.Send( + xmpp.Chat{ //nolint:exhaustruct + Remote: room, + Text: phrase, + Type: v.Type, + }, + ); err != nil { + gTomb.Killf("unable to send phrase to room %s: %w", room, err) + + // Здесь возвращаем nil, т.к. за нас ошибку залоггирует код выше + return nil + } + } + // https://xmpp.org/extensions/xep-0045.html#ban баним вот таким сообщением ban := "" ban += "" @@ -115,6 +133,24 @@ func buny(v xmpp.Presence) error { //nolint:gocognit if re.MatchString(evilJid) { log.Infof("Hammer falls on %s", v.JID) + + if config.Jabber.BanPhrasesEnable { + phrase := randomPhrase(config.Jabber.BanPhrases) + + if _, err := talk.Send( + xmpp.Chat{ //nolint:exhaustruct + Remote: room, + Text: phrase, + Type: v.Type, + }, + ); err != nil { + gTomb.Killf("unable to send phrase to room %s: %w", room, err) + + // Здесь возвращаем nil, т.к. за нас ошибку залоггирует код выше + return nil + } + } + // https://xmpp.org/extensions/xep-0045.html#ban баним вот таким сообщением ban := "" ban += ""