Слабый бот отправляет сообщения два раза, когда вызывается только один - PullRequest
0 голосов
/ 20 апреля 2020

Я сейчас создаю простую веб-страницу с django, которая запускает некоторый код сзади.

Для запуска определенных методов я создал слабого бота. Позвольте мне объяснить процесс

. С какого-то канала пользователь может набрать @Orchestrator help

, и он получит ответ с командами, которые есть у бота. Одна из команд - start_recon, поэтому сообщение выглядит следующим образом:

@Orchestrator start_recon <some_target>

Получено конечной точкой с именем slack_in, которая выглядит следующим образом

@csrf_exempt
@require_POST
def slack_input(request):
    data = request.body
    data = json.loads(data.decode())
    if 'challenge' in data:
        return JsonResponse({'challenge': data})
    response = slack_receiver.receive_bot_message(data)
    return HttpResponse(status=response)

Затем он анализируется с помощью receive_bot_message, и оттуда запускаются различные задачи.

Ожидаемое поведение:

Обе @Orchestrator help и @Orchestrator start_recon <target> отправляют один запрос на slack_in конечная точка

Фактическое поведение

@Orchestrator start_recon <target> отправляет 2 одинаковых запроса, но @Orchestrator help отправляет один.

...