• 繰り返すカレンダーの同期対象

    By Muneyuki Ohkawa 1 decade ago

    繰り返すタイプのカレンダーの同期をどうするか検討中です。以下にアップした設計書の基本設計のところに検討結果を書いておきました。ご意見いただけますでしょうか。



    http://www.openntf.org/Projects/pmt.nsf/852fcfa76eb36baa85256bae00100855/5e3701518d13e166862575af00462009!OpenDocument

    • おそくなりました。

      By Junya Terada 1 decade ago

      繰り返しカレンダーの同期と、削除の同期はきもになってきそうですね。



      大枠良いかなと思います。

      日付の間隔だけでなく、下手すると時間単位で間隔を計算しないといけなくなりそうです・・・

      同じ日でも時間をずらした場合、Googleでは表現できなくなるので・・・



      Notesのカレンダーの繰り返しは自由が利き過ぎて扱いが難しいですね。



      NotesのカレンダーのリストをばらばらにしてGoogleに登録になりそうな予感も・・・・



      最終的には決めの問題なので、今のところは大川さんの提案していただいてる内容で良いかなと思います。

      • 寺田さん、ありがとうございます。

        By Muneyuki Ohkawa 1 decade ago

        お願いなのですが、Google側で繰り返しのタイプ(毎日、毎週、etc)や繰り返し間隔の情報をどうやって取得するのか、検証していただけないでしょうか。



        ちなみに、現在、私のほうでSyncServiceをさらに作りこんで、双方向で追加、更新、削除が出来るところまできました。ファーストバージョンでは片方向の同期のつもりでいましたが、寺田さんにGoogle側を作っていただいたので、最初から双方向で出そうと思っています。あとは、この繰り返しカレンダーへの対応が最後の壁として残っています。リリースまであともう少しです。ぜひよろしくお願いします!

        • 繰り返し情報の取得方法

          By Junya Terada 1 decade ago

          Recurrence recurence = workEntry.getRecurrence();

          で取得できることは分かりました。



          ただ、取得できた情報を分解しないとプログラムではつかなさそうです。



          今、分解するLogicを作成していますが、必要となる情報は、繰り返しの開始・終了日(時間)と繰り返しの間隔で良いですよね?



          –取得できる形式–

          DTSTART;TZID=Asia/Tokyo:20090528T113000

          DTEND;TZID=Asia/Tokyo:20090528T123000

          RRULE:FREQ=DAILY;WKST=MO;UNTIL=20090630T023000Z

          BEGIN:VTIMEZONE

          TZID:Asia/Tokyo

          X-LIC-LOCATION:Asia/Tokyo

          BEGIN:STANDARD

          TZOFFSETFROM:+0900

          TZOFFSETTO:+0900

          TZNAME:JST

          DTSTART:19700101T000000

          END:STANDARD

          END:VTIMEZONE

          • 取得したい繰り返し情報

            By Muneyuki Ohkawa 1 decade ago

            寺田さん、早速作っていただいているようでありがとうございます。



            GooCalSyncで同期対象なのかどうかを判断するために、以下の情報を取得したいです。

             - 開始日時、終了日時

             - 繰り返しタイプ(日、週、月、年)

             - 繰り返し間隔

             - 繰り返し曜日(繰り返しタイプが週のもの)

             - 繰り返しの基準(繰り返しタイプが月のもの。日付 or 曜日)



            また、Notes側では繰り返しタイプや繰り返し期間は持っていなく、持っているのは、日時の集合だけです。ゆえに、GoogleからNotesへの連携を考えた場合、日時の集合をListなどで取得したいです。それが出来れば、NotesCalendarDAOには、カレンダー文書に日時の配列を追加する処理を作ろうと思います。



            また、NotesからGoogleの連携を考えた場合、以下のセット方法を把握する必要があります。

             - 開始日時、終了日時

             - 繰り返しタイプ(日、週、月、年)

             - 繰り返し間隔(繰り返しタイプが週のものだけ、2週ごとの繰り返し間隔をサポートしようと思います)





            作るのは結構大変そうな処理になっちゃいそうですが、よろしくお願いします。