This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.

[PUBLISHED] iCalender to Voice App (v0.9.0)

brinkiebrinkie Member
edited January 2017 in Apps

iCalendar to Voice

Click here to donate

The iCalendar to Voice App is the missing link between your online (cloud) calendar and Athom's fantastic Homey product. This app adds flow cards and voice triggers that enable Homey to announce your (iCal) appointments and emit triggers so you can run flows based on appointments in your calendars.

1. Features

The iCalendar to Voice App enables your Homey to:

  1. Trigger flows based on upcoming events in your calendar.
  2. Announce your full schedule for today, tomorrow or a specific day of the week.
  3. Announce your remaining schedule for today.
  4. Announce your next appointment.
  5. Announce your first appointment of tomorrow.

2. Supported Languages

The iCalendar to Voice App currently supports both English and Dutch languages.


Please contact me, if you want to help translate the iCalendar to Voice App to other languages.


3. Native Voice Triggers (v0.1.4+)

The iCalendar to Voice App supports native voice triggers. Trigger keywords are in bold.

Try asking: OK, Homey:

  • What is my schedule/calendar like?
  • What is my schedule/calendar for today/tomorrow/sunday/monday/tuesday/wednesday/thursday/friday/saturday?
  • What is my next appointment?
  • What is my first appointment for tomorrow?

You can alter the input to your liking, as long as you use the bolded keywords in the sentence.

4. Setup

4.1 Install the iCalendar to Voice app

On your Homey's interface go to "Setting > Apps" and find and install the iCalendar to Voice app. After the app is installed, you have access to its settings through the Settings screen and to the App itself from the Apps list on the Flows screen: iCalendar to Voice.

4.2 Configure your calendar(s)

On your Homey's interface go to "Settings". Select the iCalendar to Voice App. Add your calendar(s) by specifying a name and the link (URL) to your hosted calendar (ICS) file. 

4.2.1 Get a Google Calendar URL

You can find the link to your Google Calendar through the following steps:

1. Open Google Calendar and go to Settings: 

2. Go to the Calendars tab and click the calendar you want: 

3. Right click the green ICAL button and get the Private Address of your calendar by copying the address: 


Other ICS calenders should also work. Please let me know if you've tested the App with another online calendar service!


4.3 Create flows

Drag iCalendar to Voice from the Apps list in the sidebar into the "when..." or "...then" column of your flow and select the card you need.

Let Homey announce your next appointment one minute beforehand, when it's between 7 AM and 11 PM 

5. Backlog

  • Fix issue where app falsely reports recurring events.
  • Add support for hourly recurring appointments.
  • Add support for minutely recurring appointments.
  • Add support for secondly recurring appointments.
  • Add support for larger recurrence intervals (now 1 is assumed for each event).
  • Add support for specific number of recurrences.
  • Add support for multiple recurrence cycles per appointment.
  • Add support for exclusions.

6. Release history

v0.9.0 (current)

  • Fixed issue that made all calendar triggers fail due to internal Homey changes.

v0.1.4

  • Added support for native voice triggers.
  • Added action flow card to announce your appointments for a specific day of the week.

v0.1.3

  • Added support for yearly, monthly, weekly and daily recurring appointments.
  • Added location to next appointment trigger flow card.
  • Fixed announcement of multiple events for today's schedule, today's remaining schedule and tomorrow's schedule.

v0.1.2

  • Added trigger flow card for next appointment.

v0.1.0

  • Added action flow card to announce your next appointment.
  • Added action flow card to announce your schedule for today.
  • Added action flow card to announce your remaining schedule for today.
  • Added action flow card to announce your schedule for tomorrow.
  • Added action flow card to announce your first appointment for tomorrow.

Credits

Kudo's for the node.js lib to parse iCal files go to @peterbraden.

«13456

Comments

  • honeyhoney Member
    Doctor appointment » tell some black joke before leaving the house

    How about doing a bit more? Triggering other apps if the calendar item contains certain words:

    Calendar item: blablabla party blablabla 
    Location: at home      
    IF calendar item includes "Party" and location includes "home"» Change a variable to a party mode (by the Better Logic app)» set party lighting mood, certain music, shut blinds etc.

    Do similar things with holiday, official bank holiday, holiday away.
  • woeiwoei Member
    I think a x minutes before next appointment card would be useful. For example to remind you of an appointment or to use it as an input for an alarm clock. It would be even more awesome if it could do it based on the appointment location and travel duration. For example check the route from home to the location (through google maps API?) and add some time to wake up and take a shower based on some configurable value and use the resulting time to set an alarm clock...

    But if we have an x minutes before appointment card, I think that at least allows this to be built in the future :-).
  • We have 5 calenders, 1 separate for each family member and 1 for the whole family. 

    So we'd need a way to differentiate between them :smile: 
  • AppieAppie Member

    Who will have their birthdays in de coming week? Got the birthdays of my Facebook friends in google calendar. This wil give me time to think of some present before it's too late and I only can wish them a happy birthday via WhatsApp or Facebook.


    And wasn't @emile working on Homey calendar functionality?


  • Fire69 said:
    We have 5 calenders, 1 separate for each family member and 1 for the whole family. 

    So we'd need a way to differentiate between them :smile: 
    same situation here, 1 for me, 1 for girlfriend, 1 for kid, 1 for all together, so would be nice to have a feature like:
    what´s on the agenda for ´agenda name´
  • I would like to have Homey shout when i have an appointment with my girlfriend but i don't think my wife likes it :)
  • What's an iCal-file? I don't use a mac/iphone but do have accounts on gmail, my own CommuniGate-server and have helped out with TB-Lightning in the past so I have a lot of links to *.ics-calendars, are these the so-called iCal-files?
  • What's an iCal-file? I don't use a mac/iphone but do have accounts on gmail, my own CommuniGate-server and have helped out with TB-Lightning in the past so I have a lot of links to *.ics-calendars, are these the so-called iCal-files?
    yepp, right. that are ical-files
  • Can you make a alarm as well? 
    So a appointment is "7.00 work" so the agenda knows it is 15 minutes drive to work and I have 30 minutes to wake upside the alarm is set on 6.15
  • Announcement

    The initial version of the iCalendar to Voice App (v0.1.0) has been submitted for approval. It contains the following features:

    • Added flow card to announce your next appointment.
    • Added flow card to announce your schedule for today.
    • Added flow card to announce your remaining schedule for today.
    • Added flow card to announce your schedule for tomorrow.
    • Added flow card to announce your first appointment for tomorrow.
    • Support for multiple calendars.

    Example flow

    I'm very much looking forward to your feedback! Feel free to comment here in this thread.

  • aloftaloft Member
    Will you be supporting pure iCal URLs only or also (authenticated) CalDav servers?  My CalDav server has multiple .ics files per calendar and creates new .ics files all the time (not sure what the logic behind this is). Apple's Calendar combines it perfectly into one agenda.

  • JonJon Member
    I would like to have Homey shout when i have an appointment with my girlfriend but i don't think my wife likes it :)
    Nice mistress/girlfriend you must then have, if a robot needs to remind you of an appointment with her....
    Ask yourself if you'd really want a girlfriend like her. ;)
  • dont tell my wife but i have several so a reminder could be nice.  :)
  • brinkie said:

    Announcement


    • Support for multiple calendars.


    Awesome! :)
  • Fire69 said:
    brinkie said:

    Announcement

    • Support for multiple calendars.
    Awesome! :)

    Don't expect too much! For now all calendar items are combined into one list. So the next appointment would be the single one closest to now from all calendars.

    In a future release I'm thinking about announcing the name of the calendar before the appointment. What do you think?

  • RocodamelsheRocodamelshe Member
    edited March 2016
    brinkie said:

    In a future release I'm thinking about announcing the name of the calendar before the appointment. What do you think?



     :) 

  • brinkie said:
    Fire69 said:
    brinkie said:

    Announcement

    • Support for multiple calendars.
    Awesome! :)

    Don't expect too much! For now all calendar items are combined into one list. So the next appointment would be the single one closest to now from all calendars.

    In a future release I'm thinking about announcing the name of the calendar before the appointment. What do you think?Perfect 

    Perfect! And for now, if it's not clear for who the item is, I can still check my phone :smile:
  • Not sure why but installing this through the app store is not working for me. It tells me something is wrong and to try again (which does not help). Any way to troubleshoot this?
  • Fire69Fire69 Member
    edited March 2016
    Didn't know it was in the store already!

    Same problem here.
    I'm starting to suspect @brinkie is doing something 'wrong' because his Harmony app has the same problem.
    Although that app does get installed despite the error.

    I wonder how Athom validates the apps for the store.  They should notice this, right?

    Anyone else has this problem?

    [edit]
    Installing through cli seems to complete without problems.
  • Phuturist said:
    Not sure why but installing this through the app store is not working for me. It tells me something is wrong and to try again (which does not help). Any way to troubleshoot this?
    Emile is aware of the problem and it was on his list for today. Guess hasn't come to it yet. We'll soon know.
  • MoekMoek Member
    Yep, same here.
    Error while installing through the appstore.
  • Hm, if you want to use the url to the .ics, you need to make your calendar public.
    Not really planning on doing that :smiley: 
  • Fire69 said:
    Hm, if you want to use the url to the .ics, you need to make your calendar public.
    Not really planning on doing that :smiley: 
    With Google Calendar there is also a private URL you can use! See the app details in the store for instructions.
  • Found the problem.  Since I'm using Google Apps for my domain, I had to go in the admin console to change some settings :)

    But I'm updating Homey now, so this test will have to wait a little :smiley: 
  • Seems like Athom built in some error reporting in the app store. It now show the error:
    incorrect header check
    Still no install though :neutral: 
  • brinkiebrinkie Member
    edited March 2016

    Announcement

    Version 0.1.0 of the iCalendar to Voice App is now available in the App Store (and installs successfully :)).

    The previous version was published unsuccessfully, possibly due to the fact I used IE to publish it. Athom is looking into it.

    [edit] Updated the start post with info on this release.

  • Fire69Fire69 Member
    edited March 2016
    Yep, installation is ok now :smiley: 

    I guess you'll have to do the same for your Harmony app  :#
  • Fire69 said:
    Yep, installation is ok now :smiley: 

    I guess you'll have to do the same for your Harmony app  :#

    I will. The promissed update will be submitted tonight.

  • PhuturistPhuturist Member
    edited March 2016
    I love it how Homey reads my dutch appointments when it's set to English voice, it's hilarious ... :lol: 

    Great app again brinkie ... :+1: 
  • Just experienced a trigger conflict :)
    Made a flow with the words 'schedule' and 'today'.
    When I use it, Homey first says 'Today is Tuesday, the 8th of March, 2016'
    After that he goes on with 'You have no more appointments today'

    Not related to your app of course, but this will become a problem in the future I guess :smile: 
Sign In or Register to comment.