Component for discord.py
Project description
dpy-components
This lib adds components support for discord.py.
Please note this is beta yet.
Example
import os
from discord.ext import commands, components
bot = commands.Bot("c ")
bot.load_extension("discord.ext.components")
@bot.event
async def on_ready():
print('We have logged in as {0.user}'.format(bot))
@bot.command()
async def test(ctx, button_label, hidden: bool):
await components.send(ctx, "Click this", components=[components.Button(button_label, name="button1")])
cmp = await bot.wait_for("button_click", check=lambda c: c.name == "button1")
await cmp.send(f"You clicked {button_label}.", hidden=hidden)
bot.run(os.getenv("token"))
Reference
ButtonType
Represents button type.
primary
,primary_cta
,blue
,blurple
Represents 1
.
success
,primary_success
,green
Represents 2
.
secondary
,gray
,grey
Represents 3
.
danger
,destructive
,red
Represents 4
.
link
,url
Represents 5
.
components.send
This function is a coroutine. Send message with components.
components.send(channel: discord.abc.Messageable, content=None, *, tts=False, embed=None, file=None,
files=None, delete_after=None, nonce=None,
allowed_mentions=None, reference=None,
mention_author=None, components=[])
channnel
: Channel to send the message.
content
..mention_author
: Same as discord.abc.Messageable.send
.
components
: Components to attach to the message.
If you want to use multi row components, please specify 2D list.
components.reply
This function is a coroutine.
An utility function for replying message.
Same as:
await send(target.channel, *args, reference=target.to_reference(), **kwargs)
components.Button
Represents a button in component.
label
: Label for the button.
custom_id
|name
: Custom id for the button.
url
: URL for the button.
style
: Style for the button.
Pass values of Button Styles, or ButtonType
.
emoji
: Emoji for the button.
enabled
: Whether the button is enabled.
Properties
.disabled
: Same as not self.enabled
.
on_button_click(cmp: ButtonResponse)
Fires when user clicked button.
ButtonResponse
Represents a button response.
Do not initialize this class directly.
id
: ID of the interaction.
application_id
: Application ID of the interaction.
guild
: Guild of the interaction.
channel
: Channel of the interaction.
message
: Message of the interaction.
member
: Member who pressed the button.
token
: Token of the interaction.
custom_id
|name
: Custom ID of the button.
ButtonResponse.send
This function is a coroutine.
Responds interaction.
ButtonResponse.send(
content=None, *,
embed=None,
embeds=[],
allowed_mentions=None,
tts=False,
hidden=False
)
content
...tts
: Same as discord.abc.Messageable.send
.
hidden
: Hide the message or not.
ButtonResponse.defer_source
This function is a coroutine.
ACK an interaction with DeferredChannelMessageWithSource(5).
The user sees a loading state.
ButtonResponse.defer_update
This function is a coroutine.
ACK an interaction with DeferredUpdateMessage(6).
The user doesn't see a loading state.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file dpy_components-0.4.2-py3-none-any.whl
.
File metadata
- Download URL: dpy_components-0.4.2-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.1.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 942fbff7ac6bc8ec665ed6578ee5328a4cd0ece09a8426d99eb8ef60f523058c |
|
MD5 | e17cae0a443caf8aa34a38200f9e41a4 |
|
BLAKE2b-256 | 68bb3f927732dd627de6b65ca078044a391df4e715a4c0fd2341771d48764fec |