Package Exports
- alexa-ssml
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (alexa-ssml) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
alexa-ssml 
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-jsxbabel 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
tagcan be a string or function- Returns object like
{ tag, props, children }
renderToString(data, [options]) -> string
- Takes in object from
ssmlfunction - Must be wrapped in a
"speak"tag - Supported options:
pretty, defaults to false. Makes the SSML easier to read.
JSX Syntax
To use SSML JSX syntax directly in JavaScript add /** @jsx ssml */ to the top of the file or configure transform-react-jsx using .babelrc:
{
"plugins": [
["transform-react-jsx", { "pragma": "ssml" }]
]
}