Skip to content

Commit f2148a7

Browse files
committed
Release 0.0.0-alpha6
1 parent c0b90ac commit f2148a7

File tree

266 files changed

+12904
-10538
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

266 files changed

+12904
-10538
lines changed

lib/gemconfig.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ module Gemconfig
77
EMAIL = ""
88
SUMMARY = ""
99
DESCRIPTION = ""
10-
HOMEPAGE = "https://github.com/fern-demo/vapi-ruby-sdk"
11-
SOURCE_CODE_URI = "https://github.com/fern-demo/vapi-ruby-sdk"
12-
CHANGELOG_URI = "https://github.com/fern-demo/vapi-ruby-sdk/blob/master/CHANGELOG.md"
10+
HOMEPAGE = "https://github.com/VapiAI/server-sdk-ruby"
11+
SOURCE_CODE_URI = "https://github.com/VapiAI/server-sdk-ruby"
12+
CHANGELOG_URI = "https://github.com/VapiAI/server-sdk-ruby/blob/master/CHANGELOG.md"
1313
end
1414
end

lib/requests.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def get_url(request_options: nil)
4545

4646
# @return [Hash{String => String}]
4747
def get_headers
48-
headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "vapi", "X-Fern-SDK-Version": "0.0.0-alpha4" }
48+
headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "vapi", "X-Fern-SDK-Version": "0.0.0-alpha6" }
4949
headers["Authorization"] = ((@token.is_a? Method) ? @token.call : @token) unless @token.nil?
5050
headers
5151
end
@@ -90,7 +90,7 @@ def get_url(request_options: nil)
9090

9191
# @return [Hash{String => String}]
9292
def get_headers
93-
headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "vapi", "X-Fern-SDK-Version": "0.0.0-alpha4" }
93+
headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "vapi", "X-Fern-SDK-Version": "0.0.0-alpha6" }
9494
headers["Authorization"] = ((@token.is_a? Method) ? @token.call : @token) unless @token.nil?
9595
headers
9696
end

lib/types_export.rb

Lines changed: 85 additions & 78 deletions
Large diffs are not rendered by default.

lib/vapi/assistants/client.rb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -255,9 +255,9 @@ def delete(id:, request_options: nil)
255255
end
256256

257257
# @param id [String]
258-
# @param transcriber [Vapi::DeepgramTranscriber, Vapi::GladiaTranscriber, Vapi::TalkscriberTranscriber] These are the options for the assistant's transcriber.
259-
# @param model [Vapi::AnyscaleModel, Vapi::AnthropicModel, Vapi::CustomLlmModel, Vapi::DeepInfraModel, Vapi::GroqModel, Vapi::OpenAiModel, Vapi::OpenRouterModel, Vapi::PerplexityAiModel, Vapi::TogetherAiModel, Vapi::VapiModel] These are the options for the assistant's LLM.
260-
# @param voice [Vapi::AzureVoice, Vapi::CartesiaVoice, Vapi::DeepgramVoice, Vapi::ElevenLabsVoice, Vapi::LmntVoice, Vapi::NeetsVoice, Vapi::OpenAiVoice, Vapi::PlayHtVoice, Vapi::RimeAiVoice] These are the options for the assistant's voice.
258+
# @param transcriber [Vapi::Assistants::UpdateAssistantDtoTranscriber] These are the options for the assistant's transcriber.
259+
# @param model [Vapi::Assistants::UpdateAssistantDtoModel] These are the options for the assistant's LLM.
260+
# @param voice [Vapi::Assistants::UpdateAssistantDtoVoice] These are the options for the assistant's voice.
261261
# @param first_message_mode [Vapi::Assistants::UpdateAssistantDtoFirstMessageMode] This is the mode for the first message. Default is 'assistant-speaks-first'.
262262
# Use:
263263
# - 'assistant-speaks-first' to have the assistant speak first.
@@ -720,9 +720,9 @@ def delete(id:, request_options: nil)
720720
end
721721

722722
# @param id [String]
723-
# @param transcriber [Vapi::DeepgramTranscriber, Vapi::GladiaTranscriber, Vapi::TalkscriberTranscriber] These are the options for the assistant's transcriber.
724-
# @param model [Vapi::AnyscaleModel, Vapi::AnthropicModel, Vapi::CustomLlmModel, Vapi::DeepInfraModel, Vapi::GroqModel, Vapi::OpenAiModel, Vapi::OpenRouterModel, Vapi::PerplexityAiModel, Vapi::TogetherAiModel, Vapi::VapiModel] These are the options for the assistant's LLM.
725-
# @param voice [Vapi::AzureVoice, Vapi::CartesiaVoice, Vapi::DeepgramVoice, Vapi::ElevenLabsVoice, Vapi::LmntVoice, Vapi::NeetsVoice, Vapi::OpenAiVoice, Vapi::PlayHtVoice, Vapi::RimeAiVoice] These are the options for the assistant's voice.
723+
# @param transcriber [Vapi::Assistants::UpdateAssistantDtoTranscriber] These are the options for the assistant's transcriber.
724+
# @param model [Vapi::Assistants::UpdateAssistantDtoModel] These are the options for the assistant's LLM.
725+
# @param voice [Vapi::Assistants::UpdateAssistantDtoVoice] These are the options for the assistant's voice.
726726
# @param first_message_mode [Vapi::Assistants::UpdateAssistantDtoFirstMessageMode] This is the mode for the first message. Default is 'assistant-speaks-first'.
727727
# Use:
728728
# - 'assistant-speaks-first' to have the assistant speak first.

lib/vapi/assistants/types/update_assistant_dto_model.rb

Lines changed: 160 additions & 128 deletions
Original file line numberDiff line numberDiff line change
@@ -16,153 +16,185 @@ module Vapi
1616
class Assistants
1717
# These are the options for the assistant's LLM.
1818
class UpdateAssistantDtoModel
19+
# @return [Object]
20+
attr_reader :member
21+
# @return [String]
22+
attr_reader :discriminant
23+
24+
private_class_method :new
25+
alias kind_of? is_a?
26+
27+
# @param member [Object]
28+
# @param discriminant [String]
29+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
30+
def initialize(member:, discriminant:)
31+
@member = member
32+
@discriminant = discriminant
33+
end
34+
1935
# Deserialize a JSON object to an instance of UpdateAssistantDtoModel
2036
#
2137
# @param json_object [String]
2238
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
2339
def self.from_json(json_object:)
2440
struct = JSON.parse(json_object, object_class: OpenStruct)
25-
begin
26-
Vapi::AnyscaleModel.validate_raw(obj: struct)
27-
return Vapi::AnyscaleModel.from_json(json_object: struct) unless struct.nil?
41+
member = case struct.provider
42+
when "anyscale"
43+
Vapi::AnyscaleModel.from_json(json_object: json_object)
44+
when "anthropic"
45+
Vapi::AnthropicModel.from_json(json_object: json_object)
46+
when "custom-llm"
47+
Vapi::CustomLlmModel.from_json(json_object: json_object)
48+
when "deepinfra"
49+
Vapi::DeepInfraModel.from_json(json_object: json_object)
50+
when "groq"
51+
Vapi::GroqModel.from_json(json_object: json_object)
52+
when "openai"
53+
Vapi::OpenAiModel.from_json(json_object: json_object)
54+
when "openrouter"
55+
Vapi::OpenRouterModel.from_json(json_object: json_object)
56+
when "perplexity-ai"
57+
Vapi::PerplexityAiModel.from_json(json_object: json_object)
58+
when "together-ai"
59+
Vapi::TogetherAiModel.from_json(json_object: json_object)
60+
when "vapi"
61+
Vapi::VapiModel.from_json(json_object: json_object)
62+
else
63+
Vapi::AnyscaleModel.from_json(json_object: json_object)
64+
end
65+
new(member: member, discriminant: struct.provider)
66+
end
2867

29-
return nil
30-
rescue StandardError
31-
# noop
32-
end
33-
begin
34-
Vapi::AnthropicModel.validate_raw(obj: struct)
35-
return Vapi::AnthropicModel.from_json(json_object: struct) unless struct.nil?
68+
# For Union Types, to_json functionality is delegated to the wrapped member.
69+
#
70+
# @return [String]
71+
def to_json(*_args)
72+
case @discriminant
73+
when "anyscale"
74+
{ **@member.to_json, provider: @discriminant }.to_json
75+
when "anthropic"
76+
{ **@member.to_json, provider: @discriminant }.to_json
77+
when "custom-llm"
78+
{ **@member.to_json, provider: @discriminant }.to_json
79+
when "deepinfra"
80+
{ **@member.to_json, provider: @discriminant }.to_json
81+
when "groq"
82+
{ **@member.to_json, provider: @discriminant }.to_json
83+
when "openai"
84+
{ **@member.to_json, provider: @discriminant }.to_json
85+
when "openrouter"
86+
{ **@member.to_json, provider: @discriminant }.to_json
87+
when "perplexity-ai"
88+
{ **@member.to_json, provider: @discriminant }.to_json
89+
when "together-ai"
90+
{ **@member.to_json, provider: @discriminant }.to_json
91+
when "vapi"
92+
{ **@member.to_json, provider: @discriminant }.to_json
93+
else
94+
{ "provider": @discriminant, value: @member }.to_json
95+
end
96+
@member.to_json
97+
end
3698

37-
return nil
38-
rescue StandardError
39-
# noop
99+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
100+
# hash and check each fields type against the current object's property
101+
# definitions.
102+
#
103+
# @param obj [Object]
104+
# @return [Void]
105+
def self.validate_raw(obj:)
106+
case obj.provider
107+
when "anyscale"
108+
Vapi::AnyscaleModel.validate_raw(obj: obj)
109+
when "anthropic"
110+
Vapi::AnthropicModel.validate_raw(obj: obj)
111+
when "custom-llm"
112+
Vapi::CustomLlmModel.validate_raw(obj: obj)
113+
when "deepinfra"
114+
Vapi::DeepInfraModel.validate_raw(obj: obj)
115+
when "groq"
116+
Vapi::GroqModel.validate_raw(obj: obj)
117+
when "openai"
118+
Vapi::OpenAiModel.validate_raw(obj: obj)
119+
when "openrouter"
120+
Vapi::OpenRouterModel.validate_raw(obj: obj)
121+
when "perplexity-ai"
122+
Vapi::PerplexityAiModel.validate_raw(obj: obj)
123+
when "together-ai"
124+
Vapi::TogetherAiModel.validate_raw(obj: obj)
125+
when "vapi"
126+
Vapi::VapiModel.validate_raw(obj: obj)
127+
else
128+
raise("Passed value matched no type within the union, validation failed.")
40129
end
41-
begin
42-
Vapi::CustomLlmModel.validate_raw(obj: struct)
43-
return Vapi::CustomLlmModel.from_json(json_object: struct) unless struct.nil?
130+
end
44131

45-
return nil
46-
rescue StandardError
47-
# noop
48-
end
49-
begin
50-
Vapi::DeepInfraModel.validate_raw(obj: struct)
51-
return Vapi::DeepInfraModel.from_json(json_object: struct) unless struct.nil?
132+
# For Union Types, is_a? functionality is delegated to the wrapped member.
133+
#
134+
# @param obj [Object]
135+
# @return [Boolean]
136+
def is_a?(obj)
137+
@member.is_a?(obj)
138+
end
52139

53-
return nil
54-
rescue StandardError
55-
# noop
56-
end
57-
begin
58-
Vapi::GroqModel.validate_raw(obj: struct)
59-
return Vapi::GroqModel.from_json(json_object: struct) unless struct.nil?
140+
# @param member [Vapi::AnyscaleModel]
141+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
142+
def self.anyscale(member:)
143+
new(member: member, discriminant: "anyscale")
144+
end
60145

61-
return nil
62-
rescue StandardError
63-
# noop
64-
end
65-
begin
66-
Vapi::OpenAiModel.validate_raw(obj: struct)
67-
return Vapi::OpenAiModel.from_json(json_object: struct) unless struct.nil?
146+
# @param member [Vapi::AnthropicModel]
147+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
148+
def self.anthropic(member:)
149+
new(member: member, discriminant: "anthropic")
150+
end
68151

69-
return nil
70-
rescue StandardError
71-
# noop
72-
end
73-
begin
74-
Vapi::OpenRouterModel.validate_raw(obj: struct)
75-
return Vapi::OpenRouterModel.from_json(json_object: struct) unless struct.nil?
152+
# @param member [Vapi::CustomLlmModel]
153+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
154+
def self.custom_llm(member:)
155+
new(member: member, discriminant: "custom-llm")
156+
end
76157

77-
return nil
78-
rescue StandardError
79-
# noop
80-
end
81-
begin
82-
Vapi::PerplexityAiModel.validate_raw(obj: struct)
83-
return Vapi::PerplexityAiModel.from_json(json_object: struct) unless struct.nil?
158+
# @param member [Vapi::DeepInfraModel]
159+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
160+
def self.deepinfra(member:)
161+
new(member: member, discriminant: "deepinfra")
162+
end
84163

85-
return nil
86-
rescue StandardError
87-
# noop
88-
end
89-
begin
90-
Vapi::TogetherAiModel.validate_raw(obj: struct)
91-
return Vapi::TogetherAiModel.from_json(json_object: struct) unless struct.nil?
164+
# @param member [Vapi::GroqModel]
165+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
166+
def self.groq(member:)
167+
new(member: member, discriminant: "groq")
168+
end
92169

93-
return nil
94-
rescue StandardError
95-
# noop
96-
end
97-
begin
98-
Vapi::VapiModel.validate_raw(obj: struct)
99-
return Vapi::VapiModel.from_json(json_object: struct) unless struct.nil?
170+
# @param member [Vapi::OpenAiModel]
171+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
172+
def self.openai(member:)
173+
new(member: member, discriminant: "openai")
174+
end
100175

101-
return nil
102-
rescue StandardError
103-
# noop
104-
end
105-
struct
176+
# @param member [Vapi::OpenRouterModel]
177+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
178+
def self.openrouter(member:)
179+
new(member: member, discriminant: "openrouter")
106180
end
107181

108-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
109-
# hash and check each fields type against the current object's property
110-
# definitions.
111-
#
112-
# @param obj [Object]
113-
# @return [Void]
114-
def self.validate_raw(obj:)
115-
begin
116-
return Vapi::AnyscaleModel.validate_raw(obj: obj)
117-
rescue StandardError
118-
# noop
119-
end
120-
begin
121-
return Vapi::AnthropicModel.validate_raw(obj: obj)
122-
rescue StandardError
123-
# noop
124-
end
125-
begin
126-
return Vapi::CustomLlmModel.validate_raw(obj: obj)
127-
rescue StandardError
128-
# noop
129-
end
130-
begin
131-
return Vapi::DeepInfraModel.validate_raw(obj: obj)
132-
rescue StandardError
133-
# noop
134-
end
135-
begin
136-
return Vapi::GroqModel.validate_raw(obj: obj)
137-
rescue StandardError
138-
# noop
139-
end
140-
begin
141-
return Vapi::OpenAiModel.validate_raw(obj: obj)
142-
rescue StandardError
143-
# noop
144-
end
145-
begin
146-
return Vapi::OpenRouterModel.validate_raw(obj: obj)
147-
rescue StandardError
148-
# noop
149-
end
150-
begin
151-
return Vapi::PerplexityAiModel.validate_raw(obj: obj)
152-
rescue StandardError
153-
# noop
154-
end
155-
begin
156-
return Vapi::TogetherAiModel.validate_raw(obj: obj)
157-
rescue StandardError
158-
# noop
159-
end
160-
begin
161-
return Vapi::VapiModel.validate_raw(obj: obj)
162-
rescue StandardError
163-
# noop
164-
end
165-
raise("Passed value matched no type within the union, validation failed.")
182+
# @param member [Vapi::PerplexityAiModel]
183+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
184+
def self.perplexity_ai(member:)
185+
new(member: member, discriminant: "perplexity-ai")
186+
end
187+
188+
# @param member [Vapi::TogetherAiModel]
189+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
190+
def self.together_ai(member:)
191+
new(member: member, discriminant: "together-ai")
192+
end
193+
194+
# @param member [Vapi::VapiModel]
195+
# @return [Vapi::Assistants::UpdateAssistantDtoModel]
196+
def self.vapi(member:)
197+
new(member: member, discriminant: "vapi")
166198
end
167199
end
168200
end

0 commit comments

Comments
 (0)