以前はPower Automateを使った複雑な手順が必要でしたが、今は設定ひとつで完結します。
本記事では、最新の「標準機能を使った実装方法」を解説します。
※過去の手法(ChannelData、Power Automate経由版)は記事の後半にアーカイブとして残しています。
会話に添付されたファイルの内容を取得する方法を調べたのでメモ。
やりたいこと

構築


※見ての通りポップアップが消えずに前面に来てしまうので、うまい具合にこのポップアップをよけてボタンを表示させる必要がある。。


First(System.Activity.Attachments).Name

First(System.Activity.Attachments).Content
以上で構築は完了。
今回は「必ず1つファイルを添付する」前提で作成しています。添付ファイルが0の(操作ミスの)可能性がある場合はifを、複数添付される可能性がある場合はループを入れること。
動作確認




後述の「昔の方法」に比べて格段に楽になった。
ただ今回はテストだったからよかったけど、実際の運用時にはSSO構成を正しく設定するか、会話の冒頭で一度認証を求めるトピックを挟むなどの、何かしらの工夫が必要になりそう。
関連記事
おまけ:【過去の手法アーカイブ】ChannelData、Power Automate経由版
やりたいこと

添付ファイルはChannelDataから取得可能


今回はこのBase64データを使用し、ファイルの保存機能をエージェントにつけてみる。
構築:添付されたファイルをSharePointに保存する
今回、前提としてファイルは最初に添付された1つだけを対象とする。
※複数対象にしたい場合はFirst関数を使用せず、Tableとして扱うまたはForeachでループしてもらえれば
Power Automateの構築
まずはファイルを保存するPower Automateを構築する。


これでPower Automateの構築は完了。
Copilot Studioの構築




以上で構築は完了。
// contentUrlの取得 Text(First(System.Activity.ChannelData.OriginalAttachments).contentUrl) // データ部分の取得 Index(Split(Topic.contentUrl,","),2).Value // ファイル名の取得 Text(First(System.Activity.ChannelData.OriginalAttachments).name)
動作確認






コメント