こんにちは。エクセルソフトの田淵です。
経緯
弊社では FAX をリモートで確認できるように、次のフローを作成しています。
- FAX が届く
- 受け取った複合機は社内の特定の共有フォルダに PDF をコピー
- その共有フォルダは SharePoint の同期フォルダで SharePoint 上にファイルがアップロードされる
- ファイルが作成されたことを Trigger にして、Power Automate で Bot として Teams にファイル名と SharePoint のリンク先をポスト
- 内容を確認して処理
今までは上記のポストの部分は「Post a message as the Flow bot to a channel」を使用して次のような感じで HTML としてポストしてもらっていました。
普通にメッセージとしてリンク付きテキストがポストされるので、デスクトップ版でもモバイル版でも Teams から内容が確認できていました。
2020/10/4 から(だと思いますが)、次のように HTML が文字として処理されてしまうようになりました。
解決策
なんと、HTML は使えなくなっても Markdown は行けるとのこと!
RichTextBlockは装飾したい部分ごとにオブジェクト分けないといけないのでおすすめはできないっすねー。Markdown使う方が現実的な気がします。https://t.co/MMcVOfV1pU
そもそもHTMLがサポートされなくなってる?のはちょっと確認中です。。。
— Hiro (@mofumofu_dance) October 5, 2020
Hiro さんありがとうございます。
当初やっていた Adaptive Card のやり方も残しておきます。
困ったので、以下の「Post your own adaptive card as the Flow bot to a channel」を使うことにしました。
Schema Explorer | Adaptive Cards を参考に、Action.OpenUrl
としてリンクを作成します。
{ "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "type": "AdaptiveCard", "version": "1.0", "body": [ { "type": "TextBlock", "text": "This card's action will open a URL" } ], "actions": [ { "type": "Action.OpenUrl", "title": "Action.OpenUrl", "url": "https://adaptivecards.io" } ] }
実際には以下の感じです。
無事ファイル名のボタン付きでポストされるようになりました。
気になる点と課題
「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
内の TextRun
で selectAction
を指定すればリンクになるかな?と思ったのですが、JSON のパースエラーで実行できませんでした。。。(Action.OpenUrl
を "
なしで指定してもダメでした。)
{ "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "type": "AdaptiveCard", "version": "1.2", "body": [ { "type": "RichTextBlock", "inlines": [ "This is the first inline. ", { "type": "TextRun", "text": "We support colors,", "color": "good" }, { "type": "TextRun", "text": " both regular and subtle. ", "isSubtle": true }, { "type": "TextRun", "text": "Text ", "size": "small" } ] }, { "type": "RichTextBlock", "inlines": [ { "type": "TextRun", "text": "https://adaptivecards.io", "selectAction": "Action.OpenUrl" } ] } ] }
どなたか Adaptive Card の RichTextBlock に詳しい方がいらっしゃればコメントや @ytabuchi までご連絡ください!
以上です。