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,97 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Vapi
|
7
|
+
class ServerMessageResponseVoiceRequest
|
8
|
+
# @return [String] DO NOT respond to a `voice-request` webhook with this schema of { data }. This
|
9
|
+
# schema just exists to document what the response should look like. Follow these
|
10
|
+
# instructions:
|
11
|
+
# Here is what the request will look like:
|
12
|
+
# POST https://{assistant.voice.server.url}
|
13
|
+
# Content-Type: application/json
|
14
|
+
# {
|
15
|
+
# "messsage": {
|
16
|
+
# "type": "voice-request",
|
17
|
+
# "text": "Hello, world!",
|
18
|
+
# "sampleRate": 24000,
|
19
|
+
# ...other metadata about the call...
|
20
|
+
# }
|
21
|
+
# }
|
22
|
+
# The expected response is 1-channel 16-bit raw PCM audio at the sample rate
|
23
|
+
# specified in the request. Here is how the response will be piped to the
|
24
|
+
# transport:
|
25
|
+
# ```
|
26
|
+
# response.on('data', (chunk: Buffer) => {
|
27
|
+
# outputStream.write(chunk);
|
28
|
+
# });
|
29
|
+
# ```
|
30
|
+
attr_reader :data
|
31
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
32
|
+
attr_reader :additional_properties
|
33
|
+
# @return [Object]
|
34
|
+
attr_reader :_field_set
|
35
|
+
protected :_field_set
|
36
|
+
|
37
|
+
OMIT = Object.new
|
38
|
+
|
39
|
+
# @param data [String] DO NOT respond to a `voice-request` webhook with this schema of { data }. This
|
40
|
+
# schema just exists to document what the response should look like. Follow these
|
41
|
+
# instructions:
|
42
|
+
# Here is what the request will look like:
|
43
|
+
# POST https://{assistant.voice.server.url}
|
44
|
+
# Content-Type: application/json
|
45
|
+
# {
|
46
|
+
# "messsage": {
|
47
|
+
# "type": "voice-request",
|
48
|
+
# "text": "Hello, world!",
|
49
|
+
# "sampleRate": 24000,
|
50
|
+
# ...other metadata about the call...
|
51
|
+
# }
|
52
|
+
# }
|
53
|
+
# The expected response is 1-channel 16-bit raw PCM audio at the sample rate
|
54
|
+
# specified in the request. Here is how the response will be piped to the
|
55
|
+
# transport:
|
56
|
+
# ```
|
57
|
+
# response.on('data', (chunk: Buffer) => {
|
58
|
+
# outputStream.write(chunk);
|
59
|
+
# });
|
60
|
+
# ```
|
61
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
62
|
+
# @return [Vapi::ServerMessageResponseVoiceRequest]
|
63
|
+
def initialize(data:, additional_properties: nil)
|
64
|
+
@data = data
|
65
|
+
@additional_properties = additional_properties
|
66
|
+
@_field_set = { "data": data }
|
67
|
+
end
|
68
|
+
|
69
|
+
# Deserialize a JSON object to an instance of ServerMessageResponseVoiceRequest
|
70
|
+
#
|
71
|
+
# @param json_object [String]
|
72
|
+
# @return [Vapi::ServerMessageResponseVoiceRequest]
|
73
|
+
def self.from_json(json_object:)
|
74
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
75
|
+
parsed_json = JSON.parse(json_object)
|
76
|
+
data = parsed_json["data"]
|
77
|
+
new(data: data, additional_properties: struct)
|
78
|
+
end
|
79
|
+
|
80
|
+
# Serialize an instance of ServerMessageResponseVoiceRequest to a JSON object
|
81
|
+
#
|
82
|
+
# @return [String]
|
83
|
+
def to_json(*_args)
|
84
|
+
@_field_set&.to_json
|
85
|
+
end
|
86
|
+
|
87
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
88
|
+
# hash and check each fields type against the current object's property
|
89
|
+
# definitions.
|
90
|
+
#
|
91
|
+
# @param obj [Object]
|
92
|
+
# @return [Void]
|
93
|
+
def self.validate_raw(obj:)
|
94
|
+
obj.data.is_a?(String) != false || raise("Passed value for field obj.data is not the expected type, validation failed.")
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -0,0 +1,187 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "server_message_speech_update_phone_number"
|
4
|
+
require_relative "server_message_speech_update_status"
|
5
|
+
require_relative "server_message_speech_update_role"
|
6
|
+
require_relative "artifact"
|
7
|
+
require_relative "create_assistant_dto"
|
8
|
+
require_relative "create_customer_dto"
|
9
|
+
require_relative "call"
|
10
|
+
require "ostruct"
|
11
|
+
require "json"
|
12
|
+
|
13
|
+
module Vapi
|
14
|
+
class ServerMessageSpeechUpdate
|
15
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber] This is the phone number associated with the call.
|
16
|
+
# This matches one of the following:
|
17
|
+
# - `call.phoneNumber`,
|
18
|
+
# - `call.phoneNumberId`.
|
19
|
+
attr_reader :phone_number
|
20
|
+
# @return [Vapi::ServerMessageSpeechUpdateStatus] This is the status of the speech update.
|
21
|
+
attr_reader :status
|
22
|
+
# @return [Vapi::ServerMessageSpeechUpdateRole] This is the role which the speech update is for.
|
23
|
+
attr_reader :role
|
24
|
+
# @return [String] This is the ISO-8601 formatted timestamp of when the message was sent.
|
25
|
+
attr_reader :timestamp
|
26
|
+
# @return [Vapi::Artifact] This is a live version of the `call.artifact`.
|
27
|
+
# This matches what is stored on `call.artifact` after the call.
|
28
|
+
attr_reader :artifact
|
29
|
+
# @return [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
|
30
|
+
# convenience.
|
31
|
+
# This matches one of the following:
|
32
|
+
# - `call.assistant`,
|
33
|
+
# - `call.assistantId`,
|
34
|
+
# - `call.squad[n].assistant`,
|
35
|
+
# - `call.squad[n].assistantId`,
|
36
|
+
# - `call.squadId->[n].assistant`,
|
37
|
+
# - `call.squadId->[n].assistantId`.
|
38
|
+
attr_reader :assistant
|
39
|
+
# @return [Vapi::CreateCustomerDto] This is the customer associated with the call.
|
40
|
+
# This matches one of the following:
|
41
|
+
# - `call.customer`,
|
42
|
+
# - `call.customerId`.
|
43
|
+
attr_reader :customer
|
44
|
+
# @return [Vapi::Call] This is the call object.
|
45
|
+
# This matches what was returned in POST /call.
|
46
|
+
# Note: This might get stale during the call. To get the latest call object,
|
47
|
+
# especially after the call is ended, use GET /call/:id.
|
48
|
+
attr_reader :call
|
49
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
50
|
+
attr_reader :additional_properties
|
51
|
+
# @return [Object]
|
52
|
+
attr_reader :_field_set
|
53
|
+
protected :_field_set
|
54
|
+
|
55
|
+
OMIT = Object.new
|
56
|
+
|
57
|
+
# @param phone_number [Vapi::ServerMessageSpeechUpdatePhoneNumber] This is the phone number associated with the call.
|
58
|
+
# This matches one of the following:
|
59
|
+
# - `call.phoneNumber`,
|
60
|
+
# - `call.phoneNumberId`.
|
61
|
+
# @param status [Vapi::ServerMessageSpeechUpdateStatus] This is the status of the speech update.
|
62
|
+
# @param role [Vapi::ServerMessageSpeechUpdateRole] This is the role which the speech update is for.
|
63
|
+
# @param timestamp [String] This is the ISO-8601 formatted timestamp of when the message was sent.
|
64
|
+
# @param artifact [Vapi::Artifact] This is a live version of the `call.artifact`.
|
65
|
+
# This matches what is stored on `call.artifact` after the call.
|
66
|
+
# @param assistant [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
|
67
|
+
# convenience.
|
68
|
+
# This matches one of the following:
|
69
|
+
# - `call.assistant`,
|
70
|
+
# - `call.assistantId`,
|
71
|
+
# - `call.squad[n].assistant`,
|
72
|
+
# - `call.squad[n].assistantId`,
|
73
|
+
# - `call.squadId->[n].assistant`,
|
74
|
+
# - `call.squadId->[n].assistantId`.
|
75
|
+
# @param customer [Vapi::CreateCustomerDto] This is the customer associated with the call.
|
76
|
+
# This matches one of the following:
|
77
|
+
# - `call.customer`,
|
78
|
+
# - `call.customerId`.
|
79
|
+
# @param call [Vapi::Call] This is the call object.
|
80
|
+
# This matches what was returned in POST /call.
|
81
|
+
# Note: This might get stale during the call. To get the latest call object,
|
82
|
+
# especially after the call is ended, use GET /call/:id.
|
83
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
84
|
+
# @return [Vapi::ServerMessageSpeechUpdate]
|
85
|
+
def initialize(status:, role:, phone_number: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT,
|
86
|
+
customer: OMIT, call: OMIT, additional_properties: nil)
|
87
|
+
@phone_number = phone_number if phone_number != OMIT
|
88
|
+
@status = status
|
89
|
+
@role = role
|
90
|
+
@timestamp = timestamp if timestamp != OMIT
|
91
|
+
@artifact = artifact if artifact != OMIT
|
92
|
+
@assistant = assistant if assistant != OMIT
|
93
|
+
@customer = customer if customer != OMIT
|
94
|
+
@call = call if call != OMIT
|
95
|
+
@additional_properties = additional_properties
|
96
|
+
@_field_set = {
|
97
|
+
"phoneNumber": phone_number,
|
98
|
+
"status": status,
|
99
|
+
"role": role,
|
100
|
+
"timestamp": timestamp,
|
101
|
+
"artifact": artifact,
|
102
|
+
"assistant": assistant,
|
103
|
+
"customer": customer,
|
104
|
+
"call": call
|
105
|
+
}.reject do |_k, v|
|
106
|
+
v == OMIT
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
# Deserialize a JSON object to an instance of ServerMessageSpeechUpdate
|
111
|
+
#
|
112
|
+
# @param json_object [String]
|
113
|
+
# @return [Vapi::ServerMessageSpeechUpdate]
|
114
|
+
def self.from_json(json_object:)
|
115
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
116
|
+
parsed_json = JSON.parse(json_object)
|
117
|
+
if parsed_json["phoneNumber"].nil?
|
118
|
+
phone_number = nil
|
119
|
+
else
|
120
|
+
phone_number = parsed_json["phoneNumber"].to_json
|
121
|
+
phone_number = Vapi::ServerMessageSpeechUpdatePhoneNumber.from_json(json_object: phone_number)
|
122
|
+
end
|
123
|
+
status = parsed_json["status"]
|
124
|
+
role = parsed_json["role"]
|
125
|
+
timestamp = parsed_json["timestamp"]
|
126
|
+
if parsed_json["artifact"].nil?
|
127
|
+
artifact = nil
|
128
|
+
else
|
129
|
+
artifact = parsed_json["artifact"].to_json
|
130
|
+
artifact = Vapi::Artifact.from_json(json_object: artifact)
|
131
|
+
end
|
132
|
+
if parsed_json["assistant"].nil?
|
133
|
+
assistant = nil
|
134
|
+
else
|
135
|
+
assistant = parsed_json["assistant"].to_json
|
136
|
+
assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant)
|
137
|
+
end
|
138
|
+
if parsed_json["customer"].nil?
|
139
|
+
customer = nil
|
140
|
+
else
|
141
|
+
customer = parsed_json["customer"].to_json
|
142
|
+
customer = Vapi::CreateCustomerDto.from_json(json_object: customer)
|
143
|
+
end
|
144
|
+
if parsed_json["call"].nil?
|
145
|
+
call = nil
|
146
|
+
else
|
147
|
+
call = parsed_json["call"].to_json
|
148
|
+
call = Vapi::Call.from_json(json_object: call)
|
149
|
+
end
|
150
|
+
new(
|
151
|
+
phone_number: phone_number,
|
152
|
+
status: status,
|
153
|
+
role: role,
|
154
|
+
timestamp: timestamp,
|
155
|
+
artifact: artifact,
|
156
|
+
assistant: assistant,
|
157
|
+
customer: customer,
|
158
|
+
call: call,
|
159
|
+
additional_properties: struct
|
160
|
+
)
|
161
|
+
end
|
162
|
+
|
163
|
+
# Serialize an instance of ServerMessageSpeechUpdate to a JSON object
|
164
|
+
#
|
165
|
+
# @return [String]
|
166
|
+
def to_json(*_args)
|
167
|
+
@_field_set&.to_json
|
168
|
+
end
|
169
|
+
|
170
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
171
|
+
# hash and check each fields type against the current object's property
|
172
|
+
# definitions.
|
173
|
+
#
|
174
|
+
# @param obj [Object]
|
175
|
+
# @return [Void]
|
176
|
+
def self.validate_raw(obj:)
|
177
|
+
obj.phone_number.nil? || Vapi::ServerMessageSpeechUpdatePhoneNumber.validate_raw(obj: obj.phone_number)
|
178
|
+
obj.status.is_a?(Vapi::ServerMessageSpeechUpdateStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
179
|
+
obj.role.is_a?(Vapi::ServerMessageSpeechUpdateRole) != false || raise("Passed value for field obj.role is not the expected type, validation failed.")
|
180
|
+
obj.timestamp&.is_a?(String) != false || raise("Passed value for field obj.timestamp is not the expected type, validation failed.")
|
181
|
+
obj.artifact.nil? || Vapi::Artifact.validate_raw(obj: obj.artifact)
|
182
|
+
obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant)
|
183
|
+
obj.customer.nil? || Vapi::CreateCustomerDto.validate_raw(obj: obj.customer)
|
184
|
+
obj.call.nil? || Vapi::Call.validate_raw(obj: obj.call)
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
@@ -0,0 +1,124 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "create_byo_phone_number_dto"
|
5
|
+
require_relative "create_twilio_phone_number_dto"
|
6
|
+
require_relative "create_vonage_phone_number_dto"
|
7
|
+
require_relative "create_vapi_phone_number_dto"
|
8
|
+
|
9
|
+
module Vapi
|
10
|
+
# This is the phone number associated with the call.
|
11
|
+
# This matches one of the following:
|
12
|
+
# - `call.phoneNumber`,
|
13
|
+
# - `call.phoneNumberId`.
|
14
|
+
class ServerMessageSpeechUpdatePhoneNumber
|
15
|
+
# @return [Object]
|
16
|
+
attr_reader :member
|
17
|
+
# @return [String]
|
18
|
+
attr_reader :discriminant
|
19
|
+
|
20
|
+
private_class_method :new
|
21
|
+
alias kind_of? is_a?
|
22
|
+
|
23
|
+
# @param member [Object]
|
24
|
+
# @param discriminant [String]
|
25
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber]
|
26
|
+
def initialize(member:, discriminant:)
|
27
|
+
@member = member
|
28
|
+
@discriminant = discriminant
|
29
|
+
end
|
30
|
+
|
31
|
+
# Deserialize a JSON object to an instance of ServerMessageSpeechUpdatePhoneNumber
|
32
|
+
#
|
33
|
+
# @param json_object [String]
|
34
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber]
|
35
|
+
def self.from_json(json_object:)
|
36
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
37
|
+
member = case struct.provider
|
38
|
+
when "byo-phone-number"
|
39
|
+
Vapi::CreateByoPhoneNumberDto.from_json(json_object: json_object)
|
40
|
+
when "twilio"
|
41
|
+
Vapi::CreateTwilioPhoneNumberDto.from_json(json_object: json_object)
|
42
|
+
when "vonage"
|
43
|
+
Vapi::CreateVonagePhoneNumberDto.from_json(json_object: json_object)
|
44
|
+
when "vapi"
|
45
|
+
Vapi::CreateVapiPhoneNumberDto.from_json(json_object: json_object)
|
46
|
+
else
|
47
|
+
Vapi::CreateByoPhoneNumberDto.from_json(json_object: json_object)
|
48
|
+
end
|
49
|
+
new(member: member, discriminant: struct.provider)
|
50
|
+
end
|
51
|
+
|
52
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
53
|
+
#
|
54
|
+
# @return [String]
|
55
|
+
def to_json(*_args)
|
56
|
+
case @discriminant
|
57
|
+
when "byo-phone-number"
|
58
|
+
{ **@member.to_json, provider: @discriminant }.to_json
|
59
|
+
when "twilio"
|
60
|
+
{ **@member.to_json, provider: @discriminant }.to_json
|
61
|
+
when "vonage"
|
62
|
+
{ **@member.to_json, provider: @discriminant }.to_json
|
63
|
+
when "vapi"
|
64
|
+
{ **@member.to_json, provider: @discriminant }.to_json
|
65
|
+
else
|
66
|
+
{ "provider": @discriminant, value: @member }.to_json
|
67
|
+
end
|
68
|
+
@member.to_json
|
69
|
+
end
|
70
|
+
|
71
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
72
|
+
# hash and check each fields type against the current object's property
|
73
|
+
# definitions.
|
74
|
+
#
|
75
|
+
# @param obj [Object]
|
76
|
+
# @return [Void]
|
77
|
+
def self.validate_raw(obj:)
|
78
|
+
case obj.provider
|
79
|
+
when "byo-phone-number"
|
80
|
+
Vapi::CreateByoPhoneNumberDto.validate_raw(obj: obj)
|
81
|
+
when "twilio"
|
82
|
+
Vapi::CreateTwilioPhoneNumberDto.validate_raw(obj: obj)
|
83
|
+
when "vonage"
|
84
|
+
Vapi::CreateVonagePhoneNumberDto.validate_raw(obj: obj)
|
85
|
+
when "vapi"
|
86
|
+
Vapi::CreateVapiPhoneNumberDto.validate_raw(obj: obj)
|
87
|
+
else
|
88
|
+
raise("Passed value matched no type within the union, validation failed.")
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
93
|
+
#
|
94
|
+
# @param obj [Object]
|
95
|
+
# @return [Boolean]
|
96
|
+
def is_a?(obj)
|
97
|
+
@member.is_a?(obj)
|
98
|
+
end
|
99
|
+
|
100
|
+
# @param member [Vapi::CreateByoPhoneNumberDto]
|
101
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber]
|
102
|
+
def self.byo_phone_number(member:)
|
103
|
+
new(member: member, discriminant: "byo-phone-number")
|
104
|
+
end
|
105
|
+
|
106
|
+
# @param member [Vapi::CreateTwilioPhoneNumberDto]
|
107
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber]
|
108
|
+
def self.twilio(member:)
|
109
|
+
new(member: member, discriminant: "twilio")
|
110
|
+
end
|
111
|
+
|
112
|
+
# @param member [Vapi::CreateVonagePhoneNumberDto]
|
113
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber]
|
114
|
+
def self.vonage(member:)
|
115
|
+
new(member: member, discriminant: "vonage")
|
116
|
+
end
|
117
|
+
|
118
|
+
# @param member [Vapi::CreateVapiPhoneNumberDto]
|
119
|
+
# @return [Vapi::ServerMessageSpeechUpdatePhoneNumber]
|
120
|
+
def self.vapi(member:)
|
121
|
+
new(member: member, discriminant: "vapi")
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
@@ -0,0 +1,255 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "server_message_status_update_phone_number"
|
4
|
+
require_relative "server_message_status_update_status"
|
5
|
+
require_relative "server_message_status_update_ended_reason"
|
6
|
+
require_relative "server_message_status_update_messages_item"
|
7
|
+
require_relative "open_ai_message"
|
8
|
+
require_relative "server_message_status_update_destination"
|
9
|
+
require_relative "artifact"
|
10
|
+
require_relative "create_assistant_dto"
|
11
|
+
require_relative "create_customer_dto"
|
12
|
+
require_relative "call"
|
13
|
+
require "ostruct"
|
14
|
+
require "json"
|
15
|
+
|
16
|
+
module Vapi
|
17
|
+
class ServerMessageStatusUpdate
|
18
|
+
# @return [Vapi::ServerMessageStatusUpdatePhoneNumber] This is the phone number associated with the call.
|
19
|
+
# This matches one of the following:
|
20
|
+
# - `call.phoneNumber`,
|
21
|
+
# - `call.phoneNumberId`.
|
22
|
+
attr_reader :phone_number
|
23
|
+
# @return [Vapi::ServerMessageStatusUpdateStatus] This is the status of the call.
|
24
|
+
attr_reader :status
|
25
|
+
# @return [Vapi::ServerMessageStatusUpdateEndedReason] This is the reason the call ended. This is only sent if the status is "ended".
|
26
|
+
attr_reader :ended_reason
|
27
|
+
# @return [Array<Vapi::ServerMessageStatusUpdateMessagesItem>] These are the conversation messages of the call. This is only sent if the status
|
28
|
+
# is "forwarding".
|
29
|
+
attr_reader :messages
|
30
|
+
# @return [Array<Vapi::OpenAiMessage>] These are the conversation messages of the call. This is only sent if the status
|
31
|
+
# is "forwarding".
|
32
|
+
attr_reader :messages_open_ai_formatted
|
33
|
+
# @return [Vapi::ServerMessageStatusUpdateDestination] This is the destination the call is being transferred to. This is only sent if
|
34
|
+
# the status is "forwarding".
|
35
|
+
attr_reader :destination
|
36
|
+
# @return [String] This is the ISO-8601 formatted timestamp of when the message was sent.
|
37
|
+
attr_reader :timestamp
|
38
|
+
# @return [Vapi::Artifact] This is a live version of the `call.artifact`.
|
39
|
+
# This matches what is stored on `call.artifact` after the call.
|
40
|
+
attr_reader :artifact
|
41
|
+
# @return [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
|
42
|
+
# convenience.
|
43
|
+
# This matches one of the following:
|
44
|
+
# - `call.assistant`,
|
45
|
+
# - `call.assistantId`,
|
46
|
+
# - `call.squad[n].assistant`,
|
47
|
+
# - `call.squad[n].assistantId`,
|
48
|
+
# - `call.squadId->[n].assistant`,
|
49
|
+
# - `call.squadId->[n].assistantId`.
|
50
|
+
attr_reader :assistant
|
51
|
+
# @return [Vapi::CreateCustomerDto] This is the customer associated with the call.
|
52
|
+
# This matches one of the following:
|
53
|
+
# - `call.customer`,
|
54
|
+
# - `call.customerId`.
|
55
|
+
attr_reader :customer
|
56
|
+
# @return [Vapi::Call] This is the call object.
|
57
|
+
# This matches what was returned in POST /call.
|
58
|
+
# Note: This might get stale during the call. To get the latest call object,
|
59
|
+
# especially after the call is ended, use GET /call/:id.
|
60
|
+
attr_reader :call
|
61
|
+
# @return [String] This is the transcript of the call. This is only sent if the status is
|
62
|
+
# "forwarding".
|
63
|
+
attr_reader :transcript
|
64
|
+
# @return [Hash{String => Object}] This is the inbound phone call debugging artifacts. This is only sent if the
|
65
|
+
# status is "ended" and there was an error accepting the inbound phone call.
|
66
|
+
# This will include any errors related to the "assistant-request" if one was made.
|
67
|
+
attr_reader :inbound_phone_call_debugging_artifacts
|
68
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
69
|
+
attr_reader :additional_properties
|
70
|
+
# @return [Object]
|
71
|
+
attr_reader :_field_set
|
72
|
+
protected :_field_set
|
73
|
+
|
74
|
+
OMIT = Object.new
|
75
|
+
|
76
|
+
# @param phone_number [Vapi::ServerMessageStatusUpdatePhoneNumber] This is the phone number associated with the call.
|
77
|
+
# This matches one of the following:
|
78
|
+
# - `call.phoneNumber`,
|
79
|
+
# - `call.phoneNumberId`.
|
80
|
+
# @param status [Vapi::ServerMessageStatusUpdateStatus] This is the status of the call.
|
81
|
+
# @param ended_reason [Vapi::ServerMessageStatusUpdateEndedReason] This is the reason the call ended. This is only sent if the status is "ended".
|
82
|
+
# @param messages [Array<Vapi::ServerMessageStatusUpdateMessagesItem>] These are the conversation messages of the call. This is only sent if the status
|
83
|
+
# is "forwarding".
|
84
|
+
# @param messages_open_ai_formatted [Array<Vapi::OpenAiMessage>] These are the conversation messages of the call. This is only sent if the status
|
85
|
+
# is "forwarding".
|
86
|
+
# @param destination [Vapi::ServerMessageStatusUpdateDestination] This is the destination the call is being transferred to. This is only sent if
|
87
|
+
# the status is "forwarding".
|
88
|
+
# @param timestamp [String] This is the ISO-8601 formatted timestamp of when the message was sent.
|
89
|
+
# @param artifact [Vapi::Artifact] This is a live version of the `call.artifact`.
|
90
|
+
# This matches what is stored on `call.artifact` after the call.
|
91
|
+
# @param assistant [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
|
92
|
+
# convenience.
|
93
|
+
# This matches one of the following:
|
94
|
+
# - `call.assistant`,
|
95
|
+
# - `call.assistantId`,
|
96
|
+
# - `call.squad[n].assistant`,
|
97
|
+
# - `call.squad[n].assistantId`,
|
98
|
+
# - `call.squadId->[n].assistant`,
|
99
|
+
# - `call.squadId->[n].assistantId`.
|
100
|
+
# @param customer [Vapi::CreateCustomerDto] This is the customer associated with the call.
|
101
|
+
# This matches one of the following:
|
102
|
+
# - `call.customer`,
|
103
|
+
# - `call.customerId`.
|
104
|
+
# @param call [Vapi::Call] This is the call object.
|
105
|
+
# This matches what was returned in POST /call.
|
106
|
+
# Note: This might get stale during the call. To get the latest call object,
|
107
|
+
# especially after the call is ended, use GET /call/:id.
|
108
|
+
# @param transcript [String] This is the transcript of the call. This is only sent if the status is
|
109
|
+
# "forwarding".
|
110
|
+
# @param inbound_phone_call_debugging_artifacts [Hash{String => Object}] This is the inbound phone call debugging artifacts. This is only sent if the
|
111
|
+
# status is "ended" and there was an error accepting the inbound phone call.
|
112
|
+
# This will include any errors related to the "assistant-request" if one was made.
|
113
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
114
|
+
# @return [Vapi::ServerMessageStatusUpdate]
|
115
|
+
def initialize(status:, phone_number: OMIT, ended_reason: OMIT, messages: OMIT, messages_open_ai_formatted: OMIT,
|
116
|
+
destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, transcript: OMIT, inbound_phone_call_debugging_artifacts: OMIT, additional_properties: nil)
|
117
|
+
@phone_number = phone_number if phone_number != OMIT
|
118
|
+
@status = status
|
119
|
+
@ended_reason = ended_reason if ended_reason != OMIT
|
120
|
+
@messages = messages if messages != OMIT
|
121
|
+
@messages_open_ai_formatted = messages_open_ai_formatted if messages_open_ai_formatted != OMIT
|
122
|
+
@destination = destination if destination != OMIT
|
123
|
+
@timestamp = timestamp if timestamp != OMIT
|
124
|
+
@artifact = artifact if artifact != OMIT
|
125
|
+
@assistant = assistant if assistant != OMIT
|
126
|
+
@customer = customer if customer != OMIT
|
127
|
+
@call = call if call != OMIT
|
128
|
+
@transcript = transcript if transcript != OMIT
|
129
|
+
if inbound_phone_call_debugging_artifacts != OMIT
|
130
|
+
@inbound_phone_call_debugging_artifacts = inbound_phone_call_debugging_artifacts
|
131
|
+
end
|
132
|
+
@additional_properties = additional_properties
|
133
|
+
@_field_set = {
|
134
|
+
"phoneNumber": phone_number,
|
135
|
+
"status": status,
|
136
|
+
"endedReason": ended_reason,
|
137
|
+
"messages": messages,
|
138
|
+
"messagesOpenAIFormatted": messages_open_ai_formatted,
|
139
|
+
"destination": destination,
|
140
|
+
"timestamp": timestamp,
|
141
|
+
"artifact": artifact,
|
142
|
+
"assistant": assistant,
|
143
|
+
"customer": customer,
|
144
|
+
"call": call,
|
145
|
+
"transcript": transcript,
|
146
|
+
"inboundPhoneCallDebuggingArtifacts": inbound_phone_call_debugging_artifacts
|
147
|
+
}.reject do |_k, v|
|
148
|
+
v == OMIT
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
# Deserialize a JSON object to an instance of ServerMessageStatusUpdate
|
153
|
+
#
|
154
|
+
# @param json_object [String]
|
155
|
+
# @return [Vapi::ServerMessageStatusUpdate]
|
156
|
+
def self.from_json(json_object:)
|
157
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
158
|
+
parsed_json = JSON.parse(json_object)
|
159
|
+
if parsed_json["phoneNumber"].nil?
|
160
|
+
phone_number = nil
|
161
|
+
else
|
162
|
+
phone_number = parsed_json["phoneNumber"].to_json
|
163
|
+
phone_number = Vapi::ServerMessageStatusUpdatePhoneNumber.from_json(json_object: phone_number)
|
164
|
+
end
|
165
|
+
status = parsed_json["status"]
|
166
|
+
ended_reason = parsed_json["endedReason"]
|
167
|
+
messages = parsed_json["messages"]&.map do |item|
|
168
|
+
item = item.to_json
|
169
|
+
Vapi::ServerMessageStatusUpdateMessagesItem.from_json(json_object: item)
|
170
|
+
end
|
171
|
+
messages_open_ai_formatted = parsed_json["messagesOpenAIFormatted"]&.map do |item|
|
172
|
+
item = item.to_json
|
173
|
+
Vapi::OpenAiMessage.from_json(json_object: item)
|
174
|
+
end
|
175
|
+
if parsed_json["destination"].nil?
|
176
|
+
destination = nil
|
177
|
+
else
|
178
|
+
destination = parsed_json["destination"].to_json
|
179
|
+
destination = Vapi::ServerMessageStatusUpdateDestination.from_json(json_object: destination)
|
180
|
+
end
|
181
|
+
timestamp = parsed_json["timestamp"]
|
182
|
+
if parsed_json["artifact"].nil?
|
183
|
+
artifact = nil
|
184
|
+
else
|
185
|
+
artifact = parsed_json["artifact"].to_json
|
186
|
+
artifact = Vapi::Artifact.from_json(json_object: artifact)
|
187
|
+
end
|
188
|
+
if parsed_json["assistant"].nil?
|
189
|
+
assistant = nil
|
190
|
+
else
|
191
|
+
assistant = parsed_json["assistant"].to_json
|
192
|
+
assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant)
|
193
|
+
end
|
194
|
+
if parsed_json["customer"].nil?
|
195
|
+
customer = nil
|
196
|
+
else
|
197
|
+
customer = parsed_json["customer"].to_json
|
198
|
+
customer = Vapi::CreateCustomerDto.from_json(json_object: customer)
|
199
|
+
end
|
200
|
+
if parsed_json["call"].nil?
|
201
|
+
call = nil
|
202
|
+
else
|
203
|
+
call = parsed_json["call"].to_json
|
204
|
+
call = Vapi::Call.from_json(json_object: call)
|
205
|
+
end
|
206
|
+
transcript = parsed_json["transcript"]
|
207
|
+
inbound_phone_call_debugging_artifacts = parsed_json["inboundPhoneCallDebuggingArtifacts"]
|
208
|
+
new(
|
209
|
+
phone_number: phone_number,
|
210
|
+
status: status,
|
211
|
+
ended_reason: ended_reason,
|
212
|
+
messages: messages,
|
213
|
+
messages_open_ai_formatted: messages_open_ai_formatted,
|
214
|
+
destination: destination,
|
215
|
+
timestamp: timestamp,
|
216
|
+
artifact: artifact,
|
217
|
+
assistant: assistant,
|
218
|
+
customer: customer,
|
219
|
+
call: call,
|
220
|
+
transcript: transcript,
|
221
|
+
inbound_phone_call_debugging_artifacts: inbound_phone_call_debugging_artifacts,
|
222
|
+
additional_properties: struct
|
223
|
+
)
|
224
|
+
end
|
225
|
+
|
226
|
+
# Serialize an instance of ServerMessageStatusUpdate to a JSON object
|
227
|
+
#
|
228
|
+
# @return [String]
|
229
|
+
def to_json(*_args)
|
230
|
+
@_field_set&.to_json
|
231
|
+
end
|
232
|
+
|
233
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
234
|
+
# hash and check each fields type against the current object's property
|
235
|
+
# definitions.
|
236
|
+
#
|
237
|
+
# @param obj [Object]
|
238
|
+
# @return [Void]
|
239
|
+
def self.validate_raw(obj:)
|
240
|
+
obj.phone_number.nil? || Vapi::ServerMessageStatusUpdatePhoneNumber.validate_raw(obj: obj.phone_number)
|
241
|
+
obj.status.is_a?(Vapi::ServerMessageStatusUpdateStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
242
|
+
obj.ended_reason&.is_a?(Vapi::ServerMessageStatusUpdateEndedReason) != false || raise("Passed value for field obj.ended_reason is not the expected type, validation failed.")
|
243
|
+
obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
|
244
|
+
obj.messages_open_ai_formatted&.is_a?(Array) != false || raise("Passed value for field obj.messages_open_ai_formatted is not the expected type, validation failed.")
|
245
|
+
obj.destination.nil? || Vapi::ServerMessageStatusUpdateDestination.validate_raw(obj: obj.destination)
|
246
|
+
obj.timestamp&.is_a?(String) != false || raise("Passed value for field obj.timestamp is not the expected type, validation failed.")
|
247
|
+
obj.artifact.nil? || Vapi::Artifact.validate_raw(obj: obj.artifact)
|
248
|
+
obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant)
|
249
|
+
obj.customer.nil? || Vapi::CreateCustomerDto.validate_raw(obj: obj.customer)
|
250
|
+
obj.call.nil? || Vapi::Call.validate_raw(obj: obj.call)
|
251
|
+
obj.transcript&.is_a?(String) != false || raise("Passed value for field obj.transcript is not the expected type, validation failed.")
|
252
|
+
obj.inbound_phone_call_debugging_artifacts&.is_a?(Hash) != false || raise("Passed value for field obj.inbound_phone_call_debugging_artifacts is not the expected type, validation failed.")
|
253
|
+
end
|
254
|
+
end
|
255
|
+
end
|