Skip to content

Commit

Permalink
Made DevPro Bot remove Discord users with no valid subscriptions
Browse files Browse the repository at this point in the history
close #4791
  • Loading branch information
renzo authored and renzon committed Mar 26, 2024
1 parent 774a0d4 commit 6d1f464
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 17 deletions.
21 changes: 5 additions & 16 deletions pythonpro/discord/tasks.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import logging

from celery import shared_task
from django.conf import settings

from pythonpro.discord.bot import discord_bot_client
from pythonpro.discord.models import DiscordLead
Expand Down Expand Up @@ -32,32 +33,20 @@ def clean_discord_user(discord_user_id):
if not has_discord_access:
dm_channel = discord_bot_client.get_dm_channel(discord_user_id)
discord_bot_client.create_message(dm_channel['id'], msg)
discord_bot_client.remove_guild_member(settings.DISCORD_GUILD_ID, discord_user_id)

logging.info(f'Clean discord user: {discord_user_id} with status: {lead_status.label}')


msg = """Olá, sou o bot da DevPro no Discord.
Eu não identifiquei sua conta de Discord em nosso sistema. Então peço a gentileza de você conectar suas conta:
Eu não identifiquei sua conta de Discord em nosso sistema. Por isso eu removi seu acesso.
https://l.dev.pro.br/comunidade
Para fazer essa conexão você precisa ter uma assinatura com acesso ao discord Ativa.
Você pode conferir seu histórico de assinaturas aqui:
Você pode conferir todo seus histórico de assinaturas acessando
https://painel.dev.pro.br
Você pode renovar sua assinatura utilizando o link:
https://painel.dev.pro.br/checkout/pagarme/renovacao-comunidade-devpro
Na próxima semana, usuários sem assinatura ativa serão removidos do servidor do Discord.
Qualquer dúvida, mande mensagem no canal #suporte do servidor do Discord da DevPro:
https://discord.com/channels/971162582624903288/979392834308280380
Eu vou mandar essa mensagem novamente até o dia 26/03/2024. Depois dessa data, sua conta poderá ser removida.
Se tiver qualquer dúvida, entre em contato pelo email [email protected]
Um abraço do Bot da DevPro
"""
6 changes: 5 additions & 1 deletion pythonpro/discord/tests/test_clean_discord_user.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ def test_active_user(db):


@pytest.fixture
def mock_discord_bot_msg_requests(responses):
def mock_discord_bot_msg_requests(responses, settings):
channel_id = '122334232132323'
responses.add(
responses.POST, 'https://discord.com/api/v10/users/@me/channels', json={'id': channel_id}, status=200,
Expand All @@ -39,6 +39,10 @@ def mock_discord_bot_msg_requests(responses):
responses.POST, f'https://discord.com/api/v10/channels/{channel_id}/messages', json={'id': 'message_id'},
status=200
)
responses.add(
responses.DELETE, f'https://discord.com/api/v10/guilds/{settings.DISCORD_GUILD_ID}/members/{discord_user_id}',
status=204
)


def test_no_discord_user(db, mock_discord_bot_msg_requests):
Expand Down

0 comments on commit 6d1f464

Please sign in to comment.