Your calendar sets the schedule. Your ISY decides what to do.
CalendarRules reads events from Google Calendar and uses rules to update existing IoX type-2 state variables. Write your own ISY programs for lights, HVAC, notifications, or anything else—CalendarRules does not control equipment directly.
Simple rules, existing automation
Match the event
Use keywords and matching options for an event's title or location. Select calendars you want to read.
Choose the timing
Start a variable early or end it later with independent minute offsets. Overlapping events are evaluated together.
Keep control in IoX
Map each rule to an existing state variable. Your ISY programs determine the physical actions.
Getting started
CalendarRules v0.4.10 is in Beta. It has been tested on multiple eisy installations, but additional OAuth, update/restore, and complete event-lifecycle testing remains. Please test with an isolated state variable first.
1. Install
Find CalendarRules in the Universal Devices eisy-ui Plugin Store and activate an available Beta edition.
2. Authorize and configure
Use Google Authenticate, add calendar IDs, and create rules mapped to existing IoX type-2 state variables.
3. Build your ISY programs
Verify the schedule and variable readback before connecting any real-world automation.
Google Calendar data and privacy
CalendarRules requests Google Calendar read-only access to obtain scheduled events. The plugin uses selected event titles, locations, and times to evaluate rules. It stores a local schedule cache to support evaluation through temporary network interruptions; OAuth credentials are managed through the eisy-ui platform's protected integration.
Read the full CalendarRules privacy policy for details on access, storage, sharing, retention, and revocation.
Independent, open source
CalendarRules is an independently developed community project for Universal Devices eisy/IoX, not an official Google or Universal Devices product. The source is licensed under MIT. For support or to report a problem, visit the GitHub issue tracker; do not post tokens, passwords, or private event details.