Class: Vapi::FallbackElevenLabsVoice

Inherits:
Object
  • Object
show all
Defined in:
lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb

Constant Summary collapse

OMIT =
Object.new

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(voice_id:, caching_enabled: OMIT, stability: OMIT, similarity_boost: OMIT, style: OMIT, use_speaker_boost: OMIT, speed: OMIT, optimize_streaming_latency: OMIT, enable_ssml_parsing: OMIT, auto_mode: OMIT, model: OMIT, language: OMIT, chunk_plan: OMIT, additional_properties: nil) ⇒ Vapi::FallbackElevenLabsVoice

Parameters:

  • caching_enabled (Boolean) (defaults to: OMIT)

    This is the flag to toggle voice caching for the assistant.

  • voice_id (Vapi::FallbackElevenLabsVoiceId)

    This is the provider-specific ID that will be used. Ensure the Voice is present in your 11Labs Voice Library.

  • stability (Float) (defaults to: OMIT)

    Defines the stability for voice settings.

  • similarity_boost (Float) (defaults to: OMIT)

    Defines the similarity boost for voice settings.

  • style (Float) (defaults to: OMIT)

    Defines the style for voice settings.

  • use_speaker_boost (Boolean) (defaults to: OMIT)

    Defines the use speaker boost for voice settings.

  • speed (Float) (defaults to: OMIT)

    Defines the speed for voice settings.

  • optimize_streaming_latency (Float) (defaults to: OMIT)

    Defines the optimize streaming latency for voice settings. Defaults to 3.

  • enable_ssml_parsing (Boolean) (defaults to: OMIT)

    This enables the use of elevenlabs.io/docs/speech-synthesis/prompting#pronunciation. Defaults to false to save latency. @default false

  • auto_mode (Boolean) (defaults to: OMIT)

    Defines the auto mode for voice settings. Defaults to false.

  • model (Vapi::FallbackElevenLabsVoiceModel) (defaults to: OMIT)

    This is the model that will be used. Defaults to ‘eleven_turbo_v2’ if not specified.

  • language (String) (defaults to: OMIT)

    This is the language (ISO 639-1) that is enforced for the model. Currently only Turbo v2.5 supports language enforcement. For other models, an error will be returned if language code is provided.

  • chunk_plan (Vapi::ChunkPlan) (defaults to: OMIT)

    This is the plan for chunking the model output before it is sent to the voice provider.

  • additional_properties (OpenStruct) (defaults to: nil)

    Additional properties unmapped to the current class definition



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 76

def initialize(voice_id:, caching_enabled: OMIT, stability: OMIT, similarity_boost: OMIT, style: OMIT,
               use_speaker_boost: OMIT, speed: OMIT, optimize_streaming_latency: OMIT, enable_ssml_parsing: OMIT, auto_mode: OMIT, model: OMIT, language: OMIT, chunk_plan: OMIT, additional_properties: nil)
  @caching_enabled = caching_enabled if caching_enabled != OMIT
  @voice_id = voice_id
  @stability = stability if stability != OMIT
  @similarity_boost = similarity_boost if similarity_boost != OMIT
  @style = style if style != OMIT
  @use_speaker_boost = use_speaker_boost if use_speaker_boost != OMIT
  @speed = speed if speed != OMIT
  @optimize_streaming_latency = optimize_streaming_latency if optimize_streaming_latency != OMIT
  @enable_ssml_parsing = enable_ssml_parsing if enable_ssml_parsing != OMIT
  @auto_mode = auto_mode if auto_mode != OMIT
  @model = model if model != OMIT
  @language = language if language != OMIT
  @chunk_plan = chunk_plan if chunk_plan != OMIT
  @additional_properties = additional_properties
  @_field_set = {
    "cachingEnabled": caching_enabled,
    "voiceId": voice_id,
    "stability": stability,
    "similarityBoost": similarity_boost,
    "style": style,
    "useSpeakerBoost": use_speaker_boost,
    "speed": speed,
    "optimizeStreamingLatency": optimize_streaming_latency,
    "enableSsmlParsing": enable_ssml_parsing,
    "autoMode": auto_mode,
    "model": model,
    "language": language,
    "chunkPlan": chunk_plan
  }.reject do |_k, v|
    v == OMIT
  end
end

Instance Attribute Details

#additional_propertiesOpenStruct (readonly)

Returns Additional properties unmapped to the current class definition.

Returns:

  • (OpenStruct)

    Additional properties unmapped to the current class definition



46
47
48
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 46

def additional_properties
  @additional_properties
end

#auto_modeBoolean (readonly)

Returns Defines the auto mode for voice settings. Defaults to false.

Returns:

  • (Boolean)

    Defines the auto mode for voice settings. Defaults to false.



34
35
36
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 34

def auto_mode
  @auto_mode
end

#caching_enabledBoolean (readonly)

Returns This is the flag to toggle voice caching for the assistant.

Returns:

  • (Boolean)

    This is the flag to toggle voice caching for the assistant.



12
13
14
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 12

def caching_enabled
  @caching_enabled
end

#chunk_planVapi::ChunkPlan (readonly)

Returns This is the plan for chunking the model output before it is sent to the voice provider.

Returns:

  • (Vapi::ChunkPlan)

    This is the plan for chunking the model output before it is sent to the voice provider.



44
45
46
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 44

def chunk_plan
  @chunk_plan
end

#enable_ssml_parsingBoolean (readonly)

Returns This enables the use of elevenlabs.io/docs/speech-synthesis/prompting#pronunciation. Defaults to false to save latency. @default false.

Returns:



32
33
34
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 32

def enable_ssml_parsing
  @enable_ssml_parsing
end

#languageString (readonly)

This is the language (ISO 639-1) that is enforced for the model. Currently only Turbo v2.5 supports language enforcement. For other models, an error will be returned if language code is provided.

Returns:

  • (String)

    This is the language (ISO 639-1) that is enforced for the model. Currently only Turbo v2.5 supports language enforcement. For other models, an error will be returned if language code is provided.



41
42
43
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 41

def language
  @language
end

#modelVapi::FallbackElevenLabsVoiceModel (readonly)

Returns This is the model that will be used. Defaults to ‘eleven_turbo_v2’ if not specified.

Returns:



37
38
39
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 37

def model
  @model
end

#optimize_streaming_latencyFloat (readonly)

Returns Defines the optimize streaming latency for voice settings. Defaults to 3.

Returns:

  • (Float)

    Defines the optimize streaming latency for voice settings. Defaults to 3.



27
28
29
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 27

def optimize_streaming_latency
  @optimize_streaming_latency
end

#similarity_boostFloat (readonly)

Returns Defines the similarity boost for voice settings.

Returns:

  • (Float)

    Defines the similarity boost for voice settings.



19
20
21
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 19

def similarity_boost
  @similarity_boost
end

#speedFloat (readonly)

Returns Defines the speed for voice settings.

Returns:

  • (Float)

    Defines the speed for voice settings.



25
26
27
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 25

def speed
  @speed
end

#stabilityFloat (readonly)

Returns Defines the stability for voice settings.

Returns:

  • (Float)

    Defines the stability for voice settings.



17
18
19
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 17

def stability
  @stability
end

#styleFloat (readonly)

Returns Defines the style for voice settings.

Returns:

  • (Float)

    Defines the style for voice settings.



21
22
23
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 21

def style
  @style
end

#use_speaker_boostBoolean (readonly)

Returns Defines the use speaker boost for voice settings.

Returns:

  • (Boolean)

    Defines the use speaker boost for voice settings.



23
24
25
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 23

def use_speaker_boost
  @use_speaker_boost
end

#voice_idVapi::FallbackElevenLabsVoiceId (readonly)

Returns This is the provider-specific ID that will be used. Ensure the Voice is present in your 11Labs Voice Library.

Returns:



15
16
17
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 15

def voice_id
  @voice_id
end

Class Method Details

.from_json(json_object:) ⇒ Vapi::FallbackElevenLabsVoice

Deserialize a JSON object to an instance of FallbackElevenLabsVoice

Parameters:

  • json_object (String)

Returns:



115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 115

def self.from_json(json_object:)
  struct = JSON.parse(json_object, object_class: OpenStruct)
  parsed_json = JSON.parse(json_object)
  caching_enabled = parsed_json["cachingEnabled"]
  if parsed_json["voiceId"].nil?
    voice_id = nil
  else
    voice_id = parsed_json["voiceId"].to_json
    voice_id = Vapi::FallbackElevenLabsVoiceId.from_json(json_object: voice_id)
  end
  stability = parsed_json["stability"]
  similarity_boost = parsed_json["similarityBoost"]
  style = parsed_json["style"]
  use_speaker_boost = parsed_json["useSpeakerBoost"]
  speed = parsed_json["speed"]
  optimize_streaming_latency = parsed_json["optimizeStreamingLatency"]
  enable_ssml_parsing = parsed_json["enableSsmlParsing"]
  auto_mode = parsed_json["autoMode"]
  model = parsed_json["model"]
  language = parsed_json["language"]
  if parsed_json["chunkPlan"].nil?
    chunk_plan = nil
  else
    chunk_plan = parsed_json["chunkPlan"].to_json
    chunk_plan = Vapi::ChunkPlan.from_json(json_object: chunk_plan)
  end
  new(
    caching_enabled: caching_enabled,
    voice_id: voice_id,
    stability: stability,
    similarity_boost: similarity_boost,
    style: style,
    use_speaker_boost: use_speaker_boost,
    speed: speed,
    optimize_streaming_latency: optimize_streaming_latency,
    enable_ssml_parsing: enable_ssml_parsing,
    auto_mode: auto_mode,
    model: model,
    language: language,
    chunk_plan: chunk_plan,
    additional_properties: struct
  )
end

.validate_raw(obj:) ⇒ Void

Leveraged for Union-type generation, validate_raw attempts to parse the given

hash and check each fields type against the current object's property
definitions.

Parameters:

  • obj (Object)

Returns:

  • (Void)


172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 172

def self.validate_raw(obj:)
  obj.caching_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.caching_enabled is not the expected type, validation failed.")
  Vapi::FallbackElevenLabsVoiceId.validate_raw(obj: obj.voice_id)
  obj.stability&.is_a?(Float) != false || raise("Passed value for field obj.stability is not the expected type, validation failed.")
  obj.similarity_boost&.is_a?(Float) != false || raise("Passed value for field obj.similarity_boost is not the expected type, validation failed.")
  obj.style&.is_a?(Float) != false || raise("Passed value for field obj.style is not the expected type, validation failed.")
  obj.use_speaker_boost&.is_a?(Boolean) != false || raise("Passed value for field obj.use_speaker_boost is not the expected type, validation failed.")
  obj.speed&.is_a?(Float) != false || raise("Passed value for field obj.speed is not the expected type, validation failed.")
  obj.optimize_streaming_latency&.is_a?(Float) != false || raise("Passed value for field obj.optimize_streaming_latency is not the expected type, validation failed.")
  obj.enable_ssml_parsing&.is_a?(Boolean) != false || raise("Passed value for field obj.enable_ssml_parsing is not the expected type, validation failed.")
  obj.auto_mode&.is_a?(Boolean) != false || raise("Passed value for field obj.auto_mode is not the expected type, validation failed.")
  obj.model&.is_a?(Vapi::FallbackElevenLabsVoiceModel) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
  obj.language&.is_a?(String) != false || raise("Passed value for field obj.language is not the expected type, validation failed.")
  obj.chunk_plan.nil? || Vapi::ChunkPlan.validate_raw(obj: obj.chunk_plan)
end

Instance Method Details

#to_json(*_args) ⇒ String

Serialize an instance of FallbackElevenLabsVoice to a JSON object

Returns:

  • (String)


162
163
164
# File 'lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb', line 162

def to_json(*_args)
  @_field_set&.to_json
end