How to configure SSML in Dialogue Studio

Introduction

Speech Synthesis Markup Language (SSML) is an XML-based markup language for speech synthesis applications.

Based on you speech engine a different format needs to be used:

For information about speech engines, Learn More

 

Preview

 

Configure

We are going to start with a “Incoming conversation” node. This node only listens to audio/video and is connected to our server using SignalR.

Steps:

  1. Drag and drop Incoming Call Node

  2. Open Node

    1. Select / Configure server

    2. Filter on Audio/Video

 

Next creating the SSML text we want to use. This can be done by using a function node.

Steps:

  1. Drag and drop Function Node

  2. Open Node

    1. Enter text you want to play.

      Example Microsoft Text to Speech:

      /*jshint multistr: true */

      msg.text =' <speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-EN">\

      Here are <say-as interpret-as="characters">SSML</say-as> samples.\

      I can pause <break time="1s"/>. \

      I can speak in cardinals. Your number is \

      <say-as interpret-as="cardinal"> \

      10 \

      </say-as>. \

      Or I can speak in ordinals. You are \

      <say-as interpret-as="ordinal">\

      10\

      </say-as> in line.\

      Or I can even speak in digits. The digits for ten are\

      <say-as interpret-as="characters">\

      10\

      </say-as>.\

      I can also substitute phrases, like the \

      <sub alias="World Wide Web Consortium"> \

      W3C\

      </sub>.\

      Finally, I can speak a paragraph with two sentences.\

      <p>\

      <s>This is sentence one.</s>\

      <s>This is sentence two.</s>\

      </p>\

      Today is <say-as type="date:mdy"> 11/20/2019 </say-as> \

      I <emphasis level="strong">really</emphasis>\

      Like pepperoni on my pizza.\

      <audio src="http://localhost/applause8.mp3"> \

      applause <!--when file is not loaded--> \

      </audio>.\

      </speak>'

      return msg;

  3. Connect end of Incoming Call node with Function Node

 

Next we are adding an “Say”, to play the SSML text.

Steps:

  1. Drag and drop Say Node

  2. Open Node

    1. Set message to: msg.text

  3. Connect end of Function Node with begin of Say node