Webhooks Module
Migration Notice
Section titled “Migration Notice”If you’re currently using the Webhooks module, you should:
- Update DiSky to version 4.15 or higher
- Remove the Webhooks module from your
plugins/DiSky/modules/folder - Update your code to use the new built-in webhook syntax
- Review the new documentation at DiSky Webhooks Guide
Why This Module Was Deprecated
Section titled “Why This Module Was Deprecated”The Webhooks module was created when DiSky didn’t have native webhook support. Since DiSky 4.15, webhook functionality has been integrated directly into the core plugin, offering:
- Better performance and stability
- Full integration with DiSky’s message builders
- Active maintenance and updates
- Consistent syntax with other DiSky features
- Bug fixes and improvements
Historical Documentation
Section titled “Historical Documentation”What Were Webhooks?
Section titled “What Were Webhooks?”Webhooks allowed bots to send messages with custom names and avatars. They were designed to be anonymous—webhooks don’t have tags or unique IDs like regular bot users. Webhooks were also the only way to send messages with multiple embeds at once.
Legacy Module Installation
Section titled “Legacy Module Installation”Download link (archived): GitHub Releases
Limitations of the Old Module
Section titled “Limitations of the Old Module”The deprecated Webhooks module had several limitations:
- No component support (buttons, select menus)
- No interaction handling
- Limited error handling
- Not actively maintained
- Incompatible with newer DiSky features
Legacy Syntax Reference
Section titled “Legacy Syntax Reference”This syntax is deprecated and should not be used:
Creating a Webhook (Old Method)
Section titled “Creating a Webhook (Old Method)”# OLD - DO NOT USEon script load: register webhook named "<name>" with url "<your webhook url here>"Sending Messages (Old Method)
Section titled “Sending Messages (Old Method)”# OLD - DO NOT USEmake a new webhook message: set webhook name of builder to "Test" set webhook avatar of builder to "https://example.com/avatar.png" set webhook content of builder to "This is a test message"
make embed: set title of embed to "Hey" set embed color of embed to orange
set webhook embeds of builder to last embed make client "<name>" send builder and store it in {_msgId}Migrating to Built-in Webhooks
Section titled “Migrating to Built-in Webhooks”Here’s how to migrate from the old module to DiSky’s built-in webhooks:
Step 1: Update DiSky
Section titled “Step 1: Update DiSky”Ensure you have DiSky 4.15 or higher installed.
Step 2: Remove Old Module
Section titled “Step 2: Remove Old Module”Delete the Webhooks module JAR from plugins/DiSky/modules/.
Step 3: Update Your Code
Section titled “Step 3: Update Your Code”Old Module Syntax:
# OLD - DO NOT USEon script load: register webhook named "test" with url "https://discord.com/api/webhooks/..."
make a new webhook message: set webhook name of builder to "Bot Name" set webhook avatar of builder to "https://example.com/avatar.png" set webhook content of builder to "Hello!" make client "test" send builderNew Built-in Syntax:
# NEW - Use this insteadset {_webhook} to webhook with url "https://discord.com/api/webhooks/..."
make webhook message: set webhook name to "Bot Name" set webhook avatar url to "https://example.com/avatar.png" set content to "Hello!"
send last webhook message to {_webhook}Common Migration Examples
Section titled “Common Migration Examples”Sending Simple Messages
Section titled “Sending Simple Messages”Old:
make a new webhook message: set webhook name of builder to "Announcer" set webhook content of builder to "Server will restart in 5 minutes!" make client "announcer" send builderNew:
set {_webhook} to webhook with url "YOUR_WEBHOOK_URL"
make webhook message: set webhook name to "Announcer" set content to "Server will restart in 5 minutes!"
send last webhook message to {_webhook}Sending with Embeds
Section titled “Sending with Embeds”Old:
make a new webhook message: set webhook name of builder to "Status Bot"
make embed: set title of embed to "Server Status" set description of embed to "All systems operational" set color of embed to green
set webhook embeds of builder to last embed make client "status" send builderNew:
set {_webhook} to webhook with url "YOUR_WEBHOOK_URL"
make embed: set title of embed to "Server Status" set description of embed to "All systems operational" set color of embed to green
make webhook message: set webhook name to "Status Bot" add last embed to embeds
send last webhook message to {_webhook}Multiple Embeds
Section titled “Multiple Embeds”Old:
make embed: set title of embed to "Embed 1"set {_embed1} to last embed
make embed: set title of embed to "Embed 2"set {_embed2} to last embed
make a new webhook message: set webhook embeds of builder to {_embed1} and {_embed2} make client "test" send builderNew:
set {_webhook} to webhook with url "YOUR_WEBHOOK_URL"
make embed: set title of embed to "Embed 1"set {_embed1} to last embed
make embed: set title of embed to "Embed 2"set {_embed2} to last embed
make webhook message: add {_embed1} to embeds add {_embed2} to embeds
send last webhook message to {_webhook}Creating Discord Webhooks
Section titled “Creating Discord Webhooks”If you need to create a webhook URL in Discord:
-
Open Channel Settings
Right-click on the channel and select “Edit Channel”
-
Navigate to Integrations
Go to the “Integrations” tab in the channel settings
-
Access Webhooks
Click on “Webhooks” to view and manage webhooks
-
Create New Webhook
Click “New Webhook” to create a new webhook
-
Configure and Copy URL
Set a name and avatar (optional), then click “Copy Webhook URL”
A channel’s settings panel showing the Integrations option
The webhooks sub-panel where you can create and manage webhooks
Feature Comparison
Section titled “Feature Comparison”| Feature | Old Module | Built-in (DiSky 4.15+) |
|---|---|---|
| Send messages | ✅ | ✅ |
| Custom name/avatar | ✅ | ✅ |
| Multiple embeds | ✅ | ✅ |
| Attachments/files | ✅ | ✅ |
| Components (buttons) | ❌ | ✅ |
| Edit webhook messages | ❌ | ✅ |
| Delete webhook messages | ❌ | ✅ |
| Get webhook info | ❌ | ✅ |
| Active maintenance | ❌ | ✅ |
| Error handling | Limited | Comprehensive |
Why Use Built-in Webhooks?
Section titled “Why Use Built-in Webhooks?”- Better Integration: Seamlessly works with DiSky’s message builders
- More Features: Support for components, editing, and deletion
- Active Development: Regular updates and bug fixes
- Better Performance: Optimized code and resource usage
- Unified Syntax: Consistent with other DiSky features
- Full Documentation: Comprehensive guides and examples
Get Started with New Webhooks
Section titled “Get Started with New Webhooks”Ready to use the new webhook system? Check out the official documentation:
The new documentation includes:
- Complete setup instructions
- Practical examples for all use cases
- Best practices and tips
- Troubleshooting guide
- Advanced features like editing and components
Frequently Asked Questions
Section titled “Frequently Asked Questions”Do I need to keep the old module installed?
Section titled “Do I need to keep the old module installed?”No! Once you’ve migrated your code to use DiSky’s built-in webhooks, you should remove the old Webhooks module from your server.
Will my existing webhooks still work?
Section titled “Will my existing webhooks still work?”Yes! Discord webhooks themselves don’t change. You just need to update the Skript code that sends messages to them.
Can I use both the old module and new syntax?
Section titled “Can I use both the old module and new syntax?”While technically possible, it’s not recommended. You should fully migrate to the new built-in system for consistency and maintainability.
What if I need help migrating?
Section titled “What if I need help migrating?”Join the DiSky Discord Server for migration assistance and support.
Are there any breaking changes?
Section titled “Are there any breaking changes?”The syntax is different, but the core concepts remain the same. The new system is more intuitive and powerful.
Example Migration Checklist
Section titled “Example Migration Checklist”Use this checklist to ensure a smooth migration:
- Update DiSky to version 4.15 or higher
- Review the new webhook documentation
- Backup your current scripts
- Remove webhook registration code (
register webhook named...) - Update webhook message creation to use new syntax
- Replace
make client "name" send builderwith new send syntax - Test all webhook functionality
- Remove the old Webhooks module JAR
- Restart your server
- Verify everything works as expected
Troubleshooting Migration
Section titled “Troubleshooting Migration”Webhook Not Found Errors
Section titled “Webhook Not Found Errors”If you get errors about webhooks not being found:
- Remove the old
register webhookcode - Use the webhook URL directly in the new syntax
Messages Not Sending
Section titled “Messages Not Sending”Ensure you’re using the new syntax correctly:
# Correct new syntaxset {_webhook} to webhook with url "YOUR_URL"make webhook message: set content to "Test"send last webhook message to {_webhook}Multiple Embeds Not Working
Section titled “Multiple Embeds Not Working”The new syntax for adding multiple embeds:
make webhook message: add {_embed1} to embeds add {_embed2} to embeds add {_embed3} to embedsSupport
Section titled “Support”For help with migration or general webhook support:
- DiSky Discord Server - Get help from the community
- New Webhooks Documentation - Official guide for built-in webhooks
- GitHub Issues - Report bugs or issues