Как вставить временную метку в сообщение Discord с использованием библиотеки Disnake?

Как можно добавить временную метку (timestamp) во встроенное (embed) сообщение при нажатии пользователем на кнопку "Взял", чтобы начался отсчёт времени с момента нажатия?
  • 18 декабря 2023 г. 5:47
Ответы на вопрос 2
Для вставки временной метки в сообщение Discord с использованием библиотеки Disnake вы можете использовать класс `datetime` из стандартной библиотеки Python. Вот пример кода:

```python
from disnake import Button, ButtonStyle, TextChannel, disnake
from datetime import datetime

# Создание кнопки
button = Button(style=ButtonStyle.green, label="Взял", custom_id="take_button")

# Функция, которая будет вызываться при нажатии кнопки
@disnake.bot.event
async def on_button_click(inter):
    if inter.custom_id == "take_button":
        # Получение текущей временной метки
        timestamp = datetime.utcnow().timestamp()

        # Создание встроенного сообщения с временной меткой
        embed = disnake.Embed(title="Начался отсчёт времени", description=f"Временная метка: {timestamp}", color=0x00ff00)

        # Отправка встроенного сообщения в канал, где была нажата кнопка
        await inter.reply(embed=embed)

# Создание текстового канала и отправка сообщения с кнопкой
@disnake.bot.event
async def on_ready():
    channel = disnake.utils.get(disnake.guild.text_channels, name="название_канала")
    button_msg = await channel.send("Нажмите на кнопку, чтобы начать отсчёт времени", components=button)

# Запуск бота
disnake.bot.run("токен_бота")
```

В данном примере, при нажатии кнопки "Взял", будет создано и отправлено встроенное сообщение с временной меткой (timestamp) в текстовый канал, где была нажата кнопка. Не забудьте заменить `"название_канала"` на фактическое название текстового канала и `"токен_бота"` на токен вашего Discord-бота.
Ввести в гугл "discord timestamp" и получить ссылку на документацию где описывается, что это просто строка определенного формата <t:unix_seconds:FORMAT> . 
3 секунды назад это формат R - Relative time
Похожие вопросы