• ..

Figma

    スレッドへ投稿したメッセージの ts を thread_ts として使うとどうなるか

    結果は、「スレッドへ投稿したメッセージと同じスレッドに投稿される」です。

    確認コード

    すこし楽するためにjqコマンドを使ってます。

    準備

    最低限必要となるトークンとチャンネルIDは何度もコピーするのが面倒くさいので以下のように環境変数に置いておきます。

    # bash
    export t=xoxp-xxx-xxx-xxx-xxxxx
    export c=xxxxx
    # fish
    # set -l t xoxp-xxx-xxx-xxx-xxxxx
    # set -l c xxxxx

    $tがトークン、$cをチャンネルIDとして使っていきます。

    ベースとなるメッセージを投稿

    以下は適当なチャンネルに「a]とだけ投稿し、結果のtsを表示するコマンドです。

    # bash
    export u="https://slack.com/api/chat.postMessage?token=$t&channel=$c&text=a"
    # fish
    # set -l u "https://slack.com/api/chat.postMessage?token=$t&channel=$c&text=a"
    curl -Ss $u | jq -r .ts

    1555394677.001400というような値が得られます。

    ts を thead_ts に設定してスレッドに投稿

    先程の1555394677.001400thread_tsというクエリに置いて再度コマンドを叩くことでそのスレッドへメッセージを投稿できます。またそのメッセージのtsが表示されるのでコピーしておきます。

    # bash
    export u="https://slack.com/api/chat.postMessage?token=$t&channel=$c&text=aa&thread_ts=1555394677.001400"
    # fish
    # set -l u "https://slack.com/api/chat.postMessage?token=$t&channel=$c&text=aa&thread_ts=1555394677.001400"
    curl -Ss $u | jq -r .ts

    そして、1555395278.001500が得られました。

    ここまでの流れで Slack の画面は以下のようになっているはずです。

    スレッド投稿メッセージの ts を thread_ts に設定して再度スレッドに投稿

    以下を実行します。

    # bash
    export u="https://slack.com/api/chat.postMessage?token=$t&channel=$c&text=aaa&thread_ts=1555395278.001500"
    # fish
    # set -l u "https://slack.com/api/chat.postMessage?token=$t&channel=$c&text=aaa&thread_ts=1555395278.001500"
    curl -Ss $u | jq -r .ts

    冒頭に書いた結果が得られたはずです。

    データとしてはどうなっているか

    conversations.repliesで取得して見た所、最後に投稿したメッセージのthread_ts1555394677.001400(最初のメッセージのts)が設定されていました。