選択したチャンネルへの投稿機能の作成
作成するもの
PowerAppsの画面上で選択したチーム・チャンネルに、任意のメッセージをサブジェクト付きで投稿するアプリ。ひとまずポカよけとかは考えず最低限動くだけの処理を実装する。
アプリの操作イメージはこんな感じ↓
- コンボボックス1にチーム一覧を表示させ、投稿したいチームを選択する
- コンボボックス2に、↑で選択したチーム内のチャンネル一覧を表示させ、投稿したいチャンネルを選択する
- 投稿のタイトル(サブジェクト)を入力する
- 投稿したい内容(本文)を入力する
- 投稿ボタンを押し、選択したチャンネルに投稿する
1.Teamsコネクタの追加
キャンパスアプリを新規作成し、データからTeamsコネクタを追加します。

2.コントロールの配置
下図の通り5つのコントロールを配置し、コントロール名を図のとおり変更します。
コンボボックスは2つ作成しますが、上が ComboBox_Team ,下が ComboBox_Channelです。

3.チーム一覧の取得
ComboBox_Teamのitemプロパティを下記のように変更します。
MicrosoftTeams.GetAllTeams().value
次に ComboBox_Teamのプロパティのフィールド 編集をクリックし、 主要なテキストと SearchFieldを両方とも displayNameに変更します。

また、複数選択の許可 はオフにしておきます。

これで ComboBox_Teamをクリックすると、Teamsで登録しているチーム一覧が表示されるようになりました。
4.チャンネル一覧の取得
次に ComboBox_Channelコンボボックスでチャンネル一覧を表示できるようにします。
Teamsのチャンネル一覧はGetChannelsForGroupコマンドで取得できますが、引数にチームIDを指定する必要があります。
ここでは、 ComboBox_Teamコンボボックスで選択したチームのチャンネル一覧を表示させるため、 ComboBox_Channelのitemプロパティを下記のように変更します。
MicrosoftTeams.GetChannelsForGroup(ComboBox_Team.Selected.id).value
また、 ComboBox_Teamのときと同様にプロパティのフィールド 編集をクリックし、 主要なテキストと SearchFieldを両方とも displayNameに変更し、複数選択の許可 はオフにしておきます。
5.投稿ボタンの処理作成
Button_Sendボタンを押すとメッセージが投稿されるよう、OnSelectプロパティを下記のように変更します。
MicrosoftTeams.PostMessageToChannelV3(
ComboBox_Team.Selected.id,
ComboBox_Channel.Selected.id,
{
content: RichTextEditor_Message,
contentType: "html"
},
{subject: TextInput_Subject.Text}
)
これで、 ComboBox_Team で選択したチーム内の ComboBox_Channel で選択したチャンネルにメッセージが投稿されます。メッセージのサブジェクトは Textinput_Subject に入力した文字列、本文は RichTextEditor_Message に入力した内容となります。
6.ラベルの作成
5までで機能としては実現済みですが、分かりやすいようにラベルを付け、ボタンの表示を変更して完成!

