26 lines
703 B
Python
26 lines
703 B
Python
"""Discord 렌더러 — Embed 렌더링 유틸리티.
|
|
|
|
Discord Embed의 제한(4096자)을 고려한 안전한 전송 함수.
|
|
"""
|
|
|
|
import discord
|
|
|
|
|
|
EMBED_DESC_LIMIT = 4096
|
|
|
|
|
|
async def safe_send_embed(channel, embed: discord.Embed):
|
|
"""Embed가 Discord 제한을 초과하면 나눠서 전송."""
|
|
desc = embed.description or ""
|
|
if len(desc) <= EMBED_DESC_LIMIT:
|
|
await channel.send(embed=embed)
|
|
return
|
|
|
|
chunks = [desc[i:i + 4000] for i in range(0, len(desc), 4000)]
|
|
embed.description = chunks[0]
|
|
await channel.send(embed=embed)
|
|
|
|
for chunk in chunks[1:]:
|
|
cont = discord.Embed(description=chunk, color=embed.color)
|
|
await channel.send(embed=cont)
|