Skip to main content

command line tool for tracking ical changes

Project description

Ionical - keeping an eye on icals

Installing via pip:

$ pip install ionical

Command line usage:

ionical [-h] [-s] [-l] [-c CSVFILE] [-g] 
                  [-f FILTERS [FILTERS ...]] [-b DAYSBACK] [-a DAYSAHEAD] [-i IDS [IDS ...]] 
                  [-d DIRECTORY] [-p PEOPLEFILE] 
                  [-n NUM_LOOKBACKS] 
                  [-t CSV_CONVERSION_FILE]
Help:
  -h, --help            Print this help message and exit (ignore other options).

Main Operations (can specify one or more, but at least one MUST be specified):
  -s, --schedule        Display most recent available schedule for each person/entity.
  -l, --changelog       Show changelog(s) of schedules from multiple dates.
  -c CSVFILE, --csvfile CSVFILE
                        [ALPHA STATUS] Export current schedules to csv file CSVFILE.
  -g, --gettoday        Download current .ics files and label them with today's date. This will be done prior to running any other Main
                        Operations. (If not specified, operations will use only those .ics files that have been previously downloaded.)

Filter Options (will be applied to all specified Main Operations):
  -f FILTERS [FILTERS ...], --filters FILTERS [FILTERS ...]
                        Filter EVENTS by text that appears in event summary field. (Default behavior: no text filters.)
  -b DAYSBACK, --daysback DAYSBACK
                        Filter out EVENTS occuring before a certain date. Value needs to be EITHER a date in format YYYY-MM-DD, or a positive
                        integer representing # of days in past. (Default behavior: 0 days before today's date.)
  -a DAYSAHEAD, --daysahead DAYSAHEAD
                        Filter out EVENTS occuring after a certain date. Value needs to be EITHER a date in format YYYY-MM-DD, or a positive
                        integer representing # of days in future. (Default behavior: no filter)
  -i IDS [IDS ...], --ids IDS [IDS ...]
                        Filter PEOPLE/ENTITIES to only include those who are specified in the given list of IDs. (Default behavior: no
                        restrictions; include all IDs)

General File/Directory Configuration Options:
  -p PEOPLEFILE, --peoplefile PEOPLEFILE
                        JSON config file containing list of scheduled people/entities (in format: [[ID1, NAME1, ICS_FEED_URL1, TIME_ZONE1],
                        [ID2, NAME2...], ...]). (Default: ./ionical_monitor_list.json)
  -d DIRECTORY, --directory DIRECTORY
                        Directory where .ics files are stored. (Default: ./)

Changelog Options (only applicable if -l argument also given):
  -n NUM_LOOKBACKS, --num_lookbacks NUM_LOOKBACKS
                        Number of past schedule versions (per person) to compare. [Only used when displaying changelogs with -l flag.] (Default
                        behavior: 2 'lookbacks')

CSV Options (ALPHA/EXPERIMENTAL). Only applicable if -c specified:
  -t CSV_CONVERSION_FILE, --csv_conversion_file CSV_CONVERSION_FILE
                        JSON file w/ dictionary of conversion terms. [Only used when generating CSV via -c flag.] (Default:
                        ./ionical_csv_conversions.json)


     **********************************************************************

        NOTE: .ics filenames will/should have format 123__20200314.ics
             where 123 is an identifier corresponding to a particular
             person/entity and 20200314 is the date file was generated.

     **********************************************************************

Installing from respository:

$ git clone https://github.com/danyul/ionical
$ cd ionical
$ python -m venv env
$ source env/bin/activate
$ pip install -e ".[test]"

If on Windows, replace 'source env/bin/activate' with:

$ .\env\Scripts\activate

0.1.0

Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ionical-0.1.10.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

ionical-0.1.10-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file ionical-0.1.10.tar.gz.

File metadata

  • Download URL: ionical-0.1.10.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.6

File hashes

Hashes for ionical-0.1.10.tar.gz
Algorithm Hash digest
SHA256 5b38ba1ba89f03b7df6bb8b4d83da0f6fa87c86405e60e386bfa16f559890098
MD5 b9f4f35d490e5e2b5f126938e4c096de
BLAKE2b-256 81c3531b1006ded01dcd7ff0f428454b11e9a1fafc2088ed3eeb748f489ab5bb

See more details on using hashes here.

File details

Details for the file ionical-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: ionical-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.6

File hashes

Hashes for ionical-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 0d452825661ed97fd2718f7bbb738ac9aa43f0741b1401e92d4bfef716692821
MD5 280b2f38f4590fc61010652d3a979809
BLAKE2b-256 56ec4be4943d360f2d365d746f9ee5899b2955fbd7278279f32c8ad405930e7c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page