Coder Social home page Coder Social logo

bear-meets-alexa's Introduction

Bear meets Amazon Alexa

The purpose of this project is to enable the Olin Library (cardboard) Bear with the mystical powers of Amazon Alexa.

Skills

The first skill we implemented allows the bear to get the latest events from the Amorphous Blob of Events. It uses an AWS Lambda function (in this repository) to handle the request from the Alexa Voice Service. The Lambda function then makes a request to ABE before formulating a response for AVS. The flow of data can be depicted like so:

Olin Library Bear and AVS data flow

Hardware setup

We attempted to set up Alexa on a Raspberry Pi, which is what currently runs the bear's other features. However, we were unsuccessful in doing this (kept running into refresh token errors). Thus, it currently must be run on a normal Alexa-enabled device, such as an Echo.

Current state

As it stands now, the skill will fetch events happening in the next week and read them out to you one at a time. The times may or may not be correct, due to some bugs with the time zones on the frontend used for adding events. The backend (ABE) is also not taking into account timezone offsets when handling queries, so an event starting past 7pm EST will be interpreted by the backend as starting on the next day (12am UTC).

Though filtering by labels is implemented in the Lambda function, the AVS skill is not parsing speech for a list of labels, so that code is currently unused and untested.

Usage

Deployment

In order to get this skill running on your own, you'll need to

  1. deploy the Python files in this repository to AWS Lambda
  2. create an Alexa Skill to handle the queries listed below (intent names should match). The

Create an intent named WhatsHappeningNext with no data slots to handle the following utterances:

what's happening next
what's happening next at Olin
what's happening next on the Olin calendar

To get events on a specific date, create an intent called WhatsHappeningOn with a data slot called date. The utterance could look something like the following:

what's happening on {date}

Invocation

When using the skill, speak the invocation word (we used Bear) followed by the utterance. For example

Alexa, ask Bear what's happening tomorrow

AVS will convert colloquial dates (e.g. "tomorrow", "next Wednesday") into date strings before being sent to the Lambda function.

bear-meets-alexa's People

Contributors

kylecombes avatar wiltang avatar wilttang avatar

Watchers

Oliver Steele avatar James Cloos avatar  avatar jeff goldenson avatar Eric Miller avatar Aidan McLaughlin avatar Tobias Shapinsky avatar Cedar Leilani avatar Evan Lloyd New-Schmidt avatar  avatar  avatar Maddie Brucker avatar Seungin Lyu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.