Power Automateを使って、自動でTeamsにメッセージを投稿したりメールを送ったりするフローでは、しばしば本文の装飾にHTMLを使ったりします。
例えば下図の場合には、あるユーザーのTwitterのタイムラインを取得してそれをTeamsに投稿+元のメッセージへのリンクを送るようなフローになっています。
この時、チャンネルへのメッセージ投稿アクションでは </>
マークをクリックしてHTMLを編集できるモードにして、ツイートへのリンクやら、ツイートの本文を動的コンテンツから埋め込みますよね。
装飾に問題がなければうまく期待通りのメッセージが表示されて、よしよしとなるわけですが、問題はここからです。
...おわかりでしょうか。
なんとアクションを開閉すると、頑張って書いたHTMLが壊れてしまうんですね。これは困った。
対応方法
この問題への対応は非常にシンプルです。
この問題は手入力した文字列+動的コンテンツでメッセージを装飾したときに高確率で発生します。
なので、手で入力するか、動的コンテンツだけにするかに寄せてあげればいいわけです。
ではどうするか。投稿アクションの手前に「作成」アクションを挿入してそこにHTMLを書くです!
これだけです。これだけでアクションを開閉してもメッセージが壊れなくなります。
※正確には一番外側に<p>~</p>
はつきますが
また、今回はTeamsへのメッセージ投稿の例ですが、Outlookのメール送信でも同じ事象が発生します。そんな場合にも直前にメールの本文を「作成」で定義しておけば、メッセージが壊れるのを防ぐことができます。
ということで困ったらお試しあれ