Plugin GgCal Guide

From VoxCommando
Jump to: navigation, search

Valid as of GgCal plugin version 2.0.0.3 (VC Version 2)

An important note about events

When dealing with the GgCal plugin it is important to pay attention to which type of event you are dealing with. There are calendar events which appear in your Google Calendar, and then there are VoxCommando events which can be set to occur at a specific time, appear in your history window, and can be used to trigger commands.

GgCal V3.png

Plugin Settings

  • When you first enable the GgCal plugin, you'll be prompted to permit VC to access your Google Calendar. This permission is required, or VC won't be able to to connect to retrieve and send data from your Google Calendar feeds.
  • FeedRefresh.png Click the "refresh" icon to find all of your existing Google Calendar feeds.
  • Select the default feed that you want VoxCommando to use (unless otherwise specified within individual commands).

Review and customize the plugin settings (see below).

Be sure to click "Save Options" before closing the plugin settings window.


Note: Once you've granted VoxCommando permission to manage your Google Calendar account, all instances of VoxCommando that you install will be authorized. If you no longer want VoxCommando to have access to your account, go to: https://security.google.com/settings/security/permissions while logged in to your Google account and revoke VoxCommando's access.

Custom formatting

Whenever you query your Google Calendar data from VoxCommando, individual calendar items will be returned as matches (e.g. {Match.1}, {Match.2}, etc.).

In the "Custom Formatting" tab, you can customize the format of those matches.

In the first field, you can customize the format of all-day calendar events.

In the second field, you can customize the format of Google Calendar events that take place at a specific time.

Simply select the variables you want to include from the list provided and then drag those variables to the appropriate field.

To test the formats you've just created, click the "Get Events" button.

Adding/reminders

GgCal remindersTab.png

In VoxCommando, you can create voice commands that will automatically add new entries to any of your Google Calendar feeds. Relevant actions are:

Google Calendar reminder settings

  • Choose whether or not to automatically generate Google Calendar reminders whenever you add new entries from VoxCommando, and choose the type of reminder to generate. (Note: These are the standard reminders that Google Calendar offers, just as when you do so directly from within Google Calendar.)
  • Choose how far ahead of the actual event the reminder should occur.

Test the Quick Add feature

You can test the "quick add" function to make sure that it properly adds new entries to your default Google Calendar.

Type a test entry into the field provided and click the "Quick Add" button. Then open your Google Calendar to see if the entry was added. (If you already have GC open in your browser window you may need to refresh to see the new entry.)

This works much as it works on your Android device. Google Calendar tries to interpret "natural language" to create a new event.

Example.

Dinner with Joe tomorrow at 18:30 in Montreal.
Visit Grandma on Friday.


The action GgCal.QuickAdd functions the same way, but allows you to specify the calendar feed if you wish.

Set event timers

GgCal eventTimersTab.png

You can ask VoxCommando to scan specific calendar feeds for upcoming events, and automatically create timers.

  • A timer will be created for each calendar event and when the timer goes off a VoxCommando event will be triggered.
  • When it is triggered the event will show up in your VoxCommando history window.
  • The event can be used to trigger a command.
  • The event will carry a number of payloads that you can use in your commands.

Setting options for event timers

The numbers below correspond to the number in the image to the right:

  1. Select one or more calendar feeds to scan using the "Default Feeds" list at the right. Click "Save Options".
  2. If you want your events to be triggered ahead of time, set a value greater than 0 minutes here.
  3. All-day events are considered to take place at 0:00 by Google (midnight). Here you can set a default time such as 9:00, and your all-day events will have their timers set to go off at this time. This setting uses a 24-hour clock, so for 5:00 pm you should enter 17:00.
  4. VoxCommando can be set to periodically re-scan your feeds in order to detect changes to your calendar. Here you can set how frequently this update will occur. If you prefer, you can also control when the updates occur manually using the GgCal.SetTimers action in your commands.
  5. You should first click "Save" at the top of the form, and then you can click this button to test the feed scanning and timer generation. Your timers will be set and a pop-up window will show you all the timers that are set for each feed and when they will be triggered.

Using the events that are generated

When the timer goes off, you will see an event in your history window that looks like the image to the right:

The VC event name will be of the form:

Ggcaleventsv3.png
ggCal.Event.[feedname]

There will be 9 payloads attached to the event. Some of them may be blank:

  1. Calendar event name, or title
  2. Feed name (the name of the calendar)
  3. Description
  4. Date the calendar event starts - format yyyy-MM-dd
  5. Time the calendar event starts - format HH:mm (or the string "all-day" if this is an all-day event)
  6. HTML link to the calendar event in your Google Calendar
  7. Status of the calendar event - "confirmed" (default), "cancelled", or "tentative"
  8. Location of the calendar event
  9. ID of the calendar event
  10. Date the calendar event ends - format yyyy-MM-dd
  11. Time the calendar event ends - format HH:mm (or the string "all-day" if this is an all-day event)

NOTE: Payloads 10 and 11 were added in VC version 2.2.1.9 (version 2.0.0.6 of the GgCal plugin)

Event timers video tutorial

The following tutorial shows you some ways to use event timers: