0.5.0 • Published 9 years ago

alexa-ssml v0.5.0

Weekly downloads
4
License
MIT
Repository
github
Last release
9 years ago

alexa-ssml Build Status

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
  • Returns object like { tag, props, children }
renderToString(data, [options]) -> string
  • Takes in object from ssml function
  • 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" }]
    ]
}
0.5.0

9 years ago

0.4.1

9 years ago

0.4.0

9 years ago

0.3.2

10 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago