スケジュールされたアイテムの ical ファイルを出力する方法を説明するこの回答をここで読みました。
PHP を使用して ical ファイルを動的に公開し、Google カレンダーで読み取るにはどうすればよいですか?
私の質問は、定期的なイベントの ical 形式は何ですか? 毎週月曜日の午前 10 時にチーム ミーティングをスケジュールするとします。繰り返しスケジュールの ical 形式は何ですか? または、X個のイベントを将来に出力する必要がありますか?
スケジュールされたアイテムの ical ファイルを出力する方法を説明するこの回答をここで読みました。
PHP を使用して ical ファイルを動的に公開し、Google カレンダーで読み取るにはどうすればよいですか?
私の質問は、定期的なイベントの ical 形式は何ですか? 毎週月曜日の午前 10 時にチーム ミーティングをスケジュールするとします。繰り返しスケジュールの ical 形式は何ですか? または、X個のイベントを将来に出力する必要がありますか?
毎週月曜日の午前10時にチームミーティングをスケジュールしたいとします。繰り返しスケジュールのical形式は何ですか?
DTSTART:20121022T100000
RRULE:FREQ=WEEKLY;BYDAY=MO
月曜日の午前10時の開始日を指定し、RRULE部分はそれが毎週繰り返されることを指定します。
RFC 2445で指定されているように、これをVEVENT内に配置する必要があります。
タイムゾーンが指定されていないため、Googleはこのイベントをアップロードするカレンダーのプライマリタイムゾーンを想定します。
カウントや終了日を指定する必要はありません。Googleカレンダーには、専門にできる定期的なイベントのインスタンス数にいくつかの内部制限がありますが、チームが何世紀にもわたって定期的に会合しない限り、それに遭遇することはありません。
ical 形式は RFC5545 で定義されています: https://www.rfc-editor.org/rfc/rfc5545
あなたの場合、イベントを 1 つだけ定義し、FREQ プロパティ (FREQ=WEEKLY) と COUNT プロパティ (COUNT=X) を使用する必要があります。
RRULE:FREQ=WEEKLY;BYDAY=MO;COUNT=X
詳細については、 https://www.rfc-editor.org/rfc/rfc5545#section-3.3.10を参照してください。
RFC5545RRULE
で説明されているように、およびFREQ
プロパティを使用してこれを実現できます。あなたの場合、次のようになります。
DTSTART:20121029T100000Z
RRULE:FREQ=WEEKLY;BYDAY=MO;UNTIL=20131028T110000Z
発生回数を制限する他の方法 (定期的なイベントの数など) を設定したり、永久に繰り返すようにすることもできます。ただし、私に言わせれば、無限に繰り返すのではなく妥当な制限を設ける方が、ユーザーにとってより礼儀正しいと言えます。