vapi_server_sdk 0.1.0 → 0.3.0
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 +4 -4
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +287 -62
- data/lib/vapi_server_sdk/analytics/client.rb +14 -43
- data/lib/vapi_server_sdk/assistants/client.rb +70 -60
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +52 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +40 -1
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +39 -0
- data/lib/vapi_server_sdk/blocks/client.rb +7 -166
- data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
- data/lib/vapi_server_sdk/calls/client.rb +74 -32
- data/lib/vapi_server_sdk/knowledge_bases/client.rb +393 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_request.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_response.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_delete_response.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_get_response.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_list_response_item.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_response.rb +96 -0
- data/lib/vapi_server_sdk/logs/client.rb +94 -6
- data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -69
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
- data/lib/vapi_server_sdk/squads/client.rb +64 -32
- data/lib/vapi_server_sdk/tools/client.rb +7 -87
- data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
- data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +39 -0
- data/lib/vapi_server_sdk/types/analytics_query_dto.rb +59 -0
- data/lib/vapi_server_sdk/types/anthropic_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/anthropic_model.rb +21 -13
- data/lib/vapi_server_sdk/types/anthropic_model_model.rb +2 -0
- data/lib/vapi_server_sdk/types/anyscale_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/anyscale_model.rb +21 -13
- data/lib/vapi_server_sdk/types/assembly_ai_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/assembly_ai_transcriber.rb +97 -0
- data/lib/vapi_server_sdk/types/assistant.rb +60 -64
- data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
- data/lib/vapi_server_sdk/types/assistant_custom_endpointing_rule.rb +100 -0
- data/lib/vapi_server_sdk/types/assistant_model.rb +52 -0
- data/lib/vapi_server_sdk/types/assistant_overrides.rb +75 -65
- data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +52 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +40 -1
- data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +39 -0
- data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_transcriber.rb +40 -1
- data/lib/vapi_server_sdk/types/assistant_voice.rb +39 -0
- data/lib/vapi_server_sdk/types/auto_reload_plan.rb +65 -0
- data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
- data/lib/vapi_server_sdk/types/azure_credential.rb +146 -0
- data/lib/vapi_server_sdk/types/azure_credential_region.rb +23 -0
- data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +20 -2
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +1 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +2 -1
- data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
- data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
- data/lib/vapi_server_sdk/types/azure_voice.rb +25 -21
- data/lib/vapi_server_sdk/types/bash_tool.rb +194 -0
- data/lib/vapi_server_sdk/types/bash_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/block_complete_message.rb +29 -4
- data/lib/vapi_server_sdk/types/block_start_message.rb +29 -4
- data/lib/vapi_server_sdk/types/both_custom_endpointing_rule.rb +126 -0
- data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
- data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +29 -9
- data/lib/vapi_server_sdk/types/call.rb +15 -1
- data/lib/vapi_server_sdk/types/call_ended_reason.rb +83 -43
- data/lib/vapi_server_sdk/types/call_log_privileged.rb +88 -0
- data/lib/vapi_server_sdk/types/call_log_privileged_level.rb +12 -0
- data/lib/vapi_server_sdk/types/call_logs_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/cartesia_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/cartesia_voice.rb +25 -21
- data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +9 -1
- data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
- data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
- data/lib/vapi_server_sdk/types/chat_service_response.rb +47 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +25 -3
- data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_transfer.rb +63 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_transfer_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/{client_message_language_changed.rb → client_message_language_change_detected.rb} +5 -5
- data/lib/vapi_server_sdk/types/client_message_message.rb +22 -9
- data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
- data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +116 -0
- data/lib/vapi_server_sdk/types/client_message_transfer_update_destination.rb +122 -0
- data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
- data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
- data/lib/vapi_server_sdk/types/computer_tool.rb +218 -0
- data/lib/vapi_server_sdk/types/computer_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/condition.rb +9 -9
- data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto.rb +61 -65
- data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +52 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +40 -1
- data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +39 -0
- data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +104 -0
- data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +23 -0
- data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +22 -11
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +1 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +2 -1
- data/lib/vapi_server_sdk/types/create_bash_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_bash_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +31 -19
- data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/{knowledge_base.rb → create_cerebras_credential_dto.rb} +21 -21
- data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/create_computer_tool_dto.rb +185 -0
- data/lib/vapi_server_sdk/types/create_computer_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +137 -0
- data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +26 -9
- data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +9 -9
- data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +9 -21
- data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_google_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_inflection_ai_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +83 -0
- data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_org_dto.rb +45 -26
- data/lib/vapi_server_sdk/types/create_org_dto_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/create_text_editor_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_text_editor_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +109 -0
- data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +44 -30
- data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +11 -9
- data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +73 -0
- data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +154 -0
- data/lib/vapi_server_sdk/types/custom_llm_credential.rb +46 -3
- data/lib/vapi_server_sdk/types/custom_llm_model.rb +23 -15
- data/lib/vapi_server_sdk/types/custom_message.rb +92 -0
- data/lib/vapi_server_sdk/types/custom_transcriber.rb +125 -0
- data/lib/vapi_server_sdk/types/custom_voice.rb +132 -0
- data/lib/vapi_server_sdk/types/customer_custom_endpointing_rule.rb +100 -0
- data/lib/vapi_server_sdk/types/deep_infra_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/deep_infra_model.rb +21 -13
- data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
- data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/deepgram_credential.rb +9 -1
- data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +69 -11
- data/lib/vapi_server_sdk/types/deepgram_voice.rb +17 -17
- data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +28 -24
- data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
- data/lib/vapi_server_sdk/types/fallback_azure_voice.rb +100 -0
- data/lib/vapi_server_sdk/types/fallback_azure_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_azure_voice_voice_id.rb +9 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +100 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice_language.rb +23 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +12 -0
- data/lib/vapi_server_sdk/types/fallback_custom_voice.rb +117 -0
- data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +81 -0
- data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id_enum.rb +18 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb +164 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id.rb +54 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id_enum.rb +21 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +14 -0
- data/lib/vapi_server_sdk/types/fallback_lmnt_voice.rb +88 -0
- data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id_enum.rb +8 -0
- data/lib/vapi_server_sdk/types/fallback_neets_voice.rb +81 -0
- data/lib/vapi_server_sdk/types/fallback_neets_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_neets_voice_id_enum.rb +7 -0
- data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +87 -0
- data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +20 -0
- data/lib/vapi_server_sdk/types/fallback_plan.rb +61 -0
- data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +224 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice.rb +172 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_emotion.rb +19 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id_enum.rb +16 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_language.rb +44 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice.rb +96 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +87 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +9 -0
- data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
- data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
- data/lib/vapi_server_sdk/types/fallback_tavus_voice.rb +147 -0
- data/lib/vapi_server_sdk/types/fallback_tavus_voice_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/format_plan.rb +0 -2
- data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +10 -1
- data/lib/vapi_server_sdk/types/gcp_credential.rb +2 -2
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
- data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +9 -1
- data/lib/vapi_server_sdk/types/gladia_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/go_high_level_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/google_credential.rb +113 -0
- data/lib/vapi_server_sdk/types/google_model.rb +194 -0
- data/lib/vapi_server_sdk/types/google_model_model.rb +14 -0
- data/lib/vapi_server_sdk/types/google_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
- data/lib/vapi_server_sdk/types/groq_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/groq_model.rb +21 -13
- data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
- data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/inflection_ai_credential.rb +113 -0
- data/lib/vapi_server_sdk/types/inflection_ai_model.rb +177 -0
- data/lib/vapi_server_sdk/types/inflection_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/invite_user_dto.rb +9 -9
- data/lib/vapi_server_sdk/types/knowledge_base_response_document.rb +74 -0
- data/lib/vapi_server_sdk/types/langfuse_credential.rb +130 -0
- data/lib/vapi_server_sdk/types/lmnt_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/lmnt_voice.rb +18 -14
- data/lib/vapi_server_sdk/types/log.rb +12 -4
- data/lib/vapi_server_sdk/types/log_resource.rb +8 -0
- data/lib/vapi_server_sdk/types/make_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +9 -1
- data/lib/vapi_server_sdk/types/neets_voice.rb +17 -17
- data/lib/vapi_server_sdk/types/o_auth_2_authentication_plan.rb +79 -0
- data/lib/vapi_server_sdk/types/oauth_2_authentication_session.rb +68 -0
- data/lib/vapi_server_sdk/types/open_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/open_ai_function.rb +30 -4
- data/lib/vapi_server_sdk/types/open_ai_model.rb +23 -15
- data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +8 -0
- data/lib/vapi_server_sdk/types/open_ai_model_model.rb +8 -0
- data/lib/vapi_server_sdk/types/open_ai_voice.rb +22 -14
- data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +7 -0
- data/lib/vapi_server_sdk/types/open_router_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/open_router_model.rb +21 -13
- data/lib/vapi_server_sdk/types/org.rb +59 -26
- data/lib/vapi_server_sdk/types/org_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/org_with_org_user.rb +262 -0
- data/lib/vapi_server_sdk/types/org_with_org_user_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/org_with_org_user_role.rb +9 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +21 -13
- data/lib/vapi_server_sdk/types/phone_number_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/phone_number_paginated_response_results_item.rb +121 -0
- data/lib/vapi_server_sdk/types/play_ht_credential.rb +13 -2
- data/lib/vapi_server_sdk/types/play_ht_voice.rb +37 -15
- data/lib/vapi_server_sdk/types/play_ht_voice_language.rb +44 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/regex_option.rb +2 -2
- data/lib/vapi_server_sdk/types/regex_option_type.rb +1 -1
- data/lib/vapi_server_sdk/types/regex_replacement.rb +14 -4
- data/lib/vapi_server_sdk/types/rime_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/rime_ai_voice.rb +18 -14
- data/lib/vapi_server_sdk/types/runpod_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/s_3_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/server.rb +16 -2
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +83 -43
- data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +195 -0
- data/lib/vapi_server_sdk/types/server_message_knowledge_base_request_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/{server_message_language_changed_phone_number.rb → server_message_knowledge_base_request_phone_number.rb} +8 -8
- data/lib/vapi_server_sdk/types/{server_message_language_changed.rb → server_message_language_change_detected.rb} +10 -10
- data/lib/vapi_server_sdk/types/server_message_language_change_detected_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_message.rb +22 -9
- data/lib/vapi_server_sdk/types/server_message_response_knowledge_base_request.rb +81 -0
- data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +14 -0
- data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
- data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +83 -43
- data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
- data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +18 -2
- data/lib/vapi_server_sdk/types/sip_authentication.rb +80 -0
- data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
- data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
- data/lib/vapi_server_sdk/types/start_speaking_plan.rb +54 -10
- data/lib/vapi_server_sdk/types/start_speaking_plan_custom_endpointing_rules_item.rb +108 -0
- data/lib/vapi_server_sdk/types/structured_data_plan.rb +28 -10
- data/lib/vapi_server_sdk/types/subscription.rb +336 -0
- data/lib/vapi_server_sdk/types/subscription_status.rb +10 -0
- data/lib/vapi_server_sdk/types/subscription_type.rb +10 -0
- data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +38 -16
- data/lib/vapi_server_sdk/types/summary_plan.rb +26 -8
- data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +2 -0
- data/lib/vapi_server_sdk/types/tavus_conversation_properties.rb +173 -0
- data/lib/vapi_server_sdk/types/tavus_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/tavus_voice.rb +163 -0
- data/lib/vapi_server_sdk/types/tavus_voice_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/text_content.rb +73 -0
- data/lib/vapi_server_sdk/types/text_content_language.rb +191 -0
- data/lib/vapi_server_sdk/types/text_editor_tool.rb +194 -0
- data/lib/vapi_server_sdk/types/text_editor_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/together_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/together_ai_model.rb +21 -13
- data/lib/vapi_server_sdk/types/tool_message_complete.rb +29 -3
- data/lib/vapi_server_sdk/types/tool_message_delayed.rb +30 -3
- data/lib/vapi_server_sdk/types/tool_message_failed.rb +30 -3
- data/lib/vapi_server_sdk/types/tool_message_start.rb +29 -4
- data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +79 -33
- data/lib/vapi_server_sdk/types/transfer_destination_assistant_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_destination_number.rb +56 -24
- data/lib/vapi_server_sdk/types/transfer_destination_number_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +60 -15
- data/lib/vapi_server_sdk/types/transfer_destination_sip_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_destination_step.rb +28 -14
- data/lib/vapi_server_sdk/types/transfer_destination_step_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_plan.rb +161 -0
- data/lib/vapi_server_sdk/types/transfer_plan_message.rb +59 -0
- data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +32 -0
- data/lib/vapi_server_sdk/types/transport.rb +70 -0
- data/lib/vapi_server_sdk/types/transport_cost.rb +12 -2
- data/lib/vapi_server_sdk/types/transport_cost_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/transport_provider.rb +11 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +125 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_create_plan.rb +109 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan.rb +95 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan_search_type.rb +12 -0
- data/lib/vapi_server_sdk/types/twilio_credential.rb +12 -2
- data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
- data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +105 -0
- data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +23 -0
- data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +29 -18
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +1 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +2 -1
- data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
- data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +30 -18
- data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
- data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
- data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
- data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +28 -11
- data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -11
- data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +20 -11
- data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +6 -18
- data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
- data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +83 -0
- data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +17 -15
- data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
- data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_org_dto.rb +45 -26
- data/lib/vapi_server_sdk/types/update_org_dto_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +15 -13
- data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +24 -22
- data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +13 -11
- data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
- data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
- data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
- data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
- data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
- data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
- data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +109 -0
- data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +15 -13
- data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
- data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
- data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +15 -13
- data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
- data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
- data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
- data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/vapi_cost.rb +10 -2
- data/lib/vapi_server_sdk/types/vapi_cost_sub_type.rb +9 -0
- data/lib/vapi_server_sdk/types/vapi_model.rb +24 -16
- data/lib/vapi_server_sdk/types/vapi_phone_number.rb +44 -30
- data/lib/vapi_server_sdk/types/vonage_credential.rb +12 -2
- data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
- data/lib/vapi_server_sdk/types/webhook_credential.rb +134 -0
- data/lib/vapi_server_sdk/types/x_ai_credential.rb +113 -0
- data/lib/vapi_server_sdk/types/xai_model.rb +177 -0
- data/lib/vapi_server_sdk/types/xai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk.rb +7 -0
- metadata +240 -14
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
- data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
- data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
@@ -0,0 +1,177 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "open_ai_message"
|
4
|
+
require_relative "xai_model_tools_item"
|
5
|
+
require_relative "create_custom_knowledge_base_dto"
|
6
|
+
require "ostruct"
|
7
|
+
require "json"
|
8
|
+
|
9
|
+
module Vapi
|
10
|
+
class XaiModel
|
11
|
+
# @return [Array<Vapi::OpenAiMessage>] This is the starting state for the conversation.
|
12
|
+
attr_reader :messages
|
13
|
+
# @return [Array<Vapi::XaiModelToolsItem>] These are the tools that the assistant can use during the call. To use existing
|
14
|
+
# tools, use `toolIds`.
|
15
|
+
# Both `tools` and `toolIds` can be used together.
|
16
|
+
attr_reader :tools
|
17
|
+
# @return [Array<String>] These are the tools that the assistant can use during the call. To use transient
|
18
|
+
# tools, use `tools`.
|
19
|
+
# Both `tools` and `toolIds` can be used together.
|
20
|
+
attr_reader :tool_ids
|
21
|
+
# @return [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
|
22
|
+
attr_reader :knowledge_base
|
23
|
+
# @return [String] This is the ID of the knowledge base the model will use.
|
24
|
+
attr_reader :knowledge_base_id
|
25
|
+
# @return [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
|
26
|
+
attr_reader :model
|
27
|
+
# @return [Float] This is the temperature that will be used for calls. Default is 0 to leverage
|
28
|
+
# caching for lower latency.
|
29
|
+
attr_reader :temperature
|
30
|
+
# @return [Float] This is the max number of tokens that the assistant will be allowed to generate
|
31
|
+
# in each turn of the conversation. Default is 250.
|
32
|
+
attr_reader :max_tokens
|
33
|
+
# @return [Boolean] This determines whether we detect user's emotion while they speak and send it as
|
34
|
+
# an additional info to model.
|
35
|
+
# Default `false` because the model is usually are good at understanding the
|
36
|
+
# user's emotion from text.
|
37
|
+
# @default false
|
38
|
+
attr_reader :emotion_recognition_enabled
|
39
|
+
# @return [Float] This sets how many turns at the start of the conversation to use a smaller,
|
40
|
+
# faster model from the same provider before switching to the primary model.
|
41
|
+
# Example, gpt-3.5-turbo if provider is openai.
|
42
|
+
# Default is 0.
|
43
|
+
# @default 0
|
44
|
+
attr_reader :num_fast_turns
|
45
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
46
|
+
attr_reader :additional_properties
|
47
|
+
# @return [Object]
|
48
|
+
attr_reader :_field_set
|
49
|
+
protected :_field_set
|
50
|
+
|
51
|
+
OMIT = Object.new
|
52
|
+
|
53
|
+
# @param messages [Array<Vapi::OpenAiMessage>] This is the starting state for the conversation.
|
54
|
+
# @param tools [Array<Vapi::XaiModelToolsItem>] These are the tools that the assistant can use during the call. To use existing
|
55
|
+
# tools, use `toolIds`.
|
56
|
+
# Both `tools` and `toolIds` can be used together.
|
57
|
+
# @param tool_ids [Array<String>] These are the tools that the assistant can use during the call. To use transient
|
58
|
+
# tools, use `tools`.
|
59
|
+
# Both `tools` and `toolIds` can be used together.
|
60
|
+
# @param knowledge_base [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
|
61
|
+
# @param knowledge_base_id [String] This is the ID of the knowledge base the model will use.
|
62
|
+
# @param model [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
|
63
|
+
# @param temperature [Float] This is the temperature that will be used for calls. Default is 0 to leverage
|
64
|
+
# caching for lower latency.
|
65
|
+
# @param max_tokens [Float] This is the max number of tokens that the assistant will be allowed to generate
|
66
|
+
# in each turn of the conversation. Default is 250.
|
67
|
+
# @param emotion_recognition_enabled [Boolean] This determines whether we detect user's emotion while they speak and send it as
|
68
|
+
# an additional info to model.
|
69
|
+
# Default `false` because the model is usually are good at understanding the
|
70
|
+
# user's emotion from text.
|
71
|
+
# @default false
|
72
|
+
# @param num_fast_turns [Float] This sets how many turns at the start of the conversation to use a smaller,
|
73
|
+
# faster model from the same provider before switching to the primary model.
|
74
|
+
# Example, gpt-3.5-turbo if provider is openai.
|
75
|
+
# Default is 0.
|
76
|
+
# @default 0
|
77
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
78
|
+
# @return [Vapi::XaiModel]
|
79
|
+
def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT, knowledge_base: OMIT, knowledge_base_id: OMIT,
|
80
|
+
temperature: OMIT, max_tokens: OMIT, emotion_recognition_enabled: OMIT, num_fast_turns: OMIT, additional_properties: nil)
|
81
|
+
@messages = messages if messages != OMIT
|
82
|
+
@tools = tools if tools != OMIT
|
83
|
+
@tool_ids = tool_ids if tool_ids != OMIT
|
84
|
+
@knowledge_base = knowledge_base if knowledge_base != OMIT
|
85
|
+
@knowledge_base_id = knowledge_base_id if knowledge_base_id != OMIT
|
86
|
+
@model = model
|
87
|
+
@temperature = temperature if temperature != OMIT
|
88
|
+
@max_tokens = max_tokens if max_tokens != OMIT
|
89
|
+
@emotion_recognition_enabled = emotion_recognition_enabled if emotion_recognition_enabled != OMIT
|
90
|
+
@num_fast_turns = num_fast_turns if num_fast_turns != OMIT
|
91
|
+
@additional_properties = additional_properties
|
92
|
+
@_field_set = {
|
93
|
+
"messages": messages,
|
94
|
+
"tools": tools,
|
95
|
+
"toolIds": tool_ids,
|
96
|
+
"knowledgeBase": knowledge_base,
|
97
|
+
"knowledgeBaseId": knowledge_base_id,
|
98
|
+
"model": model,
|
99
|
+
"temperature": temperature,
|
100
|
+
"maxTokens": max_tokens,
|
101
|
+
"emotionRecognitionEnabled": emotion_recognition_enabled,
|
102
|
+
"numFastTurns": num_fast_turns
|
103
|
+
}.reject do |_k, v|
|
104
|
+
v == OMIT
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
# Deserialize a JSON object to an instance of XaiModel
|
109
|
+
#
|
110
|
+
# @param json_object [String]
|
111
|
+
# @return [Vapi::XaiModel]
|
112
|
+
def self.from_json(json_object:)
|
113
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
114
|
+
parsed_json = JSON.parse(json_object)
|
115
|
+
messages = parsed_json["messages"]&.map do |item|
|
116
|
+
item = item.to_json
|
117
|
+
Vapi::OpenAiMessage.from_json(json_object: item)
|
118
|
+
end
|
119
|
+
tools = parsed_json["tools"]&.map do |item|
|
120
|
+
item = item.to_json
|
121
|
+
Vapi::XaiModelToolsItem.from_json(json_object: item)
|
122
|
+
end
|
123
|
+
tool_ids = parsed_json["toolIds"]
|
124
|
+
if parsed_json["knowledgeBase"].nil?
|
125
|
+
knowledge_base = nil
|
126
|
+
else
|
127
|
+
knowledge_base = parsed_json["knowledgeBase"].to_json
|
128
|
+
knowledge_base = Vapi::CreateCustomKnowledgeBaseDto.from_json(json_object: knowledge_base)
|
129
|
+
end
|
130
|
+
knowledge_base_id = parsed_json["knowledgeBaseId"]
|
131
|
+
model = parsed_json["model"]
|
132
|
+
temperature = parsed_json["temperature"]
|
133
|
+
max_tokens = parsed_json["maxTokens"]
|
134
|
+
emotion_recognition_enabled = parsed_json["emotionRecognitionEnabled"]
|
135
|
+
num_fast_turns = parsed_json["numFastTurns"]
|
136
|
+
new(
|
137
|
+
messages: messages,
|
138
|
+
tools: tools,
|
139
|
+
tool_ids: tool_ids,
|
140
|
+
knowledge_base: knowledge_base,
|
141
|
+
knowledge_base_id: knowledge_base_id,
|
142
|
+
model: model,
|
143
|
+
temperature: temperature,
|
144
|
+
max_tokens: max_tokens,
|
145
|
+
emotion_recognition_enabled: emotion_recognition_enabled,
|
146
|
+
num_fast_turns: num_fast_turns,
|
147
|
+
additional_properties: struct
|
148
|
+
)
|
149
|
+
end
|
150
|
+
|
151
|
+
# Serialize an instance of XaiModel to a JSON object
|
152
|
+
#
|
153
|
+
# @return [String]
|
154
|
+
def to_json(*_args)
|
155
|
+
@_field_set&.to_json
|
156
|
+
end
|
157
|
+
|
158
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
159
|
+
# hash and check each fields type against the current object's property
|
160
|
+
# definitions.
|
161
|
+
#
|
162
|
+
# @param obj [Object]
|
163
|
+
# @return [Void]
|
164
|
+
def self.validate_raw(obj:)
|
165
|
+
obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
|
166
|
+
obj.tools&.is_a?(Array) != false || raise("Passed value for field obj.tools is not the expected type, validation failed.")
|
167
|
+
obj.tool_ids&.is_a?(Array) != false || raise("Passed value for field obj.tool_ids is not the expected type, validation failed.")
|
168
|
+
obj.knowledge_base.nil? || Vapi::CreateCustomKnowledgeBaseDto.validate_raw(obj: obj.knowledge_base)
|
169
|
+
obj.knowledge_base_id&.is_a?(String) != false || raise("Passed value for field obj.knowledge_base_id is not the expected type, validation failed.")
|
170
|
+
obj.model.is_a?(String) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
|
171
|
+
obj.temperature&.is_a?(Float) != false || raise("Passed value for field obj.temperature is not the expected type, validation failed.")
|
172
|
+
obj.max_tokens&.is_a?(Float) != false || raise("Passed value for field obj.max_tokens is not the expected type, validation failed.")
|
173
|
+
obj.emotion_recognition_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.emotion_recognition_enabled is not the expected type, validation failed.")
|
174
|
+
obj.num_fast_turns&.is_a?(Float) != false || raise("Passed value for field obj.num_fast_turns is not the expected type, validation failed.")
|
175
|
+
end
|
176
|
+
end
|
177
|
+
end
|
@@ -0,0 +1,159 @@
|
|
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
|
+
class XaiModelToolsItem
|
14
|
+
# @return [Object]
|
15
|
+
attr_reader :member
|
16
|
+
# @return [String]
|
17
|
+
attr_reader :discriminant
|
18
|
+
|
19
|
+
private_class_method :new
|
20
|
+
alias kind_of? is_a?
|
21
|
+
|
22
|
+
# @param member [Object]
|
23
|
+
# @param discriminant [String]
|
24
|
+
# @return [Vapi::XaiModelToolsItem]
|
25
|
+
def initialize(member:, discriminant:)
|
26
|
+
@member = member
|
27
|
+
@discriminant = discriminant
|
28
|
+
end
|
29
|
+
|
30
|
+
# Deserialize a JSON object to an instance of XaiModelToolsItem
|
31
|
+
#
|
32
|
+
# @param json_object [String]
|
33
|
+
# @return [Vapi::XaiModelToolsItem]
|
34
|
+
def self.from_json(json_object:)
|
35
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
36
|
+
member = case struct.type
|
37
|
+
when "dtmf"
|
38
|
+
Vapi::CreateDtmfToolDto.from_json(json_object: json_object)
|
39
|
+
when "endCall"
|
40
|
+
Vapi::CreateEndCallToolDto.from_json(json_object: json_object)
|
41
|
+
when "voicemail"
|
42
|
+
Vapi::CreateVoicemailToolDto.from_json(json_object: json_object)
|
43
|
+
when "function"
|
44
|
+
Vapi::CreateFunctionToolDto.from_json(json_object: json_object)
|
45
|
+
when "ghl"
|
46
|
+
Vapi::CreateGhlToolDto.from_json(json_object: json_object)
|
47
|
+
when "make"
|
48
|
+
Vapi::CreateMakeToolDto.from_json(json_object: json_object)
|
49
|
+
when "transferCall"
|
50
|
+
Vapi::CreateTransferCallToolDto.from_json(json_object: json_object)
|
51
|
+
else
|
52
|
+
Vapi::CreateDtmfToolDto.from_json(json_object: json_object)
|
53
|
+
end
|
54
|
+
new(member: member, discriminant: struct.type)
|
55
|
+
end
|
56
|
+
|
57
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
58
|
+
#
|
59
|
+
# @return [String]
|
60
|
+
def to_json(*_args)
|
61
|
+
case @discriminant
|
62
|
+
when "dtmf"
|
63
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
64
|
+
when "endCall"
|
65
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
66
|
+
when "voicemail"
|
67
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
68
|
+
when "function"
|
69
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
70
|
+
when "ghl"
|
71
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
72
|
+
when "make"
|
73
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
74
|
+
when "transferCall"
|
75
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
76
|
+
else
|
77
|
+
{ "type": @discriminant, value: @member }.to_json
|
78
|
+
end
|
79
|
+
@member.to_json
|
80
|
+
end
|
81
|
+
|
82
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
83
|
+
# hash and check each fields type against the current object's property
|
84
|
+
# definitions.
|
85
|
+
#
|
86
|
+
# @param obj [Object]
|
87
|
+
# @return [Void]
|
88
|
+
def self.validate_raw(obj:)
|
89
|
+
case obj.type
|
90
|
+
when "dtmf"
|
91
|
+
Vapi::CreateDtmfToolDto.validate_raw(obj: obj)
|
92
|
+
when "endCall"
|
93
|
+
Vapi::CreateEndCallToolDto.validate_raw(obj: obj)
|
94
|
+
when "voicemail"
|
95
|
+
Vapi::CreateVoicemailToolDto.validate_raw(obj: obj)
|
96
|
+
when "function"
|
97
|
+
Vapi::CreateFunctionToolDto.validate_raw(obj: obj)
|
98
|
+
when "ghl"
|
99
|
+
Vapi::CreateGhlToolDto.validate_raw(obj: obj)
|
100
|
+
when "make"
|
101
|
+
Vapi::CreateMakeToolDto.validate_raw(obj: obj)
|
102
|
+
when "transferCall"
|
103
|
+
Vapi::CreateTransferCallToolDto.validate_raw(obj: obj)
|
104
|
+
else
|
105
|
+
raise("Passed value matched no type within the union, validation failed.")
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
110
|
+
#
|
111
|
+
# @param obj [Object]
|
112
|
+
# @return [Boolean]
|
113
|
+
def is_a?(obj)
|
114
|
+
@member.is_a?(obj)
|
115
|
+
end
|
116
|
+
|
117
|
+
# @param member [Vapi::CreateDtmfToolDto]
|
118
|
+
# @return [Vapi::XaiModelToolsItem]
|
119
|
+
def self.dtmf(member:)
|
120
|
+
new(member: member, discriminant: "dtmf")
|
121
|
+
end
|
122
|
+
|
123
|
+
# @param member [Vapi::CreateEndCallToolDto]
|
124
|
+
# @return [Vapi::XaiModelToolsItem]
|
125
|
+
def self.end_call(member:)
|
126
|
+
new(member: member, discriminant: "endCall")
|
127
|
+
end
|
128
|
+
|
129
|
+
# @param member [Vapi::CreateVoicemailToolDto]
|
130
|
+
# @return [Vapi::XaiModelToolsItem]
|
131
|
+
def self.voicemail(member:)
|
132
|
+
new(member: member, discriminant: "voicemail")
|
133
|
+
end
|
134
|
+
|
135
|
+
# @param member [Vapi::CreateFunctionToolDto]
|
136
|
+
# @return [Vapi::XaiModelToolsItem]
|
137
|
+
def self.function(member:)
|
138
|
+
new(member: member, discriminant: "function")
|
139
|
+
end
|
140
|
+
|
141
|
+
# @param member [Vapi::CreateGhlToolDto]
|
142
|
+
# @return [Vapi::XaiModelToolsItem]
|
143
|
+
def self.ghl(member:)
|
144
|
+
new(member: member, discriminant: "ghl")
|
145
|
+
end
|
146
|
+
|
147
|
+
# @param member [Vapi::CreateMakeToolDto]
|
148
|
+
# @return [Vapi::XaiModelToolsItem]
|
149
|
+
def self.make(member:)
|
150
|
+
new(member: member, discriminant: "make")
|
151
|
+
end
|
152
|
+
|
153
|
+
# @param member [Vapi::CreateTransferCallToolDto]
|
154
|
+
# @return [Vapi::XaiModelToolsItem]
|
155
|
+
def self.transfer_call(member:)
|
156
|
+
new(member: member, discriminant: "transferCall")
|
157
|
+
end
|
158
|
+
end
|
159
|
+
end
|
data/lib/vapi_server_sdk.rb
CHANGED
@@ -7,6 +7,7 @@ require_relative "vapi_server_sdk/calls/client"
|
|
7
7
|
require_relative "vapi_server_sdk/assistants/client"
|
8
8
|
require_relative "vapi_server_sdk/phone_numbers/client"
|
9
9
|
require_relative "vapi_server_sdk/squads/client"
|
10
|
+
require_relative "vapi_server_sdk/knowledge_bases/client"
|
10
11
|
require_relative "vapi_server_sdk/blocks/client"
|
11
12
|
require_relative "vapi_server_sdk/tools/client"
|
12
13
|
require_relative "vapi_server_sdk/files/client"
|
@@ -23,6 +24,8 @@ module Vapi
|
|
23
24
|
attr_reader :phone_numbers
|
24
25
|
# @return [Vapi::SquadsClient]
|
25
26
|
attr_reader :squads
|
27
|
+
# @return [Vapi::KnowledgeBasesClient]
|
28
|
+
attr_reader :knowledge_bases
|
26
29
|
# @return [Vapi::BlocksClient]
|
27
30
|
attr_reader :blocks
|
28
31
|
# @return [Vapi::ToolsClient]
|
@@ -53,6 +56,7 @@ module Vapi
|
|
53
56
|
@assistants = Vapi::AssistantsClient.new(request_client: @request_client)
|
54
57
|
@phone_numbers = Vapi::PhoneNumbersClient.new(request_client: @request_client)
|
55
58
|
@squads = Vapi::SquadsClient.new(request_client: @request_client)
|
59
|
+
@knowledge_bases = Vapi::KnowledgeBasesClient.new(request_client: @request_client)
|
56
60
|
@blocks = Vapi::BlocksClient.new(request_client: @request_client)
|
57
61
|
@tools = Vapi::ToolsClient.new(request_client: @request_client)
|
58
62
|
@files = Vapi::FilesClient.new(request_client: @request_client)
|
@@ -70,6 +74,8 @@ module Vapi
|
|
70
74
|
attr_reader :phone_numbers
|
71
75
|
# @return [Vapi::AsyncSquadsClient]
|
72
76
|
attr_reader :squads
|
77
|
+
# @return [Vapi::AsyncKnowledgeBasesClient]
|
78
|
+
attr_reader :knowledge_bases
|
73
79
|
# @return [Vapi::AsyncBlocksClient]
|
74
80
|
attr_reader :blocks
|
75
81
|
# @return [Vapi::AsyncToolsClient]
|
@@ -100,6 +106,7 @@ module Vapi
|
|
100
106
|
@assistants = Vapi::AsyncAssistantsClient.new(request_client: @async_request_client)
|
101
107
|
@phone_numbers = Vapi::AsyncPhoneNumbersClient.new(request_client: @async_request_client)
|
102
108
|
@squads = Vapi::AsyncSquadsClient.new(request_client: @async_request_client)
|
109
|
+
@knowledge_bases = Vapi::AsyncKnowledgeBasesClient.new(request_client: @async_request_client)
|
103
110
|
@blocks = Vapi::AsyncBlocksClient.new(request_client: @async_request_client)
|
104
111
|
@tools = Vapi::AsyncToolsClient.new(request_client: @async_request_client)
|
105
112
|
@files = Vapi::AsyncFilesClient.new(request_client: @async_request_client)
|