Slack API - как отправить эфемерное сообщение при событии im message (идентификатор канала не является допустимым каналом)? - PullRequest
1 голос
/ 18 июня 2020

У меня есть приложение, которое подписывается на событие messages.im , и при запуске прямым сообщением между двумя пользователями я получаю следующее json, отправленное на мой URI обратного вызова (каждый идентификатор был отредактирован чтобы сделать его анонимным):

{
    "token": "K5ROtL7xMS1Fv8zo8V33IAx8",
    "team_id": "T32SZGR2P",
    "api_app_id": "AP50R2741",
    "event": {
        "client_msg_id": "ca24d63d-c022-4629-a618-9d9a2ee0097c",
        "type": "message",
        "text": "test message\n<@ULAJP1B25>",
        "user": "U232XAB7X",
        "ts": "1592504332.001900",
        "team": "T32SZGR2P",
        "blocks": [
            {
                "type": "rich_text",
                "block_id": "T2Fe6",
                "elements": [
                    {
                        "type": "rich_text_section",
                        "elements": [
                            {
                                "type": "text",
                                "text": "test message\n"
                            },
                            {
                                "type": "user",
                                "user_id": "ULAJP1B25"
                            }
                        ]
                    }
                ]
            }
        ],
        "channel": "DLAJ2HDNU",
        "event_ts": "1592504332.001900",
        "channel_type": "im"
    },
    "type": "event_callback",
    "event_id": "Ev211G7DRFK7",
    "event_time": 1592504332,
    "authed_users": [
        "U232XAB7X"
    ]
}

У меня здесь две проблемы:

  1. Кажется, я не могу отправлять эфемерные сообщения в этот поток как заданный channel (DLAJ2HDNU) недействителен и дает channel_not_found. Я попытался собрать больше информации о разговоре через chatations.info , но он также дает channel_not_found;
  2. Я не могу определить, какой идентификатор пользователя или имя пользователя получателя, так как у меня только один user свойство, которое определяет, кто отправил сообщение.

Итак, мои вопросы: как я могу достичь 1 или 2?


Кроме того, в контексте моей цели для прослушивания @mentions и прямых сообщений, чтобы проверить, является ли указанный пользователь / получатель afk, и отправить сообщение тому, кто их упомянул, о том, что ему может потребоваться время, чтобы ответить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...