Microsoft Teams

Microsoft Teams コネクタは、Microsoft Teams アプリケーションへの接続を提供します。

始める前に

Microsoft Teams コネクタを使用する前に、次の作業を行います。

  • Google Cloud プロジェクトで次の操作を行います。
    • ネットワーク接続が設定されていることを確認します。ネットワーク パターンの詳細については、Network Connectivity をご覧ください。
    • コネクタを構成するユーザーに roles/connectors.admin IAM ロールを付与します。
    • コネクタに使用するサービス アカウントに、次の IAM ロールを付与します。
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      サービス アカウントは特別なタイプの Google アカウントで、Google API のデータにアクセスするのに認証を受ける必要がある人間以外のユーザーを表します。サービス アカウントがない場合は、サービス アカウントを作成する必要があります。詳細については、サービス アカウントを作成するをご覧ください。

    • 次のサービスを有効にします。
      • secretmanager.googleapis.com(Secret Manager API)
      • connectors.googleapis.com(Connectors API)

      サービスを有効にする方法については、サービスを有効にするをご覧ください。

    以前にプロジェクトでこうしたサービスを有効にしていない場合は、コネクタを構成するときにそれを有効にすることを求められます。

コネクタを構成する

コネクタを構成するには、データソース(バックエンド システム)への接続を作成する必要があります。接続はデータソースに特有です。つまり、多数のデータソースがある場合は、データソースごとに別々の接続を作成する必要があります。接続を作成する手順は次のとおりです。

  1. Cloud コンソールで、[Integration Connectors] > [接続] ページに移動し、Google Cloud プロジェクトを選択または作成します。

    [接続] ページに移動

  2. [+ 新規作成] をクリックして [接続の作成] ページを開きます。
  3. [ロケーション] セクションで、接続のロケーションを選択します。
    1. リージョン: プルダウン リストからロケーションを選択します

      サポートされているすべてのリージョンの一覧については、ロケーションをご覧ください。

    2. [次へ] をクリックします。
  4. [接続の詳細] セクションで、次の操作を行います。
    1. コネクタ: 使用可能なコネクタのプルダウン リストから [Microsoft Teams] を選択します。
    2. コネクタのバージョン: 使用可能なバージョンのプルダウン リストからコネクタのバージョンを選択します。
    3. [接続名] フィールドに、接続インスタンスの名前を入力します。

      接続名は次の条件を満たす必要があります。

      • 接続名には英字、数字、ハイフンを使用できます。
      • 文字は小文字のみを使用できます。
      • 接続名の先頭には英字を設定し、末尾には英字または数字を設定する必要があります。
      • 接続名は 63 文字以内で指定してください。
    4. 必要に応じて、接続インスタンスの [説明] を入力します。
    5. サービス アカウント: 必要なロールを持つサービス アカウントを選択します。
    6. 接続インスタンスの Azure-Tenant を入力します。
    7. 必要に応じて、[すべてのグループを含める] を選択して、組織内のすべてのグループを含めます。
    8. 必要に応じて、接続ノードの設定を構成します。

      • ノードの最小数: 接続ノードの最小数を入力します。
      • ノードの最大数: 接続ノードの最大数を入力します。

      ノードは、トランザクションを処理する接続の単位(またはレプリカ)です。1 つの接続でより多くのトランザクションを処理するには、より多くのノードが必要になります。逆に、より少ないトランザクションを処理するには、より少ないノードが必要になります。ノードがコネクタの料金に与える影響については、接続ノードの料金をご覧ください。値を入力しない場合は、デフォルトで最小ノード数は 2 に設定され(可用性を高めるため)、最大ノード数は 50 に設定されます。

    9. SSL 構成: 信頼モデルから [公開(デフォルト)] を選択します。
    10. [次へ] をクリックします。
    11. [認証] セクションで、次の操作を行います。
      1. クライアント ID: アクセス トークンのリクエストに使用されるクライアント ID。
      2. スコープ: 必要なスコープのカンマ区切りのリスト
      3. クライアント シークレット: 作成した接続されているアプリのクライアント シークレットを含む Secret Manager のシークレットです。
      4. シークレットのバージョン: クライアント シークレットを含むシークレットのバージョン。
      5. 承認 URL: クライアントの作成時に生成された承認 URL。
      6. [次へ] をクリックします。
    12. Review: 接続と認証の詳細を確認します。
    13. [作成] をクリックします。

    Authorization code 認証タイプの場合は、接続を作成した後、認証を構成するためにいくつかの追加手順を行う必要があります。詳しくは、接続作成後の追加手順をご覧ください。

    接続作成後の追加手順

    認証に OAuth 2.0 - Authorization code を選択した場合は、接続の作成後に次の追加の手順を行う必要があります。

    1. 接続ページで、新しく作成された接続を見つけます。

      新しいコネクタの [ステータス] は [承認が必要] になります。

    2. [承認が必要] をクリックします。

      これにより、[承認の編集] ペインが表示されます。

    3. [リダイレクト URI] の値を外部アプリケーションにコピーします。
    4. 認可の詳細を確認します。
    5. [Authorize(承認)] をクリックします。

      認可が成功すると、[接続] ページの接続ステータスが「有効」に設定されます。

    認証コードの再認可

    Authorization code 認証タイプを使用しているユーザーが、アプリケーションの構成を変更した場合は、Microsoft Teams 接続を再認可する必要があります。接続を再認可するには、次の手順を行います。

    1. [接続] ページで必要な接続をクリックします。

      これにより、[接続の詳細] ページが開きます。

    2. [編集] をクリックして、接続の詳細を編集します。
    3. [認証] セクションで [OAuth 2.0 - 認証コード] の詳細を確認します。

      必要に応じて必要な変更を加えます。

    4. [保存] をクリックします。接続の詳細ページに移動します。
    5. [認証] セクションで [承認の編集] をクリックします。これにより、[承認] ペインが表示されます。
    6. [Authorize(承認)] をクリックします。

      認可が成功すると、[接続] ページの接続ステータスが「有効」に設定されます。

    システムの上限

    Microsoft Teams コネクタは、Team Members, Times Off, Channels, and Chats エンティティのリスト オペレーションのノードごとに 1 あたり 30 件のトランザクションを処理することができ、この上限を超えるトランザクションはすべてスロットルされます。

    デフォルトでは、Integration Connectors は、接続に 2 つのノードを割り当てます(可用性を高めるため)。

    Integration Connectors に適用される上限の詳細については、上限をご覧ください。

    エンティティ、オペレーション、アクション

    すべての Integration Connectors が、接続されたアプリケーションのオブジェクトを抽象化するレイヤを提供します。アプリケーションのオブジェクトには、この抽象化を通じてのみアクセスできます。抽象化は、エンティティ、オペレーション、アクションとして公開されます。

    • エンティティ: エンティティは、接続されているアプリケーションやサービスのオブジェクト、またはプロパティのコレクションと考えることができます。エンティティの定義は、コネクタによって異なります。たとえば、データベース コネクタでは、テーブルがエンティティであり、ファイル サーバー コネクタでは、フォルダがエンティティです。また、メッセージング システム コネクタでは、キューがエンティティです。

      ただし、コネクタでいずれのエンティティもサポートされていない、またはエンティティが存在しない可能性があります。その場合、Entities リストは空になります。

    • オペレーション: エンティティに対して行うことができるアクティビティです。エンティティに対して次のいずれかのオペレーションを行うことができます。

      使用可能なリストからエンティティを選択すると、そのエンティティで使用可能なオペレーションのリストが生成されます。オペレーションの詳細については、コネクタタスクのエンティティ オペレーションをご覧ください。ただし、コネクタがいずれかのエンティティ オペレーションをサポートしていない場合、サポートされていないオペレーションは Operations リストに含まれません。

    • アクション: コネクタ インターフェースを介して統合で使用できる主要な関数の一つです。アクションを使用すると、1 つまたは複数のエンティティに対して変更を加えることができます。また、使用できるアクションはコネクタごとに異なります。通常、アクションには入力パラメータと出力パラメータがあります。ただし、コネクタがどのアクションもサポートしていない可能性があります。その場合は、Actions リストが空になります。

    アクションの例

    このセクションでは、このコネクタでアクション オペレーションの一部を実行する方法について説明します。

    例 - アクション

    この例では、特定の Chat エンティティにメッセージを送信します。

    1. [Configure connector task] ダイアログで、[Actions] をクリックします。
    2. Actions から SendMessage を選択します。
    3. [Actions] オペレーションを選択してから、[完了] をクリックします。
    4. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
            {
              "TeamId": "cc110f3f-3088-4b4c-b965-e1f3e0a2dfab",
              "ChannelId": "19%3a7680178ef3ab4b1eb762a7078b990083%40thread.tacv2",
              "Content": "Hello Guys Lets play"
            }

    エンティティ オペレーションの例

    このセクションでは、このコネクタでエンティティ オペレーションの一部を実行する方法について説明します。

    例 - すべてのレコードを一覧表示する

    この例では、Channel Members エンティティ内のすべてのレコードを一覧表示します。

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から Channel Members を選択します。
    3. [List] オペレーションを選択してから、[完了] をクリックします。
    4. 必要に応じて、コネクタタスクの [タスク入力] セクションでフィルタ句を指定して、結果セットをフィルタリングできます。 フィルタ句の値は常に単一引用符(')内で指定します。例: Id='13b1724a91ce448bad2f1986321fc70f'。論理演算子を使用して複数のフィルタ条件を指定することもできます。例: Id='13b1724a91ce448bad2f1986321fc70f' and Inactive=false

    例 - レコードを取得する

    この例では、Chats エンティティから、指定した ID のレコードを取得します。

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から Chats を選択します。
    3. [Get] オペレーションを選択してから、[完了] をクリックします。
    4. [コネクタタスクの [タスク入力 セクションで [entityId] をクリックし、[デフォルト値] フィールドに 19:1956432abc05491bb26f51f9f7263020@thread.v2 を入力します。

      ここで、19:1956432abc05491bb26f51f9f7263020@thread.v2Chats エンティティの主キー値です。

    例 - レコードを作成する

    この例では、Group Owners エンティティに レコードを作成します。

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から Group Owners を選択します。
    3. [Create] オペレーションを選択してから、[完了] をクリックします。
    4. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
      {
        "GroupId": "1356c566-d799-4d49-86c0-b09ab6afdb47",
        "MemberId": "caf19b29-3af1-4191-b455-16468e6aba4b"
      }

      統合に成功すると、コネクタタスクの connectorOutputPayload フィールドの値は次のようになります。

      {
      "Id": "c3c68bc9a1343242443ca8e5ddcaa0000"
      }

    例 - レコードを更新する

    この例では、Teams エンティティ内の指定された ID のレコードを更新します。

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から Teams を選択します。
    3. [Update] オペレーションを選択してから、[完了] をクリックします。
    4. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
      {
            "displayName": "My Team Name Changed",
            "description": "Changed the description for my team"
          }
    5. [filterClause] をクリックし、[デフォルト値] フィールドに「id = '953933bc-1024-4ce7-84dc-bae7f24dc2ca'」と入力します。

    例 - レコードを削除する

    この例では、Group Owners エンティティ内の指定された ID のレコードを削除します。

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から Group Owners を選択します。
    3. [Delete] オペレーションを選択し、[完了] をクリックします。

    Terraform を使用して接続を作成する

    Terraform リソースを使用して、新しい接続を作成できます。

    Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。

    接続作成用の Terraform テンプレートのサンプルを表示するには、サンプル テンプレートをご覧ください。

    Terraform を使用してこの接続を作成する場合は、Terraform 構成ファイルで次の変数を設定する必要があります。

    パラメータ名 データ型 必須 説明
    default_queue_name STRING False デフォルト キューの名前で、アクションを実行したときにオーバーライドされることがあります。
    default_topic_name STRING False デフォルトのトピックの名前で、アクションの実行時にオーバーライドされることがあります。
    バケット STRING True tibjms.jar が存在するプロジェクト内のバケットの名前。
    オブジェクト ID STRING True バケット内の .jar ファイルの名前。

    統合で Microsoft Teams 接続を使用する

    接続を作成すると、Apigee Integration と Application Integration の両方で使用できるようになります。この接続は、コネクタタスクを介して統合で使用できます。

    • Apigee Integration で Connectors タスクを作成して使用する方法については、Connectors タスクをご覧ください。
    • Application Integration で Connectors タスクを作成して使用する方法については、Connectors タスクをご覧ください。

    Google Cloud コミュニティの助けを借りる

    Google Cloud コミュニティの Cloud フォーラムで質問を投稿したり、このコネクタについてディスカッションしたりできます。

    次のステップ