From c5665da8a2f4edb71cdb837285edf8d3317076e1 Mon Sep 17 00:00:00 2001 From: Roboron3042 Date: Mon, 13 Nov 2023 18:05:28 +0100 Subject: [PATCH] =?UTF-8?q?ADD:=20Modo=20cumplea=C3=B1os=20apreciabot?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apreciabot.py | 17 ++++++++++++----- bienvenibot.py | 2 +- federabot.py | 3 ++- moderabot.py | 1 + 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/apreciabot.py b/apreciabot.py index fb808d5..ba0d5a1 100644 --- a/apreciabot.py +++ b/apreciabot.py @@ -9,6 +9,7 @@ from common import list_write # Messages mensaje = "Alguien que te aprecia mucho quiere recordarte que eres una persona maravillosa :ablobcatheartsqueeze: ¡Sigue así, " mensaje_croqueta = "Alguien que te aprecia mucho quiere enviarte croquetas :croqueta: :croqueta: :croqueta:" +mensaje_cumple = ["Alguien me ha revelado que hoy es tu día, ", ". ¡Feliz cumpleaños de su parte! :blobcatbirthday:"] mensaje_mismo = "La persona más importante que debes apreciar eres tú. ¡Eres increíble! ❤" mensaje_nobot = "La cuenta objetivo tiene la etiqueta #nobot en su biografía. ¡No tengo poder aquí!" mensaje_aviso = "Has intentado apreciar a alguien pero no has usado un mensaje directo/privado. ¡Tienes que mencionarme en un mensaje directo/privado para que funcione!" @@ -23,6 +24,14 @@ max_notifications=10 new_last_ids=[] notifications = api.notifications(types=["mention"],limit=max_notifications) no_unicode_spaces_pattern = r"[\u200B-\u200D\u202A\u202C\uFEFF]" +mode_croqueta_words=["croqueta", "croquetas"] +mode_cumple_words=["cumple", "cumpleaños", "felicidades"] + +def check_mode(mode_words, content): + for word in mode_words: + if ( (word in content) or ( ('"' + word +'"') in content) ): + return True + return False for n in notifications: new_last_ids.append(n['id']) @@ -58,12 +67,10 @@ for i in range(0, max_notifications - 5): api.status_reply(n['status'], mensaje_nobot) else: #api.status_post(mensaje + target + "!", in_reply_to_id=n['status']['id'], visibility="unlisted") - if ("croqueta" in content - or "croquetas" in content - or '"croqueta"' in content - or '"croquetas"' in content - ): + if check_mode(mode_croqueta_words, content): new_status = api.status_post(target + " " + mensaje_croqueta, visibility="unlisted") + elif check_mode(mode_cumple_words, content): + new_status = api.status_post(mensaje_cumple[0] + target + mensaje_cumple[1], visibility="unlisted") else: new_status = api.status_post(mensaje + target + "!", visibility="unlisted") api.status_reply(n['status'], 'Tu muestra de aprecio ha sido enviada ❤️ ' + new_status['url'], visibility="direct") diff --git a/bienvenibot.py b/bienvenibot.py index 487a933..2439ae6 100644 --- a/bienvenibot.py +++ b/bienvenibot.py @@ -4,7 +4,7 @@ from common import list_append from common import list_write # Messages -message = "¡Hola! Soy Roberto, el administrador de este servidor de Mastodon :mastodon: (https://masto.es)\n\nTe recomiendo que empieces escribiendo una publicación con la etiqueta #presentación para darte a conocer (https://masto.es/@rober/109412552189056438).\n\n¡Espero que tengas un buen comienzo! Si necesitas ayuda, ¡cuenta conmigo!" +message = "¡Hola, te doy la bienvenida a Mastodon :mastodon: en https://masto.es!\n\nTe recomiendo que empieces escribiendo una publicación con la etiqueta #presentación y tus intereses para darte a conocer.\n\n¡Espero que tengas un buen comienzo! Si necesitas ayuda, ¡cuenta conmigo!" # Initialization diff --git a/federabot.py b/federabot.py index 9f81c67..c74bab7 100644 --- a/federabot.py +++ b/federabot.py @@ -5,7 +5,7 @@ from common import list_write from datetime import datetime, timedelta def get_message(user_domain): - return "¡Hola! Veo que es tu primera vez en Mastodon, ¡te doy la bienvenida!\n\nTe recomiendo que empieces escribiendo una publicación con la etiqueta #presentación para darte a conocer (https://masto.es/@rober/109412552189056438).\n\n¡Espero que tengas un buen comienzo! Si necesitas ayuda, ¡cuenta conmigo!" + return "¡Hola! Veo que es tu primera vez en Mastodon, ¡te doy la bienvenida!\n\nTe recomiendo que empieces escribiendo una publicación con la etiqueta #presentación y tus intereses para darte a conocer.\n\n¡Espero que tengas un buen comienzo! Si necesitas ayuda, ¡cuenta conmigo!" excluded_domains = [ 'masto.es', @@ -28,6 +28,7 @@ excluded_domains = [ 'mastorock.com', 'meetiko.org', 'mastodon.cr', + 'fedi.lat', # Relay nobigtech.es 'sindicato.social', 'mastodon.uy', diff --git a/moderabot.py b/moderabot.py index b8b8fbd..a8d4146 100644 --- a/moderabot.py +++ b/moderabot.py @@ -13,6 +13,7 @@ for n in notifications: if word in n['account']['note']: api.admin_account_moderate(n['account']['id'], action='suspend', send_email_notification=False) list_append(bot_name + "_banned", n['account']['acct']) + print("banned: " + n['account']['acct']) # Known spam accounts with similar names names = list_read('moderabot_forbidden_names')