Slack Bot отвечает на все каналы

Я использую slack bot для отправки сообщений из моего приложения в slack. Мои сценарии использования: ---> пользователь вводит команду IN определенному боту, а затем бот возвращается со сгенерированным системой сообщением в канале

Сейчас все идет хорошо ... Я хочу, чтобы бот отвечал только если пользователь отправляет прямые сообщения этому боту. но в моем случае этого не происходит. независимо от того, на каком канале пользователь вводит команду, бот отвечает, но это то, чего я не хочу. я хочу, чтобы система отвечала только если пользователь отправляет команду на канал моего бота

class SlackEvents(APIView):
def post(self, request, *args, **kwargs):
    slack_message = request.data

    # denied if request is sent from some other url
    if slack_message.get('token') != SLACK_VERIFICATION_TOKEN:
        return Response(status=FORBIDDEN)

    # verification challenge
    if slack_message.get('type') == 'url_verification':
        return Response(data=slack_message,status=OK)

    # greet bot
    if 'event' in slack_message:
        event = slack_message.get('event')
        
        # ignore bot's own message
        if event.get('subtype') == 'bot_message':
            return Response(status=OK)
        
        
        # process user's message
        if event['type'] == 'message':
            # a = Client.conversations_open()
            user = event['user']
            channel = event['channel']
            other_channel = 'C03SKDLHUPP'
            msg = event['text']
            if msg == 'in':
                in_command(channel,other_channel,user)

            if msg == 'out':
                out_command(channel,other_channel,user)

            if msg == 'brb':
                brb_command(channel,other_channel,user)

            if msg == 'lunch':
                lunch_command(channel,other_channel,user)
               
            if msg == 'rfb':
                rfb_command(channel,other_channel,user)

            if msg == 'rfl':
                rfl_command(channel,other_channel,user)
    return Response(status=OK)
Вернуться на верх