LoginSignup
7
4

Edge ワークスペースを複製して他のユーザーに共有するPower Automate

Last updated at Posted at 2023-06-07

前置き

Microsoft Edgeのワークスペース。みなさん使ってますか?
比較的新しい機能でなじみがない方もおられるかもしれないので、前置きとして簡単に触れておきます。

ワークスペースは開いてる複数のタブをウィンドウごと1つのセットとして保存できるような機能です。
image.png

個人的な使用用途としても、作業ごとのまとまりとしてタブのセットを保存しておけるのはかなり便利です。
また、ワークスペースを閉じてしまっても、ちゃんと保存されていて特に期限の制約もなく、いつでも再度開けるところが気に入っています。
image.png

そんなワークスペースですが、[招待]から同じ組織(テナント)のユーザーと共有することができます。
image.png

タブを新しく開いたり閉じたりしても、作業状況が共有したユーザーとしっかり同期されます。

…ん?
共有したタブを勝手に他の人に閉じられたら嫌じゃない…?

と、いうことで、作成したワークスペースを複製して共有するフローを作ってみました!

せっかく共有機能があるのだから、うまいこと使えないかな?と考えてみた結果です。

フローの概要

今回は仕組みの解説のため、比較的シンプルな構造にしてみました。
image.png

あらかじめ作成しておいたワークスペースを対象に、実行時にユーザーを指定して複製したワークスペースを共有します。
image.png

共有されたユーザーには、ワークスペースを開くためのリンクつきチャットが届きます。
image.png

フローの解説

トリガー

トリガーは簡単のため[手動でフローをトリガーします]を使用しています。
検証や実験に使いやすいお手軽トリガーですね。
ここでメールアドレスを指定できるように、入力を追加しています。
image.png

ワークスペースの複製

そもそもワークスペースはどこに保存されているのでしょう?
ワークスペースは同じ組織(テナント)のユーザーと共有できる機能があります。

共有できる個人の作成物といえば・・・?
そう、ワークスペースは作成者のOneDrive for Businessに保存されています。
image.png

作成者というのは、Edgeのプロファイルでサインインしているアカウントを指します。
image.png

OneDriveに保存されているということがわかれば複製は簡単ですね。
OneDriveコネクタの[ファイルのコピー]アクションを使用してコピーします。
ファイル名が重複しないよう、また誰に共有したファイルかわかるように、共有相手のmailNicknameを追加していますが、この辺りはお好みで変えてください。
image.png

コピー対象のワークスペースは、動的な値を使わずに単純指定しています。
共有したいファイルが固定ではない場合は、トリガーを[選択したファイルの場合]にして、ファイルを指定して実行できるようにするなど、運用に合わせて変えてください。
image.png

共有リンクを作成する

ワークスペースの共有にもOneDriveの共有機能が使用されています。
ワークスペースの[招待]からリンクを発行すると同時に、OneDriveの方でも共有リンクが発行されるようです。
image.png

自動的に共有リンクが作成されますが、共有の種類は[リンクを知っている <組織> 内のユーザー]になっていました。
社外(テナント外)には共有されないようですね。いち情シスとしても安心しました。
image.png

フローでも複製したワークスペースの共有リンクを作成します。
リンクの種類とスコープは、手動でワークスペースの共有を行った時と同様にしています。
image.png

さて、この共有リンクですが、このリンクにアクセスしようとしても、ワークスペースを開くことができません。
「.edge」ファイルを、直接ファイルとして開こうとしてしまうようですね。
image.png

ワークスペースとして開くためのリンクを発行する

一度、手動で招待した時のリンクを確認してみましょう。
image.png

コピーしたリンクを確認すると、"id="以降に謎の文字列が並んでいます。
image.png

末尾の%3D%3Dは少し書式が違う感じがするので、それを除いた黄色い部分をBase64でデコードしてみます。(こちらのサイトを使用しました)
image.png

デコードするとURLが出てきましたね。
これはOneDriveで作成された共有リンクと同一です。
image.png

つまり、ワークスペースとして招待するためのURLには、Base64でエンコードされたOneDriveの共有リンクが含まれていたということですね。

ということで、フローでも同じことをします。
幸いPower Automate ではBase64でエンコードするための関数が用意されています。
image.png

作成 inputs
https://aka.ms/edgeworkspaces/join?type=2&id=@{base64(outputs('共有リンクを作成する')?['body/WebUrl'])}&store=3

チャットで招待リンクを送付する

ワークスペースとして開くためのリンクが作成できたので、最後にチャットで送ってフローは完了です。
image.png

おわりに

新機能であるワークスペース、僕個人としては自分1人で使う用途で活用していますが、せっかくの共有機能なので何かに使えないかと考えてみました。

想定する使用シーンとしては、例えば「新入社員お役立ち勉強サイト」なんかをまとめておいて、ワークスペースとして配布してあげる、といったものを考えています。
(リンク集作ればいいじゃんというのは無視しておいて…)

他にもみなさんでよい利用方法がありましたら、共有いただけると幸いです。

7
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
4