Power AutomateでTeamsに投稿するアダプティブカードの画像を、Base64とやらにしてみたハナシ
前回、Mattからアダプティブカードでランチタイムのお知らせをするフローを作ってみました😋
直リンクOKのサイトを探すのがめんどくさければ、OneDriveに入れた画像を表示させればいいじゃない…!と思ったのだけど、「Base64」というものを同期から教えてもらいました😍
Miyakeさんのスライドにも書いてあったやつですね。
でもさぁ…なにそれーーー😂
Base64について、教えてもらった参考サイトはこちら🙏✨
SVG的なものなんかな?
Power Automateでファイルコンテンツを取得すると、このBase64というものが返ってくるので、それをアダプティブカードの画像として設定したらいいとのこと🤩
ほほーーーー なんやよくわからんけど、イメージはできたぞ✨
画像を文字にしちゃうから、ファイルがどこに保存されているとか全く関係ないってことだ😍
ありがたし ありがたし🙏💖
どうやって設定したのか、メモしておくーーー!
① OneDriveに画像を保存する
OneDriveに、アダプティブカードに設定したい画像を保存します。
※ファイルサイズは28KB未満です💣
(↓ 下の画像は超えていたので、画像サイズを小さくする作業を挟みました😇)
② 保存した画像のファイルコンテンツを取得
「インスタントクラウドフロー」でフロー作成。
使用したのは「OneDrive for business:パスによるファイルコンテンツの取得」
保存した画像を選択。
で、保存→テスト実行!
出力のファイルコンテンツにいる、content の値がBase64なんですって!
③ アダプティブカードに設定する
アダプティブカードデザイナーを開く。
「早々にMattにはご退場いただいて」🤭、Select host appをTeamsに変更。
んで、Imageを配置。
imageのURLのところにBase64を入力したいので、とりあえずtestとか適当に入力してみる。
(。 ・ω・))フムフム、こんな感じに入るのね。
この「test」にどう書くか。
教えてもらった参考サイトはこちら🙏✨
こんな感じで書けばいいみたい👀✨
まさしく これか!!
Power Automateのフローに戻って、「パスに寄るファイルコンテンツの取得」は もう用済みなので削除 ポイッ( ・ω・)ノ ⌒ *
ベタ打ちでもいいんだけど、contentは長いから変数にしてみる。
使用するのは「変数:変数を初期化する」。
値には、さっき出力した content の値を(*゚▽゚)ノ□ペタッ
値、長っ🤣 ぴよたその重みw
続いて、「Teams:チャットやチャネルにアダプティブカードを投稿する」で、アダプティブカードデザイナーのJSONを(*゚▽゚)ノ□ペタッ
この url のtestの部分を、こんな感じに変更!
④ 実行してみる
では、いざ実行!(。・Α・)σポチッ
(`・∀・)ノイェ-イ!
かっ、かわえぇ🤤
⑤ 所感
なるほど なるほど~
決まった画像を投稿したいのならば、一度別でcontent を取得して使えば良いのですな😋
365ユーザーのプロフィール画像を動的に取得したい場合には…と、こちらも参考サイトとして教えてもらいました🙏✨
くじ引き的な感じで、今日の掃除当番はこの人!とかって、スケジュール実行するのとかできそう🤣🤣
優しく教えてくれる同期がいる環境が すごく有難いです🤭
そして その時間をよしとしてくれる長と周りの方に感謝🙏✨
今日もありがとう~💖
事務員が少しの背伸びでできる効率化を目指す🌈✨ 自分の好きなものを、楽しく発信していきたいです! いただいたサポートは学習費にあてさせていただきます🥰