Обертка для официального Discord REST, шлюза и голосовых API. Документация доступна здесь, хотя на данный момент ограничена, а также ссылка на класс. Не стесняйтесь задавать вопросы на сервере Discord выше.
В целях тестирования и стабильности мы будем очень признательны, если вы сможете добавить нашего тестового бота на свой сервер. Никаких данных мы не храним - бот просто бездействует и ни с кем не взаимодействует и используется для проверки стабильности с большим количеством гильдий. Вы можете пригласить бота сюда.
Внимание! Эта ветка содержит экспериментальную функцию, не используйте ее в продакшене! Посетите вики-страницу для получения дополнительной информации о том, как ее настроить.
Могу ли я запустить DiscordPHP на веб-сервере (например, Apache, nginx)?
Нет, DiscordPHP будет работать только в CLI. Если вы хотите иметь интерфейс для своего бота, вы можете интегрировать реакцию/http со своим ботом и запустить его через CLI.
PHP не хватает памяти?
Попробуйте ограничить память PHP с помощью ini_set('memory_limit', '-1');
.
Прежде чем вы начнете использовать эту библиотеку, вам необходимо знать, как работает PHP, вам нужно знать, как работают циклы событий и обещания. Это фундаментальное требование перед началом работы. Без этих знаний вы будете только страдать.
PHP 8.0 или выше (рекомендуется последняя версия)
x86 (32-разрядный) PHP требует включения ext-gmp
.
ext-json
ext-zlib
Один из ext-uv
(рекомендуется), ext-ev
или ext-event
для более быстрого и производительного цикла обработки событий.
ext-mbstring
при обработке нелатинских символов.
64-битный PHP
ext-sodium
FFmpeg
К сожалению, PHP в Windows не имеет доступа к хранилищу сертификатов Windows. Это проблема, поскольку TLS используется и, как следствие, применяется проверка сертификата (отключение этой возможности невозможно ).
Вы заметите эту проблему, если ваш скрипт завершится сразу после одного поворота цикла без каких-либо ошибок.
Таким образом, пользователям этой библиотеки необходимо загрузить выдержку центра сертификации с веб-сайта cURL.
Путь к caextract должен быть установлен в php.ini
для openssl.cafile
.
DiscordPHP устанавливается с помощью Composer.
Для запуска composer require team-reflex/discord-php
. Будет установлена последняя стабильная версия.
Если хотите, вы также можете установить ветку разработки, запустив composer require team-reflex/discord-php dev-master
.
Включите файл автозагрузки Composer в начало основного файла:
include __DIR__.'/vendor/autoload.php';
Сделайте бота!
<?phpinclude __DIR__.'/vendor/autoload.php';используйте DiscordDiscord;используйте DiscordPartsChannelMessage;используйте DiscordWebSocketsIntents;используйте DiscordWebSocketsEvent;$discord = new Discord(['token' => 'bot-token','intents' => Intents ::getDefaultIntents()// | Intents::MESSAGE_CONTENT, // Примечание: MESSAGE_CONTENT является привилегированным, см. https://dis.gd/mcfaq]);$discord->on('ready', function (Discord $discord) {echo "Бот готов!" , PHP_EOL;// Прослушиваем сообщения.$discord->on(Event::MESSAGE_CREATE, function (Message $message, Discord $discord) {echo "{$message->author->username}: {$message->content}", PHP_EOL;// Примечание: для получения контента необходимо включить намерение MESSAGE_CONTENT, если бот не упоминается/DMed.}); });$discord->run();
Дополнительную информацию см. в папке с примерами.
Документацию для последней версии можно найти здесь. Руководства, предоставленные сообществом, можно найти на вики.
Мы открыты для вкладов. Однако убедитесь, что вы соблюдаете наши стандарты кодирования (автозагрузка PSR-4 и индивидуальный стиль). Пожалуйста, запустите php-cs-fixer перед открытием запроса на включение, запустив composer run-script cs
.
Лицензия MIT, © Дэвид Коул и другие участники, 2016 г. – настоящее время.