alexa-ssml ![Build Status](https://travis-ci.org/nickclaw/alexa-ssml.svg?branch=master)
Manipulate and validate the subset of SSML supported by the Alexa Skills Kit
npm install alexa-ssml
- Only supports limited syntax
- Camel case tag names and properties.
<break />
changed to <pause />
- Compatible with
transform-react-jsx
babel plugin
Example
import { ssml, renderToString } from 'alexa-ssml';
const tags = (
<speak>
Here is a number <w role="ivona:VBD">read</w> as a cardinal number:
<sayAs interpretAs="cardinal">12345</sayAs>.
Here is a word spelled out: <sayAs interpretAs="spell-out">hello</sayAs>.
</speak>
);
const raw = renderToString(tags);
Custom Elements
import { ssml } from 'alexa-ssml';
function LongPause(props) {
return <pause time={10000} />
}
const data = (
<speak>
Foo <LongPause /> bar.
</speak>
)
API
ssml(tag, props, ...children) -> object
tag
can be a string or function- Use
/** @jsx ssml */
to support jsx syntax - Returns object like
{ tag, props, children }
renderToString(data) -> string
- Takes in object from
ssml
function - Must be wrapped in a
"speak"
tag