I am making a discord.Client
. I have a DM
command that sends a DM to a specific user, but no message is sent to the user when the command is run, but a message is sent on the Context.channel
.
Here is my code:
import discord, asyncioapp = discord.Client()@app.event
async def on_message(message):if message.content.startswith('!DM'):usernotsending = []content = message.contentmsg = await message.channel.send('메시지를 보내고 있습니다!')i = app.user# 봇의 모든 유저를 for문으로 적용for i in app.user:try:if i == app.user:return# 해당 유저의 DM을 염await i.create_dm()# 내용전송await app.dmchannel.send(content)# DiscordAPI 에서 오류가 발생했을경우except discord.HTTPException:# DM을 보내지 못한 유저 태그 list에 저장usernotsending.append(f'{i.name}#{i.discriminator}')messageing = """아래 유저들에게 메시지를 전송하지 못했습니다!직접 보내주시거나, 따로 전달을 해드려야됩니다!"""for msg in usernotsending:# message 에 유저 태그 추가messageing += msg# 메시지 전송await msg.edit(content=messageing)