5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

絶対に俺がハイタッチしてみせる!!!をPower Automate で実現するフロー

Last updated at Posted at 2023-04-21

概要

みなさんTeamsの このアップデート確認されましたか?!

こういう遊び心っていいですよね🤣
...まだうちの環境には来てないみたいですけど😗

今日は、誰かがハイタッチを求めてきた時に、いち早くハイタッチを返すフローを作ります。

ハイタッチを取得する

トリガー

トリガーにはチャットに新しいメッセージが追加されたときを使用します。
このトリガーを使うことで、全てのチャットの投稿を取得します。
image.png

メッセージ詳細を取得する

メッセージの内容をメッセージ詳細を取得するで確認します。
ここで[メッセージの種類]はグループ チャットを選んでおけば大丈夫です。
image.png
こうすることで、グループチャットの投稿だけでなく個人チャットの投稿もしっかり取得できます。
今回は関係ありませんが、チャネルの投稿も取得できてしまいます。

メッセージID会話IDを入力します。
自然にApply to eachが入ってしまいますが、気にしなくても問題ありません。
image.png
image.png

気になる方はfirst関数で囲っておきましょう。

テスト実行

フローを保存しておいて、適当なチャットにハイタッチを投稿してテスト実行を行います。
image.png
image.png

絵文字はHTMLで記述されており、body>body>contentのこの部分がハイタッチの中身ですね。

これをコピーしておいて、送られてきた内容と一致するかどうか?でフローを続行するかどうかを判断します。
image.png

返信するかどうか判断する

条件分岐①

コピーしておいたテキストと比較して、本文が全く同じかどうかを判断します。
image.png

コピーしたハイタッチは、後で投げ返す時にも使うので、変数や作成アクションに保存しておきます。
image.png

コピーしたテキストでは、ダブルクォーテーションがバックスラッシュ\でエスケープされています。
エスケープされていると正しく比較できませんので、不要なバックスラッシュは消しておきましょう。

highfive
<p><span title="ハイタッチ" type="(highfive)" class="animated-emoticon-50-highfive"><img itemscope="" itemtype="http://schema.skype.com/Emoji" itemid="highfive" src="https://statics.teams.cdn.office.net/evergreen-assets/personal-expressions/v2/assets/emoticons/highfive/default/50_f.png" title="ハイタッチ" alt="✋" style="width:50px; height:50px"></span></p>

置換すると楽かも。
image.png

条件分岐②

このままでは自分が投稿したハイタッチに永遠にハイタッチを投げ返す無限ループが完成してしまいます。
先程のテスト実行でも、自分の投稿がトリガーされていましたよね。

一人で手を上げ続ける悲しいモンスターを生まないためにも、条件を見直しましょう。
AND条件を追加して、メッセージ投稿者が自分とは異なることを条件に加えます。
image.png

ハイタッチで返信する

返信にはこのチャットまたはチャネルでメッセージを投稿するを使います。
image.png

投稿者はユーザー(自分自身)とします。
選択肢に個人チャットがありませんが、ここでもグループチャット(Group chat) を選択しておけば大丈夫です。
image.png

個人チャットでも会話IDを指定することでメッセージの投稿が可能です。
image.png

いざ、実践!

ということで、フローが完成しました!
実際に試してみましょう。

  • 個人チャットで試してみる

  • グループチャットで試してみる

ちゃんと動くようですね!

おわりに

このフローのサンプルをgithubで公開しています。

特に環境に合わせて変更しないといけないところは無いと思うので、そのままインポートして有効化してもらえれば使えると思います。

余談

チャットの相手が同じフローを持っていると、無限ハイタッチ編が開始されます…

5
1
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
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?