bespoke-server

The bst (aka Bespoke Tools aka the BEAST :-)) makes it easy to develop for Alexa/Echo. We plan to support other voice-first products (like Google Home) as they become available.

Usage no npm install needed!

<script type="module">
  import bespokeServer from 'https://cdn.skypack.dev/bespoke-server';
</script>

README

Overview

The bst (aka Bespoke Tools aka the BEAST :-)) makes it easy to develop for Alexa/Echo. We plan to support other voice-first products (like Google Home) as they become available.

The current version provides a single command - proxy.
Proxy makes it super-easy to develop and debug your Alexa skill on your local machine.
Just point the bst at the local service running on your machine, and your code changes will be instantaneously available via Alexa.

Keep an eye out as we add more features and commands in the future. Current plans:
-Deploy: automatically deploy Alexa lambdas to the cloud with a single command
-Test: run phrases through and get the exact input sent to your Skill service

Getting Started

Install NPM (if not already):
http://blog.npmjs.org/post/85484771375/how-to-install-npm

Install bespoke-tools:
npm install bespoke-tools -g

Available Commands

Proxy

Running Proxy Proxy allows you to make changes to code on your machine and immediately test it with an Alexa device.

To use, it simply type in the following command: bst proxy <NODE_ID> <PORT>

For example: bst proxy JPK 9999

The node ID value, "JPK", is the name for your machine. It uniquely identifies it to our server. We use this so we know which calls from Alexa to forward to your machine.

The second parameter, port, represents the port that your local Alexa service is listening on.

Set this to whatever port your local server is running on. All traffic coming from Alexa will be forwarded to it.

Configuring Your Skill Your skill must be setup to point at our server. For example, if the URL for your skill is normally: https://myskill.example.com/skillA

It should instead be configured to point at our server, like so: https://bst.xappmedia.com/skillA?node-id=JPK

Also note that that node ID set with the proxy command must be passed in the query string_ Here is it set as ?node-id=JPK

The rest of the URL path and query string should be unchanged.

You can enter the command for help transforming your URL: bst proxy-url <NODE_ID> <URL>

This value should be entered as the endpoint on the Configuration section for your Alexa skill.

Contact

Email jpk@xappmedia.com with any questions or comments. We love to hear feedback.