SlackのユーザIDやらグループIDは開発者ツールで取得ができるらしい

SlackのユーザIDやらグループIDは開発者ツールで取得ができるらしい

どーもばるすです。

BotとかいじってるとSlackのユーザーIDとかグループIDをすぐにちょちょっと取得したいときがあるんすよね。

それ、ブラウザの開発者ツールでとれるよ!って小耳に挟んだので試してみた話をします。

ユーザIDを取得してみる

グループIDを取得してみる

おーたしかにとれる。
ほんとだー。
グループIDはともかく、ユーザIDをスクリプトでバシッと出力できたら楽だなー。

ちょろっとスクリプト書いてみた

const elements = document.getElementsByClassName( "c-link c-message__sender_link" )

    for (let i =0;i<elements.length;i++){
    console.log(elements[i].innerText+" : "+elements[i].attributes[2].textContent)
    }

// ==> User名 : ID * n行

実行してみる

できた。

ただ、このままだとコンソールにしか出ないのでちょっとイケてない。
まぁコンソールでコード実行している時点であんまりかっこよくないけど。
理想は拡張機能からの実行だがそれはまた今度として、Slackの入力欄に出すように手を加えてみる。

追記した版

const elements = document.getElementsByClassName( "c-link c-message__sender_link" )

    var text = '現在表示しているチャンネルに投稿したユーザー名とID'
    for (let i =0;i<elements.length;i++){
    console.log(elements[i].innerText+":"+elements[i].attributes[2].textContent)
    var text = text + '\n' +elements[i].innerText+":"+elements[i].attributes[2].textContent
    }

    var inputField = document.getElementsByClassName( "ql-editor ql-blank" )

    inputField[0].children[0].innerHTML = text

    var inputArea = document.getElementsByClassName("ql-editor")

実行してみる

いいかんじ。
ちょろっとID取りたいだけならこれで十分かもw

気づいたこと

Slackの入力欄は、入力されてない/入力されている でクラス名が変わる

この状態だとql-editor ql-blank

この状態だとql-editor

InnerTextに’\n’だと改行が利かない

innerTextの場合

innerHTMLの場合

@here,@channel はIDを持っていない

終わりに

今回はちょろっと気づいたことをベースに、軽めな内容で書いてみました。

こういうやり方だと楽ですよ!とか良いアイデアがあったら教えてくださーい。

いじょー

情報システム部門は企業のコア

CTA-IMAGE 株式会社クラウドネイティブは、情報システム部門のコンサルティング専門家集団です。 ゼロトラストの概念を国内でいち早く取り入れ、現実的に実装できる国内唯一のコンサルティング会社です。 「どの製品選べばいいの?」 「社内インフラ改革はどこから?」 「セキュリティって結局どうすれば?」 その疑問や不安にお応えします。