API
Discorder.AbstractEventPublisher
Discorder.AbstractTrigger
Discorder.CommandTrigger
Discorder.Event
Discorder.GatewayTracker
Discorder.ReactionAddTrigger
Discorder.add_group_dm_recipient
Discorder.add_guild_member
Discorder.add_guild_member_role
Discorder.add_thread_member
Discorder.begin_guild_prune
Discorder.bulk_delete_messages
Discorder.create_channel_invite
Discorder.create_dm
Discorder.create_event
Discorder.create_group_dm
Discorder.create_guild
Discorder.create_guild_ban
Discorder.create_guild_channel
Discorder.create_guild_emoji
Discorder.create_guild_from_guild_template
Discorder.create_guild_role
Discorder.create_guild_scheduled_event
Discorder.create_guild_template
Discorder.create_guild_ticker
Discorder.create_message
Discorder.create_reaction
Discorder.create_stage_instance
Discorder.create_webhook
Discorder.crosspost_message
Discorder.delete_all_reactions
Discorder.delete_all_reactions_for_emoji
Discorder.delete_channel
Discorder.delete_channel_permission
Discorder.delete_guild
Discorder.delete_guild_emoji
Discorder.delete_guild_integration
Discorder.delete_guild_role
Discorder.delete_guild_scheduled_event
Discorder.delete_guild_sticker
Discorder.delete_guild_template
Discorder.delete_invite
Discorder.delete_message
Discorder.delete_own_reaction
Discorder.delete_stage_instance
Discorder.delete_user_reaction
Discorder.delete_webhook
Discorder.delete_webhook_message
Discorder.delete_webhook_with_token
Discorder.edit_channel_permissions
Discorder.edit_message
Discorder.edit_webhook_message
Discorder.execute_github_compatible_webhook
Discorder.execute_slack_compatible_webhook
Discorder.execute_webhook
Discorder.follow_news_channel
Discorder.get_bot_token
Discorder.get_channel
Discorder.get_channel_invites
Discorder.get_channel_message
Discorder.get_channel_messages
Discorder.get_channel_webhooks
Discorder.get_current_user
Discorder.get_current_user_guild_member
Discorder.get_current_user_guilds
Discorder.get_gateway
Discorder.get_guild
Discorder.get_guild_audit_log
Discorder.get_guild_ban
Discorder.get_guild_bans
Discorder.get_guild_channels
Discorder.get_guild_emoji
Discorder.get_guild_integrations
Discorder.get_guild_invites
Discorder.get_guild_member
Discorder.get_guild_preview
Discorder.get_guild_prune_count
Discorder.get_guild_roles
Discorder.get_guild_scheduled_event
Discorder.get_guild_scheduled_event_users
Discorder.get_guild_sticker
Discorder.get_guild_template
Discorder.get_guild_templates
Discorder.get_guild_vanity_url
Discorder.get_guild_voice_regions
Discorder.get_guild_webhooks
Discorder.get_guild_welcome_screen
Discorder.get_guild_widget
Discorder.get_guild_widget_image
Discorder.get_guild_widget_settings
Discorder.get_invite
Discorder.get_logger
Discorder.get_pinned_messages
Discorder.get_reactions
Discorder.get_stage_instance
Discorder.get_sticker
Discorder.get_thread_member
Discorder.get_user
Discorder.get_user_connections
Discorder.get_webhook
Discorder.get_webhook_message
Discorder.get_webhook_with_token
Discorder.join_thread
Discorder.json
Discorder.leave_guild
Discorder.leave_thread
Discorder.list_active_guild_threads
Discorder.list_guild_emojis
Discorder.list_guild_members
Discorder.list_guild_scheduled_events
Discorder.list_guild_stickers
Discorder.list_joined_private_archived_threads
Discorder.list_nitro_sticker_packs
Discorder.list_private_archived_threads
Discorder.list_public_archived_threads
Discorder.list_thread_members
Discorder.list_voice_regions
Discorder.modify_channel
Discorder.modify_current_member
Discorder.modify_current_user
Discorder.modify_current_user_nick
Discorder.modify_current_user_voice_state
Discorder.modify_guild
Discorder.modify_guild_channel_positions
Discorder.modify_guild_emoji
Discorder.modify_guild_member
Discorder.modify_guild_role
Discorder.modify_guild_role_positions
Discorder.modify_guild_scheduled_event
Discorder.modify_guild_sticker
Discorder.modify_guild_template
Discorder.modify_guild_welcome_screen
Discorder.modify_guild_widget
Discorder.modify_stage_instance
Discorder.modify_user_voice_state
Discorder.modify_webhook
Discorder.modify_webhook_with_token
Discorder.pin_message
Discorder.publish
Discorder.remove_group_dm_recipient
Discorder.remove_guild_ban
Discorder.remove_guild_member
Discorder.remove_guild_member_role
Discorder.remove_thread_member
Discorder.safe_parse_json
Discorder.safe_wait
Discorder.sanitize
Discorder.search_guild_members
Discorder.serve
Discorder.should_trigger
Discorder.show_error
Discorder.start_control_plane
Discorder.start_thread_from_message
Discorder.start_thread_without_message
Discorder.sync_guild_template
Discorder.trigger_typing_indicator
Discorder.unpin_message
Discorder.waterfall
Discorder.@discord_object
Discorder.AbstractEventPublisher
— TypeAbstractEventPublisher
An interface for publishing gateway events.
Discorder.AbstractTrigger
— TypeAbstractTrigger
A trigger is used to represent data that can be used to determine whether an event handler should be fired. For example, a regex-based command trigger may store a Regex
object that can be used to match messages.
Discorder.CommandTrigger
— TypeCommandTrigger
A regex-based trigger that matches a message pattern.
Discorder.Event
— TypeEvent
A gateway event.
Discorder.GatewayTracker
— TypeGatewayTracker
GatewayTracker is a stateful object used by the Control Pane.
Discorder.ReactionAddTrigger
— TypeReactionAddTrigger
A trigger that is fired when a reaction is added to a message.
Discorder.add_group_dm_recipient
— Functionadd_group_dm_recipient(client, channel_id, user_id; kwargs...) -> Nothing
Make a PUT request to /channels/<channel_id>/recipients/<user_id>
. See the Discord API documentation for more information.
Discorder.add_guild_member
— Functionadd_guild_member(client, guild_id, user_id; kwargs...) -> GuildMember
Make a PUT request to /guilds/<guild_id>/members/<user_id>
. See the Discord API documentation for more information.
Discorder.add_guild_member_role
— Functionadd_guild_member_role(client, guild_id, user_id, role_id) -> Nothing
Make a PUT request to /guilds/<guild_id>/members/<user_id>/roles/<role_id>
. See the Discord API documentation for more information.
Discorder.add_thread_member
— Functionadd_thread_member(client, channel_id, user_id) -> Nothing
Make a PUT request to /channels/<channel_id>/thread-members/<user_id>
. See the Discord API documentation for more information.
Discorder.begin_guild_prune
— Functionbegin_guild_prune(client, guild_id; kwargs...) -> PruneCount
Make a POST request to /guilds/<guild_id>/prune
. See the Discord API documentation for more information.
Discorder.bulk_delete_messages
— Functionbulk_delete_messages(client, channel_id; kwargs...) -> Nothing
Make a POST request to /channels/<channel_id>/messages/bulk-delete
. See the Discord API documentation for more information.
Discorder.create_channel_invite
— Functioncreate_channel_invite(client, channel_id; kwargs...) -> Invite
Make a POST request to /channels/<channel_id>/invites
. See the Discord API documentation for more information.
Discorder.create_dm
— Functioncreate_dm(client; kwargs...) -> DiscordChannel
Make a POST request to /users/@me/channels
. See the Discord API documentation for more information.
Discorder.create_event
— Methodcreate_event_object(tracker::GatewayTracker, event_type::AbstractString, json::Optional{Abstract)
Create an event object by parsing the gateway event as JSON string.
Discorder.create_group_dm
— Functioncreate_group_dm(client; kwargs...) -> DiscordChannel
Make a POST request to /users/@me/channels
. See the Discord API documentation for more information.
Discorder.create_guild
— Functioncreate_guild(client; kwargs...) -> Guild
Make a POST request to /guilds
. See the Discord API documentation for more information.
Discorder.create_guild_ban
— Functioncreate_guild_ban(client, guild_id, user_id; kwargs...) -> Nothing
Make a PUT request to /guilds/<guild_id>/bans/<user_id>
. See the Discord API documentation for more information.
Discorder.create_guild_channel
— Functioncreate_guild_channel(client, guild_id; kwargs...) -> DiscordChannel
Make a POST request to /guilds/<guild_id>/channels
. See the Discord API documentation for more information.
Discorder.create_guild_emoji
— Functioncreate_guild_emoji(client, guild_id; kwargs...) -> Emoji
Make a POST request to /guilds/<guild_id>/emojis
. See the Discord API documentation for more information.
Discorder.create_guild_from_guild_template
— Functioncreate_guild_from_guild_template(client, template_code; kwargs...) -> Guild
Make a POST request to /guilds/templates/<template_code>
. See the Discord API documentation for more information.
Discorder.create_guild_role
— Functioncreate_guild_role(client, guild_id; kwargs...) -> Role
Make a POST request to /guilds/<guild_id>/roles
. See the Discord API documentation for more information.
Discorder.create_guild_scheduled_event
— Functioncreate_guild_scheduled_event(client, guild_id; kwargs...) -> GuildScheduledEvent
Make a POST request to /guilds/<guild_id>/scheduled-events
. See the Discord API documentation for more information.
Discorder.create_guild_template
— Functioncreate_guild_template(client, guild_id; kwargs...) -> GuildTemplate
Make a POST request to /guilds/<guild_id>/templates
. See the Discord API documentation for more information.
Discorder.create_guild_ticker
— Functioncreate_guild_ticker(client, guild_id; kwargs...) -> Sticker
Make a POST request to /guilds/<guild_id>/stickers
. See the Discord API documentation for more information.
Discorder.create_message
— Functioncreate_message(client, channel_id; kwargs...) -> Message
Make a POST request to /channels/<channel_id>/messages
. See the Discord API documentation for more information.
Discorder.create_reaction
— Functioncreate_reaction(client, channel_id, message_id, emoji) -> Nothing
Make a PUT request to /channels/<channel_id>/messages/<message_id>/reactions/<emoji>/@me
. See the Discord API documentation for more information.
Discorder.create_stage_instance
— Functioncreate_stage_instance(client; kwargs...) -> StageInstance
Make a POST request to /stage-instances
. See the Discord API documentation for more information.
Discorder.create_webhook
— Functioncreate_webhook(client, channel_id; kwargs...) -> Webhook
Make a POST request to /channels/<channel_id>/webhooks
. See the Discord API documentation for more information.
Discorder.crosspost_message
— Functioncrosspost_message(client, channel_id, message_id) -> Message
Make a POST request to /channels/<channel_id>/messages/<message_id>/crosspost
. See the Discord API documentation for more information.
Discorder.delete_all_reactions
— Functiondelete_all_reactions(client, channel_id, message_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/messages/<message_id>/reactions
. See the Discord API documentation for more information.
Discorder.delete_all_reactions_for_emoji
— Functiondelete_all_reactions_for_emoji(client, channel_id, message_id, emoji) -> Nothing
Make a DELETE request to /channels/<channel_id>/messages/<message_id>/reactions/<emoji>
. See the Discord API documentation for more information.
Discorder.delete_channel
— Functiondelete_channel(client, channel_id) -> DiscordChannel
Make a DELETE request to /channels/<channel_id>
. See the Discord API documentation for more information.
Discorder.delete_channel_permission
— Functiondelete_channel_permission(client, channel_id, overwrite) -> Nothing
Make a DELETE request to /channels/<channel_id>/permissions/<overwrite>
. See the Discord API documentation for more information.
Discorder.delete_guild
— Functiondelete_guild(client, guild_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>
. See the Discord API documentation for more information.
Discorder.delete_guild_emoji
— Functiondelete_guild_emoji(client, guild_id, emoji) -> Nothing
Make a DELETE request to /guilds/<guild_id>/emojis/<emoji>
. See the Discord API documentation for more information.
Discorder.delete_guild_integration
— Functiondelete_guild_integration(client, guild_id, integration_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/integrations/<integration_id>
. See the Discord API documentation for more information.
Discorder.delete_guild_role
— Functiondelete_guild_role(client, guild_id, role_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/roles/<role_id>
. See the Discord API documentation for more information.
Discorder.delete_guild_scheduled_event
— Functiondelete_guild_scheduled_event(client, guild_id, guild_scheduled_event_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/scheduled-events/<guild_scheduled_event_id>
. See the Discord API documentation for more information.
Discorder.delete_guild_sticker
— Functiondelete_guild_sticker(client, guild_id, sticker_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/stickers/<sticker_id>
. See the Discord API documentation for more information.
Discorder.delete_guild_template
— Functiondelete_guild_template(client, guild_id, template_code) -> GuildTemplate
Make a DELETE request to /guilds/<guild_id>/templates/<template_code>
. See the Discord API documentation for more information.
Discorder.delete_invite
— Functiondelete_invite(client, invite_code) -> Invite
Make a DELETE request to /invites/<invite_code>
. See the Discord API documentation for more information.
Discorder.delete_message
— Functiondelete_message(client, channel_id, message_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/messages/<message_id>
. See the Discord API documentation for more information.
Discorder.delete_own_reaction
— Functiondelete_own_reaction(client, channel_id, message_id, emoji) -> Nothing
Make a DELETE request to /channels/<channel_id>/messages/<message_id>/reactions/<emoji>/@me
. See the Discord API documentation for more information.
Discorder.delete_stage_instance
— Functiondelete_stage_instance(client) -> Nothing
Make a DELETE request to /stage-instances/{channel.id}
. See the Discord API documentation for more information.
Discorder.delete_user_reaction
— Functiondelete_user_reaction(client, channel_id, message_id, emoji, user_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/messages/<message_id>/reactions/<emoji>/<user_id>
. See the Discord API documentation for more information.
Discorder.delete_webhook
— Functiondelete_webhook(client, webhook_id; kwargs...) -> Webhook
Make a DELETE request to /webhooks/<webhook_id>
. See the Discord API documentation for more information.
Discorder.delete_webhook_message
— Functiondelete_webhook_message(client, webhook_id, webhook_tokenb, message_id; kwargs...) -> Nothing
Make a DELETE request to /webhooks/<webhook_id>/<webhook_tokenb>/messages/<message_id>
. See the Discord API documentation for more information.
Discorder.delete_webhook_with_token
— Functiondelete_webhook_with_token(client, webhook_id, webhook_token; kwargs...) -> Webhook
Make a DELETE request to /webhooks/<webhook_id>/<webhook_token>
. See the Discord API documentation for more information.
Discorder.edit_channel_permissions
— Functionedit_channel_permissions(client, channel_id, overwrite; kwargs...) -> Nothing
Make a PUT request to /channels/<channel_id>/permissions/<overwrite>
. See the Discord API documentation for more information.
Discorder.edit_message
— Functionedit_message(client, channel_id, message_id; kwargs...) -> Message
Make a PATCH request to /channels/<channel_id>/messages/<message_id>
. See the Discord API documentation for more information.
Discorder.edit_webhook_message
— Functionedit_webhook_message(client, webhook_id, webhook_tokenb, message_id; kwargs...) -> Message
Make a PATCH request to /webhooks/<webhook_id>/<webhook_tokenb>/messages/<message_id>
. See the Discord API documentation for more information.
Discorder.execute_github_compatible_webhook
— Functionexecute_github_compatible_webhook(client, webhook_id, webhook_token; wait=true, kwargs...) -> Message
Make a POST request to /webhooks/<webhook_id>/<webhook_token>/github
. See the Discord API documentation for more information.
Discorder.execute_slack_compatible_webhook
— Functionexecute_slack_compatible_webhook(client, webhook_id, webhook_token; wait=true, kwargs...) -> Message
Make a POST request to /webhooks/<webhook_id>/<webhook_token>/slack
. See the Discord API documentation for more information.
Discorder.execute_webhook
— Functionexecute_webhook(client, webhook_id, webhook_token; wait=true, kwargs...) -> Message
Make a POST request to /webhooks/<webhook_id>/<webhook_token>
. See the Discord API documentation for more information.
Discorder.follow_news_channel
— Functionfollow_news_channel(client, channel_id; kwargs...) -> FollowedChannel
Make a POST request to /channels/<channel_id>/followers
. See the Discord API documentation for more information.
Discorder.get_bot_token
— Methodget_bot_token()
Get the bot token from enviornment variable DISCORD_BOT_TOKEN
.
Discorder.get_channel
— Functionget_channel(client, channel_id; kwargs...) -> DiscordChannel
Make a GET request to /channels/<channel_id>
. See the Discord API documentation for more information.
Discorder.get_channel_invites
— Functionget_channel_invites(client, channel_id; kwargs...) -> Vector{Invite}
Make a GET request to /channels/<channel_id>/invites
. See the Discord API documentation for more information.
Discorder.get_channel_message
— Functionget_channel_message(client, channel_id, message_id) -> Message
Make a GET request to /channels/<channel_id>/messages/<message_id>
. See the Discord API documentation for more information.
Discorder.get_channel_messages
— Functionget_channel_messages(client, channel_id; kwargs...) -> Vector{Message}
Make a GET request to /channels/<channel_id>/messages
. See the Discord API documentation for more information.
Discorder.get_channel_webhooks
— Functionget_channel_webhooks(client, channel_id) -> Vector{Webhook}
Make a GET request to /channels/<channel_id>/webhooks
. See the Discord API documentation for more information.
Discorder.get_current_user
— Functionget_current_user(client) -> User
Make a GET request to /users/@me
. See the Discord API documentation for more information.
Discorder.get_current_user_guild_member
— Functionget_current_user_guild_member(client) -> GuildMember
Make a GET request to /users/@me/guilds/{guild.id}/member
. See the Discord API documentation for more information.
Discorder.get_current_user_guilds
— Functionget_current_user_guilds(client; kwargs...) -> Vector{Guild}
Make a GET request to /users/@me/guilds
. See the Discord API documentation for more information.
Discorder.get_gateway
— Functionget_gateway(client) -> Gateway
Make a GET request to /gateway
. See the Discord API documentation for more information.
Discorder.get_guild
— Functionget_guild(client, guild_id; kwargs...) -> Guild
Make a GET request to /guilds/<guild_id>
. See the Discord API documentation for more information.
Discorder.get_guild_audit_log
— Functionget_guild_audit_log(client, guild_id; kwargs...) -> AuditLog
Make a GET request to /guilds/<guild_id>/audit-logs
. See the Discord API documentation for more information.
Discorder.get_guild_ban
— Functionget_guild_ban(client, guild_id, user_id) -> Ban
Make a GET request to /guilds/<guild_id>/bans/<user_id>
. See the Discord API documentation for more information.
Discorder.get_guild_bans
— Functionget_guild_bans(client, guild_id) -> Vector{Guild}
Make a GET request to /guilds/<guild_id>/bans
. See the Discord API documentation for more information.
Discorder.get_guild_channels
— Functionget_guild_channels(client, guild_id) -> Vector{DiscordChannel}
Make a GET request to /guilds/<guild_id>/channels
. See the Discord API documentation for more information.
Discorder.get_guild_emoji
— Functionget_guild_emoji(client, guild_id, emoji) -> Emoji
Make a GET request to /guilds/<guild_id>/emojis/<emoji>
. See the Discord API documentation for more information.
Discorder.get_guild_integrations
— Functionget_guild_integrations(client, guild_id) -> Vector{Integration}
Make a GET request to /guilds/<guild_id>/integrations
. See the Discord API documentation for more information.
Discorder.get_guild_invites
— Functionget_guild_invites(client, guild_id) -> Vector{Invite}
Make a GET request to /guilds/<guild_id>/invites
. See the Discord API documentation for more information.
Discorder.get_guild_member
— Functionget_guild_member(client, guild_id, user_id) -> GuildMember
Make a GET request to /guilds/<guild_id>/members/<user_id>
. See the Discord API documentation for more information.
Discorder.get_guild_preview
— Functionget_guild_preview(client, guild_id) -> Guild
Make a GET request to /guilds/<guild_id>/preview
. See the Discord API documentation for more information.
Discorder.get_guild_prune_count
— Functionget_guild_prune_count(client, guild_id; kwargs...) -> PruneCount
Make a GET request to /guilds/<guild_id>/prune
. See the Discord API documentation for more information.
Discorder.get_guild_roles
— Functionget_guild_roles(client, guild_id) -> Vector{Role}
Make a GET request to /guilds/<guild_id>/roles
. See the Discord API documentation for more information.
Discorder.get_guild_scheduled_event
— Functionget_guild_scheduled_event(client, guild_id, guild_scheduled_event_id; kwargs...) -> GuildScheduledEvent
Make a GET request to /guilds/<guild_id>/scheduled-events/<guild_scheduled_event_id>
. See the Discord API documentation for more information.
Discorder.get_guild_scheduled_event_users
— Functionget_guild_scheduled_event_users(client, guild_id, guild_scheduled_event_id; kwargs...) -> Vector{GuildScheduledEventUser}
Make a GET request to /guilds/<guild_id>/scheduled-events/<guild_scheduled_event_id>/users
. See the Discord API documentation for more information.
Discorder.get_guild_sticker
— Functionget_guild_sticker(client, guild_id, sticker_id) -> Sticker
Make a GET request to /guilds/<guild_id>/stickers/<sticker_id>
. See the Discord API documentation for more information.
Discorder.get_guild_template
— Functionget_guild_template(client, template_code) -> GuildTemplate
Make a GET request to /guilds/templates/<template_code>
. See the Discord API documentation for more information.
Discorder.get_guild_templates
— Functionget_guild_templates(client, guild_id) -> Vector{GuildTemplate}
Make a GET request to /guilds/<guild_id>/templates
. See the Discord API documentation for more information.
Discorder.get_guild_vanity_url
— Functionget_guild_vanity_url(client, guild_id) -> Invite
Make a GET request to /guilds/<guild_id>/vanity-url
. See the Discord API documentation for more information.
Discorder.get_guild_voice_regions
— Functionget_guild_voice_regions(client, guild_id) -> Vector{VoiceRegion}
Make a GET request to /guilds/<guild_id>/regions
. See the Discord API documentation for more information.
Discorder.get_guild_webhooks
— Functionget_guild_webhooks(client, guild_id) -> Vector{Webhook}
Make a GET request to /guilds/<guild_id>/webhooks
. See the Discord API documentation for more information.
Discorder.get_guild_welcome_screen
— Functionget_guild_welcome_screen(client, guild_id; kwargs...) -> WelcomeScreen
Make a GET request to /guilds/<guild_id>/welcome-screen
. See the Discord API documentation for more information.
Discorder.get_guild_widget
— Functionget_guild_widget(client, guild_id) -> GuildWidget
Make a GET request to /guilds/<guild_id>/widget.json
. See the Discord API documentation for more information.
Discorder.get_guild_widget_image
— Functionget_guild_widget_image(client, guild_id) -> String
Make a GET request to /guilds/<guild_id>/widget.png
. See the Discord API documentation for more information.
Discorder.get_guild_widget_settings
— Functionget_guild_widget_settings(client, guild_id) -> GuildWidgetSettings
Make a GET request to /guilds/<guild_id>/widget
. See the Discord API documentation for more information.
Discorder.get_invite
— Functionget_invite(client, invite_code; kwargs...) -> Invite
Make a GET request to /invites/<invite_code>
. See the Discord API documentation for more information.
Discorder.get_logger
— Methodget_logger(filename; debug::Bool)
Return a custom logger that write to the specified log file. A timestamp is automatically injected.
Arguments
file_path
: path of log file
Keyword arguments
debug
: turn on debug logging (default =false
)
Discorder.get_pinned_messages
— Functionget_pinned_messages(client, channel_id) -> Vector{Message}
Make a GET request to /channels/<channel_id>/pins
. See the Discord API documentation for more information.
Discorder.get_reactions
— Functionget_reactions(client, channel_id, message_id, emoji; kwargs...) -> Vector{User}
Make a GET request to /channels/<channel_id>/messages/<message_id>/reactions/<emoji>
. See the Discord API documentation for more information.
Discorder.get_stage_instance
— Functionget_stage_instance(client) -> StageInstance
Make a GET request to /stage-instances/{channel.id}
. See the Discord API documentation for more information.
Discorder.get_sticker
— Functionget_sticker(client, sticker_id) -> Sticker
Make a GET request to /stickers/<sticker_id>
. See the Discord API documentation for more information.
Discorder.get_thread_member
— Functionget_thread_member(client, channel_id, user_id) -> ThreadMember
Make a GET request to /channels/<channel_id>/thread-members/<user_id>
. See the Discord API documentation for more information.
Discorder.get_user
— Functionget_user(client, user_id) -> User
Make a GET request to /users/<user_id>
. See the Discord API documentation for more information.
Discorder.get_user_connections
— Functionget_user_connections(client) -> Vector{Connection}
Make a GET request to /users/@me/connections
. See the Discord API documentation for more information.
Discorder.get_webhook
— Functionget_webhook(client, webhook_id) -> Webhook
Make a GET request to /webhooks/<webhook_id>
. See the Discord API documentation for more information.
Discorder.get_webhook_message
— Functionget_webhook_message(client, webhook_id, webhook_tokenb, message_id; kwargs...) -> Message
Make a GET request to /webhooks/<webhook_id>/<webhook_tokenb>/messages/<message_id>
. See the Discord API documentation for more information.
Discorder.get_webhook_with_token
— Functionget_webhook_with_token(client, webhook_id, webhook_token) -> Webhook
Make a GET request to /webhooks/<webhook_id>/<webhook_token>
. See the Discord API documentation for more information.
Discorder.join_thread
— Functionjoin_thread(client, channel_id) -> Nothing
Make a PUT request to /channels/<channel_id>/thread-members/@me
. See the Discord API documentation for more information.
Discorder.json
— MethodConvert object to JSON formatted string.
- Fields with
missing
values are excluded. - Fields with
nothing
values are included asnull
.
Discorder.leave_guild
— Functionleave_guild(client, guild_id) -> Nothing
Make a DELETE request to /users/@me/guilds/<guild_id>
. See the Discord API documentation for more information.
Discorder.leave_thread
— Functionleave_thread(client, channel_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/thread-members/@me
. See the Discord API documentation for more information.
Discorder.list_active_guild_threads
— Functionlist_active_guild_threads(client, guild_id) -> Nothing
Make a GET request to /guilds/<guild_id>/threads/active
. See the Discord API documentation for more information.
Discorder.list_guild_emojis
— Functionlist_guild_emojis(client, guild_id) -> Vector{Emoji}
Make a GET request to /guilds/<guild_id>/emojis
. See the Discord API documentation for more information.
Discorder.list_guild_members
— Functionlist_guild_members(client, guild_id; kwargs...) -> Vector{GuildMember}
Make a GET request to /guilds/<guild_id>/members
. See the Discord API documentation for more information.
Discorder.list_guild_scheduled_events
— Functionlist_guild_scheduled_events(client, guild_id; kwargs...) -> Vector{GuildScheduledEvent}
Make a GET request to /guilds/<guild_id>/scheduled-events
. See the Discord API documentation for more information.
Discorder.list_guild_stickers
— Functionlist_guild_stickers(client, guild_id) -> Vector{Sticker}
Make a GET request to /guilds/<guild_id>/stickers
. See the Discord API documentation for more information.
Discorder.list_joined_private_archived_threads
— Functionlist_joined_private_archived_threads(client, channel_id; kwargs...) -> ArchivedThread
Make a GET request to /channels/<channel_id>/users/@me/threads/archived/private
. See the Discord API documentation for more information.
Discorder.list_nitro_sticker_packs
— Functionlist_nitro_sticker_packs(client) -> Vector{Sticker}
Make a GET request to /sticker-packs
. See the Discord API documentation for more information.
Discorder.list_private_archived_threads
— Functionlist_private_archived_threads(client, channel_id; kwargs...) -> ArchivedThread
Make a GET request to /channels/<channel_id>/threads/archived/private
. See the Discord API documentation for more information.
Discorder.list_public_archived_threads
— Functionlist_public_archived_threads(client, channel_id; kwargs...) -> ArchivedThread
Make a GET request to /channels/<channel_id>/threads/archived/public
. See the Discord API documentation for more information.
Discorder.list_thread_members
— Functionlist_thread_members(client, channel_id) -> Vector{ThreadMember}
Make a GET request to /channels/<channel_id>/thread-members
. See the Discord API documentation for more information.
Discorder.list_voice_regions
— Functionlist_voice_regions(client) -> Vector{VoiceRegion}
Make a GET request to /voice/regions
. See the Discord API documentation for more information.
Discorder.modify_channel
— Functionmodify_channel(client, channel_id; kwargs...) -> DiscordChannel
Make a PATCH request to /channels/<channel_id>
. See the Discord API documentation for more information.
Discorder.modify_current_member
— Functionmodify_current_member(client, guild_id; kwargs...) -> Nothing
Make a PATCH request to /guilds/<guild_id>/members/@me
. See the Discord API documentation for more information.
Discorder.modify_current_user
— Functionmodify_current_user(client; kwargs...) -> User
Make a PATCH request to /users/@me
. See the Discord API documentation for more information.
Discorder.modify_current_user_nick
— Functionmodify_current_user_nick(client, guild_id; kwargs...) -> UserNickChange
Make a PATCH request to /guilds/<guild_id>/members/@me/nick
. See the Discord API documentation for more information.
Discorder.modify_current_user_voice_state
— Functionmodify_current_user_voice_state(client, guild_id; kwargs...) -> Nothing
Make a PATCH request to /guilds/<guild_id>/voice-states/@me
. See the Discord API documentation for more information.
Discorder.modify_guild
— Functionmodify_guild(client, guild_id; kwargs...) -> Guild
Make a PATCH request to /guilds/<guild_id>
. See the Discord API documentation for more information.
Discorder.modify_guild_channel_positions
— Functionmodify_guild_channel_positions(client, guild_id; positions) -> Nothing
Make a PATCH request to /guilds/<guild_id>/channels
. See the Discord API documentation for more information.
Discorder.modify_guild_emoji
— Functionmodify_guild_emoji(client, guild_id, emoji; kwargs...) -> Emoji
Make a PATCH request to /guilds/<guild_id>/emojis/<emoji>
. See the Discord API documentation for more information.
Discorder.modify_guild_member
— Functionmodify_guild_member(client, guild_id, user_id; kwargs...) -> Nothing
Make a PATCH request to /guilds/<guild_id>/members/<user_id>
. See the Discord API documentation for more information.
Discorder.modify_guild_role
— Functionmodify_guild_role(client, guild_id, role_id; kwargs...) -> Role
Make a PATCH request to /guilds/<guild_id>/roles/<role_id>
. See the Discord API documentation for more information.
Discorder.modify_guild_role_positions
— Functionmodify_guild_role_positions(client, guild_id; positions) -> Vector{Role}
Make a PATCH request to /guilds/<guild_id>/roles
. See the Discord API documentation for more information.
Discorder.modify_guild_scheduled_event
— Functionmodify_guild_scheduled_event(client, guild_id, guild_scheduled_event_id; kwargs...) -> GuildScheduledEvent
Make a PATCH request to /guilds/<guild_id>/scheduled-events/<guild_scheduled_event_id>
. See the Discord API documentation for more information.
Discorder.modify_guild_sticker
— Functionmodify_guild_sticker(client, guild_id, sticker_id; kwargs...) -> Sticker
Make a PATCH request to /guilds/<guild_id>/stickers/<sticker_id>
. See the Discord API documentation for more information.
Discorder.modify_guild_template
— Functionmodify_guild_template(client, guild_id, template_code; kwargs...) -> GuildTemplate
Make a PATCH request to /guilds/<guild_id>/templates/<template_code>
. See the Discord API documentation for more information.
Discorder.modify_guild_welcome_screen
— Functionmodify_guild_welcome_screen(client, guild_id; kwargs...) -> WelcomeScreen
Make a PATCH request to /guilds/<guild_id>/welcome-screen
. See the Discord API documentation for more information.
Discorder.modify_guild_widget
— Functionmodify_guild_widget(client, guild_id; kwargs...) -> GuildWidget
Make a PATCH request to /guilds/<guild_id>/widget
. See the Discord API documentation for more information.
Discorder.modify_stage_instance
— Functionmodify_stage_instance(client; kwargs...) -> StageInstance
Make a PATCH request to /stage-instances/{channel.id}
. See the Discord API documentation for more information.
Discorder.modify_user_voice_state
— Functionmodify_user_voice_state(client, guild_id, user_id; kwargs...) -> Nothing
Make a PATCH request to /guilds/<guild_id>/voice-states/<user_id>
. See the Discord API documentation for more information.
Discorder.modify_webhook
— Functionmodify_webhook(client, webhook_id; kwargs...) -> Webhook
Make a PATCH request to /webhooks/<webhook_id>
. See the Discord API documentation for more information.
Discorder.modify_webhook_with_token
— Functionmodify_webhook_with_token(client, webhook_id, webhook_token; kwargs...) -> Webhook
Make a PATCH request to /webhooks/<webhook_id>/<webhook_token>
. See the Discord API documentation for more information.
Discorder.pin_message
— Functionpin_message(client, channel_id, message_id) -> Nothing
Make a PUT request to /channels/<channel_id>/pins/<message_id>
. See the Discord API documentation for more information.
Discorder.publish
— Methodpublish(publisher::AbstractEventPublisher, event::Event)
Publish an event via the provided event publisher.
Discorder.remove_group_dm_recipient
— Functionremove_group_dm_recipient(client, channel_id, user_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/recipients/<user_id>
. See the Discord API documentation for more information.
Discorder.remove_guild_ban
— Functionremove_guild_ban(client, guild_id, user_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/bans/<user_id>
. See the Discord API documentation for more information.
Discorder.remove_guild_member
— Functionremove_guild_member(client, guild_id, user_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/members/<user_id>
. See the Discord API documentation for more information.
Discorder.remove_guild_member_role
— Functionremove_guild_member_role(client, guild_id, user_id, role_id) -> Nothing
Make a DELETE request to /guilds/<guild_id>/members/<user_id>/roles/<role_id>
. See the Discord API documentation for more information.
Discorder.remove_thread_member
— Functionremove_thread_member(client, channel_id, user_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/thread-members/<user_id>
. See the Discord API documentation for more information.
Discorder.safe_parse_json
— Methodsafe_parse_json(tracker::GatewayTracker, json::AbstractString, T::DataType)
Parse a JSON string into an expected type T
, which is configured using StructType traits. Returns nothing
if the string cannot be parsed for some reasons. Throw exception only during fail_on_error
mode.
Discorder.safe_wait
— Methodsafe_wait(task::Optional{Task})
Wait for a task for finish synchronously. Unlike wait
, it is meant to be safe and never throw, except during fail_on_error
mode. Always return nothing
.
Discorder.sanitize
— Methodsanitize(s::AbstractString)
Remove sensitive information such as Bot token.
Discorder.search_guild_members
— Functionsearch_guild_members(client, guild_id; kwargs...) -> Vector{GuildMember}
Make a GET request to /guilds/<guild_id>/members/search
. See the Discord API documentation for more information.
Discorder.serve
— Methodserve(;
client::BotClient=BotClient(),
tracker_ref=Ref{GatewayTracker}(),
config_file_path::Optional{AbstractString}=nothing,
)
Run control plane in a loop so that we can actually auto-recover when bad things happen.
Discorder.should_trigger
— FunctionReturn a vector of arguments that is passed to the user function when triggered, or nothing
if the trigger should not be fired.
Discorder.show_error
— Methodshow_error(ex::Exception)
Display an error in the log with backtrace. This is usefulf for debugging purpose.
Discorder.start_control_plane
— Methodstart_control_plane(client::BotClient, config)
Start new control plane and return a GatewayTracker
object.
Discorder.start_thread_from_message
— Functionstart_thread_from_message(client, channel_id, message_id; kwargs...) -> DiscordChannel
Make a POST request to /channels/<channel_id>/messages/<message_id>/threads
. See the Discord API documentation for more information.
Discorder.start_thread_without_message
— Functionstart_thread_without_message(client, channel_id; kwargs...) -> DiscordChannel
Make a POST request to /channels/<channel_id>/threads
. See the Discord API documentation for more information.
Discorder.sync_guild_template
— Functionsync_guild_template(client, guild_id, template_code) -> GuildTemplate
Make a PUT request to /guilds/<guild_id>/templates/<template_code>
. See the Discord API documentation for more information.
Discorder.trigger_typing_indicator
— Functiontrigger_typing_indicator(client, channel_id) -> Nothing
Make a POST request to /channels/<channel_id>/typing
. See the Discord API documentation for more information.
Discorder.unpin_message
— Functionunpin_message(client, channel_id, message_id) -> Nothing
Make a DELETE request to /channels/<channel_id>/pins/<message_id>
. See the Discord API documentation for more information.
Discorder.waterfall
— Methodwaterfall(f, xs)
Apply function f
to each element of collection xs
iteratively and return the very first application where no exception was thrown. If every application throws exception then the last exception is re-thrown.
Discorder.@discord_object
— MacroDefine a Discord resource.