Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Types relating to Discord Guilds (servers)
Synopsis
- data Guild = Guild {
- guildId :: GuildId
- guildName :: Text
- guildIcon :: Maybe Text
- guildIconHash :: Maybe Text
- guildSplash :: Maybe Text
- guildDiscoverySplash :: Maybe Text
- guildOwner :: Maybe Bool
- guildOwnerId :: UserId
- guildPermissions :: Maybe Text
- guildAfkId :: Maybe ChannelId
- guildAfkTimeout :: Integer
- guildWidgetEnabled :: Maybe Bool
- guildWidgetChannelId :: Maybe ChannelId
- guildVerificationLevel :: Integer
- guildNotification :: Integer
- guildExplicitFilterLevel :: Integer
- guildRoles :: [Role]
- guildEmojis :: [Emoji]
- guildFeatures :: [Text]
- guildMultiFactAuth :: !Integer
- guildApplicationId :: Maybe ApplicationId
- guildSystemChannelId :: Maybe ChannelId
- guildSystemChannelFlags :: Integer
- guildRulesChannelId :: Maybe ChannelId
- guildMaxPresences :: Maybe Integer
- guildMaxMembers :: Maybe Integer
- guildVanityURL :: Maybe Text
- guildDescription :: Maybe Text
- guildBanner :: Maybe Text
- guildPremiumTier :: Integer
- guildSubscriptionCount :: Maybe Integer
- guildPreferredLocale :: Text
- guildPublicUpdatesChannel :: Maybe ChannelId
- guildMaxVideoUsers :: Maybe Integer
- guildApproxMemberCount :: Maybe Integer
- guildApproxPresenceCount :: Maybe Integer
- guildNSFWLevel :: Integer
- guildStickers :: Maybe [StickerItem]
- guildPremiumBar :: Bool
- newtype GuildUnavailable = GuildUnavailable {}
- data PresenceInfo = PresenceInfo {
- presenceUserId :: UserId
- presenceActivities :: Maybe [(Activity, Maybe [Text])]
- presenceGuildId :: Maybe GuildId
- presenceStatus :: Maybe Text
- data Activity = Activity {
- activityName :: Text
- activityType :: ActivityType
- activityUrl :: Maybe Text
- activityCreatedAt :: Integer
- activityTimeStamps :: Maybe ActivityTimestamps
- activityApplicationId :: Maybe ApplicationId
- activityDetails :: Maybe Text
- activityState :: Maybe Text
- activityEmoji :: Maybe Emoji
- activityParty :: Maybe ActivityParty
- activityInstance :: Maybe Bool
- activityFlags :: Maybe Integer
- activityButtons :: Maybe [ActivityButton]
- mkActivity :: Text -> ActivityType -> Activity
- data ActivityTimestamps = ActivityTimestamps {}
- data ActivityParty = ActivityParty {}
- data ActivityButton = ActivityButton {}
- data ActivityType
- data PartialGuild = PartialGuild {}
- data Role = Role {
- roleId :: RoleId
- roleName :: Text
- roleColor :: DiscordColor
- roleHoist :: Bool
- rolePos :: Integer
- rolePerms :: RolePermissions
- roleManaged :: Bool
- roleMention :: Bool
- roleIdToRole :: Guild -> RoleId -> Maybe Role
- data VoiceRegion = VoiceRegion {}
- data GuildBan = GuildBan {}
- data Invite = Invite {}
- data InviteWithMeta = InviteWithMeta Invite InviteMeta
- data InviteMeta = InviteMeta {}
- data Integration = Integration {}
- data IntegrationAccount = IntegrationAccount {
- accountId :: Text
- accountName :: Text
- data GuildWidget = GuildWidget {}
Documentation
Guilds in Discord represent a collection of users and channels into an isolated Server
https://discord.com/developers/docs/resources/guild#guild-object
Guild | |
|
data PresenceInfo Source #
PresenceInfo | |
|
Instances
Object for a single activity
https://discord.com/developers/docs/topics/gateway-events#activity-object
When setting a bot's activity, only the name, url, and type are sent - and it seems that not many types are permitted either.
Only youtube and twitch urls will work.
Activity | |
|
mkActivity :: Text -> ActivityType -> Activity Source #
The quick and easy way to make an activity for a discord bot.
To set the activityState
or activityUrl
, please use record field syntax.
data ActivityTimestamps Source #
ActivityTimestamps | |
|
Instances
data ActivityParty Source #
Instances
data ActivityButton Source #
Instances
data ActivityType Source #
To see what these look like, go to here: https://discord.com/developers/docs/topics/gateway#activity-object-activity-types
ActivityTypeGame | |
ActivityTypeStreaming | |
ActivityTypeListening | |
ActivityTypeWatching | |
ActivityTypeCustom | |
ActivityTypeCompeting |
Instances
data PartialGuild Source #
Instances
Roles represent a set of permissions attached to a group of users. Roles have unique names, colors, and can be "pinned" to the side bar, causing their members to be listed separately. Roles are unique per guild, and can have separate permission profiles for the global context (guild) and channel context.
Role | |
|
roleIdToRole :: Guild -> RoleId -> Maybe Role Source #
If there is no such role on the guild return nothing otherwise return the role. Take the head of the list. List should always be one, because the ID is unique
data VoiceRegion Source #
VoiceRegion is only refrenced in Guild endpoints, will be moved when voice support is added
VoiceRegion | |
|
Instances
Info about a Ban
Represents a code to add a user to a guild
Invite | |
|
data InviteWithMeta Source #
Invite code with additional metadata
Instances
FromJSON InviteWithMeta Source # | |
Defined in Discord.Internal.Types.Guild parseJSON :: Value -> Parser InviteWithMeta # parseJSONList :: Value -> Parser [InviteWithMeta] # |
data InviteMeta Source #
Additional metadata about an invite.
InviteMeta | |
|
Instances
data Integration Source #
Represents the behavior of a third party account link.
Integration | |
|
Instances
data IntegrationAccount Source #
Represents a third party account link.
IntegrationAccount | |
|
Instances
data GuildWidget Source #
Represents an image to be used in third party sites to link to a discord channel
GuildWidget | |
|