Update install process and add configuration file management
- Added mkdir command to create /etc/remindme_caldav directory. - Copied config.toml to the new directory. - Updated Makefile install instructions to include these changes. - Updated comment in config.toml to provide a link to the readme for an example configuration. - Removed placeholder values from all sections of the config file. - Added check to ensure there are .ics files in the destination location before parsing them. - If no files are found, log a message and exit with an error code.
This commit is contained in:
parent
4deeda0964
commit
22e15fc49d
2
Makefile
2
Makefile
|
@ -4,6 +4,8 @@ install:
|
||||||
cp remindme_caldav.py alert_processor.py /opt/remindme_caldav/
|
cp remindme_caldav.py alert_processor.py /opt/remindme_caldav/
|
||||||
. /opt/remindme_caldav/.venv/bin/activate && pip3 install -r requirements.txt
|
. /opt/remindme_caldav/.venv/bin/activate && pip3 install -r requirements.txt
|
||||||
sudo cp remindme_caldav.service /etc/systemd/system/
|
sudo cp remindme_caldav.service /etc/systemd/system/
|
||||||
|
sudo mkdir /etc/remindme_caldav
|
||||||
|
sudo cp config.toml /etc/remindme_caldav/config.toml
|
||||||
sudo systemctl daemon-reload
|
sudo systemctl daemon-reload
|
||||||
sudo systemctl enable remindme_caldav.service
|
sudo systemctl enable remindme_caldav.service
|
||||||
sudo systemctl start remindme_caldav.service
|
sudo systemctl start remindme_caldav.service
|
||||||
|
|
20
config.toml
20
config.toml
|
@ -1,16 +1,16 @@
|
||||||
# Modify to your requirements
|
# Modify to your requirements. See readme for example.
|
||||||
[app]
|
[app]
|
||||||
calendar_dir = "FULL_PATH_TO_.ICS_CALENDAR_FILES"
|
calendar_dir =
|
||||||
[email]
|
[email]
|
||||||
smtp_server = "SMTP.PROVIDER.DOMAIN"
|
smtp_server =
|
||||||
port = 587
|
port =
|
||||||
username = "YOUR_USERNAME"
|
username =
|
||||||
password = "YOUR_PASSWORD"
|
password =
|
||||||
recipient = "RECIPIENT_EMAIL_ADDRESS"
|
recipient =
|
||||||
|
|
||||||
[xmpp]
|
[xmpp]
|
||||||
jid = 'YOUR_USERNAME@SERVER_INSTANCE.DOMAIN'
|
jid =
|
||||||
password = 'YOUR_PASSWORD'
|
password =
|
||||||
recipient = 'RECIPIENT_USERNAME@SERVER_INSTANCE.DOMAIN'
|
recipient =
|
||||||
|
|
||||||
[notify-send]
|
[notify-send]
|
||||||
|
|
|
@ -33,7 +33,8 @@ def read_file(filename):
|
||||||
|
|
||||||
def parse_toml(content):
|
def parse_toml(content):
|
||||||
try:
|
try:
|
||||||
return toml.loads(content)
|
config = toml.loads(content)
|
||||||
|
return config
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error("Error: Failed to parse TOML file.")
|
logger.error("Error: Failed to parse TOML file.")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
@ -371,6 +372,10 @@ def main():
|
||||||
#Parse calendar events
|
#Parse calendar events
|
||||||
calendar_parser = CalendarParser()
|
calendar_parser = CalendarParser()
|
||||||
files = list(cal_dir.glob('*.ics'))
|
files = list(cal_dir.glob('*.ics'))
|
||||||
|
if len(files) == 0:
|
||||||
|
logger.info("No calendar files in destination location. Did you sync with the caldav server?")
|
||||||
|
sys.exit(1) # Exit with error code
|
||||||
|
|
||||||
event_list = [] # List to hold dictionaries for each event
|
event_list = [] # List to hold dictionaries for each event
|
||||||
for file in files:
|
for file in files:
|
||||||
with open(file, 'r') as f:
|
with open(file, 'r') as f:
|
||||||
|
|
Loading…
Reference in New Issue