Microsoft Teams アプリのトラブルシューティング

タブのトラブルシューティングを行うには

DevTools にアクセスする

Teams クライアントで DevTools を開くと、ブラウザーで F12 キー (Windows 上) キーまたは Command-Option-I キー (MacOS 上) キーを押すのと同様の操作を行うことができます。

空白のタブ画面

タブ ビューにコンテンツが表示されない場合は、次の可能性があります。

  • コンテンツを に <iframe>表示することはできません。
  • コンテンツ ドメインがマニフェストの validDomains リストにありません。

注:

指定されたタブ URL がログイン画面にリダイレクトされると、空白のタブが表示されます。 ログイン ページは、クリックジャッキングに対するセーフガードとして iFrame でレンダリングされません。 認証ロジックでは、リダイレクト以外の方法を使用する必要があります。

Web アプリの変更が [Teams] タブに反映されない

Web アプリが Teams タブ内でホストされているときに Web アプリの更新プログラムが表示されない一貫したキャッシュまたは断続的なキャッシュの問題が発生した場合は、サーバー キャッシュ設定をチェックし、ヘッダーを使用Cache-Controlして目的のクライアント キャッシュ動作を確認します。

[設定] ダイアログで [保存] ボタンが有効になっていない

ユーザーが入力した後、または設定ページで必要なすべてのデータを選択した後にを呼び出 microsoftTeams.settings.setValidityState(true) して、[保存] ボタンを有効にしてください。

[保存] を選択した場合、タブ設定を保存できません

タブを追加するときに、[ 保存 ] を選択しても、設定を保存できないことを示すエラー メッセージが表示される場合、問題は次の 2 つの問題クラスのいずれかである可能性があります。

  • 保存成功メッセージが受信されませんでした。 を使用して microsoftTeams.settings.registerOnSaveHandler(handler)保存ハンドラーが登録されている場合、コールバックは を呼び出す saveEvent.notifySuccess()必要があります。

    • コールバックが 30 秒以内に呼び出 saveEvent.notifySuccess() されない場合、または代わりに を呼び出 saveEvent.notifyFailure(reason) すと、このエラーが表示されます。
    • 保存ハンドラーが登録されていない場合、 saveEvent.notifySuccess() ユーザーが [保存] を選択すると、呼び出しが自動的に行われます。
  • 指定された設定が無効でした: 設定が保存されないもう 1 つの理由は、無効な設定オブジェクトを指定した呼 microsoftTeams.setSettings(settings) び出しまたは呼び出しがまったく行われなかった場合です。 次のセクションの「設定オブジェクトに関する一般的な問題」を参照してください。

設定オブジェクトに関する一般的な問題

  • settings.entityId が見つかりません。 通常、このフィールドには、定義される年ごとに 1 が指定されます。
  • settings.contentUrl が見つかりません。 通常、このフィールドには、定義される年ごとに 1 が指定されます。
  • settings.contentUrl または省略可能な settings.removeUrl、または settings.websiteUrl が指定されていますが無効です。 URL は HTTPS を使用する必要があります。また、設定ページと同じドメインであるか、マニフェストの validDomains 一覧で指定されている必要があります。

ユーザーを認証できない、またはタブに認証プロバイダーを表示できない

サイレント認証を行わない限り、 Microsoft Teams JavaScript クライアント ライブラリによって提供される認証プロセスに従う必要があります。

注:

すべての認証フローをドメインで開始および終了する必要があります。このフローは、マニフェストの validDomains オブジェクトに一覧表示する必要があります。

認証の詳細については、「 ユーザーを認証する方法」を参照してください。

静的タブが表示されない

既存のボット アプリを新しいまたは更新された静的タブで更新しても、個人用チャット会話からアプリにアクセスするときにそのタブの変更が表示されないという既知の問題があります。 変更を確認するには、新しいユーザーまたはテスト インスタンスでテストするか、アプリ ポップアップからボットにアクセスする必要があります。

ボットのトラブルシューティングを行うには

ボットを追加できない

エンド ユーザーがアプリを読み込むには、Microsoft 365 テナント管理者がアプリを有効にする必要があります。 場合によっては、Microsoft 365 テナントに複数の SKU が関連付けられている場合があり、ボットが機能するためには、すべての SKU で有効にする必要があります。 詳細については、「 Microsoft 365 テナントを準備する」を参照してください

チームのメンバーとしてボットを追加できない

ボットは、そのチームの任意のチャネル内でアクセスする前に、まずチームにアップロードする必要があります。 このプロセスの詳細については、「 チームでアプリをアップロードする方法」を参照してください。

ボットでチャネルにメッセージが表示されない

チャネル内のボットは、以前のボット メッセージに返信している場合でも、メッセージが明示的に @mentionedである場合にのみメッセージを受信します。 メッセージにボット名が表示されない唯一の例外は、ボットが最初に送信した CardAction の結果として imBack アクションを受け取った場合です。

チャネル内で自分のコマンドがボットで認識されない

チャネル内のボットは メッセージを受信する場合 @mentionedのみであるため、ボットがチャネルで受信するすべてのメッセージには、テキスト フィールドにそのメッセージが @mention 含まれます。 解析ロジックに渡す前に、ボット名自体をすべての受信テキスト メッセージから取り除くことをお勧めします。 このケースを処理する方法に関するヒントについては、「メンション」を確認してください。

パッケージ化とアップロードに関する問題

manifest.json の読み取り中にエラーが発生しました

ほとんどのマニフェスト エラーは、特定のフィールドが見つからないか無効であるかを示すヒントを提供します。 ただし、JSON ファイルを JSON としてまったく読み取ることができない場合は、この一般的なエラー メッセージが使用されます。

マニフェスト読み取りエラーの一般的な理由:

  • JSON が無効です。 JSON 構文を自動的に検証する Visual Studio CodeVisual Studio などの IDE を使用します。
  • エンコードの問題。 manifest.json ファイルには UTF-8 を使用します。 その他のエンコードは、特に BOM では読み取れない場合があります。
  • 形式が正しくない .zip パッケージ。 manifest.json ファイルは、 .zip ファイルの最上位レベルにある必要があります。 既定の Mac ファイル圧縮では manifest.json がサブディレクトリに配置される可能性があるため、Microsoft Teams では正しく読み込まれないことに注意してください。

同じ ID を持つ別の拡張機能が存在する

同じ ID の更新されたパッケージを再度アップロードする場合は、[アップロード] ボタンではなく、タブのテーブル行の末尾にある [置換] アイコンを選択します。

更新されたパッケージを再アップロードしない場合は、 ID が一意であることを確認します。

関連項目