vapi_server_sdk 0.0.0.pre.alpha7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/core/file_utilities.rb +26 -0
- data/lib/environment.rb +7 -0
- data/lib/gemconfig.rb +14 -0
- data/lib/requests.rb +174 -0
- data/lib/types_export.rb +526 -0
- data/lib/vapi_server_sdk/analytics/client.rb +115 -0
- data/lib/vapi_server_sdk/assistants/client.rb +949 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_background_sound.rb +12 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +22 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_first_message_mode.rb +21 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +201 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +23 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +110 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +188 -0
- data/lib/vapi_server_sdk/blocks/client.rb +552 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_create_request.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_create_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_delete_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_get_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_list_response_item.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_update_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +96 -0
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +96 -0
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +163 -0
- data/lib/vapi_server_sdk/calls/client.rb +966 -0
- data/lib/vapi_server_sdk/files/client.rb +347 -0
- data/lib/vapi_server_sdk/logs/client.rb +174 -0
- data/lib/vapi_server_sdk/logs/types/logs_get_request_sort_order.rb +10 -0
- data/lib/vapi_server_sdk/logs/types/logs_get_request_type.rb +12 -0
- data/lib/vapi_server_sdk/phone_numbers/client.rb +455 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_request.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_delete_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_get_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_list_response_item.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +103 -0
- data/lib/vapi_server_sdk/squads/client.rb +1050 -0
- data/lib/vapi_server_sdk/tools/client.rb +473 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +122 -0
- data/lib/vapi_server_sdk/types/add_voice_to_provider_dto.rb +78 -0
- data/lib/vapi_server_sdk/types/analysis.rb +88 -0
- data/lib/vapi_server_sdk/types/analysis_cost.rb +93 -0
- data/lib/vapi_server_sdk/types/analysis_cost_analysis_type.rb +10 -0
- data/lib/vapi_server_sdk/types/analysis_cost_breakdown.rb +137 -0
- data/lib/vapi_server_sdk/types/analysis_plan.rb +103 -0
- data/lib/vapi_server_sdk/types/analytics_operation.rb +76 -0
- data/lib/vapi_server_sdk/types/analytics_operation_column.rb +17 -0
- data/lib/vapi_server_sdk/types/analytics_operation_operation.rb +12 -0
- data/lib/vapi_server_sdk/types/analytics_query.rb +107 -0
- data/lib/vapi_server_sdk/types/analytics_query_group_by_item.rb +11 -0
- data/lib/vapi_server_sdk/types/analytics_query_result.rb +96 -0
- data/lib/vapi_server_sdk/types/anthropic_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/anthropic_model.rb +170 -0
- data/lib/vapi_server_sdk/types/anthropic_model_model.rb +11 -0
- data/lib/vapi_server_sdk/types/anthropic_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/anyscale_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/anyscale_model.rb +169 -0
- data/lib/vapi_server_sdk/types/anyscale_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/artifact.rb +133 -0
- data/lib/vapi_server_sdk/types/artifact_messages_item.rb +96 -0
- data/lib/vapi_server_sdk/types/artifact_plan.rb +139 -0
- data/lib/vapi_server_sdk/types/assignment_mutation.rb +189 -0
- data/lib/vapi_server_sdk/types/assignment_mutation_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/assistant.rb +562 -0
- data/lib/vapi_server_sdk/types/assistant_background_sound.rb +10 -0
- data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +20 -0
- data/lib/vapi_server_sdk/types/assistant_first_message_mode.rb +19 -0
- data/lib/vapi_server_sdk/types/assistant_model.rb +199 -0
- data/lib/vapi_server_sdk/types/assistant_overrides.rb +539 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_background_sound.rb +10 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +20 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_first_message_mode.rb +19 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +199 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +21 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +108 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +186 -0
- data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +21 -0
- data/lib/vapi_server_sdk/types/assistant_transcriber.rb +108 -0
- data/lib/vapi_server_sdk/types/assistant_voice.rb +186 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +128 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +14 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +21 -0
- data/lib/vapi_server_sdk/types/azure_voice.rb +104 -0
- data/lib/vapi_server_sdk/types/azure_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/azure_voice_id_enum.rb +9 -0
- data/lib/vapi_server_sdk/types/block_complete_message.rb +73 -0
- data/lib/vapi_server_sdk/types/block_complete_message_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/block_start_message.rb +73 -0
- data/lib/vapi_server_sdk/types/block_start_message_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/bot_message.rb +111 -0
- data/lib/vapi_server_sdk/types/bucket_plan.rb +139 -0
- data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +151 -0
- data/lib/vapi_server_sdk/types/buy_phone_number_dto_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/byo_phone_number.rb +224 -0
- data/lib/vapi_server_sdk/types/byo_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +166 -0
- data/lib/vapi_server_sdk/types/call.rb +425 -0
- data/lib/vapi_server_sdk/types/call_costs_item.rb +146 -0
- data/lib/vapi_server_sdk/types/call_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/call_ended_reason.rb +175 -0
- data/lib/vapi_server_sdk/types/call_messages_item.rb +96 -0
- data/lib/vapi_server_sdk/types/call_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/call_phone_call_provider.rb +11 -0
- data/lib/vapi_server_sdk/types/call_phone_call_transport.rb +10 -0
- data/lib/vapi_server_sdk/types/call_status.rb +12 -0
- data/lib/vapi_server_sdk/types/call_type.rb +10 -0
- data/lib/vapi_server_sdk/types/callback_step.rb +204 -0
- data/lib/vapi_server_sdk/types/callback_step_block.rb +108 -0
- data/lib/vapi_server_sdk/types/cartesia_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/cartesia_voice.rb +113 -0
- data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +15 -0
- data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/chunk_plan.rb +128 -0
- data/lib/vapi_server_sdk/types/client_inbound_message.rb +63 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +61 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_control.rb +56 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_control_control.rb +10 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +109 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_say.rb +67 -0
- data/lib/vapi_server_sdk/types/client_message.rb +65 -0
- data/lib/vapi_server_sdk/types/client_message_conversation_update.rb +79 -0
- data/lib/vapi_server_sdk/types/client_message_conversation_update_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/client_message_hang.rb +47 -0
- data/lib/vapi_server_sdk/types/client_message_language_changed.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_message.rb +214 -0
- data/lib/vapi_server_sdk/types/client_message_metadata.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_model_output.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_speech_update.rb +67 -0
- data/lib/vapi_server_sdk/types/client_message_speech_update_role.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_speech_update_status.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_tool_calls.rb +75 -0
- data/lib/vapi_server_sdk/types/client_message_tool_calls_result.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
- data/lib/vapi_server_sdk/types/client_message_transcript.rb +74 -0
- data/lib/vapi_server_sdk/types/client_message_transcript_role.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_transcript_transcript_type.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_user_interrupted.rb +47 -0
- data/lib/vapi_server_sdk/types/client_message_voice_input.rb +55 -0
- data/lib/vapi_server_sdk/types/clone_voice_dto.rb +83 -0
- data/lib/vapi_server_sdk/types/condition.rb +73 -0
- data/lib/vapi_server_sdk/types/condition_operator.rb +13 -0
- data/lib/vapi_server_sdk/types/conversation_block.rb +239 -0
- data/lib/vapi_server_sdk/types/conversation_block_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/cost_breakdown.rb +141 -0
- data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto.rb +529 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_background_sound.rb +10 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +20 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_first_message_mode.rb +19 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +199 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +21 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +108 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +186 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +94 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +14 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +21 -0
- data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +191 -0
- data/lib/vapi_server_sdk/types/create_byo_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +133 -0
- data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_conversation_block_dto.rb +206 -0
- data/lib/vapi_server_sdk/types/create_conversation_block_dto_messages_item.rb +95 -0
- data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_customer_dto.rb +117 -0
- data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/create_dtmf_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_dtmf_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_end_call_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_end_call_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_function_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_function_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +104 -0
- data/lib/vapi_server_sdk/types/create_ghl_tool_dto.rb +158 -0
- data/lib/vapi_server_sdk/types/create_ghl_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +79 -0
- data/lib/vapi_server_sdk/types/create_make_tool_dto.rb +158 -0
- data/lib/vapi_server_sdk/types/create_make_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_org_dto.rb +129 -0
- data/lib/vapi_server_sdk/types/create_outbound_call_dto.rb +191 -0
- data/lib/vapi_server_sdk/types/create_output_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_output_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/create_squad_dto.rb +94 -0
- data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_token_dto.rb +81 -0
- data/lib/vapi_server_sdk/types/create_token_dto_tag.rb +9 -0
- data/lib/vapi_server_sdk/types/create_tool_call_block_dto.rb +168 -0
- data/lib/vapi_server_sdk/types/create_tool_call_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/create_tool_call_block_dto_tool.rb +161 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto.rb +131 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_details.rb +159 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_visibility.rb +8 -0
- data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_destinations_item.rb +121 -0
- data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_messages_item.rb +121 -0
- data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +167 -0
- data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +155 -0
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_voicemail_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_voicemail_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_web_call_dto.rb +123 -0
- data/lib/vapi_server_sdk/types/create_workflow_block_dto.rb +154 -0
- data/lib/vapi_server_sdk/types/create_workflow_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/create_workflow_block_dto_steps_item.rb +94 -0
- data/lib/vapi_server_sdk/types/custom_llm_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/custom_llm_model.rb +204 -0
- data/lib/vapi_server_sdk/types/custom_llm_model_metadata_send_mode.rb +18 -0
- data/lib/vapi_server_sdk/types/custom_llm_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/deep_infra_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/deep_infra_model.rb +169 -0
- data/lib/vapi_server_sdk/types/deep_infra_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/deepgram_credential.rb +114 -0
- data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +143 -0
- data/lib/vapi_server_sdk/types/deepgram_transcriber_language.rb +62 -0
- data/lib/vapi_server_sdk/types/deepgram_transcriber_model.rb +34 -0
- data/lib/vapi_server_sdk/types/deepgram_voice.rb +96 -0
- data/lib/vapi_server_sdk/types/deepgram_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/deepgram_voice_id_enum.rb +18 -0
- data/lib/vapi_server_sdk/types/dtmf_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/dtmf_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +176 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_id.rb +54 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_id_enum.rb +21 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +12 -0
- data/lib/vapi_server_sdk/types/end_call_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/end_call_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/error.rb +55 -0
- data/lib/vapi_server_sdk/types/exact_replacement.rb +65 -0
- data/lib/vapi_server_sdk/types/file.rb +185 -0
- data/lib/vapi_server_sdk/types/file_status.rb +8 -0
- data/lib/vapi_server_sdk/types/format_plan.rb +130 -0
- data/lib/vapi_server_sdk/types/format_plan_replacements_item.rb +94 -0
- data/lib/vapi_server_sdk/types/function_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/function_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/function_tool_provider_details.rb +71 -0
- data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +158 -0
- data/lib/vapi_server_sdk/types/function_tool_with_tool_call_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/gcp_credential.rb +138 -0
- data/lib/vapi_server_sdk/types/gcp_key.rb +143 -0
- data/lib/vapi_server_sdk/types/ghl_tool.rb +192 -0
- data/lib/vapi_server_sdk/types/ghl_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/ghl_tool_metadata.rb +67 -0
- data/lib/vapi_server_sdk/types/ghl_tool_provider_details.rb +115 -0
- data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +173 -0
- data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/gladia_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber.rb +122 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber_language.rb +108 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber_language_behaviour.rb +9 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber_model.rb +8 -0
- data/lib/vapi_server_sdk/types/go_high_level_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/groq_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/groq_model.rb +170 -0
- data/lib/vapi_server_sdk/types/groq_model_model.rb +17 -0
- data/lib/vapi_server_sdk/types/groq_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/handoff_step.rb +204 -0
- data/lib/vapi_server_sdk/types/handoff_step_block.rb +108 -0
- data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +167 -0
- data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +165 -0
- data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/invite_user_dto.rb +66 -0
- data/lib/vapi_server_sdk/types/invite_user_dto_role.rb +9 -0
- data/lib/vapi_server_sdk/types/json_schema.rb +125 -0
- data/lib/vapi_server_sdk/types/json_schema_type.rb +21 -0
- data/lib/vapi_server_sdk/types/knowledge_base.rb +74 -0
- data/lib/vapi_server_sdk/types/lmnt_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/lmnt_voice.rb +104 -0
- data/lib/vapi_server_sdk/types/lmnt_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/lmnt_voice_id_enum.rb +8 -0
- data/lib/vapi_server_sdk/types/log.rb +248 -0
- data/lib/vapi_server_sdk/types/log_request_http_method.rb +12 -0
- data/lib/vapi_server_sdk/types/log_resource.rb +15 -0
- data/lib/vapi_server_sdk/types/log_type.rb +11 -0
- data/lib/vapi_server_sdk/types/logs_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/make_credential.rb +118 -0
- data/lib/vapi_server_sdk/types/make_tool.rb +192 -0
- data/lib/vapi_server_sdk/types/make_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/make_tool_metadata.rb +67 -0
- data/lib/vapi_server_sdk/types/make_tool_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +173 -0
- data/lib/vapi_server_sdk/types/make_tool_with_tool_call_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/message_plan.rb +107 -0
- data/lib/vapi_server_sdk/types/metrics.rb +165 -0
- data/lib/vapi_server_sdk/types/model_based_condition.rb +117 -0
- data/lib/vapi_server_sdk/types/model_cost.rb +106 -0
- data/lib/vapi_server_sdk/types/monitor.rb +71 -0
- data/lib/vapi_server_sdk/types/monitor_plan.rb +85 -0
- data/lib/vapi_server_sdk/types/neets_voice.rb +96 -0
- data/lib/vapi_server_sdk/types/neets_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/neets_voice_id_enum.rb +7 -0
- data/lib/vapi_server_sdk/types/open_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/open_ai_function.rb +96 -0
- data/lib/vapi_server_sdk/types/open_ai_function_parameters.rb +85 -0
- data/lib/vapi_server_sdk/types/open_ai_message.rb +68 -0
- data/lib/vapi_server_sdk/types/open_ai_message_role.rb +11 -0
- data/lib/vapi_server_sdk/types/open_ai_model.rb +191 -0
- data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +23 -0
- data/lib/vapi_server_sdk/types/open_ai_model_model.rb +24 -0
- data/lib/vapi_server_sdk/types/open_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/open_ai_voice.rb +99 -0
- data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +13 -0
- data/lib/vapi_server_sdk/types/open_router_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/open_router_model.rb +169 -0
- data/lib/vapi_server_sdk/types/open_router_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/org.rb +212 -0
- data/lib/vapi_server_sdk/types/org_plan.rb +79 -0
- data/lib/vapi_server_sdk/types/output_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/output_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/pagination_meta.rb +72 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +169 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/play_ht_credential.rb +109 -0
- data/lib/vapi_server_sdk/types/play_ht_voice.rb +166 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_emotion.rb +19 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_id_enum.rb +16 -0
- data/lib/vapi_server_sdk/types/punctuation_boundary.rb +21 -0
- data/lib/vapi_server_sdk/types/regex_option.rb +74 -0
- data/lib/vapi_server_sdk/types/regex_option_type.rb +13 -0
- data/lib/vapi_server_sdk/types/regex_replacement.rb +82 -0
- data/lib/vapi_server_sdk/types/rime_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice.rb +114 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice_id_enum.rb +87 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice_model.rb +9 -0
- data/lib/vapi_server_sdk/types/rule_based_condition.rb +195 -0
- data/lib/vapi_server_sdk/types/rule_based_condition_operator.rb +14 -0
- data/lib/vapi_server_sdk/types/runpod_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/s_3_credential.rb +134 -0
- data/lib/vapi_server_sdk/types/sbc_configuration.rb +47 -0
- data/lib/vapi_server_sdk/types/server.rb +82 -0
- data/lib/vapi_server_sdk/types/server_message.rb +77 -0
- data/lib/vapi_server_sdk/types/server_message_assistant_request.rb +169 -0
- data/lib/vapi_server_sdk/types/server_message_assistant_request_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_conversation_update.rb +197 -0
- data/lib/vapi_server_sdk/types/server_message_conversation_update_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/server_message_conversation_update_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report.rb +241 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_costs_item.rb +147 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +176 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_hang.rb +169 -0
- data/lib/vapi_server_sdk/types/server_message_hang_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_language_changed.rb +177 -0
- data/lib/vapi_server_sdk/types/server_message_language_changed_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_message.rb +285 -0
- data/lib/vapi_server_sdk/types/server_message_model_output.rb +177 -0
- data/lib/vapi_server_sdk/types/server_message_model_output_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control.rb +192 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control_request.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_response.rb +65 -0
- data/lib/vapi_server_sdk/types/server_message_response_assistant_request.rb +162 -0
- data/lib/vapi_server_sdk/types/server_message_response_assistant_request_destination.rb +98 -0
- data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +85 -0
- data/lib/vapi_server_sdk/types/server_message_response_tool_calls.rb +71 -0
- data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request.rb +75 -0
- data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request_destination.rb +122 -0
- data/lib/vapi_server_sdk/types/server_message_response_voice_request.rb +97 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update.rb +187 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update_role.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update_status.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_status_update.rb +255 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +175 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_status.rb +12 -0
- data/lib/vapi_server_sdk/types/server_message_tool_calls.rb +195 -0
- data/lib/vapi_server_sdk/types/server_message_tool_calls_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
- data/lib/vapi_server_sdk/types/server_message_transcript.rb +195 -0
- data/lib/vapi_server_sdk/types/server_message_transcript_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_transcript_role.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_transcript_transcript_type.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_destination_request.rb +171 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_destination_request_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +213 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_update_destination.rb +122 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_update_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_user_interrupted.rb +169 -0
- data/lib/vapi_server_sdk/types/server_message_user_interrupted_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_voice_input.rb +177 -0
- data/lib/vapi_server_sdk/types/server_message_voice_input_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_voice_request.rb +185 -0
- data/lib/vapi_server_sdk/types/server_message_voice_request_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/sip_trunk_gateway.rb +138 -0
- data/lib/vapi_server_sdk/types/sip_trunk_gateway_outbound_protocol.rb +12 -0
- data/lib/vapi_server_sdk/types/sip_trunk_outbound_authentication_plan.rb +86 -0
- data/lib/vapi_server_sdk/types/sip_trunk_outbound_sip_register_plan.rb +74 -0
- data/lib/vapi_server_sdk/types/squad.rb +132 -0
- data/lib/vapi_server_sdk/types/squad_member_dto.rb +113 -0
- data/lib/vapi_server_sdk/types/start_speaking_plan.rb +119 -0
- data/lib/vapi_server_sdk/types/step_destination.rb +82 -0
- data/lib/vapi_server_sdk/types/step_destination_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/stop_speaking_plan.rb +120 -0
- data/lib/vapi_server_sdk/types/structured_data_plan.rb +140 -0
- data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +161 -0
- data/lib/vapi_server_sdk/types/success_evaluation_plan_rubric.rb +29 -0
- data/lib/vapi_server_sdk/types/summary_plan.rb +110 -0
- data/lib/vapi_server_sdk/types/sync_voice_library_dto.rb +58 -0
- data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +16 -0
- data/lib/vapi_server_sdk/types/system_message.rb +79 -0
- data/lib/vapi_server_sdk/types/talkscriber_transcriber.rb +72 -0
- data/lib/vapi_server_sdk/types/talkscriber_transcriber_language.rb +109 -0
- data/lib/vapi_server_sdk/types/template.rb +164 -0
- data/lib/vapi_server_sdk/types/template_details.rb +159 -0
- data/lib/vapi_server_sdk/types/template_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/template_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/template_visibility.rb +8 -0
- data/lib/vapi_server_sdk/types/time_range.rb +91 -0
- data/lib/vapi_server_sdk/types/time_range_step.rb +18 -0
- data/lib/vapi_server_sdk/types/together_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/together_ai_model.rb +169 -0
- data/lib/vapi_server_sdk/types/together_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/token.rb +127 -0
- data/lib/vapi_server_sdk/types/token_restrictions.rb +103 -0
- data/lib/vapi_server_sdk/types/token_tag.rb +9 -0
- data/lib/vapi_server_sdk/types/tool_call.rb +78 -0
- data/lib/vapi_server_sdk/types/tool_call_block.rb +201 -0
- data/lib/vapi_server_sdk/types/tool_call_block_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/tool_call_block_tool.rb +161 -0
- data/lib/vapi_server_sdk/types/tool_call_function.rb +65 -0
- data/lib/vapi_server_sdk/types/tool_call_message.rb +92 -0
- data/lib/vapi_server_sdk/types/tool_call_result.rb +126 -0
- data/lib/vapi_server_sdk/types/tool_call_result_message.rb +100 -0
- data/lib/vapi_server_sdk/types/tool_call_result_message_item.rb +94 -0
- data/lib/vapi_server_sdk/types/tool_message_complete.rb +130 -0
- data/lib/vapi_server_sdk/types/tool_message_complete_role.rb +24 -0
- data/lib/vapi_server_sdk/types/tool_message_delayed.rb +86 -0
- data/lib/vapi_server_sdk/types/tool_message_failed.rb +88 -0
- data/lib/vapi_server_sdk/types/tool_message_start.rb +73 -0
- data/lib/vapi_server_sdk/types/tool_template_metadata.rb +78 -0
- data/lib/vapi_server_sdk/types/tool_template_setup.rb +86 -0
- data/lib/vapi_server_sdk/types/transcriber_cost.rb +90 -0
- data/lib/vapi_server_sdk/types/transcript_plan.rb +122 -0
- data/lib/vapi_server_sdk/types/transcription_endpointing_plan.rb +109 -0
- data/lib/vapi_server_sdk/types/transfer_call_tool.rb +194 -0
- data/lib/vapi_server_sdk/types/transfer_call_tool_destinations_item.rb +120 -0
- data/lib/vapi_server_sdk/types/transfer_call_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +181 -0
- data/lib/vapi_server_sdk/types/transfer_destination_number.rb +163 -0
- data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +90 -0
- data/lib/vapi_server_sdk/types/transfer_destination_step.rb +90 -0
- data/lib/vapi_server_sdk/types/transfer_mode.rb +8 -0
- data/lib/vapi_server_sdk/types/transport_configuration_twilio.rb +125 -0
- data/lib/vapi_server_sdk/types/transport_configuration_twilio_recording_channels.rb +16 -0
- data/lib/vapi_server_sdk/types/transport_cost.rb +67 -0
- data/lib/vapi_server_sdk/types/twilio_credential.rb +110 -0
- data/lib/vapi_server_sdk/types/twilio_phone_number.rb +200 -0
- data/lib/vapi_server_sdk/types/twilio_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/twilio_voicemail_detection.rb +248 -0
- data/lib/vapi_server_sdk/types/twilio_voicemail_detection_voicemail_detection_types_item.rb +13 -0
- data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +94 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +14 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +21 -0
- data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +133 -0
- data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +104 -0
- data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +79 -0
- data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_org_dto.rb +129 -0
- data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto.rb +131 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_details.rb +159 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_visibility.rb +8 -0
- data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/update_user_role_dto.rb +66 -0
- data/lib/vapi_server_sdk/types/update_user_role_dto_role.rb +9 -0
- data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/user.rb +95 -0
- data/lib/vapi_server_sdk/types/user_message.rb +102 -0
- data/lib/vapi_server_sdk/types/vapi_cost.rb +67 -0
- data/lib/vapi_server_sdk/types/vapi_model.rb +181 -0
- data/lib/vapi_server_sdk/types/vapi_model_steps_item.rb +94 -0
- data/lib/vapi_server_sdk/types/vapi_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/vapi_phone_number.rb +188 -0
- data/lib/vapi_server_sdk/types/vapi_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/voice_cost.rb +90 -0
- data/lib/vapi_server_sdk/types/voice_library.rb +209 -0
- data/lib/vapi_server_sdk/types/voice_library_gender.rb +9 -0
- data/lib/vapi_server_sdk/types/voice_library_voice_response.rb +111 -0
- data/lib/vapi_server_sdk/types/vonage_credential.rb +128 -0
- data/lib/vapi_server_sdk/types/vonage_phone_number.rb +194 -0
- data/lib/vapi_server_sdk/types/vonage_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/workflow_block.rb +187 -0
- data/lib/vapi_server_sdk/types/workflow_block_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/workflow_block_steps_item.rb +94 -0
- data/lib/vapi_server_sdk.rb +110 -0
- metadata +697 -0
@@ -0,0 +1,425 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "call_type"
|
4
|
+
require_relative "call_costs_item"
|
5
|
+
require_relative "call_messages_item"
|
6
|
+
require_relative "call_phone_call_provider"
|
7
|
+
require_relative "call_phone_call_transport"
|
8
|
+
require_relative "call_status"
|
9
|
+
require_relative "call_ended_reason"
|
10
|
+
require_relative "call_destination"
|
11
|
+
require "date"
|
12
|
+
require_relative "cost_breakdown"
|
13
|
+
require_relative "artifact_plan"
|
14
|
+
require_relative "analysis"
|
15
|
+
require_relative "monitor"
|
16
|
+
require_relative "artifact"
|
17
|
+
require_relative "create_assistant_dto"
|
18
|
+
require_relative "assistant_overrides"
|
19
|
+
require_relative "create_squad_dto"
|
20
|
+
require_relative "import_twilio_phone_number_dto"
|
21
|
+
require_relative "create_customer_dto"
|
22
|
+
require "ostruct"
|
23
|
+
require "json"
|
24
|
+
|
25
|
+
module Vapi
|
26
|
+
class Call
|
27
|
+
# @return [Vapi::CallType] This is the type of call.
|
28
|
+
attr_reader :type
|
29
|
+
# @return [Array<Vapi::CallCostsItem>] These are the costs of individual components of the call in USD.
|
30
|
+
attr_reader :costs
|
31
|
+
# @return [Array<Vapi::CallMessagesItem>]
|
32
|
+
attr_reader :messages
|
33
|
+
# @return [Vapi::CallPhoneCallProvider] This is the provider of the call.
|
34
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
35
|
+
attr_reader :phone_call_provider
|
36
|
+
# @return [Vapi::CallPhoneCallTransport] This is the transport of the phone call.
|
37
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
38
|
+
attr_reader :phone_call_transport
|
39
|
+
# @return [Vapi::CallStatus] This is the status of the call.
|
40
|
+
attr_reader :status
|
41
|
+
# @return [Vapi::CallEndedReason] This is the explanation for how the call ended.
|
42
|
+
attr_reader :ended_reason
|
43
|
+
# @return [Vapi::CallDestination] This is the destination where the call ended up being transferred to. If the
|
44
|
+
# call was not transferred, this will be empty.
|
45
|
+
attr_reader :destination
|
46
|
+
# @return [String] This is the unique identifier for the call.
|
47
|
+
attr_reader :id
|
48
|
+
# @return [String] This is the unique identifier for the org that this call belongs to.
|
49
|
+
attr_reader :org_id
|
50
|
+
# @return [DateTime] This is the ISO 8601 date-time string of when the call was created.
|
51
|
+
attr_reader :created_at
|
52
|
+
# @return [DateTime] This is the ISO 8601 date-time string of when the call was last updated.
|
53
|
+
attr_reader :updated_at
|
54
|
+
# @return [DateTime] This is the ISO 8601 date-time string of when the call was started.
|
55
|
+
attr_reader :started_at
|
56
|
+
# @return [DateTime] This is the ISO 8601 date-time string of when the call was ended.
|
57
|
+
attr_reader :ended_at
|
58
|
+
# @return [Float] This is the cost of the call in USD.
|
59
|
+
attr_reader :cost
|
60
|
+
# @return [Vapi::CostBreakdown] This is the cost of the call in USD.
|
61
|
+
attr_reader :cost_breakdown
|
62
|
+
# @return [Vapi::ArtifactPlan] This is a copy of assistant artifact plan. This isn't actually stored on the
|
63
|
+
# call but rather just returned in POST /call/web to enable artifact creation
|
64
|
+
# client side.
|
65
|
+
attr_reader :artifact_plan
|
66
|
+
# @return [Vapi::Analysis] This is the analysis of the call. Configure in `assistant.analysisPlan`.
|
67
|
+
attr_reader :analysis
|
68
|
+
# @return [Vapi::Monitor] This is to real-time monitor the call. Configure in `assistant.monitorPlan`.
|
69
|
+
attr_reader :monitor
|
70
|
+
# @return [Vapi::Artifact] These are the artifacts created from the call. Configure in
|
71
|
+
# `assistant.artifactPlan`.
|
72
|
+
attr_reader :artifact
|
73
|
+
# @return [String] The ID of the call as provided by the phone number service. callSid in Twilio.
|
74
|
+
# conversationUuid in Vonage.
|
75
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
76
|
+
attr_reader :phone_call_provider_id
|
77
|
+
# @return [String] This is the assistant that will be used for the call. To use a transient
|
78
|
+
# assistant, use `assistant` instead.
|
79
|
+
attr_reader :assistant_id
|
80
|
+
# @return [Vapi::CreateAssistantDto] This is the assistant that will be used for the call. To use an existing
|
81
|
+
# assistant, use `assistantId` instead.
|
82
|
+
attr_reader :assistant
|
83
|
+
# @return [Vapi::AssistantOverrides] These are the overrides for the `assistant` or `assistantId`'s settings and
|
84
|
+
# template variables.
|
85
|
+
attr_reader :assistant_overrides
|
86
|
+
# @return [String] This is the squad that will be used for the call. To use a transient squad, use
|
87
|
+
# `squad` instead.
|
88
|
+
attr_reader :squad_id
|
89
|
+
# @return [Vapi::CreateSquadDto] This is a squad that will be used for the call. To use an existing squad, use
|
90
|
+
# `squadId` instead.
|
91
|
+
attr_reader :squad
|
92
|
+
# @return [String] This is the phone number that will be used for the call. To use a transient
|
93
|
+
# number, use `phoneNumber` instead.
|
94
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
95
|
+
attr_reader :phone_number_id
|
96
|
+
# @return [Vapi::ImportTwilioPhoneNumberDto] This is the phone number that will be used for the call. To use an existing
|
97
|
+
# number, use `phoneNumberId` instead.
|
98
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
99
|
+
attr_reader :phone_number
|
100
|
+
# @return [String] This is the customer that will be called. To call a transient customer , use
|
101
|
+
# `customer` instead.
|
102
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
103
|
+
attr_reader :customer_id
|
104
|
+
# @return [Vapi::CreateCustomerDto] This is the customer that will be called. To call an existing customer, use
|
105
|
+
# `customerId` instead.
|
106
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
107
|
+
attr_reader :customer
|
108
|
+
# @return [String] This is the name of the call. This is just for your own reference.
|
109
|
+
attr_reader :name
|
110
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
111
|
+
attr_reader :additional_properties
|
112
|
+
# @return [Object]
|
113
|
+
attr_reader :_field_set
|
114
|
+
protected :_field_set
|
115
|
+
|
116
|
+
OMIT = Object.new
|
117
|
+
|
118
|
+
# @param type [Vapi::CallType] This is the type of call.
|
119
|
+
# @param costs [Array<Vapi::CallCostsItem>] These are the costs of individual components of the call in USD.
|
120
|
+
# @param messages [Array<Vapi::CallMessagesItem>]
|
121
|
+
# @param phone_call_provider [Vapi::CallPhoneCallProvider] This is the provider of the call.
|
122
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
123
|
+
# @param phone_call_transport [Vapi::CallPhoneCallTransport] This is the transport of the phone call.
|
124
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
125
|
+
# @param status [Vapi::CallStatus] This is the status of the call.
|
126
|
+
# @param ended_reason [Vapi::CallEndedReason] This is the explanation for how the call ended.
|
127
|
+
# @param destination [Vapi::CallDestination] This is the destination where the call ended up being transferred to. If the
|
128
|
+
# call was not transferred, this will be empty.
|
129
|
+
# @param id [String] This is the unique identifier for the call.
|
130
|
+
# @param org_id [String] This is the unique identifier for the org that this call belongs to.
|
131
|
+
# @param created_at [DateTime] This is the ISO 8601 date-time string of when the call was created.
|
132
|
+
# @param updated_at [DateTime] This is the ISO 8601 date-time string of when the call was last updated.
|
133
|
+
# @param started_at [DateTime] This is the ISO 8601 date-time string of when the call was started.
|
134
|
+
# @param ended_at [DateTime] This is the ISO 8601 date-time string of when the call was ended.
|
135
|
+
# @param cost [Float] This is the cost of the call in USD.
|
136
|
+
# @param cost_breakdown [Vapi::CostBreakdown] This is the cost of the call in USD.
|
137
|
+
# @param artifact_plan [Vapi::ArtifactPlan] This is a copy of assistant artifact plan. This isn't actually stored on the
|
138
|
+
# call but rather just returned in POST /call/web to enable artifact creation
|
139
|
+
# client side.
|
140
|
+
# @param analysis [Vapi::Analysis] This is the analysis of the call. Configure in `assistant.analysisPlan`.
|
141
|
+
# @param monitor [Vapi::Monitor] This is to real-time monitor the call. Configure in `assistant.monitorPlan`.
|
142
|
+
# @param artifact [Vapi::Artifact] These are the artifacts created from the call. Configure in
|
143
|
+
# `assistant.artifactPlan`.
|
144
|
+
# @param phone_call_provider_id [String] The ID of the call as provided by the phone number service. callSid in Twilio.
|
145
|
+
# conversationUuid in Vonage.
|
146
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
147
|
+
# @param assistant_id [String] This is the assistant that will be used for the call. To use a transient
|
148
|
+
# assistant, use `assistant` instead.
|
149
|
+
# @param assistant [Vapi::CreateAssistantDto] This is the assistant that will be used for the call. To use an existing
|
150
|
+
# assistant, use `assistantId` instead.
|
151
|
+
# @param assistant_overrides [Vapi::AssistantOverrides] These are the overrides for the `assistant` or `assistantId`'s settings and
|
152
|
+
# template variables.
|
153
|
+
# @param squad_id [String] This is the squad that will be used for the call. To use a transient squad, use
|
154
|
+
# `squad` instead.
|
155
|
+
# @param squad [Vapi::CreateSquadDto] This is a squad that will be used for the call. To use an existing squad, use
|
156
|
+
# `squadId` instead.
|
157
|
+
# @param phone_number_id [String] This is the phone number that will be used for the call. To use a transient
|
158
|
+
# number, use `phoneNumber` instead.
|
159
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
160
|
+
# @param phone_number [Vapi::ImportTwilioPhoneNumberDto] This is the phone number that will be used for the call. To use an existing
|
161
|
+
# number, use `phoneNumberId` instead.
|
162
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
163
|
+
# @param customer_id [String] This is the customer that will be called. To call a transient customer , use
|
164
|
+
# `customer` instead.
|
165
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
166
|
+
# @param customer [Vapi::CreateCustomerDto] This is the customer that will be called. To call an existing customer, use
|
167
|
+
# `customerId` instead.
|
168
|
+
# Only relevant for `outboundPhoneCall` and `inboundPhoneCall` type.
|
169
|
+
# @param name [String] This is the name of the call. This is just for your own reference.
|
170
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
171
|
+
# @return [Vapi::Call]
|
172
|
+
def initialize(id:, org_id:, created_at:, updated_at:, type: OMIT, costs: OMIT, messages: OMIT, phone_call_provider: OMIT, phone_call_transport: OMIT,
|
173
|
+
status: OMIT, ended_reason: OMIT, destination: OMIT, started_at: OMIT, ended_at: OMIT, cost: OMIT, cost_breakdown: OMIT, artifact_plan: OMIT, analysis: OMIT, monitor: OMIT, artifact: OMIT, phone_call_provider_id: OMIT, assistant_id: OMIT, assistant: OMIT, assistant_overrides: OMIT, squad_id: OMIT, squad: OMIT, phone_number_id: OMIT, phone_number: OMIT, customer_id: OMIT, customer: OMIT, name: OMIT, additional_properties: nil)
|
174
|
+
@type = type if type != OMIT
|
175
|
+
@costs = costs if costs != OMIT
|
176
|
+
@messages = messages if messages != OMIT
|
177
|
+
@phone_call_provider = phone_call_provider if phone_call_provider != OMIT
|
178
|
+
@phone_call_transport = phone_call_transport if phone_call_transport != OMIT
|
179
|
+
@status = status if status != OMIT
|
180
|
+
@ended_reason = ended_reason if ended_reason != OMIT
|
181
|
+
@destination = destination if destination != OMIT
|
182
|
+
@id = id
|
183
|
+
@org_id = org_id
|
184
|
+
@created_at = created_at
|
185
|
+
@updated_at = updated_at
|
186
|
+
@started_at = started_at if started_at != OMIT
|
187
|
+
@ended_at = ended_at if ended_at != OMIT
|
188
|
+
@cost = cost if cost != OMIT
|
189
|
+
@cost_breakdown = cost_breakdown if cost_breakdown != OMIT
|
190
|
+
@artifact_plan = artifact_plan if artifact_plan != OMIT
|
191
|
+
@analysis = analysis if analysis != OMIT
|
192
|
+
@monitor = monitor if monitor != OMIT
|
193
|
+
@artifact = artifact if artifact != OMIT
|
194
|
+
@phone_call_provider_id = phone_call_provider_id if phone_call_provider_id != OMIT
|
195
|
+
@assistant_id = assistant_id if assistant_id != OMIT
|
196
|
+
@assistant = assistant if assistant != OMIT
|
197
|
+
@assistant_overrides = assistant_overrides if assistant_overrides != OMIT
|
198
|
+
@squad_id = squad_id if squad_id != OMIT
|
199
|
+
@squad = squad if squad != OMIT
|
200
|
+
@phone_number_id = phone_number_id if phone_number_id != OMIT
|
201
|
+
@phone_number = phone_number if phone_number != OMIT
|
202
|
+
@customer_id = customer_id if customer_id != OMIT
|
203
|
+
@customer = customer if customer != OMIT
|
204
|
+
@name = name if name != OMIT
|
205
|
+
@additional_properties = additional_properties
|
206
|
+
@_field_set = {
|
207
|
+
"type": type,
|
208
|
+
"costs": costs,
|
209
|
+
"messages": messages,
|
210
|
+
"phoneCallProvider": phone_call_provider,
|
211
|
+
"phoneCallTransport": phone_call_transport,
|
212
|
+
"status": status,
|
213
|
+
"endedReason": ended_reason,
|
214
|
+
"destination": destination,
|
215
|
+
"id": id,
|
216
|
+
"orgId": org_id,
|
217
|
+
"createdAt": created_at,
|
218
|
+
"updatedAt": updated_at,
|
219
|
+
"startedAt": started_at,
|
220
|
+
"endedAt": ended_at,
|
221
|
+
"cost": cost,
|
222
|
+
"costBreakdown": cost_breakdown,
|
223
|
+
"artifactPlan": artifact_plan,
|
224
|
+
"analysis": analysis,
|
225
|
+
"monitor": monitor,
|
226
|
+
"artifact": artifact,
|
227
|
+
"phoneCallProviderId": phone_call_provider_id,
|
228
|
+
"assistantId": assistant_id,
|
229
|
+
"assistant": assistant,
|
230
|
+
"assistantOverrides": assistant_overrides,
|
231
|
+
"squadId": squad_id,
|
232
|
+
"squad": squad,
|
233
|
+
"phoneNumberId": phone_number_id,
|
234
|
+
"phoneNumber": phone_number,
|
235
|
+
"customerId": customer_id,
|
236
|
+
"customer": customer,
|
237
|
+
"name": name
|
238
|
+
}.reject do |_k, v|
|
239
|
+
v == OMIT
|
240
|
+
end
|
241
|
+
end
|
242
|
+
|
243
|
+
# Deserialize a JSON object to an instance of Call
|
244
|
+
#
|
245
|
+
# @param json_object [String]
|
246
|
+
# @return [Vapi::Call]
|
247
|
+
def self.from_json(json_object:)
|
248
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
249
|
+
parsed_json = JSON.parse(json_object)
|
250
|
+
type = parsed_json["type"]
|
251
|
+
costs = parsed_json["costs"]&.map do |item|
|
252
|
+
item = item.to_json
|
253
|
+
Vapi::CallCostsItem.from_json(json_object: item)
|
254
|
+
end
|
255
|
+
messages = parsed_json["messages"]&.map do |item|
|
256
|
+
item = item.to_json
|
257
|
+
Vapi::CallMessagesItem.from_json(json_object: item)
|
258
|
+
end
|
259
|
+
phone_call_provider = parsed_json["phoneCallProvider"]
|
260
|
+
phone_call_transport = parsed_json["phoneCallTransport"]
|
261
|
+
status = parsed_json["status"]
|
262
|
+
ended_reason = parsed_json["endedReason"]
|
263
|
+
if parsed_json["destination"].nil?
|
264
|
+
destination = nil
|
265
|
+
else
|
266
|
+
destination = parsed_json["destination"].to_json
|
267
|
+
destination = Vapi::CallDestination.from_json(json_object: destination)
|
268
|
+
end
|
269
|
+
id = parsed_json["id"]
|
270
|
+
org_id = parsed_json["orgId"]
|
271
|
+
created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
|
272
|
+
updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
|
273
|
+
started_at = (DateTime.parse(parsed_json["startedAt"]) unless parsed_json["startedAt"].nil?)
|
274
|
+
ended_at = (DateTime.parse(parsed_json["endedAt"]) unless parsed_json["endedAt"].nil?)
|
275
|
+
cost = parsed_json["cost"]
|
276
|
+
if parsed_json["costBreakdown"].nil?
|
277
|
+
cost_breakdown = nil
|
278
|
+
else
|
279
|
+
cost_breakdown = parsed_json["costBreakdown"].to_json
|
280
|
+
cost_breakdown = Vapi::CostBreakdown.from_json(json_object: cost_breakdown)
|
281
|
+
end
|
282
|
+
if parsed_json["artifactPlan"].nil?
|
283
|
+
artifact_plan = nil
|
284
|
+
else
|
285
|
+
artifact_plan = parsed_json["artifactPlan"].to_json
|
286
|
+
artifact_plan = Vapi::ArtifactPlan.from_json(json_object: artifact_plan)
|
287
|
+
end
|
288
|
+
if parsed_json["analysis"].nil?
|
289
|
+
analysis = nil
|
290
|
+
else
|
291
|
+
analysis = parsed_json["analysis"].to_json
|
292
|
+
analysis = Vapi::Analysis.from_json(json_object: analysis)
|
293
|
+
end
|
294
|
+
if parsed_json["monitor"].nil?
|
295
|
+
monitor = nil
|
296
|
+
else
|
297
|
+
monitor = parsed_json["monitor"].to_json
|
298
|
+
monitor = Vapi::Monitor.from_json(json_object: monitor)
|
299
|
+
end
|
300
|
+
if parsed_json["artifact"].nil?
|
301
|
+
artifact = nil
|
302
|
+
else
|
303
|
+
artifact = parsed_json["artifact"].to_json
|
304
|
+
artifact = Vapi::Artifact.from_json(json_object: artifact)
|
305
|
+
end
|
306
|
+
phone_call_provider_id = parsed_json["phoneCallProviderId"]
|
307
|
+
assistant_id = parsed_json["assistantId"]
|
308
|
+
if parsed_json["assistant"].nil?
|
309
|
+
assistant = nil
|
310
|
+
else
|
311
|
+
assistant = parsed_json["assistant"].to_json
|
312
|
+
assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant)
|
313
|
+
end
|
314
|
+
if parsed_json["assistantOverrides"].nil?
|
315
|
+
assistant_overrides = nil
|
316
|
+
else
|
317
|
+
assistant_overrides = parsed_json["assistantOverrides"].to_json
|
318
|
+
assistant_overrides = Vapi::AssistantOverrides.from_json(json_object: assistant_overrides)
|
319
|
+
end
|
320
|
+
squad_id = parsed_json["squadId"]
|
321
|
+
if parsed_json["squad"].nil?
|
322
|
+
squad = nil
|
323
|
+
else
|
324
|
+
squad = parsed_json["squad"].to_json
|
325
|
+
squad = Vapi::CreateSquadDto.from_json(json_object: squad)
|
326
|
+
end
|
327
|
+
phone_number_id = parsed_json["phoneNumberId"]
|
328
|
+
if parsed_json["phoneNumber"].nil?
|
329
|
+
phone_number = nil
|
330
|
+
else
|
331
|
+
phone_number = parsed_json["phoneNumber"].to_json
|
332
|
+
phone_number = Vapi::ImportTwilioPhoneNumberDto.from_json(json_object: phone_number)
|
333
|
+
end
|
334
|
+
customer_id = parsed_json["customerId"]
|
335
|
+
if parsed_json["customer"].nil?
|
336
|
+
customer = nil
|
337
|
+
else
|
338
|
+
customer = parsed_json["customer"].to_json
|
339
|
+
customer = Vapi::CreateCustomerDto.from_json(json_object: customer)
|
340
|
+
end
|
341
|
+
name = parsed_json["name"]
|
342
|
+
new(
|
343
|
+
type: type,
|
344
|
+
costs: costs,
|
345
|
+
messages: messages,
|
346
|
+
phone_call_provider: phone_call_provider,
|
347
|
+
phone_call_transport: phone_call_transport,
|
348
|
+
status: status,
|
349
|
+
ended_reason: ended_reason,
|
350
|
+
destination: destination,
|
351
|
+
id: id,
|
352
|
+
org_id: org_id,
|
353
|
+
created_at: created_at,
|
354
|
+
updated_at: updated_at,
|
355
|
+
started_at: started_at,
|
356
|
+
ended_at: ended_at,
|
357
|
+
cost: cost,
|
358
|
+
cost_breakdown: cost_breakdown,
|
359
|
+
artifact_plan: artifact_plan,
|
360
|
+
analysis: analysis,
|
361
|
+
monitor: monitor,
|
362
|
+
artifact: artifact,
|
363
|
+
phone_call_provider_id: phone_call_provider_id,
|
364
|
+
assistant_id: assistant_id,
|
365
|
+
assistant: assistant,
|
366
|
+
assistant_overrides: assistant_overrides,
|
367
|
+
squad_id: squad_id,
|
368
|
+
squad: squad,
|
369
|
+
phone_number_id: phone_number_id,
|
370
|
+
phone_number: phone_number,
|
371
|
+
customer_id: customer_id,
|
372
|
+
customer: customer,
|
373
|
+
name: name,
|
374
|
+
additional_properties: struct
|
375
|
+
)
|
376
|
+
end
|
377
|
+
|
378
|
+
# Serialize an instance of Call to a JSON object
|
379
|
+
#
|
380
|
+
# @return [String]
|
381
|
+
def to_json(*_args)
|
382
|
+
@_field_set&.to_json
|
383
|
+
end
|
384
|
+
|
385
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
386
|
+
# hash and check each fields type against the current object's property
|
387
|
+
# definitions.
|
388
|
+
#
|
389
|
+
# @param obj [Object]
|
390
|
+
# @return [Void]
|
391
|
+
def self.validate_raw(obj:)
|
392
|
+
obj.type&.is_a?(Vapi::CallType) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
393
|
+
obj.costs&.is_a?(Array) != false || raise("Passed value for field obj.costs is not the expected type, validation failed.")
|
394
|
+
obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
|
395
|
+
obj.phone_call_provider&.is_a?(Vapi::CallPhoneCallProvider) != false || raise("Passed value for field obj.phone_call_provider is not the expected type, validation failed.")
|
396
|
+
obj.phone_call_transport&.is_a?(Vapi::CallPhoneCallTransport) != false || raise("Passed value for field obj.phone_call_transport is not the expected type, validation failed.")
|
397
|
+
obj.status&.is_a?(Vapi::CallStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
398
|
+
obj.ended_reason&.is_a?(Vapi::CallEndedReason) != false || raise("Passed value for field obj.ended_reason is not the expected type, validation failed.")
|
399
|
+
obj.destination.nil? || Vapi::CallDestination.validate_raw(obj: obj.destination)
|
400
|
+
obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
401
|
+
obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
|
402
|
+
obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
|
403
|
+
obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
|
404
|
+
obj.started_at&.is_a?(DateTime) != false || raise("Passed value for field obj.started_at is not the expected type, validation failed.")
|
405
|
+
obj.ended_at&.is_a?(DateTime) != false || raise("Passed value for field obj.ended_at is not the expected type, validation failed.")
|
406
|
+
obj.cost&.is_a?(Float) != false || raise("Passed value for field obj.cost is not the expected type, validation failed.")
|
407
|
+
obj.cost_breakdown.nil? || Vapi::CostBreakdown.validate_raw(obj: obj.cost_breakdown)
|
408
|
+
obj.artifact_plan.nil? || Vapi::ArtifactPlan.validate_raw(obj: obj.artifact_plan)
|
409
|
+
obj.analysis.nil? || Vapi::Analysis.validate_raw(obj: obj.analysis)
|
410
|
+
obj.monitor.nil? || Vapi::Monitor.validate_raw(obj: obj.monitor)
|
411
|
+
obj.artifact.nil? || Vapi::Artifact.validate_raw(obj: obj.artifact)
|
412
|
+
obj.phone_call_provider_id&.is_a?(String) != false || raise("Passed value for field obj.phone_call_provider_id is not the expected type, validation failed.")
|
413
|
+
obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
|
414
|
+
obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant)
|
415
|
+
obj.assistant_overrides.nil? || Vapi::AssistantOverrides.validate_raw(obj: obj.assistant_overrides)
|
416
|
+
obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
|
417
|
+
obj.squad.nil? || Vapi::CreateSquadDto.validate_raw(obj: obj.squad)
|
418
|
+
obj.phone_number_id&.is_a?(String) != false || raise("Passed value for field obj.phone_number_id is not the expected type, validation failed.")
|
419
|
+
obj.phone_number.nil? || Vapi::ImportTwilioPhoneNumberDto.validate_raw(obj: obj.phone_number)
|
420
|
+
obj.customer_id&.is_a?(String) != false || raise("Passed value for field obj.customer_id is not the expected type, validation failed.")
|
421
|
+
obj.customer.nil? || Vapi::CreateCustomerDto.validate_raw(obj: obj.customer)
|
422
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
423
|
+
end
|
424
|
+
end
|
425
|
+
end
|
@@ -0,0 +1,146 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "transport_cost"
|
5
|
+
require_relative "transcriber_cost"
|
6
|
+
require_relative "model_cost"
|
7
|
+
require_relative "voice_cost"
|
8
|
+
require_relative "vapi_cost"
|
9
|
+
require_relative "analysis_cost"
|
10
|
+
|
11
|
+
module Vapi
|
12
|
+
class CallCostsItem
|
13
|
+
# @return [Object]
|
14
|
+
attr_reader :member
|
15
|
+
# @return [String]
|
16
|
+
attr_reader :discriminant
|
17
|
+
|
18
|
+
private_class_method :new
|
19
|
+
alias kind_of? is_a?
|
20
|
+
|
21
|
+
# @param member [Object]
|
22
|
+
# @param discriminant [String]
|
23
|
+
# @return [Vapi::CallCostsItem]
|
24
|
+
def initialize(member:, discriminant:)
|
25
|
+
@member = member
|
26
|
+
@discriminant = discriminant
|
27
|
+
end
|
28
|
+
|
29
|
+
# Deserialize a JSON object to an instance of CallCostsItem
|
30
|
+
#
|
31
|
+
# @param json_object [String]
|
32
|
+
# @return [Vapi::CallCostsItem]
|
33
|
+
def self.from_json(json_object:)
|
34
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
35
|
+
member = case struct.type
|
36
|
+
when "transport"
|
37
|
+
Vapi::TransportCost.from_json(json_object: json_object)
|
38
|
+
when "transcriber"
|
39
|
+
Vapi::TranscriberCost.from_json(json_object: json_object)
|
40
|
+
when "model"
|
41
|
+
Vapi::ModelCost.from_json(json_object: json_object)
|
42
|
+
when "voice"
|
43
|
+
Vapi::VoiceCost.from_json(json_object: json_object)
|
44
|
+
when "vapi"
|
45
|
+
Vapi::VapiCost.from_json(json_object: json_object)
|
46
|
+
when "analysis"
|
47
|
+
Vapi::AnalysisCost.from_json(json_object: json_object)
|
48
|
+
else
|
49
|
+
Vapi::TransportCost.from_json(json_object: json_object)
|
50
|
+
end
|
51
|
+
new(member: member, discriminant: struct.type)
|
52
|
+
end
|
53
|
+
|
54
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
55
|
+
#
|
56
|
+
# @return [String]
|
57
|
+
def to_json(*_args)
|
58
|
+
case @discriminant
|
59
|
+
when "transport"
|
60
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
61
|
+
when "transcriber"
|
62
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
63
|
+
when "model"
|
64
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
65
|
+
when "voice"
|
66
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
67
|
+
when "vapi"
|
68
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
69
|
+
when "analysis"
|
70
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
71
|
+
else
|
72
|
+
{ "type": @discriminant, value: @member }.to_json
|
73
|
+
end
|
74
|
+
@member.to_json
|
75
|
+
end
|
76
|
+
|
77
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
78
|
+
# hash and check each fields type against the current object's property
|
79
|
+
# definitions.
|
80
|
+
#
|
81
|
+
# @param obj [Object]
|
82
|
+
# @return [Void]
|
83
|
+
def self.validate_raw(obj:)
|
84
|
+
case obj.type
|
85
|
+
when "transport"
|
86
|
+
Vapi::TransportCost.validate_raw(obj: obj)
|
87
|
+
when "transcriber"
|
88
|
+
Vapi::TranscriberCost.validate_raw(obj: obj)
|
89
|
+
when "model"
|
90
|
+
Vapi::ModelCost.validate_raw(obj: obj)
|
91
|
+
when "voice"
|
92
|
+
Vapi::VoiceCost.validate_raw(obj: obj)
|
93
|
+
when "vapi"
|
94
|
+
Vapi::VapiCost.validate_raw(obj: obj)
|
95
|
+
when "analysis"
|
96
|
+
Vapi::AnalysisCost.validate_raw(obj: obj)
|
97
|
+
else
|
98
|
+
raise("Passed value matched no type within the union, validation failed.")
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
103
|
+
#
|
104
|
+
# @param obj [Object]
|
105
|
+
# @return [Boolean]
|
106
|
+
def is_a?(obj)
|
107
|
+
@member.is_a?(obj)
|
108
|
+
end
|
109
|
+
|
110
|
+
# @param member [Vapi::TransportCost]
|
111
|
+
# @return [Vapi::CallCostsItem]
|
112
|
+
def self.transport(member:)
|
113
|
+
new(member: member, discriminant: "transport")
|
114
|
+
end
|
115
|
+
|
116
|
+
# @param member [Vapi::TranscriberCost]
|
117
|
+
# @return [Vapi::CallCostsItem]
|
118
|
+
def self.transcriber(member:)
|
119
|
+
new(member: member, discriminant: "transcriber")
|
120
|
+
end
|
121
|
+
|
122
|
+
# @param member [Vapi::ModelCost]
|
123
|
+
# @return [Vapi::CallCostsItem]
|
124
|
+
def self.model(member:)
|
125
|
+
new(member: member, discriminant: "model")
|
126
|
+
end
|
127
|
+
|
128
|
+
# @param member [Vapi::VoiceCost]
|
129
|
+
# @return [Vapi::CallCostsItem]
|
130
|
+
def self.voice(member:)
|
131
|
+
new(member: member, discriminant: "voice")
|
132
|
+
end
|
133
|
+
|
134
|
+
# @param member [Vapi::VapiCost]
|
135
|
+
# @return [Vapi::CallCostsItem]
|
136
|
+
def self.vapi(member:)
|
137
|
+
new(member: member, discriminant: "vapi")
|
138
|
+
end
|
139
|
+
|
140
|
+
# @param member [Vapi::AnalysisCost]
|
141
|
+
# @return [Vapi::CallCostsItem]
|
142
|
+
def self.analysis(member:)
|
143
|
+
new(member: member, discriminant: "analysis")
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "transfer_destination_number"
|
5
|
+
require_relative "transfer_destination_sip"
|
6
|
+
|
7
|
+
module Vapi
|
8
|
+
# This is the destination where the call ended up being transferred to. If the
|
9
|
+
# call was not transferred, this will be empty.
|
10
|
+
class CallDestination
|
11
|
+
# @return [Object]
|
12
|
+
attr_reader :member
|
13
|
+
# @return [String]
|
14
|
+
attr_reader :discriminant
|
15
|
+
|
16
|
+
private_class_method :new
|
17
|
+
alias kind_of? is_a?
|
18
|
+
|
19
|
+
# @param member [Object]
|
20
|
+
# @param discriminant [String]
|
21
|
+
# @return [Vapi::CallDestination]
|
22
|
+
def initialize(member:, discriminant:)
|
23
|
+
@member = member
|
24
|
+
@discriminant = discriminant
|
25
|
+
end
|
26
|
+
|
27
|
+
# Deserialize a JSON object to an instance of CallDestination
|
28
|
+
#
|
29
|
+
# @param json_object [String]
|
30
|
+
# @return [Vapi::CallDestination]
|
31
|
+
def self.from_json(json_object:)
|
32
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
33
|
+
member = case struct.type
|
34
|
+
when "number"
|
35
|
+
Vapi::TransferDestinationNumber.from_json(json_object: json_object)
|
36
|
+
when "sip"
|
37
|
+
Vapi::TransferDestinationSip.from_json(json_object: json_object)
|
38
|
+
else
|
39
|
+
Vapi::TransferDestinationNumber.from_json(json_object: json_object)
|
40
|
+
end
|
41
|
+
new(member: member, discriminant: struct.type)
|
42
|
+
end
|
43
|
+
|
44
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
45
|
+
#
|
46
|
+
# @return [String]
|
47
|
+
def to_json(*_args)
|
48
|
+
case @discriminant
|
49
|
+
when "number"
|
50
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
51
|
+
when "sip"
|
52
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
53
|
+
else
|
54
|
+
{ "type": @discriminant, value: @member }.to_json
|
55
|
+
end
|
56
|
+
@member.to_json
|
57
|
+
end
|
58
|
+
|
59
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
60
|
+
# hash and check each fields type against the current object's property
|
61
|
+
# definitions.
|
62
|
+
#
|
63
|
+
# @param obj [Object]
|
64
|
+
# @return [Void]
|
65
|
+
def self.validate_raw(obj:)
|
66
|
+
case obj.type
|
67
|
+
when "number"
|
68
|
+
Vapi::TransferDestinationNumber.validate_raw(obj: obj)
|
69
|
+
when "sip"
|
70
|
+
Vapi::TransferDestinationSip.validate_raw(obj: obj)
|
71
|
+
else
|
72
|
+
raise("Passed value matched no type within the union, validation failed.")
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
77
|
+
#
|
78
|
+
# @param obj [Object]
|
79
|
+
# @return [Boolean]
|
80
|
+
def is_a?(obj)
|
81
|
+
@member.is_a?(obj)
|
82
|
+
end
|
83
|
+
|
84
|
+
# @param member [Vapi::TransferDestinationNumber]
|
85
|
+
# @return [Vapi::CallDestination]
|
86
|
+
def self.number(member:)
|
87
|
+
new(member: member, discriminant: "number")
|
88
|
+
end
|
89
|
+
|
90
|
+
# @param member [Vapi::TransferDestinationSip]
|
91
|
+
# @return [Vapi::CallDestination]
|
92
|
+
def self.sip(member:)
|
93
|
+
new(member: member, discriminant: "sip")
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|