如何使用Slack API删除邮件回复?

时间:2018-11-02 21:47:06

标签: slack-api

当我尝试使用Slack API删除表示该频道不存在的回复时出现错误。

为了验证它,我打电话给:

 @Lock(LockModeType.PESSIMISTIC_WRITE)
 public SubmissionGroup findByObjectID(Long id);

然后我收到消息。

我回来的消息是这个:

https://slack.com/api/channels.history?token={token}&channel={channel}&count=1&inclusive=true&latest={ts}&oldest={ts}

如您所见,这里有“此消息已删除”。似乎会自动生成并不断出现,因为我仍然有与之相关的答复。

如果我通过回复ts({ "ok": true, "latest": "1540555927.024300", "oldest": "1540555927.024300", "messages": [ { "text": "This message was deleted.", "edited": { "user": "UD6SLKGEP", "ts": "1540555928.000000" }, "type": "message", "subtype": "tombstone", "user": "USLACKBOT", "hidden": true, "thread_ts": "1540555927.024300", "reply_count": 1, "replies": [ { "user": "UD6SLKGEP", "ts": "1540555928.024401" } ], "subscribed": false, "unread_count": 1, "ts": "1540555927.024300" } ], "has_more": false, "is_limited": true } )呼叫相同的端点,则对于相同的频道,我会得到以下提示:

1540555928.024401

这意味着那里有一条消息,这是另一条消息的答复。

当我尝试删除此回复消息时,问题开始了。

我将此端点称为:

{
    "ok": true,
    "latest": "1540555928.024401",
    "oldest": "1540555928.024401",
    "messages": [
        {
            "type": "message",
            "user": "UD6SLKGEP",
            "text": "45d7bc14a6fa03 23456789 abcdefghijklmnop",
            "bot_id": "BD6AJUY8G",
            "thread_ts": "1540555927.024300",
            "ts": "1540555928.024401"
        }
    ],
    "has_more": false,
    "is_limited": true
}

将频道和回复ts作为有效负载传递:

https://slack.com/api/chat.delete?token={token}

现在,我得到了以下回复,而不是删除消息:

{
    "channel": "CD65XB2D7",
    "message_ts": "1540555928.024401"
}

但是该频道存在,我也正在使用它删除其他邮件。当我尝试仅从邮件中删除答复时,就会发生这种情况。

删除回复消息有什么特别之处吗?

1 个答案:

答案 0 :(得分:0)

我刚刚在这里发现了问题:

https://api.slack.com/changelog/2017-10-keeping-up-with-the-jsons#methods

出于某种原因,它只适用于邮件,但不适用于回复。我必须按照此链接上的建议将令牌移动到带有载体的标头上的“授权”。