def insert_mentions(self, trans, message):
self.logger.debug(f"Inserting all mentions in message {message.id}")
for id in message.raw_mentions:
if id > MAX_ID:
self.logger.error(f"User mention was too long: {id}")
continue
self.logger.debug(f"User mention: {id}")
ins = p_insert(self.tb_mentions) \
.values({
'mentioned_id': id,
'type': MentionType.USER,
'message_id': message.id,
'channel_id': message.channel.id,
'guild_id': message.guild.id,
}) \
.on_conflict_do_nothing(index_elements=['mentioned_id', 'type', 'message_id'])
trans.execute(ins)
for id in message.raw_role_mentions:
if id > MAX_ID:
self.logger.error(f"Role mention was too long: {id}")
continue
self.logger.debug(f"Role mention: {id}")
ins = p_insert(self.tb_mentions) \
.values({
'mentioned_id': id,
'type': MentionType.ROLE,
'message_id': message.id,
'channel_id': message.channel.id,
'guild_id': message.guild.id,
}) \
.on_conflict_do_nothing(index_elements=['mentioned_id', 'type', 'message_id'])
trans.execute(ins)
for id in message.raw_channel_mentions:
if id > MAX_ID:
self.logger.error(f"Channel mention was too long: {id}")
continue
self.logger.debug(f"Channel mention: {id}")
ins = p_insert(self.tb_mentions) \
.values({
'mentioned_id': id,
'type': MentionType.CHANNEL,
'message_id': message.id,
'channel_id': message.channel.id,
'guild_id': message.guild.id,
}) \
.on_conflict_do_nothing(index_elements=['mentioned_id', 'type', 'message_id'])
trans.execute(ins)
# Typing
评论列表
文章目录