Microsoft Teams のチームID、チャネルIDの確認方法

[前回は、Teamsコネクター(プレビュー)を利用](https://qiita.com/yamad365/items/c8883a27d5255c30a614)して、チーム配下のチャネルへ Power Apps のアプリからメッセージ送信する方法を紹介しました。そのメッセージ送信時に必要となる「チームのID」や「チャネルのID」を Power Apps 以外の手段で調べる方法を今回は紹介します。

# おさらい
[前回のPostMessageToChannelV3](https://qiita.com/yamad365/items/c8883a27d5255c30a614#postmessagetochannelv3) で説明していますが、記事投稿時点で用意されている関数では、メッセージ送信時に対象チームのID・対象チャネルのIDが必要になります。

```
MicrosoftTeams.PostMessageToChannelV3(
    [対象チームのID],
    [対象チャネルのID],
    {
        content:[メッセージBody],
        contentType:["Text" or "HTML"]
    },
    {subject:[メッセージSubject]}
);
```
チームの裏側にある Office 365 Groups や、チャネルのメールアドレスを利用したPower Appsからのメッセージ送信等は残念ながら現時点でサポートされていないようです。

# Webブラウザー上で確認する方法
Teams を Webブラウザーで起動して確認する方法が下記になります。全体管理者権限などを有していない一般ユーザーの場合は、この手段がイチバン確実かもしれません。

## チームIDの取得
1. 対象となるチームを選択 → チャネルを選択 → 右上の三点リーダー（・・・）をクリック → [チャネルへのリンクを取得]をクリック
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/283796d6-14b8-e1e2-e186-f44a666eceb7.png)

2. ポップアップ画面の文字列から”groupId=”に続くパラメータを抽出する。これが対象のチームIDになります。
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/a0ec2087-6c66-a82e-5421-cd2e5dbc8191.png)
テキストエディタ等へ張り付けて解析すると良いでしょう。
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/70f21533-a16f-f775-d157-a7be666d3387.png)


## チャネルIDの取得
前述 No.2の手順で表示されているURLにもチャネルIDが埋め込まれているのですが・・・。エンコードされていてそのままでは利用しづらいですよね。なので、これから紹介する手段が個人的な推奨方法です。

1. チャネルをWebブラウザーで開く → URL欄を確認 → ”threadId=”に続くパラメータを抽出する。これが対象のチャネルIDになります。
![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/900d6d72-f47d-2469-0d93-a491d75a9ec4.png)

「数字2桁:半角英数文字列～@thread.skype」という形式で、メールアドレスのようなモノが目的のIDになります。

# Microsoft Teams 管理センターで確認する方法
全体管理者など、権限を保有している方は管理センターでIDを確認することも可能です。

## Microsoft Teams 管理センターへアクセスする
権限を有したユーザーで下記へアクセスしてください。

https://admin.teams.microsoft.com/

## チームIDの取得
1. 管理センター上で、左のメニューから[チーム] → [チームを管理] を選択。
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/b484c53d-2844-90ca-31d6-7211627a87a1.png)

2. 表示された一覧の横スクロールを右端まで持っていくと[グループ ID]という列が確認できます。
![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/3728490f-444a-6374-9473-42d1355ddc6c.png)

## チャネルIDの取得
1. [チームを管理]画面から、対象のチーム名をクリック
2. 表示された画面で[チャネル]を選択 → 対象のチャネル名を右クリックしてURLを取得
![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/f85965aa-80b5-8e16-c4c4-b4ed8b9b8ce0.png)

3. 取得したURLの末尾が目的のIDです
![08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/6804b5b5-d84d-c108-ea4d-336a53307d73.png)

なお、上記でコピペしたURLですが“/manage/”と“/channels/”に挟まれた文字列がチームIDになります。こちらの手法でまとめて入手するコトも可能です。

# Power Shell で確認する方法
チームIDやチャネルIDは、Power Shell で確認することも可能です。

参考URL：[Microsoft Teams PowerShell](https://docs.microsoft.com/ja-jp/powershell/module/teams/?view=teams-ps&WT.mc_id=BA-MVP-5004053#microsoftteamspowershell)

## Microsoft Teams PowerShell の準備
[@hrfmjp](https://twitter.com/hrfmjp) さんの記事がわかりやすいです。下記URLより記事を参考にMicrosoft Teams の PowerShell コマンドレットをインストールしてください。

[Microsoft Teams の PowerShell コマンドレットが 1.0.0 になりました](https://idea.tostring.jp/?p=4472)

## チームIDの取得
下記のコマンドで取得可能です。

```
Get-Team
```
![09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/e044a4ff-1e71-71b6-e79d-575539b07573.png)

## チャネルIDの取得
下記のコマンドで取得可能です。なお、パラメータでチームIDを指定する必要があるため、事前に前述のコマンドでチームIDを取得しておきましょう。

```
Get-TeamChannel -GroupId [対象のチームID]
```
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215892/b378f692-f5b4-2855-b429-0f2167a4fee1.png)

# まとめ
いろんな選択肢があるぞ、ってことですね。皆さん、お好きな手段でご確認くださいませ。

前回の記事で作成したように、現時点ではプレビューですがPower Appsのコネクター経由で簡単に各種IDが取得できてしまいます。なので、Power Apps 上でチームIDやチャネルIDを確認するデバッグ画面みたいなモノを作ったほうが早いような・・・などと当方は思ったり、思わなかったりしています。

しかし”チャンネル”なのか、”チャネル”なのか・・・。前回はチャンネルって記載していましが、今回は設定画面の大半で”チャネル”表記なので、そちらの表現で当記事も統一しておきました。はい、表現が揺れているのは意図的でございますので、ご了承賜れれば幸いです。

それでは、皆さま。素晴らしい Power Platform Life & MS Teams Life を！