hillbrookcalendar

Get Hillbrook School calendar events from Alexa


Keywords
alexa, aws, aws-lambda
License
MIT
Install
npm install hillbrookcalendar@1.1.1

Documentation

Hillbrook School calendar via Alexa

Alexa tells you what's happening at school from the Hillbrook School calendar (ical feed).

"Alexa, launch Hillbrook bear"

Today is B as in beetle day.

"Alexa, ask Hillbrook bear about tomorrow"

Tomorrow is C as in chinchilla day. Art Show Opening is at 3:30PM.

"Alexa, what's happening Friday with Hillbrook bear"

Friday is E as in earwig day.  It's free dress day.

Alexa can also tell you about grade-specific events, such as library.=

"Alexa, ask Hillbrook bear about second grade"

Tomorrow is C as in cat day.  Art Show Opening is at 3:30PM.  
Pack your swim gear.  Teslas, bring your library books back.

Once you request a grade, it'll be saved until you remove it.

"Alexa, tell Hillbrook bear to drop second grade"

OK, I'll won't tell you about grade events.

VUI diagram

development

architecture

Built with alexa-app and Alexa command-line (alcl). Uses ical for parsing Hillbrook's public calendar and moment for date magic. Hosted on AWS Lambda, with grade-specific events in an JSON document on S3 and user data in DynamoDB.

local

index.js exports an alexa-app:

var app = new alexa.app('hillbrook-calendar');

and defines a mock database:

app.db = require('./db/mock-db');

run alexa-app-server

go to http://localhost:8080/alexa/hillbrook-calendar to send requests

AWS

The AWS Lambda function handler is set to lambda.handler.

lambda.js exports the lambda setup handler:

exports.handler = app.lambda();

and defines a DynamoDB using dynasty:

app.db = require('db/dynasty-db');

push to AWS

alcl push

test launch intent

alcl test

test add intent

alcl test -f aws/add.json

with request data in aws/add.json