/alexa-rubykit

Amazon Echo Alexa's App Kit Ruby Implementation

Primary LanguageRubyMIT LicenseMIT

AlexaRubykit

Gem VersionBuild StatusBuild StatusInline docs

This gem implements a quick back-end service for deploying applications for Amazon's Echo (Alexa).

Installation

Sample Application

For a sample application video tutorial, check

Running a sample Rubykit Demo

Samples are provided by the alexa_rubyengine project: https://github.com/damianFC/alexa_rubyengine

For Ruby Projects:

Add this line to your application's Gemfile:

gem 'alexa_rubykit'

And then execute:

$ bundle

Or install it yourself as:

$ gem install alexa_rubykit

Usage

This Gem provides methods to create and handle request and response objects to be used in your container of choice.

Sample usage:

require 'alexa_rubykit'
response = AlexaRubykit::Response.new
response.add_speech('Ruby is running ready!')
response.build_response

Will generate a valid outputspeech response in JSON format:

{
    "version": "1.0",
    "response": {
        "outputSpeech": {
            "type": "PlainText",
            "text": "Ruby is running ready!"
        },
        "shouldEndSession": true
    }
}

Troubleshooting

There are two sources of troubleshooting information: the Amazon Echo app/website and the EBS logs that you can get from the management console.

  • "Error in SSL handshake" : Make sure your used the FQDN when you generated the SSL and it's also the active SSL in EBS.
  • "Error communicating with the application" : Query the EBS logs from the management console and create an issue on GitHub.

Testing

Run the tests using

bundle exec rake

Contributing

  1. Decide to work on the "dev" (unstable) branch or "master" (stable)
  2. Fork it ( https://github.com/[my-github-username]/alexa_rubykit/fork )
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request

All development is done in the "dev" branch before being merged to master. Applications can use the developer environment by adding the following line to their Gemfile:

gem 'alexa_rubykit', :git => 'https://github.com/damianFC/alexa-rubykit.git', :branch => 'dev'

To use the stable/master branch, rename 'dev' to 'master' or remove :branch all together.

Team Members