module SsmlBuilder::String
Public Instance Methods
ssml_address()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 118 def ssml_address return "<say-as interpret-as=\"address\">" + self + "</say-as>" end
ssml_amazon_noun()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 146 def ssml_amazon_noun return "<w role=\"amazon:NN\">" + self + "</w>" end
ssml_amazon_participle()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 142 def ssml_amazon_participle return "<w role=\"amazon:VBD\">" + self + "</w>" end
ssml_amazon_sense(sense = 1)
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 150 def ssml_amazon_sense(sense = 1) return "<w role=\"SENSE_" + sense.to_s + "\">" + self + "</w>" end
ssml_amazon_verb()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 138 def ssml_amazon_verb return "<w role=\"amazon:VB\">" + self + "</w>" end
ssml_audio()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 65 def ssml_audio return "<audio src=\"" + self + "\"/>" end
ssml_break(length = "medium")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 56 def ssml_break(length = "medium") # ALIAS for ssml_pause return self.ssml_pause(length) end
ssml_cardinal()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 77 def ssml_cardinal return "<say-as interpret-as=\"cardinal\">" + self + "</say-as>" end
ssml_characters()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 73 def ssml_characters return "<say-as interpret-as=\"characters\">" + self + "</say-as>" end
ssml_date()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 101 def ssml_date return "<say-as interpret-as=\"date\">" + self + "</say-as>" end
ssml_digits()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 89 def ssml_digits return "<say-as interpret-as=\"digits\">" + self + "</say-as>" end
ssml_emphasis(level = "moderate")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 61 def ssml_emphasis(level = "moderate") return "<emphasis level=\"" + level + "\">" + self + "</emphasis>" end
ssml_expletive()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 126 def ssml_expletive return "<say-as interpret-as=\"expletive\">" + self + "</say-as>" end
ssml_fraction()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 93 def ssml_fraction return "<say-as interpret-as=\"fraction\">" + self + "</say-as>" end
ssml_interjection()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 122 def ssml_interjection return "<say-as interpret-as=\"interjection\">" + self + "</say-as>" end
ssml_number()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 81 def ssml_number return "<say-as interpret-as=\"number\">" + self + "</say-as>" end
ssml_ordinal()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 85 def ssml_ordinal return "<say-as interpret-as=\"ordinal\">" + self + "</say-as>" end
ssml_p()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 11 def ssml_p # ALIAS for paragraph return self.ssml_paragraph end
ssml_paragraph()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 7 def ssml_paragraph return "<p>" + ssml_remove_special_characters(self) + "</p>" end
ssml_pause(length = "medium")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 48 def ssml_pause(length = "medium") if ["none", "x-weak", "weak", "medium", "strong", "x-strong"].include?(length.downcase) return "<break strength=\"" + length.downcase + "\"/>" else return "<break time=\"" + length + "\"/>" end end
ssml_phone()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 113 def ssml_phone # ALIAS of telephone return self.ssml_telephone end
ssml_phoneme(alphabet = "ipa",ph = "")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 154 def ssml_phoneme(alphabet = "ipa",ph = "") return "<phoneme alphabet=\"" + alphabet + "\" ph=\"" + ph + "\">" + self + "</phoneme>" end
ssml_pitch(pitch = "medium")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 27 def ssml_pitch(pitch = "medium") if !["x-low", "low", "medium", "high", "x-high"].include?(pitch) pitch = pitch.to_f > -33.3 ? pitch.to_f : -33.3 pitch = (pitch.to_f < 50.0 ? pitch : 50.0) pitch = pitch > 0 ? "+%g%" % ("%.2f" % pitch) : "%g%" % ("%.2f" % pitch) end return "<prosody pitch=\"" + pitch + "\">" + ssml_remove_special_characters(self) + "</prosody>" end
ssml_prosody()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 44 def ssml_prosody # UNKOWN HOW I WANT TO USE end
ssml_rate(rate = "medium")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 20 def ssml_rate(rate = "medium") if !["x-slow", "slow", "medium", "fast", "x-fast"].include?(rate) rate = (rate.to_i > 20 ? rate.to_i : 20).to_s + "%" end return "<prosody rate=\"" + rate + "\">" + ssml_remove_special_characters(self) + "</prosody>" end
ssml_say()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 3 def ssml_say return ssml_remove_special_characters(self) end
ssml_sentence()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 16 def ssml_sentence return "<s>" + ssml_remove_special_characters(self) + "</s>" end
ssml_spell_out()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 69 def ssml_spell_out return "<say-as interpret-as=\"spell-out\">" + self + "</say-as>" end
ssml_sub(alias_str)
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 130 def ssml_sub(alias_str) return "<sub alias=\"" + alias_str + "\">" + self + "</sub>" end
ssml_telephone()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 109 def ssml_telephone return "<say-as interpret-as=\"telephone\">" + self + "</say-as>" end
ssml_time()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 105 def ssml_time return "<say-as interpret-as=\"time\">" + self + "</say-as>" end
ssml_unit()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 97 def ssml_unit return "<say-as interpret-as=\"unit\">" + self.gsub(/ /,'') + "</say-as>" end
ssml_volume(volume = "medium")
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 36 def ssml_volume(volume = "medium") if !["silent", "x-soft", "soft", "medium", "loud", "x-loud"].include?(volume) volume = volume.to_f < 4.08 ? volume.to_f : 4.08 volume = volume > 0 ? "+%gdB" % ("%.2f" % volume) : "%gdB" % ("%.2f" % volume) end return "<prosody volume=\"" + volume + "\">" + ssml_remove_special_characters(self) + "</prosody>" end
ssml_whisper()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 134 def ssml_whisper return "<amazon:effect name=\"whispered\">" + self + "</amazon:effect>" end
to_ssml()
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 158 def to_ssml return "<speak>" + self + "</speak>" end
Private Instance Methods
ssml_remove_special_characters(string)
click to toggle source
# File lib/ssml_builder/core_extensions/string.rb, line 164 def ssml_remove_special_characters(string) return string.gsub(/['"`]/,'') end