Soracom

Users

ドキュメント
Home ドキュメント SORACOM Flux (Public beta) Getting Started

SORACOM Harvest Files に送信した画像を Microsoft Teams のチャネルに送信する

SORACOM Harvest Files にアップロード (ファイル作成およびファイル更新) した画像ファイルを、Webhook アクション を使用して Microsoft Teams のチャネルに通知する」という SORACOM Flux アプリ (以下、Flux アプリ) を作成します。

操作を始める前に準備が必要です (クリックして確認してください)

(1) SORACOM アカウント (オペレーター) を作成する

SORACOM アカウント (オペレーター) を作成します。また、支払い方法の登録も必要です。詳しくは、STEP 1: SORACOM アカウント (オペレーター) を作成する を参照してください。

(2) Microsoft Power Automate、Microsoft Teams のライセンス、アカウントを用意する

詳しくは、以下のページを参照してください。

(3) Microsoft Teams で通知先のチャネルを用意する

通知先の Microsoft Teams のチャネルを用意してください。詳しくは、Microsoft Teamsで標準、プライベート、または共有チャネルを作成する を参照してください。

準備完了

ステップ 1: Microsoft Power Automate でワークフローを作成する

  1. Microsoft Power Automate のコンソール にログインします。

  2. [左側のナビゲーションパネル][作成] の順にクリックします。

  3. [インスタント クラウド フロー] をクリックします。

  4. [フロー名] を入力し、[このフローをトリガーする方法を選択します] で「Teams Webhook 要求を受信したとき」を選択して、[作成] をクリックします。

  5. 「Teams Webhook 要求を受信したとき」の [+] をクリックします。

  6. [アクションやコネクタを検索する] に「チャットやチャネルにカードを投稿する」を入力し、[チャットやチャネルにカードを投稿する] をクリックします。

    Microsoft Teams にサインインしてください

    Microsoft Teams にサインインしていない場合は、サインインして Microsoft Teams への接続を作成します。[サインイン] をクリックして、画面の指示に従って操作してください。

  7. 「チャットやチャネルにカードを投稿する」で、以下の項目を設定します。

    項目説明
    [投稿者]「フローボット」を選択します。
    [投稿先]「チャネル」を選択します。
    [チーム]メッセージの投稿先のチームを指定します。
    [チャネル]メッセージの投稿先のチャネルを指定します。

    続けて、[アダプティブカード] を設定します。

    アダプティブカードについて詳しくは、アダプティブ カードを初めて作成する を参照してください。

  8. [アダプティブカード] の入力欄をクリックして、[] をクリックします。

  9. [添付ファイルアダプティブカード] をクリックします。

  10. [Teams Webhook 要求を受信したとき] をクリックします。

  11. [フローをトリガーできるユーザー] で「誰でも」を選択して、[保存] をクリックします。

    HTTP URL が発行されます。

  12. [HTTP URL][] をクリックして、HTTP URL をコピーします。

    この HTTP URL をこれ以降、${http_url} と表記します。例: https://xxxx-xx.japaneast.logic.azure.com:443/workflows/xxxxxxxxx...(省略)...

もう一度 HTTP URL を確認するには

もう一度 HTTP URL を確認する手順は以下のとおりです。

  1. [左側のナビゲーションパネル][マイフロー] → 作成したクラウドフローの順にクリックします。

  2. [編集] をクリックします。

  3. [Teams Webhook 要求を受信したとき] をクリックします。

ステップ 2: Flux アプリを作成する

  1. ユーザーコンソールにログイン し、Flux アプリを作成するカバレッジタイプを選択します。

    たとえば、グローバルカバレッジの Harvest Files に静止画をアップロードしたときに Flux アプリが実行されるようにする場合は、グローバルカバレッジの表示に変更します。詳しくは、SORACOM ユーザーコンソールで表示するカバレッジタイプを変更する を参照してください。

  2. [メニュー][SORACOM Flux][Flux アプリ] の順にクリックします。

  3. [+新しい Flux アプリを作成する] をクリックします。

  4. 以下の項目を設定します。

    項目説明
    [名前]Flux アプリの名前を入力します。
    [概要]Flux アプリの概要を入力します。

  5. [作成] をクリックします。

    Flux アプリが作成され、SORACOM Flux Studio の [Studio] タブが表示されます。

ステップ 3: SORACOM Harvest Files イベントソースと連結するチャネルを作成する

  1. SORACOM Flux Studio の [Studio] タブで、[+チャネルを作成する] をクリックします。

    「新しいチャネルを作成」画面が表示されます。

  2. [SORACOM Harvest Files][次へ] の順にクリックします。

    この Flux アプリでは、Harvest Files にアップロード (ファイル作成または更新) したときに、メッセージを次のチャネルに送信するように設定します。

    SORACOM Harvest Files イベントソースから、次のチャネルに送信されるメッセージについて詳しくは、SORACOM Harvest Files イベントソース を参照してください。

  3. 以下の項目を設定します。

    項目説明
    [名前]チャネルの名前を入力します。
    [概要]チャネルの概要を入力します。例: SORACOM Harvest Files にファイルがアップロードされたときにイベントメッセージを送信します。
    [イベントソース設定]

    Harvest Files でどのような変化が起きたときに、このチャネルにメッセージを送信するか、という条件を設定します。

    項目説明
    [有効]この条件の有効/無効を設定します。「有効」にしてください。
    [ファイルパス (前方一致)]Harvest Files のファイルパスを入力します。ここで指定したパスと前方一致したファイルがイベントの対象です。ここでは、「/flux」を入力します。
    [イベントタイプ]

    ファイルの変化の種類を選択します。ここでは、アップロード (ファイル作成または更新) を対象にするために、[ファイル作成][ファイル更新] にチェックを入れます。

    • [ファイル作成]: ファイルが新規にアップロードされた。
    • [ファイル更新]: 既存のファイルと同名のファイルがアップロードされた。
    • [ファイル削除]: ファイルが削除された。

  4. [チャネルを作成する] をクリックします。

    イベントソースに連結したチャネルが作成され、チャネルの詳細画面が表示されます。

  5. Esc キーを押すか、[×] (閉じる) をクリックします。

    SORACOM Flux Studio の [Studio] タブに戻ります。

ステップ 4: Webhook アクションを作成する

  1. ステップ 3: SORACOM Harvest Files イベントソースと連結するチャネルを作成する で作成したチャネルをクリックします。

  2. [アクション][+アクションを追加] の順にクリックします。

    「新しいアクションを作成」画面が表示されます。

  3. [Webhook][OK] の順にクリックします。

    「新しいアクションを作成: Webhook」画面が表示されます。

  4. 以下の項目を設定します。

    項目説明
    [名前]Teams 通知の名前を入力します。
    [概要]Teams 通知の概要を入力します。
    [有効]Webhook アクションを有効化する場合は「有効」にします。
    [CONDITION]Webhook アクションの実行条件を設定します。ここでは、すべての条件で実行するために、[アクションの実行条件] を空欄のままにします。

  5. 続けて、以下の項目を設定します。

    項目説明
    [HTTP メソッド]Webhook の HTTP メソッドを選択します。ここでは「POST」を選択します。
    [URL]Webhook の送信先の URL (Microsoft Power Automate で発行した HTTP URL) を設定します。ここでは、${http_url} を入力します。例: https://xxxx-xx.japaneast.logic.azure.com:443/workflows/xxxxxxxxx...(省略)...
    [認証方法]「なし」を選択します。
    [HTTP ヘッダー]Webhook の HTTP リクエストの HTTP ヘッダーを設定します。ここでは、[HTTP ボディ][application/json] をクリックすると、content-typeapplication/json が自動的に入力されます。
    [HTTP ボディ]

    [application/json] をクリックして、Webhook の HTTP リクエストの HTTP ボディを設定します。ここでは、以下の内容を入力します。

    {
      "type": "message",
      "attachments": [
        {
          "contentType": "application/vnd.microsoft.card.adaptive",
          "contentUrl": null,
          "content": {
            "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
            "type": "AdaptiveCard",
            "version": "1.4",
            "body": [
              {
                "type": "TextBlock",
                "text": "ファイル ${event.payload.eventType}",
                "size": "Large",
                "wrap": true,
                "style": "heading"
              },
              {
                "type": "TextBlock",
                "text": "パス: ${event.payload.path}",
                "size": "Medium",
                "weight": "Lighter",
                "wrap": true
              },
              {
                "type": "ImageSet",
                "images": [
                  {
                    "type": "Image",
                    "url": "${event.payload.presignedUrls.get}",
                    "altText": "cats"
                  }
                ]
              }
            ]
          }
        }
      ]
    }
    

    フォーマットの詳細は、アダプティブ カード を参照してください。

    "url": "${event.payload.presignedUrls.get}" で、Harvest Files に作成または更新された画像ファイルの URL を指定しています。アクションで指定できる変数は 入力できる変数、演算子、関数について を参照してください。

    [OUTPUT]

    Webhook アクションのレスポンスを、別のチャネルに送信するかどうかを設定します。

    ここでは、[アクションのアウトプットを別のチャネルに送信する] を「無効」のままにします。

  6. [作成する] をクリックします。

    Microsoft Teams のチャネルにメッセージを送信する Webhook アクションが作成され、チャネルの詳細画面の [アクション] タブに戻ります。

動作確認

画像ファイルを Harvest Files にアップロードする

ここまでに指定した条件を満たすように、画像ファイルを Harvest Files の「/flux」で始まるパスにアップロードします。Harvest Files にファイルをアップロードする手順については、SORACOM Harvest Files にファイルをアップロードする を参照してください。

Microsoft Teams に通知が届いていることを確認する

指定した Microsoft Teams のチャネルに、画像を含むメッセージ (アダプティブカード) が届いていることを確認してください。

  1. Microsoft Teams にアクセスします。

  2. [チーム] → チーム → チャネルの順にクリックします。

    画像を含むメッセージ (アダプティブカード) が表示されます。

Flux アプリの実行履歴を確認する

SORACOM Flux Studio の [実行履歴] タブでも、実行履歴を確認できます。

  1. ユーザーコンソールにログイン し、Flux アプリを作成したカバレッジタイプを選択します。

    たとえば、グローバルカバレッジに Flux アプリを作成した場合は、グローバルカバレッジの表示に変更します。詳しくは、SORACOM ユーザーコンソールで表示するカバレッジタイプを変更する を参照してください。

  2. [メニュー][SORACOM Flux][Flux アプリ] の順にクリックします。

  3. 作成した Flux アプリをクリックします。

  4. [実行履歴] をクリックします。

    チャネルごとに、[MESSAGE][CONTEXT]、そのチャネルから実行されたアクションの [入力][出力] が表示されます。詳しくは、実行履歴 (ログ) を参照してください。