marcio1002 / discord-webhook-sdk-php
This sdk provides a simple way to send messages by hooks in discord
Installs: 1 318
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 1
Open Issues: 0
Type:package
Requires
- php: >=7.4.0
- clue/block-react: ^1.5
- react/http: ^1.6
This package is auto-updated.
Last update: 2024-12-06 05:08:17 UTC
README
installation
composer require marcio1002/discord-webhook-sdk-php
Constructor parameter options
Pass an array of options to the constructor, note that the webhook url is required.
Sending simple message
use Marcio1002\DiscordWebhook\DiscordWebhook; $webhook = new DiscordWebhook([ 'webhook_id' => '12345686', 'token' => 'dghjt4fw3tk7865edfgt67iykmdw45g$Gdeg4C_VGHT43RW', ]); //Synchronous envio $webhook->sendMessage('This is a message', true); //Asynchronous envio $webhook->sendMessage('This is a message');
Changing the webhook
With the Message class you can change the name, url, define the content and create embeds
use Marcio1002\DiscordWebhook\DiscordWebhook; use Marcio1002\DiscordWebhook\Message; $message = new Message(); ->setUsername('DC Notification') ->setAvatar('URL'); ->setContent('Alert message'); $webhook ->sendMessage($message) ->then( fn() => print_r('Success!'), fn(\Throwable $err) => print_r($err->getMessage()) )
Sending embed
use Marcio1002\DiscordWebhook\DiscordWebhook; use Marcio1002\DiscordWebhook\MessageEmbed; $message_embed = new MessageEmbed(); $message_embed ->setTitle('Title') ->setDescription('Description'); ->setThumbnail('URL') $discord->sendMessage($message_embed); $embeds = range(0, 9); // limit 10 embeds $embeds = array_map( fn ($n) => (new MessageEmbed) ->setTitle("Title $n"), ->setColor(MessageEmbed::randomColor()) $embeds ); $webhook->sendMessage($embeds);
Sending facades class
use Marcio1002\DiscordWebhook\Facades\DiscordWebhook; DiscordWebhook::configure([ 'webhook_id' => '12345686', 'token' => 'dghjt4fw3tk7865edfgt67iykmdw45g$Gdeg4C_VGHT43RW', ]); DiscordWebhook::sendMessage('Message');
Edit, get and delete message
When editing the message you can pass the same parameter that is passed in the sendMessage method
DiscordWebhook::configure([ 'webhook_id' => '12345686', 'token' => 'dghjt4fw3tk7865edfgt67iykmdw45g$Gdeg4C_VGHT43RW', ]); DiscordWebhook::editMessage('ID', 'message', true); DiscordWebhook::getMessage('ID')->then(fn($message) => print_r($message)); DiscordWebhook::deleteMessage('ID', true);