将上一条消息发送到不和谐频道

时间:2020-11-06 13:33:14

标签: discord discord.py

给出不和谐消息ID和频道ID,是否有办法找到同一不和谐信道的前一条消息?

消息ID是Intigers,我的印象是,这些ID单调增加。因此,如果有一种方法可以查找某个频道已收到的所有消息ID,那么我认为这很容易,只需找到小于您感兴趣的ID的最高ID。

1 个答案:

答案 0 :(得分:0)

不确定您是要查找消息本身还是之前的消息的内容,但是您可以在txt_channel.history here中阅读更多内容:

历史记录的作用是使您能够查看文本通道的消息历史记录。
因此,如果您想使用其ID查找特定消息的内容,则可以执行以下操作: (当然,您需要获取文本通道,可以查看here

async for msg in txt_ch.history(limit=[how many messages back you want the loop to go]):
    if msg.id == ID_OF_MSG: # you found the message
       print("the message with the id has been found")

现在此代码^^会将您指向您使用当前ID给出的消息,但是如果您想获得该消息之前的消息,则只需添加以下内容:

async for msg in txt_ch.history(limit=[how many messages back you want the loop to go]):
    found_message = False
    if msg.id == ID_OF_MSG: # you found the message
       found_message =True
    elif found_message:
       found_message = False
       print("previous message")

当然,您可以将打印的最后一行更改为:

print(msg.content)

查看其内容,或者您​​可以将其发送回频道,完全由您决定。

不可以: 我尝试对其进行测试,但似乎消息的ID似乎不是一个接一个的,因此您无法执行ID-1来获取先前的消息ID。