import discord
from discord.ext import commands
import asyncio
# 봇의 접두사 설정 (여기서는 '!'로 설정)
bot = commands.Bot(command_prefix='!')
# 재시작 키워드 설정
keyword = '재시작'
# 채널 ID 설정
channel1_id = 1228272041174765648 # 채널1의 ID
channel2_id = 1227609684236566613 # 채널2의 ID
# 봇이 준비되었을 때 실행되는 이벤트
@bot.event
async def on_ready():
print(f'봇이 로그인되었습니다: {bot.user}')
# 특정 메시지를 인식하고 다른 채널에 메시지를 보내는 이벤트 핸들러
@bot.event
async def on_message(message):
# 봇 자신의 메시지에는 반응하지 않음
if message.author == bot.user:
return
# 사용자가 관리자 권한을 가진 경우 무시
if message.author.guild_permissions.administrator:
return
# 특정 키워드가 포함된 메시지인지 확인
if keyword in message.content:
# 채널1에 메시지 보내기
channel1 = bot.get_channel(channel1_id)
if channel1:
await channel1.send(f'!server_msg "<워크샵이라 5분 후에 재시작하겠습니다.안전한 곳으로 이동하세요>"')
# 채널2에 메시지 보내기
channel2 = bot.get_channel(channel2_id)
if channel2:
await channel2.send(f'5분 후에 재시작하겠습니다.')
# 5분 대기
await asyncio.sleep(300)
# 5분 후에 채널1에 명령어 입력
if channel1:
await channel1.send('!restart_server')
# 채널2에는 재시작 중임을 알리는 메시지 보내기
if channel2:
await channel2.send('지금 재시작중입니다. 5분후에 접속하세요.')
# 기존의 명령어도 처리할 수 있도록 on_message 핸들러 끝에서 명령어를 처리하도록 함
await bot.process_commands(message)
# 봇 실행 (봇 토큰을 직접 코드에 포함시키지 않도록 주의)
bot.run("대충토큰")
토큰은 공유하지말래서 저거로 잠시 바꿔둔거고 이거 저장해서 실행창에서 python 파일이름.py하래서 했는데 자꾸 위치에 파일없다고떠요
----------셀프해결완료-------------------- 비번까먹음