# 使用ガイド: Outlook でのオンライン会議のスケジュール

{% hint style="warning" %}
このページでは、利用例を含めてパックを使用する様々な方法を説明します。 管理者は[構成ガイド](https://docs.nexthink.com/platform/ja/library-packs/l1-support/workflow-schedule-online-meeting-outlook/configuration-guide-proactive-password-reset)を参照し、インストールされているコンテンツの設定やカスタマイズを行うことができます。
{% endhint %}

**ワークフロー: Outlookでオンライン会議をスケジュールする** ライブラリパックは、EUCチームが行う次のことをサポートします。

* 会議のスケジュールを自動化し、調整に費やす時間を削減
* コラボレーションのセットアップを効率化し、チケット解決を迅速化
* サポートエージェントの生産性を向上し、スケジューリングの負担を軽減
* より迅速かつ効率的なサポートインタラクションを提供することで、ユーザーエクスペリエンスを向上させる。

## ライブラリパックは使用している

{% hint style="info" %}
このページの[使用ケース](#library-pack-uses)にジャンプして、関連するシナリオアプリケーションを確認してください。
{% endhint %}

以下の目的のためにライブラリパックのコンテンツを使用します。

### 可視性 <a href="#workflow-structure" id="workflow-structure"></a>

このライブラリパックは、**Outlookでのオンライン会議のスケジュール** [ワークフロー](https://docs.nexthink.com/platform/ja/user-guide/workflows)に焦点を当てています。 このワークフローは、Microsoft Teamsの会議スケジュールを自動化し、プログラムでの可用性調整とカレンダーイベントの作成を、サポートエージェントとエンドユーザーの両方に対して行います。

### ワークフローのトリガー <a href="#workflow-structure" id="workflow-structure"></a>

このワークフローは、社員との通話中や問題の報告に応じて、特定のデバイスで起動される必要があります。 これは、[デバイスビュー](https://docs.nexthink.com/platform/ja/user-guide/device-view)（以下に示すように）または[Amplify](https://docs.nexthink.com/platform/ja/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/configure-amplify)を使用して実現できます。<br>

<figure><img src="https://3549141153-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeLm8O7QKZDn6z806e7Sv%2Fuploads%2Fgit-blob-dd96c8b98621b0bb3179ce0a40e8d22ed9ba3919%2Fimage%20(628).png?alt=media" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
ワークフローは、対象デバイスにログインしているユーザーを会議主催者とし、'参加者'パラメータに指定されたユーザーを会議参加者とします。
{% endhint %}

### 事前定義されたワークフローの構造とステップ <a href="#workflow-structure" id="workflow-structure"></a>

**アウトルックでオンライン会議をスケジュールする** ワークフローは以下の主要なステップで構成されています。

1. [入力パラメータを設定する](#configure-the-input-parameters)
2. [ワークフローはJavaScriptコードを含むThinklet関数を使用して、現在の日付に基づいて次の営業日を決定します](#the-workflow-uses-a-function-thinklet-containing-javascript-code-to-determine-the-next-business-day)
3. [ワークフローは、ターゲットユーザーと指定された参加者のカレンダーからカレンダー可用性データを取得します](#the-workflow-retrieves-calendar-availability-data-from-the-target-users-and-the-defined-participants)
4. [ワークフローは、JavaScriptコードを含むThinklet関数を使用して、可用性データを比較し、両者に共通の時間枠を特定します](#the-workflow-uses-a-function-thinklet-containing-javascript-code-to-compare-the-availability-data-an)
5. [共通の時間枠が見つかった場合、ワークフローはその日付と時間に両者のためのMicrosoft Teamsオンラインミーティングを作成します](#if-a-common-time-slot-is-found-the-workflow-will-create-a-microsoft-teams-online-meeting-for-both-pa)

### 入力パラメータを設定する

ワークフローには次の入力パラメータが必要です:

* 参加者 - オンライン会議に招待するユーザーのメールアドレスを指定します。\
  例: `participant@yourdomain.com`
* 件名 - オンライン会議の件名を入力します。\
  例: `プロジェクトキックオフミーティング`
* 内容 - 会議招待に表示される本文を記入します。\
  例: `このTeams会議に参加してプロジェクトの範囲と次のステップを確認してください。`
* 会議の持続時間（分単位） - 会議の所要時間を分単位で設定します。\
  例: `60`
* 場所 - 会議の予定に表示される場所を指定します。\
  例: `Microsoft Teams Meeting`

<figure><img src="https://3549141153-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeLm8O7QKZDn6z806e7Sv%2Fuploads%2Fgit-blob-dceab46d5d6442729cfdc66bdff0f77f1e54688e%2Fimage%20(650).png?alt=media" alt="" width="308"><figcaption></figcaption></figure>

### ワークフローは、現在の日付に基づいて次の営業日を決定するJavaScriptコードを含むFunction thinkletを使用します。

このFunction thinkletの目的は、現在の日付から次の営業日を特定し、その日の開始と終了のタイムスタンプを出力として返すことです。

<figure><img src="https://3549141153-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeLm8O7QKZDn6z806e7Sv%2Fuploads%2Fgit-blob-30747a8a42f5f2c9bdd74657a170286569b05095%2Fimage%20(629).png?alt=media" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="warning" %}
この関数は週末のみを考慮に入れます。 銀行休業日は考慮されません。

このワークフローの現在のバージョンは、ビジネス時間が09:00から17:00 UTCとハードコーディングされており、現地のタイムゾーンは考慮されていません。

ハードコーディングされたビジネス時間09:00〜17:00 UTCは、それぞれ11:00〜19:00 CESTおよび02:00〜10:00 PSTに相当し、それらのタイムゾーンで混乱を招く可能性があります。
{% endhint %}

この関数のコードは、[Configuration guide](https://docs.nexthink.com/platform/ja/library-packs/l1-support/configuration-guide-proactive-password-reset#start-and-end-date-function)の関連セクションで見つけることができます。

### ワークフローは、対象ユーザーおよび定義された参加者のカレンダーからカレンダー利用可能データを取得します。

次のステップでは、ワークフローは、Graph APIのgetSchedule APIエンドポイントを呼び出して、主催者と参加者の両方の可用性文字列を取得します（詳細は[Microsoft ドキュメント](https://learn.microsoft.com/ja-jp/graph/outlook-get-free-busy-schedule)参照）。

これらの文字列は、デフォルトで1時間ごとに指定された時間間隔内の可用性を示す数字のシーケンスとして、個人の勤務日を表します。 可用性ステータスは次の値をとることができます。

* 0 = 無料または他の場所で作業中
* 1 = 暫定的
* 2 = 忙しい
* 3 = オフィス外

### ワークフローは、双方の最初の共通の時間枠を特定するための可用性データを比較するJavaScriptコードを含むFunction thinkletを使用します。

次のステップはこれらの可用性文字列を比較して、Function thinkletを使用して主催者と参加者の両方に適した時間枠を見つけることです。 このthinkletは、時間枠が見つかったかどうかを示す文字列の出力'メッセージ'を返します。 時間枠が見つかると、その時間枠の開始と終了の出力をタイムスタンプと共に返します。

<figure><img src="https://3549141153-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeLm8O7QKZDn6z806e7Sv%2Fuploads%2Fgit-blob-4a3d84178ea1685c05307c13e22384ace1df8155%2Fimage%20(630).png?alt=media" alt="" width="311"><figcaption></figcaption></figure>

この関数のコードは、[Configuration guide](https://docs.nexthink.com/platform/ja/library-packs/l1-support/configuration-guide-proactive-password-reset#check-availability-function)の関連セクションで見つけることができます。

### 共通の時間枠が見つかると、その日にMicrosoft Teamsのオンライン会議が両者のために作成されます。

最終的なステップは二つのアクションで構成されます。 まず、時間枠が見つかったかどうかを確認するために条件がチェックされます。 もしそうであれば、Graph APIにイベントを作成するために呼び出しを行うService/API thinkletが実行されます。イベントAPIエンドポイントの詳細は[Microsoft ドキュメント](https://learn.microsoft.com/ja-jp/graph/api/user-post-events?view=graph-rest-1.0\&tabs=http)で確認できます。

<figure><img src="https://3549141153-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeLm8O7QKZDn6z806e7Sv%2Fuploads%2Fgit-blob-2f96b03e174ef769795a1bc820e7e8505329ec80%2Fimage%20(631).png?alt=media" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="info" %}
イベントはMicrosoft Teamsをプロバイダーとするオンライン会議として作成されます。
{% endhint %}

ここに、ワークフローパラメータによって定義されたプロパティを持つ結果的なイベントの例があります。

<figure><img src="https://3549141153-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeLm8O7QKZDn6z806e7Sv%2Fuploads%2Fgit-blob-9e2fb960cba1da29f9e071089a70b66ea6286d5e%2Fimage%20(632).png?alt=media" alt="" width="375"><figcaption></figcaption></figure>

***

関連トピック

* [ワークフロー: Outlookでオンライン会議をスケジュール](https://docs.nexthink.com/platform/ja/library-packs/l1-support/workflow-schedule-online-meeting-outlook)
* [設定ガイド: Outlookでオンライン会議をスケジュール](https://docs.nexthink.com/platform/ja/library-packs/l1-support/workflow-schedule-online-meeting-outlook/configuration-guide-proactive-password-reset)
* [ワークフローの管理](https://docs.nexthink.com/platform/ja/user-guide/workflows/managing-workflows)
