Power AppsTeamsコネクタ解説

【Microsoft Teamsコネクタ】PostMessageToConversationアクションでチャット/チームにユーザー/ボット/PVAとしてメッセージ投稿

Power Apps

Power Appsには、Teamsと連携することができるMicrosoft Teamsコネクタというコネクタがあります。

この記事では、

  • PostMessageToConversationの構文
  • bodyの設定方法

を紹介します。

Microsoft Teamsコネクタの追加方法

左側のデータタブから、データの追加Microsoft Teamsを選択します。

Microsoft Teamsを選択します。一覧になければ接続の追加をクリックして接続を作成します。

Microsoft Teamsが追加されます。

PostMessageToConversation

構文

MicrosoftTeams.PostMessageToConversation(groupId, channelId, body)
//poster:"User", "Flow bot", "Power Virtual Agents"
//location:posterの選択結果に応じて異なる。
  "User"の場合"Channel", "Group chat"
  "Flow bot"の場合"Channel", "Chat with Flow bot", "Group chat"
  "Power Virtual Agents"の場合"powerva"
//body:後述

bodyの設定方法

普通にbody(送信先や本文など)を設定しようとするとエラーが表示されます。

そのため、JSON関数とParseJSON関数を用いてUntypedObject値を作り出す必要があります。(参考

UpdateContext({
    _body:
        {
            recipient:
                {
                    groupId: GalleryTeams.Selected.id, 
                    channelId: TabListChannels.Selected.id
                },
            messageBody: "本文",
            subject: "件名"
        }
});
MicrosoftTeams.PostMessageToConversation("User", "Channel", ParseJSON(JSON(_body)))

上記の数式の通り、一度変数にbodyに入力する値を格納した上で、JSON関数とParseJSON関数を使用することでエラーが消え投稿できるようになります。

Power Automateのフローに本文と件名だけ渡した方がシンプルでわかりやすいかも

groupIdとchannelIdは以下の記事を参考に取得してみてください。

アクションの投稿者・投稿先ごとの数式・結果まとめ

【Microsoft Teamsコネクタ】PostMessageToConversationアクションの投稿者・投稿先ごとの数式・結果まとめ
Power AppsのアプリからTeamsへメッセージを投稿するPostMessageToConversationアクション(チャットまたはチャネルでメッセージを投稿する)にはいくつかの投稿者・投稿先...

コメント

タイトルとURLをコピーしました