Class: Twilio::TwiML::SsmlProsody

Inherits:
TwiML
  • Object
show all
Defined in:
lib/twilio-ruby/twiml/voice_response.rb

Overview

Controling Volume, Speaking Rate, and Pitch in <Say>

Instance Attribute Summary

Attributes inherited from TwiML

#name

Instance Method Summary collapse

Methods inherited from TwiML

#add_child, #add_text, #append, #comment, to_lower_camel_case, #to_s, #xml

Constructor Details

#initialize(words: nil, **keyword_args) {|_self| ... } ⇒ SsmlProsody

Returns a new instance of SsmlProsody.

Yields:

  • (_self)

Yield Parameters:



755
756
757
758
759
760
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 755

def initialize(words: nil, **keyword_args)
  super(**keyword_args)
  @name = 'prosody'
  @value = words unless words.nil?
  yield(self) if block_given?
end

Instance Method Details

#break(strength: nil, time: nil, **keyword_args) ⇒ Object

Create a new <Break> element

strength

Set a pause based on strength

time

Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms

keyword_args

additional attributes



767
768
769
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 767

def break(strength: nil, time: nil, **keyword_args)
  append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
end

#emphasis(words: nil, level: nil, **keyword_args) {|emphasis| ... } ⇒ Object

Create a new <Emphasis> element

words

Words to emphasize

level

Specify the degree of emphasis

keyword_args

additional attributes

Yields:



776
777
778
779
780
781
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 776

def emphasis(words: nil, level: nil, **keyword_args)
  emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)

  yield(emphasis) if block_given?
  append(emphasis)
end

#lang(words: nil, xmlLang: nil, **keyword_args) {|lang| ... } ⇒ Object

Create a new <Lang> element

words

Words to speak

xmlLang

Specify the language

keyword_args

additional attributes

Yields:



788
789
790
791
792
793
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 788

def lang(words: nil, xmlLang: nil, **keyword_args)
  lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)

  yield(lang) if block_given?
  append(lang)
end

#p(words: nil, **keyword_args) {|p| ... } ⇒ Object

Create a new <P> element

words

Words to speak

keyword_args

additional attributes

Yields:

  • (p)


799
800
801
802
803
804
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 799

def p(words: nil, **keyword_args)
  p = SsmlP.new(words: words, **keyword_args)

  yield(p) if block_given?
  append(p)
end

#phoneme(words, alphabet: nil, ph: nil, **keyword_args) ⇒ Object

Create a new <Phoneme> element

words

Words to speak

alphabet

Specify the phonetic alphabet

ph

Specifiy the phonetic symbols for pronunciation

keyword_args

additional attributes



812
813
814
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 812

def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
  append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
end

#prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args) {|prosody| ... } ⇒ Object

Create a new <Prosody> element

words

Words to speak

volume

Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB

rate

Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%

pitch

Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%

keyword_args

additional attributes

Yields:



823
824
825
826
827
828
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 823

def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
  prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)

  yield(prosody) if block_given?
  append(prosody)
end

#s(words: nil, **keyword_args) {|s| ... } ⇒ Object

Create a new <S> element

words

Words to speak

keyword_args

additional attributes

Yields:

  • (s)


834
835
836
837
838
839
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 834

def s(words: nil, **keyword_args)
  s = SsmlS.new(words: words, **keyword_args)

  yield(s) if block_given?
  append(s)
end

#say_as(words, interpretAs: nil, format: nil, **keyword_args) ⇒ Object

Create a new <Say-As> element

words

Words to be interpreted

interpretAs

Specify the type of words are spoken

format

Specify the format of the date when interpret-as is set to date

keyword_args

additional attributes



847
848
849
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 847

def say_as(words, interpretAs: nil, format: nil, **keyword_args)
  append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
end

#sub(words, aliasAttribute: nil, **keyword_args) ⇒ Object

Create a new <Sub> element

words

Words to be substituted

aliasAttribute

Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation

keyword_args

additional attributes



856
857
858
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 856

def sub(words, aliasAttribute: nil, **keyword_args)
  append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
end

#w(words: nil, role: nil, **keyword_args) {|w| ... } ⇒ Object

Create a new <W> element

words

Words to speak

role

Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning

keyword_args

additional attributes

Yields:

  • (w)


865
866
867
868
869
870
# File 'lib/twilio-ruby/twiml/voice_response.rb', line 865

def w(words: nil, role: nil, **keyword_args)
  w = SsmlW.new(words: words, role: role, **keyword_args)

  yield(w) if block_given?
  append(w)
end