2017-05-01 6 views
0

私は、さまざまなカレンダーの間でカレンダーイベントを比較したりマージしたりできるツール(Windows PC上で実行中)を開発する予定です。私のモバイルデバイスと私のライトニングカレンダーはサポートされるべきです。Thunderbird:カレンダーにアクセスするには?

私のモバイルデバイス用のアプリケーションをTCPまたはUDP経由でツールに接続して、ツールがアプリケーションにコマンドを送信してモバイルデバイスのカレンダーを変更できるようにすることです。

残念ながら私のツールでThunderbird Lightningの予定表にアクセスする方法がわかりません。

質問1:(可能性1)

は、それが安全な方法で(例えば、直接SQLiteのアーカイブにアクセスすることにより)別のアプリケーションから読み取り/書き込みサンダーバード(ライトニング)カレンダーにアクセスすることは可能ですか?

「安全な方法で」とは、次のライトニングリリースでカレンダー形式が変更され、書き込みイベントがそれを破壊する危険性がないことを意味します。

質問2:(可能性2)

別サンダーバードプラグインから雷カレンダーデータにアクセスする可能性がありますか?

(私は2時間グーグルでこれについて検索し、何も見つかりませんでした!)

は、それが(バックグラウンドでいくつかの操作を実行している)Thunderbirdのプラグインから「永久」TCP接続を作成することは可能ですか?

答えて

0

オプション1についてはお勧めしますが、必要がある場合は、バージョンテーブルを確認してストレージバージョンが変更されているかどうかを確認できます。これはあまり頻繁に起こらない。 mycalのカレンダーはあなたがについてhereを読むことができcalICalendarインタフェースを、続く

Components.utils.import("resource://calendar/modules/calUtils.jsm"); 

let calmgr = cal.getCalendarManager(); 
let calendars = calmgr.getCalendars({}); 
let mycal = calendars[0]; // pick one 

次のようにカレンダーデータにアクセスするためとして、あなたはカレンダーのマネージャーやイベントに到達することができます。最も重要な方法は、addItem,modifyItem,deleteItem,getItemおよびgetItemsである。

Thunderbirdから常設接続を作成する場合は、Webソケットを使用することをお勧めします。これは、任意のDOMウィンドウから使用できるはずです。たとえば、自分自身を作成することができます。 iframeである。

関連する問題