Power Automate の「Post a message as the Flow bot to a channel」で HTML が使えなくなった

こんにちは。エクセルソフトの田淵です。

経緯

弊社では FAX をリモートで確認できるように、次のフローを作成しています。

  1. FAX が届く
  2. 受け取った複合機は社内の特定の共有フォルダに PDF をコピー
  3. その共有フォルダは SharePoint の同期フォルダで SharePoint 上にファイルがアップロードされる
  4. ファイルが作成されたことを Trigger にして、Power Automate で Bot として Teams にファイル名と SharePoint のリンク先をポスト
  5. 内容を確認して処理

今までは上記のポストの部分は「Post a message as the Flow bot to a channel」を使用して次のような感じで HTML としてポストしてもらっていました。

普通にメッセージとしてリンク付きテキストがポストされるので、デスクトップ版でもモバイル版でも Teams から内容が確認できていました。

2020/10/4 から(だと思いますが)、次のように HTML が文字として処理されてしまうようになりました。

解決策

なんと、HTML は使えなくなっても Markdown は行けるとのこと!

https://platform.twitter.com/widgets.js

Hiro さんありがとうございます。

当初やっていた Adaptive Card のやり方も残しておきます。

困ったので、以下の「Post your own adaptive card as the Flow bot to a channel」を使うことにしました。

Schema Explorer | Adaptive Cards を参考に、Action.OpenUrl としてリンクを作成します。

実際には以下の感じです。

無事ファイル名のボタン付きでポストされるようになりました。

気になる点と課題

「Post a message as the Flow bot to a channel」は、今までは普通のポストでしたが、今回のアップデートで固定のテキストを入れたとしても上記の画像のように枠が着くようになりました。

恐らく、ポストされるメッセージが標準で Adaptive Card 形式?になったのではないかと思います。なので HTML が効かなくなったのかなー?と。

「Post a message (V3)」では今まで通り HTML を記述できます。

ただし、Automate を設定したユーザーとしてポストされてしまいます。誰かのポストではなく、 Bot のポストの方が直感的ですよね。

できればボタンではなく、RichTextBlock として処理したい。

Schema Explorer | Adaptive Cards

Schema Explorer | Adaptive Cards

を参考に RichTextBlock 内の TextRunselectAction を指定すればリンクになるかな?と思ったのですが、JSON のパースエラーで実行できませんでした。。。(Action.OpenUrl" なしで指定してもダメでした。)

どなたか Adaptive Card の RichTextBlock に詳しい方がいらっしゃればコメントや @ytabuchi までご連絡ください!

以上です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする