appear as exchangelib.items.MeetingRequest AFAICT; report upstream?
- [X] the is_recurring field is lies - use RecurringMaster type instead
- [X] command-line arguments for accounts
-- [ ] support multiple cache files (e.g. 1 per exchange calendar)
+- [X] support multiple cache files (e.g. 1 per exchange calendar)
- [ ] note which linked account corresponds with which cache file
- [ ] configuration file?
- [ ] bi-directional syncing...
import sys
import getpass
import os
+import os.path
import pickle
import collections
import argparse
gcal_client_secret,
scope)
+gsdir = os.path.expanduser("~/.gooswapper")
+gcal_authpath = gsdir + "/.gooswap_gcal_creds.dat"
-gcal_authpath=".gooswap_gcal_creds.dat"
-
-cachepath=".gooswapcache"
+cachepath=None
exchange_credential = None
else:
gcal_id = args.gcalid
+ #Make our config dir if it doesn't exist
+ if not os.path.exists(gsdir):
+ os.mkdir(gsdir,0o700)
+ #Cache file is specific to the Exchange calendar
+ global cachepath
+ cachepath = gsdir + "/.cache-%s" % \
+ (args.exchemail.replace('@','_').replace('/','_'))
+
#log in to the accounts
ex_account = ex_login(args.exchuser,args.exchemail,
- ".gooswapper_exch_conf.dat")
+ gsdir+"/.gooswapper_exch_conf.dat")
gcal_account = gcal_login(args)
gcal_tz = get_gcal_timezone(gcal_account,gcal_id)