カレンダー連携
一度接続すれば、どこからでも管理できます。 Google CalendarまたはMicrosoft Outlook(Teams)を接続すると、Voilàのレッスンは他のミーティングと同じようにカレンダーに表示され、カレンダー側で行った変更は自動的にVoilàに反映されます。レッスンの変更、キャンセル、承認、辞退など、すべての操作が数秒以内に両側で同期されます。
このページはチューターを対象に書かれています。「生徒が見る内容」セクションでは、生徒側がどのように表示されるかを説明していますので、カレンダーから安心してスケジュール全体を管理できます。
対応するプロバイダー
| プロバイダー | ビデオリンク自動添付 | 作成される内容 |
|---|---|---|
| Google Calendar | Google Meet | レッスンごとに1つのイベント、定期シリーズごとにマスターイベント |
| Microsoft Outlook / Teams | Microsoft Teams | レッスンごとに1つのイベント、定期発生ごとに1つのイベント |
一度に1つのカレンダープロバイダーのみ接続できます。 切り替える場合は、設定 → 連携 で現在のものを先に切断してください。
Google Calendarの接続
- 設定 → 連携 または スケジューリング → Google Calendarを接続 に移動します。
- Google Calendarを接続 をクリックします。
- Googleアカウントでサインインし、Voilàにイベントの読み書き権限を付与します。
- カレンダーの同期が直ちに開始されます。
接続した瞬間に起こること: 確認済みの今後のVoilàレッスンがすべてGoogle Calendarにプッシュされます。各イベントにはGoogle Meetリンク、参加者の事前入力、「Voilàで予約」という本文が含まれます。他に何もする必要はありません。
Microsoft Outlook / Teamsの接続
- 設定 → 連携 または スケジューリング → Outlookカレンダーを接続 に移動します。
- Outlookカレンダーを接続 をクリックします。
- Microsoftアカウントでサインインし、Voilàにイベントの読み書き権限を付与します。
- カレンダーの同期が直ちに開始されます。
各レッスンはOutlookカレンダーにTeamsミーティングとして表示され、参加リンクが自動的に添付され、生徒が参加者として登録されます。同じバックフィル動作が適用されます。今後のVoilàレッスンがOutlookカレンダーにすぐに表示されます。
カレンダーに表示される内容(Voilà → カレンダー)
| Voilàイベント | カレンダーに表示される内容 |
|---|---|
| 1対1の予約が確認された | レッスン時間の招待状。Meet/Teamsリンク、生徒が参加者として登録、Voilà作成の本文が含まれます。 |
| グループレッスンが確認された | 同じイベント。承認したすべてのメンバーが参加者リストに表示されます。メンバーが追加で承認すると追加され、脱落すると削除されます。 |
| 定期レッスンが作成された | Google: シリーズ全体をカバーする1つのマスター定期イベント。Outlook: 発生ごとに1つのイベント(Microsoft Graphを通じてインスタンスごとの更新がスムーズに流れます)。 |
| Voilàで変更が承認された | 招待状の開始/終了時刻がその場で更新され、参加者に更新通知が送られます。GoogleとOutlookの両方で機能します。 |
| Voilàでレッスンがキャンセルされた | カレンダーイベントが削除され、参加者にキャンセル通知が送られます。GoogleとOutlookの両方で機能します。 |
| 定期発生がVoilàでスキップされた | その1つの発生だけがキャンセルされます。シリーズの残りは変わりません。 |
Voilàに同期される内容(カレンダー → Voilà)
このセクションでは、「カレンダーの中で生活する」ことができます。以下の内容はVoilàの状態を自動的に変更します。
イベント時間を移動する
Voilàイベントを別のスロットにドラッグするか、開始/終了を編集すると、Voilà内で変更提案 が開かれます。生徒が確認すると(アプリ内またはメール返信で)、イベント時間は両システムでロックされます。それまでは、イベントは保留中の提案として表示され、生徒はVoilà内から確認・承認・辞退できます。
イベントを削除またはキャンセルする
Voilàはレッスンをキャンセル済みにマークし、チューターキャンセル のキャンセルポリシーを実行します。
- 生徒は全額払い戻しを受けます(Stripeの場合)またはセッションクレジットが返却されます(セッションパッケージの場合)。キャンセルがカットオフ前か後かに関わらず、チューター起因のキャンセルは常に生徒に全額返金されます。
- グループレッスンの場合、すべての有料席が払い戻されます。
- 生徒はキャンセルメールとチャットカード更新を受け取ります。
生徒の1人を参加者として新しいイベントを作成する
あなたとアクティブな生徒関係がある場合、Voilàは以下を行います。
- そのレッスンの予約提案 を自動作成します。
- 生徒にメールを送信して、時間を確認できるようにします。
- 提案が保留中の間、スロットをあなたの空き状況に保持します。
参加者があなたの既知の生徒でない場合、Voilàはイベントをカレンダーの通常のビジー時間として記録しますが、予約は作成しません。
カレンダーに他のイベントを追加する
追加するイベント(仕事のミーティング、歯医者の予約、友人とのランチなど)は、ビジー時間 として扱われ、その期間中の新しい生徒予約をブロックします。何もする必要はありません。これは自動です。
生徒が見る内容
レッスンが確認されるたびに、生徒は同じイベントへのカレンダー招待を受け取ります。MeetまたはTeamsの参加リンクが含まれています。そのため、生徒も自分のカレンダーからレッスンを管理できます。生徒がメールボックスまたはカレンダーアプリから実行できることに対して、Voilàがどのように反応するかを以下に示します。
| 生徒のアクション | Voilàの動作 |
|---|---|
| 招待を承認する | 追加の処理なし。生徒はすでにレッスンに参加しています。RSVPは可視性のために記録されます。 |
| カレンダーから保留中の提案を辞退する | Voilàで提案が辞退されます。メールとチャットで通知されます。 |
| カレンダーから確認済みの1対1レッスンを辞退する | Voilàは生徒キャンセル のキャンセルポリシーを実行します。カットオフ前 = 全額払い戻しまたはクレジット返却。カットオフ後 = 没収(あなたが支払いを保持)。 |
| 確認済みのグループレッスンから辞退する | その生徒の席だけが払い戻されます。レッスンは他のすべての人に対して継続します(最小席数ルールの対象)。 |
| 定期発生を辞退する | その1つの発生がスキップされます(キャンセルポリシーに基づいて払い戻しまたは没収)。シリーズの残りは変わりません。 |
| 招待を別のメールボックスに転送する | レッスンに影響なし。Voilàが真実の源であり、招待の転送はレッスンを移動したり払い戻しを再発行したりしません。 |
つまり、生徒はカレンダー招待から完全に参加を管理でき、すべてのアクションがVoilà側に数秒以内に反映されます。
カレンダー経由のグループレッスン
グループレッスンには1つの追加ルール、最小席数 ルールがあります。
- 1人のメンバーが辞退 → その席が払い戻され、参加者がカレンダーイベントから削除され、レッスンは継続します。
- 辞退がキャンセルカットオフ前に最小席数を下回る → レッスン全体がキャンセルされ、すべての有料席が払い戻され、カレンダーイベントが削除されます。
- 辞退がキャンセルカットオフ後に最小席数を下回る → レッスンは継続します(席を保持した人はすでにスロットの支払いをしています)。対応方法を決定できるように、ヘッドアップメールが送られます。
カレンダー経由の定期レッスン
定期レッスンは各プロバイダーで異なる方法で保存されていますが、体験は同じです。
- Google: シリーズは1つのマスター定期イベントです。カレンダーから1つのインスタンスを辞退するとVoilàでその発生だけがスキップされます。マスターを辞退するとすべての今後の発生がキャンセルされます。
- Outlook: 各発生は個別にリンクされているため、Microsoft Graphからのインスタンスごとの更新がスムーズに流れます。1つの発生を辞退するとVoilàでスキップされます。シリーズを辞退すると今後の発生が終了します。
- Voilà内から発生をスキップする と、マッチするカレンダーインスタンスが自動的にキャンセルされ、参加者に明確なキャンセル通知が送られます。
- チューターのキャンセルポリシー変更は、既に存在する発生に遡及適用されません 。各発生は、作成時にアクティブだったポリシーをロックします。
同期の配信方法
Voilàはプッシュ通知(ウェブフック)を主要なトリガーとして使用します。
- Google Calendar — Voilàはgoogleの
events.watchチャネルを通じてカレンダーをサブスクライブします。Google Calendarで保存してから数秒以内に更新が到着します。 - Microsoft Outlook / Teams — Voilàはmicrosoft Graphウェブフックを通じてサブスクライブします。同じ動作です。
小さなセーフティネットのセットがチャネルを健全に保ちます。
- 時間ごとのメンテナンスジョブ はサブスクリプションを有効期限前に更新し、不足しているウォッチをブートストラップします。
- 接続時のバックフィル は既存の今後のVoilàレッスンを新しいカレンダーにプッシュし、既存のカレンダービジー時間をバックインポートします。
- 手動更新 はスケジューリングページから利用可能です。テスト中またはウェブフックが一時的に配信を逃した場合に便利です。
このページの以前のバージョンでは「5分ポーリングサイクル」について言及していました。これはもはや正確ではありません。同期はプッシュベースで、通常30秒以内に到着します。
カレンダー経由のキャンセルポリシーと払い戻し
カレンダー側のキャンセルは、Stripe支払い予約用に設定したキャンセルポリシーと全く同じに従います(Stripe Connect支払い を参照)。
- あなたがキャンセル(カレンダーから削除/キャンセル):タイミングに関わらず生徒は全額払い戻しを受けます。
- 生徒がカットオフ前にカレンダーから辞退:全額払い戻しまたはクレジットが生徒に返却されます。
- 生徒がカットオフ後にカレンダーから辞退:支払いは没収されます(あなたが保持)またはセッションクレジットが消費されます。
- グループレッスン:個別辞退の場合は席ごとの払い戻し。チューターキャンセルまたはカットオフ前の最小席数低下がレッスンをキャンセルする場合は、すべての有料席の全額払い戻し。
プライバシーとスコープ
- Voilàは接続したカレンダーのイベントのみを読み書きします。アカウント上の他のカレンダーには一切アクセスしません。
- Voilàが読むイベントはスケジューリングと空き状況計算にのみ使用されます。
- 設定 → 連携 でいつでもアクセスを取り消すことができます(またはGoogle/Microsoftアカウント設定から直接)。
トラブルシューティング
トークン有効期限切れ
同期が停止した場合、OAuthトークンの有効期限が切れている可能性があります。設定 → 連携 を開き、再接続 をクリックしてください。
同期遅延
ウェブフックは通常約30秒以内に配信されます。時間ごとのメンテナンスジョブはサブスクリプションを更新し、一時的に失敗した配信を再同期するセーフティネットです。スケジューリング ページから手動更新をトリガーすることもできます。
Voilà以外のイベントとの競合
Voilà以外のイベントでカバーされているスロットでVoilà予約を確認しようとすると、Voilàは警告を表示し、競合をオーバーライドできます。カレンダーイベントが解放してもよい「ソフト」ホールドの場合に便利です。
プロバイダーの切り替え
一度に1つのカレンダーのみ接続できます。設定 → 連携 でGoogleを切断してからOutlookを接続してください(またはその逆)。
双方向同期、エンドツーエンド
sequenceDiagram
participant Student
participant StudentCal as "生徒カレンダー"
participant Voila
participant TutorCal as "チューターカレンダー(GoogleまたはOutlook)"
participant Tutor
Note over Voila,TutorCal: Voilàでレッスン確認
Voila->>TutorCal: MeetまたはTeamsリンク付きイベント作成
TutorCal-->>Student: 招待配信
TutorCal-->>StudentCal: 招待配信
Note over Student,StudentCal: 生徒がメールボックスから辞退
StudentCal->>TutorCal: RSVP辞退
TutorCal->>Voila: ウェブフック発火
Voila->>Voila: キャンセルポリシー実行
Voila-->>Tutor: アプリ内およびメール通知
Voila-->>Student: 払い戻しまたは没収確認
Note over Tutor,TutorCal: チューターがイベントをキャンセル
TutorCal->>Voila: ウェブフック発火
Voila->>Voila: キャンセルして払い戻し
Voila->>StudentCal: カレンダーイベント削除
関連
- スケジューリング — 週間空き状況、予約ポリシー、休暇モード
- グループレッスン — 最小席数、メンバー管理、グループキャンセル動作
- Stripe Connect支払い — キャンセルポリシーと払い戻しの適用方法