EDA.Integration (EDA v0.5.0-beta.2)

Copy Markdown View Source

A guild integration: a Twitch or YouTube connection, a guild subscription, or a bot or OAuth2 application added to the guild (type: "discord").

Arrives with the INTEGRATION_CREATE and INTEGRATION_UPDATE events, which also carry the guild_id. Fields marked Twitch/YouTube-only in Discord's reference are nil for a discord integration.

Summary

Functions

Whether this integration is a bot or OAuth2 application rather than Twitch or YouTube.

Converts a raw integration object into this struct.

Types

t()

@type t() :: %EDA.Integration{
  account: map() | nil,
  application: map() | nil,
  enable_emoticons: boolean() | nil,
  enabled: boolean() | nil,
  expire_behavior: :remove_role | :kick | integer() | nil,
  expire_grace_period: integer() | nil,
  guild_id: String.t() | nil,
  id: String.t() | nil,
  name: String.t() | nil,
  revoked: boolean() | nil,
  role_id: String.t() | nil,
  scopes: [String.t()] | nil,
  subscriber_count: integer() | nil,
  synced_at: String.t() | nil,
  syncing: boolean() | nil,
  type: String.t() | nil,
  user: EDA.User.t() | nil
}

Functions

application?(integration)

@spec application?(t()) :: boolean()

Whether this integration is a bot or OAuth2 application rather than Twitch or YouTube.

from_raw(raw)

@spec from_raw(map()) :: t()

Converts a raw integration object into this struct.