APIリファレンス¶
ここではdiscord.pyのAPIの概要を説明します。
注釈
このモジュールはPythonのloggingモジュールを使用して、出力に依存しない方法でエラーや診断の内容を記録します。loggingモジュールが設定されていない場合、これらのログはどこにも出力されません。discord.pyでloggingモジュールを使用する方法の詳細は ログの設定 を参照してください。
クライアント¶
Client¶
- defadd_dynamic_items
- defadd_view
- asyncapplication_info
- asyncbefore_identify_hook
- asyncchange_presence
- defclear
- asyncclose
- asyncconnect
- asynccreate_dm
- asynccreate_entitlement
- asynccreate_guild
- asyncdelete_invite
- async forentitlements
- @event
- asyncfetch_channel
- asyncfetch_entitlement
- asyncfetch_guild
- async forfetch_guilds
- asyncfetch_invite
- asyncfetch_premium_sticker_packs
- asyncfetch_skus
- asyncfetch_stage_instance
- asyncfetch_sticker
- asyncfetch_template
- asyncfetch_user
- asyncfetch_webhook
- asyncfetch_widget
- defget_all_channels
- defget_all_members
- defget_channel
- defget_emoji
- defget_guild
- defget_partial_messageable
- defget_stage_instance
- defget_sticker
- defget_user
- defis_closed
- defis_ready
- defis_ws_ratelimited
- asynclogin
- asyncon_error
- defremove_dynamic_items
- defrun
- asyncsetup_hook
- asyncstart
- asyncwait_for
- asyncwait_until_ready
- class discord.Client(*, intents, **options)¶
Discordに接続するクライアント接続です。このクラスはDiscordのWebSocket、及びAPIとの対話に使用されます。
- async with x
非同期的にクライアントを初期化し自動でクリーンアップします。
バージョン 2.0 で追加.
Client
には多くのオプションを渡すことが可能です。- パラメータ
max_messages (Optional[
int
]) --内部のメッセージキャッシュに保存するメッセージの最大数。デフォルトは
1000
です。None
が渡されるとメッセージキャッシュは無効化されます。バージョン 1.3 で変更: メッセージキャッシュの無効化が可能になり、デフォルトのキャッシュサイズが
1000
になりました。proxy (Optional[
str
]) -- プロキシのURL。proxy_auth (Optional[
aiohttp.BasicAuth
]) -- プロキシのHTTP Basic認証を表すオブジェクト。shard_id (Optional[
int
]) --0
から始まり、shard_count
より小さい整数。shard_count (Optional[
int
]) -- シャードの総数。application_id (
int
) -- クライアントのアプリケーションID。intents (
Intents
) --セッションで有効にするインテント。これは特定のゲートウェイイベントの発火、またはその送信を無効化できます。
バージョン 1.5 で追加.
バージョン 2.0 で変更: パラメータが必須になりました。
member_cache_flags (
MemberCacheFlags
) --ライブラリのメンバーのキャッシュ方法をより詳細に制御することができます。指定されていない場合、デフォルトでは現在のインテントに応じて可能な限りキャッシュを行います。
バージョン 1.5 で追加.
chunk_guilds_at_startup (
bool
) --必要に応じて、
on_ready()
を遅延させ、すべてのギルドをチャンク化するかどうかを設定します。この操作は大量のギルドに参加している場合、非常に低速になります。Intents.members
がTrue
である場合、これはデフォルトでTrue
になります。バージョン 1.5 で追加.
status (Optional[
Status
]) -- Discordにログインした際の、開始時ステータス。activity (Optional[
BaseActivity
]) -- Discordにログインした際の、開始時アクティビティ。allowed_mentions (Optional[
AllowedMentions
]) --送信されるすべてのメッセージにおいて、クライアントがメンションを処理するかどうかを制御します。
バージョン 1.4 で追加.
heartbeat_timeout (
float
) -- HEARTBEAT_ACKを受信できない際に、WebSocketをタイムアウトさせて再起動するまでの最大秒数。最初のパケットの処理に時間がかかり、接続を切断できないというような状況時に便利です。デフォルトでは60秒に設定されています。guild_ready_timeout (
float
) --メンバーキャッシュの準備を行い、READYを実行する前にGUILD_CREATEストリームが終了するのを待機する最大秒数。デフォルトは2秒です。
バージョン 1.4 で追加.
assume_unsync_clock (
bool
) --システム時計が同期されていない可能性を考慮するかどうかを設定します。これはレートリミットの処理コードに適用されます。デフォルトでは
True
が設定されており、この場合、ライブラリはDiscordから受け取ったレートリミットバケットをリセットするため内部で時間を処理します。False
に設定されている場合は、システム時計を利用してどれくらいの時間スリープするかを計算します。もし、これをFalse
に設定するのであれば、システム時計をGoogleのNTPサーバーと同期させることを推奨します。バージョン 1.3 で追加.
enable_debug_events (
bool
) --ゲートウェイ関連情報のデバッグにのみ役立つイベントを有効にするかどうかを設定します。
現在は
on_socket_raw_receive()
とon_socket_raw_send()
がそのイベントです。 もしFalse
にしたのならこれらのイベントは呼ばれません。 (パフォーマンスを考慮したためです) これを有効にする場合はTrue
にしましょう。 デフォルトはFalse
です。バージョン 2.0 で追加.
http_trace (
aiohttp.TraceConfig
) --ライブラリが
aiohttp
を使用して行うHTTPリクエストの追跡に使用する設定。これを使用するとライブラリが行うリクエストを確認できます。詳細は aiohttp documentation を確認してください。バージョン 2.0 で追加.
max_ratelimit_timeout (Optional[
float
]) --グローバル以外のレート制限が発生したときに待機する最大秒数。 渡された秒数以上待たないといけない場合、
RateLimited
が発生します。デフォルトではタイムアウト制限はありません。 誤用や不要なBANを防ぐため、最小値は30.0
秒です。バージョン 2.0 で追加.
- ws¶
クライアントが現在接続しているWebSocketゲートウェイ。
None
でもかまいません。
- @event¶
受け取るイベントを登録するデコレータ。
イベントの詳細については 以下のドキュメント を参照してください。
イベントは coroutine でなければいけません。違う場合は
TypeError
が送出されます。サンプル
@client.event async def on_ready(): print('Ready!')
バージョン 2.0 で変更:
coro
引数は位置限定引数になりました。- 例外
TypeError -- 渡された関数がコルーチンでない場合。
- property latency¶
HEARTBEATとHEARTBEAT_ACK間の待ち時間を秒単位で測定します。
これはDiscord WebSocketプロトコルの待ち時間とも言えます。
- 型
- is_ws_ratelimited()¶
bool
: WebSocketにレート制限が課されているかどうかを指します。これはメンバーを取得する際、HTTPを利用するか、ゲートウェイを介して行うかを決定するときに知っておくと役立ちます。
バージョン 1.6 で追加.
- property user¶
接続されたクライアント。ログインしていない場合は
None
です。- 型
Optional[
ClientUser
]
- property stickers¶
接続したクライアントが持つスタンプ。
バージョン 2.0 で追加.
- 型
Sequence[
GuildSticker
]
- property private_channels¶
接続したクライアントが参加しているプライベートチャンネル。
注釈
Discordでのプライベートチャンネルの取扱いは内部的に処理されているため、これは最新のプライベートチャンネルから最大128個までしか取得できません。
- 型
Sequence[
abc.PrivateChannel
]
- property voice_clients¶
ボイス接続のリストを表します。
通常、
VoiceClient
インスタンスです。- 型
List[
VoiceProtocol
]
- property application_id¶
クライアントのアプリケーションID。
これが
__init__
で渡されなかった場合、データを含むイベントが発生した際にゲートウェイを介して、またはlogin()
の後に取得されます。通常はon_connect()
が呼び出された後です。バージョン 2.0 で追加.
- 型
Optional[
int
]
- property application_flags¶
クライアントのアプリケーションフラグ。
バージョン 2.0 で追加.
- property application¶
クライアントのアプリケーション情報。
これは
login()
で取得され、その後更新されません。これによりゲートウェイ接続を行わずにapplication_idを取得できます。もし
login()
の呼び出し前にアクセスされた場合はNone
です。参考
application_info()
API呼び出しバージョン 2.0 で追加.
- 型
Optional[
AppInfo
]
- await on_error(event_method, /, *args, **kwargs)¶
This function is a coroutine.
クライアントによって提供されるデフォルトのエラーハンドラ。
デフォルトでは、これはライブラリロガーに出力されますが、異なる実装によって上書きされる可能性があります。詳細については
on_error()
を確認してください。バージョン 2.0 で変更:
event_method
パラメータが位置限定引数になり、sys.stderr
に出力するのではなくログに記録するようになりました。
- await before_identify_hook(shard_id, *, initial=False)¶
This function is a coroutine.
セッションの識別前に呼び出されるフック。複数の識別クライアントの同期をより細かく制御したい場合に役立ちます。
デフォルトの実装では5秒間スリープします。
バージョン 1.4 で追加.
- await setup_hook()¶
This function is a coroutine.
ボットのセットアップのためのコルーチンです。デフォルトでは空です。
ボットがログインした後で、ウェブソケットに接続する前に非同期のセットアップを行いたい場合は、このコルーチンを上書きしてください。
これは
login()
にて一度だけ呼び出され、イベントが呼び出される前に呼び出されるため、on_ready()
より優れています。警告
これはWebSocket接続の 前に 呼ばれるため、WebSocketを待つ関数の呼び出しはデッドロックします。これには
wait_for()
やwait_until_ready()
が含まれます。バージョン 2.0 で追加.
- await login(token)¶
This function is a coroutine.
指定した資格情報を使用してクライアントにログインし、
setup_hook()
を呼び出します。- パラメータ
token (
str
) -- 認証用のトークン。このライブラリが処理するため、トークンの頭に何も付けないでください。- 例外
LoginFailure -- 不正な認証情報が渡された場合。
HTTPException -- 不明なHTTP関連のエラーが発生した場合。通常、ステータスコードが200でないか、既知の誤った資格情報が渡された場合です。
- await connect(*, reconnect=True)¶
This function is a coroutine.
WebSocket接続を作成し、Discordからのメッセージを受け取れるようにします。これはイベントシステム全体とライブラリの様々な機能を実行するループです。WebSocket接続が終了するまで、制御は再開されません。
- パラメータ
reconnect (
bool
) -- インターネットの障害やDiscord側の特定の障害が発生した際に再接続を試みるかどうか。不正な状態による特定の切断 (無効なシャーディングペイロードや不正なトークンなど) は処理されません。- 例外
GatewayNotFound -- Discordに接続するためのゲートウェイが見つからない場合。通常、この例外はDiscord APIの停止によって引き起こされます。
ConnectionClosed -- WebSocket接続が終了した場合。
- clear()¶
Botの内部状態をクリアします。
これが実行されると、Botは「再オープン」されたとみなされます。そのため、
is_closed()
やis_ready()
はFalse
を返し、内部のキャッシュもクリアされます。
- run(token, *, reconnect=True, log_handler=..., log_formatter=..., log_level=..., root_logger=False)¶
イベントループの初期化を抽象化するブロッキングコール。
イベントループをより詳細に制御するには、この関数を使用しないでください。
start()
またはconnect()
+login()
を使用してください。またこの関数は、初心者がライブラリの仕組みを知ることが簡単にできるよう logging ライブラリを設定します。より高度なユーザーは、
log_handler
にNone
を渡してこれを無効化することもできます。警告
この関数はブロッキングを行うため、必ず最後に呼び出してください。この関数を呼び出した後に呼び出されるイベントや関数は、Botが停止するまで実行されません。
- パラメータ
token (
str
) -- 認証用のトークン。このライブラリが処理するため、トークンの頭に何も付けないでください。reconnect (
bool
) -- インターネットの障害やDiscord側の特定の障害が発生した際に再接続を試みるかどうか。不正な状態による特定の切断 (無効なシャーディングペイロードや不正なトークンなど) は処理されません。log_handler (Optional[
logging.Handler
]) --ライブラリロガーにて使用すべきログハンドラ。もしこれが
None
の場合ライブラリはログ関連のセットアップを一切行いません。None
を渡してもログは記録されますが、設定は自己責任となります。渡されない場合のデフォルトは
logging.StreamHandler
です。バージョン 2.0 で追加.
log_formatter (
logging.Formatter
) --指定されたログハンドラで使用するフォーマッタ。渡されない場合は、既定で色ベースのログフォーマッタが使用されます (使用可能な場合)。
バージョン 2.0 で追加.
log_level (
int
) --ライブラリロガーの既定のログレベル。これは
log_handler
がNone
でない場合のみ適用されます。デフォルトはlogging.INFO
です。バージョン 2.0 で追加.
root_logger (
bool
) --ライブラリロガーではなくルートロガーを設定するかどうか。デフォルトではライブラリロガー (
'discord'
) のみが設定されています。 これがTrue
に設定されている場合、ルートロガーも設定されます。デフォルトでは
False
です。バージョン 2.0 で追加.
- property activity¶
ログイン時に使用されるアクティビティ。
- 型
Optional[
BaseActivity
]
- property allowed_mentions¶
許可されたメンションの設定。
バージョン 1.4 で追加.
- 型
Optional[
AllowedMentions
]
- get_channel(id, /)¶
与えられたIDに合致するチャンネルまたはスレッドを返します。
バージョン 2.0 で変更:
id
引数は位置限定引数になりました。- パラメータ
id (
int
) -- 検索するID。- 戻り値
チャンネル、または該当するものが見つからない場合
None
が返ります。- 戻り値の型
Optional[Union[
abc.GuildChannel
,Thread
,abc.PrivateChannel
]]
- get_partial_messageable(id, *, guild_id=None, type=None)¶
与えられたチャンネルIDのPartialMessageableを返します。
これはチャンネルIDがあるがメッセージを送信するためにAPI呼び出しをしたくない、という場合に便利です。
バージョン 2.0 で追加.
- パラメータ
id (
int
) -- PartialMessageableを作成するためのチャンネルID。guild_id (Optional[
int
]) -- 部分的なメッセージ可能チャンネルを作成するためのオプションのギルドID。これはメッセージの送信には必須ではありませんが、jump_url()
やguild
プロパティが適切に動作するようになります。type (Optional[
ChannelType
]) -- PartialMessageableの基礎となるチャンネルタイプ。
- 戻り値
PartialMessageable
- 戻り値の型
- get_stage_instance(id, /)¶
与えられたステージチャンネルのIDを持つステージインスタンスを返します。
バージョン 2.0 で追加.
- パラメータ
id (
int
) -- 検索するID。- 戻り値
ステージインスタンス、または該当するものが見つからない場合
None
が返ります。- 戻り値の型
Optional[
StageInstance
]
- get_guild(id, /)¶
与えられたIDのギルドを返します。
バージョン 2.0 で変更:
id
引数は位置限定引数になりました。
- get_user(id, /)¶
与えられたIDのユーザーを返します。
バージョン 2.0 で変更:
id
引数は位置限定引数になりました。
- get_emoji(id, /)¶
与えられたIDの絵文字を返します。
バージョン 2.0 で変更:
id
引数は位置限定引数になりました。
- get_sticker(id, /)¶
与えられたIDに合致するギルドスタンプを返します。
バージョン 2.0 で追加.
注釈
標準スタンプを取得するには、
fetch_sticker()
かfetch_premium_sticker_packs()
を使用してください。- 戻り値
スタンプが返ります。見つからなかった場合は
None
が返ります。- 戻り値の型
Optional[
GuildSticker
]
- for ... in get_all_channels()¶
クライアントが「アクセス」できるすべての
abc.GuildChannel
のジェネレータを取得します。使用例:
for guild in client.guilds: for channel in guild.channels: yield channel
注釈
abc.GuildChannel
を受け取ったからと言って、そのチャンネルで発言ができるという意味ではありません。発言可能なチャンネルのみを取得したいのなら、abc.GuildChannel.permissions_for()
を使いましょう。- 列挙
abc.GuildChannel
-- クライアントが「アクセスする」ことができるチャンネル。
- for ... in get_all_members()¶
クライアントが参照可能なすべての
Member
のジェネレータを返します。使用例:
for guild in client.guilds: for member in guild.members: yield member
- 列挙
Member
-- クライアントが見ることができるメンバー。
- await wait_until_ready()¶
This function is a coroutine.
クライアントの内部キャッシュの準備が完了するまで待機します。
警告
setup_hook()
内で呼び出すとデッドロックが起こります。
- wait_for(event, /, *, check=None, timeout=None)¶
This function is a coroutine.
WebSocketイベントがディスパッチされるまで待機します。
メッセージの送信者が、メッセージに返信したり、リアクションをつけたり、編集したりする、自己完結型の処理に利用できます。
timeout
パラメータはasyncio.wait_for()
に渡されます。デフォルトではタイムアウトしません。タイムアウトした際にasyncio.TimeoutError
が送出されるのは、使いやすさを考慮したためです。イベントが複数の引数を返す場合は、それらを含む
tuple
が代わりに返ります。イベントとそのパラメーターについては ドキュメント を参照してください。この関数は 条件を満たす最初のイベント を返します。
サンプル
ユーザーからの返信を待つ場合:
@client.event async def on_message(message): if message.content.startswith('$greet'): channel = message.channel await channel.send('Say hello!') def check(m): return m.content == 'hello' and m.channel == channel msg = await client.wait_for('message', check=check) await channel.send(f'Hello {msg.author}!')
メッセージ送信者がサムズアップリアクションを付けるのを待つ場合:
@client.event async def on_message(message): if message.content.startswith('$thumb'): channel = message.channel await channel.send('Send me that 👍 reaction, mate') def check(reaction, user): return user == message.author and str(reaction.emoji) == '👍' try: reaction, user = await client.wait_for('reaction_add', timeout=60.0, check=check) except asyncio.TimeoutError: await channel.send('👎') else: await channel.send('👍')
バージョン 2.0 で変更:
event
引数は位置限定引数になりました。- パラメータ
event (
str
) -- イベント名は イベントリファレンス に似ていますが接頭詞のon_
が必要ありません。check (Optional[Callable[...,
bool
]]) -- 待っているものに該当するかを確認する関数。引数は待機しているイベントのパラメータを満たしている必要があります。timeout (Optional[
float
]) -- タイムアウトしてasyncio.TimeoutError
が送出されるまでの秒数。
- 例外
asyncio.TimeoutError -- タイムアウトが設定されていて、かつその時間が経過した場合。
- 戻り値
単一の引数、あるいは イベントリファレンス のパラメータを反映した複数の引数の値を含む
tuple
が返ります。返る引数がない場合もあります。- 戻り値の型
Any
- await change_presence(*, activity=None, status=None)¶
This function is a coroutine.
クライアントのプレゼンスを変更します。
サンプル
game = discord.Game("with the API") await client.change_presence(status=discord.Status.idle, activity=game)
バージョン 2.0 で変更: キーワード専用引数
afk
を削除しました。バージョン 2.0 で変更: この関数は
InvalidArgument
の代わりにTypeError
を送出します。- パラメータ
activity (Optional[
BaseActivity
]) -- 実行中のアクティビティ。何も実行していない場合はNone
です。status (Optional[
Status
]) -- 変更するステータスを示します。None
の場合、Status.online
となります。
- 例外
TypeError --
activity
パラメータが適切な型でない場合。
- async for ... in fetch_guilds(*, limit=200, before=None, after=None, with_counts=True)¶
Botが所属するGuildを取得できる、 asynchronous iterator を取得します。
注釈
これを使用した場合、各
Guild
のGuild.owner
、Guild.icon
、Guild.id
、Guild.name
、Guild.approximate_member_count
、およびGuild.approximate_presence_count
のみ受け取ります。注釈
これはAPIを呼び出します。通常は
guilds
を代わりに使用してください。サンプル
使い方
async for guild in client.fetch_guilds(limit=150): print(guild.name)
リストへフラット化
guilds = [guild async for guild in client.fetch_guilds(limit=150)] # guilds is now a list of Guild...
すべてのパラメータがオプションです。
- パラメータ
limit (Optional[
int
]) --取得するギルドの数。
None
の場合、Botがアクセスできるギルドすべてを取得します。ただし、これには時間が掛かることに注意してください。デフォルトは200です。バージョン 2.0 で変更: デフォルトが200に変更されました。
before (Union[
abc.Snowflake
,datetime.datetime
]) -- 渡された日付、またはギルドより前のギルドを取得します。日付を指定する場合、UTC aware datetimeを利用することを推奨します。naive datetimeである場合、これはローカル時間であるとみなされます。after (Union[
abc.Snowflake
,datetime.datetime
]) -- 渡された日付、またはギルドより後のギルドを取得します。日付を指定する場合、UTC aware datetimeを利用することを推奨します。naive datetimeである場合、これはローカル時間であるとみなされます。with_counts (
bool
) --ギルドにカウント情報を含めるかどうか。これを使うことで特権インテントがなくても
Guild.approximate_member_count
とGuild.approximate_presence_count
属性が設定されます。デフォルトはTrue
です。バージョン 2.3 で追加.
- 例外
HTTPException -- ギルドの取得に失敗した場合。
- 列挙
Guild
-- データを解析したGuild。
- await fetch_template(code)¶
This function is a coroutine.
discord.new URL またはコードから
Template
を取得します。- パラメータ
code (Union[
Template
,str
]) -- DiscordテンプレートコードまたはURL (discord.new URLである必要があります)。- 例外
NotFound -- 無効なテンプレートである場合。
HTTPException -- テンプレートの取得に失敗した場合。
- 戻り値
URL/コードからのテンプレート。
- 戻り値の型
- await fetch_guild(guild_id, /, *, with_counts=True)¶
This function is a coroutine.
IDから
Guild
を取得します。注釈
これを使用した場合、
Guild.channels
、Guild.members
及び、各Member
のMember.activity
とMember.voice
を取得することはできません。注釈
このメソッドはAPIを呼び出します。通常は
get_guild()
を代わりとして使用してください。バージョン 2.0 で変更: 引数
guild_id
は位置専用引数となりました。- パラメータ
guild_id (
int
) -- 取得したいギルドのID。with_counts (
bool
) --ギルドにカウント情報を含めるかどうか。これを使うことで特権インテントがなくても
Guild.approximate_member_count
とGuild.approximate_presence_count
属性が設定されます。デフォルトはTrue
です。バージョン 2.0 で追加.
- 例外
NotFound -- The guild doesn't exist or you got no access to it.
HTTPException -- ギルドの取得に失敗した場合。
- 戻り値
IDから取得したギルド。
- 戻り値の型
- await create_guild(*, name, icon=..., code=...)¶
This function is a coroutine.
Guild
を作成します。10以上のギルドに参加しているBotアカウントはギルドの作成ができません。
バージョン 2.0 で変更:
name
とicon
パラメータはキーワード限定引数になりました。region
パラメータは削除されました。バージョン 2.0 で変更: この関数は
InvalidArgument
の代わりにValueError
を送出します。- パラメータ
name (
str
) -- ギルドの名前。icon (Optional[
bytes
]) -- アイコンを表す bytes-like object です。ClientUser.edit()
で、予期されるデータの詳細を確認してください。code (
str
) --Guildを作成するためのテンプレートのコード。
バージョン 1.4 で追加.
- 例外
HTTPException -- ギルドの作成に失敗した場合。
ValueError -- Guildのアイコンの画像形式が無効だった時。画像は、PNGまたはJPGである必要があります。
- 戻り値
作成されたギルド。キャッシュに追加されるギルドとは別物です。
- 戻り値の型
- await fetch_stage_instance(channel_id, /)¶
This function is a coroutine.
ステージチャンネルのIDの
StageInstance
を取得します。バージョン 2.0 で追加.
- パラメータ
channel_id (
int
) -- ステージチャンネルのID- 例外
NotFound -- ステージインスタンスまたはチャンネルが見つからなかった場合
HTTPException -- ステージインスタンスの取得に失敗した場合
- 戻り値
ステージチャンネルIDで取得したステージインスタンス
- 戻り値の型
- await fetch_invite(url, *, with_counts=True, with_expiration=True, scheduled_event_id=None)¶
This function is a coroutine.
Invite
をdiscord.gg URLやIDから取得します。注釈
もしBotがInviteのGuildに参加していない場合、
Invite
のguildとchannel属性はそれぞれPartialInviteGuild
とPartialInviteChannel
になります。- パラメータ
url (Union[
Invite
,str
]) -- Discordの招待ID、またはURL (discord.gg URLである必要があります)。with_counts (
bool
) -- 招待にカウントの情報を含めるかどうか。これによりInvite.approximate_member_count
とInvite.approximate_presence_count
が追加されます。with_expiration (
bool
) --招待の有効期限を含めるかどうか。有効期限は
Invite.expires_at
に代入されます。バージョン 2.0 で追加.
scheduled_event_id (Optional[
int
]) --招待に紐づいたスケジュールイベントのID。
注釈
このパラメーターを使用している場合は、
event_url
パラメーターを含むURLを渡すことはできません。バージョン 2.0 で追加.
- 例外
ValueError -- URLに
event_id
が含まれているのに、scheduled_event_id
も渡された場合。NotFound -- 招待の有効期限が切れたか無効の場合。
HTTPException -- 招待の取得に失敗した場合。
- 戻り値
URL/IDから取得した招待。
- 戻り値の型
- await delete_invite(invite, /)¶
This function is a coroutine.
Invite
や、招待のURL、IDを削除します。これを行うには、関連付けられたGuildにて、
manage_channels
が必要です。バージョン 2.0 で変更:
invite
引数は位置限定引数になりました。- パラメータ
- 例外
Forbidden -- 削除する権限がない場合。
NotFound -- 招待が無効または期限切れの場合。
HTTPException -- 招待の取り消しに失敗した場合。
- await fetch_widget(guild_id, /)¶
This function is a coroutine.
ギルドIDから
Widget
を取得します。注釈
この情報を取得するためには、ギルドのウィジェットを有効化しておく必要があります。
バージョン 2.0 で変更: 引数
guild_id
は位置専用引数となりました。- パラメータ
guild_id (
int
) -- ギルドのID。- 例外
Forbidden -- Guildのウィジェットが無効になっている場合。
HTTPException -- ウィジェットの取得に失敗した場合。
- 戻り値
ギルドのウィジェット。
- 戻り値の型
- await application_info()¶
This function is a coroutine.
Botのアプリケーション情報を取得します。
- 例外
HTTPException -- 情報の取得に失敗した場合。
- 戻り値
Botのアプリケーション情報。
- 戻り値の型
- await fetch_user(user_id, /)¶
This function is a coroutine.
IDをもとに
User
を取得します。そのユーザーとギルドを共有する必要はありませんが、操作の多くはそれを必要とします。注釈
このメソッドはAPIを呼び出します。
discord.Intents.members
とメンバーキャッシュを有効化している場合は、get_user()
の使用を検討してください。バージョン 2.0 で変更:
user_id
引数は位置限定引数になりました。- パラメータ
user_id (
int
) -- 取得したいユーザーのID。- 例外
NotFound -- この ID を持つユーザーが存在しない場合。
HTTPException -- ユーザーの取得に失敗した場合。
- 戻り値
あなたがリクエストしたユーザー。
- 戻り値の型
- await fetch_channel(channel_id, /)¶
This function is a coroutine.
指定されたIDを持つ
abc.GuildChannel
、abc.PrivateChannel
、またはThread
を取得します。注釈
このメソッドはAPIを呼び出します。通常は
get_channel()
を代わりとして使用してください。バージョン 1.2 で追加.
バージョン 2.0 で変更:
channel_id
引数は位置限定引数になりました。- 例外
InvalidData -- まだ定義されていないチャンネルタイプがDiscord Apiから受信された場合。
HTTPException -- チャンネルの取得に失敗した場合。
NotFound -- 引数が無効なチャンネル IDである場合。
Forbidden -- このチャンネルからメッセージを取得する権限がない場合。
- 戻り値
IDから取得したチャンネル。
- 戻り値の型
Union[
abc.GuildChannel
,abc.PrivateChannel
,Thread
]
- await fetch_webhook(webhook_id, /)¶
This function is a coroutine.
特定のIDの
Webhook
を取得します。バージョン 2.0 で変更:
webhook_id
引数は位置限定引数になりました。- 例外
HTTPException -- Webhookの取得に失敗した場合。
NotFound -- 無効なWebhookのIDだった場合。
Forbidden -- Webhookを取得する権限がない場合。
- 戻り値
要求したWebhook。
- 戻り値の型
- await fetch_sticker(sticker_id, /)¶
This function is a coroutine.
特定のIDの
Sticker
を取得します。バージョン 2.0 で追加.
- 例外
HTTPException -- スタンプの取得に失敗した場合。
NotFound -- スタンプIDが無効な場合。
- 戻り値
要求されたスタンプ。
- 戻り値の型
Union[
StandardSticker
,GuildSticker
]
- await fetch_skus()¶
This function is a coroutine.
Retrieves the bot's available SKUs.
バージョン 2.4 で追加.
- 例外
MissingApplicationID -- The application ID could not be found.
HTTPException -- Retrieving the SKUs failed.
- 戻り値
The bot's available SKUs.
- 戻り値の型
List[
SKU
]
- await fetch_entitlement(entitlement_id, /)¶
This function is a coroutine.
Retrieves a
Entitlement
with the specified ID.バージョン 2.4 で追加.
- パラメータ
entitlement_id (
int
) -- The entitlement's ID to fetch from.- 例外
NotFound -- An entitlement with this ID does not exist.
MissingApplicationID -- The application ID could not be found.
HTTPException -- Fetching the entitlement failed.
- 戻り値
The entitlement you requested.
- 戻り値の型
- async for ... in entitlements(*, limit=100, before=None, after=None, skus=None, user=None, guild=None, exclude_ended=False)¶
Retrieves an asynchronous iterator of the
Entitlement
that applications has.バージョン 2.4 で追加.
サンプル
使い方
async for entitlement in client.entitlements(limit=100): print(entitlement.user_id, entitlement.ends_at)
リストへフラット化
entitlements = [entitlement async for entitlement in client.entitlements(limit=100)] # entitlements is now a list of Entitlement...
すべてのパラメータがオプションです。
- パラメータ
limit (Optional[
int
]) -- The number of entitlements to retrieve. IfNone
, it retrieves every entitlement for this application. Note, however, that this would make it a slow operation. Defaults to100
.before (Optional[Union[
Snowflake
,datetime.datetime
]]) -- Retrieve entitlements before this date or entitlement. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time.after (Optional[Union[
Snowflake
,datetime.datetime
]]) -- Retrieve entitlements after this date or entitlement. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time.skus (Optional[Sequence[
Snowflake
]]) -- A list of SKUs to filter by.user (Optional[
Snowflake
]) -- The user to filter by.guild (Optional[
Snowflake
]) -- The guild to filter by.exclude_ended (
bool
) -- Whether to exclude ended entitlements. Defaults toFalse
.
- 例外
MissingApplicationID -- The application ID could not be found.
HTTPException -- Fetching the entitlements failed.
TypeError --
after
とbefore
の両方が渡された場合。Discordはこのタイプのページネーションをサポートしていません。
- 列挙
Entitlement
-- The entitlement with the application.
- await create_entitlement(sku, owner, owner_type)¶
This function is a coroutine.
Creates a test
Entitlement
for the application.バージョン 2.4 で追加.
- パラメータ
sku (
Snowflake
) -- The SKU to create the entitlement for.owner (
Snowflake
) -- The ID of the owner.owner_type (
EntitlementOwnerType
) -- The type of the owner.
- 例外
MissingApplicationID -- The application ID could not be found.
NotFound -- The SKU or owner could not be found.
HTTPException -- Creating the entitlement failed.
This function is a coroutine.
利用可能なプレミアムスタンプパックをすべて取得します。
バージョン 2.0 で追加.
- 例外
HTTPException -- スタンプパックの取得に失敗した場合。
- 戻り値
利用可能なプレミアムスタンプパックすべて。
- 戻り値の型
List[
StickerPack
]
- await create_dm(user)¶
This function is a coroutine.
このユーザーと
DMChannel
を作成します。これは、ほとんどの人にとっては自動で行われるため、呼び出す必要はめったにありません。
バージョン 2.0 で追加.
- add_dynamic_items(*items)¶
Registers
DynamicItem
classes for persistent listening.This method accepts class types rather than instances.
バージョン 2.4 で追加.
- パラメータ
*items (Type[
DynamicItem
]) -- The classes of dynamic items to add.- 例外
TypeError -- A class is not a subclass of
DynamicItem
.
- remove_dynamic_items(*items)¶
Removes
DynamicItem
classes from persistent listening.This method accepts class types rather than instances.
バージョン 2.4 で追加.
- パラメータ
*items (Type[
DynamicItem
]) -- The classes of dynamic items to remove.- 例外
TypeError -- A class is not a subclass of
DynamicItem
.
- add_view(view, *, message_id=None)¶
View
を永続的にインタラクションを受け取るために登録します。このメソッドは、ビューがプログラムのライフサイクルを超えて存在するコンポーネントで構成されている場合に利用すべきです。
バージョン 2.0 で追加.
- パラメータ
view (
discord.ui.View
) -- ディスパッチするために登録するビュー。message_id (Optional[
int
]) -- ビューが添付されたメッセージID。これは現在、ビューの状態をメッセージ更新のイベント後に更新するのに使用されています。与えられていない場合はメッセージ更新のイベントはビューに伝播されません。
- 例外
TypeError -- ビューが渡されない場合。
ValueError -- ビューが永続しないか、すでに終了している場合。永続するビューにはタイムアウトがなく、すべてのコンポーネントに明示的に渡された custom_id があります。
AutoShardedClient¶
- asyncchange_presence
- asyncclose
- asyncconnect
- defget_shard
- defis_ws_ratelimited
- class discord.AutoShardedClient(*args, intents, **kwargs)¶
このクライアントは
Client
に似ていますが、複雑なシャーディングの処理をユーザーに変わって処理し、管理しやすく、かつ透過的なシングルプロセスのボットとして動かせるようにするという点が異なります。このクライアントは、実装に関して内部的に複数のシャードに分割されていても、単一のシャードの通常の
Client
のように使用することができます。これにより、IPCやその他の複雑なインフラストラクチャへの対処を行う必要がなくなります。少なくとも1000を超えるギルドに参加していいる場合にのみ、このクライアントを使用することを推奨します。
shard_count
が指定されていない場合、ライブラリはBot Gatewayのエンドポイント呼び出しを使用して使用するシャードの数を見つけ出します。shard_ids
パラメータが指定されている場合、それらのシャードIDが内部シャードの起動時に使用されます。これを使用する場合shard_count
の指定が必須です。このパラメータを省略した場合は、クライアントは0からshard_count - 1
までのシャードを起動します。- async with x
非同期的にクライアントを初期化し自動でクリーンアップします。
バージョン 2.0 で追加.
- shard_connect_timeout¶
The maximum number of seconds to wait before timing out when launching a shard. Defaults to 180 seconds.
バージョン 2.4 で追加.
- 型
Optional[
float
]
- property latency¶
HEARTBEATとHEARTBEAT_ACK間の待ち時間を秒単位で測定します。
これは
Client.latency()
と同様に機能しますが、すべてのシャードの平均待ち時間を使用する点が異なります。シャードの待ち時間のリストを取得するにはlatencies
プロパティを参照してください。準備ができていない場合はnan
を返します。- 型
- property latencies¶
HEARTBEATとHEARTBEAT_ACK間の待ち時間を秒単位で測定したもののリストです。
これは、
(shard_id, latency)
の要素を持つタプルのリストを返します。
- get_shard(shard_id, /)¶
渡されたシャードIDのシャード情報を取得します。見つからない場合は
None
が返ります。バージョン 2.0 で変更: 引数
shard_id
は位置専用引数となりました。- 戻り値
渡されたシャードIDのシャード情報。見つからない場合は
None
が返ります。- 戻り値の型
Optional[
ShardInfo
]
- await connect(*, reconnect=True)¶
This function is a coroutine.
WebSocket接続を作成し、Discordからのメッセージを受け取れるようにします。これはイベントシステム全体とライブラリの様々な機能を実行するループです。WebSocket接続が終了するまで、制御は再開されません。
- パラメータ
reconnect (
bool
) -- インターネットの障害やDiscord側の特定の障害が発生した際に再接続を試みるかどうか。不正な状態による特定の切断 (無効なシャーディングペイロードや不正なトークンなど) は処理されません。- 例外
GatewayNotFound -- Discordに接続するためのゲートウェイが見つからない場合。通常、この例外はDiscord APIの停止によって引き起こされます。
ConnectionClosed -- WebSocket接続が終了した場合。
- await change_presence(*, activity=None, status=None, shard_id=None)¶
This function is a coroutine.
クライアントのプレゼンスを変更します。
例:
game = discord.Game("with the API") await client.change_presence(status=discord.Status.idle, activity=game)
バージョン 2.0 で変更: キーワード専用引数
afk
を削除しました。バージョン 2.0 で変更: この関数は
InvalidArgument
の代わりにTypeError
を送出します。- パラメータ
activity (Optional[
BaseActivity
]) -- 実行中のアクティビティ。何も実行していない場合はNone
です。status (Optional[
Status
]) -- 変更するステータスを示します。None
の場合、Status.online
となります。shard_id (Optional[
int
]) -- プレゼンスを変更したいシャードのshard_id。指定されていない、またはNone
が渡された場合はBotがアクセスできるすべてのシャードのプレゼンスが変更されます。
- 例外
TypeError --
activity
パラメータが適切な型でない場合。
- is_ws_ratelimited()¶
bool
: WebSocketにレート制限が課されているかどうかを指します。これはメンバーを取得する際、HTTPを利用するか、ゲートウェイを介して行うかを決定するときに知っておくと役立ちます。
この実装は、シャードのいずれかがレート制限下にあるかどうかを確認します。より細かな制御が行いたい場合は
ShardInfo.is_ws_ratelimited()
の使用を検討してください。バージョン 1.6 で追加.
アプリケーション情報¶
AppInfo¶
- approximate_guild_count
- bot_public
- bot_require_code_grant
- cover_image
- custom_install_url
- description
- flags
- guild
- guild_id
- icon
- id
- install_params
- interactions_endpoint_url
- name
- owner
- primary_sku_id
- privacy_policy_url
- redirect_uris
- role_connections_verification_url
- rpc_origins
- slug
- tags
- team
- terms_of_service_url
- verify_key
- asyncedit
- class discord.AppInfo¶
Discordが提供するBotのアプリケーション情報。
- primary_sku_id¶
このアプリケーションがDiscord上で販売されているゲームの場合、この属性は作成された「Game SKU」が存在する場合は、そのIDになります。
バージョン 1.3 で追加.
- 型
Optional[
int
]
- slug¶
このアプリケーションがDiscord上で販売されているゲームの場合、この属性はストアページにリンクするURLのスラッグになります。
バージョン 1.3 で追加.
- 型
Optional[
str
]
- install_params¶
有効な場合、アプリケーションのカスタム認可URLの設定。
バージョン 2.0 で追加.
- 型
Optional[
AppInstallParams
]
- role_connections_verification_url¶
アプリケーションをギルドのロール紐づけ設定にて紐づけ方法として扱うようにするための、アプリケーションの接続確認URL。
バージョン 2.2 で追加.
- 型
Optional[
str
]
- interactions_endpoint_url¶
設定されている場合、ゲートウェイではなくエンドポイントからインタラクションを受け取るアプリケーションの、インタラクションエンドポイントのURI。
バージョン 2.4 で追加.
- 型
Optional[
str
]
- property cover_image¶
存在する場合は、ストアの埋め込みのカバー画像を取得します。
これはアプリケーションがDiscordで販売されているゲームの場合にのみ利用できます。
- 型
Optional[
Asset
]
- property guild¶
このアプリケーションがDiscord上で販売されているゲームの場合、この属性は紐づけられたギルドになります。
バージョン 1.3 で追加.
- 型
Optional[
Guild
]
- property flags¶
アプリケーションのフラグ。
バージョン 2.0 で追加.
- await edit(*, reason=..., custom_install_url=..., description=..., role_connections_verification_url=..., install_params_scopes=..., install_params_permissions=..., flags=..., icon=..., cover_image=..., interactions_endpoint_url=..., tags=...)¶
This function is a coroutine.
Edits the application info.
バージョン 2.4 で追加.
- パラメータ
custom_install_url (Optional[
str
]) -- The new custom authorization URL for the application. Can beNone
to remove the URL.description (Optional[
str
]) -- The new application description. Can beNone
to remove the description.role_connections_verification_url (Optional[
str
]) -- The new application’s connection verification URL which will render the application as a verification method in the guild’s role verification configuration. Can beNone
to remove the URL.install_params_scopes (Optional[List[
str
]]) -- The new list of OAuth2 scopes of theinstall_params
. Can beNone
to remove the scopes.install_params_permissions (Optional[
Permissions
]) -- The new permissions of theinstall_params
. Can beNone
to remove the permissions.flags (Optional[
ApplicationFlags
]) --The new application’s flags. Only limited intent flags (
gateway_presence_limited
,gateway_guild_members_limited
,gateway_message_content_limited
) can be edited. Can beNone
to remove the flags.警告
Editing the limited intent flags leads to the termination of the bot.
icon (Optional[
bytes
]) -- The new application’s icon as a bytes-like object. Can beNone
to remove the icon.cover_image (Optional[
bytes
]) -- The new application’s cover image as a bytes-like object on a store embed. The cover image is only available if the application is a game sold on Discord. Can beNone
to remove the image.interactions_endpoint_url (Optional[
str
]) -- The new interactions endpoint url of the application to receive interactions over this endpoint rather than over the gateway. Can beNone
to remove the URL.tags (Optional[List[
str
]]) -- The new list of tags describing the functionality of the application. Can beNone
to remove the tags.reason (Optional[
str
]) -- The reason for editing the application. Shows up on the audit log.
- 例外
HTTPException -- Editing the application failed
ValueError -- The image format passed in to
icon
orcover_image
is invalid. This is also raised wheninstall_params_scopes
andinstall_params_permissions
are incompatible with each other.
- 戻り値
The newly updated application info.
- 戻り値の型
PartialAppInfo¶
- class discord.PartialAppInfo¶
create_invite()
により与えられた部分的なAppInfo。バージョン 2.0 で追加.
- interactions_endpoint_url¶
設定されている場合、ゲートウェイではなくエンドポイントからインタラクションを受け取るアプリケーションの、インタラクションエンドポイントのURI。
バージョン 2.3 で追加.
- 型
Optional[
str
]
- role_connections_verification_url¶
アプリケーションをギルドのロール紐づけ設定にて紐づけ方法として扱うようにするための、アプリケーションの接続確認URL。
バージョン 2.3 で追加.
- 型
Optional[
str
]
- property cover_image¶
存在する場合は、アプリケーションの既定のリッチプレゼンスのカバー画像を取得します。
これはアプリケーションがDiscordで販売されているゲームの場合にのみ利用できます。
バージョン 2.3 で追加.
- 型
Optional[
Asset
]
- property flags¶
アプリケーションのフラグ。
バージョン 2.0 で追加.
AppInstallParams¶
- class discord.AppInstallParams¶
アプリケーションのカスタム認可URLの設定。
バージョン 2.0 で追加.
- scopes¶
アプリケーションをギルドに追加するときの OAuth2 スコープ のリスト。
- 型
List[
str
]
- permissions¶
ギルドに追加するアプリケーションに与える権限。
Team¶
TeamMember¶
- defmentioned_in
- class discord.TeamMember¶
チームのメンバー。
- x == y
二つのチームメンバーが等しいかを比較します。
- x != y
二つのチームメンバーが等しくないかを比較します。
- hash(x)
チームメンバーのハッシュ値を返します。
- str(x)
チームメンバーのハンドル(例えば
name
やname#discriminator
など)を返します。
バージョン 1.3 で追加.
- membership_state¶
メンバーの参加状態 (例:招待されたか、承認されたか)
- role¶
The role of the member within the team.
バージョン 2.4 で追加.
- property accent_color¶
該当する場合、ユーザーのアクセントカラーを返します。
ユーザーのアクセントカラーはバナーがない場合にのみ表示されます。 これは、ユーザーが明示的に色を設定した場合にのみ利用可能です。
accent_colour
という名前のエイリアスが存在します。バージョン 2.0 で追加.
注釈
この情報は
Client.fetch_user()
経由でのみ入手できます。- 型
Optional[
Colour
]
- property accent_colour¶
該当する場合、ユーザーのアクセントカラーを返します。
ユーザーのアクセントカラーはバナーがない場合にのみ表示されます。 これは、ユーザーが明示的に色を設定した場合にのみ利用可能です。
accent_color
という名前のエイリアスが存在します。バージョン 2.0 で追加.
注釈
この情報は
Client.fetch_user()
経由でのみ入手できます。- 型
Optional[
Colour
]
- property avatar¶
ユーザーのアバターの
Asset
を返します。ユーザーがグローバルのアバターをアップロードしていない場合は、
None
が返されます。ユーザーが表示しているアバターを取得したい場合は、display_avatar
を検討してください。- 型
Optional[
Asset
]
- property avatar_decoration¶
Returns an
Asset
for the avatar decoration the user has.If the user has not set an avatar decoration,
None
is returned.バージョン 2.4 で追加.
- 型
Optional[
Asset
]
- property avatar_decoration_sku_id¶
Returns the SKU ID of the avatar decoration the user has.
If the user has not set an avatar decoration,
None
is returned.バージョン 2.4 で追加.
- 型
Optional[
int
]
- property banner¶
利用できる場合、ユーザーのバナーのアセットを返します。
バージョン 2.0 で追加.
注釈
この情報は
Client.fetch_user()
経由でのみ入手できます。- 型
Optional[
Asset
]
- property color¶
レンダリングされる色を返すプロパティ。これは常に
Colour.default()
を返します。colour
という名前のエイリアスが存在します。- 型
- property colour¶
レンダリングされる色を返すプロパティ。これは常に
Colour.default()
を返します。color
という名前のエイリアスが存在します。- 型
- property created_at¶
ユーザーの作成された時間をUTCで返します。
これはユーザーのDiscordアカウントが作成された時間です。
- property display_avatar¶
ユーザーの表示されるアバターを返します。
通常のユーザーの場合は、これはデフォルトのアバターか、アップロードされたアバターです。
バージョン 2.0 で追加.
- 型
- property display_name¶
ユーザーの表示名を返します。
通常であれば、これはグローバル表示名またはユーザー名がそのまま返りますが、ギルドにてニックネームを設定している場合は、代替としてニックネームが返ります。
- 型
- mentioned_in(message)¶
指定のメッセージにユーザーに対するメンションが含まれているかを確認します。
- property public_flags¶
ユーザーが持っている公開のフラグ。
イベントリファレンス¶
この項目では Client
が受け取る様々なイベントについて説明します。
イベントを登録する方法は二通りあります。一つ目は Client.event()
を使用する方法です。二つ目は Client
を継承してサブクラスを作り、イベントをオーバーライドする方法です。この方法を用いた場合は以下のようになります:
import discord
class MyClient(discord.Client):
async def on_message(self, message):
if message.author == self.user:
return
if message.content.startswith('$hello'):
await message.channel.send('Hello World!')
イベントハンドラが例外を発生させると、それを処理するために on_error()
が呼び出されます。 デフォルトではトレースバックがログに記録され、例外は無視されます。
警告
すべてのイベントは coroutine である必要があります。 coroutine でない場合、予期せぬエラーが発生する可能性があります。関数をコルーチンにするには、関数定義の際に async def
を使用してください。
アプリケーションコマンド¶
- discord.on_raw_app_command_permissions_update(payload)¶
アプリケーションコマンドの権限が更新されたときに呼び出されます。
バージョン 2.0 で追加.
- パラメータ
payload (
RawAppCommandPermissionsUpdateEvent
) -- 生のイベントペイロードデータ。
- discord.on_app_command_completion(interaction, command)¶
app_commands.Command
またはapp_commands.ContextMenu
がエラーなく正常に実行したときに呼び出されます。バージョン 2.0 で追加.
- パラメータ
interaction (
Interaction
) -- コマンドのインタラクション。command (Union[
app_commands.Command
,app_commands.ContextMenu
]) -- 正常に実行されたコマンド。
AutoMod¶
- discord.on_automod_rule_create(rule)¶
AutoModRule
が作成されたときに呼び出されます。 受け取るにはmanage_guild
が必要です。Intents.auto_moderation_configuration
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
rule (
AutoModRule
) -- 作成されたルール。
- discord.on_automod_rule_update(rule)¶
AutoModRule
が更新されたときに呼び出されます。 受け取るにはmanage_guild
が必要です。Intents.auto_moderation_configuration
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
rule (
AutoModRule
) -- 変更されたルール。
- discord.on_automod_rule_delete(rule)¶
AutoModRule
が削除されたときに呼び出されます。 受け取るにはmanage_guild
が必要です。Intents.auto_moderation_configuration
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
rule (
AutoModRule
) -- 削除されたルール。
- discord.on_automod_action(execution)¶
AutoModAction
が作成/実行されたときに呼び出されます。 受け取るにはmanage_guild
が必要です。Intents.auto_moderation_execution
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
execution (
AutoModAction
) -- 行われたルールの実行。
Channels¶
- discord.on_guild_channel_delete(channel)¶
- discord.on_guild_channel_create(channel)¶
ギルドのチャンネルが削除・作成されたとき呼び出されます。
ギルドは
guild
で取得できます。Intents.guilds
を有効にする必要があります。- パラメータ
channel (
abc.GuildChannel
) -- 作成、または削除されたギルドチャンネル。
- discord.on_guild_channel_update(before, after)¶
ギルドチャンネルが更新されるたびに呼び出されます。例えば名前、トピック、権限の変更などです。
Intents.guilds
を有効にする必要があります。- パラメータ
before (
abc.GuildChannel
) -- 更新されたギルドの更新前情報。after (
abc.GuildChannel
) -- 更新されたギルドの更新後情報。
- discord.on_guild_channel_pins_update(channel, last_pin)¶
ギルドチャンネルのメッセージがピン留めされたり、解除されたりしたときに呼び出されます。
Intents.guilds
を有効にする必要があります。- パラメータ
channel (Union[
abc.GuildChannel
,Thread
]) -- ピン留めが更新されたギルドチャンネル。last_pin (Optional[
datetime.datetime
]) -- 最後にピン留めされたメッセージがピン留めされたUTC aware datetime。None
の場合もあります。
- discord.on_private_channel_update(before, after)¶
プライベートグループDMが更新されたとき呼び出されます。 例: 名前やトピックの変更。
Intents.messages
を有効にする必要があります。- パラメータ
before (
GroupChannel
) -- 更新されたグループチャンネルの更新前情報。after (
GroupChannel
) -- 更新されたグループチャンネルの更新後情報。
- discord.on_private_channel_pins_update(channel, last_pin)¶
プライベートチャンネルのメッセージがピン留めされたりはずされたりしたときに呼ばれます。
- パラメータ
channel (
abc.PrivateChannel
) -- ピン留めが更新されたプライベートチャンネル。last_pin (Optional[
datetime.datetime
]) -- 最後にピン留めされたメッセージがピン留めされたUTC aware datetime。None
の場合もあります。
- discord.on_typing(channel, user, when)¶
誰かがメッセージを入力し始めたときに呼び出されます。
channel
パラメータはabc.Messageable
インスタンスにすることができます。TextChannel
、GroupChannel
、またはDMChannel
のいずれかです。channel
がTextChannel
である場合、user
パラメータはMember
、それ以外の場合はUser
です。チャンネルまたはユーザーが内部キャッシュで見つからない場合、このイベントは呼び出されません。代わりに
on_raw_typing()
を使用してください。Intents.typing
を有効にする必要があります。- パラメータ
channel (
abc.Messageable
) -- 入力が行われたチャンネル。when (
datetime.datetime
) -- UTCのaware datetimeでの、タイピングの開始時刻。
- discord.on_raw_typing(payload)¶
誰かがメッセージを入力し始めたときに呼び出されます。
on_typing()
とは異なり、これはチャンネルやユーザーが内部キャッシュに存在するかどうかに関係なく呼び出されます。Intents.typing
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
payload (
RawTypingEvent
) -- 生のイベントペイロードデータ。
Connection¶
- discord.on_connect()¶
クライアントがDiscordに正常に接続できたときに呼び出されます。クライアントの準備が完了していることと同義ではありません。
on_ready()
を参照してください。on_ready()
での警告も適用されます。
- discord.on_disconnect()¶
クライアントがDiscordから切断したときと、Discordへの接続の試行が失敗した場合に呼び出されます。これはインターネットが切断された、明示的にcloseメソッドを呼び出した、またはDiscord側から何らかの方法で切断されたというような場合に呼び出される可能性があります。
この関数は対応する
on_connect()
なしで複数回呼び出されることがあります。
- discord.on_shard_connect(shard_id)¶
特定のシャードIDを持つシャードがDiscordに接続したかどうかを確認するために
AutoShardedClient
で使用されることを除けばon_connect()
とほとんど同じです。バージョン 1.4 で追加.
- パラメータ
shard_id (
int
) -- 接続したシャードのID。
- discord.on_shard_disconnect(shard_id)¶
特定のシャードIDを持つシャードがDiscordから切断したかどうかを確認するために
AutoShardedClient
で使用されることを除けばon_disconnect()
とほとんど同じです。バージョン 1.4 で追加.
- パラメータ
shard_id (
int
) -- 切断したシャードのID。
Debug¶
- discord.on_error(event, *args, **kwargs)¶
イベントがキャッチされない例外を発生させた場合、通常はトレースバックがstderrに記録され、その例外は無視されます。何らかの理由でこの動作を変更して、自分自身で例外処理を行いたい場合は、このイベントをオーバーライドすることができます。これを行った場合、トレースバックを出力するというデフォルトの動作は行われません。
発生した例外の情報と、例外事態は
sys.exc_info()
への標準呼び出しで取得できます。注釈
on_error
はClient.event()
でのみディスパッチされます。Client.wait_for()
や、使用している場合はlisten()
やlistener()
といった Bot のリスナーでは受信されません。バージョン 2.0 で変更: トレースバックが出力されず、ログに記録されるようになりました。
- パラメータ
event (
str
) -- 例外を発生させたイベントの名前。args -- 例外を発生させたイベントの位置引数。
kwargs -- 例外を発生させたイベントのキーワード引数。
- discord.on_socket_event_type(event_type)¶
WebSocketからWebSocketイベントが受信されるたびに呼び出されます。
これは主にDiscordゲートウェイから受け取るイベントの数を記録するのに便利です。
バージョン 2.0 で追加.
- パラメータ
event_type (
str
) -- Discordから受信されたイベントの種類。例:'READY'
。
- discord.on_socket_raw_receive(msg)¶
メッセージが処理され、パースされる前、WebSocketからメッセージが完全に受信されるたびに呼び出されます。このイベントは完全なメッセージを受信した場合に呼び出され、渡されたデータは一切パースされていません。
これはWebSocketストリームを取得してデバッグする時のみに役に立ちます。
使用する場合は
Client
にてenable_debug_events
を設定しないといけません。注釈
これは、クライアントWebSocketから受信したメッセージ専用です。音声WebSocketではこのイベントは実行されません。
- パラメータ
msg (
str
) -- WebSocketライブラリから渡されたメッセージ。
Entitlements¶
- discord.on_entitlement_create(entitlement)¶
Called when a user subscribes to a SKU.
バージョン 2.4 で追加.
- パラメータ
entitlement (
Entitlement
) -- The entitlement that was created.
- discord.on_entitlement_update(entitlement)¶
Called when a user updates their subscription to a SKU. This is usually called when the user renews or cancels their subscription.
バージョン 2.4 で追加.
- パラメータ
entitlement (
Entitlement
) -- The entitlement that was updated.
- discord.on_entitlement_delete(entitlement)¶
Called when a users subscription to a SKU is cancelled. This is typically only called when:
Discord issues a refund for the subscription.
Discord removes an entitlement from a user.
警告
This event won't be called if the user cancels their subscription manually, instead
on_entitlement_update()
will be called withEntitlement.ends_at
set to the end of the current billing period.バージョン 2.4 で追加.
- パラメータ
entitlement (
Entitlement
) -- The entitlement that was deleted.
Gateway¶
- discord.on_ready()¶
クライアントがDiscordから受信したデータの準備を完了した際に呼び出されます。通常はログインが成功したあと、
Client.guilds
とそれに関連するものの準備が完了したときです。警告
このイベントは、最初に呼び出されるイベントとは限りません。同時に、このイベントは 一度だけ呼ばれるという保証もできません 。このライブラリは、再接続ロジックを実装しているためリジューム要求が失敗するたびにこのイベントが呼び出されることになります。
- discord.on_resumed()¶
クライアントがセッションを再開したときに呼び出されます。
- discord.on_shard_ready(shard_id)¶
特定の Shard IDが準備完了になったかを確認するために
AutoShardedClient
で使用される以外はon_ready()
とほとんど同じです。- パラメータ
shard_id (
int
) -- 準備が完了したShard ID。
- discord.on_shard_resumed(shard_id)¶
特定のシャードIDを持つシャードがセッションを再開したかどうかを確認するために
AutoShardedClient
で使用されることを除けばon_resumed()
とほとんど同じです。バージョン 1.4 で追加.
- パラメータ
shard_id (
int
) -- セッションが再開したシャードのID。
Guilds¶
- discord.on_guild_available(guild)¶
ギルドが利用可能・不可能になったときに呼び出されます。ギルドは
Client.guilds
キャッシュに存在していないといけません。Intents.guilds
を有効にする必要があります。- パラメータ
guild -- 利用状況が変わった
Guild
。
- discord.on_guild_join(guild)¶
Client
によってGuild
が作成された。またはClient
がギルドに参加したときに呼び出されます。Intents.guilds
を有効にする必要があります。- パラメータ
guild (
Guild
) -- 参加したギルド。
- discord.on_guild_remove(guild)¶
Client
がGuild
から削除されたときに呼び出されます。これは以下の状況時に呼び出されますが、これに限ったものではありません:
クライアントがBANされた。
クライアントがキックされた。
クライアントがギルドから脱退した。
クライアント、またはギルドオーナーがギルドを削除した。
このイベントが呼び出されるためには、
Client
がギルドに参加している必要があります。(つまり、Client.guilds
にギルドが存在しなければならない)Intents.guilds
を有効にする必要があります。- パラメータ
guild (
Guild
) -- 削除されたギルド。
- discord.on_guild_update(before, after)¶
Guild
が更新されたときに呼び出されます。例えば:名前が変更された
AFKチャンネルが変更された
AFKのタイムアウト時間が変更された
その他
Intents.guilds
を有効にする必要があります。
- discord.on_guild_emojis_update(guild, before, after)¶
Guild
にEmoji
が追加、または削除されたときに呼び出されます。Intents.emojis_and_stickers
を有効にする必要があります。
- discord.on_guild_stickers_update(guild, before, after)¶
Guild
のスタンプが更新されたときに呼び出されます。Intents.emojis_and_stickers
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
guild (
Guild
) -- スタンプが更新されたギルド。before (Sequence[
GuildSticker
]) -- 更新前のスタンプのリスト。after (Sequence[
GuildSticker
]) -- 更新後のスタンプのリスト。
- discord.on_audit_log_entry_create(entry)¶
Guild
に新しい監査ログ項目が追加されたときに呼び出されます。これを受け取るにはview_audit_log
が必要です。Intents.moderation
を有効にする必要があります。バージョン 2.2 で追加.
警告
ゲートウェイ経由で取得した監査ログ項目はデータをRESTではなくキャッシュから取得します。このため、一部のデータが不足している場合があります。例えば、
AuditLogEntry.target
属性は多くの場合discord.Object
になり、AuditLogEntry.user
属性はユーザーとメンバーキャッシュに依存します。項目のユーザーIDを取得するには、代わりに
AuditLogEntry.user_id
を使用できます。- パラメータ
entry (
AuditLogEntry
) -- 作成された監査ログの項目。
- discord.on_invite_create(invite)¶
Invite
が作成されたときに呼び出されます。 受け取るにはmanage_channels
が必要です。バージョン 1.3 で追加.
注釈
まれに
Invite.guild
とInvite.channel
属性がそれぞれの本来のモデルではなくObject
になることがあります。Intents.invites
を有効にする必要があります。- パラメータ
invite (
Invite
) -- 作成された招待。
- discord.on_invite_delete(invite)¶
Invite
が削除されたときに呼び出されます。 受け取るにはmanage_channels
が必要です。バージョン 1.3 で追加.
注釈
まれに
Invite.guild
とInvite.channel
属性がそれぞれの本来のモデルではなくObject
になることがあります。これらの属性以外では、Discordゲートウェイによってこのイベントに与えられているのが保証されている属性は
Invite.code
のみです。Intents.invites
を有効にする必要があります。- パラメータ
invite (
Invite
) -- 削除された招待。
Integrations¶
- discord.on_integration_create(integration)¶
連携サービスが作成されたときに呼び出されます。
Intents.integrations
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
integration (
Integration
) -- 作成された連携サービス。
- discord.on_integration_update(integration)¶
連携サービスが更新されたときに呼び出されます。
Intents.integrations
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
integration (
Integration
) -- 更新された連携サービス。
- discord.on_guild_integrations_update(guild)¶
ギルドの連携サービスが作成、更新、削除されるたびに呼び出されます。
Intents.integrations
を有効にする必要があります。バージョン 1.4 で追加.
- パラメータ
guild (
Guild
) -- 連携サービスが更新されたギルド。
- discord.on_webhooks_update(channel)¶
ギルドチャンネルのWebhookが作成、更新、削除されたときに呼び出されます。
Intents.webhooks
を有効にする必要があります。- パラメータ
channel (
abc.GuildChannel
) -- Webhookが更新されたチャンネル。
- discord.on_raw_integration_delete(payload)¶
連携サービスが削除されたときに呼び出されます。
Intents.integrations
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
payload (
RawIntegrationDeleteEvent
) -- 生のイベントペイロードデータ。
Interactions¶
- discord.on_interaction(interaction)¶
インタラクションが発生したときに呼び出されます。
これは、現在はスラッシュコマンドの呼び出しやコンポーネントの使用により起こります。
警告
これは、一般的な使用を意図していない低レベル関数です。コンポーネントを使用している場合は、よりよいユーザーエクスペリエンスを提供する
View
のコールバックの使用を検討してください。バージョン 2.0 で追加.
- パラメータ
interaction (
Interaction
) -- インタラクションデータ。
Members¶
- discord.on_member_join(member)¶
Member
がGuild
に参加したときに呼び出されます。Intents.members
を有効にする必要があります。- パラメータ
member (
Member
) -- 参加したメンバー。
- discord.on_member_remove(member)¶
Member
がGuild
から脱退したときに呼び出されます。ギルドまたはメンバーが内部キャッシュで見つからない場合、このイベントは呼び出されません。代わりに
on_raw_member_remove()
を使用してください。Intents.members
を有効にする必要があります。- パラメータ
member (
Member
) -- 脱退したメンバー。
- discord.on_raw_member_remove(payload)¶
Member
がGuild
から脱退したときに呼び出されます。on_member_remove()
とは異なり、ギルドやメンバーが内部キャッシュに存在するかどうかに関係なく呼び出されます。Intents.members
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
payload (
RawMemberRemoveEvent
) -- 生のイベントペイロードデータ。
- discord.on_member_update(before, after)¶
Member
のプロフィールが更新されたときに呼び出されます。これらのうちひとつ以上が変更されたとき呼び出されます:
ニックネーム
roles
ペンディング状態
タイムアウト
ギルドアバター
flags
Discordの制限により、このイベントはメンバーのタイムアウト期間が満了した場合には発生しません。
Intents.members
を有効にする必要があります。
- discord.on_user_update(before, after)¶
User
がプロフィールを編集したとき呼び出されます。これらのうちひとつ以上が変更されたとき呼び出されます:
アバター
ユーザー名
タグ
Intents.members
を有効にする必要があります。
- discord.on_member_ban(guild, user)¶
Called when a user gets banned from a
Guild
.Intents.moderation
を有効にする必要があります。
- discord.on_member_unban(guild, user)¶
User
がGuild
のBANを解除されたとき呼び出されます。Intents.moderation
を有効にする必要があります。
- discord.on_presence_update(before, after)¶
Member
がプレゼンスを変更したとき呼び出されます。これらのうちひとつ以上が変更されたとき呼び出されます:
ステータス
アクティビティ
これを使用するには
Intents.presences
とIntents.members
を有効にしないといけません。バージョン 2.0 で追加.
Messages¶
- discord.on_message(message)¶
Message
が作成され送信されたときに呼び出されます。Intents.messages
を有効にする必要があります。警告
Botのメッセージとプライベートメッセージはこのイベントを通して送信されます。Botのプログラムによっては「再帰呼び出し」を続けることになります。Botが自分自身に返信しないようにするためにはユーザーIDを確認する方法が考えられます。
Bot
にはこの問題は存在しません。- パラメータ
message (
Message
) -- 現在のメッセージ。
- discord.on_message_edit(before, after)¶
Message
が更新イベントを受け取ったときに呼び出されます。メッセージが内部のメッセージキャッシュに見つからない場合、このイベントは呼び出されません。これはメッセージが古すぎるか、クライアントが通信の多いギルドに参加している場合に発生します。発生する場合は
max_messages
パラメータの値を増加させるかon_raw_message_edit()
イベントを使用してください。以下の非網羅的ケースがこのイベントを発生させます:
メッセージをピン留め、または解除した。
メッセージの内容を変更した。
メッセージが埋め込みを受け取った。
パフォーマンス上の理由から、埋め込みのサーバーはこれを「一貫した」方法では行いません。
メッセージの埋め込みが削除されたり、復元されたりした。
通話呼び出しメッセージの参加者や終了時刻が変わった。
Intents.messages
を有効にする必要があります。
- discord.on_message_delete(message)¶
メッセージが削除された際に呼び出されます。メッセージが内部のメッセージキャッシュに見つからない場合、このイベントは呼び出されません。これはメッセージが古すぎるか、クライアントが通信の多いギルドに参加している場合に発生します。
発生する場合は
max_messages
パラメータの値を増加させるかon_raw_message_delete()
イベントを使用してください。Intents.messages
を有効にする必要があります。- パラメータ
message (
Message
) -- 削除されたメッセージ。
- discord.on_bulk_message_delete(messages)¶
メッセージが一括削除されたときに呼び出されます。メッセージが内部のメッセージキャッシュに見つからない場合、このイベントは呼び出されません。個々のメッセージが見つからない場合でも、このイベントは呼び出されますが、見つからなかったメッセージはメッセージのリストに含まれません。これはメッセージが古すぎるか、クライアントが通信の多いギルドに参加している場合に発生します。
発生する場合は
max_messages
パラメータの値を増加させるかon_raw_bulk_message_delete()
イベントを使用してください。Intents.messages
を有効にする必要があります。- パラメータ
messages (List[
Message
]) -- 削除されたメッセージのリスト。
- discord.on_raw_message_edit(payload)¶
メッセージが編集されたときに呼び出されます。
on_message_edit()
とは異なり、これは内部のメッセージキャッシュの状態に関係なく呼び出されます。メッセージがメッセージキャッシュに存在した場合、
RawMessageUpdateEvent.cached_message
を介してそのメッセージにアクセスすることができます。キャッシュされていたメッセージは編集前のメッセージです。たとえば、メッセージの内容が編集され、on_raw_message_edit()
が発火された場合、RawMessageUpdateEvent.cached_message
は内容が編集される前の情報を持つMessage
オブジェクトを返します。Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the gateway.
データのペイロードが部分的であるため、データにアクセスするときは気をつけてください。部分的なデータの主な場合のひとつは、
'content'
にアクセスできない場合です。Discordの埋め込みサーバーによって、埋め込みが更新される、"埋め込み"しか変わっていない編集がそうです。Intents.messages
を有効にする必要があります。- パラメータ
payload (
RawMessageUpdateEvent
) -- 生のイベントペイロードデータ。
- discord.on_raw_message_delete(payload)¶
メッセージが削除されたときに呼び出されます。
on_message_delete()
とは異なり、削除されたメッセージが内部キャッシュに存在するか否かにかかわらず呼び出されます。メッセージがメッセージキャッシュ内に見つかった場合、
RawMessageDeleteEvent.cached_message
を介してアクセスすることができます。Intents.messages
を有効にする必要があります。- パラメータ
payload (
RawMessageDeleteEvent
) -- 生のイベントペイロードデータ。
- discord.on_raw_bulk_message_delete(payload)¶
メッセージが一括削除されたときに呼び出されます。
on_bulk_message_delete()
とは異なり、削除されたメッセージが内部キャッシュに存在するか否かにかかわらず呼び出されます。メッセージがメッセージキャッシュ内に見つかった場合、
RawBulkMessageDeleteEvent.cached_messages
を介してアクセスすることができます。Intents.messages
を有効にする必要があります。- パラメータ
payload (
RawBulkMessageDeleteEvent
) -- 生のイベントペイロードデータ。
Polls¶
- discord.on_poll_vote_add(user, answer)¶
- discord.on_poll_vote_remove(user, answer)¶
Called when a
Poll
gains or loses a vote. If theuser
oranswer
's poll parent message are not cached then this event will not be called.This requires
Intents.message_content
andIntents.polls
to be enabled.注釈
If the poll allows multiple answers and the user removes or adds multiple votes, this event will be called as many times as votes that are added or removed.
バージョン 2.4 で追加.
- パラメータ
user (Union[
User
,Member
]) -- The user that performed the action.answer (
PollAnswer
) -- The answer the user voted or removed their vote from.
- discord.on_raw_poll_vote_add(payload)¶
- discord.on_raw_poll_vote_remove(payload)¶
Called when a
Poll
gains or loses a vote. Unlikeon_poll_vote_add()
andon_poll_vote_remove()
this is called regardless of the state of the internal user and message cache.This requires
Intents.message_content
andIntents.polls
to be enabled.注釈
If the poll allows multiple answers and the user removes or adds multiple votes, this event will be called as many times as votes that are added or removed.
バージョン 2.4 で追加.
- パラメータ
payload (
RawPollVoteActionEvent
) -- 生のイベントペイロードデータ。
Reactions¶
- discord.on_reaction_add(reaction, user)¶
メッセージにリアクションが追加されたときに呼び出されます。
on_message_edit()
と同様に内部メッセージキャッシュにメッセージが見つからない場合は、このイベントは呼び出されません。代わりにon_raw_reaction_add()
の利用を検討してください。注釈
リアクションの付いた
Message
を取得するには、Reaction.message
を使ってください。Intents.reactions
を有効にする必要があります。注釈
ギルド内では
Intents.members
は有効にしなくてもよいですが、DiscordがDM内では更新されたユーザーの情報を提供しないため、DMではこのインテントが必要です。 このイベントが必要でメンバーインテントを有効化したくない場合はon_raw_reaction_add()
の使用を検討してください。警告
This event does not have a way of differentiating whether a reaction is a burst reaction (also known as "super reaction") or not. If you need this, consider using
on_raw_reaction_add()
instead.
- discord.on_reaction_remove(reaction, user)¶
メッセージのリアクションが取り除かれたときに呼び出されます。on_message_editのように、内部のメッセージキャッシュにメッセージがないときには、このイベントは呼び出されません。
注釈
リアクションの付いたメッセージを取得するには、
Reaction.message
を使ってください。これを使用するには
Intents.reactions
とIntents.members
の両方を有効にしないといけません。注釈
このイベントが必要でメンバーインテントを有効化したくない場合は
on_raw_reaction_remove()
の使用を検討してください。警告
This event does not have a way of differentiating whether a reaction is a burst reaction (also known as "super reaction") or not. If you need this, consider using
on_raw_reaction_remove()
instead.
- discord.on_reaction_clear(message, reactions)¶
メッセージからすべてのリアクションが削除されたときに呼び出されます。
on_message_edit()
と同様に内部メッセージキャッシュにメッセージが見つからない場合は、このイベントは呼び出されません。代わりにon_raw_reaction_clear()
の利用を検討してください。Intents.reactions
を有効にする必要があります。
- discord.on_reaction_clear_emoji(reaction)¶
メッセージから特定の絵文字のリアクションが除去されたときに呼び出されます。
on_message_edit()
と同様に内部メッセージキャッシュにメッセージが見つからない場合は、このイベントは呼び出されません。代わりにon_raw_reaction_clear_emoji()
の利用を検討してください。Intents.reactions
を有効にする必要があります。バージョン 1.3 で追加.
- パラメータ
reaction (
Reaction
) -- 除去されたリアクション。
- discord.on_raw_reaction_add(payload)¶
メッセージにリアクションが追加されたときに呼び出されます。
on_reaction_add()
とは異なり、これは内部のメッセージキャッシュの状態に関係なく呼び出されます。Intents.reactions
を有効にする必要があります。- パラメータ
payload (
RawReactionActionEvent
) -- 生のイベントペイロードデータ。
- discord.on_raw_reaction_remove(payload)¶
メッセージからリアクションが削除されたときに呼び出されます。
on_reaction_remove()
とは異なり、これは内部メッセージキャッシュの状態に関係なく呼び出されます。Intents.reactions
を有効にする必要があります。- パラメータ
payload (
RawReactionActionEvent
) -- 生のイベントペイロードデータ。
- discord.on_raw_reaction_clear(payload)¶
メッセージからリアクションがすべて削除されたときに呼び出されます。
on_reaction_clear()
とは異なり、これは内部メッセージキャッシュの状態に関係なく呼び出されます。Intents.reactions
を有効にする必要があります。- パラメータ
payload (
RawReactionClearEvent
) -- 生のイベントペイロードデータ。
- discord.on_raw_reaction_clear_emoji(payload)¶
メッセージから特定の絵文字のリアクションがすべて除去されたときに呼び出されます。
on_reaction_clear_emoji()
とは異なり、これは内部メッセージキャッシュの状態に関係なく呼び出されます。Intents.reactions
を有効にする必要があります。バージョン 1.3 で追加.
- パラメータ
payload (
RawReactionClearEmojiEvent
) -- 生のイベントペイロードデータ。
Roles¶
- discord.on_guild_role_create(role)¶
- discord.on_guild_role_delete(role)¶
Guild
でRole
が新しく作成されたか、削除されたときに呼び出されます。ギルドを取得するには
Role.guild
を使用してください。Intents.guilds
を有効にする必要があります。- パラメータ
role (
Role
) -- 作成、または削除されたロール。
- discord.on_guild_role_update(before, after)¶
Role
がギルド全体で変更されたときに呼び出されます。Intents.guilds
を有効にする必要があります。
Scheduled Events¶
- discord.on_scheduled_event_create(event)¶
- discord.on_scheduled_event_delete(event)¶
ScheduledEvent
が作成または削除されたときに呼び出されます。Intents.guild_scheduled_events
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
event (
ScheduledEvent
) -- 作成、または削除されたスケジュールイベント。
- discord.on_scheduled_event_update(before, after)¶
ScheduledEvent
が変更されたときに呼び出されます。Intents.guild_scheduled_events
を有効にする必要があります。これらの場合に限りませんが、例を挙げると、以下の場合に呼び出されます:
スケジュールされた開始・終了時刻が変更された。
チャンネルが変更された時。
説明が変更された時。
ステータスが変更された時。
画像が変更された時。
バージョン 2.0 で追加.
- パラメータ
before (
ScheduledEvent
) -- 変更前のスケジュールイベント。after (
ScheduledEvent
) -- 変更後のスケジュールイベント。
- discord.on_scheduled_event_user_add(event, user)¶
- discord.on_scheduled_event_user_remove(event, user)¶
ScheduledEvent
からユーザーが追加または削除されたときに呼び出されます。Intents.guild_scheduled_events
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
event (
ScheduledEvent
) -- ユーザーが追加または削除されたスケジュールイベント。user (
User
) -- 追加・削除されたユーザー。
Stages¶
- discord.on_stage_instance_create(stage_instance)¶
- discord.on_stage_instance_delete(stage_instance)¶
StageChannel
のStageInstance
が作成または削除されたときに呼び出されます。バージョン 2.0 で追加.
- パラメータ
stage_instance (
StageInstance
) -- 作成、または削除されたステージインスタンス。
- discord.on_stage_instance_update(before, after)¶
StageInstance
が変更されたときに呼び出されます。これらの場合に限りませんが、例を挙げると、以下の場合に呼び出されます:
トピックが変更された時。
プライバシーレベルが変更された時。
バージョン 2.0 で追加.
- パラメータ
before (
StageInstance
) -- 更新前のステージインスタンス。after (
StageInstance
) -- 更新後のステージインスタンス。
Threads¶
- discord.on_thread_create(thread)¶
スレッドが作成されたときに発生します。
ギルドは
Thread.guild
から取得できます。Intents.guilds
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
thread (
Thread
) -- 作成されたスレッド。
- discord.on_thread_join(thread)¶
スレッドに参加したときに呼び出されます。
ギルドは
Thread.guild
から取得できます。Intents.guilds
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
thread (
Thread
) -- 参加したスレッド。
- discord.on_thread_update(before, after)¶
スレッドが更新されたときに呼び出されます。スレッドが内部キャッシュに見つからなかった場合、このイベントは呼び出されません。 スレッドがアーカイブされている場合、キャッシュには含まれません。
この情報が必要な場合は、代わりに
on_raw_thread_update()
を使用してください。Intents.guilds
を有効にする必要があります。バージョン 2.0 で追加.
- discord.on_thread_remove(thread)¶
スレッドが除去されたときに呼び出されます。これはスレッドの削除とは異なります。
ギルドは
Thread.guild
から取得できます。Intents.guilds
を有効にする必要があります。警告
技術的な制約のためこのイベントは期待通りの早さで呼び出されない場合があります。ライブラリーがスレッドの参加をローカルで追跡するため、APIは更新されたスレッドの参加状態をスレッドの参加時にのみ同期します。
バージョン 2.0 で追加.
- パラメータ
thread (
Thread
) -- 削除されたスレッド。
- discord.on_thread_delete(thread)¶
スレッドが削除されたときに呼び出されます。スレッドが内部キャッシュに見つからなかった場合、このイベントは呼び出されません。 スレッドがアーカイブされている場合、キャッシュには含まれません。
この情報が必要な場合は、代わりに
on_raw_thread_delete()
を使用してください。ギルドは
Thread.guild
から取得できます。Intents.guilds
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
thread (
Thread
) -- 削除されたスレッド。
- discord.on_raw_thread_update(payload)¶
スレッドが更新されたときに呼び出されます。
on_thread_update()
とは異なり、更新されたスレッドが内部キャッシュに存在するか否かにかかわらず呼び出されます。Intents.guilds
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
payload (
RawThreadUpdateEvent
) -- 生のイベントペイロードデータ。
- discord.on_raw_thread_delete(payload)¶
スレッドが削除されたときに呼び出されます。
on_thread_delete()
とは異なり、削除されたスレッドが内部キャッシュに存在するか否かにかかわらず呼び出されます。Intents.guilds
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
payload (
RawThreadDeleteEvent
) -- 生のイベントペイロードデータ。
- discord.on_thread_member_join(member)¶
- discord.on_thread_member_remove(member)¶
ThreadMember
がThread
に参加したり退出したりしたときに呼び出されます。メンバーが所属するスレッドは
ThreadMember.thread
から取得できます。Intents.members
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
member (
ThreadMember
) -- 参加、または脱退したメンバー。
- discord.on_raw_thread_member_remove(payload)¶
ThreadMember
がThread
を退出したときに呼び出されます。on_thread_member_remove()
とは異なり、メンバーが内部スレッドメンバーキャッシュに存在するかどうかに関係なく呼び出されます。Intents.members
を有効にする必要があります。バージョン 2.0 で追加.
- パラメータ
payload (
RawThreadMembersUpdate
) -- 生のイベントペイロードデータ。
Voice¶
- discord.on_voice_state_update(member, before, after)¶
Member
がVoiceState
を変更したとき呼び出されます。これらの場合に限りませんが、例を挙げると、以下の場合に呼び出されます:
メンバーがボイスチャンネルやステージチャンネルに参加したとき。
メンバーがボイスチャンネルやステージチャンネルから退出したとき。
メンバーが自身でマイクやスピーカーをミュートしたとき。
メンバーがギルドの管理者によってマイクやスピーカーをミュートされたとき。
Intents.voice_states
を有効にする必要があります。- パラメータ
member (
Member
) -- ボイスの状態が変わった Member 。before (
VoiceState
) -- 更新前のボイス状態。after (
VoiceState
) -- 更新後のボイス状態。
ユーティリティ関数¶
- discord.utils.find(predicate, iterable, /)¶
与えられた関数を満たす最初の要素を返すヘルパー。例:
member = discord.utils.find(lambda m: m.name == 'Mighty', channel.guild.members)
は、名前が'Mighty'である最初に見つかった
Member
を返します。見つからない場合はNone
を返します。これは、適切な値を見つけると止まる点で、
filter()
と異なります。バージョン 2.0 で変更: 両方の引数は位置限定引数になりました。
バージョン 2.0 で変更:
iterable
パラメータが asynchronous iterable をサポートするようになりました。- パラメータ
predicate -- 真偽値を返す関数。
iterable (Union[
collections.abc.Iterable
,collections.abc.AsyncIterable
]) -- 検索する反復可能オブジェクト。collections.abc.AsyncIterable
を使用する場合は、この関数は coroutine を返します。
- discord.utils.get(iterable, /, **attrs)¶
attrs
に渡されたすべての条件を満たす最初の要素を返すヘルパー。find()
の代替案です。複数の条件が指定されている場合、またはではなくかつでチェックされます。つまり、どれかではなく、すべての条件を満たさないといけません。
ネストされている属性で検索するとき (例:
x.y
で検索) は、キーワード引数にx__y
を渡してください。与えられた属性にマッチする項目がない場合、
None
を返します。バージョン 2.0 で変更:
iterable
引数は位置限定引数になりました。バージョン 2.0 で変更:
iterable
パラメータが asynchronous iterable をサポートするようになりました。サンプル
基本的な使用法:
member = discord.utils.get(message.guild.members, name='Foo')
複数の属性のマッチ:
channel = discord.utils.get(guild.voice_channels, name='Foo', bitrate=64000)
ネストされた属性のマッチ:
channel = discord.utils.get(client.get_all_channels(), guild__name='Cool', name='general')
非同期イテラブル:
msg = await discord.utils.get(channel.history(), author__name='Dave')
- パラメータ
iterable (Union[
collections.abc.Iterable
,collections.abc.AsyncIterable
]) -- 検索する反復可能オブジェクト。collections.abc.AsyncIterable
を使用する場合は、この関数は coroutine を返します。**attrs -- 検索用の属性を表すキーワード引数。
- discord.utils.setup_logging(*, handler=..., formatter=..., level=..., root=True)¶
logging をセットアップするためのヘルパー関数。
これは見た目は
logging.basicConfig()
に似ていますが、異なる既定値と、ストリームが色を表示できる場合は、カラーフォーマッタを使用します。これは
Client
にてlog_handler
がNone
でない場合に、logging を設定するため使用されます。バージョン 2.0 で追加.
- パラメータ
handler (
logging.Handler
) -- ライブラリのロガーに使用するログハンドラ。指定されていない場合のデフォルトのログハンドラはlogging.StreamHandler
です。formatter (
logging.Formatter
) -- 指定されたログハンドラで使用するフォーマッタ。指定されていない場合は、既定で色ベースのログフォーマッタが使用されます (使用可能な場合)。 色が使用できない場合は、単純な logging フォーマッタが使用されます。level (
int
) -- ライブラリのロガーのデフォルトのログレベル。デフォルトはlogging.INFO
です。root (
bool
) -- ライブラリロガーではなくルートロガーを設定するかどうか。Client
のデフォルトとは異なり、このデフォルトはTrue
です。
- await discord.utils.maybe_coroutine(f, *args, **kwargs)¶
This function is a coroutine.
コルーチンの場合は関数の結果を待ち、そうでない場合は結果を返すヘルパー関数。
これは、コルーチンかもしれない関数と一緒に使用すると役立ちます。
バージョン 2.2 で追加.
- パラメータ
f (Callable[..., Any]) -- 呼び出す関数またはコルーチン。
*args -- 関数に渡す引数。
**kwargs -- 関数に渡すキーワード引数。
- 戻り値
関数またはコルーチンの結果。
- 戻り値の型
Any
- discord.utils.snowflake_time(id, /)¶
与えられたスノーフレークの生成時刻を返します。
バージョン 2.0 で変更:
id
引数は位置限定引数になりました。- パラメータ
id (
int
) -- スノーフレークID。- 戻り値
スノーフレークの作成時間を表すUTC aware datetime。
- 戻り値の型
- discord.utils.time_snowflake(dt, /, *, high=False)¶
指定された時刻に作成されるスノーフレークの数値を返します。
範囲の下端として使用する場合は、
time_snowflake(dt, high=False) - 1
を使用するとこの時刻を含み、high=True
を使用した場合は含まなくなります。範囲の上限として使用する場合は、
time_snowflake(dt, high=True) + 1
を使用するとこの時刻を含み、high=False
を使用した場合は含まなくなります。バージョン 2.0 で変更:
high
パラメータがキーワード専用引数になり、dt
パラメータは位置限定引数になりました。- パラメータ
dt (
datetime.datetime
) -- スノーフレークに変換するdatetimeオブジェクト。日付が「naive」である場合、これは地域時間であるとみなされます。high (
bool
) -- 下位22ビットをセットするか。
- 戻り値
与えられた時刻を表すスノーフレーク。
- 戻り値の型
- discord.utils.oauth_url(client_id, *, permissions=..., guild=..., redirect_uri=..., scopes=..., disable_guild_select=False, state=...)¶
ボットをギルドに招待するOAuth2 URLを返すヘルパー関数。
バージョン 2.0 で変更:
permissions
、guild
、redirect_uri
、scopes
、state
引数はキーワード限定引数になりました。- パラメータ
permissions (
Permissions
) -- 要求する権限。もし与えられていない場合、権限を要求しません。guild (
Snowflake
) -- 利用できる場合は、認証画面であらかじめ選択されるギルド。redirect_uri (
str
) -- 任意の有効なリダイレクトURI。scopes (Iterable[
str
]) --省略可能な有効なスコープのリスト。既定値は
('bot', 'applications.commands')
。バージョン 1.7 で追加.
disable_guild_select (
bool
) --ユーザーがギルドのドロップダウンを変更できないようにするか。
バージョン 2.0 で追加.
state (
str
) --認可後に返すステート。
バージョン 2.0 で追加.
- 戻り値
Botをギルドに招待するためのOAuth2 URL。
- 戻り値の型
- discord.utils.remove_markdown(text, *, ignore_links=True)¶
マークダウン文字を除去するヘルパー関数。
バージョン 1.7 で追加.
注釈
この関数はマークダウンを解釈するものでないため、元のテキストから意味のある文字を除去する場合があります。たとえば、入力に
10 * 5
が含まれる場合、10 5
に変換されます。
- discord.utils.escape_markdown(text, *, as_needed=False, ignore_links=True)¶
Discordのマークダウンをエスケープするヘルパー関数。
- パラメータ
text (
str
) -- マークダウンをエスケープするテキスト。as_needed (
bool
) -- 必要に応じてマークダウンをエスケープするかどうか。必要でなければ無関係な文字をエスケープしません。**hello**
は\*\*hello\*\*
ではなく\*\*hello**
にエスケープされます。ただし、これによって巧妙な構文の乱用が発生する可能性があります。デフォルトはFalse
です。ignore_links (
bool
) -- マークダウンをエスケープするときにリンクを残すかどうか。たとえば、テキスト中のURLが_
のような文字を含む場合、これは残されます。これはas_needed
と併用できません。デフォルトはTrue
です。
- 戻り値
マークダウンの特殊文字をスラッシュでエスケープしたテキスト。
- 戻り値の型
- discord.utils.escape_mentions(text)¶
everyone、here、ロールとユーザーのメンションをエスケープするヘルパー関数。
注釈
チャンネルのメンションはエスケープしません。
注釈
メッセージ内でエスケープされるべきメンションを詳細に制御するには、
AllowedMentions
クラスを参照してください。
- class discord.ResolvedInvite¶
discord.utils.resolve_invite()
から返された解決済みの招待を表すデータクラス。
- discord.utils.resolve_invite(invite)¶
Invite
やURL、コードから招待を解決します。バージョン 2.0 で変更:
str
の代わりにResolvedInvite
を返すようになりました。- パラメータ
- 戻り値
招待コードとイベントIDを含むデータクラス。
- 戻り値の型
- await discord.utils.sleep_until(when, result=None)¶
This function is a coroutine.
指定された時間までスリープします。
過去の時間が与えられた場合この関数は即座に返します。
バージョン 1.3 で追加.
- パラメータ
when (
datetime.datetime
) -- スリープを終了するタイムスタンプ。datetimeがnaiveである場合は、ローカル時間であると推定されます。result (Any) -- 渡された場合、コルーチンが完了した場合に返されます。
- discord.utils.utcnow()¶
現在時刻を表す UTC aware datetime を返すヘルパー関数。
これは、naive datetimeを返す標準ライブラリと異なりaware datetimeを返すため、
datetime.datetime.utcnow()
より推奨されています。バージョン 2.0 で追加.
- 戻り値
現在のUTC aware datetime。
- 戻り値の型
- discord.utils.format_dt(dt, /, style=None)¶
Discord内での表示用に
datetime.datetime
をフォーマットするヘルパー関数。これにより、Discord特有のMarkdownを使用したロケールに依存しないデータの表示が可能になります。
スタイル
出力例
説明
t
22:57
短縮された時間
T
22:57:58
短縮しない時間
d
17/05/2016
短縮された日付
D
17 May 2016
短縮しない日付
f (デフォルト)
17 May 2016 22:57
短縮された日時
F
Tuesday, 17 May 2016 22:57
短縮しない日時
R
5 years ago
相対時間
なお、正確な出力はユーザーのクライアントのローケル設定によります。この例は
en-GB
ローケルを使用しています。バージョン 2.0 で追加.
- パラメータ
dt (
datetime.datetime
) -- フォーマットするdatetime。style (
str
) -- datetimeをフォーマットするスタイル。
- 戻り値
フォーマットされた文字列。
- 戻り値の型
- discord.utils.as_chunks(iterator, max_size)¶
イテレーターを与えられたサイズのチャンクにまとめるヘルパー関数。
バージョン 2.0 で追加.
- パラメータ
iterator (Union[
collections.abc.Iterable
,collections.abc.AsyncIterable
]) -- チャンクするイテレーター。同期でも非同期でもよいです。max_size (
int
) -- チャンクの最大サイズ。
警告
最後のチャンクのサイズは
max_size
未満の場合があります。- 戻り値
指定されたサイズのチャンクを生成する新しいイテレータ。
- 戻り値の型
Union[
Iterator
,AsyncIterator
]
- discord.utils.MISSING¶
ライブラリで見つからないものを表現するために使用されるタイプセーフなセンチネル型。
None
値と区別するために使用されます。バージョン 2.0 で追加.
列挙型¶
APIは、文字列が将来変わることに備え、文字列を直書きするのを防ぐために、いくらかの文字列の列挙型を提供します。
列挙型はすべて enum.Enum
の動作を模倣した内部クラスのサブクラスです。
- class discord.ChannelType¶
特定チャンネルのチャンネルタイプ。
- text¶
テキストチャンネル。
- voice¶
ボイスチャンネル。
- private¶
プライベートのテキストチャンネル。ダイレクトメッセージとも呼ばれています。
- group¶
プライベートのグループDM。
- category¶
カテゴリチャンネル。
- news¶
ギルドのニュースチャンネル。
- stage_voice¶
ギルドのステージボイスチャンネル。
バージョン 1.7 で追加.
- news_thread¶
ニューススレッド。
バージョン 2.0 で追加.
- public_thread¶
パブリックスレッド。
バージョン 2.0 で追加.
- private_thread¶
プライベートスレッド。
バージョン 2.0 で追加.
- forum¶
フォーラムチャンネル。
バージョン 2.0 で追加.
- media¶
A media channel.
バージョン 2.4 で追加.
- class discord.MessageType¶
Message
のタイプを指定します。これは、メッセージが通常のものかシステムメッセージかを判断するのに使用できます。- x == y
二つのメッセージが等しいかを比較します。
- x != y
二つのメッセージが等しくないかを比較します。
- default¶
デフォルトのメッセージ。これは通常のメッセージと同じです。
- recipient_add¶
ユーザーがグループプライベートメッセージまたはスレッドに追加されたときのシステムメッセージ。
- recipient_remove¶
ユーザーがグループプライベートメッセージまたはスレッドから削除されたときのシステムメッセージ。
- call¶
通話の状態を示すシステムメッセージ。例: 不在着信、通話の開始、その他。
- channel_name_change¶
チャンネル名の変更を示すシステムメッセージ。
- channel_icon_change¶
チャンネルのアイコンの変更を示すシステムメッセージ。
- pins_add¶
ピン留めの追加を示すシステムメッセージ。
- new_member¶
ギルドの新規メンバーの参加を示すシステムメッセージ。
メンバーがギルドを「ニトロブースト」したことを表すシステムメッセージ。
メンバーがギルドを「ニトロブースト」し、それによってギルドがレベル1に到達したことを表すシステムメッセージ。
メンバーがギルドを「ニトロブースト」し、それによってギルドがレベル2に到達したことを表すシステムメッセージ。
メンバーがギルドを「ニトロブースト」し、それによってギルドがレベル3に到達したことを表すシステムメッセージ。
- channel_follow_add¶
アナウンスチャンネルがフォローされたことを表すシステムメッセージ。
バージョン 1.3 で追加.
- guild_stream¶
メンバーがギルドでストリーミングしていることを表すシステムメッセージ。
バージョン 1.7 で追加.
- guild_discovery_disqualified¶
ギルドがサーバー発見の資格を持たなくなったことを示すシステムメッセージ。
バージョン 1.7 で追加.
- guild_discovery_requalified¶
ギルドがサーバー発見の資格を再び持ったことを示すシステムメッセージ。
バージョン 1.7 で追加.
- guild_discovery_grace_period_initial_warning¶
ギルドが1週間サーバー発見の要件を満たすことに失敗したことを示すシステムメッセージ。
バージョン 1.7 で追加.
- guild_discovery_grace_period_final_warning¶
ギルドが連続で3週間サーバー発見の要件を満たすことに失敗したというシステムメッセージ。
バージョン 1.7 で追加.
- thread_created¶
スレッドが作成されたことを示すシステムメッセージ。これはスレッドが古いメッセージから作成されたときにのみ送信されます。メッセージが古いものとされる時間の閾値は信頼できずDiscord次第です。
バージョン 2.0 で追加.
- reply¶
送信者がメッセージに返信したことを示すシステムメッセージ。
バージョン 2.0 で追加.
- chat_input_command¶
スラッシュコマンドを実行したことを示すシステムメッセージ。
バージョン 2.0 で追加.
- guild_invite_reminder¶
人々をギルドに招待することのリマインダーとして送信されたシステムメッセージ。
バージョン 2.0 で追加.
- thread_starter_message¶
スレッドの会話を始めたメッセージであるスレッド内のメッセージを示すシステムメッセージ。
バージョン 2.0 で追加.
コンテキストメニューコマンドを実行したことを示すシステムメッセージ。
バージョン 2.0 で追加.
- auto_moderation_action¶
自動管理ルールが発動されたときに送信されるシステムメッセージ。ルールが発動されたときにアラートを送信するように設定されている場合にのみ送信されます。
バージョン 2.0 で追加.
- role_subscription_purchase¶
ユーザーがロールサブスクリプションを購入または更新したときに送信されるシステムメッセージ。
バージョン 2.2 で追加.
ユーザーに対し、インタラクション中にアプリケーションのプレミアム版を購入する広告を表示するときに送信されるシステムメッセージ。
バージョン 2.2 で追加.
- stage_start¶
ステージ開始時に送信されるシステムメッセージ。
バージョン 2.2 で追加.
- stage_end¶
ステージ終了時に送信されるシステムメッセージ。
バージョン 2.2 で追加.
- stage_speaker¶
ステージの発言者が変わるときに送信されるシステムメッセージ。
バージョン 2.2 で追加.
- stage_raise_hand¶
ユーザーが挙手して発言許可を求めているときに送信されるシステムメッセージ。
バージョン 2.2 で追加.
- stage_topic¶
ステージのトピックが変わるときに送信されるシステムメッセージ。
バージョン 2.2 で追加.
アプリケーションのプレミアムサブスクリプションがギルドで購入されたときに送信されるシステムメッセージ。
バージョン 2.2 で追加.
- guild_incident_alert_mode_enabled¶
The system message sent when security actions is enabled.
バージョン 2.4 で追加.
- guild_incident_alert_mode_disabled¶
The system message sent when security actions is disabled.
バージョン 2.4 で追加.
- guild_incident_report_raid¶
The system message sent when a raid is reported.
バージョン 2.4 で追加.
- guild_incident_report_false_alarm¶
The system message sent when a false alarm is reported.
バージョン 2.4 で追加.
- class discord.UserFlags¶
Discordユーザーフラグを表します。
- staff¶
ユーザーはDiscordの従業員です。
- partner¶
ユーザーはDiscordパートナーです。
- hypesquad¶
ユーザーはHypeSquad Eventsメンバーです。
- bug_hunter¶
ユーザーはバグハンターです。
- mfa_sms¶
ユーザーの多要素認証のSMSリカバリーが有効になっています。
ユーザーはDiscord Nitroプロモーションを無視しました。
- hypesquad_bravery¶
ユーザーはHypeSquad Braveryのメンバーです。
- hypesquad_brilliance¶
ユーザーはHypeSquad Brillianceのメンバーです。
- hypesquad_balance¶
ユーザーはHypeSquad Balanceのメンバーです。
- early_supporter¶
ユーザーは早期サポーターです。
- team_user¶
ユーザーはチームユーザーです。
- system¶
ユーザーはシステムユーザーです。(つまり、Discord公式を表しています)
- has_unread_urgent_messages¶
ユーザーに未読のシステムメッセージがあります。
- bug_hunter_level_2¶
ユーザーはバグハンターレベル2です。
- verified_bot¶
ユーザーは認証済みボットです。
- verified_bot_developer¶
ユーザーは早期認証Botデベロッパーです。
- discord_certified_moderator¶
ユーザーはモデレータープログラム卒業生です。
- bot_http_interactions¶
ユーザーはHTTPインタラクションのみを使用し、オンラインメンバーのリストに表示されるボットです。
バージョン 2.0 で追加.
- spammer¶
ユーザーはDiscordよりスパマーとフラグ付けされました。
バージョン 2.0 で追加.
- active_developer¶
ユーザーはアクティブな開発者です。
バージョン 2.1 で追加.
- class discord.ActivityType¶
Activity
のタイプを指定します。これはアクティビティをどう解釈するか確認するために使われます。- unknown¶
不明なアクティビティタイプ。これは通常起こらないはずです。
- playing¶
プレイ中のアクティビティタイプ。
- streaming¶
放送中のアクティビティタイプ。
- listening¶
再生中のアクティビティタイプ。
- watching¶
視聴中のアクティビティタイプ。
- custom¶
カスタムのアクティビティタイプ。
- competing¶
競争中のアクティビティタイプ。
バージョン 1.5 で追加.
- class discord.VerificationLevel¶
Guild
の認証レベルを指定します。これは、メンバーがギルドにメッセージを送信できるようになるまでの条件です。バージョン 2.0 で追加.
- x == y
認証レベルが等しいか確認します。
- x != y
認証レベルが等しくないか確認します。
- x > y
認証レベルがあるレベルより厳しいか確認します。
- x < y
認証レベルがあるレベルより緩いか確認します。
- x >= y
認証レベルがあるレベルと同じ、又は厳しいか確認します。
- x <= y
認証レベルがあるレベルと同じ、又は緩いか確認します。
- none¶
無制限。
- low¶
メンバーはDiscordアカウントのメール認証を済ませないといけません。
- medium¶
メンバーはメール認証をし、かつアカウント登録から5分経過しないといけません。
- high¶
メンバーはメール認証をし、Discordのアカウント登録から5分経過し、かつ10分以上ギルドに所属していないといけません。
- highest¶
メンバーはDiscordアカウントの電話番号認証を済ませないといけません。
- class discord.NotificationLevel¶
Guild
の通知対象のデフォルト設定をすべてのメッセージ、またはメンションのみに指定します。バージョン 2.0 で追加.
- x == y
通知レベルが等しいか確認します。
- x != y
通知レベルが等しくないか確認します。
- x > y
通知レベルがあるレベルより高いか確認します。
- x < y
通知レベルがあるレベルより低いか確認します。
- x >= y
通知レベルがあるレベルと同じ、又は高いか確認します。
- x <= y
通知レベルがあるレベルと同じ、又は低いか確認します。
- all_messages¶
メンバーは、メンションされているかどうかに関わらず、すべてのメッセージの通知を受け取ります。
- only_mentions¶
メンバーは自分がメンションされているメッセージの通知のみ受け取ります。
- class discord.ContentFilter¶
Guild
の不適切な表現のフィルターを指定します。これはDiscordがポルノ画像や不適切な表現を検出するために使用している機械学習アルゴリズムです。バージョン 2.0 で追加.
- x == y
表現のフィルターのレベルが等しいか確認します。
- x != y
表現のフィルターのレベルが等しくないか確認します。
- x > y
表現のフィルターのレベルが他のレベルより大きいか確認します。
- x < y
表現のフィルターのレベルが他のレベルより小さいか確認します。
- x >= y
表現のフィルターのレベルが他のレベルより大きい、または等しいか確認します。
- x <= y
表現のフィルターのレベルが他のレベルより小さい、または等しいか確認します。
- disabled¶
ギルドで表現のフィルターが有効ではない。
- no_role¶
ギルドでロールを持たないメンバーに対して表現のフィルターが有効化されている。
- all_members¶
ギルドで、すべてのメンバーに対して表現のフィルターが有効化されている。
- class discord.Status¶
Member
のステータスを指定します。- online¶
メンバーがオンライン。
- offline¶
メンバーがオフライン。
- idle¶
メンバーが退席中。
- dnd¶
メンバーが取り込み中。
- invisible¶
メンバーがオンライン状態を隠す。実際には、これは
Client.change_presence()
でプレゼンスを送信する時のみ使用します。ユーザーのプレゼンスを受け取った場合、これはoffline
に置き換えられます。
- class discord.AuditLogAction¶
AuditLogEntry
で行われた動作の種類を取得します。AuditLogEntryはGuild.audit_logs()
で取得可能です。- guild_update¶
ギルドの更新。このトリガーとなるものは以下のとおりです。
ギルドのvanity URLの変更
ギルドの招待時のスプラッシュ画像の変更
ギルドのAFKチャンネル、またはタイムアウトの変更
ギルドの音声通話のサーバーリージョンの変更
ギルドのアイコン、バナー、ディスカバリースプラッシュの変更
ギルドの管理設定の変更
ギルドのウィジェットに関連するものの変更
これが上記のactionならば、
target
の型はGuild
になります。AuditLogDiff
から、以下の属性を参照できます:
- channel_create¶
チャンネルの作成。
これが上記のactionならば、
target
の型は、IDが設定されているabc.GuildChannel
か、Object
のいずれかになります。Object
の場合、after
を使用して、より詳細な情報を持つオブジェクトを見つけることができます。AuditLogDiff
から、以下の属性を参照できます:
- channel_update¶
チャンネルの更新。これのトリガーとなるものは以下の通りです。
チャンネルのチャンネルトピックの変更、または名前の変更。
チャンネルのビットレートの変更。
これが上記のactionならば、
target
の型は、IDが設定されているabc.GuildChannel
か、Object
のいずれかになります。Object
の場合、after
またはbefore
を使用して、より詳細な情報を持つオブジェクトを見つけることができます。AuditLogDiff
から、以下の属性を参照できます:
- channel_delete¶
チャンネルの削除。
これが上記のactionならば、
target
の型は、IDが設定されているObject
になります。before
オブジェクトを使用すると、より詳細な情報が見つかります。AuditLogDiff
から、以下の属性を参照できます:
- overwrite_create¶
チャンネルにおける権限の上書き設定の作成。
これが上記のactionならば、
target
の型は、IDが設定されているabc.GuildChannel
か、Object
のいずれかになります。この場合には、
extra
はRole
かMember
です。もしオブジェクトが見つからない場合はid、name、'role'
か'member'
であるtype
属性があるObject
です。AuditLogDiff
から、以下の属性を参照できます:
- overwrite_update¶
チャンネルの権限の上書きの変更。典型的な例は、権限が変更された場合です。
overwrite_create
に、target
とextra
についての説明があります。AuditLogDiff
から、以下の属性を参照できます:
- overwrite_delete¶
チャンネルにおける権限の上書き設定の削除。
overwrite_create
に、target
とextra
についての説明があります。AuditLogDiff
から、以下の属性を参照できます:
- kick¶
メンバーのキック。
これが上記のactionならば、
target
の型は、キックされたUser
あるいはObject
になります。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:integration_type
: An optional string that denotes the type of integration that did the action.
これが上記のactionなら、
changes
は空になります。
- member_prune¶
非アクティブメンバーの一括キック。
これが上記のactionならば、
target
の型はNone
に設定されます。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:delete_members_days
: 一括キック対象の期間を示す整数。members_removed
: 除去されたメンバーの数を示す整数。
これが上記のactionなら、
changes
は空になります。
- ban¶
メンバーのBAN。
これが上記のactionならば、
target
の型は、BANされたUser
あるいはObject
になります。これが上記のactionなら、
changes
は空になります。
- unban¶
メンバーのBANの解除。
これが上記のactionならば、
target
の型は、BAN解除されたUser
あるいはObject
になります。これが上記のactionなら、
changes
は空になります。
- member_update¶
メンバーの何らかの更新。これのトリガーとなるのは以下の場合です:
メンバーのニックネームの変更。
サーバー側でミュートやスピーカーミュートされた(あるいは解除された)場合。
これが上記のactionならば、
target
の型は、更新の行われたMember
、User
、またはObject
になります。AuditLogDiff
から、以下の属性を参照できます:
- member_role_update¶
メンバーのロールの更新。これは、メンバーがロールを得たり、失った場合に発生します。
これが上記のactionならば、
target
の型は、ロールの更新が行われたMember
、User
、またはObject
になります。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:integration_type
: An optional string that denotes the type of integration that did the action.
AuditLogDiff
から、以下の属性を参照できます:
- member_move¶
メンバーのボイスチャンネルの更新。これは、メンバーが他のボイスチャンネルに移動させられた時に発生します。
これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:channel
: メンバーの移動先のTextChannel
か チャンネルIDを持つObject
。count
: 移動されたメンバーの数を示す整数。
バージョン 1.3 で追加.
- member_disconnect¶
メンバーのボイス状態の変更。これはメンバーがボイスから強制的に切断された場合に発生します。
これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:count
: 切断されたメンバーの数を示す整数。
バージョン 1.3 で追加.
- bot_add¶
ボットのギルドへの追加。
これが上記のactionならば、
target
の型は、ギルドに追加されたMember
、User
、またはObject
になります。バージョン 1.3 で追加.
- role_create¶
新しいロールの作成。
これが上記のactionならば、
target
の型は、IDが設定されているRole
か、Object
のいずれかになります。AuditLogDiff
から、以下の属性を参照できます:
- role_update¶
ロールの何らかの更新。これのトリガーとなるのは以下の場合です:
名前の更新。
権限の更新。
色の更新。
ロールアイコン (または Unicode 絵文字)の変更。
ロールメンバーのオンライン表示、ロールへのメンションの許可の変更。
これが上記のactionならば、
target
の型は、IDが設定されているRole
か、Object
のいずれかになります。AuditLogDiff
から、以下の属性を参照できます:
- role_delete¶
ロールの削除。
これが上記のactionならば、
target
の型は、IDが設定されているRole
か、Object
のいずれかになります。AuditLogDiff
から、以下の属性を参照できます:
- invite_create¶
招待の作成。
これが上記のactionならば、
target
の型は作成された招待に該当するInvite
になります。AuditLogDiff
から、以下の属性を参照できます:
- invite_delete¶
招待の削除。
これが上記のactionならば、
target
のタイプは削除された招待に該当するInvite
になります。AuditLogDiff
から、以下の属性を参照できます:
- webhook_create¶
Webhookの作成。
これが上記のactionならば、
target
のタイプは、webhook IDが設定されているObject
になります。AuditLogDiff
から、以下の属性を参照できます:
- webhook_update¶
Webhookの更新。これのトリガーとなるのは以下の場合です。
Webhook名が変更されたとき
Webhookチャンネルが変更されたとき
これが上記のactionならば、
target
のタイプは、webhook IDが設定されているObject
になります。AuditLogDiff
から、以下の属性を参照できます:
- webhook_delete¶
Webhookの削除。
これが上記のactionならば、
target
のタイプは、webhook IDが設定されているObject
になります。AuditLogDiff
から、以下の属性を参照できます:
- emoji_create¶
絵文字の作成。
これが上記のactionならば、
target
の型は、Emoji
または 絵文字IDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:
- emoji_update¶
絵文字に対する何らかの更新。これは名前が変更されたときに発生します。
これが上記のactionならば、
target
の型は、Emoji
または 絵文字IDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:
- emoji_delete¶
絵文字の削除。
これが上記のactionならば、
target
の型は、絵文字IDが設定されているObject
になります。AuditLogDiff
から、以下の属性を参照できます:
- message_delete¶
管理者によるメッセージの削除。なお、これのトリガーとなるのは、メッセージが投稿者以外によって削除された場合のみです。
これが上記のactionならば、
target
の型は、削除されたメッセージの送信者であるMember
、User
、またはObject
になります。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:count
: 削除されたメッセージの数を示す整数。channel
: メッセージが削除されたTextChannel
か チャンネルIDを持つObject
。
- message_bulk_delete¶
管理者によるメッセージの一括削除。
これが上記のactionならば、
target
の型は、TextChannel
またはメッセージが一括削除されたチャンネルIDが設定されたObject
です。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:count
: 削除されたメッセージの数を示す整数。
バージョン 1.3 で追加.
- message_pin¶
チャンネルへのメッセージのピン留め。
これが上記のactionならば、
target
の型は、ピン留めされたメッセージの送信者であるMember
、User
、またはObject
になります。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:channel
: メッセージがピン留めされたTextChannel
か チャンネルIDを持つObject
。message_id
: ピン留めされたメッセージのID。
バージョン 1.3 で追加.
- message_unpin¶
チャンネルからのメッセージのピン留め解除。
これが上記のactionならば、
target
の型は、ピン留めが外されたメッセージの送信者であるMember
、User
、またはObject
になります。これが上記のactionならば、
extra
は以下の属性を持つプロキシオブジェクトになります:channel
: メッセージのピン留めが外されたTextChannel
か チャンネルIDを持つObject
。message_id
: ピン留めが外されたメッセージのID。
バージョン 1.3 で追加.
- integration_create¶
ギルドの連携サービスの作成。
これが上記のactionならば、
target
の型は、PartialIntegration
または作成されたインテグレーションのIDを持つObject
になります。バージョン 1.3 で追加.
- integration_update¶
ギルド連携サービスの更新。
これが上記のactionならば、
target
の型は、PartialIntegration
または更新されたインテグレーションのIDを持つObject
になります。バージョン 1.3 で追加.
- integration_delete¶
ギルド連携サービスの削除。
これが上記のactionならば、
target
の型は、PartialIntegration
または削除されたインテグレーションのIDを持つObject
になります。バージョン 1.3 で追加.
- stage_instance_create¶
ステージインスタンスの開始。
これが上記のactionならば、
target
の型は、StageInstance
または作成されたステージインスタンスのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- stage_instance_update¶
ステージインスタンスの更新。
これが上記のactionならば、
target
の型は、StageInstance
または更新されたステージインスタンスのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- stage_instance_delete¶
ステージインスタンスの終了。
バージョン 2.0 で追加.
- sticker_create¶
スタンプの作成。
これが上記のactionならば、
target
の型は、GuildSticker
または作成されたスタンプのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- sticker_update¶
スタンプの更新。
これが上記のactionならば、
target
の型は、GuildSticker
または更新されたスタンプのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- sticker_delete¶
スタンプの削除。
これが上記のactionならば、
target
の型は、GuildSticker
または更新されたスタンプのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- scheduled_event_create¶
スケジュールイベントの作成。
これが上記のactionならば、
target
の型は、ScheduledEvent
または作成されたスケジュールイベントのIDが設定されたObject
です。AuditLogDiff
の可能な属性: -name
-channel
-description
-privacy_level
-status
-entity_type
-cover_image
バージョン 2.0 で追加.
- scheduled_event_update¶
スケジュールイベントの作成。
これが上記のactionならば、
target
の型は、ScheduledEvent
または更新されたスケジュールイベントのIDが設定されたObject
です。AuditLogDiff
の可能な属性: -name
-channel
-description
-privacy_level
-status
-entity_type
-cover_image
バージョン 2.0 で追加.
- scheduled_event_delete¶
スケジュールイベントの作成。
これが上記のactionならば、
target
の型は、ScheduledEvent
または削除されたスケジュールイベントのIDが設定されたObject
です。AuditLogDiff
の可能な属性: -name
-channel
-description
-privacy_level
-status
-entity_type
-cover_image
バージョン 2.0 で追加.
- thread_create¶
スレッドの作成。
これが上記のactionならば、
target
の型は、Thread
または作成されたスレッドのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- thread_update¶
スレッドの更新。
これが上記のactionならば、
target
の型は、Thread
または更新されたスレッドのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- thread_delete¶
スレッドの削除。
これが上記のactionならば、
target
の型は、Thread
または削除されたスレッドのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- app_command_permission_update¶
アプリケーションコマンドまたはインテグレーションアプリケーションコマンドの権限の更新。
これが上記のactionならば、
target
の型は、 インテグレーション一般の権限の場合PartialIntegration
、特定のコマンドの権限の場合AppCommand
、あるいは更新されたコマンドまたはインテグレーションのIDが設定されたObject
です。これが上記のactionならば、
extra
の型は、PartialIntegration
またはコマンドまたはインテグレーションが属するアプリケーションのIDを持つObject
になります。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- automod_rule_create¶
自動管理ルールの作成。
これが上記のactionならば、
target
のtypeは、AutoModRule
または作成された自動管理ルールのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- automod_rule_update¶
自動管理ルールの更新。
これが上記のactionならば、
target
のtypeは、AutoModRule
または作成された自動管理ルールのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- automod_rule_delete¶
自動管理ルールの削除。
これが上記のactionならば、
target
のtypeは、AutoModRule
または作成された自動管理ルールのIDが設定されたObject
です。AuditLogDiff
から、以下の属性を参照できます:バージョン 2.0 で追加.
- automod_block_message¶
自動管理ルールによる送信されたメッセージのブロック。
これが上記のactionならば、
target
のtypeは、自動管理ルールを発動させたMember
になります。これが上記のactionならば、
extra
は以下の3つの属性を持つプロキシオブジェクトになります:automod_rule_name
: 発動した自動管理ルールの名前。automod_rule_trigger_type
: AAutoModRuleTriggerType
representation of the rule type that was triggered.channel
: 自動管理ルールが発動されたチャンネル。
これが上記のactionなら、
changes
は空になります。バージョン 2.0 で追加.
- automod_flag_message¶
自動管理ルールによる送信されたメッセージのフラグ付け。
これが上記のactionならば、
target
のtypeは、自動管理ルールを発動させたMember
になります。これが上記のactionならば、
extra
は以下の3つの属性を持つプロキシオブジェクトになります:automod_rule_name
: 発動した自動管理ルールの名前。automod_rule_trigger_type
: AAutoModRuleTriggerType
representation of the rule type that was triggered.channel
: 自動管理ルールが発動されたチャンネル。
これが上記のactionなら、
changes
は空になります。バージョン 2.1 で追加.
- automod_timeout_member¶
自動管理ルールによるメンバーのタイムアウト。
これが上記のactionならば、
target
のtypeは、自動管理ルールを発動させたMember
になります。これが上記のactionならば、
extra
は以下の3つの属性を持つプロキシオブジェクトになります:automod_rule_name
: 発動した自動管理ルールの名前。automod_rule_trigger_type
: AAutoModRuleTriggerType
representation of the rule type that was triggered.channel
: 自動管理ルールが発動されたチャンネル。
これが上記のactionなら、
changes
は空になります。バージョン 2.1 で追加.
- creator_monetization_request_created¶
A request to monetize the server was created.
バージョン 2.4 で追加.
- creator_monetization_terms_accepted¶
The terms and conditions for creator monetization were accepted.
バージョン 2.4 で追加.
- class discord.AuditLogActionCategory¶
AuditLogAction
が属するカテゴリ。これは
AuditLogEntry.category
で取得できます。- create¶
アクションは何かの作成です。
- delete¶
アクションは何かの削除です。
- update¶
アクションは何かの更新です。
- class discord.TeamMembershipState¶
Client.application_info()
で取得したチームメンバーのメンバーシップ状態。バージョン 1.3 で追加.
- invited¶
招待されたメンバー。
- accepted¶
現在チームにいるメンバー。
- class discord.TeamMemberRole¶
Represents the type of role of a team member retrieved through
Client.application_info()
.バージョン 2.4 で追加.
- admin¶
The team member is an admin. This allows them to invite members to the team, access credentials, edit the application, and do most things the owner can do. However they cannot do destructive actions.
- developer¶
The team member is a developer. This allows them to access information, like the client secret or public key. They can also configure interaction endpoints or reset the bot token. Developers cannot invite anyone to the team nor can they do destructive actions.
- read_only¶
The team member is a read-only member. This allows them to access information, but not edit anything.
- class discord.WebhookType¶
受け取れるWebhookの種類。
バージョン 1.3 で追加.
- incoming¶
トークンでチャンネルにメッセージを投稿できるWebhook。
- channel_follower¶
チャンネルのフォローのためDiscord内部で管理されるWebhook。
- application¶
インタラクションやアプリケーションに用いられるWebhook。
バージョン 2.0 で追加.
- class discord.ExpireBehaviour¶
ユーザーのサブスクリプションが終了した後の
Integration
の動作。ExpireBehavior
という名のエイリアスがあります。バージョン 1.4 で追加.
- remove_role¶
サブスクリプションが終了したユーザーから
StreamIntegration.role
を除去します。
- kick¶
サブスクリプションが終了したユーザーをキックします。
- class discord.DefaultAvatar¶
Discord
User
のデフォルトのアバター。- blurple¶
ブループル色のデフォルトのアバター。
Colour.blurple
も参照してください。
- grey¶
灰色のデフォルトのアバター。
Colour.greyple
も参照してください。
- green¶
緑色のデフォルトのアバター。
Colour.green
も参照してください。
- orange¶
オレンジ色のデフォルトのアバター。
Colour.orange
も参照してください。
- red¶
赤色のデフォルトのアバター。
Colour.red
も参照してください。
- pink¶
ピンク色のデフォルトのアバター。
Colour.pink
も参照してください。バージョン 2.3 で追加.
- class discord.StickerType¶
スタンプの種類。
バージョン 2.0 で追加.
- standard¶
Nitroユーザー全員が使用できる標準スタンプ。
- guild¶
ギルドで作成されたカスタムスタンプ。
- class discord.StickerFormatType¶
スタンプ画像の種類。
バージョン 1.6 で追加.
- png¶
PNG画像のスタンプ。
- apng¶
APNG画像のスタンプ。
- lottie¶
ロッティー画像のスタンプ。
- gif¶
GIF画像のスタンプ。
バージョン 2.2 で追加.
- class discord.InviteTarget¶
ボイスチャンネル招待の招待タイプ。
バージョン 2.0 で追加.
- unknown¶
招待の対象がないもの。
- stream¶
ユーザーを対象とするもの。
- embedded_application¶
埋め込まれたアプリケーションを対象とするもの。
- class discord.VideoQualityMode¶
ボイスチャンネル参加者のカメラビデオの画質モード。
バージョン 2.0 で追加.
- auto¶
自動のカメラビデオ画質。
- full¶
フルのカメラビデオ画質。
- class discord.PrivacyLevel¶
ステージインスタンスやスケジュールイベントのプライバシーレベル。
バージョン 2.0 で追加.
- guild_only¶
ステージインスタンスやスケジュールイベントはギルド内でのみアクセスできます。
- class discord.NSFWLevel¶
ギルドの年齢制限レベル。
バージョン 2.0 で追加.
- x == y
二つの年齢制限レベルが等しいかを比較します。
- x != y
二つの年齢制限レベルが等しくないかを比較します。
- x > y
年齢制限レベルがあるレベルより高いか確認します。
- x < y
年齢制限レベルがあるレベルより低いか確認します。
- x >= y
年齢制限レベルがあるレベルと同じ、又は高いか確認します。
- x <= y
年齢制限レベルがあるレベルと同じ、又は低いか確認します。
- default¶
未分類のギルド。
- explicit¶
年齢制限されたコンテンツを含むギルド。
- safe¶
年齢制限されたコンテンツを一切含まないギルド。
- age_restricted¶
年齢制限されたコンテンツを含む可能性のあるギルド。
- class discord.Locale¶
Discordでサポートされているロケール。主にアプリケーションコマンドの多言語化に使用されます。
バージョン 2.0 で追加.
- american_english¶
en-US
ロケール。
- british_english¶
en-GB
ロケール。
- bulgarian¶
bg
ロケール。
- chinese¶
zh-CN
ロケール。
- taiwan_chinese¶
zh-TW
ロケール。
- croatian¶
hr
ロケール。
- czech¶
cs
ロケール。
- indonesian¶
id
ロケール。バージョン 2.2 で追加.
- danish¶
da
ロケール。
- dutch¶
nl
ロケール。
- finnish¶
fi
ロケール。
- french¶
fr
ロケール。
- german¶
de
ロケール。
- greek¶
el
ロケール。
- hindi¶
hi
ロケール。
- hungarian¶
hu
ロケール。
- italian¶
it
ロケール。
- japanese¶
ja
ロケール。
- korean¶
ko
ロケール。
- latin_american_spanish¶
The
es-419
locale.バージョン 2.4 で追加.
- lithuanian¶
lt
ロケール。
- norwegian¶
no
ロケール。
- polish¶
pl
ロケール。
- brazil_portuguese¶
pt-BR
ロケール。
- romanian¶
ro
ロケール。
- russian¶
ru
ロケール。
- spain_spanish¶
es-ES
ロケール。
- swedish¶
sv-SE
ロケール。
- thai¶
th
ロケール。
- turkish¶
tr
ロケール。
- ukrainian¶
uk
ロケール。
- vietnamese¶
vi
ロケール。
- class discord.MFALevel¶
ギルドの多要素認証要件レベル。
バージョン 2.0 で追加.
- x == y
二つのMFAレベルが等しいかを比較します。
- x != y
二つのMFAレベルが等しくないかを比較します。
- x > y
多要素認証レベルがあるレベルより厳しいか確認します。
- x < y
多要素認証レベルがあるレベルより緩いか確認します。
- x >= y
多要素認証レベルがあるレベルと同じ、又は厳しいか確認します。
- x <= y
多要素認証レベルがあるレベルと同じ、又は緩いか確認します。
- disabled¶
多要素認証要件がないギルド。
- require_2fa¶
二要素認証を必須とするギルド。
- class discord.EntityType¶
スケジュールイベントの開催場所の種類。
バージョン 2.0 で追加.
- stage_instance¶
ステージインスタンスで起こるスケジュールイベント。
- voice¶
ボイスチャンネルで起こるスケジュールイベント。
- external¶
外部で起こるスケジュールイベント。
- class discord.EventStatus¶
イベントの状態。
バージョン 2.0 で追加.
- scheduled¶
予定されたイベント。
- active¶
開催中のイベント。
- completed¶
終了したイベント。
- cancelled¶
キャンセルされたイベント。
- class discord.AutoModRuleTriggerType¶
自動管理ルールの発動条件の種類を表します。
バージョン 2.0 で追加.
- keyword¶
キーワードに言及したときに発動されるルール。
- harmful_link¶
有害なリンクを投稿したときに発動されるルール。
- spam¶
スパムメッセージを投稿したときに発動されるルール。
- keyword_preset¶
事前に定められたキーワードプリセットに基づき発動したときに発動されるルール。
- mention_spam¶
ロールとユーザーのメンションの合計数が設定された制限よりも多い場合に発動されるルール。
- member_profile¶
The rule will trigger when a user's profile contains a keyword.
バージョン 2.4 で追加.
- class discord.AutoModRuleEventType¶
自動管理ルールのイベントの種類を表します。
バージョン 2.0 で追加.
- message_send¶
メッセージを投稿したときにルールが発動します。
- member_update¶
The rule will trigger when a member's profile is updated.
バージョン 2.4 で追加.
- class discord.AutoModRuleActionType¶
自動管理ルールの対応の種類を表します。
バージョン 2.0 で追加.
- block_message¶
メッセージを送信できないようにします。
- send_alert_message¶
事前に指定したチャンネルに警告メッセージを送信します。
- timeout¶
ユーザーをタイムアウトします。
- class discord.ForumLayoutType¶
フォーラムの投稿がクライアントでどのように配列されるかを表します。
バージョン 2.2 で追加.
- not_set¶
デフォルトが設定されていないので、配列方法はクライアントによります。
- list_view¶
投稿を一覧として表示します。
- gallery_view¶
投稿をタイルの集まりとして表示します。
- class discord.ForumOrderType¶
フォーラムの投稿がクライアントでどのように並び替えられるかを表します。
バージョン 2.3 で追加.
- latest_activity¶
最終更新日時順でフォーラム投稿を並び替えます。
- creation_date¶
作成日時順 (新しいものから古いものの順) でフォーラム投稿を並び替えます。
- class discord.SelectDefaultValueType¶
Represents the default value of a select menu.
バージョン 2.4 で追加.
- user¶
The underlying type of the ID is a user.
- role¶
The underlying type of the ID is a role.
- channel¶
The underlying type of the ID is a channel or thread.
- class discord.SKUType¶
Represents the type of a SKU.
バージョン 2.4 で追加.
- durable¶
The SKU is a durable one-time purchase.
- consumable¶
The SKU is a consumable one-time purchase.
- subscription¶
The SKU is a recurring subscription.
- subscription_group¶
The SKU is a system-generated group which is created for each
SKUType.subscription
.
- class discord.EntitlementType¶
Represents the type of an entitlement.
バージョン 2.4 で追加.
- purchase¶
The entitlement was purchased by the user.
The entitlement is for a nitro subscription.
- developer_gift¶
The entitlement was gifted by the developer.
- test_mode_purchase¶
The entitlement was purchased by a developer in application test mode.
- free_purchase¶
The entitlement was granted, when the SKU was free.
- user_gift¶
The entitlement was gifted by a another user.
The entitlement was claimed for free by a nitro subscriber.
- application_subscription¶
The entitlement was purchased as an app subscription.
- class discord.EntitlementOwnerType¶
Represents the type of an entitlement owner.
バージョン 2.4 で追加.
- guild¶
The entitlement owner is a guild.
- user¶
The entitlement owner is a user.
- class discord.PollLayoutType¶
Represents how a poll answers are shown.
バージョン 2.4 で追加.
- default¶
The default layout.
監査ログデータ¶
Guild.audit_logs()
の使用は複雑なプロセスです。このライブラリーはこれを使いやすくフレンドリーにしようと試みています。この目標の達成のためにいくつかのデータクラスを使用しています。
AuditLogEntry¶
- class discord.AuditLogEntry(*, users, integrations, app_commands, automod_rules, webhooks, data, guild)¶
監査ログの項目。
これらは
Guild.audit_logs()
から取得できます。- x == y
二つの項目が等しいかを比較します。
- x != y
二つの項目が等しくないかを比較します。
- hash(x)
エントリーのハッシュを返します。
バージョン 1.7 で変更: 監査ログの項目が比較・ハッシュ可能になりました。
- action¶
行われたアクション。
- target¶
変更の対象。正確な型は、実行されるアクションによって異なります。
- 型
Any
- extra¶
役立つかもしれない項目の追加の情報。ほとんどのアクションでは
None
ですが、場合により追加の情報が含まれます。どのアクションが対応しているかはAuditLogAction
にて確認してください。- 型
Any
- created_at¶
項目の作成された時間をUTCで返します。
- category¶
該当する場合、アクションのカテゴリ。
- 型
Optional[
AuditLogActionCategory
]
- changes¶
この項目の変更の一覧。
- before¶
対象の前の状態。
- after¶
対象の直後の状態。
AuditLogChanges¶
- class discord.AuditLogChanges¶
監査ログの変更のセット。
- before¶
以前の値。この属性は
AuditLogDiff
型です。category
で取得されるAuditLogActionCategory
によりこの属性の値が異なります:
- after¶
新しい値。この属性は
AuditLogDiff
型です。category
で取得されるAuditLogActionCategory
によりこの属性の値が異なります:
AuditLogDiff¶
- actions
- afk_channel
- afk_timeout
- allow
- app_command_permissions
- applied_tags
- archived
- auto_archive_duration
- available
- available_tags
- avatar
- banner
- bitrate
- channel
- code
- color
- colour
- cover_image
- deaf
- default_auto_archive_duration
- default_notifications
- default_reaction_emoji
- default_thread_slowmode_delay
- deny
- description
- discovery_splash
- emoji
- enable_emoticons
- enabled
- entity_type
- event_type
- exempt_channels
- exempt_roles
- expire_behavior
- expire_behaviour
- expire_grace_period
- explicit_content_filter
- flags
- format_type
- guild
- hoist
- icon
- id
- invitable
- inviter
- locked
- max_age
- max_uses
- mentionable
- mfa_level
- mute
- name
- nick
- nsfw
- overwrites
- owner
- permissions
- position
- preferred_locale
- premium_progress_bar_enabled
- privacy_level
- prune_delete_days
- public_updates_channel
- roles
- rtc_region
- rules_channel
- slowmode_delay
- splash
- status
- system_channel
- system_channel_flags
- temporary
- timed_out_until
- topic
- trigger
- trigger_type
- type
- unicode_emoji
- user_limit
- uses
- vanity_url_code
- verification_level
- video_quality_mode
- widget_channel
- widget_enabled
- class discord.AuditLogDiff¶
監査ログの「変更」オブジェクト。変更オブジェクトには、行われたアクションの種類によって異なる属性があります。特定のアクションが行われた場合に特定の属性が設定されます。
指定されたアクションに一致しない属性にアクセスすると、AttributeErrorが発生することに注意してください。
設定された属性のリストを取得するには、イテレートすることができます。 行われたアクションに対応した可能な属性の一覧は、
AuditLogAction
の説明を確認してください。あるいは、可能なすべての属性について、以下の説明を確認してください。- iter(diff)
差分の(属性、値)タプルのイテレーターを返します。
- icon¶
ギルドまたはロールのアイコン。
Guild.icon
とRole.icon
も参照してください。- 型
- splash¶
ギルドの招待のスプラッシュ。
Guild.splash
も参照してください。- 型
- discovery_splash¶
ギルドのディスカバリースプラッシュ。
Guild.discovery_splash
も参照してください。- 型
- banner¶
ギルドのバナー。
Guild.banner
も参照してください。- 型
- owner¶
ギルドの所有者。
Guild.owner
も参照してください。
- afk_channel¶
ギルドのAFKチャンネル。
見つからない場合は、IDが設定された
Object
になります。Guild.afk_channel
を参照してください。- 型
Union[
VoiceChannel
,Object
]
- system_channel¶
ギルドのシステムチャンネル。
見つからない場合は、IDが設定された
Object
になります。Guild.system_channel
を参照してください。- 型
Union[
TextChannel
,Object
]
- rules_channel¶
ギルドのルールチャンネル。
見つからない場合は、IDが設定された
Object
になります。Guild.rules_channel
を参照してください。- 型
Union[
TextChannel
,Object
]
- public_updates_channel¶
ギルドのパブリックアップデートチャンネル。
見つからない場合は、IDが設定された
Object
になります。Guild.public_updates_channel
を参照してください。- 型
Union[
TextChannel
,Object
]
- afk_timeout¶
ギルドのAFKタイムアウト。
Guild.afk_timeout
も参照してください。- 型
- mfa_level¶
ギルドの多要素認証レベル。
Guild.mfa_level
も参照してください。- 型
- widget_channel¶
ウィジェットのチャンネル。
見つからない場合は、IDが設定された
Object
になります。- 型
Union[
TextChannel
,Object
]
- verification_level¶
ギルドの認証レベル。
Guild.verification_level
も参照してください。
- default_notifications¶
ギルドのデフォルト通知レベル。
Guild.default_notifications
も参照してください。
- explicit_content_filter¶
ギルドのコンテンツフィルター。
Guild.explicit_content_filter
も参照してください。
- vanity_url_code¶
ギルドのバニティURL。
Guild.vanity_invite()
とGuild.edit()
も参照してください。- 型
- position¶
Role
やabc.GuildChannel
の位置。- 型
- type¶
チャンネル、スタンプ、Webhookまたは連携サービスのタイプ。
- 型
Union[
ChannelType
,StickerType
,WebhookType
,str
]
- topic¶
TextChannel
またはStageChannel
のトピック。TextChannel.topic
またはStageChannel.topic
も参照してください。- 型
- bitrate¶
VoiceChannel
のビットレート。VoiceChannel.bitrate
も参照してください。- 型
- overwrites¶
対象とその
PermissionOverwrite
のタプルで示された権限の上書きのリスト。最初の要素は対象のオブジェクトで、
Member
かUser
かRole
です。このオブジェクトが見つからない場合はこれはIDが設定され、type
属性が'role'
か'member'
に設定されたObject
になります。- 型
List[Tuple[target,
PermissionOverwrite
]]
- privacy_level¶
ステージインスタンスやスケジュールイベントのプライバシーレベル。
- nick¶
メンバーのニックネーム。
Member.nick
も参照してください。- 型
Optional[
str
]
- deaf¶
メンバーがサーバーでスピーカーミュートされているかどうか。
VoiceState.deaf
も参照してください。- 型
- mute¶
メンバーがサーバーでミュートされているかどうか。
VoiceState.mute
も参照してください。- 型
- permissions¶
ロールの権限。
Role.permissions
も参照してください。
- colour¶
- color¶
ロールの色。
Role.colour
も参照してください。- 型
- hoist¶
役割が別に表示されるかどうか。
Role.hoist
も参照してください。- 型
- mentionable¶
役割がメンションできるかどうか。
Role.mentionable
も参照してください。- 型
- code¶
招待のコード。
Invite.code
も参照してください。- 型
- channel¶
ギルドのチャンネル。
チャンネルが見つからない場合は、IDが設定された
Object
になります。 場合によっては、チャンネル名も設定されています。- 型
Union[
abc.GuildChannel
,Object
]
- inviter¶
招待を作成したユーザー。
Invite.inviter
も参照してください。- 型
Optional[
User
]
- max_uses¶
招待の最大使用回数。
Invite.max_uses
も参照してください。- 型
- uses¶
招待の現在の使用回数。
Invite.uses
も参照してください。- 型
- max_age¶
招待者の最大時間は秒数です。
Invite.max_age
も参照してください。- 型
- temporary¶
招待が一時的な招待であるか。
Invite.temporary
も参照してください。- 型
- avatar¶
メンバーのアバター。
User.avatar
も参照してください。- 型
- slowmode_delay¶
メンバーが別のメッセージをチャンネルに送信するまでの秒単位の待ち時間。
TextChannel.slowmode_delay
も参照してください。- 型
- rtc_region¶
ボイスチャンネルの音声通信のためのリージョン。値が
None
の場合は自動で検出されます。VoiceChannel.rtc_region
も参照してください。- 型
- video_quality_mode¶
ボイスチャンネル参加者のカメラビデオの画質。
VoiceChannel.video_quality_mode
も参照してください。
- format_type¶
変更されたスタンプのフォーマットの種類。
GuildSticker.format
も参照してください。
- emoji¶
変更されたスタンプを示す絵文字の名前。
GuildSticker.emoji
も参照してください。- 型
- unicode_emoji¶
変更されたロールのアイコンとして使用されるUnicode絵文字。
Role.unicode_emoji
も参照してください。- 型
- description¶
ギルド、スタンプ、またはスケジュールイベントの説明。
Guild.description
、GuildSticker.description
、またはScheduledEvent.description
も参照してください。- 型
- available¶
変更されたスタンプの利用可能かどうかの状態。
GuildSticker.available
も参照してください。- 型
- auto_archive_duration¶
変更されたスレッドの自動アーカイブ期間。
Thread.auto_archive_duration
も参照してください。- 型
- timed_out_until¶
ユーザーがタイムアウトされているかどうか、そしてその場合はいつまでか。
- 型
Optional[
datetime.datetime
]
- enable_emoticons¶
連携サービスの絵文字が有効化され、または無効化されたか。
StreamIntegration.enable_emoticons
も参照してください。- 型
- expire_behaviour¶
- expire_behavior¶
変更された期限切れのサブスクライバーの動作。
StreamIntegration.expire_behaviour
も参照してください。
- expire_grace_period¶
変更された期限切れのサブスクライバーの猶予期間。
StreamIntegration.expire_grace_period
も参照してください。- 型
- preferred_locale¶
変更されたギルドの優先ローケル。
Guild.preferred_locale
も参照してください。- 型
- status¶
スケジュールイベントのステータス。
- entity_type¶
スケジュールイベントの開催場所の種類。
- cover_image¶
スケジュールイベントのカバー画像。
ScheduledEvent.cover_image
も参照してください。- 型
- app_command_permissions¶
アプリケーションコマンドの権限のリスト。
- 型
List[
AppCommandPermissions
]
- event_type¶
自動管理ルールを発動させるイベントの種類。
- trigger_type¶
自動管理ルールの発動条件の種類。
- trigger¶
自動管理ルールの発動条件。
注釈
The
type
of the trigger may be incorrect. Some attributes such askeyword_filter
,regex_patterns
, andallow_list
will only have the added or removed values.
- actions¶
自動管理ルールの発動時の対応。
- 型
List[AutoModRuleAction]
- exempt_channels¶
自動管理ルールの除外対象のチャンネルまたはスレッドのリスト。
- 型
List[
abc.GuildChannel
,Thread
,Object
]
ギルドのブーストの進捗バーを表示するかの設定。
- 型
- system_channel_flags¶
ギルドのシステムチャンネルの設定。
Guild.system_channel_flags
を参照してください。
- user_limit¶
ボイスまたはステージチャンネルに参加できるメンバー数の制限。
VoiceChannel.user_limit
とStageChannel.user_limit
も参照してください。- 型
- flags¶
このスレッドやフォーラム投稿に関連付けられたチャンネルフラグ。
ForumChannel.flags
とThread.flags
も参照してください。
- default_thread_slowmode_delay¶
このテキストチャンネルやフォーラムで作成されたスレッドのデフォルトの低速モードのレート制限。
TextChannel.default_thread_slowmode_delay
とForumChannel.default_thread_slowmode_delay
も参照してください。- 型
- applied_tags¶
フォーラム投稿に適用されたタグ。
Thread.applied_tags
も参照してください。
- available_tags¶
フォーラムにて利用可能なタグ。
ForumChannel.available_tags
も参照してください。- 型
Sequence[
ForumTag
]
- default_reaction_emoji¶
フォーラム投稿の default_reaction_emoji。
ForumChannel.default_reaction_emoji
も参照してください。- 型
Optional[
PartialEmoji
]
Webhookサポート¶
discord.pyは、 Webhook
クラスからWebhookの作成、編集、実行をサポートします。
Webhook¶
- clsWebhook.from_url
- clsWebhook.partial
- asyncdelete
- asyncdelete_message
- asyncedit
- asyncedit_message
- asyncfetch
- asyncfetch_message
- defis_authenticated
- defis_partial
- asyncsend
- class discord.Webhook¶
非同期のDiscord Webhook。
Webhookはボットユーザーや認証なしでDiscordチャンネルにメッセージを送信する方法です。
Webhookの使用法は主に二つあります。一つ目は
Guild.webhooks()
やTextChannel.webhooks()
、VoiceChannel.webhooks()
、ForumChannel.webhooks()
といったライブラリーのメソッドから受け取るものです。これらは自動的にライブラリー内部のHTTPセッションを使用します。二つ目は、
from_url()
やpartial()
クラスメソッドでWebhookオブジェクトを手動で作成する方法です。例えば、URLからWebhookを作成し、 aiohttp を使用する場合は:
from discord import Webhook import aiohttp async def foo(): async with aiohttp.ClientSession() as session: webhook = Webhook.from_url('url-here', session=session) await webhook.send('Hello World', username='Foo')
同期バージョンは、
SyncWebhook
を参照してください。- x == y
二つのWebhookが等しいか比較します。
- x != y
二つのWebhookが等しいものでないか比較します。
- hash(x)
Webhookのハッシュを返します。
バージョン 1.4 で変更: Webhookが比較・ハッシュ可能になりました。
- type¶
Webhookのタイプ。
バージョン 1.3 で追加.
- source_guild¶
Webhookがフォローしているチャンネルのギルド。
type
がWebhookType.channel_follower
のときのみ与えられます。バージョン 2.0 で追加.
- 型
Optional[
PartialWebhookGuild
]
- source_channel¶
Webhookがフォローしているチャンネル。
type
がWebhookType.channel_follower
のときのみ与えられます。バージョン 2.0 で追加.
- 型
Optional[
PartialWebhookChannel
]
- classmethod partial(id, token, *, session=..., client=..., bot_token=None)¶
部分的な
Webhook
を作成します。- パラメータ
id (
int
) -- WebhookのID。token (
str
) -- Webhookの認証トークン。session (
aiohttp.ClientSession
) --リクエストを送信するために使用するセッション。ライブラリはセッションを管理しておらず、閉じないことに注意してください。
バージョン 2.0 で追加.
client (
Client
) --このWebhookを初期化するためのクライアント。これによりクライアントの内部状態を付属できます。このとき、
session
が指定されていない場合は、クライアントの内部セッションが使用されます。バージョン 2.2 で追加.
bot_token (Optional[
str
]) --Webhook関連の認証が必要なリクエストに使用するボットの認証トークン。
バージョン 2.0 で追加.
- 例外
TypeError --
session
とclient
のどちらも指定されていない場合。- 戻り値
部分的な
Webhook
。部分的なWebhookはただのIDとトークンのみを持つWebhookオブジェクトです。- 戻り値の型
- classmethod from_url(url, *, session=..., client=..., bot_token=None)¶
WebhookのURLから部分的な
Webhook
を作成します。バージョン 2.0 で変更: この関数は
InvalidArgument
の代わりにValueError
を送出します。- パラメータ
url (
str
) -- WebhookのURL。session (
aiohttp.ClientSession
) --リクエストを送信するために使用するセッション。ライブラリはセッションを管理しておらず、閉じないことに注意してください。
バージョン 2.0 で追加.
client (
Client
) --このWebhookを初期化するためのクライアント。これによりクライアントの内部状態を付属できます。このとき、
session
が指定されていない場合は、クライアントの内部セッションが使用されます。バージョン 2.2 で追加.
bot_token (Optional[
str
]) --Webhook関連の認証が必要なリクエストに使用するボットの認証トークン。
バージョン 2.0 で追加.
- 例外
ValueError -- URLが無効な場合。
TypeError --
session
とclient
のどちらも指定されていない場合。
- 戻り値
部分的な
Webhook
。部分的なWebhookはただのIDとトークンのみを持つWebhookオブジェクトです。- 戻り値の型
- await fetch(*, prefer_auth=True)¶
This function is a coroutine.
現在のWebhookを取得します。
これは部分的なWebhookから完全なWebhookを取得するのに利用できます。
バージョン 2.0 で追加.
注釈
認証されていないWebhook、つまり
is_authenticated()
がFalse
を返すものでは、返されたWebhookにはユーザー情報が含まれません。- パラメータ
prefer_auth (
bool
) -- 利用可能な場合にWebhookトークンではなくボットトークンを使用するか。既定ではTrue
。- 例外
HTTPException -- Webhookを取得できなかった場合。
NotFound -- このIDを持つWebhookが見つからない場合。
ValueError -- Webhookに紐づいたトークンが存在しない場合。
- 戻り値
フェッチしたWebhook。
- 戻り値の型