Class ICalAvailable

java.lang.Object
org.plumelib.icalavailable.ICalAvailable

public final class ICalAvailable extends Object
Given one or more calendars in iCalendar format, produces a textual summary of available times. This is useful for sending someone a list of acceptable times for a meeting. Also see the ical-available Emacs function, which inserts the output of this program.

The command-line options are as follows:

  • --date=string. First date to summarize. [default: today]
  • --days=int. Number of calendar days to summarize. [default: 8]
  • --iCal-URL=url [+]. For a Google calendar: go to settings, then click on the green "ICAL" icon for the "private address".
  • --business-hours=string. A list of time ranges, expressed as a String. Example: 9am-5pm,7:30pm-9:30pm [default: 9am-5pm]
  • --timezone1=timezone. Time zone as an Olson timezone ID, e.g.: America/New_York. Available times are printed in this time zone. It defaults to the system time zone.
  • --timezone2=timezone. Time zone as an Olson timezone ID, e.g.: America/New_York. If set, then free times are printed in two time zones.
  • --debug=boolean. If true, enable debugging output. [default: false]
[+] means option can be specified multiple times If you are perplexed because of odd results, maybe it is because of the transparency of your iCal items (this shows up as "available/busy" in Google calendar).
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static String
    A list of time ranges, expressed as a String.
    static String
    First date to summarize.
    static int
    Number of calendar days to summarize.
    static boolean
    If true, enable debugging output.
    static List<String>
    For a Google calendar: go to settings, then click on the green "ICAL" icon for the "private address".
    static net.fortuna.ical4j.model.DateTime
    First date to summarize, parsed.
    static String
    Time zone as an Olson timezone ID, e.g.: America/New_York.
    static @Nullable String
    Time zone as an Olson timezone ID, e.g.: America/New_York.
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    main(String[] args)
    Main entry point; see class documentation.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • date

      public static String date
      First date to summarize.
    • start_date

      public static net.fortuna.ical4j.model.DateTime start_date
      First date to summarize, parsed.
    • days

      public static int days
      Number of calendar days to summarize.
    • iCal_URL

      public static List<String> iCal_URL
      For a Google calendar: go to settings, then click on the green "ICAL" icon for the "private address".
    • business_hours

      public static String business_hours
      A list of time ranges, expressed as a String. Example: 9am-5pm,7:30pm-9:30pm
    • timezone1

      public static String timezone1
      Time zone as an Olson timezone ID, e.g.: America/New_York. Available times are printed in this time zone. It defaults to the system time zone.
    • timezone2

      public static @Nullable String timezone2
      Time zone as an Olson timezone ID, e.g.: America/New_York. If set, then free times are printed in two time zones.
    • debug

      public static boolean debug
      If true, enable debugging output.
  • Method Details

    • main

      public static void main(String[] args)
      Main entry point; see class documentation.
      Parameters:
      args - command-line arguments; see class documentation