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,94 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "block_start_message"
|
5
|
+
require_relative "block_complete_message"
|
6
|
+
|
7
|
+
module Vapi
|
8
|
+
class ToolCallBlockMessagesItem
|
9
|
+
# @return [Object]
|
10
|
+
attr_reader :member
|
11
|
+
# @return [String]
|
12
|
+
attr_reader :discriminant
|
13
|
+
|
14
|
+
private_class_method :new
|
15
|
+
alias kind_of? is_a?
|
16
|
+
|
17
|
+
# @param member [Object]
|
18
|
+
# @param discriminant [String]
|
19
|
+
# @return [Vapi::ToolCallBlockMessagesItem]
|
20
|
+
def initialize(member:, discriminant:)
|
21
|
+
@member = member
|
22
|
+
@discriminant = discriminant
|
23
|
+
end
|
24
|
+
|
25
|
+
# Deserialize a JSON object to an instance of ToolCallBlockMessagesItem
|
26
|
+
#
|
27
|
+
# @param json_object [String]
|
28
|
+
# @return [Vapi::ToolCallBlockMessagesItem]
|
29
|
+
def self.from_json(json_object:)
|
30
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
31
|
+
member = case struct.type
|
32
|
+
when "block-start"
|
33
|
+
Vapi::BlockStartMessage.from_json(json_object: json_object)
|
34
|
+
when "block-complete"
|
35
|
+
Vapi::BlockCompleteMessage.from_json(json_object: json_object)
|
36
|
+
else
|
37
|
+
Vapi::BlockStartMessage.from_json(json_object: json_object)
|
38
|
+
end
|
39
|
+
new(member: member, discriminant: struct.type)
|
40
|
+
end
|
41
|
+
|
42
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
43
|
+
#
|
44
|
+
# @return [String]
|
45
|
+
def to_json(*_args)
|
46
|
+
case @discriminant
|
47
|
+
when "block-start"
|
48
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
49
|
+
when "block-complete"
|
50
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
51
|
+
else
|
52
|
+
{ "type": @discriminant, value: @member }.to_json
|
53
|
+
end
|
54
|
+
@member.to_json
|
55
|
+
end
|
56
|
+
|
57
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
58
|
+
# hash and check each fields type against the current object's property
|
59
|
+
# definitions.
|
60
|
+
#
|
61
|
+
# @param obj [Object]
|
62
|
+
# @return [Void]
|
63
|
+
def self.validate_raw(obj:)
|
64
|
+
case obj.type
|
65
|
+
when "block-start"
|
66
|
+
Vapi::BlockStartMessage.validate_raw(obj: obj)
|
67
|
+
when "block-complete"
|
68
|
+
Vapi::BlockCompleteMessage.validate_raw(obj: obj)
|
69
|
+
else
|
70
|
+
raise("Passed value matched no type within the union, validation failed.")
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Boolean]
|
78
|
+
def is_a?(obj)
|
79
|
+
@member.is_a?(obj)
|
80
|
+
end
|
81
|
+
|
82
|
+
# @param member [Vapi::BlockStartMessage]
|
83
|
+
# @return [Vapi::ToolCallBlockMessagesItem]
|
84
|
+
def self.block_start(member:)
|
85
|
+
new(member: member, discriminant: "block-start")
|
86
|
+
end
|
87
|
+
|
88
|
+
# @param member [Vapi::BlockCompleteMessage]
|
89
|
+
# @return [Vapi::ToolCallBlockMessagesItem]
|
90
|
+
def self.block_complete(member:)
|
91
|
+
new(member: member, discriminant: "block-complete")
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
@@ -0,0 +1,161 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "create_dtmf_tool_dto"
|
5
|
+
require_relative "create_end_call_tool_dto"
|
6
|
+
require_relative "create_voicemail_tool_dto"
|
7
|
+
require_relative "create_function_tool_dto"
|
8
|
+
require_relative "create_ghl_tool_dto"
|
9
|
+
require_relative "create_make_tool_dto"
|
10
|
+
require_relative "create_transfer_call_tool_dto"
|
11
|
+
|
12
|
+
module Vapi
|
13
|
+
# This is the tool that the block will call. To use an existing tool, use
|
14
|
+
# `toolId`.
|
15
|
+
class ToolCallBlockTool
|
16
|
+
# @return [Object]
|
17
|
+
attr_reader :member
|
18
|
+
# @return [String]
|
19
|
+
attr_reader :discriminant
|
20
|
+
|
21
|
+
private_class_method :new
|
22
|
+
alias kind_of? is_a?
|
23
|
+
|
24
|
+
# @param member [Object]
|
25
|
+
# @param discriminant [String]
|
26
|
+
# @return [Vapi::ToolCallBlockTool]
|
27
|
+
def initialize(member:, discriminant:)
|
28
|
+
@member = member
|
29
|
+
@discriminant = discriminant
|
30
|
+
end
|
31
|
+
|
32
|
+
# Deserialize a JSON object to an instance of ToolCallBlockTool
|
33
|
+
#
|
34
|
+
# @param json_object [String]
|
35
|
+
# @return [Vapi::ToolCallBlockTool]
|
36
|
+
def self.from_json(json_object:)
|
37
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
38
|
+
member = case struct.type
|
39
|
+
when "dtmf"
|
40
|
+
Vapi::CreateDtmfToolDto.from_json(json_object: json_object)
|
41
|
+
when "endCall"
|
42
|
+
Vapi::CreateEndCallToolDto.from_json(json_object: json_object)
|
43
|
+
when "voicemail"
|
44
|
+
Vapi::CreateVoicemailToolDto.from_json(json_object: json_object)
|
45
|
+
when "function"
|
46
|
+
Vapi::CreateFunctionToolDto.from_json(json_object: json_object)
|
47
|
+
when "ghl"
|
48
|
+
Vapi::CreateGhlToolDto.from_json(json_object: json_object)
|
49
|
+
when "make"
|
50
|
+
Vapi::CreateMakeToolDto.from_json(json_object: json_object)
|
51
|
+
when "transferCall"
|
52
|
+
Vapi::CreateTransferCallToolDto.from_json(json_object: json_object)
|
53
|
+
else
|
54
|
+
Vapi::CreateDtmfToolDto.from_json(json_object: json_object)
|
55
|
+
end
|
56
|
+
new(member: member, discriminant: struct.type)
|
57
|
+
end
|
58
|
+
|
59
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
60
|
+
#
|
61
|
+
# @return [String]
|
62
|
+
def to_json(*_args)
|
63
|
+
case @discriminant
|
64
|
+
when "dtmf"
|
65
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
66
|
+
when "endCall"
|
67
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
68
|
+
when "voicemail"
|
69
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
70
|
+
when "function"
|
71
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
72
|
+
when "ghl"
|
73
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
74
|
+
when "make"
|
75
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
76
|
+
when "transferCall"
|
77
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
78
|
+
else
|
79
|
+
{ "type": @discriminant, value: @member }.to_json
|
80
|
+
end
|
81
|
+
@member.to_json
|
82
|
+
end
|
83
|
+
|
84
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
85
|
+
# hash and check each fields type against the current object's property
|
86
|
+
# definitions.
|
87
|
+
#
|
88
|
+
# @param obj [Object]
|
89
|
+
# @return [Void]
|
90
|
+
def self.validate_raw(obj:)
|
91
|
+
case obj.type
|
92
|
+
when "dtmf"
|
93
|
+
Vapi::CreateDtmfToolDto.validate_raw(obj: obj)
|
94
|
+
when "endCall"
|
95
|
+
Vapi::CreateEndCallToolDto.validate_raw(obj: obj)
|
96
|
+
when "voicemail"
|
97
|
+
Vapi::CreateVoicemailToolDto.validate_raw(obj: obj)
|
98
|
+
when "function"
|
99
|
+
Vapi::CreateFunctionToolDto.validate_raw(obj: obj)
|
100
|
+
when "ghl"
|
101
|
+
Vapi::CreateGhlToolDto.validate_raw(obj: obj)
|
102
|
+
when "make"
|
103
|
+
Vapi::CreateMakeToolDto.validate_raw(obj: obj)
|
104
|
+
when "transferCall"
|
105
|
+
Vapi::CreateTransferCallToolDto.validate_raw(obj: obj)
|
106
|
+
else
|
107
|
+
raise("Passed value matched no type within the union, validation failed.")
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
112
|
+
#
|
113
|
+
# @param obj [Object]
|
114
|
+
# @return [Boolean]
|
115
|
+
def is_a?(obj)
|
116
|
+
@member.is_a?(obj)
|
117
|
+
end
|
118
|
+
|
119
|
+
# @param member [Vapi::CreateDtmfToolDto]
|
120
|
+
# @return [Vapi::ToolCallBlockTool]
|
121
|
+
def self.dtmf(member:)
|
122
|
+
new(member: member, discriminant: "dtmf")
|
123
|
+
end
|
124
|
+
|
125
|
+
# @param member [Vapi::CreateEndCallToolDto]
|
126
|
+
# @return [Vapi::ToolCallBlockTool]
|
127
|
+
def self.end_call(member:)
|
128
|
+
new(member: member, discriminant: "endCall")
|
129
|
+
end
|
130
|
+
|
131
|
+
# @param member [Vapi::CreateVoicemailToolDto]
|
132
|
+
# @return [Vapi::ToolCallBlockTool]
|
133
|
+
def self.voicemail(member:)
|
134
|
+
new(member: member, discriminant: "voicemail")
|
135
|
+
end
|
136
|
+
|
137
|
+
# @param member [Vapi::CreateFunctionToolDto]
|
138
|
+
# @return [Vapi::ToolCallBlockTool]
|
139
|
+
def self.function(member:)
|
140
|
+
new(member: member, discriminant: "function")
|
141
|
+
end
|
142
|
+
|
143
|
+
# @param member [Vapi::CreateGhlToolDto]
|
144
|
+
# @return [Vapi::ToolCallBlockTool]
|
145
|
+
def self.ghl(member:)
|
146
|
+
new(member: member, discriminant: "ghl")
|
147
|
+
end
|
148
|
+
|
149
|
+
# @param member [Vapi::CreateMakeToolDto]
|
150
|
+
# @return [Vapi::ToolCallBlockTool]
|
151
|
+
def self.make(member:)
|
152
|
+
new(member: member, discriminant: "make")
|
153
|
+
end
|
154
|
+
|
155
|
+
# @param member [Vapi::CreateTransferCallToolDto]
|
156
|
+
# @return [Vapi::ToolCallBlockTool]
|
157
|
+
def self.transfer_call(member:)
|
158
|
+
new(member: member, discriminant: "transferCall")
|
159
|
+
end
|
160
|
+
end
|
161
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Vapi
|
7
|
+
class ToolCallFunction
|
8
|
+
# @return [String] This is the name of the function the model called.
|
9
|
+
attr_reader :name
|
10
|
+
# @return [Hash{String => Object}] These are the arguments that the function was called with.
|
11
|
+
attr_reader :arguments
|
12
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
13
|
+
attr_reader :additional_properties
|
14
|
+
# @return [Object]
|
15
|
+
attr_reader :_field_set
|
16
|
+
protected :_field_set
|
17
|
+
|
18
|
+
OMIT = Object.new
|
19
|
+
|
20
|
+
# @param name [String] This is the name of the function the model called.
|
21
|
+
# @param arguments [Hash{String => Object}] These are the arguments that the function was called with.
|
22
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
23
|
+
# @return [Vapi::ToolCallFunction]
|
24
|
+
def initialize(name:, arguments:, additional_properties: nil)
|
25
|
+
@name = name
|
26
|
+
@arguments = arguments
|
27
|
+
@additional_properties = additional_properties
|
28
|
+
@_field_set = { "name": name, "arguments": arguments }
|
29
|
+
end
|
30
|
+
|
31
|
+
# Deserialize a JSON object to an instance of ToolCallFunction
|
32
|
+
#
|
33
|
+
# @param json_object [String]
|
34
|
+
# @return [Vapi::ToolCallFunction]
|
35
|
+
def self.from_json(json_object:)
|
36
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
37
|
+
parsed_json = JSON.parse(json_object)
|
38
|
+
name = parsed_json["name"]
|
39
|
+
arguments = parsed_json["arguments"]
|
40
|
+
new(
|
41
|
+
name: name,
|
42
|
+
arguments: arguments,
|
43
|
+
additional_properties: struct
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Serialize an instance of ToolCallFunction to a JSON object
|
48
|
+
#
|
49
|
+
# @return [String]
|
50
|
+
def to_json(*_args)
|
51
|
+
@_field_set&.to_json
|
52
|
+
end
|
53
|
+
|
54
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
55
|
+
# hash and check each fields type against the current object's property
|
56
|
+
# definitions.
|
57
|
+
#
|
58
|
+
# @param obj [Object]
|
59
|
+
# @return [Void]
|
60
|
+
def self.validate_raw(obj:)
|
61
|
+
obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
62
|
+
obj.arguments.is_a?(Hash) != false || raise("Passed value for field obj.arguments is not the expected type, validation failed.")
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,92 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Vapi
|
7
|
+
class ToolCallMessage
|
8
|
+
# @return [String] The role of the tool call in the conversation.
|
9
|
+
attr_reader :role
|
10
|
+
# @return [Array<Hash{String => Object}>] The list of tool calls made during the conversation.
|
11
|
+
attr_reader :tool_calls
|
12
|
+
# @return [String] The message content for the tool call.
|
13
|
+
attr_reader :message
|
14
|
+
# @return [Float] The timestamp when the message was sent.
|
15
|
+
attr_reader :time
|
16
|
+
# @return [Float] The number of seconds from the start of the conversation.
|
17
|
+
attr_reader :seconds_from_start
|
18
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
19
|
+
attr_reader :additional_properties
|
20
|
+
# @return [Object]
|
21
|
+
attr_reader :_field_set
|
22
|
+
protected :_field_set
|
23
|
+
|
24
|
+
OMIT = Object.new
|
25
|
+
|
26
|
+
# @param role [String] The role of the tool call in the conversation.
|
27
|
+
# @param tool_calls [Array<Hash{String => Object}>] The list of tool calls made during the conversation.
|
28
|
+
# @param message [String] The message content for the tool call.
|
29
|
+
# @param time [Float] The timestamp when the message was sent.
|
30
|
+
# @param seconds_from_start [Float] The number of seconds from the start of the conversation.
|
31
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
32
|
+
# @return [Vapi::ToolCallMessage]
|
33
|
+
def initialize(role:, tool_calls:, message:, time:, seconds_from_start:, additional_properties: nil)
|
34
|
+
@role = role
|
35
|
+
@tool_calls = tool_calls
|
36
|
+
@message = message
|
37
|
+
@time = time
|
38
|
+
@seconds_from_start = seconds_from_start
|
39
|
+
@additional_properties = additional_properties
|
40
|
+
@_field_set = {
|
41
|
+
"role": role,
|
42
|
+
"toolCalls": tool_calls,
|
43
|
+
"message": message,
|
44
|
+
"time": time,
|
45
|
+
"secondsFromStart": seconds_from_start
|
46
|
+
}
|
47
|
+
end
|
48
|
+
|
49
|
+
# Deserialize a JSON object to an instance of ToolCallMessage
|
50
|
+
#
|
51
|
+
# @param json_object [String]
|
52
|
+
# @return [Vapi::ToolCallMessage]
|
53
|
+
def self.from_json(json_object:)
|
54
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
55
|
+
parsed_json = JSON.parse(json_object)
|
56
|
+
role = parsed_json["role"]
|
57
|
+
tool_calls = parsed_json["toolCalls"]
|
58
|
+
message = parsed_json["message"]
|
59
|
+
time = parsed_json["time"]
|
60
|
+
seconds_from_start = parsed_json["secondsFromStart"]
|
61
|
+
new(
|
62
|
+
role: role,
|
63
|
+
tool_calls: tool_calls,
|
64
|
+
message: message,
|
65
|
+
time: time,
|
66
|
+
seconds_from_start: seconds_from_start,
|
67
|
+
additional_properties: struct
|
68
|
+
)
|
69
|
+
end
|
70
|
+
|
71
|
+
# Serialize an instance of ToolCallMessage to a JSON object
|
72
|
+
#
|
73
|
+
# @return [String]
|
74
|
+
def to_json(*_args)
|
75
|
+
@_field_set&.to_json
|
76
|
+
end
|
77
|
+
|
78
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
79
|
+
# hash and check each fields type against the current object's property
|
80
|
+
# definitions.
|
81
|
+
#
|
82
|
+
# @param obj [Object]
|
83
|
+
# @return [Void]
|
84
|
+
def self.validate_raw(obj:)
|
85
|
+
obj.role.is_a?(String) != false || raise("Passed value for field obj.role is not the expected type, validation failed.")
|
86
|
+
obj.tool_calls.is_a?(Array) != false || raise("Passed value for field obj.tool_calls is not the expected type, validation failed.")
|
87
|
+
obj.message.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
|
88
|
+
obj.time.is_a?(Float) != false || raise("Passed value for field obj.time is not the expected type, validation failed.")
|
89
|
+
obj.seconds_from_start.is_a?(Float) != false || raise("Passed value for field obj.seconds_from_start is not the expected type, validation failed.")
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
@@ -0,0 +1,126 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "tool_call_result_message_item"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module Vapi
|
8
|
+
class ToolCallResult
|
9
|
+
# @return [Array<Vapi::ToolCallResultMessageItem>] This is the message that will be spoken to the user.
|
10
|
+
# If this is not returned, assistant will speak:
|
11
|
+
# 1. a `request-complete` or `request-failed` message from `tool.messages`, if it
|
12
|
+
# exists
|
13
|
+
# 2. a response generated by the model, if not
|
14
|
+
attr_reader :message
|
15
|
+
# @return [String] This is the name of the function the model called.
|
16
|
+
attr_reader :name
|
17
|
+
# @return [String] This is the unique identifier for the tool call.
|
18
|
+
attr_reader :tool_call_id
|
19
|
+
# @return [String] This is the result if the tool call was successful. This is added to the
|
20
|
+
# conversation history.
|
21
|
+
# Further, if this is returned, assistant will speak:
|
22
|
+
# 1. the `message`, if it exists and is of type `request-complete`
|
23
|
+
# 2. a `request-complete` message from `tool.messages`, if it exists
|
24
|
+
# 3. a response generated by the model, if neither exist
|
25
|
+
attr_reader :result
|
26
|
+
# @return [String] This is the error if the tool call was not successful. This is added to the
|
27
|
+
# conversation history.
|
28
|
+
# Further, if this is returned, assistant will speak:
|
29
|
+
# 1. the `message`, if it exists and is of type `request-failed`
|
30
|
+
# 2. a `request-failed` message from `tool.messages`, if it exists
|
31
|
+
# 3. a response generated by the model, if neither exist
|
32
|
+
attr_reader :error
|
33
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
34
|
+
attr_reader :additional_properties
|
35
|
+
# @return [Object]
|
36
|
+
attr_reader :_field_set
|
37
|
+
protected :_field_set
|
38
|
+
|
39
|
+
OMIT = Object.new
|
40
|
+
|
41
|
+
# @param message [Array<Vapi::ToolCallResultMessageItem>] This is the message that will be spoken to the user.
|
42
|
+
# If this is not returned, assistant will speak:
|
43
|
+
# 1. a `request-complete` or `request-failed` message from `tool.messages`, if it
|
44
|
+
# exists
|
45
|
+
# 2. a response generated by the model, if not
|
46
|
+
# @param name [String] This is the name of the function the model called.
|
47
|
+
# @param tool_call_id [String] This is the unique identifier for the tool call.
|
48
|
+
# @param result [String] This is the result if the tool call was successful. This is added to the
|
49
|
+
# conversation history.
|
50
|
+
# Further, if this is returned, assistant will speak:
|
51
|
+
# 1. the `message`, if it exists and is of type `request-complete`
|
52
|
+
# 2. a `request-complete` message from `tool.messages`, if it exists
|
53
|
+
# 3. a response generated by the model, if neither exist
|
54
|
+
# @param error [String] This is the error if the tool call was not successful. This is added to the
|
55
|
+
# conversation history.
|
56
|
+
# Further, if this is returned, assistant will speak:
|
57
|
+
# 1. the `message`, if it exists and is of type `request-failed`
|
58
|
+
# 2. a `request-failed` message from `tool.messages`, if it exists
|
59
|
+
# 3. a response generated by the model, if neither exist
|
60
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
61
|
+
# @return [Vapi::ToolCallResult]
|
62
|
+
def initialize(name:, tool_call_id:, message: OMIT, result: OMIT, error: OMIT, additional_properties: nil)
|
63
|
+
@message = message if message != OMIT
|
64
|
+
@name = name
|
65
|
+
@tool_call_id = tool_call_id
|
66
|
+
@result = result if result != OMIT
|
67
|
+
@error = error if error != OMIT
|
68
|
+
@additional_properties = additional_properties
|
69
|
+
@_field_set = {
|
70
|
+
"message": message,
|
71
|
+
"name": name,
|
72
|
+
"toolCallId": tool_call_id,
|
73
|
+
"result": result,
|
74
|
+
"error": error
|
75
|
+
}.reject do |_k, v|
|
76
|
+
v == OMIT
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
# Deserialize a JSON object to an instance of ToolCallResult
|
81
|
+
#
|
82
|
+
# @param json_object [String]
|
83
|
+
# @return [Vapi::ToolCallResult]
|
84
|
+
def self.from_json(json_object:)
|
85
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
86
|
+
parsed_json = JSON.parse(json_object)
|
87
|
+
message = parsed_json["message"]&.map do |item|
|
88
|
+
item = item.to_json
|
89
|
+
Vapi::ToolCallResultMessageItem.from_json(json_object: item)
|
90
|
+
end
|
91
|
+
name = parsed_json["name"]
|
92
|
+
tool_call_id = parsed_json["toolCallId"]
|
93
|
+
result = parsed_json["result"]
|
94
|
+
error = parsed_json["error"]
|
95
|
+
new(
|
96
|
+
message: message,
|
97
|
+
name: name,
|
98
|
+
tool_call_id: tool_call_id,
|
99
|
+
result: result,
|
100
|
+
error: error,
|
101
|
+
additional_properties: struct
|
102
|
+
)
|
103
|
+
end
|
104
|
+
|
105
|
+
# Serialize an instance of ToolCallResult to a JSON object
|
106
|
+
#
|
107
|
+
# @return [String]
|
108
|
+
def to_json(*_args)
|
109
|
+
@_field_set&.to_json
|
110
|
+
end
|
111
|
+
|
112
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
113
|
+
# hash and check each fields type against the current object's property
|
114
|
+
# definitions.
|
115
|
+
#
|
116
|
+
# @param obj [Object]
|
117
|
+
# @return [Void]
|
118
|
+
def self.validate_raw(obj:)
|
119
|
+
obj.message&.is_a?(Array) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
|
120
|
+
obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
121
|
+
obj.tool_call_id.is_a?(String) != false || raise("Passed value for field obj.tool_call_id is not the expected type, validation failed.")
|
122
|
+
obj.result&.is_a?(String) != false || raise("Passed value for field obj.result is not the expected type, validation failed.")
|
123
|
+
obj.error&.is_a?(String) != false || raise("Passed value for field obj.error is not the expected type, validation failed.")
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
@@ -0,0 +1,100 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Vapi
|
7
|
+
class ToolCallResultMessage
|
8
|
+
# @return [String] The role of the tool call result in the conversation.
|
9
|
+
attr_reader :role
|
10
|
+
# @return [String] The ID of the tool call.
|
11
|
+
attr_reader :tool_call_id
|
12
|
+
# @return [String] The name of the tool that returned the result.
|
13
|
+
attr_reader :name
|
14
|
+
# @return [String] The result of the tool call in JSON format.
|
15
|
+
attr_reader :result
|
16
|
+
# @return [Float] The timestamp when the message was sent.
|
17
|
+
attr_reader :time
|
18
|
+
# @return [Float] The number of seconds from the start of the conversation.
|
19
|
+
attr_reader :seconds_from_start
|
20
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
21
|
+
attr_reader :additional_properties
|
22
|
+
# @return [Object]
|
23
|
+
attr_reader :_field_set
|
24
|
+
protected :_field_set
|
25
|
+
|
26
|
+
OMIT = Object.new
|
27
|
+
|
28
|
+
# @param role [String] The role of the tool call result in the conversation.
|
29
|
+
# @param tool_call_id [String] The ID of the tool call.
|
30
|
+
# @param name [String] The name of the tool that returned the result.
|
31
|
+
# @param result [String] The result of the tool call in JSON format.
|
32
|
+
# @param time [Float] The timestamp when the message was sent.
|
33
|
+
# @param seconds_from_start [Float] The number of seconds from the start of the conversation.
|
34
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
35
|
+
# @return [Vapi::ToolCallResultMessage]
|
36
|
+
def initialize(role:, tool_call_id:, name:, result:, time:, seconds_from_start:, additional_properties: nil)
|
37
|
+
@role = role
|
38
|
+
@tool_call_id = tool_call_id
|
39
|
+
@name = name
|
40
|
+
@result = result
|
41
|
+
@time = time
|
42
|
+
@seconds_from_start = seconds_from_start
|
43
|
+
@additional_properties = additional_properties
|
44
|
+
@_field_set = {
|
45
|
+
"role": role,
|
46
|
+
"toolCallId": tool_call_id,
|
47
|
+
"name": name,
|
48
|
+
"result": result,
|
49
|
+
"time": time,
|
50
|
+
"secondsFromStart": seconds_from_start
|
51
|
+
}
|
52
|
+
end
|
53
|
+
|
54
|
+
# Deserialize a JSON object to an instance of ToolCallResultMessage
|
55
|
+
#
|
56
|
+
# @param json_object [String]
|
57
|
+
# @return [Vapi::ToolCallResultMessage]
|
58
|
+
def self.from_json(json_object:)
|
59
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
60
|
+
parsed_json = JSON.parse(json_object)
|
61
|
+
role = parsed_json["role"]
|
62
|
+
tool_call_id = parsed_json["toolCallId"]
|
63
|
+
name = parsed_json["name"]
|
64
|
+
result = parsed_json["result"]
|
65
|
+
time = parsed_json["time"]
|
66
|
+
seconds_from_start = parsed_json["secondsFromStart"]
|
67
|
+
new(
|
68
|
+
role: role,
|
69
|
+
tool_call_id: tool_call_id,
|
70
|
+
name: name,
|
71
|
+
result: result,
|
72
|
+
time: time,
|
73
|
+
seconds_from_start: seconds_from_start,
|
74
|
+
additional_properties: struct
|
75
|
+
)
|
76
|
+
end
|
77
|
+
|
78
|
+
# Serialize an instance of ToolCallResultMessage to a JSON object
|
79
|
+
#
|
80
|
+
# @return [String]
|
81
|
+
def to_json(*_args)
|
82
|
+
@_field_set&.to_json
|
83
|
+
end
|
84
|
+
|
85
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
86
|
+
# hash and check each fields type against the current object's property
|
87
|
+
# definitions.
|
88
|
+
#
|
89
|
+
# @param obj [Object]
|
90
|
+
# @return [Void]
|
91
|
+
def self.validate_raw(obj:)
|
92
|
+
obj.role.is_a?(String) != false || raise("Passed value for field obj.role is not the expected type, validation failed.")
|
93
|
+
obj.tool_call_id.is_a?(String) != false || raise("Passed value for field obj.tool_call_id is not the expected type, validation failed.")
|
94
|
+
obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
95
|
+
obj.result.is_a?(String) != false || raise("Passed value for field obj.result is not the expected type, validation failed.")
|
96
|
+
obj.time.is_a?(Float) != false || raise("Passed value for field obj.time is not the expected type, validation failed.")
|
97
|
+
obj.seconds_from_start.is_a?(Float) != false || raise("Passed value for field obj.seconds_from_start is not the expected type, validation failed.")
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|