Calendar
The Calendar widget shows your calendar data from your Google Account. This widget is a premium widget and you will need to setup an developer account in order to use the widget.
Screenshot

Functionality
The calendar widget can do the following:
- Show calendar items from your Google Calendar.
- Show time to next appointment.
- Show next appointment in the text widget.
- Set the interval in between new data will be fetched.
- Show today's appointments or all appointments
- Limit the amount of appointments
- Show or hide the start time
- Conditional show only if there are items for the current.
- Minimal design for wake up screen
- Different widget designs
How to use
You can add the Calendar widget to the Smart Mirror with the Senses - App. After placing the widget to the grid the configuration settings will automatically open.
Google Instructions
In order to access your personal calendar please follow the following instructions.
We advise you to setup the Google Account on a normal Desktop/Laptop browser and not on your mobile.
Navigate to: Google CLoud Consoleopen in new window
Login with your Google Account and provide any details mentioned in pop ups (for example: provide your country and access the Terms Of Service). It could be that you don't need to do this step anymore.
On the "Dashboard" screen select "Create project". This will open a new page to create a new project.
Provide the project name (examples: smart-mirror, or senses-smart-mirror).
Click Create Project in order to create the new project.
Your project is now created and you will see the project's dashboard.In the "search products and resources" bar search for Calendar API and select "Google Calendar API"
A new screen has opened where you press "Enable". This will enable the Calendar API in your project.
On the "Manage Google Calendar API" you now click on the "Credentials" page.
On this page click on the Configure Consent Screen option.
On the OAuth Consent Screen choose "External" and press the button Create.
Fill in the following fields: App name, User Support Email and Developer Contact Information.
Click on "Add Domain" and specify: senses-smartmirror.com. (This website will redirect you automatically back to the Smart Mirror App)
Click Continue". Your Consent Screen is now created.
Click "add users" under Test Users and specify your own email address.
Click on "Credentials" and click "Create Credentials" (in the top) and select OAuth Client ID.
Select "Web Application" under Application Type and specify a name.
Click "Add URI" under Authorized Redirect URI's and add: https://senses-smartmirror.com/oauth/google
Click create which will show your Client ID and Client Secret. Copy both of these strings and add them to the options in the Calendar in the Senses App.
You are now done inside the Google Console and you can leave this page.After copying both Client ID and the Client Secret into the app save the Calendar widget and open the settings again by clicking on the Calendar Widget on the grid.
Click "Connect Google" and login with your Google Account.
You now successfully enabled Google with Senses - Smart Mirror. Add an item to your calendar to see it reflected in the widget. Please note that the calendar widget maybe is configured to only show appointments for the current day. You can change this setting in the Calendar settings.
Configuration
The following configuration settings are available for the Calendar Widget.
| Setting | Description |
|---|---|
| Connect Google | This button will allow you to connect your Google Calendar to Senses. Please see the above instructions. |
| Client ID | Paste your Client id from above instructions here. |
| Client Secret | Paste your Client Secret from above instructions here. |
| Access Token | After setting up your Google Account this setting will automatically be populated. |
| Refresh Token | After setting up your Google Account this setting will automatically be populated. |
| Widget Title | The header title of the widget |
| Interval | Specify the interval in between Senses will poll for new events / calendar items (in milliseconds). We recommend to put '600000' which translates to every 10 minutes |
| Icons | Show or hide icons per calendar item |
| Show Today's appointments only | Display only today's calendar items or disable all. Enabling this option will only show today's appointments. |
| Start Time | Show or hide the start time for the calendar items. |
| From now | Show or hide the "from now" for the calendar items. |
| Amount | Amount of calendar items to be displayed. |
| Conditional show | Enabling this setting will show the calendar widget only if there are appointments to show. |
All other configuration settings are explained here.
