Fix channel name message scanning

This commit is contained in:
BreadTube 2026-01-09 20:33:43 +09:00
commit 7e59499cec

View file

@ -147,29 +147,30 @@ class Bot:
immediate_delete: dict[int, Message] = {}
for message in messages:
if message.author.id != self.bot_user.id and message.content.startswith(self.YT_CHANNEL_NAME_URL):
self.logger.debug('Parsing message for youtube channel name conversion: %s', message)
answers: list[str] = []
for line in message.content.splitlines():
if line.startswith(self.YT_CHANNEL_NAME_URL):
channel_name = line.rstrip()[len(self.YT_CHANNEL_NAME_URL):]
channel_id = self.yt_manager.request_channel_id(
channel_name, request_timeout=self.config.request_timeout)
answers.append(f'{channel_name} -> {channel_id}')
bot_message = self.discord_manager.create_message(self.bot_channel, {
'content': '\n'.join(answers),
'message_reference': MessageReference(
type=MessageReferenceType.DEFAULT,
message_id=message.id,
channel_id=self.bot_channel.id,
guild_id=None,
fail_if_not_exists=None)}, request_timeout=self.config.request_timeout)
delayed_delete[bot_message.id] = bot_message
delayed_delete[message.id] = message
continue
if init_message_found:
if message.author.id != self.bot_user.id and message.content.startswith(self.YT_CHANNEL_NAME_URL):
self.logger.debug('Parsing message for youtube channel name conversion: %s', message)
answers: list[str] = []
for line in message.content.splitlines():
if line.startswith(self.YT_CHANNEL_NAME_URL):
channel_name = line.rstrip()[len(self.YT_CHANNEL_NAME_URL):]
channel_id = self.yt_manager.request_channel_id(
channel_name, request_timeout=self.config.request_timeout)
answers.append(f'{channel_name} -> {channel_id}')
bot_message = self.discord_manager.create_message(self.bot_channel, {
'content': '\n'.join(answers),
'message_reference': MessageReference(
type=MessageReferenceType.DEFAULT,
message_id=message.id,
channel_id=self.bot_channel.id,
guild_id=None,
fail_if_not_exists=None)}, request_timeout=self.config.request_timeout)
delayed_delete[bot_message.id] = bot_message
delayed_delete[message.id] = message
else:
self.logger.debug('Marking message for immediate deletion (init found): %s', message)
immediate_delete[message.id] = message
self.logger.debug('Marking message for immediate deletion (init found): %s', message)
immediate_delete[message.id] = message
continue
if len(message.attachments) <= 0: