Некорректная команда взаимодействия с приложением discord

Обновлено: 06.07.2024

Your ultimate Discord interactions library for discord.py.

What is discord-py-interactions?

discord-py-interactions is, in the simplest terms, a library extension that builds off of the currently existing discord.py API wrapper. While we do use our own basic class code for our own library, a large majority of this library uses discord.py base events in order to make contextualization of interactions relatively easy for us.

When did this begin?

In mid-December of 2020, Discord released the very first type of components, slash commands. These were relatively primitive at the time of their debut, however, over time they slowly came to grew more complex and mutable. This library was created 2 days after the release of slash commands to Discord, and ever since has been actively growing.

What do we currently support?

At this time, we are able to provide you an non-exhaustive list (because Discord are actively creating more interactions at this time) of all components integrated as interactions:

  • Slash Commands
  • Buttons
  • Selects (also known as dropdowns or menus)

We recommend using pip in order to install our library. You are able to do this by typing the following line below:

pip install -U discord-py-interactions

This example shows a very quick and simplistic solution to implementing a slash command.

This example serves as an alternative method for using slash commands in a cog instead.

This basic example shows how to easily integrate buttons into your commands. Buttons are not limited to slash commands and may be used in regular discord.py commands as well.

For more advanced use, please refer to our official documentation on buttons here.

This basic example shows how to add selects into our bot. Selects offer the same accessibility as buttons do in premise of limitations.

For more advanced use, please refer to our official documentation on selects here.

This basic example shows how to add a message context menu.

For more advanced use, please refer to our official documentation on context menus here.

Is your feature request related to a problem? Please describe.
Slash commands will be added to the API at December 15th.

Describe the ideal solution
Should support slash command to support new api updates

Describe alternatives you've considered
I think it should support Slash command gateway events and way to add slash commands for global or each guilds in discord.js

The text was updated successfully, but these errors were encountered:

ChosenQuill commented Dec 16, 2020

As a person who just finished writing some things using Discord's API I can add a few comments on this (that are hard to find normally):

You can pass other options and things in the data (check the docs for this). Keep in mind that it's not possible to add spaces in the command name, so you want to use subcommands (or subcommand groups) for this. If you want to update a command, you can either post (as above) or use a patch request, such as:

To receive, you can create an interaction event:

To send a response to an interaction, you can use the following:

These things can (and should) be implemented in the official library (unless I'm using something which I shouldn't use).

almostSouji commented Dec 23, 2020

KevSlashNull commented Dec 24, 2020

TehcJS commented Dec 24, 2020

Nice! Looking forward to using this in production once it's in stable .

gaycookie commented Jan 11, 2021

You can pass other options and things in the data (check the docs for this). Keep in mind that it's not possible to add spaces in the command name, so you want to use subcommands (or subcommand groups) for this. If you want to update a command, you can either post (as above) or use a patch request, such as:

To send a response to an interaction, you can use the following:

Sadly using Typescript this is an issue!
Argument of type '"INTERACTION_CREATE"' is not assignable to parameter of type 'WSEventType'

Привычные пользователям Дискорда голосовые каналы имеют более сложную реализацию, чем кажется. Пока вы подключаетесь к конференции, чтобы пообщаться с друзьями, ваша программа-клиент начинает передавать множество интернет-пакетов, для которых важна высокая скорость. Это достигается благодаря веб-протоколу RTC, который иногда работает некорректно. Расскажем, почему при подключении к голосовому каналу возникает бесконечная загрузка RTC в Discord.

В чем может быть причина

screenshot_1

Мы не будем перечислять каждую из них, а выделим несколько основных групп:

  1. Ограничен доступ к нужному серверу на стороне клиента. Например, нужные порты для подключения используют другие программы. Также этому может способствовать брандмауэр (Firewall) или антивирус.
  2. Недостаточная скорость интернет-соединения. С медленным интернетом будьте готовы либо не слышать собеседников в чате, либо вовсе вылетать с постоянным повтором подключения RTC.
  3. Ограничен доступ на стороне сервера. Возможно, ваш компьютер, а точнее его IP-адрес, попал в черный список серверов. В таком случае ни о каком подключении и речи быть не может. Довольно редко блокируются хорошие адреса. А вот при использовании VPN и Proxy такой исход вполне возможен.
  4. Не работает один из серверов. Существует несколько физических серверов, которые будут обрабатывать ваш запрос. Если один из них «упал», то Дискорд будет искать альтернативу либо просто зависнет, если сервер играет ключевую роль. Это, к слову, происходит, когда на компьютере не установлен маршрут до серверов Дискорда.

Конечно, в последнем случае пользователь не сможет почти ничего сделать (хотя кое-что может). Кстати, если проблема возникла на телефоне, то вдобавок к вышеперечисленным проблемам можно отнести и ограничения сети. Например, в режиме «жесткой» экономии траффика некоторые приложения могут работать только через Wi-Fi. В остальных случаях проблема вполне поправимая, и мы расскажем, что необходимо сделать.

screenshot_1

Методы решения проблемы с бесконечным подключением к RTC в Discord

Итак, раз вы здесь, то проблема не решилась сама по себе, что довольно часто происходит с программой-клиентом Discord. Некоторые нижеприведенные инструкции требуют права администратора, а потому не подойдут, если пользователь работает под обычной учетной записью.

Управление брандмауэром и антивирусом

В большинстве случаев доступ к удаленным серверам ограничивают либо встроенный в Windows брандмауэр, либо веб-интерфейс, устанавливаемый вместе с антивирусной программой. Чтобы отключить встроенный антивирус, достаточно выполнить следующие действия:

  • Откройте панель управления. В Windows 10 (и тем более 11) для этого необходимо нажать сочетание «Win» + «R» и в открывшемся окне ввести «Control panel».

screenshot_2

  • Переключитесь в режим крупных или мелких значков.

screenshot_3

screenshot_4

  • Перейдите в раздел «Включение и отключение защитника».
  • Поставьте галочки напротив всех пунктов «Отключить» в открывшемся окне.

screenshot_5

Чтобы отключить веб-защиту антивируса, необходимо выполнить следующие действия (на примере Avast):

  • Нажмите «Открыть интерфейс пользователя».
  • Перейдите в настройки. Для этого кликните по значку «Меню» и выберите пункт «Настройки».

screenshot_7

  • Перейдите в раздел «Защита – основные компоненты защиты».
  • Откройте вкладку «Веб-защита».
  • Поставьте галочку напротив пункта «Отключить компонент».

screenshot_8

Готово. Для остальных антивирусов будет немного другой алгоритм, но в целом порядок действия тот же.

Отключение VPN

Как мы говорили выше, если пользователь сидит под IP-адресом с очень плохой репутацией, то его, скорее всего, заблокируют. Особенно это касается VPN-серверов, где под одним адресом сидят десятки, а то и сотни пользователей. Разумеется, это довольно подозрительно, а потому автоматические алгоритмы блокируют доступ.

Чтобы избежать этого, необходимо отключить VPN. На телефоне для этого достаточно прервать процесс VPN-приложения. Примечательно, что в некоторых моделях при включенном режиме в панели уведомлений появится значок «ВПН». На компьютере функция отключается следующим образом:

  • Откройте меню поиска (находится в панели задач, представляется в виде лупы).
  • Введите строку «Параметры VPN».

screenshot_9

screenshot_10

Однако, если вы используете специальную программу для создания виртуальной частной сети, то дополнительно необходимо будет отключить ее. К слову, эти действия не только могут починить Дискорд, но и позволяют избавиться от долгого интернет-соединения.

Запрос прав администратора

Не исключаем возможность того, что у вас настроен строгий контроль учетных записей (UAC). В таком случае необходимо запускать приложение от имени администратора, чтобы оно могло полноценно использовать ресурсы компьютера. Конечно, самый простой способ – это нажать ПКМ по значку Дискорда и выбрать «Запуск от имени администратора». Однако мы предлагаем другой способ, чтобы убрать эту рутину:

  • Кликните ПКМ по ярлыку Дискорда и нажмите «Свойства».
  • Перейдите в раздел «Дополнительно».
  • Поставьте галочку напротив пункта «Запуск от имени администратора»

screenshot_11

Готово. Теперь программа всегда будет запускаться от имени администратора.

Смена региона сервера

Возможно, сервер, к которому вы подключаетесь, временно не работает. В таком случае рекомендуем сменить комнату для общения, а после вернуться в нужную комнату. Для подключения к голосовому каналу необходимо просто нажать на него. Для выхода нажмите кнопку трубки с крестиком. После подключитесь к другому голосовому каналу для сброса сервера. И под конец снова подключитесь к нужному серверу.

screenshot_12

Для того чтобы узнать, какой хост используется в данный момент, достаточно кликнуть по значку с уровнем сигнала или ссылке «Connecting», которая появляется при подключении к каналу. В худшем случае придется обратно включить VPN и проверить подключения. Вдруг в вашей стране заблокирован ресурс.

Отключение функции обслуживания пакетов с высоким приоритетом

Для отключения этой функции, которая может препятствовать корректной работе и обеспечивает вечную загрузку, необходимо выполнить следующие действия:

Почему пользователь не может присоединиться к серверу в мессенджере Discord – довольно распространенный вопрос среди фанатов популярного агента. Примечательно, что у мессенджера репутация одного из самых надежных, работающих без глюков. Это и стало главной причиной популярности Дискорда у геймеров, обычных юзеров. Но, оказывается, и в данном приложении случаются сбои. Как с ними бороться, разберем подробно.

Почему Discord не может подключиться к серверу или голосовому каналу

Мессенджер не заходит на канал – в чем проблема? Особенно актуальным этот вопрос становится, когда еще вчера Дискорд работал как часики. И ничто не предвещало катастрофы. Обычно предвестником сложной ситуации является подвисание логотипа мессенджера на рабочем столе либо появление транспаранта с ошибкой.

screenshots+1

Причин несколько. Для начала можно попробовать просто перезагрузить мессенджер Дискорд. При повторном запуске ошибка так же внезапно исчезает, как до этого возникла. Поэтому рекомендуется начинать именно с перезапуска. Если ничего не изменилось, переходим к другим решениям.

Решение проблемы

Универсального, удовлетворяющего всем условиям варианта выхода из ситуации не существует. Каждый случай с мессенджером уникален. Поэтому придется последовательно перебрать предложенные решения, пока какое-то не сработает. Итак, что обычно бывает:

  • баги при подключении к сети;
  • проблемы с прокси;
  • неверный регион;
  • конфликт с другим ПО.

Далее детально рассмотрим каждую ситуацию. И к ней будет предложено «лечение».

screenshots+2

Подключение к сети

Обязательно следует проверить данный параметр. При слабом соединении мессенджер не будет стабильно работать. Это аксиома. Поэтому, если возникло подозрение на сбой с сетью, открываем в обозревателе на выбор несколько сайтов. При этом наблюдаем, насколько быстро идет загрузка страницы. Либо проверяем на запуске тестового видео, случайного ролика на хостинге Ютуб.

Далее действуем по обстановке. Если связь идет через Wi-Fi, то следует убедиться, что сигнал с роутера попадает на ПК. При необходимости выполняется перезагрузка маршрутизатора. На пути сигнала не должно быть препятствий, особенно каменных, железобетонных стен. Если возможно, компьютер следует переместить ближе к точке доступа.

screenshots+3

Проблемы с прокси

Иногда как «источник безобразий» выступает прокси-сервер. Причем Windows будет продолжать пытаться установить соединение, никак не информируя пользователя. Придется ему помочь. Алгоритм следующий:

  • Используя комбинацию «Win» + «I», открыть раздел с параметрами ОС.

screenshots+4

  • Нам понадобится вкладка, где упоминаются сеть и интернет.
  • В подразделе, озаглавленном «Прокси-сервер», переводим в режим «Отключено» позиции автоопределения параметров и использования прокси.

screenshots+5

Остается сохранить внесенные изменения. Мессенждер должен заработать как прежде.

Неверный регион

И здесь вполне возможна ошибка. Пользователи редко обращаются к данному разделу. Причем совершенно напрасно. Далее действуем так:

  • В мессенджере войти к разделу настроек.
  • Выбрать строчку с настройками сервера.
  • После перехода к подразделам вкладки обратить внимание, что выставлено в регионе.

screenshots+6

Правильная запись – Россия. Если это не так, исправляем.

Конфликт с другим ПО

Некоторые программы, такие как брандмауэр Windows, антивирусный агент, могут принять мессенджер Дискорд за враждебное ПО. И, соответственно, блокировать работу приложения. Что нужно сделать:

  • Привычно выбираем комбинацию клавиш «Win» + «I».
  • Нужен раздел «Сеть и интернет».
  • Далее находим строчку с состоянием, справа на панели будет раздел брандмауэера.

screenshots+8

  • Там выбираем разрешение для работы приложения.
  • Происходит переход в обширный список одобренных брандмауэром Windows программ. Дискорда там нет. Необходимо включить мессенджер в перечень.

screenshots+9

Ни в коем случае не нужно отключать брандмауэр. Это приведет к риску атаки на ПК, несанкционированных действий злоумышленников.

С антивирусным агентом ситуация специфичная. Единой инструкции нет, поскольку каждый разработчик использует собственные методы, интерфейс, команды. Нужно попасть в раздел «Настройки» и там внести Дискорд в перечень исключений.

Причины проблемы

Верификация через получение дополнительного кода на указанный номер – стандартная процедура для многих программных продуктов.

screenshot_1

Причины неисправностей могут быть следующими:

  • пользователь использует некорректные данные (предоплаченный специальный вариант, стационарные кодировки, VOIP), к регистрации допускается только мобильный телефон;
  • частая причина – неправильный ввод цифр;
  • ранее данный номер уже был использован для верификации другого аккаунта.
Внимание! Процедура используется для борьбы со злоупотреблениями или недопустимыми действиями. Разработчики Дискорда поясняют, что установленные роботы-хомяки проверяют деятельность игроков и, в случае возникновения подозрений, отправляют запрос на получение кода.

screenshot_2

Что делать при «Invalid phone number»

  • перезапустить персональное устройство (ПК, телефон, планшет);
  • проверить подключение к сети (переподключиться, отключить и включить роутер);
  • использовать другой браузер для входа (пользователи отмечают, что Гугл Хром работает удачнее остальных, ошибки возникают реже);
  • попробовать запустить программу на другом устройстве (это поможет выяснить, есть ли проблема с компьютером).

screenshot_3

Дополнительный вариант – написать в службу поддержки программы Дискорда. Сервис бесплатный, операторы работают в круглосуточном режиме. Необходимо детально описать проблему, ответить на несколько вопросов сотрудника. Среднее время ответа – примерно 24 часа. Поэтому, если ждать возможности нет, лучше попробовать завести другой номер телефона.

screenshot_4

Пользователи часто сталкиваются с различными неисправностями при работе с программами. Частой причиной является стандартный сбой, в борьбе с которым поможет привычная перезагрузка ПК, интернет-соединения и приложения Дискорд. В некоторых случаях потребуется помощь сотрудника техподдержки.

Читайте также: