はじめに
今回の記事では、Power AutomateでTeamsに投稿するフローを作成する際にやりがちなフローボットの使用時の躓きポイント・制限をご紹介します。
※フローボットは Teams 上では Workflows という名前で表示されます。本記事では「フローボット」と呼びます。
フローボットとは
「チャットまたはチャネルでメッセージを投稿する」アクションでは、
投稿元として「ユーザー」「フローボット」「Power Virtual Agents」から選択することができます。
ユーザーとフローボットは既定で気軽に使用できるため、実際に使用されている方も多いのではないでしょうか。
フローボットからの投稿は「Workflows 経由のXXXX(接続元ユーザー名)」という形式で表示されます。
一方でユーザーからの投稿は通常の投稿と同様に表示されるため、自動投稿か手動投稿か区別がつきにくいことがあります。フローボットからの投稿は視覚的に自動投稿されたものであることや、接続元ユーザー名が明記されており、混乱を避けることができます。
躓きがちなポイントとその解決策
フローボットからの投稿は上記のように大変便利ではありますが、Power Automate で Teams 投稿を作成する際にいくつか注意するポイントがあります。
作成時に出るエラーではなく、実際にフローが動かないと判別できないため、
「フローを作成したけど投稿ができない!何故!」とならないよう以下のポイントに注意してください。
a. タグを使用したメンションができない
フローボット投稿の場合、タグを使ったメンションを使用することができません。
投稿内容に「@mention タグ」を入れた場合、以下のエラーとなります。
「現在、タグのメンションはユーザーとして投稿する場合にのみサポートされています。投稿者の種類を「ユーザー」に変更するか、タグの「at」のメンションを削除してください。」
Mentioning tags is currently only supported when posting as a user. Please change the poster type to user or remove the at mentions for tags.
タグはNGですが、ユーザーメンションは使用できます。
広範囲の人にメンション付き投稿をしたい場合は、ユーザー投稿でタグメンションするか、どうしてもフローボットからの投稿が良い場合はユーザー個別に指定する必要があります。
b. プライベートチャネルへの投稿ができない
フローボット投稿の場合、プライベートチャネルへの投稿ができません。
投稿先にプライベートチャネルを指定した場合、以下のエラーとなります。
「ボットは会話の一覧に含まれていません」
Bot Framework に対する要求がエラーにより失敗しました: '{"error":{"code":"BotNotInConversationRoster","message":"The bot is not part of the conversation roster."}}'。
ボットがプライベートチャネルのメンバーではないので投稿できないようです。
接続元ユーザー名が入っていても、ボット自体がメンバーではないのでNGです。
プライベートチャネルにボットを追加することもできないため、残念ながらプライベートチャネルでは投稿をすることができません。
プライベートチャネルで投稿を自動化したい場合は、ユーザーからの投稿であることが必須となります。
c. 件名入力が出来ない
エラーは出ず、視覚的にも分かりやすく、対策も可能ですが、フローボットからチャネルに投稿する際、アクションに件名欄がありません。そのため、件名を直接入力することができません。
件名のように見せたい場合は、「18pt 太字」 で書くとユーザー投稿で件名を入力したときとほぼ同じ見栄えの投稿が可能です。
おわりに
私もフローを作成する際についつい忘れてエラーを出しがちなので、その悔しみの気持ちを何とかするために記事にしました。
少しでもフローボットを使用してつまずいた方の参考になれば幸いです。
また、Power Automate から Teams でメッセージを投稿する際の基本操作については、以下の公式ドキュメントをご覧ください。
Power Automate を使用して Teams でメッセージを送信する - Power Automate | Microsoft Learn