Sync ics file with Google calendar
Project description
sync_ics2gcal
Python scripts for sync .ics file with Google calendar
Installation
To install from PyPI with pip, run:
pip install sync-ics2gcal
Or download source code and install using poetry:
# install poetry
pip install poetry
# install project and deps to virtualenv
poetry install
# run
poetry run sync-ics2gcal
Configuration
Create application in Google API Console
- Create a new project: console.developers.google.com/project
- Choose the new project from the top right project dropdown (only if another project is selected)
- In the project Dashboard, choose "Library"
- Find and Enable "Google Calendar API"
- In the project Dashboard, choose "Credentials"
- In the "Service Accounts" group, click to "Manage service accounts"
- Click "Create service account"
- Choose service account name and ID
- Go back to "Service Accounts" group in "Credentials"
- Edit service account and click "Create key", choose JSON and download key file.
Create working directory
For example: /home/user/myfolder
.
- Save service account key in file
service-account.json
. - Download sample config and save to file
config.yml
. For example:
wget https://raw.githubusercontent.com/b4tman/sync_ics2gcal/develop/sample-config.yml -O config.yml
- (Optional) Place source
.ics
file,my-calendar.ics
for example.
Configuration parameters
start_from
- start date:- full format datetime,
2018-04-03T13:23:25.000001Z
for example - or just
now
- full format datetime,
- (Optional)
service_account
- service account filename, remove it from config to use default credentials - (Optional)
logging
- config to setup logging google_id
- target google calendar id,my-calendar@group.calendar.google.com
for examplesource
- source.ics
filename,my-calendar.ics
for example
Usage
Manage calendars
manage-ics2gcal GROUP | COMMAND
GROUPS:
- property - get/set properties (see CalendarList resource), subcommands:
- get - get calendar property
- set - set calendar property
COMMANDS:
- list - list calendars
- create - create calendar
- add_owner - add owner to calendar
- remove - remove calendar
- rename - rename calendar
Use -h for more info.
Sync calendar
just type:
sync-ics2gcal
How it works
Documentation is available at sync-ics2gcal.readthedocs.io.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sync_ics2gcal-0.1.5.tar.gz
(11.9 kB
view details)
Built Distribution
File details
Details for the file sync_ics2gcal-0.1.5.tar.gz
.
File metadata
- Download URL: sync_ics2gcal-0.1.5.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 019a5919fce6db0242b54c5f30507dec214d4d05245617bd6e93359dfd5fe1b7 |
|
MD5 | 21b58196ee85b40ad29d554b1b4e2a60 |
|
BLAKE2b-256 | b67115bc3ab8c62ac6d2caf6bd521f6cf965fba7898aef8d1d251db37e558e59 |
File details
Details for the file sync_ics2gcal-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: sync_ics2gcal-0.1.5-py3-none-any.whl
- Upload date:
- Size: 13.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 382bbf03bccf8ce6e6145ffe81516280125ea18a6979ed273971f13eacee8d65 |
|
MD5 | 09f63f362c03fa3547871531e3990c70 |
|
BLAKE2b-256 | 1f3604a278137a9b4262ef065bad7734cdcfa2cb8629010af2534c88e9368271 |