Skip to content
Jo Jaquinta edited this page Jun 16, 2015 · 2 revisions

Echo Simulator

This project is an attempt to create a simulator for Amazon's Echo device. It's aim is to produce something that can be used to test (manually, or automated) Echo applications. It is not a replacement for an Echo device. It does not do quality matching of spoken text to application intents. But it does allow the functionality of an application to be specifically tested.

App Tab

This tab is used to input basic information on the device.

Endpoint. This is the URL to your Echo application. It can be your production deployed application, or it can be on a test server. Unlike the real Echo, EchoSim does not require the endpoint to be https. It will talk to http endpoints just as well, which makes testing a little easier.

Intent Schema. This is the JSON schema file your application uses. The simulator needs this in order to correctly parse text into intents. This can be supplied either through a file on your disk, or for a URL. One common practice is to bundle your Intent Schema with your application, so that both are served up through the same web site. This helps keep things in sync.

Utterances. This is the utterance file your application uses. The simulator needs this in order to best match text into intents, and to auto-generate scripts. This can be supplied either through a file on your disk, or for a URL. One common practice is to bundle your utterance file with your application, so that both are served up through the same web site. This helps keep things in sync.

Tester Tab

This tab is used for basic testing of your Echo application.

The main area of the tab here is used to display the dialog between you and the application. The text is color coded to indicate information sent to the app, received from the app, and errors.

At the bottom of the tab is a "say" text field. This replaces the Speech-To-Text of the Echo and is the primary input mechanism for the simulator. You fill in the text that you want to 'speak', then press send. The text will be parsed into an IntentRequest and sent to the application.

The |> button (play) will establish a new session with your application by sending a LaunchRequest.

The [] button (stop) will terminate a session with your application by sending a SessionEndedRequest

Clone this wiki locally