ServerInfo
The `serverinfo` command displays detailed information about the Discord server. It can be triggered using the prefixes `P`, `p`, or the slash command `/`.
ServerInfo Command
The serverinfo command is a utility feature in a Discord bot that provides comprehensive information about the server, including member status, channels, and more.
Command Details
- Name:
serverinfo - Aliases:
guildinfo,server,sv - Category: Utility
- Description: Displays information about the server.
- Usage:
- Prefix:
P serverinfo,p serverinfo - Slash:
/serverinfo
- Prefix:
- Examples:
P serverinfop serverinfo/serverinfo
- Cooldown: 3 seconds
- Arguments: None
- Slash Command: Enabled
- Permissions:
- Bot: SendMessages, ViewChannel, EmbedLinks
- User: None
- Player Requirements: None (no voice, DJ, or active player required)
Functionality
- Displays detailed server information in an embed, including server ID, name, owner, verification level, channel counts, member statuses, boost info, roles, emojis, stickers, total members, and creation date.
- Sends an initial "searching" message with a loading emoji, then replaces it with an embed containing:
- A thumbnail of the server icon.
- The server banner as the embed image (or a default banner if none exists).
- Fields for server details, such as online/offline member counts, offline members for 7 and 30 days, and boost status.
- A footer showing the requester's display name and avatar.
- A timestamp.
- Includes interactive buttons to toggle between the main server info, server icon, and server banner views.
- Supports both prefix-based (
Porp) and slash command (/) inputs. - Buttons time out after 1 minute, becoming disabled, and only the command issuer can interact with them.
Code Overview
The command is built using a Command class structure and handles both message-based and interaction-based (slash command) inputs. It uses:
client.embed()to create formatted embeds for the main server info, icon, and banner views.guild.members.fetch()to retrieve member data for status counts (online, idle, dnd, offline).guild.iconURL()andguild.bannerURL()to fetch server icon and banner images.ActionRowBuilderandButtonBuilderfromdiscord.jsto create interactive buttons for switching views.- A message component collector to handle button interactions with a 1-minute timeout.
- Language localization for messages and emojis.
- Error handling for button interactions (restricting to the command issuer) and fallback for missing banner/icon.
Quote
The `quote` command sends a random motivational or general quote in a Discord server. It can be triggered using the prefixes `P`, `p`, or the slash command `/`.
StealEmoji
The `stealemoji` command generates an image of a specified emoji from the server or a Unicode emoji in a Discord server. It can be triggered using the prefixes `P`, `p`, or the slash command `/`.