diff --git a/lib/assemblyai/files/types/uploaded_file.rb b/lib/assemblyai/files/types/uploaded_file.rb index a92549c..1ec826c 100644 --- a/lib/assemblyai/files/types/uploaded_file.rb +++ b/lib/assemblyai/files/types/uploaded_file.rb @@ -31,7 +31,8 @@ def initialize(upload_url:, additional_properties: nil) # @return [AssemblyAI::Files::UploadedFile] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - upload_url = struct["upload_url"] + parsed_json = JSON.parse(json_object) + upload_url = parsed_json["upload_url"] new(upload_url: upload_url, additional_properties: struct) end diff --git a/lib/assemblyai/lemur/client.rb b/lib/assemblyai/lemur/client.rb index 9784ac9..46242f1 100644 --- a/lib/assemblyai/lemur/client.rb +++ b/lib/assemblyai/lemur/client.rb @@ -44,8 +44,8 @@ def initialize(request_client:) # @return [AssemblyAI::Lemur::LemurTaskResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.task(prompt: "List all the locations affected by wildfires.") @@ -54,7 +54,14 @@ def task(prompt:, transcript_ids: nil, input_text: nil, context: nil, final_mode response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -94,8 +101,8 @@ def task(prompt:, transcript_ids: nil, input_text: nil, context: nil, final_mode # @return [AssemblyAI::Lemur::LemurSummaryResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.summary @@ -104,7 +111,14 @@ def summary(transcript_ids: nil, input_text: nil, context: nil, final_model: nil response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -148,8 +162,8 @@ def summary(transcript_ids: nil, input_text: nil, context: nil, final_model: nil # @return [AssemblyAI::Lemur::LemurQuestionAnswerResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.question_answer(questions: [{ question: "Where are there wildfires?", answer_format: "List of countries in ISO 3166-1 alpha-2 format", answer_options: ["US", "CA"] }, { question: "Is global warming affecting wildfires?", answer_options: ["yes", "no"] }]) @@ -158,7 +172,14 @@ def question_answer(questions:, transcript_ids: nil, input_text: nil, context: n response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -195,8 +216,8 @@ def question_answer(questions:, transcript_ids: nil, input_text: nil, context: n # @return [AssemblyAI::Lemur::LemurActionItemsResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.action_items(answer_format: "Bullet Points") @@ -205,7 +226,14 @@ def action_items(transcript_ids: nil, input_text: nil, context: nil, final_model response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -229,8 +257,8 @@ def action_items(transcript_ids: nil, input_text: nil, context: nil, final_model # @return [AssemblyAI::Lemur::LemurStringResponse, AssemblyAI::Lemur::LemurQuestionAnswerResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.get_response(request_id: "request_id") @@ -238,7 +266,17 @@ def get_response(request_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/lemur/v3/#{request_id}" end AssemblyAI::Lemur::LemurResponse.from_json(json_object: response.body) @@ -254,8 +292,8 @@ def get_response(request_id:, request_options: nil) # @return [AssemblyAI::Lemur::PurgeLemurRequestDataResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.purge_request_data(request_id: "request_id") @@ -263,7 +301,17 @@ def purge_request_data(request_id:, request_options: nil) response = @request_client.conn.delete do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/lemur/v3/#{request_id}" end AssemblyAI::Lemur::PurgeLemurRequestDataResponse.from_json(json_object: response.body) @@ -301,8 +349,8 @@ def initialize(request_client:) # @return [AssemblyAI::Lemur::LemurTaskResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.task(prompt: "List all the locations affected by wildfires.") @@ -312,7 +360,14 @@ def task(prompt:, transcript_ids: nil, input_text: nil, context: nil, final_mode response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -353,8 +408,8 @@ def task(prompt:, transcript_ids: nil, input_text: nil, context: nil, final_mode # @return [AssemblyAI::Lemur::LemurSummaryResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.summary @@ -364,7 +419,14 @@ def summary(transcript_ids: nil, input_text: nil, context: nil, final_model: nil response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -409,8 +471,8 @@ def summary(transcript_ids: nil, input_text: nil, context: nil, final_model: nil # @return [AssemblyAI::Lemur::LemurQuestionAnswerResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.question_answer(questions: [{ question: "Where are there wildfires?", answer_format: "List of countries in ISO 3166-1 alpha-2 format", answer_options: ["US", "CA"] }, { question: "Is global warming affecting wildfires?", answer_options: ["yes", "no"] }]) @@ -420,7 +482,14 @@ def question_answer(questions:, transcript_ids: nil, input_text: nil, context: n response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -458,8 +527,8 @@ def question_answer(questions:, transcript_ids: nil, input_text: nil, context: n # @return [AssemblyAI::Lemur::LemurActionItemsResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.action_items(answer_format: "Bullet Points") @@ -469,7 +538,14 @@ def action_items(transcript_ids: nil, input_text: nil, context: nil, final_model response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), transcript_ids: transcript_ids, @@ -494,8 +570,8 @@ def action_items(transcript_ids: nil, input_text: nil, context: nil, final_model # @return [AssemblyAI::Lemur::LemurStringResponse, AssemblyAI::Lemur::LemurQuestionAnswerResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.get_response(request_id: "request_id") @@ -504,7 +580,17 @@ def get_response(request_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/lemur/v3/#{request_id}" end AssemblyAI::Lemur::LemurResponse.from_json(json_object: response.body) @@ -521,8 +607,8 @@ def get_response(request_id:, request_options: nil) # @return [AssemblyAI::Lemur::PurgeLemurRequestDataResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.lemur.purge_request_data(request_id: "request_id") @@ -531,7 +617,17 @@ def purge_request_data(request_id:, request_options: nil) response = @request_client.conn.delete do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/lemur/v3/#{request_id}" end AssemblyAI::Lemur::PurgeLemurRequestDataResponse.from_json(json_object: response.body) diff --git a/lib/assemblyai/lemur/types/lemur_action_items_response.rb b/lib/assemblyai/lemur/types/lemur_action_items_response.rb index 7a41ce5..4dc668e 100644 --- a/lib/assemblyai/lemur/types/lemur_action_items_response.rb +++ b/lib/assemblyai/lemur/types/lemur_action_items_response.rb @@ -41,8 +41,8 @@ def initialize(response:, request_id:, usage:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - response = struct["response"] - request_id = struct["request_id"] + response = parsed_json["response"] + request_id = parsed_json["request_id"] if parsed_json["usage"].nil? usage = nil else diff --git a/lib/assemblyai/lemur/types/lemur_base_params.rb b/lib/assemblyai/lemur/types/lemur_base_params.rb index c89d8ea..8512a49 100644 --- a/lib/assemblyai/lemur/types/lemur_base_params.rb +++ b/lib/assemblyai/lemur/types/lemur_base_params.rb @@ -78,17 +78,17 @@ def initialize(transcript_ids: OMIT, input_text: OMIT, context: OMIT, final_mode def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - transcript_ids = struct["transcript_ids"] - input_text = struct["input_text"] + transcript_ids = parsed_json["transcript_ids"] + input_text = parsed_json["input_text"] if parsed_json["context"].nil? context = nil else context = parsed_json["context"].to_json context = AssemblyAI::Lemur::LemurBaseParamsContext.from_json(json_object: context) end - final_model = struct["final_model"] - max_output_size = struct["max_output_size"] - temperature = struct["temperature"] + final_model = parsed_json["final_model"] + max_output_size = parsed_json["max_output_size"] + temperature = parsed_json["temperature"] new( transcript_ids: transcript_ids, input_text: input_text, diff --git a/lib/assemblyai/lemur/types/lemur_base_params_context.rb b/lib/assemblyai/lemur/types/lemur_base_params_context.rb index d971070..a1482d3 100644 --- a/lib/assemblyai/lemur/types/lemur_base_params_context.rb +++ b/lib/assemblyai/lemur/types/lemur_base_params_context.rb @@ -14,7 +14,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.") - return json_object unless json_object.nil? + return struct unless struct.nil? return nil rescue StandardError @@ -22,7 +22,7 @@ def self.from_json(json_object:) end begin struct.is_a?(Hash) != false || raise("Passed value for field struct is not the expected type, validation failed.") - return json_object unless json_object.nil? + return struct unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/lemur/types/lemur_base_response.rb b/lib/assemblyai/lemur/types/lemur_base_response.rb index d23270c..f88c838 100644 --- a/lib/assemblyai/lemur/types/lemur_base_response.rb +++ b/lib/assemblyai/lemur/types/lemur_base_response.rb @@ -37,7 +37,7 @@ def initialize(request_id:, usage:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - request_id = struct["request_id"] + request_id = parsed_json["request_id"] if parsed_json["usage"].nil? usage = nil else diff --git a/lib/assemblyai/lemur/types/lemur_model.rb b/lib/assemblyai/lemur/types/lemur_model.rb index 937efa6..ba73774 100644 --- a/lib/assemblyai/lemur/types/lemur_model.rb +++ b/lib/assemblyai/lemur/types/lemur_model.rb @@ -9,11 +9,8 @@ class LemurModel ANTHROPIC_CLAUDE3_HAIKU = "anthropic/claude-3-haiku" ANTHROPIC_CLAUDE3_SONNET = "anthropic/claude-3-sonnet" ANTHROPIC_CLAUDE2_1 = "anthropic/claude-2-1" - ANTHROPIC_CLAUDE2 = "anthropic/claude-2" ANTHROPIC_CLAUDE2_0 = "anthropic/claude-2" DEFAULT = "default" - ANTHROPIC_CLAUDE_INSTANT1_2 = "anthropic/claude-instant-1-2" - BASIC = "basic" ASSEMBLYAI_MISTRAL7B = "assemblyai/mistral-7b" end end diff --git a/lib/assemblyai/lemur/types/lemur_question.rb b/lib/assemblyai/lemur/types/lemur_question.rb index 0a6bab9..863e605 100644 --- a/lib/assemblyai/lemur/types/lemur_question.rb +++ b/lib/assemblyai/lemur/types/lemur_question.rb @@ -58,15 +58,15 @@ def initialize(question:, context: OMIT, answer_format: OMIT, answer_options: OM def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - question = struct["question"] + question = parsed_json["question"] if parsed_json["context"].nil? context = nil else context = parsed_json["context"].to_json context = AssemblyAI::Lemur::LemurQuestionContext.from_json(json_object: context) end - answer_format = struct["answer_format"] - answer_options = struct["answer_options"] + answer_format = parsed_json["answer_format"] + answer_options = parsed_json["answer_options"] new( question: question, context: context, diff --git a/lib/assemblyai/lemur/types/lemur_question_answer.rb b/lib/assemblyai/lemur/types/lemur_question_answer.rb index bc9fd48..4bde382 100644 --- a/lib/assemblyai/lemur/types/lemur_question_answer.rb +++ b/lib/assemblyai/lemur/types/lemur_question_answer.rb @@ -36,8 +36,9 @@ def initialize(question:, answer:, additional_properties: nil) # @return [AssemblyAI::Lemur::LemurQuestionAnswer] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - question = struct["question"] - answer = struct["answer"] + parsed_json = JSON.parse(json_object) + question = parsed_json["question"] + answer = parsed_json["answer"] new( question: question, answer: answer, diff --git a/lib/assemblyai/lemur/types/lemur_question_answer_response.rb b/lib/assemblyai/lemur/types/lemur_question_answer_response.rb index e0e9e0f..373f99e 100644 --- a/lib/assemblyai/lemur/types/lemur_question_answer_response.rb +++ b/lib/assemblyai/lemur/types/lemur_question_answer_response.rb @@ -42,11 +42,11 @@ def initialize(response:, request_id:, usage:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - response = parsed_json["response"]&.map do |v| - v = v.to_json - AssemblyAI::Lemur::LemurQuestionAnswer.from_json(json_object: v) + response = parsed_json["response"]&.map do |item| + item = item.to_json + AssemblyAI::Lemur::LemurQuestionAnswer.from_json(json_object: item) end - request_id = struct["request_id"] + request_id = parsed_json["request_id"] if parsed_json["usage"].nil? usage = nil else diff --git a/lib/assemblyai/lemur/types/lemur_question_context.rb b/lib/assemblyai/lemur/types/lemur_question_context.rb index c32c92b..8d22c15 100644 --- a/lib/assemblyai/lemur/types/lemur_question_context.rb +++ b/lib/assemblyai/lemur/types/lemur_question_context.rb @@ -15,7 +15,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.") - return json_object unless json_object.nil? + return struct unless struct.nil? return nil rescue StandardError @@ -23,7 +23,7 @@ def self.from_json(json_object:) end begin struct.is_a?(Hash) != false || raise("Passed value for field struct is not the expected type, validation failed.") - return json_object unless json_object.nil? + return struct unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/lemur/types/lemur_response.rb b/lib/assemblyai/lemur/types/lemur_response.rb index 86b188a..d7498c7 100644 --- a/lib/assemblyai/lemur/types/lemur_response.rb +++ b/lib/assemblyai/lemur/types/lemur_response.rb @@ -15,7 +15,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin AssemblyAI::Lemur::LemurStringResponse.validate_raw(obj: struct) - return AssemblyAI::Lemur::LemurStringResponse.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Lemur::LemurStringResponse.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -23,9 +23,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Lemur::LemurQuestionAnswerResponse.validate_raw(obj: struct) - unless json_object.nil? - return AssemblyAI::Lemur::LemurQuestionAnswerResponse.from_json(json_object: json_object) - end + return AssemblyAI::Lemur::LemurQuestionAnswerResponse.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/lemur/types/lemur_string_response.rb b/lib/assemblyai/lemur/types/lemur_string_response.rb index 1d70afd..738ede7 100644 --- a/lib/assemblyai/lemur/types/lemur_string_response.rb +++ b/lib/assemblyai/lemur/types/lemur_string_response.rb @@ -41,8 +41,8 @@ def initialize(response:, request_id:, usage:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - response = struct["response"] - request_id = struct["request_id"] + response = parsed_json["response"] + request_id = parsed_json["request_id"] if parsed_json["usage"].nil? usage = nil else diff --git a/lib/assemblyai/lemur/types/lemur_summary_response.rb b/lib/assemblyai/lemur/types/lemur_summary_response.rb index 14a758f..8401f8f 100644 --- a/lib/assemblyai/lemur/types/lemur_summary_response.rb +++ b/lib/assemblyai/lemur/types/lemur_summary_response.rb @@ -41,8 +41,8 @@ def initialize(response:, request_id:, usage:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - response = struct["response"] - request_id = struct["request_id"] + response = parsed_json["response"] + request_id = parsed_json["request_id"] if parsed_json["usage"].nil? usage = nil else diff --git a/lib/assemblyai/lemur/types/lemur_task_response.rb b/lib/assemblyai/lemur/types/lemur_task_response.rb index eb83d9f..27f3cb4 100644 --- a/lib/assemblyai/lemur/types/lemur_task_response.rb +++ b/lib/assemblyai/lemur/types/lemur_task_response.rb @@ -41,8 +41,8 @@ def initialize(response:, request_id:, usage:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - response = struct["response"] - request_id = struct["request_id"] + response = parsed_json["response"] + request_id = parsed_json["request_id"] if parsed_json["usage"].nil? usage = nil else diff --git a/lib/assemblyai/lemur/types/lemur_usage.rb b/lib/assemblyai/lemur/types/lemur_usage.rb index 99c6b80..1926de8 100644 --- a/lib/assemblyai/lemur/types/lemur_usage.rb +++ b/lib/assemblyai/lemur/types/lemur_usage.rb @@ -36,8 +36,9 @@ def initialize(input_tokens:, output_tokens:, additional_properties: nil) # @return [AssemblyAI::Lemur::LemurUsage] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - input_tokens = struct["input_tokens"] - output_tokens = struct["output_tokens"] + parsed_json = JSON.parse(json_object) + input_tokens = parsed_json["input_tokens"] + output_tokens = parsed_json["output_tokens"] new( input_tokens: input_tokens, output_tokens: output_tokens, diff --git a/lib/assemblyai/lemur/types/purge_lemur_request_data_response.rb b/lib/assemblyai/lemur/types/purge_lemur_request_data_response.rb index 6ec934c..d20bef1 100644 --- a/lib/assemblyai/lemur/types/purge_lemur_request_data_response.rb +++ b/lib/assemblyai/lemur/types/purge_lemur_request_data_response.rb @@ -39,9 +39,10 @@ def initialize(request_id:, request_id_to_purge:, deleted:, additional_propertie # @return [AssemblyAI::Lemur::PurgeLemurRequestDataResponse] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - request_id = struct["request_id"] - request_id_to_purge = struct["request_id_to_purge"] - deleted = struct["deleted"] + parsed_json = JSON.parse(json_object) + request_id = parsed_json["request_id"] + request_id_to_purge = parsed_json["request_id_to_purge"] + deleted = parsed_json["deleted"] new( request_id: request_id, request_id_to_purge: request_id_to_purge, diff --git a/lib/assemblyai/realtime/client.rb b/lib/assemblyai/realtime/client.rb index 8860b56..a4b8093 100644 --- a/lib/assemblyai/realtime/client.rb +++ b/lib/assemblyai/realtime/client.rb @@ -22,8 +22,8 @@ def initialize(request_client:) # @return [AssemblyAI::Realtime::RealtimeTemporaryTokenResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.realtime.create_temporary_token(expires_in: 480) @@ -31,7 +31,14 @@ def create_temporary_token(expires_in:, request_options: nil) response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), expires_in: expires_in }.compact req.url "#{@request_client.get_url(request_options: request_options)}/v2/realtime/token" end @@ -56,8 +63,8 @@ def initialize(request_client:) # @return [AssemblyAI::Realtime::RealtimeTemporaryTokenResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.realtime.create_temporary_token(expires_in: 480) @@ -66,7 +73,14 @@ def create_temporary_token(expires_in:, request_options: nil) response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), expires_in: expires_in }.compact req.url "#{@request_client.get_url(request_options: request_options)}/v2/realtime/token" end diff --git a/lib/assemblyai/realtime/types/configure_end_utterance_silence_threshold.rb b/lib/assemblyai/realtime/types/configure_end_utterance_silence_threshold.rb index 15832e7..af11668 100644 --- a/lib/assemblyai/realtime/types/configure_end_utterance_silence_threshold.rb +++ b/lib/assemblyai/realtime/types/configure_end_utterance_silence_threshold.rb @@ -34,7 +34,8 @@ def initialize(end_utterance_silence_threshold:, additional_properties: nil) # @return [AssemblyAI::Realtime::ConfigureEndUtteranceSilenceThreshold] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - end_utterance_silence_threshold = struct["end_utterance_silence_threshold"] + parsed_json = JSON.parse(json_object) + end_utterance_silence_threshold = parsed_json["end_utterance_silence_threshold"] new(end_utterance_silence_threshold: end_utterance_silence_threshold, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/final_transcript.rb b/lib/assemblyai/realtime/types/final_transcript.rb index 7a74288..791429b 100644 --- a/lib/assemblyai/realtime/types/final_transcript.rb +++ b/lib/assemblyai/realtime/types/final_transcript.rb @@ -83,16 +83,16 @@ def initialize(message_type:, punctuated:, text_formatted:, audio_start:, audio_ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - message_type = struct["message_type"] - punctuated = struct["punctuated"] - text_formatted = struct["text_formatted"] - audio_start = struct["audio_start"] - audio_end = struct["audio_end"] - confidence = struct["confidence"] - text = struct["text"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Realtime::Word.from_json(json_object: v) + message_type = parsed_json["message_type"] + punctuated = parsed_json["punctuated"] + text_formatted = parsed_json["text_formatted"] + audio_start = parsed_json["audio_start"] + audio_end = parsed_json["audio_end"] + confidence = parsed_json["confidence"] + text = parsed_json["text"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Realtime::Word.from_json(json_object: item) end created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?) new( diff --git a/lib/assemblyai/realtime/types/force_end_utterance.rb b/lib/assemblyai/realtime/types/force_end_utterance.rb index ab7522c..76420bc 100644 --- a/lib/assemblyai/realtime/types/force_end_utterance.rb +++ b/lib/assemblyai/realtime/types/force_end_utterance.rb @@ -32,7 +32,8 @@ def initialize(force_end_utterance:, additional_properties: nil) # @return [AssemblyAI::Realtime::ForceEndUtterance] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - force_end_utterance = struct["force_end_utterance"] + parsed_json = JSON.parse(json_object) + force_end_utterance = parsed_json["force_end_utterance"] new(force_end_utterance: force_end_utterance, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/partial_transcript.rb b/lib/assemblyai/realtime/types/partial_transcript.rb index d546842..76eaac1 100644 --- a/lib/assemblyai/realtime/types/partial_transcript.rb +++ b/lib/assemblyai/realtime/types/partial_transcript.rb @@ -73,14 +73,14 @@ def initialize(message_type:, audio_start:, audio_end:, confidence:, text:, word def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - message_type = struct["message_type"] - audio_start = struct["audio_start"] - audio_end = struct["audio_end"] - confidence = struct["confidence"] - text = struct["text"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Realtime::Word.from_json(json_object: v) + message_type = parsed_json["message_type"] + audio_start = parsed_json["audio_start"] + audio_end = parsed_json["audio_end"] + confidence = parsed_json["confidence"] + text = parsed_json["text"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Realtime::Word.from_json(json_object: item) end created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?) new( diff --git a/lib/assemblyai/realtime/types/realtime_base_message.rb b/lib/assemblyai/realtime/types/realtime_base_message.rb index 2f66b49..2db38a3 100644 --- a/lib/assemblyai/realtime/types/realtime_base_message.rb +++ b/lib/assemblyai/realtime/types/realtime_base_message.rb @@ -32,7 +32,8 @@ def initialize(message_type:, additional_properties: nil) # @return [AssemblyAI::Realtime::RealtimeBaseMessage] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - message_type = struct["message_type"] + parsed_json = JSON.parse(json_object) + message_type = parsed_json["message_type"] new(message_type: message_type, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/realtime_base_transcript.rb b/lib/assemblyai/realtime/types/realtime_base_transcript.rb index c52dd01..013d7ca 100644 --- a/lib/assemblyai/realtime/types/realtime_base_transcript.rb +++ b/lib/assemblyai/realtime/types/realtime_base_transcript.rb @@ -67,13 +67,13 @@ def initialize(audio_start:, audio_end:, confidence:, text:, words:, created:, a def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - audio_start = struct["audio_start"] - audio_end = struct["audio_end"] - confidence = struct["confidence"] - text = struct["text"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Realtime::Word.from_json(json_object: v) + audio_start = parsed_json["audio_start"] + audio_end = parsed_json["audio_end"] + confidence = parsed_json["confidence"] + text = parsed_json["text"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Realtime::Word.from_json(json_object: item) end created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?) new( diff --git a/lib/assemblyai/realtime/types/realtime_error.rb b/lib/assemblyai/realtime/types/realtime_error.rb index 548d6c9..f60e9a4 100644 --- a/lib/assemblyai/realtime/types/realtime_error.rb +++ b/lib/assemblyai/realtime/types/realtime_error.rb @@ -31,7 +31,8 @@ def initialize(error:, additional_properties: nil) # @return [AssemblyAI::Realtime::RealtimeError] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - error = struct["error"] + parsed_json = JSON.parse(json_object) + error = parsed_json["error"] new(error: error, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/realtime_message.rb b/lib/assemblyai/realtime/types/realtime_message.rb index e9e98c4..a65da05 100644 --- a/lib/assemblyai/realtime/types/realtime_message.rb +++ b/lib/assemblyai/realtime/types/realtime_message.rb @@ -19,7 +19,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin AssemblyAI::Realtime::SessionBegins.validate_raw(obj: struct) - return AssemblyAI::Realtime::SessionBegins.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::SessionBegins.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -27,7 +27,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::PartialTranscript.validate_raw(obj: struct) - return AssemblyAI::Realtime::PartialTranscript.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::PartialTranscript.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -35,7 +35,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::FinalTranscript.validate_raw(obj: struct) - return AssemblyAI::Realtime::FinalTranscript.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::FinalTranscript.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -43,7 +43,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::SessionInformation.validate_raw(obj: struct) - return AssemblyAI::Realtime::SessionInformation.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::SessionInformation.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -51,7 +51,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::SessionTerminated.validate_raw(obj: struct) - return AssemblyAI::Realtime::SessionTerminated.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::SessionTerminated.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -59,7 +59,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::RealtimeError.validate_raw(obj: struct) - return AssemblyAI::Realtime::RealtimeError.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::RealtimeError.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/realtime/types/realtime_temporary_token_response.rb b/lib/assemblyai/realtime/types/realtime_temporary_token_response.rb index 0ba3961..6808783 100644 --- a/lib/assemblyai/realtime/types/realtime_temporary_token_response.rb +++ b/lib/assemblyai/realtime/types/realtime_temporary_token_response.rb @@ -31,7 +31,8 @@ def initialize(token:, additional_properties: nil) # @return [AssemblyAI::Realtime::RealtimeTemporaryTokenResponse] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - token = struct["token"] + parsed_json = JSON.parse(json_object) + token = parsed_json["token"] new(token: token, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/realtime_transcript.rb b/lib/assemblyai/realtime/types/realtime_transcript.rb index e3304c5..c4e7ad9 100644 --- a/lib/assemblyai/realtime/types/realtime_transcript.rb +++ b/lib/assemblyai/realtime/types/realtime_transcript.rb @@ -15,7 +15,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin AssemblyAI::Realtime::PartialTranscript.validate_raw(obj: struct) - return AssemblyAI::Realtime::PartialTranscript.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::PartialTranscript.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -23,7 +23,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::FinalTranscript.validate_raw(obj: struct) - return AssemblyAI::Realtime::FinalTranscript.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::FinalTranscript.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/realtime/types/receive_message.rb b/lib/assemblyai/realtime/types/receive_message.rb index 1bc7988..f8787fc 100644 --- a/lib/assemblyai/realtime/types/receive_message.rb +++ b/lib/assemblyai/realtime/types/receive_message.rb @@ -20,7 +20,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin AssemblyAI::Realtime::SessionBegins.validate_raw(obj: struct) - return AssemblyAI::Realtime::SessionBegins.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::SessionBegins.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -28,7 +28,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::PartialTranscript.validate_raw(obj: struct) - return AssemblyAI::Realtime::PartialTranscript.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::PartialTranscript.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -36,7 +36,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::FinalTranscript.validate_raw(obj: struct) - return AssemblyAI::Realtime::FinalTranscript.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::FinalTranscript.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -44,7 +44,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::SessionInformation.validate_raw(obj: struct) - return AssemblyAI::Realtime::SessionInformation.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::SessionInformation.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -52,7 +52,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::SessionTerminated.validate_raw(obj: struct) - return AssemblyAI::Realtime::SessionTerminated.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::SessionTerminated.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -60,7 +60,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::RealtimeError.validate_raw(obj: struct) - return AssemblyAI::Realtime::RealtimeError.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::RealtimeError.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/realtime/types/send_message.rb b/lib/assemblyai/realtime/types/send_message.rb index e47a9ef..e390059 100644 --- a/lib/assemblyai/realtime/types/send_message.rb +++ b/lib/assemblyai/realtime/types/send_message.rb @@ -17,7 +17,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.") - return json_object unless json_object.nil? + return struct unless struct.nil? return nil rescue StandardError @@ -25,7 +25,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::TerminateSession.validate_raw(obj: struct) - return AssemblyAI::Realtime::TerminateSession.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::TerminateSession.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -33,7 +33,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::ForceEndUtterance.validate_raw(obj: struct) - return AssemblyAI::Realtime::ForceEndUtterance.from_json(json_object: json_object) unless json_object.nil? + return AssemblyAI::Realtime::ForceEndUtterance.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -41,8 +41,8 @@ def self.from_json(json_object:) end begin AssemblyAI::Realtime::ConfigureEndUtteranceSilenceThreshold.validate_raw(obj: struct) - unless json_object.nil? - return AssemblyAI::Realtime::ConfigureEndUtteranceSilenceThreshold.from_json(json_object: json_object) + unless struct.nil? + return AssemblyAI::Realtime::ConfigureEndUtteranceSilenceThreshold.from_json(json_object: struct) end return nil diff --git a/lib/assemblyai/realtime/types/session_begins.rb b/lib/assemblyai/realtime/types/session_begins.rb index 07cc1f1..d195484 100644 --- a/lib/assemblyai/realtime/types/session_begins.rb +++ b/lib/assemblyai/realtime/types/session_begins.rb @@ -41,8 +41,8 @@ def initialize(message_type:, session_id:, expires_at:, additional_properties: n def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - message_type = struct["message_type"] - session_id = struct["session_id"] + message_type = parsed_json["message_type"] + session_id = parsed_json["session_id"] expires_at = (DateTime.parse(parsed_json["expires_at"]) unless parsed_json["expires_at"].nil?) new( message_type: message_type, diff --git a/lib/assemblyai/realtime/types/session_information.rb b/lib/assemblyai/realtime/types/session_information.rb index 3d6bfd8..10b1f18 100644 --- a/lib/assemblyai/realtime/types/session_information.rb +++ b/lib/assemblyai/realtime/types/session_information.rb @@ -38,8 +38,9 @@ def initialize(message_type:, audio_duration_seconds:, additional_properties: ni # @return [AssemblyAI::Realtime::SessionInformation] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - message_type = struct["message_type"] - audio_duration_seconds = struct["audio_duration_seconds"] + parsed_json = JSON.parse(json_object) + message_type = parsed_json["message_type"] + audio_duration_seconds = parsed_json["audio_duration_seconds"] new( message_type: message_type, audio_duration_seconds: audio_duration_seconds, diff --git a/lib/assemblyai/realtime/types/session_terminated.rb b/lib/assemblyai/realtime/types/session_terminated.rb index 954e55d..29c3738 100644 --- a/lib/assemblyai/realtime/types/session_terminated.rb +++ b/lib/assemblyai/realtime/types/session_terminated.rb @@ -31,7 +31,8 @@ def initialize(message_type:, additional_properties: nil) # @return [AssemblyAI::Realtime::SessionTerminated] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - message_type = struct["message_type"] + parsed_json = JSON.parse(json_object) + message_type = parsed_json["message_type"] new(message_type: message_type, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/terminate_session.rb b/lib/assemblyai/realtime/types/terminate_session.rb index 881338f..63b9dad 100644 --- a/lib/assemblyai/realtime/types/terminate_session.rb +++ b/lib/assemblyai/realtime/types/terminate_session.rb @@ -31,7 +31,8 @@ def initialize(terminate_session:, additional_properties: nil) # @return [AssemblyAI::Realtime::TerminateSession] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - terminate_session = struct["terminate_session"] + parsed_json = JSON.parse(json_object) + terminate_session = parsed_json["terminate_session"] new(terminate_session: terminate_session, additional_properties: struct) end diff --git a/lib/assemblyai/realtime/types/word.rb b/lib/assemblyai/realtime/types/word.rb index f1e5dd0..30e555e 100644 --- a/lib/assemblyai/realtime/types/word.rb +++ b/lib/assemblyai/realtime/types/word.rb @@ -43,10 +43,11 @@ def initialize(start:, end_:, confidence:, text:, additional_properties: nil) # @return [AssemblyAI::Realtime::Word] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - start = struct["start"] - end_ = struct["end"] - confidence = struct["confidence"] - text = struct["text"] + parsed_json = JSON.parse(json_object) + start = parsed_json["start"] + end_ = parsed_json["end"] + confidence = parsed_json["confidence"] + text = parsed_json["text"] new( start: start, end_: end_, diff --git a/lib/assemblyai/transcripts/client.rb b/lib/assemblyai/transcripts/client.rb index 0bbab9c..04c9d02 100644 --- a/lib/assemblyai/transcripts/client.rb +++ b/lib/assemblyai/transcripts/client.rb @@ -45,8 +45,8 @@ def initialize(request_client:) # @return [AssemblyAI::Transcripts::TranscriptList] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.list @@ -55,7 +55,11 @@ def list(limit: nil, status: nil, created_on: nil, before_id: nil, after_id: nil response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact req.params = { **(request_options&.additional_query_parameters || {}), "limit": limit, @@ -65,6 +69,9 @@ def list(limit: nil, status: nil, created_on: nil, before_id: nil, after_id: nil "after_id": after_id, "throttled_only": throttled_only }.compact + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript" end AssemblyAI::Transcripts::TranscriptList.from_json(json_object: response.body) @@ -156,8 +163,8 @@ def list(limit: nil, status: nil, created_on: nil, before_id: nil, after_id: nil # @return [AssemblyAI::Transcripts::Transcript] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.submit(audio_url: "https://assembly.ai/wildfires.mp3") @@ -166,7 +173,14 @@ def submit(audio_url:, language_code: nil, language_detection: nil, language_con response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), language_code: language_code, @@ -222,8 +236,8 @@ def submit(audio_url:, language_code: nil, language_detection: nil, language_con # @return [AssemblyAI::Transcripts::Transcript] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get(transcript_id: "transcript_id") @@ -231,7 +245,17 @@ def get(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}" end AssemblyAI::Transcripts::Transcript.from_json(json_object: response.body) @@ -244,8 +268,8 @@ def get(transcript_id:, request_options: nil) # @return [AssemblyAI::Transcripts::Transcript] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.delete(transcript_id: "{transcript_id}") @@ -253,7 +277,17 @@ def delete(transcript_id:, request_options: nil) response = @request_client.conn.delete do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}" end AssemblyAI::Transcripts::Transcript.from_json(json_object: response.body) @@ -267,15 +301,29 @@ def delete(transcript_id:, request_options: nil) # @param chars_per_caption [Integer] The maximum number of characters per caption # @param request_options [AssemblyAI::RequestOptions] # @return [String] + # @example + # api = AssemblyAI::Client.new( + # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, + # api_key: "YOUR_API_KEY" + # ) + # api.transcripts.get_subtitles(transcript_id: "transcript_id", subtitle_format: SRT) def get_subtitles(transcript_id:, subtitle_format:, chars_per_caption: nil, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact req.params = { **(request_options&.additional_query_parameters || {}), "chars_per_caption": chars_per_caption }.compact + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/#{subtitle_format}" end response.body @@ -290,8 +338,8 @@ def get_subtitles(transcript_id:, subtitle_format:, chars_per_caption: nil, requ # @return [AssemblyAI::Transcripts::SentencesResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get_sentences(transcript_id: "transcript_id") @@ -299,7 +347,17 @@ def get_sentences(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/sentences" end AssemblyAI::Transcripts::SentencesResponse.from_json(json_object: response.body) @@ -314,8 +372,8 @@ def get_sentences(transcript_id:, request_options: nil) # @return [AssemblyAI::Transcripts::ParagraphsResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get_paragraphs(transcript_id: "transcript_id") @@ -323,7 +381,17 @@ def get_paragraphs(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/paragraphs" end AssemblyAI::Transcripts::ParagraphsResponse.from_json(json_object: response.body) @@ -336,12 +404,26 @@ def get_paragraphs(transcript_id:, request_options: nil) # @param words [String] Keywords to search for # @param request_options [AssemblyAI::RequestOptions] # @return [AssemblyAI::Transcripts::WordSearchResponse] + # @example + # api = AssemblyAI::Client.new( + # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, + # api_key: "YOUR_API_KEY" + # ) + # api.transcripts.word_search(transcript_id: "transcript_id") def word_search(transcript_id:, words: nil, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact req.params = { **(request_options&.additional_query_parameters || {}), "words": words }.compact + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/word-search" end AssemblyAI::Transcripts::WordSearchResponse.from_json(json_object: response.body) @@ -355,8 +437,8 @@ def word_search(transcript_id:, words: nil, request_options: nil) # @return [AssemblyAI::Transcripts::RedactedAudioResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get_redacted_audio(transcript_id: "transcript_id") @@ -364,7 +446,17 @@ def get_redacted_audio(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/redacted-audio" end AssemblyAI::Transcripts::RedactedAudioResponse.from_json(json_object: response.body) @@ -395,8 +487,8 @@ def initialize(request_client:) # @return [AssemblyAI::Transcripts::TranscriptList] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.list @@ -406,7 +498,11 @@ def list(limit: nil, status: nil, created_on: nil, before_id: nil, after_id: nil response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact req.params = { **(request_options&.additional_query_parameters || {}), "limit": limit, @@ -416,6 +512,9 @@ def list(limit: nil, status: nil, created_on: nil, before_id: nil, after_id: nil "after_id": after_id, "throttled_only": throttled_only }.compact + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript" end AssemblyAI::Transcripts::TranscriptList.from_json(json_object: response.body) @@ -508,8 +607,8 @@ def list(limit: nil, status: nil, created_on: nil, before_id: nil, after_id: nil # @return [AssemblyAI::Transcripts::Transcript] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.submit(audio_url: "https://assembly.ai/wildfires.mp3") @@ -519,7 +618,14 @@ def submit(audio_url:, language_code: nil, language_detection: nil, language_con response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end req.body = { **(request_options&.additional_body_parameters || {}), language_code: language_code, @@ -576,8 +682,8 @@ def submit(audio_url:, language_code: nil, language_detection: nil, language_con # @return [AssemblyAI::Transcripts::Transcript] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get(transcript_id: "transcript_id") @@ -586,7 +692,17 @@ def get(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}" end AssemblyAI::Transcripts::Transcript.from_json(json_object: response.body) @@ -600,8 +716,8 @@ def get(transcript_id:, request_options: nil) # @return [AssemblyAI::Transcripts::Transcript] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.delete(transcript_id: "{transcript_id}") @@ -610,7 +726,17 @@ def delete(transcript_id:, request_options: nil) response = @request_client.conn.delete do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}" end AssemblyAI::Transcripts::Transcript.from_json(json_object: response.body) @@ -625,16 +751,30 @@ def delete(transcript_id:, request_options: nil) # @param chars_per_caption [Integer] The maximum number of characters per caption # @param request_options [AssemblyAI::RequestOptions] # @return [String] + # @example + # api = AssemblyAI::Client.new( + # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, + # api_key: "YOUR_API_KEY" + # ) + # api.transcripts.get_subtitles(transcript_id: "transcript_id", subtitle_format: SRT) def get_subtitles(transcript_id:, subtitle_format:, chars_per_caption: nil, request_options: nil) Async do response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact req.params = { **(request_options&.additional_query_parameters || {}), "chars_per_caption": chars_per_caption }.compact + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/#{subtitle_format}" end response.body @@ -650,8 +790,8 @@ def get_subtitles(transcript_id:, subtitle_format:, chars_per_caption: nil, requ # @return [AssemblyAI::Transcripts::SentencesResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get_sentences(transcript_id: "transcript_id") @@ -660,7 +800,17 @@ def get_sentences(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/sentences" end AssemblyAI::Transcripts::SentencesResponse.from_json(json_object: response.body) @@ -676,8 +826,8 @@ def get_sentences(transcript_id:, request_options: nil) # @return [AssemblyAI::Transcripts::ParagraphsResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get_paragraphs(transcript_id: "transcript_id") @@ -686,7 +836,17 @@ def get_paragraphs(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/paragraphs" end AssemblyAI::Transcripts::ParagraphsResponse.from_json(json_object: response.body) @@ -700,13 +860,27 @@ def get_paragraphs(transcript_id:, request_options: nil) # @param words [String] Keywords to search for # @param request_options [AssemblyAI::RequestOptions] # @return [AssemblyAI::Transcripts::WordSearchResponse] + # @example + # api = AssemblyAI::Client.new( + # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, + # api_key: "YOUR_API_KEY" + # ) + # api.transcripts.word_search(transcript_id: "transcript_id") def word_search(transcript_id:, words: nil, request_options: nil) Async do response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact req.params = { **(request_options&.additional_query_parameters || {}), "words": words }.compact + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/word-search" end AssemblyAI::Transcripts::WordSearchResponse.from_json(json_object: response.body) @@ -721,8 +895,8 @@ def word_search(transcript_id:, words: nil, request_options: nil) # @return [AssemblyAI::Transcripts::RedactedAudioResponse] # @example # api = AssemblyAI::Client.new( - # environment: AssemblyAI::Environment::DEFAULT, # base_url: "https://api.example.com", + # environment: AssemblyAI::Environment::DEFAULT, # api_key: "YOUR_API_KEY" # ) # api.transcripts.get_redacted_audio(transcript_id: "transcript_id") @@ -731,7 +905,17 @@ def get_redacted_audio(transcript_id:, request_options: nil) response = @request_client.conn.get do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil? - req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact + req.headers = { + **(req.headers || {}), + **@request_client.get_headers, + **(request_options&.additional_headers || {}) + }.compact + unless request_options.nil? || request_options&.additional_query_parameters.nil? + req.params = { **(request_options&.additional_query_parameters || {}) }.compact + end + unless request_options.nil? || request_options&.additional_body_parameters.nil? + req.body = { **(request_options&.additional_body_parameters || {}) }.compact + end req.url "#{@request_client.get_url(request_options: request_options)}/v2/transcript/#{transcript_id}/redacted-audio" end AssemblyAI::Transcripts::RedactedAudioResponse.from_json(json_object: response.body) diff --git a/lib/assemblyai/transcripts/types/auto_highlight_result.rb b/lib/assemblyai/transcripts/types/auto_highlight_result.rb index 3b15341..1633828 100644 --- a/lib/assemblyai/transcripts/types/auto_highlight_result.rb +++ b/lib/assemblyai/transcripts/types/auto_highlight_result.rb @@ -47,12 +47,12 @@ def initialize(count:, rank:, text:, timestamps:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - count = struct["count"] - rank = struct["rank"] - text = struct["text"] - timestamps = parsed_json["timestamps"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::Timestamp.from_json(json_object: v) + count = parsed_json["count"] + rank = parsed_json["rank"] + text = parsed_json["text"] + timestamps = parsed_json["timestamps"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::Timestamp.from_json(json_object: item) end new( count: count, diff --git a/lib/assemblyai/transcripts/types/auto_highlights_result.rb b/lib/assemblyai/transcripts/types/auto_highlights_result.rb index d10fbef..6de6b37 100644 --- a/lib/assemblyai/transcripts/types/auto_highlights_result.rb +++ b/lib/assemblyai/transcripts/types/auto_highlights_result.rb @@ -43,10 +43,10 @@ def initialize(status:, results:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - status = struct["status"] - results = parsed_json["results"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::AutoHighlightResult.from_json(json_object: v) + status = parsed_json["status"] + results = parsed_json["results"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::AutoHighlightResult.from_json(json_object: item) end new( status: status, diff --git a/lib/assemblyai/transcripts/types/chapter.rb b/lib/assemblyai/transcripts/types/chapter.rb index df88bd5..cb832a8 100644 --- a/lib/assemblyai/transcripts/types/chapter.rb +++ b/lib/assemblyai/transcripts/types/chapter.rb @@ -48,11 +48,12 @@ def initialize(gist:, headline:, summary:, start:, end_:, additional_properties: # @return [AssemblyAI::Transcripts::Chapter] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - gist = struct["gist"] - headline = struct["headline"] - summary = struct["summary"] - start = struct["start"] - end_ = struct["end"] + parsed_json = JSON.parse(json_object) + gist = parsed_json["gist"] + headline = parsed_json["headline"] + summary = parsed_json["summary"] + start = parsed_json["start"] + end_ = parsed_json["end"] new( gist: gist, headline: headline, diff --git a/lib/assemblyai/transcripts/types/content_safety_label.rb b/lib/assemblyai/transcripts/types/content_safety_label.rb index 004004b..144bfb7 100644 --- a/lib/assemblyai/transcripts/types/content_safety_label.rb +++ b/lib/assemblyai/transcripts/types/content_safety_label.rb @@ -39,9 +39,10 @@ def initialize(label:, confidence:, severity:, additional_properties: nil) # @return [AssemblyAI::Transcripts::ContentSafetyLabel] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - label = struct["label"] - confidence = struct["confidence"] - severity = struct["severity"] + parsed_json = JSON.parse(json_object) + label = parsed_json["label"] + confidence = parsed_json["confidence"] + severity = parsed_json["severity"] new( label: label, confidence: confidence, diff --git a/lib/assemblyai/transcripts/types/content_safety_label_result.rb b/lib/assemblyai/transcripts/types/content_safety_label_result.rb index d4c7d58..b956175 100644 --- a/lib/assemblyai/transcripts/types/content_safety_label_result.rb +++ b/lib/assemblyai/transcripts/types/content_safety_label_result.rb @@ -58,13 +58,13 @@ def initialize(text:, labels:, sentences_idx_start:, sentences_idx_end:, timesta def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - text = struct["text"] - labels = parsed_json["labels"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::ContentSafetyLabel.from_json(json_object: v) + text = parsed_json["text"] + labels = parsed_json["labels"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::ContentSafetyLabel.from_json(json_object: item) end - sentences_idx_start = struct["sentences_idx_start"] - sentences_idx_end = struct["sentences_idx_end"] + sentences_idx_start = parsed_json["sentences_idx_start"] + sentences_idx_end = parsed_json["sentences_idx_end"] if parsed_json["timestamp"].nil? timestamp = nil else diff --git a/lib/assemblyai/transcripts/types/content_safety_labels_result.rb b/lib/assemblyai/transcripts/types/content_safety_labels_result.rb index 2cd2915..05d7b4c 100644 --- a/lib/assemblyai/transcripts/types/content_safety_labels_result.rb +++ b/lib/assemblyai/transcripts/types/content_safety_labels_result.rb @@ -57,15 +57,15 @@ def initialize(status:, results:, summary:, severity_score_summary:, additional_ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - status = struct["status"] - results = parsed_json["results"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::ContentSafetyLabelResult.from_json(json_object: v) + status = parsed_json["status"] + results = parsed_json["results"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::ContentSafetyLabelResult.from_json(json_object: item) end - summary = struct["summary"] - severity_score_summary = parsed_json["severity_score_summary"]&.transform_values do |v| - v = v.to_json - AssemblyAI::Transcripts::SeverityScoreSummary.from_json(json_object: v) + summary = parsed_json["summary"] + severity_score_summary = parsed_json["severity_score_summary"]&.transform_values do |value| + value = value.to_json + AssemblyAI::Transcripts::SeverityScoreSummary.from_json(json_object: value) end new( status: status, diff --git a/lib/assemblyai/transcripts/types/entity.rb b/lib/assemblyai/transcripts/types/entity.rb index 66b0474..c88fd5f 100644 --- a/lib/assemblyai/transcripts/types/entity.rb +++ b/lib/assemblyai/transcripts/types/entity.rb @@ -47,10 +47,11 @@ def initialize(entity_type:, text:, start:, end_:, additional_properties: nil) # @return [AssemblyAI::Transcripts::Entity] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - entity_type = struct["entity_type"] - text = struct["text"] - start = struct["start"] - end_ = struct["end"] + parsed_json = JSON.parse(json_object) + entity_type = parsed_json["entity_type"] + text = parsed_json["text"] + start = parsed_json["start"] + end_ = parsed_json["end"] new( entity_type: entity_type, text: text, diff --git a/lib/assemblyai/transcripts/types/page_details.rb b/lib/assemblyai/transcripts/types/page_details.rb index 2f496b4..a93d9c3 100644 --- a/lib/assemblyai/transcripts/types/page_details.rb +++ b/lib/assemblyai/transcripts/types/page_details.rb @@ -61,11 +61,12 @@ def initialize(limit:, result_count:, current_url:, prev_url: OMIT, next_url: OM # @return [AssemblyAI::Transcripts::PageDetails] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - limit = struct["limit"] - result_count = struct["result_count"] - current_url = struct["current_url"] - prev_url = struct["prev_url"] - next_url = struct["next_url"] + parsed_json = JSON.parse(json_object) + limit = parsed_json["limit"] + result_count = parsed_json["result_count"] + current_url = parsed_json["current_url"] + prev_url = parsed_json["prev_url"] + next_url = parsed_json["next_url"] new( limit: limit, result_count: result_count, diff --git a/lib/assemblyai/transcripts/types/paragraphs_response.rb b/lib/assemblyai/transcripts/types/paragraphs_response.rb index 283e5d1..fee06b6 100644 --- a/lib/assemblyai/transcripts/types/paragraphs_response.rb +++ b/lib/assemblyai/transcripts/types/paragraphs_response.rb @@ -45,12 +45,12 @@ def initialize(id:, confidence:, audio_duration:, paragraphs:, additional_proper def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - id = struct["id"] - confidence = struct["confidence"] - audio_duration = struct["audio_duration"] - paragraphs = parsed_json["paragraphs"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptParagraph.from_json(json_object: v) + id = parsed_json["id"] + confidence = parsed_json["confidence"] + audio_duration = parsed_json["audio_duration"] + paragraphs = parsed_json["paragraphs"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptParagraph.from_json(json_object: item) end new( id: id, diff --git a/lib/assemblyai/transcripts/types/redacted_audio_response.rb b/lib/assemblyai/transcripts/types/redacted_audio_response.rb index a952145..6e7419e 100644 --- a/lib/assemblyai/transcripts/types/redacted_audio_response.rb +++ b/lib/assemblyai/transcripts/types/redacted_audio_response.rb @@ -36,8 +36,9 @@ def initialize(status:, redacted_audio_url:, additional_properties: nil) # @return [AssemblyAI::Transcripts::RedactedAudioResponse] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - status = struct["status"] - redacted_audio_url = struct["redacted_audio_url"] + parsed_json = JSON.parse(json_object) + status = parsed_json["status"] + redacted_audio_url = parsed_json["redacted_audio_url"] new( status: status, redacted_audio_url: redacted_audio_url, diff --git a/lib/assemblyai/transcripts/types/sentences_response.rb b/lib/assemblyai/transcripts/types/sentences_response.rb index 93fab41..f138eb1 100644 --- a/lib/assemblyai/transcripts/types/sentences_response.rb +++ b/lib/assemblyai/transcripts/types/sentences_response.rb @@ -45,12 +45,12 @@ def initialize(id:, confidence:, audio_duration:, sentences:, additional_propert def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - id = struct["id"] - confidence = struct["confidence"] - audio_duration = struct["audio_duration"] - sentences = parsed_json["sentences"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptSentence.from_json(json_object: v) + id = parsed_json["id"] + confidence = parsed_json["confidence"] + audio_duration = parsed_json["audio_duration"] + sentences = parsed_json["sentences"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptSentence.from_json(json_object: item) end new( id: id, diff --git a/lib/assemblyai/transcripts/types/sentiment_analysis_result.rb b/lib/assemblyai/transcripts/types/sentiment_analysis_result.rb index c6e7d7c..07cbf04 100644 --- a/lib/assemblyai/transcripts/types/sentiment_analysis_result.rb +++ b/lib/assemblyai/transcripts/types/sentiment_analysis_result.rb @@ -74,13 +74,14 @@ def initialize(text:, start:, end_:, sentiment:, confidence:, channel: OMIT, spe # @return [AssemblyAI::Transcripts::SentimentAnalysisResult] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - text = struct["text"] - start = struct["start"] - end_ = struct["end"] - sentiment = struct["sentiment"] - confidence = struct["confidence"] - channel = struct["channel"] - speaker = struct["speaker"] + parsed_json = JSON.parse(json_object) + text = parsed_json["text"] + start = parsed_json["start"] + end_ = parsed_json["end"] + sentiment = parsed_json["sentiment"] + confidence = parsed_json["confidence"] + channel = parsed_json["channel"] + speaker = parsed_json["speaker"] new( text: text, start: start, diff --git a/lib/assemblyai/transcripts/types/severity_score_summary.rb b/lib/assemblyai/transcripts/types/severity_score_summary.rb index 457d3a2..7ca254d 100644 --- a/lib/assemblyai/transcripts/types/severity_score_summary.rb +++ b/lib/assemblyai/transcripts/types/severity_score_summary.rb @@ -39,9 +39,10 @@ def initialize(low:, medium:, high:, additional_properties: nil) # @return [AssemblyAI::Transcripts::SeverityScoreSummary] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - low = struct["low"] - medium = struct["medium"] - high = struct["high"] + parsed_json = JSON.parse(json_object) + low = parsed_json["low"] + medium = parsed_json["medium"] + high = parsed_json["high"] new( low: low, medium: medium, diff --git a/lib/assemblyai/transcripts/types/timestamp.rb b/lib/assemblyai/transcripts/types/timestamp.rb index 85a1c9a..f79ed9b 100644 --- a/lib/assemblyai/transcripts/types/timestamp.rb +++ b/lib/assemblyai/transcripts/types/timestamp.rb @@ -36,8 +36,9 @@ def initialize(start:, end_:, additional_properties: nil) # @return [AssemblyAI::Transcripts::Timestamp] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - start = struct["start"] - end_ = struct["end"] + parsed_json = JSON.parse(json_object) + start = parsed_json["start"] + end_ = parsed_json["end"] new( start: start, end_: end_, diff --git a/lib/assemblyai/transcripts/types/topic_detection_model_result.rb b/lib/assemblyai/transcripts/types/topic_detection_model_result.rb index c4374d5..fc18e65 100644 --- a/lib/assemblyai/transcripts/types/topic_detection_model_result.rb +++ b/lib/assemblyai/transcripts/types/topic_detection_model_result.rb @@ -47,12 +47,12 @@ def initialize(status:, results:, summary:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - status = struct["status"] - results = parsed_json["results"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TopicDetectionResult.from_json(json_object: v) + status = parsed_json["status"] + results = parsed_json["results"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TopicDetectionResult.from_json(json_object: item) end - summary = struct["summary"] + summary = parsed_json["summary"] new( status: status, results: results, diff --git a/lib/assemblyai/transcripts/types/topic_detection_result.rb b/lib/assemblyai/transcripts/types/topic_detection_result.rb index 0ff11c8..fd500e3 100644 --- a/lib/assemblyai/transcripts/types/topic_detection_result.rb +++ b/lib/assemblyai/transcripts/types/topic_detection_result.rb @@ -45,10 +45,10 @@ def initialize(text:, labels: OMIT, timestamp: OMIT, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - text = struct["text"] - labels = parsed_json["labels"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TopicDetectionResultLabelsItem.from_json(json_object: v) + text = parsed_json["text"] + labels = parsed_json["labels"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TopicDetectionResultLabelsItem.from_json(json_object: item) end if parsed_json["timestamp"].nil? timestamp = nil diff --git a/lib/assemblyai/transcripts/types/topic_detection_result_labels_item.rb b/lib/assemblyai/transcripts/types/topic_detection_result_labels_item.rb index 67b98c9..714cf69 100644 --- a/lib/assemblyai/transcripts/types/topic_detection_result_labels_item.rb +++ b/lib/assemblyai/transcripts/types/topic_detection_result_labels_item.rb @@ -37,8 +37,9 @@ def initialize(relevance:, label:, additional_properties: nil) # @return [AssemblyAI::Transcripts::TopicDetectionResultLabelsItem] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - relevance = struct["relevance"] - label = struct["label"] + parsed_json = JSON.parse(json_object) + relevance = parsed_json["relevance"] + label = parsed_json["label"] new( relevance: relevance, label: label, diff --git a/lib/assemblyai/transcripts/types/transcript.rb b/lib/assemblyai/transcripts/types/transcript.rb index 832d6ba..9e5b5f5 100644 --- a/lib/assemblyai/transcripts/types/transcript.rb +++ b/lib/assemblyai/transcripts/types/transcript.rb @@ -54,11 +54,13 @@ class Transcript # recognition](https://www.assemblyai.com/docs/models/speech-recognition) for more # information. attr_reader :words - # @return [Array] When dual_channel or speaker_labels is enabled, a list of turn-by-turn utterance + # @return [Array] When multichannel or speaker_labels is enabled, a list of turn-by-turn utterance # objects. # See [Speaker - # diarization](https://www.assemblyai.com/docs/models/speaker-diarization) for - # more information. + # diarization](https://www.assemblyai.com/docs/speech-to-text/speaker-diarization) + # and [Multichannel + # ssemblyai.com/docs/speech-to-text/speech-recognition#multichannel-transcription) + # for more information. attr_reader :utterances # @return [Float] The confidence score for the transcript, between 0.0 (low confidence) and 1.0 # (high confidence) @@ -239,11 +241,13 @@ class Transcript # See [Speech # recognition](https://www.assemblyai.com/docs/models/speech-recognition) for more # information. - # @param utterances [Array] When dual_channel or speaker_labels is enabled, a list of turn-by-turn utterance + # @param utterances [Array] When multichannel or speaker_labels is enabled, a list of turn-by-turn utterance # objects. # See [Speaker - # diarization](https://www.assemblyai.com/docs/models/speaker-diarization) for - # more information. + # diarization](https://www.assemblyai.com/docs/speech-to-text/speaker-diarization) + # and [Multichannel + # ssemblyai.com/docs/speech-to-text/speech-recognition#multichannel-transcription) + # for more information. # @param confidence [Float] The confidence score for the transcript, between 0.0 (low confidence) and 1.0 # (high confidence) # @param audio_duration [Integer] The duration of this transcript object's media file, in seconds @@ -482,99 +486,99 @@ def initialize(id:, audio_url:, status:, webhook_auth:, auto_highlights:, redact def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - id = struct["id"] - audio_url = struct["audio_url"] - status = struct["status"] - language_code = struct["language_code"] - language_detection = struct["language_detection"] - language_confidence_threshold = struct["language_confidence_threshold"] - language_confidence = struct["language_confidence"] - speech_model = struct["speech_model"] - text = struct["text"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: v) + id = parsed_json["id"] + audio_url = parsed_json["audio_url"] + status = parsed_json["status"] + language_code = parsed_json["language_code"] + language_detection = parsed_json["language_detection"] + language_confidence_threshold = parsed_json["language_confidence_threshold"] + language_confidence = parsed_json["language_confidence"] + speech_model = parsed_json["speech_model"] + text = parsed_json["text"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: item) end - utterances = parsed_json["utterances"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptUtterance.from_json(json_object: v) + utterances = parsed_json["utterances"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptUtterance.from_json(json_object: item) end - confidence = struct["confidence"] - audio_duration = struct["audio_duration"] - punctuate = struct["punctuate"] - format_text = struct["format_text"] - disfluencies = struct["disfluencies"] - multichannel = struct["multichannel"] - audio_channels = struct["audio_channels"] - dual_channel = struct["dual_channel"] - webhook_url = struct["webhook_url"] - webhook_status_code = struct["webhook_status_code"] - webhook_auth = struct["webhook_auth"] - webhook_auth_header_name = struct["webhook_auth_header_name"] - speed_boost = struct["speed_boost"] - auto_highlights = struct["auto_highlights"] + confidence = parsed_json["confidence"] + audio_duration = parsed_json["audio_duration"] + punctuate = parsed_json["punctuate"] + format_text = parsed_json["format_text"] + disfluencies = parsed_json["disfluencies"] + multichannel = parsed_json["multichannel"] + audio_channels = parsed_json["audio_channels"] + dual_channel = parsed_json["dual_channel"] + webhook_url = parsed_json["webhook_url"] + webhook_status_code = parsed_json["webhook_status_code"] + webhook_auth = parsed_json["webhook_auth"] + webhook_auth_header_name = parsed_json["webhook_auth_header_name"] + speed_boost = parsed_json["speed_boost"] + auto_highlights = parsed_json["auto_highlights"] if parsed_json["auto_highlights_result"].nil? auto_highlights_result = nil else auto_highlights_result = parsed_json["auto_highlights_result"].to_json auto_highlights_result = AssemblyAI::Transcripts::AutoHighlightsResult.from_json(json_object: auto_highlights_result) end - audio_start_from = struct["audio_start_from"] - audio_end_at = struct["audio_end_at"] - word_boost = struct["word_boost"] - boost_param = struct["boost_param"] - filter_profanity = struct["filter_profanity"] - redact_pii = struct["redact_pii"] - redact_pii_audio = struct["redact_pii_audio"] - redact_pii_audio_quality = struct["redact_pii_audio_quality"] - redact_pii_policies = struct["redact_pii_policies"] - redact_pii_sub = struct["redact_pii_sub"] - speaker_labels = struct["speaker_labels"] - speakers_expected = struct["speakers_expected"] - content_safety = struct["content_safety"] + audio_start_from = parsed_json["audio_start_from"] + audio_end_at = parsed_json["audio_end_at"] + word_boost = parsed_json["word_boost"] + boost_param = parsed_json["boost_param"] + filter_profanity = parsed_json["filter_profanity"] + redact_pii = parsed_json["redact_pii"] + redact_pii_audio = parsed_json["redact_pii_audio"] + redact_pii_audio_quality = parsed_json["redact_pii_audio_quality"] + redact_pii_policies = parsed_json["redact_pii_policies"] + redact_pii_sub = parsed_json["redact_pii_sub"] + speaker_labels = parsed_json["speaker_labels"] + speakers_expected = parsed_json["speakers_expected"] + content_safety = parsed_json["content_safety"] if parsed_json["content_safety_labels"].nil? content_safety_labels = nil else content_safety_labels = parsed_json["content_safety_labels"].to_json content_safety_labels = AssemblyAI::Transcripts::ContentSafetyLabelsResult.from_json(json_object: content_safety_labels) end - iab_categories = struct["iab_categories"] + iab_categories = parsed_json["iab_categories"] if parsed_json["iab_categories_result"].nil? iab_categories_result = nil else iab_categories_result = parsed_json["iab_categories_result"].to_json iab_categories_result = AssemblyAI::Transcripts::TopicDetectionModelResult.from_json(json_object: iab_categories_result) end - custom_spelling = parsed_json["custom_spelling"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptCustomSpelling.from_json(json_object: v) + custom_spelling = parsed_json["custom_spelling"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptCustomSpelling.from_json(json_object: item) end - auto_chapters = struct["auto_chapters"] - chapters = parsed_json["chapters"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::Chapter.from_json(json_object: v) + auto_chapters = parsed_json["auto_chapters"] + chapters = parsed_json["chapters"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::Chapter.from_json(json_object: item) end - summarization = struct["summarization"] - summary_type = struct["summary_type"] - summary_model = struct["summary_model"] - summary = struct["summary"] - custom_topics = struct["custom_topics"] - topics = struct["topics"] - sentiment_analysis = struct["sentiment_analysis"] - sentiment_analysis_results = parsed_json["sentiment_analysis_results"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::SentimentAnalysisResult.from_json(json_object: v) + summarization = parsed_json["summarization"] + summary_type = parsed_json["summary_type"] + summary_model = parsed_json["summary_model"] + summary = parsed_json["summary"] + custom_topics = parsed_json["custom_topics"] + topics = parsed_json["topics"] + sentiment_analysis = parsed_json["sentiment_analysis"] + sentiment_analysis_results = parsed_json["sentiment_analysis_results"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::SentimentAnalysisResult.from_json(json_object: item) end - entity_detection = struct["entity_detection"] - entities = parsed_json["entities"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::Entity.from_json(json_object: v) + entity_detection = parsed_json["entity_detection"] + entities = parsed_json["entities"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::Entity.from_json(json_object: item) end - speech_threshold = struct["speech_threshold"] - throttled = struct["throttled"] - error = struct["error"] - language_model = struct["language_model"] - acoustic_model = struct["acoustic_model"] + speech_threshold = parsed_json["speech_threshold"] + throttled = parsed_json["throttled"] + error = parsed_json["error"] + language_model = parsed_json["language_model"] + acoustic_model = parsed_json["acoustic_model"] new( id: id, audio_url: audio_url, diff --git a/lib/assemblyai/transcripts/types/transcript_custom_spelling.rb b/lib/assemblyai/transcripts/types/transcript_custom_spelling.rb index 7207956..fc41dd1 100644 --- a/lib/assemblyai/transcripts/types/transcript_custom_spelling.rb +++ b/lib/assemblyai/transcripts/types/transcript_custom_spelling.rb @@ -37,8 +37,9 @@ def initialize(from:, to:, additional_properties: nil) # @return [AssemblyAI::Transcripts::TranscriptCustomSpelling] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - from = struct["from"] - to = struct["to"] + parsed_json = JSON.parse(json_object) + from = parsed_json["from"] + to = parsed_json["to"] new( from: from, to: to, diff --git a/lib/assemblyai/transcripts/types/transcript_list.rb b/lib/assemblyai/transcripts/types/transcript_list.rb index e627102..c62995d 100644 --- a/lib/assemblyai/transcripts/types/transcript_list.rb +++ b/lib/assemblyai/transcripts/types/transcript_list.rb @@ -46,9 +46,9 @@ def self.from_json(json_object:) page_details = parsed_json["page_details"].to_json page_details = AssemblyAI::Transcripts::PageDetails.from_json(json_object: page_details) end - transcripts = parsed_json["transcripts"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptListItem.from_json(json_object: v) + transcripts = parsed_json["transcripts"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptListItem.from_json(json_object: item) end new( page_details: page_details, diff --git a/lib/assemblyai/transcripts/types/transcript_list_item.rb b/lib/assemblyai/transcripts/types/transcript_list_item.rb index b4d94e1..a692d2a 100644 --- a/lib/assemblyai/transcripts/types/transcript_list_item.rb +++ b/lib/assemblyai/transcripts/types/transcript_list_item.rb @@ -69,13 +69,13 @@ def initialize(id:, resource_url:, status:, created:, audio_url:, completed: OMI def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - id = struct["id"] - resource_url = struct["resource_url"] - status = struct["status"] + id = parsed_json["id"] + resource_url = parsed_json["resource_url"] + status = parsed_json["status"] created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?) completed = (DateTime.parse(parsed_json["completed"]) unless parsed_json["completed"].nil?) - audio_url = struct["audio_url"] - error = struct["error"] + audio_url = parsed_json["audio_url"] + error = parsed_json["error"] new( id: id, resource_url: resource_url, diff --git a/lib/assemblyai/transcripts/types/transcript_optional_params.rb b/lib/assemblyai/transcripts/types/transcript_optional_params.rb index 51c503e..4738840 100644 --- a/lib/assemblyai/transcripts/types/transcript_optional_params.rb +++ b/lib/assemblyai/transcripts/types/transcript_optional_params.rb @@ -310,47 +310,47 @@ def initialize(language_code: OMIT, language_detection: OMIT, language_confidenc def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - language_code = struct["language_code"] - language_detection = struct["language_detection"] - language_confidence_threshold = struct["language_confidence_threshold"] - speech_model = struct["speech_model"] - punctuate = struct["punctuate"] - format_text = struct["format_text"] - disfluencies = struct["disfluencies"] - multichannel = struct["multichannel"] - dual_channel = struct["dual_channel"] - webhook_url = struct["webhook_url"] - webhook_auth_header_name = struct["webhook_auth_header_name"] - webhook_auth_header_value = struct["webhook_auth_header_value"] - auto_highlights = struct["auto_highlights"] - audio_start_from = struct["audio_start_from"] - audio_end_at = struct["audio_end_at"] - word_boost = struct["word_boost"] - boost_param = struct["boost_param"] - filter_profanity = struct["filter_profanity"] - redact_pii = struct["redact_pii"] - redact_pii_audio = struct["redact_pii_audio"] - redact_pii_audio_quality = struct["redact_pii_audio_quality"] - redact_pii_policies = struct["redact_pii_policies"] - redact_pii_sub = struct["redact_pii_sub"] - speaker_labels = struct["speaker_labels"] - speakers_expected = struct["speakers_expected"] - content_safety = struct["content_safety"] - content_safety_confidence = struct["content_safety_confidence"] - iab_categories = struct["iab_categories"] - custom_spelling = parsed_json["custom_spelling"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptCustomSpelling.from_json(json_object: v) + language_code = parsed_json["language_code"] + language_detection = parsed_json["language_detection"] + language_confidence_threshold = parsed_json["language_confidence_threshold"] + speech_model = parsed_json["speech_model"] + punctuate = parsed_json["punctuate"] + format_text = parsed_json["format_text"] + disfluencies = parsed_json["disfluencies"] + multichannel = parsed_json["multichannel"] + dual_channel = parsed_json["dual_channel"] + webhook_url = parsed_json["webhook_url"] + webhook_auth_header_name = parsed_json["webhook_auth_header_name"] + webhook_auth_header_value = parsed_json["webhook_auth_header_value"] + auto_highlights = parsed_json["auto_highlights"] + audio_start_from = parsed_json["audio_start_from"] + audio_end_at = parsed_json["audio_end_at"] + word_boost = parsed_json["word_boost"] + boost_param = parsed_json["boost_param"] + filter_profanity = parsed_json["filter_profanity"] + redact_pii = parsed_json["redact_pii"] + redact_pii_audio = parsed_json["redact_pii_audio"] + redact_pii_audio_quality = parsed_json["redact_pii_audio_quality"] + redact_pii_policies = parsed_json["redact_pii_policies"] + redact_pii_sub = parsed_json["redact_pii_sub"] + speaker_labels = parsed_json["speaker_labels"] + speakers_expected = parsed_json["speakers_expected"] + content_safety = parsed_json["content_safety"] + content_safety_confidence = parsed_json["content_safety_confidence"] + iab_categories = parsed_json["iab_categories"] + custom_spelling = parsed_json["custom_spelling"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptCustomSpelling.from_json(json_object: item) end - sentiment_analysis = struct["sentiment_analysis"] - auto_chapters = struct["auto_chapters"] - entity_detection = struct["entity_detection"] - speech_threshold = struct["speech_threshold"] - summarization = struct["summarization"] - summary_model = struct["summary_model"] - summary_type = struct["summary_type"] - custom_topics = struct["custom_topics"] - topics = struct["topics"] + sentiment_analysis = parsed_json["sentiment_analysis"] + auto_chapters = parsed_json["auto_chapters"] + entity_detection = parsed_json["entity_detection"] + speech_threshold = parsed_json["speech_threshold"] + summarization = parsed_json["summarization"] + summary_model = parsed_json["summary_model"] + summary_type = parsed_json["summary_type"] + custom_topics = parsed_json["custom_topics"] + topics = parsed_json["topics"] new( language_code: language_code, language_detection: language_detection, diff --git a/lib/assemblyai/transcripts/types/transcript_paragraph.rb b/lib/assemblyai/transcripts/types/transcript_paragraph.rb index 3633e89..dadcf01 100644 --- a/lib/assemblyai/transcripts/types/transcript_paragraph.rb +++ b/lib/assemblyai/transcripts/types/transcript_paragraph.rb @@ -49,13 +49,13 @@ def initialize(text:, start:, end_:, confidence:, words:, additional_properties: def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - text = struct["text"] - start = struct["start"] - end_ = struct["end"] - confidence = struct["confidence"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: v) + text = parsed_json["text"] + start = parsed_json["start"] + end_ = parsed_json["end"] + confidence = parsed_json["confidence"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: item) end new( text: text, diff --git a/lib/assemblyai/transcripts/types/transcript_ready_notification.rb b/lib/assemblyai/transcripts/types/transcript_ready_notification.rb index 156043c..913214e 100644 --- a/lib/assemblyai/transcripts/types/transcript_ready_notification.rb +++ b/lib/assemblyai/transcripts/types/transcript_ready_notification.rb @@ -37,8 +37,9 @@ def initialize(transcript_id:, status:, additional_properties: nil) # @return [AssemblyAI::Transcripts::TranscriptReadyNotification] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - transcript_id = struct["transcript_id"] - status = struct["status"] + parsed_json = JSON.parse(json_object) + transcript_id = parsed_json["transcript_id"] + status = parsed_json["status"] new( transcript_id: transcript_id, status: status, diff --git a/lib/assemblyai/transcripts/types/transcript_sentence.rb b/lib/assemblyai/transcripts/types/transcript_sentence.rb index 3c052a5..15c7340 100644 --- a/lib/assemblyai/transcripts/types/transcript_sentence.rb +++ b/lib/assemblyai/transcripts/types/transcript_sentence.rb @@ -74,16 +74,16 @@ def initialize(text:, start:, end_:, confidence:, words:, channel: OMIT, speaker def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - text = struct["text"] - start = struct["start"] - end_ = struct["end"] - confidence = struct["confidence"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: v) + text = parsed_json["text"] + start = parsed_json["start"] + end_ = parsed_json["end"] + confidence = parsed_json["confidence"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: item) end - channel = struct["channel"] - speaker = struct["speaker"] + channel = parsed_json["channel"] + speaker = parsed_json["speaker"] new( text: text, start: start, diff --git a/lib/assemblyai/transcripts/types/transcript_utterance.rb b/lib/assemblyai/transcripts/types/transcript_utterance.rb index fadc0f1..776f848 100644 --- a/lib/assemblyai/transcripts/types/transcript_utterance.rb +++ b/lib/assemblyai/transcripts/types/transcript_utterance.rb @@ -71,16 +71,16 @@ def initialize(confidence:, start:, end_:, text:, words:, speaker:, channel: OMI def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - confidence = struct["confidence"] - start = struct["start"] - end_ = struct["end"] - text = struct["text"] - words = parsed_json["words"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: v) + confidence = parsed_json["confidence"] + start = parsed_json["start"] + end_ = parsed_json["end"] + text = parsed_json["text"] + words = parsed_json["words"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::TranscriptWord.from_json(json_object: item) end - channel = struct["channel"] - speaker = struct["speaker"] + channel = parsed_json["channel"] + speaker = parsed_json["speaker"] new( confidence: confidence, start: start, diff --git a/lib/assemblyai/transcripts/types/transcript_webhook_notification.rb b/lib/assemblyai/transcripts/types/transcript_webhook_notification.rb index 44d0e3b..b4f928e 100644 --- a/lib/assemblyai/transcripts/types/transcript_webhook_notification.rb +++ b/lib/assemblyai/transcripts/types/transcript_webhook_notification.rb @@ -16,9 +16,7 @@ def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) begin AssemblyAI::Transcripts::TranscriptReadyNotification.validate_raw(obj: struct) - unless json_object.nil? - return AssemblyAI::Transcripts::TranscriptReadyNotification.from_json(json_object: json_object) - end + return AssemblyAI::Transcripts::TranscriptReadyNotification.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError @@ -26,9 +24,7 @@ def self.from_json(json_object:) end begin AssemblyAI::Transcripts::RedactedAudioResponse.validate_raw(obj: struct) - unless json_object.nil? - return AssemblyAI::Transcripts::RedactedAudioResponse.from_json(json_object: json_object) - end + return AssemblyAI::Transcripts::RedactedAudioResponse.from_json(json_object: struct) unless struct.nil? return nil rescue StandardError diff --git a/lib/assemblyai/transcripts/types/transcript_word.rb b/lib/assemblyai/transcripts/types/transcript_word.rb index 7c53047..654b1c7 100644 --- a/lib/assemblyai/transcripts/types/transcript_word.rb +++ b/lib/assemblyai/transcripts/types/transcript_word.rb @@ -66,12 +66,13 @@ def initialize(confidence:, start:, end_:, text:, channel: OMIT, speaker: OMIT, # @return [AssemblyAI::Transcripts::TranscriptWord] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - confidence = struct["confidence"] - start = struct["start"] - end_ = struct["end"] - text = struct["text"] - channel = struct["channel"] - speaker = struct["speaker"] + parsed_json = JSON.parse(json_object) + confidence = parsed_json["confidence"] + start = parsed_json["start"] + end_ = parsed_json["end"] + text = parsed_json["text"] + channel = parsed_json["channel"] + speaker = parsed_json["speaker"] new( confidence: confidence, start: start, diff --git a/lib/assemblyai/transcripts/types/word_search_match.rb b/lib/assemblyai/transcripts/types/word_search_match.rb index 4cec5eb..e669e25 100644 --- a/lib/assemblyai/transcripts/types/word_search_match.rb +++ b/lib/assemblyai/transcripts/types/word_search_match.rb @@ -46,10 +46,11 @@ def initialize(text:, count:, timestamps:, indexes:, additional_properties: nil) # @return [AssemblyAI::Transcripts::WordSearchMatch] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - text = struct["text"] - count = struct["count"] - timestamps = struct["timestamps"] - indexes = struct["indexes"] + parsed_json = JSON.parse(json_object) + text = parsed_json["text"] + count = parsed_json["count"] + timestamps = parsed_json["timestamps"] + indexes = parsed_json["indexes"] new( text: text, count: count, diff --git a/lib/assemblyai/transcripts/types/word_search_response.rb b/lib/assemblyai/transcripts/types/word_search_response.rb index 0948fc7..bd87374 100644 --- a/lib/assemblyai/transcripts/types/word_search_response.rb +++ b/lib/assemblyai/transcripts/types/word_search_response.rb @@ -43,11 +43,11 @@ def initialize(id:, total_count:, matches:, additional_properties: nil) def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) - id = struct["id"] - total_count = struct["total_count"] - matches = parsed_json["matches"]&.map do |v| - v = v.to_json - AssemblyAI::Transcripts::WordSearchMatch.from_json(json_object: v) + id = parsed_json["id"] + total_count = parsed_json["total_count"] + matches = parsed_json["matches"]&.map do |item| + item = item.to_json + AssemblyAI::Transcripts::WordSearchMatch.from_json(json_object: item) end new( id: id, diff --git a/lib/assemblyai/types/error.rb b/lib/assemblyai/types/error.rb index 4f23ba6..7d3c8ae 100644 --- a/lib/assemblyai/types/error.rb +++ b/lib/assemblyai/types/error.rb @@ -36,8 +36,9 @@ def initialize(error:, status: OMIT, additional_properties: nil) # @return [AssemblyAI::Error] def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) - error = struct["error"] - status = struct["status"] + parsed_json = JSON.parse(json_object) + error = parsed_json["error"] + status = parsed_json["status"] new( error: error, status: status,