Ошибка API Discord # 40001 Несанкционировано

Я авторизую своего бота через OAuth2 URL (https://discordapp.com/api/oauth2/authorize?client_id=398437519408103444&permissions=59392&scope=bot)

Я хочу отправить сообщение на канал на моем сервере разногласий

Код:

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, 'https://discordapp.com/api/channels/'.$channel_id.'/messages');
curl_setopt($curl, CURLOPT_HTTPHEADER, [
// 'Content-Type: application/json',
'Authorization: Bot '.$this->token
]);
curl_setopt($curl, CURLOPT_POST, true);

curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
'content' => 'test'
]));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec($curl);
curl_close ($curl);
var_dump(json_decode($server_output, true));

Но ответ таков:

array(2) {
["code"]=>
int(40001)
["message"]=>
string(12) "Unauthorized"}

Ссылка API: https://discordapp.com/developers/docs/resources/channel#create-message

1

Решение

POST / каналы / {channel.id} / сообщений

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

Отправьте сообщение в текст гильдии или канал DM. При работе на канале гильдии этой конечной точке требуется разрешение «SEND_MESSAGES» для текущего пользователя.

Имеет ли ваш бот разрешение «SEND_MESSAGES» на этом канале?

нет? хорошо зайдите в настройки канала и дайте ему разрешение.

Ваш бот подключен и идентифицирован со шлюзом хотя бы один?

нет? ну, вы, вероятно, должны пойти и сделать это, лучше всего использовать библиотека уже сделано для этого.

Если эта проблема все еще сохраняется, несмотря на попытки решения выше, возможно, вы как-то искажаете ваш запрос POST.

-1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector