コンテンツにスキップ

スケジュールされたタスク

TomoriBotは、リマインダーや後で実行するタスク(1回限り、または定期的)をスケジュールできます。一番簡単な方法は、チャットで彼女に頼むことです。彼女は create_task ツールを通じてタスクを作成します。 スケジュールされたタスクはペルソナ固有のものです。

各ペルソナは、最近の会話にどのメンバーが現れているかに関係なく、応答するたびに保留中の自身のセルフタスクをコンテキストに保持します。人間を対象としたリマインダーはより選択的です。対象ユーザーがアクティブな会話コンテキストに存在するか参照されている必要があり、リマインダーがアクティブなペルソナに属している必要があります。

チャットで次のように伝えるだけです:

14時30分にレポートを提出するようにリマインドして
毎週金曜日の午後8時に、ゲームナイトが始まるリマインダーを投稿して

彼女は時間と繰り返しを解析し、スケジュールを設定します。リマインダーは発動時に対象ユーザーにメンションを飛ばします。タスクは、ペルソナが予定された時間に実行するサイレントなセルフアクションです。

絶対時間(「14時30分に」、「金曜日の午後8時に」)は、デフォルトでサーバーのタイムゾーン/config > 動作 > 一般的な動作)として解釈されます。/personal config で個人のタイムゾーンを設定している場合、AIはコンテキスト内であなたのローカルの時計を参照し、タスクの作成時にあなたのUTCオフセットで時間をラベル付けします。その後ボットは決定論的に変換を行うため、「午前9時にリマインドして」と言えば、サーバーが別の大陸にあっても、あなたの午前9時を意味します。相対時間(「2時間後に」)はタイムゾーンに依存せず、常に安全です。

リマインダーの対象ユーザーの個人のタイムゾーンがサーバーのタイムゾーンと異なる場合、確認の埋め込みメッセージには両方の時計(サーバー時間と対象者のローカル時間)が表示されるため、誤った時間が指定されてもすぐに分かり、追加のメッセージや /scheduled-task edit で修正できます。

2つのスラッシュコマンドを使用して、既存のスケジュールを確認および調整できます:

  • /scheduled-task edit:タスクの内容、次回のトリガー時間、繰り返し間隔、またはリマインダーかどうかを変更します。間隔を 0 に設定すると、繰り返しが無効になります。
  • /scheduled-task remove:リマインダーまたはタスクを削除します。

どちらも、既存のスケジュール(ペルソナ、時間、チャンネル、繰り返し)を一覧表示するピッカーを開くため、IDを覚える必要はありません。

リマインダーはアプリ内のスケジューラーによって配信され、配信が成功した後にのみ完了とマークされます。配信が中止されたり、チャンネルのキューがクリアされたりした場合は、自動的に再試行されます。再試行による遅延は、元の定期的なリズムを変更しません。

自動化された試行では、毎回エラーメッセージが投稿されるわけではありません。再試行の制限後も配信が失敗した場合、TomoriBotは変更されていないスケジュール内容とそのIDを含む警告を1回投稿します。人間へのリマインダーが失敗した場合は、リマインダーを見逃さないように対象ユーザーにメンションを飛ばします。セルフタスクが失敗した場合、誰にもメンションは飛びません。その後、1回限りのスケジュールは削除されますが、定期的なスケジュールは次回の本来の発生時のためにアクティブなまま残り、/scheduled-task edit または /scheduled-task remove で管理できます。ランタイムの詳細については、アーキテクチャの概要を参照してください。


スケジューリングは複数のエージェント機能の1つです。全体像については、ツールと拡張機能を参照してください。