---
url: https://docs.juniper.bot/message-templates/types/discord/embed.md
description: Тип данных Embed, используемый в шаблонном движке JuniperBot.
---

[Действия]: ../../../cmd/custom/actions/index

[Число]: /message-templates/types/index#literals

[Строка]: /message-templates/types/index#literals

[Логический]: /message-templates/types/index#literals

[Список]: /message-templates/types/index#lists

[Карта]: /message-templates/types/index#maps

[DateTime]: /message-templates/types/index#datetime

[TwitchChannel]: /message-templates/types/subscriptions/twitch#twitch-channel

[TwitchStream]: /message-templates/types/subscriptions/twitch#twitch-stream

[TwitchGame]: /message-templates/types/subscriptions/twitch#twitch-game

[YouTubeChannel]: /message-templates/types/subscriptions/youtube#youtube-channel

[YouTubeVideo]: /message-templates/types/subscriptions/youtube#youtube-video

[VkWallPost]: /message-templates/types/subscriptions/vk#vkwallpost

[Rank]: /message-templates/types/discord/rank

[Guild]: /message-templates/types/discord/guild

[Member]: /message-templates/types/discord/member

[Role]: /message-templates/types/discord/role

[Message]: /message-templates/types/discord/message

[Attachment]: /message-templates/types/discord/attachment

[Embed]: /message-templates/types/discord/embed

[Activity]: /message-templates/types/discord/activity

[MemberVoiceState]: /message-templates/types/discord/member-voice-state

[MemberPrimaryGuild]: /message-templates/types/discord/member-primary-guild

[MenuBuilder]: /message-templates/types/discord/menu-builder

[UserFlag]: /message-templates/types/discord/user-flag

[Permission]: /message-templates/types/discord/permission

[Category]: /message-templates/types/discord/category

[TextChannel]: /message-templates/types/discord/text-channel

[VoiceChannel]: /message-templates/types/discord/voice-channel

[NewsChannel]: /message-templates/types/discord/news-channel

[StageChannel]: /message-templates/types/discord/stage-channel

[ForumChannel]: /message-templates/types/discord/forum-channel

[MediaChannel]: /message-templates/types/discord/media-channel

[ThreadChannel]: /message-templates/types/discord/thread-channel

[Page]: /message-templates/types/storage/page

[GuildIndex]: /message-templates/types/storage/guild-index

[GuildIndexEntry]: /message-templates/types/storage/guild-index-entry

[GuildIndexes]: /message-templates/types/storage/guild-indexes

[MemberAttribute]: /message-templates/types/storage/member-attribute

[MemberAttributes]: /message-templates/types/storage/member-attributes

[Arguments]: /message-templates/types/custom-commands/arguments

[Parameters]: /message-templates/types/custom-commands/parameters

[Component]: /message-templates/types/custom-commands/component

[Modal]: /message-templates/types/custom-commands/modal

# Embed

Этот тип данных используется для построения embed-сообщения (панели). Большинство методов возвращают этот же embed, поэтому можно строить цепочки вроде:

```template
{% do channel
    .createEmbed()
    .withContent('Содержимое вне панели')
    .withTitle('Заголовок', 'https://juniper.bot')
    .withDescription('О! Привет!')
    .appendDescription('\nКак дела?')
    .withDate(1587713425964)
    .withColor('ffff00')
    .withThumbnail(member.avatarUrl)
    .withImage('https://i.pinimg.com/originals/a4/41/6e/a4416e024d691af3a2971e4114a6da7f.png')
    .withAuthor(member.nickname)
    .withFooter('Уф, пока!', member.avatarUrl)
    .addField('Первое поле', 'О, значение первого поля', true)
    .addField('Второе поле', 'Ну и здесь что-нибудь', true)
    .addReaction(':fox_face:')
    .addButton('LINK', 'https://juniper.bot/', 'Website', '🦊')
    .send()
%}
```

## Свойства { #properties }

| Свойство      | Тип          | Описание                                                                  |
|:--------------|:-------------|:--------------------------------------------------------------------------|
| `empty`       | \[Логический] | Признак того, пустая ли сейчас панель                                     |
| `validLength` | \[Логический] | Признак того, допустимая ли длина содержимого панели для отправки в канал |
| `length`      | \[Число]      | Возвращает длину содержимого панели                                       |

## Методы { #methods }

### `withContent(Текст)`  { #method-withcontent .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает текст, который будет отправлен вне панели.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип      | Описание             |
|:---------|:---------|:---------------------|
| `Текст`  | \[Строка] | Содержимое сообщения |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withContent('Содержимое вне панели')
    .withDescription('О! Привет!')
    .send()
%}
```

:::

### `withTitle(Наименование, URL)`  { #method-withtitle .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает наименование панели и опционально ссылку.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр       | Тип      | Описание                         |
|:---------------|:---------|:---------------------------------|
| `Наименование` | \[Строка] | Содержимое заголовка             |
| `URL`          | \[Строка] | Ссылка в заголовке (опционально) |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withTitle('Заголовок', 'https://juniper.bot')
    .send()
%}
```

:::

### `withAuthor(Имя, URL, IconURL)`  { #method-withauthor .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает имя автора, опционально ссылки на страницу и на иконку

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр  | Тип      | Описание                |
|:----------|:---------|:------------------------|
| `Имя`     | \[Строка] | Имя автора              |
| `URL`     | \[Строка] | Ссылка на автора        |
| `IconURL` | \[Строка] | Ссылка на иконку автора |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withAuthor(member.nickname, 'https://juniper.bot', 'https://i.pinimg.com/originals/a4/41/6e/a4416e024d691af3a2971e4114a6da7f.png')
    .send()
%}
```

:::

### `withDescription(Текст)`  { #method-withdescription .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает содержимое панели (описание)

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип      | Описание                   |
|:---------|:---------|:---------------------------|
| `Текст`  | \[Строка] | Содержимое описания эмбеда |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .send()
%}
```

:::

### `appendDescription(Текст)`  { #method-appenddescription .template-method }

::: tabs

\== Описание | mdi-text

Дописывает указанный текст к уже существующему содержимому панели (описанию)

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип      | Описание                   |
|:---------|:---------|:---------------------------|
| `Текст`  | \[Строка] | Содержимое описания эмбеда |

\== Пример | mdi-code-block-braces

```template{3,4}
{% do channel
    .createEmbed()
    .appendDescription('О! Привет!')
    .appendDescription('\nКак дела?')
    .send()
%}
```

:::

### `withThumbnail(URL, Описание)`  { #method-withthumbnail .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает ссылку на картинку-миниатюру

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр   | Тип      | Описание                     |
|:-----------|:---------|:-----------------------------|
| `URL`      | \[Строка] | Ссылка на картинку-миниатюру |
| `Описание` | \[Строка] | Описание (Опционально)       |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withThumbnail('https://i.pinimg.com/originals/a4/41/6e/a4416e024d691af3a2971e4114a6da7f.png')
    .send()
%}
```

:::

### `withImage(URL, Описание)`  { #method-withimage .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает ссылку на полноразмерную картинку

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр   | Тип      | Описание                          |
|:-----------|:---------|:----------------------------------|
| `URL`      | \[Строка] | Ссылка на полноразмерную картинку |
| `Описание` | \[Строка] | Описание (Опционально)            |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withImage('https://i.pinimg.com/originals/a4/41/6e/a4416e024d691af3a2971e4114a6da7f.png')
    .send()
%}
```

:::

### `withColor(Цвет)`  { #method-withcolor .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает цвет панели, необходимо указывать шестизначный цвет в HEX, например `#FF0000` для красного (можно без решетки).

<https://htmlcolorcodes.com/>

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип      | Описание                                                                                                                                                           |
|:---------|:---------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `Цвет`   | \[Строка] | Цвет панели в HEX.Если указан некорректный формат цвета, установит цвет панели по-умолчанию.Пустая строка или `null` установит пустой цвет по-умолчанию. |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withColor('ffff00')
    .withDescription('О! Привет!')
    .send()
%}
```

:::

### `withDate(Дата)`  { #method-withDate .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает дату в подвале (футере) панели.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип                           | Описание                                                                                                                                    |
|:---------|:------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------|
| `Дата`   | \[DateTime], \[Число], \[Строка] | Принимает:Число (Unix timestamp);Строку в формате: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`Дату из других типов |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .withDate(1587713425964)
    .send()
%}
```

:::

### `withFooter(Текст, IconURL)`  { #method-withfooter .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает текст футера (подвала) и опционально ссылку на иконку

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр  | Тип      | Описание                                          |
|:----------|:---------|:--------------------------------------------------|
| `Текст`   | \[Строка] | Содержимое футера (подвала)                       |
| `IconURL` | \[Строка] | Ссылка на иконку в футере (подвале) (Опционально) |

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .withFooter('О! Привет!', 'https://i.pinimg.com/originals/a4/41/6e/a4416e024d691af3a2971e4114a6da7f.png')
    .send()
%}
```

:::

### `addField(Наименование, Значение, Однострочное)`  { #method-addfield .template-method }

::: tabs

\== Описание | mdi-text

Добавляет новое поле к панели, с указанным наименованием, значением и признаком однострочности.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр       | Тип          | Описание                                 |
|:---------------|:-------------|:-----------------------------------------|
| `Наименование` | \[Строка]     | Содержимое наименования (заголовка) поля |
| `Значение`     | \[Строка]     | Содержимое значения (описания) поля      |
| `Однострочное` | \[Логический] | Если `true`, то поле будет однострочным  |

\== Пример | mdi-code-block-braces

```template{3,4}
{% do channel
    .createEmbed()
    .addField('Первое поле', 'О, значение первого поля', true)
    .addField('Второе поле', 'Ну и здесь что-нибудь', true)
    .send()
%}
```

:::

### `addBlankField(Однострочное)`  { #method-addblankfield .template-method }

::: tabs

\== Описание | mdi-text

Добавляет пустое поле с указанным признаком однострочности.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр       | Тип          | Описание                                |
|:---------------|:-------------|:----------------------------------------|
| `Однострочное` | \[Логический] | Если `true`, то поле будет однострочным |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .addField('Первое поле', 'О, значение первого поля', true)
    .addBlankField(false)
    .addField('Второе поле', 'Ну и здесь что-нибудь', true)
    .send()
%}
```

:::

### `addReaction(Эмоция)`  { #method-addreaction .template-method }

::: tabs

\== Описание | mdi-text

Добавляет реакцию к сообщению. Работает аналогично функции [reaction](../../advanced/functions#reaction).

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип      | Описание                                                                                                                                                                                                                                                    |
|:---------|:---------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `Эмоция` | \[Строка] | Эмоция в одно из следующих форматах:`🦊` — Unicode-символ эмоции;`:fox_face:` — название эмоции, включая стандартные и пользовательские на сервере;`<a:foxwaggy:695917473874051112>` — код пользовательской эмоции. |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .addReaction(':fox_face:')
    .send()
%}
```

:::

### `addButton(Стиль, URL_ID, Наименование, Эмоция, UUID, Отключена)`  { #method-addbutton .template-method }

::: tabs

\== Описание | mdi-text

Добавляет кнопку к сообщению. Работает аналогично функции [button](../../advanced/functions#button).

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр       | Тип          | Описание                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---------------|:-------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `Стиль`        | \[Строка]     | Стиль кнопки: `LINK` — Кнопка-ссылка серого цвета, используется для открытия веб-страниц;`PRIMARY` — Основная кнопка синего цвета, обычно используется для подтверждения какой-либо операции;`SECONDARY` — Вторичная кнопка серого цвета, используется как отмена или для редко используемых операций;`SUCCESS` — Кнопка зелёного цвета, используется для выполнения какой-либо положительной операции;`DANGER` — Кнопка красного цвета, используется для выполнения какой-либо деструктивной операции. |
| `URL_ID`       | \[Строка]     | URL для кнопки-ссылки, для остальных видов кнопок уникальный идентификатор                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `Наименование` | \[Строка]     | Наименование кнопки                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `Эмоция`       | \[Строка]     | Эмоция в одном из следующих форматах:`🦊` — Unicode-символ эмоции;`:fox_face:` — название эмоции, включая стандартные и пользовательские на сервере;`<a:foxwaggy:695917473874051112>` — код пользовательской эмоции.(Опционально)                                                                                                                                                                                                                                                                                         |
| `UUID`         | \[Строка]     | UUID [Действия] для выполнения(Требуется для всех видов кнопок, кроме кнопки-ссылки)                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `Отключена`    | \[Логический] | Если `true`, кнопка будет отключенной                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .addButton('LINK', 'https://juniper.bot/', 'Website', '🦊')
    .send()
%}
```

:::

### `addSelectMenu(Тип, ID, Наименование, UUID, Отключена)`  { #method-addselectmenu .template-method }

::: tabs

\== Описание | mdi-text

Добавляет меню выбора к сообщению. Работает аналогично функции [select_menu](../../advanced/functions#select_menu).

**Возвращаемые типы:** \[MenuBuilder]

\== Параметры | mdi-code-parentheses

| Параметр       | Тип          | Описание                                                                                                                                                                                                                                    |
|:---------------|:-------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `Тип`          | \[Строка]     | Тип меню: `STRING` — Меню выбора строк;`USER` — Меню выбора участников;`ROLE` — Меню выбора ролей;`MENTIONABLE` — Меню выбора участников и ролей;`CHANNEL` — Меню выбора каналов. |
| `ID`           | \[Строка]     | Уникальный идентификатор меню                                                                                                                                                                                                               |
| `Наименование` | \[Строка]     | Текст-заглушка если ничего не указано                                                                                                                                                                                                       |
| `UUID`         | \[Строка]     | UUID [Действия] для выполнения                                                                                                                                                                                                              |
| `Отключена`    | \[Логический] | Если `true`, меню будет отключенным(Опционально)                                                                                                                                                                                        |

\== Примеры | mdi-code-block-braces

```template{4-8}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .addSelectMenu('STRING', 'selectedSpecies', 'Кто ты?', '27a55ca1-c13b-47f5-b8ad-e0da6329a53f')
      .addOption('Выдра', 'otterOption', ':otter:')
      .addOption('Лиса', 'foxOption', ':fox_face:')
      .withDefaultOption('foxOption')
    .endMenu()
    .send()
%}
```

```template{4-8}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .addSelectMenu('CHANNEL', 'selectedChannels', 'Выбери каналы', '27a55ca1-c13b-47f5-b8ad-e0da6329a53f')
      .withMinValues(2)
      .withMaxValues(3)
      .withChannelTypes(['VOICE', 'TEXT'])
    .endMenu()
    .send()
%}
```

:::

### `addComponentsRow()`  { #method-addcomponentsrow .template-method }

::: tabs

\== Описание | mdi-text

Добавляет новый ряд компонентов сообщений.

**Возвращаемые типы:** \[Embed]

\== Пример | mdi-code-block-braces

```template{5}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .addButton('LINK', 'https://juniper.bot/', 'Website', '🦊')
    .addComponentsRow()
    .addButton('LINK', 'https://juniper.bot/', 'Website', '🦊')
    .send()
%}
```

:::

### `withPoll(Вопрос, Срок, Мультиответ)`  { #method-withpoll .template-method }

::: tabs

\== Описание | mdi-text

Добавляет опрос к сообщению.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр      | Тип          | Описание                                                                                                                     |
|:--------------|:-------------|:-----------------------------------------------------------------------------------------------------------------------------|
| `Вопрос`      | \[Строка]     | Вопрос данного опроса                                                                                                        |
| `Срок`        | \[Число]      | Срок данного опроса в миллисекундах. Допустимые значения от 1 часа до 1 недели.Опционально, сутки если не указано. |
| `Мультиответ` | \[Логический] | Если `true`, опрос будет допускать несколько ответов.Опционально, `false` если не указано.                         |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .withPoll('Лисы или выдры?', 2 * 60 * 60 * 1000, true)
    .addPollAnswer('Лисы', ':fox_face:')
    .addPollAnswer('Выдры', ':otter:')
    .send()
%}
```

:::

### `addPollAnswer(Ответ, Эмоция)`  { #method-addpollanswer .template-method }

::: tabs

\== Описание | mdi-text

Добавляет вариант ответа к опросу (до 10). Должно вызываться после `withPoll`.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип      | Описание                                                                                                                                                                                                                                                                  |
|:---------|:---------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `Ответ`  | \[Строка] | Текст варианта ответа                                                                                                                                                                                                                                                     |
| `Эмоция` | \[Строка] | Эмоция в одном из следующих форматах:`🦊` — Unicode-символ эмоции;`:fox_face:` — название эмоции, включая стандартные и пользовательские на сервере;`<a:foxwaggy:695917473874051112>` — код пользовательской эмоции.(Опционально) |

\== Пример | mdi-code-block-braces

```template{5,6}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .withPoll('Лисы или выдры?', 2 * 60 * 60 * 1000, true)
    .addPollAnswer('Лисы', ':fox_face:')
    .addPollAnswer('Выдры', ':otter:')
    .send()
%}
```

:::

### `clearFields()`  { #method-clearfields .template-method }

::: tabs

\== Описание | mdi-text

Очищает все поля панели.

**Возвращаемые типы:** \[Embed]

\== Пример | mdi-code-block-braces

```template{6}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .addField('Первое поле', 'О, значение первого поля', true)
    .addField('Второе поле', 'Ну и здесь что-нибудь', true)
    .clearFields()
    .send()
%}
```

:::

### `clear()`  { #method-clear .template-method }

::: tabs

\== Описание | mdi-text

Очищает панель полностью.

**Возвращаемые типы:** \[Embed]

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withImage('https://i.pinimg.com/originals/a4/41/6e/a4416e024d691af3a2971e4114a6da7f.png')
    .clear()
    .withDescription('Ты думал тут будет картинка? Нет, тут этот текст!')
    .send()
%}
```

:::

### `error()`  { #method-error .template-method }

::: tabs

\== Описание | mdi-text

Предустанавливает панели красный цвет и заголовок ошибки (для удобства построения ошибок).

**Возвращаемые типы:** \[Embed]

\== Пример | mdi-code-block-braces

```template{3}
{% do channel
    .createEmbed()
    .error()
    .withDescription('Ой, какая-то ошибка')
    .send()
%}
```

:::

### `deleteAfterSec(Секунды)`  { #method-deleteaftersec .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает время в секундах, через которое панель будет удалена после отправки.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр  | Тип     | Описание                                                            |
|:----------|:--------|:--------------------------------------------------------------------|
| `Секунды` | \[Число] | Время в секундах, через которое панель будет удалена после отправки |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('Это сообщение удалится через 10 секунд')
    .deleteAfterSec(10)
    .send()
%}
```

:::

### `preferEphemeral(Эфемерное)`  { #method-preferephemeral .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает, следует ли отправлять сообщение как эфемерное (персональное).

Работает только если действие вызвано интеракцией (слэш-командой, компонентом сообщения, меню, диалогом и т.п.), не отложенное и только для `override`!

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр    | Тип          | Описание                                                    |
|:------------|:-------------|:------------------------------------------------------------|
| `Эфемерное` | \[Логический] | Если `true`, то сообщение будет эфемерным если это возможно |

\== Пример | mdi-code-block-braces

```template
{% do override.preferEphemeral(true) %}
```

:::

### `editComponentMessage(Заменять)`  { #method-editcomponentmessage .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает, следует ли заменять исходное сообщение на текущее.

Работает только если действие вызвано компонентом сообщения или диалогом и только для `override`!

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр   | Тип          | Описание                                                     |
|:-----------|:-------------|:-------------------------------------------------------------|
| `Заменять` | \[Логический] | Если `true`, то исходное сообщение будет заменено на текущее |

\== Пример | mdi-code-block-braces

```template
{% do override.editComponentMessage(true) %}
```

:::

### `withAllowedMentions(Типы)`  { #method-withallowedmentions .template-method }

::: tabs

\== Описание | mdi-text

Устанавливает допустимые типы упоминаний.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр | Тип                | Описание                                                                                                                                                                                                                                                                                                                                                                    |
|:---------|:-------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `Типы`   | \[Список]<\[Строка]> | Список принимает следующие значения:`USER` — Участники будут уведомлены, если они @упоминаются напрямую;`ROLE` — Участники будут уведомлены, если они упоминаются через @роли;`PUBLIC` — Участники будут уведомлены, если они упоминаются через @everyone или @here.Если передать пустой список, любые упоминания будут запрещены. |

\== Пример | mdi-code-block-braces

```template{5}
{% do channel
    .createEmbed()
    .withContent('О! ' ~ member.mention ~ ', привет!')
    .withDescription('Упоминание вроде есть, но пинга нет. Вау.')
    .withAllowedMentions([])
    .send()
%}
```

:::

### `pin(Закрепить)`  { #method-pin .template-method }

::: tabs

\== Описание | mdi-text

Закрепляет сообщение.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр    | Тип          | Описание                                   |
|:------------|:-------------|:-------------------------------------------|
| `Закрепить` | \[Логический] | Если `true`, то сообщение будет закреплено |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .pin(true)
    .send()
%}
```

:::

### `unpin(Открепить)`  { #method-unpin .template-method }

::: tabs

\== Описание | mdi-text

Открепляет сообщение. Работает только в случае редактирования сообщения.

**Возвращаемые типы:** \[Embed]

\== Параметры | mdi-code-parentheses

| Параметр    | Тип          | Описание                                   |
|:------------|:-------------|:-------------------------------------------|
| `Открепить` | \[Логический] | Если `true`, то сообщение будет откреплено |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .unpin(true)
    .update(1479094559928750231)
%}
```

:::

### `send()`  { #method-send .template-method }

::: tabs

\== Описание | mdi-text

Отправляет сообщение.

Возвращает `true`, если сообщение было успешно отправлено.

**Возвращаемые типы:** \[Логический]

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Привет!')
    .send()
%}
```

:::

### `sendAndGet()`  { #method-sendandget .template-method }

::: tabs

\== Описание | mdi-text

Отправляет сообщение.

Возвращает объект полученного сообщения, если оно было успешно отправлено.

**Возвращаемые типы:** \[Message]

\== Пример | mdi-code-block-braces

```template{4}
{% set newMessage = channel
    .createEmbed()
    .withDescription('О! Привет!')
    .sendAndGet()
%}
{{ newMessage.id }}
```

:::

### `update(id)`  { #method-update .template-method }

::: tabs

\== Описание | mdi-text

Обновляет сообщение с указанным идентификатором.

Возвращает `true`, если сообщение было успешно отредактировано.

**Можно редактировать только сообщения самого бота!**

**Возвращаемые типы:** \[Логический]

\== Параметры | mdi-code-parentheses

| Параметр | Тип     | Описание                |
|:---------|:--------|:------------------------|
| `id`     | \[Число] | Идентификатор сообщения |

\== Пример | mdi-code-block-braces

```template{4}
{% do channel
    .createEmbed()
    .withDescription('О! Отредактировано!')
    .update(1479095012389027990)
%}
```

:::

### `updateAndGet(id)`  { #method-updateandget .template-method }

::: tabs

\== Описание | mdi-text

Обновляет сообщение с указанным идентификатором.

Возвращает объект полученного сообщения, если сообщение было успешно отредактировано.

**Можно редактировать только сообщения самого бота!**

**Возвращаемые типы:** \[Message]

\== Параметры | mdi-code-parentheses

| Параметр | Тип     | Описание                |
|:---------|:--------|:------------------------|
| `id`     | \[Число] | Идентификатор сообщения |

\== Пример | mdi-code-block-braces

```template{4}
{% set updatedMessage = channel
    .createEmbed()
    .withDescription('О! Отредактировано!')
    .updateAndGet(1479095012389027990)
%}
{{ updatedMessage.id }}
```

:::
