diff --git a/backend/apps/slack/constants.py b/backend/apps/slack/constants.py index c24a73b12..3f6dcd1d6 100644 --- a/backend/apps/slack/constants.py +++ b/backend/apps/slack/constants.py @@ -28,5 +28,5 @@ FEEDBACK_CHANNEL_MESSAGE = ( f"💬 You can share feedback on your {NEST_BOT_NAME} experience " - f"in the <#{OWASP_PROJECT_NEST_CHANNEL_ID}|project-nest> channel.{NL}" + f"in the <{OWASP_PROJECT_NEST_CHANNEL_ID}|project-nest> channel.{NL}" ) diff --git a/backend/apps/slack/events/member_joined_channel/catch_all.py b/backend/apps/slack/events/member_joined_channel/catch_all.py index f76a9781c..56bf04635 100644 --- a/backend/apps/slack/events/member_joined_channel/catch_all.py +++ b/backend/apps/slack/events/member_joined_channel/catch_all.py @@ -1,6 +1,7 @@ """Slack member joined any other channel handler.""" from apps.slack.apps import SlackConfig +from apps.slack.constants import OWASP_CONTRIBUTE_CHANNEL_ID, OWASP_GSOC_CHANNEL_ID def catch_all_handler(event, client, ack): # noqa: ARG001 @@ -9,4 +10,13 @@ def catch_all_handler(event, client, ack): # noqa: ARG001 if SlackConfig.app: - SlackConfig.app.event("member_joined_channel")(catch_all_handler) + SlackConfig.app.event( + "member_joined_channel", + matchers=[ + lambda event: f"#{event['channel']}" + not in { + OWASP_CONTRIBUTE_CHANNEL_ID, + OWASP_GSOC_CHANNEL_ID, + } + ], + )(catch_all_handler) diff --git a/backend/apps/slack/events/member_joined_channel/contribute.py b/backend/apps/slack/events/member_joined_channel/contribute.py index 14f559299..7f92626f1 100644 --- a/backend/apps/slack/events/member_joined_channel/contribute.py +++ b/backend/apps/slack/events/member_joined_channel/contribute.py @@ -74,11 +74,7 @@ def contribute_handler(event, client, ack): if SlackConfig.app: - - def check_contribute_handler(event): - """Check if the event is a member_joined_channel in #contribute.""" - return f"#{event['channel']}" == OWASP_CONTRIBUTE_CHANNEL_ID - - SlackConfig.app.event("member_joined_channel", matchers=[check_contribute_handler])( - contribute_handler - ) + SlackConfig.app.event( + "member_joined_channel", + matchers=[lambda event: f"#{event['channel']}" == OWASP_CONTRIBUTE_CHANNEL_ID], + )(contribute_handler) diff --git a/backend/apps/slack/events/member_joined_channel/gsoc.py b/backend/apps/slack/events/member_joined_channel/gsoc.py index 94f935c7b..6b83e0a13 100644 --- a/backend/apps/slack/events/member_joined_channel/gsoc.py +++ b/backend/apps/slack/events/member_joined_channel/gsoc.py @@ -51,9 +51,7 @@ def gsoc_handler(event, client, ack): if SlackConfig.app: - - def check_gsoc_handler(event): - """Check if the event is a member_joined_channel in #gsoc.""" - return f"#{event['channel']}" == OWASP_GSOC_CHANNEL_ID - - SlackConfig.app.event("member_joined_channel", matchers=[check_gsoc_handler])(gsoc_handler) + SlackConfig.app.event( + "member_joined_channel", + matchers=[lambda event: f"#{event['channel']}" == OWASP_GSOC_CHANNEL_ID], + )(gsoc_handler)