jaxl-python 0.0.24__tar.gz → 0.0.26__tar.gz
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.
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/PKG-INFO +1 -1
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/_client.py +10 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/base.py +7 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/cli.py +6 -1
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/_scm_version.py +2 -2
- jaxl_python-0.0.26/jaxl/api/client/api/v1/v1_calls_messages_create.py +127 -0
- jaxl_python-0.0.26/jaxl/api/client/api/v1/v1_calls_report_retrieve.py +340 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/__init__.py +16 -0
- jaxl_python-0.0.26/jaxl/api/client/models/call_message_request_request.py +103 -0
- jaxl_python-0.0.26/jaxl/api/client/models/call_message_request_type_enum.py +18 -0
- jaxl_python-0.0.26/jaxl/api/client/models/call_report.py +84 -0
- jaxl_python-0.0.26/jaxl/api/client/models/call_report_reason.py +66 -0
- jaxl_python-0.0.26/jaxl/api/client/models/call_report_status_enum.py +22 -0
- jaxl_python-0.0.26/jaxl/api/client/models/v1_calls_report_retrieve_date_range.py +46 -0
- jaxl_python-0.0.26/jaxl/api/client/models/v1_calls_report_retrieve_fields_item.py +25 -0
- jaxl_python-0.0.26/jaxl/api/client/models/why_enum.py +18 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/apps.py +5 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/calls.py +84 -1
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/PKG-INFO +1 -1
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/SOURCES.txt +10 -1
- jaxl_python-0.0.24/jaxl/api/client/models/ivr_options_response.py.orig +0 -153
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/.github/workflows/sdk.yml +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/.gitignore +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/.isort.cfg +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/.pylintrc +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/.vscode/settings.json +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/LICENSE.md +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/README.md +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/SPECIFICATION.md +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/docs.sh +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/README.md +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/prompts/example.txt +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/py.typed +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/request_and_confirm_code_then_send_to_phone.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/request_code_and_send_to_phone.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/send_to_phone.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/streaming_aiagent.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/streaming_audio_chunks.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/streaming_speech_segments.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/examples/streaming_transcriptions.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/index.md +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/_sdk.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_app_organizations_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_app_organizations_providers_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_appusers_me_retrieve.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_add_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_hangup_retrieve.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_retrieve.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_tags_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_token_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_transfer_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_tts_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_calls_usage_retrieve.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_campaign_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_customer_consumables_retrieve.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_devices_attest_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_devices_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_integrations_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_ivr_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_ivr_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_ivr_options_create.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_ivr_options_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_ivr_options_partial_update.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_kyc_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_messages_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_phonenumbers_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_phonenumbers_partial_update.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v1/v1_phonenumbers_search_retrieve.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v2/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v2/v2_app_organizations_employees_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v2/v2_app_organizations_groups_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v3/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/api/v3/v3_orders_subscriptions_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/client.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/errors.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/address_provider.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/address_provider_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/analytic.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/app_price.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/app_user.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/available_phone_number.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/available_phone_number_capabilities.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/available_phone_number_provider_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_add_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_cost.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_location_epoch.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_metadata.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_tag_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_tag_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_token_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_token_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_transfer_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_tts_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_type_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_usage_by_currency_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_usage_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/call_usage_stats_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/campaign_metadata.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/campaign_metadata_metadata.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/campaign_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/campaign_response_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/campaign_stats.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/campaign_tag.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/can_user_resubscribe_plan.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/canceled_by_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/capabilities.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/connection.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/country.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/cta.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/cta_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/currency_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/customer_consumable_total.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/customer_order_subscriptions_serializer_v2.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/customer_order_subscriptions_serializer_v2_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/customer_provider_serializer_v2.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/device.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/device_attestation_error.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/device_attestation_error_reason_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/device_attestation_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/dh_message.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/dh_message_attachment.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/dh_message_reaction.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/dh_message_type_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/direction_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/emoji.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/emoji_reaction.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/exotel_auth_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/id_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/integrations_error_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/integrations_properties_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/integrations_request_provider_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/integrations_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/integrations_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/intent_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/invalid_provider_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/iso_country_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_collection.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_collection_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_menu_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_menu_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_menu_response_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_options_invalid_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_options_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/ivr_options_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/kyc.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/kyc_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/kyc_upload_metadata.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/location.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/next_or_cta_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/order_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_employee.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_employee_preferences.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_employee_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_group_inline.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_group_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_preferences.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/organization_provider.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_call_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_campaign_response_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_customer_order_subscriptions_serializer_v2_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_device_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_dh_message_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_ivr_menu_response_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_ivr_options_response_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_kyc_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_organization_employee_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_organization_group_response_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_organization_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_organization_provider_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/paginated_phone_number_list.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/patched_ivr_options_update_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/patched_phone_number_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/payment_gateway_fees_info.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/period_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/phone_number.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/phone_number_attributes.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/phone_number_capabilities.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/phone_number_provider_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/phone_number_search_response.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/phone_number_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_cancel_info.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_expiry_timestamp.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_expiry_timestamp_type_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_extra_details.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_type.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/plan_type_cycle.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/platform_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/product_group.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/proof.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/proof_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/provider_status_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/reaction_by.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/rental_currency_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/resource_enum.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/shopify_auth_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/stripe_auth_request_request.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/user_agent.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/user_agent_browser.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/user_agent_device.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/user_agent_operating_system.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/user_agent_platform.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/user_identity.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_app_organizations_list_status_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_calls_list_direction.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_campaign_list_status_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_customer_consumables_retrieve_currency.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_ivr_list_duration.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_kyc_list_iso_country.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_kyc_list_provider_status_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_kyc_list_resource.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_kyc_list_status.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_phonenumbers_list_additional_status_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_phonenumbers_list_provider.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_phonenumbers_list_status.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_intent.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_iso_country_code.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_resource.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v2_app_organizations_employees_list_status_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v3_orders_subscriptions_list_currency.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/models/v3_orders_subscriptions_list_status_item.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/client/types.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/py.typed +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/__init__.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/_constants.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/accounts.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/campaigns.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/devices.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/ivrs.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/kycs.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/members.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/messages.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/notifications.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/orgs.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/payments.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/phones.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/silence.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl/api/resources/teams.py +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/dependency_links.txt +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/entry_points.txt +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/not-zip-safe +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/requires.txt +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/jaxl_python.egg-info/top_level.txt +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/mkdocs.yml +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/pyproject.toml +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/setup.cfg +0 -0
- {jaxl_python-0.0.24 → jaxl_python-0.0.26}/setup.gif +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: jaxl-python
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.26
|
|
4
4
|
Summary: Official Python SDK and CLI for interfacing with the Jaxl API. Manage calls, messages, IVRs, devices, teams, payments, campaigns, streaming transcriptions and AI Agents. Built on OpenAPI, it offers both generated API clients and Pythonic wrappers for ease of use.
|
|
5
5
|
Home-page: https://github.com/jaxl-innovations-private-limited/jaxl-python
|
|
6
6
|
Download-URL: https://github.com/jaxl-innovations-private-limited/jaxl-python/archive/main.zip
|
|
@@ -299,6 +299,16 @@ def _attest() -> Optional[Dict[str, Any]]:
|
|
|
299
299
|
return response
|
|
300
300
|
|
|
301
301
|
|
|
302
|
+
def encrypt(text: str) -> str:
|
|
303
|
+
attestation = attest()
|
|
304
|
+
assert attestation and "sk" in attestation
|
|
305
|
+
return (
|
|
306
|
+
Fernet(attestation["sk"])
|
|
307
|
+
.encrypt(json.dumps(text).encode("utf-8"))
|
|
308
|
+
.decode("utf-8")
|
|
309
|
+
)
|
|
310
|
+
|
|
311
|
+
|
|
302
312
|
class JaxlApiModule(Enum):
|
|
303
313
|
"""Available API Modules"""
|
|
304
314
|
|
|
@@ -187,6 +187,13 @@ class BaseJaxlApp:
|
|
|
187
187
|
) -> None:
|
|
188
188
|
return None
|
|
189
189
|
|
|
190
|
+
async def handle_speech_chunks(
|
|
191
|
+
self,
|
|
192
|
+
req: JaxlStreamRequest,
|
|
193
|
+
slin16s: List[bytes],
|
|
194
|
+
) -> None:
|
|
195
|
+
pass
|
|
196
|
+
|
|
190
197
|
async def handle_speech_segment(
|
|
191
198
|
self,
|
|
192
199
|
req: JaxlStreamRequest,
|
|
@@ -15,6 +15,7 @@ import pkgutil
|
|
|
15
15
|
|
|
16
16
|
from jaxl.api import resources
|
|
17
17
|
from jaxl.api._client import attest
|
|
18
|
+
from jaxl.api.client.types import Response
|
|
18
19
|
|
|
19
20
|
|
|
20
21
|
def _init_subparsers(
|
|
@@ -47,7 +48,11 @@ def main() -> None:
|
|
|
47
48
|
args = parser.parse_args()
|
|
48
49
|
attest()
|
|
49
50
|
arguments = {k: getattr(args, k) for k in getattr(args, "_arg_keys", [])}
|
|
50
|
-
|
|
51
|
+
response = args.func(arguments)
|
|
52
|
+
if not isinstance(response, Response):
|
|
53
|
+
print(response)
|
|
54
|
+
else:
|
|
55
|
+
print(response.parsed)
|
|
51
56
|
|
|
52
57
|
|
|
53
58
|
def entry_point() -> None:
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright (c) 2010-present by Jaxl Innovations Private Limited.
|
|
3
|
+
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms,
|
|
7
|
+
with or without modification, is strictly prohibited.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from http import HTTPStatus
|
|
11
|
+
from typing import Any, Dict, Optional
|
|
12
|
+
|
|
13
|
+
import httpx
|
|
14
|
+
|
|
15
|
+
from ... import errors
|
|
16
|
+
from ...client import AuthenticatedClient, Client
|
|
17
|
+
from ...models.call_message_request_request import CallMessageRequestRequest
|
|
18
|
+
from ...types import Response
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def _get_kwargs(
|
|
22
|
+
id: int,
|
|
23
|
+
*,
|
|
24
|
+
client: AuthenticatedClient,
|
|
25
|
+
json_body: CallMessageRequestRequest,
|
|
26
|
+
) -> Dict[str, Any]:
|
|
27
|
+
url = "{}/v1/calls/{id}/messages/".format(client.base_url, id=id)
|
|
28
|
+
|
|
29
|
+
headers: Dict[str, str] = client.get_headers()
|
|
30
|
+
cookies: Dict[str, Any] = client.get_cookies()
|
|
31
|
+
|
|
32
|
+
json_json_body = json_body.to_dict()
|
|
33
|
+
|
|
34
|
+
return {
|
|
35
|
+
"method": "post",
|
|
36
|
+
"url": url,
|
|
37
|
+
"headers": headers,
|
|
38
|
+
"cookies": cookies,
|
|
39
|
+
"timeout": client.get_timeout(),
|
|
40
|
+
"json": json_json_body,
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any]:
|
|
45
|
+
if response.status_code == HTTPStatus.OK:
|
|
46
|
+
return None
|
|
47
|
+
if response.status_code == HTTPStatus.BAD_REQUEST:
|
|
48
|
+
return None
|
|
49
|
+
if client.raise_on_unexpected_status:
|
|
50
|
+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
|
51
|
+
else:
|
|
52
|
+
return None
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
def _build_response(*, client: Client, response: httpx.Response) -> Response[Any]:
|
|
56
|
+
return Response(
|
|
57
|
+
status_code=HTTPStatus(response.status_code),
|
|
58
|
+
content=response.content,
|
|
59
|
+
headers=response.headers,
|
|
60
|
+
parsed=_parse_response(client=client, response=response),
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
def sync_detailed(
|
|
65
|
+
id: int,
|
|
66
|
+
*,
|
|
67
|
+
client: AuthenticatedClient,
|
|
68
|
+
json_body: CallMessageRequestRequest,
|
|
69
|
+
) -> Response[Any]:
|
|
70
|
+
"""API view set for Call model.
|
|
71
|
+
|
|
72
|
+
Args:
|
|
73
|
+
id (int):
|
|
74
|
+
json_body (CallMessageRequestRequest):
|
|
75
|
+
|
|
76
|
+
Raises:
|
|
77
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
78
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
79
|
+
|
|
80
|
+
Returns:
|
|
81
|
+
Response[Any]
|
|
82
|
+
"""
|
|
83
|
+
|
|
84
|
+
kwargs = _get_kwargs(
|
|
85
|
+
id=id,
|
|
86
|
+
client=client,
|
|
87
|
+
json_body=json_body,
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
response = httpx.request(
|
|
91
|
+
verify=client.verify_ssl,
|
|
92
|
+
**kwargs,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
return _build_response(client=client, response=response)
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
async def asyncio_detailed(
|
|
99
|
+
id: int,
|
|
100
|
+
*,
|
|
101
|
+
client: AuthenticatedClient,
|
|
102
|
+
json_body: CallMessageRequestRequest,
|
|
103
|
+
) -> Response[Any]:
|
|
104
|
+
"""API view set for Call model.
|
|
105
|
+
|
|
106
|
+
Args:
|
|
107
|
+
id (int):
|
|
108
|
+
json_body (CallMessageRequestRequest):
|
|
109
|
+
|
|
110
|
+
Raises:
|
|
111
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
112
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
113
|
+
|
|
114
|
+
Returns:
|
|
115
|
+
Response[Any]
|
|
116
|
+
"""
|
|
117
|
+
|
|
118
|
+
kwargs = _get_kwargs(
|
|
119
|
+
id=id,
|
|
120
|
+
client=client,
|
|
121
|
+
json_body=json_body,
|
|
122
|
+
)
|
|
123
|
+
|
|
124
|
+
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
|
|
125
|
+
response = await _client.request(**kwargs)
|
|
126
|
+
|
|
127
|
+
return _build_response(client=client, response=response)
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright (c) 2010-present by Jaxl Innovations Private Limited.
|
|
3
|
+
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms,
|
|
7
|
+
with or without modification, is strictly prohibited.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from http import HTTPStatus
|
|
11
|
+
from typing import Any, Dict, List, Optional, Union
|
|
12
|
+
|
|
13
|
+
import httpx
|
|
14
|
+
|
|
15
|
+
from ... import errors
|
|
16
|
+
from ...client import AuthenticatedClient, Client
|
|
17
|
+
from ...models.call_report import CallReport
|
|
18
|
+
from ...models.call_report_reason import CallReportReason
|
|
19
|
+
from ...models.v1_calls_report_retrieve_date_range import V1CallsReportRetrieveDateRange
|
|
20
|
+
from ...models.v1_calls_report_retrieve_fields_item import (
|
|
21
|
+
V1CallsReportRetrieveFieldsItem,
|
|
22
|
+
)
|
|
23
|
+
from ...types import UNSET, Response, Unset
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def _get_kwargs(
|
|
27
|
+
*,
|
|
28
|
+
client: AuthenticatedClient,
|
|
29
|
+
date_range: Union[
|
|
30
|
+
Unset, None, V1CallsReportRetrieveDateRange
|
|
31
|
+
] = V1CallsReportRetrieveDateRange.TODAY,
|
|
32
|
+
eid: Union[Unset, None, List[int]] = UNSET,
|
|
33
|
+
fields: Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]] = UNSET,
|
|
34
|
+
other_number: Union[Unset, None, List[str]] = UNSET,
|
|
35
|
+
our_number: Union[Unset, None, List[str]] = UNSET,
|
|
36
|
+
tag: Union[Unset, None, List[str]] = UNSET,
|
|
37
|
+
tid: Union[Unset, None, List[int]] = UNSET,
|
|
38
|
+
) -> Dict[str, Any]:
|
|
39
|
+
url = "{}/v1/calls/report/".format(client.base_url)
|
|
40
|
+
|
|
41
|
+
headers: Dict[str, str] = client.get_headers()
|
|
42
|
+
cookies: Dict[str, Any] = client.get_cookies()
|
|
43
|
+
|
|
44
|
+
params: Dict[str, Any] = {}
|
|
45
|
+
json_date_range: Union[Unset, None, str] = UNSET
|
|
46
|
+
if not isinstance(date_range, Unset):
|
|
47
|
+
json_date_range = date_range.value if date_range else None
|
|
48
|
+
|
|
49
|
+
params["date_range"] = json_date_range
|
|
50
|
+
|
|
51
|
+
json_eid: Union[Unset, None, List[int]] = UNSET
|
|
52
|
+
if not isinstance(eid, Unset):
|
|
53
|
+
if eid is None:
|
|
54
|
+
json_eid = None
|
|
55
|
+
else:
|
|
56
|
+
json_eid = eid
|
|
57
|
+
|
|
58
|
+
params["eid"] = json_eid
|
|
59
|
+
|
|
60
|
+
json_fields: Union[Unset, None, List[str]] = UNSET
|
|
61
|
+
if not isinstance(fields, Unset):
|
|
62
|
+
if fields is None:
|
|
63
|
+
json_fields = None
|
|
64
|
+
else:
|
|
65
|
+
json_fields = []
|
|
66
|
+
for fields_item_data in fields:
|
|
67
|
+
fields_item = fields_item_data.value
|
|
68
|
+
|
|
69
|
+
json_fields.append(fields_item)
|
|
70
|
+
|
|
71
|
+
params["fields"] = json_fields
|
|
72
|
+
|
|
73
|
+
json_other_number: Union[Unset, None, List[str]] = UNSET
|
|
74
|
+
if not isinstance(other_number, Unset):
|
|
75
|
+
if other_number is None:
|
|
76
|
+
json_other_number = None
|
|
77
|
+
else:
|
|
78
|
+
json_other_number = other_number
|
|
79
|
+
|
|
80
|
+
params["other_number"] = json_other_number
|
|
81
|
+
|
|
82
|
+
json_our_number: Union[Unset, None, List[str]] = UNSET
|
|
83
|
+
if not isinstance(our_number, Unset):
|
|
84
|
+
if our_number is None:
|
|
85
|
+
json_our_number = None
|
|
86
|
+
else:
|
|
87
|
+
json_our_number = our_number
|
|
88
|
+
|
|
89
|
+
params["our_number"] = json_our_number
|
|
90
|
+
|
|
91
|
+
json_tag: Union[Unset, None, List[str]] = UNSET
|
|
92
|
+
if not isinstance(tag, Unset):
|
|
93
|
+
if tag is None:
|
|
94
|
+
json_tag = None
|
|
95
|
+
else:
|
|
96
|
+
json_tag = tag
|
|
97
|
+
|
|
98
|
+
params["tag"] = json_tag
|
|
99
|
+
|
|
100
|
+
json_tid: Union[Unset, None, List[int]] = UNSET
|
|
101
|
+
if not isinstance(tid, Unset):
|
|
102
|
+
if tid is None:
|
|
103
|
+
json_tid = None
|
|
104
|
+
else:
|
|
105
|
+
json_tid = tid
|
|
106
|
+
|
|
107
|
+
params["tid"] = json_tid
|
|
108
|
+
|
|
109
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
|
110
|
+
|
|
111
|
+
return {
|
|
112
|
+
"method": "get",
|
|
113
|
+
"url": url,
|
|
114
|
+
"headers": headers,
|
|
115
|
+
"cookies": cookies,
|
|
116
|
+
"timeout": client.get_timeout(),
|
|
117
|
+
"params": params,
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
def _parse_response(
|
|
122
|
+
*, client: Client, response: httpx.Response
|
|
123
|
+
) -> Optional[Union[CallReport, CallReportReason]]:
|
|
124
|
+
if response.status_code == HTTPStatus.BAD_REQUEST:
|
|
125
|
+
response_400 = CallReportReason.from_dict(response.json())
|
|
126
|
+
|
|
127
|
+
return response_400
|
|
128
|
+
if response.status_code == HTTPStatus.OK:
|
|
129
|
+
response_200 = CallReport.from_dict(response.json())
|
|
130
|
+
|
|
131
|
+
return response_200
|
|
132
|
+
if client.raise_on_unexpected_status:
|
|
133
|
+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
|
134
|
+
else:
|
|
135
|
+
return None
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def _build_response(
|
|
139
|
+
*, client: Client, response: httpx.Response
|
|
140
|
+
) -> Response[Union[CallReport, CallReportReason]]:
|
|
141
|
+
return Response(
|
|
142
|
+
status_code=HTTPStatus(response.status_code),
|
|
143
|
+
content=response.content,
|
|
144
|
+
headers=response.headers,
|
|
145
|
+
parsed=_parse_response(client=client, response=response),
|
|
146
|
+
)
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
def sync_detailed(
|
|
150
|
+
*,
|
|
151
|
+
client: AuthenticatedClient,
|
|
152
|
+
date_range: Union[
|
|
153
|
+
Unset, None, V1CallsReportRetrieveDateRange
|
|
154
|
+
] = V1CallsReportRetrieveDateRange.TODAY,
|
|
155
|
+
eid: Union[Unset, None, List[int]] = UNSET,
|
|
156
|
+
fields: Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]] = UNSET,
|
|
157
|
+
other_number: Union[Unset, None, List[str]] = UNSET,
|
|
158
|
+
our_number: Union[Unset, None, List[str]] = UNSET,
|
|
159
|
+
tag: Union[Unset, None, List[str]] = UNSET,
|
|
160
|
+
tid: Union[Unset, None, List[int]] = UNSET,
|
|
161
|
+
) -> Response[Union[CallReport, CallReportReason]]:
|
|
162
|
+
"""API view set for Call model.
|
|
163
|
+
|
|
164
|
+
Args:
|
|
165
|
+
date_range (Union[Unset, None, V1CallsReportRetrieveDateRange]): Default:
|
|
166
|
+
V1CallsReportRetrieveDateRange.TODAY.
|
|
167
|
+
eid (Union[Unset, None, List[int]]):
|
|
168
|
+
fields (Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]]):
|
|
169
|
+
other_number (Union[Unset, None, List[str]]):
|
|
170
|
+
our_number (Union[Unset, None, List[str]]):
|
|
171
|
+
tag (Union[Unset, None, List[str]]):
|
|
172
|
+
tid (Union[Unset, None, List[int]]):
|
|
173
|
+
|
|
174
|
+
Raises:
|
|
175
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
176
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
177
|
+
|
|
178
|
+
Returns:
|
|
179
|
+
Response[Union[CallReport, CallReportReason]]
|
|
180
|
+
"""
|
|
181
|
+
|
|
182
|
+
kwargs = _get_kwargs(
|
|
183
|
+
client=client,
|
|
184
|
+
date_range=date_range,
|
|
185
|
+
eid=eid,
|
|
186
|
+
fields=fields,
|
|
187
|
+
other_number=other_number,
|
|
188
|
+
our_number=our_number,
|
|
189
|
+
tag=tag,
|
|
190
|
+
tid=tid,
|
|
191
|
+
)
|
|
192
|
+
|
|
193
|
+
response = httpx.request(
|
|
194
|
+
verify=client.verify_ssl,
|
|
195
|
+
**kwargs,
|
|
196
|
+
)
|
|
197
|
+
|
|
198
|
+
return _build_response(client=client, response=response)
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
def sync(
|
|
202
|
+
*,
|
|
203
|
+
client: AuthenticatedClient,
|
|
204
|
+
date_range: Union[
|
|
205
|
+
Unset, None, V1CallsReportRetrieveDateRange
|
|
206
|
+
] = V1CallsReportRetrieveDateRange.TODAY,
|
|
207
|
+
eid: Union[Unset, None, List[int]] = UNSET,
|
|
208
|
+
fields: Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]] = UNSET,
|
|
209
|
+
other_number: Union[Unset, None, List[str]] = UNSET,
|
|
210
|
+
our_number: Union[Unset, None, List[str]] = UNSET,
|
|
211
|
+
tag: Union[Unset, None, List[str]] = UNSET,
|
|
212
|
+
tid: Union[Unset, None, List[int]] = UNSET,
|
|
213
|
+
) -> Optional[Union[CallReport, CallReportReason]]:
|
|
214
|
+
"""API view set for Call model.
|
|
215
|
+
|
|
216
|
+
Args:
|
|
217
|
+
date_range (Union[Unset, None, V1CallsReportRetrieveDateRange]): Default:
|
|
218
|
+
V1CallsReportRetrieveDateRange.TODAY.
|
|
219
|
+
eid (Union[Unset, None, List[int]]):
|
|
220
|
+
fields (Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]]):
|
|
221
|
+
other_number (Union[Unset, None, List[str]]):
|
|
222
|
+
our_number (Union[Unset, None, List[str]]):
|
|
223
|
+
tag (Union[Unset, None, List[str]]):
|
|
224
|
+
tid (Union[Unset, None, List[int]]):
|
|
225
|
+
|
|
226
|
+
Raises:
|
|
227
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
228
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
229
|
+
|
|
230
|
+
Returns:
|
|
231
|
+
Response[Union[CallReport, CallReportReason]]
|
|
232
|
+
"""
|
|
233
|
+
|
|
234
|
+
return sync_detailed(
|
|
235
|
+
client=client,
|
|
236
|
+
date_range=date_range,
|
|
237
|
+
eid=eid,
|
|
238
|
+
fields=fields,
|
|
239
|
+
other_number=other_number,
|
|
240
|
+
our_number=our_number,
|
|
241
|
+
tag=tag,
|
|
242
|
+
tid=tid,
|
|
243
|
+
).parsed
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
async def asyncio_detailed(
|
|
247
|
+
*,
|
|
248
|
+
client: AuthenticatedClient,
|
|
249
|
+
date_range: Union[
|
|
250
|
+
Unset, None, V1CallsReportRetrieveDateRange
|
|
251
|
+
] = V1CallsReportRetrieveDateRange.TODAY,
|
|
252
|
+
eid: Union[Unset, None, List[int]] = UNSET,
|
|
253
|
+
fields: Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]] = UNSET,
|
|
254
|
+
other_number: Union[Unset, None, List[str]] = UNSET,
|
|
255
|
+
our_number: Union[Unset, None, List[str]] = UNSET,
|
|
256
|
+
tag: Union[Unset, None, List[str]] = UNSET,
|
|
257
|
+
tid: Union[Unset, None, List[int]] = UNSET,
|
|
258
|
+
) -> Response[Union[CallReport, CallReportReason]]:
|
|
259
|
+
"""API view set for Call model.
|
|
260
|
+
|
|
261
|
+
Args:
|
|
262
|
+
date_range (Union[Unset, None, V1CallsReportRetrieveDateRange]): Default:
|
|
263
|
+
V1CallsReportRetrieveDateRange.TODAY.
|
|
264
|
+
eid (Union[Unset, None, List[int]]):
|
|
265
|
+
fields (Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]]):
|
|
266
|
+
other_number (Union[Unset, None, List[str]]):
|
|
267
|
+
our_number (Union[Unset, None, List[str]]):
|
|
268
|
+
tag (Union[Unset, None, List[str]]):
|
|
269
|
+
tid (Union[Unset, None, List[int]]):
|
|
270
|
+
|
|
271
|
+
Raises:
|
|
272
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
273
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
274
|
+
|
|
275
|
+
Returns:
|
|
276
|
+
Response[Union[CallReport, CallReportReason]]
|
|
277
|
+
"""
|
|
278
|
+
|
|
279
|
+
kwargs = _get_kwargs(
|
|
280
|
+
client=client,
|
|
281
|
+
date_range=date_range,
|
|
282
|
+
eid=eid,
|
|
283
|
+
fields=fields,
|
|
284
|
+
other_number=other_number,
|
|
285
|
+
our_number=our_number,
|
|
286
|
+
tag=tag,
|
|
287
|
+
tid=tid,
|
|
288
|
+
)
|
|
289
|
+
|
|
290
|
+
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
|
|
291
|
+
response = await _client.request(**kwargs)
|
|
292
|
+
|
|
293
|
+
return _build_response(client=client, response=response)
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
async def asyncio(
|
|
297
|
+
*,
|
|
298
|
+
client: AuthenticatedClient,
|
|
299
|
+
date_range: Union[
|
|
300
|
+
Unset, None, V1CallsReportRetrieveDateRange
|
|
301
|
+
] = V1CallsReportRetrieveDateRange.TODAY,
|
|
302
|
+
eid: Union[Unset, None, List[int]] = UNSET,
|
|
303
|
+
fields: Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]] = UNSET,
|
|
304
|
+
other_number: Union[Unset, None, List[str]] = UNSET,
|
|
305
|
+
our_number: Union[Unset, None, List[str]] = UNSET,
|
|
306
|
+
tag: Union[Unset, None, List[str]] = UNSET,
|
|
307
|
+
tid: Union[Unset, None, List[int]] = UNSET,
|
|
308
|
+
) -> Optional[Union[CallReport, CallReportReason]]:
|
|
309
|
+
"""API view set for Call model.
|
|
310
|
+
|
|
311
|
+
Args:
|
|
312
|
+
date_range (Union[Unset, None, V1CallsReportRetrieveDateRange]): Default:
|
|
313
|
+
V1CallsReportRetrieveDateRange.TODAY.
|
|
314
|
+
eid (Union[Unset, None, List[int]]):
|
|
315
|
+
fields (Union[Unset, None, List[V1CallsReportRetrieveFieldsItem]]):
|
|
316
|
+
other_number (Union[Unset, None, List[str]]):
|
|
317
|
+
our_number (Union[Unset, None, List[str]]):
|
|
318
|
+
tag (Union[Unset, None, List[str]]):
|
|
319
|
+
tid (Union[Unset, None, List[int]]):
|
|
320
|
+
|
|
321
|
+
Raises:
|
|
322
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
323
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
324
|
+
|
|
325
|
+
Returns:
|
|
326
|
+
Response[Union[CallReport, CallReportReason]]
|
|
327
|
+
"""
|
|
328
|
+
|
|
329
|
+
return (
|
|
330
|
+
await asyncio_detailed(
|
|
331
|
+
client=client,
|
|
332
|
+
date_range=date_range,
|
|
333
|
+
eid=eid,
|
|
334
|
+
fields=fields,
|
|
335
|
+
other_number=other_number,
|
|
336
|
+
our_number=our_number,
|
|
337
|
+
tag=tag,
|
|
338
|
+
tid=tid,
|
|
339
|
+
)
|
|
340
|
+
).parsed
|
|
@@ -21,7 +21,12 @@ from .call import Call
|
|
|
21
21
|
from .call_add_request_request import CallAddRequestRequest
|
|
22
22
|
from .call_cost import CallCost
|
|
23
23
|
from .call_location_epoch import CallLocationEpoch
|
|
24
|
+
from .call_message_request_request import CallMessageRequestRequest
|
|
25
|
+
from .call_message_request_type_enum import CallMessageRequestTypeEnum
|
|
24
26
|
from .call_metadata import CallMetadata
|
|
27
|
+
from .call_report import CallReport
|
|
28
|
+
from .call_report_reason import CallReportReason
|
|
29
|
+
from .call_report_status_enum import CallReportStatusEnum
|
|
25
30
|
from .call_tag_request import CallTagRequest
|
|
26
31
|
from .call_tag_response import CallTagResponse
|
|
27
32
|
from .call_token_request import CallTokenRequest
|
|
@@ -151,6 +156,8 @@ from .user_agent_platform import UserAgentPlatform
|
|
|
151
156
|
from .user_identity import UserIdentity
|
|
152
157
|
from .v1_app_organizations_list_status_item import V1AppOrganizationsListStatusItem
|
|
153
158
|
from .v1_calls_list_direction import V1CallsListDirection
|
|
159
|
+
from .v1_calls_report_retrieve_date_range import V1CallsReportRetrieveDateRange
|
|
160
|
+
from .v1_calls_report_retrieve_fields_item import V1CallsReportRetrieveFieldsItem
|
|
154
161
|
from .v1_campaign_list_status_item import V1CampaignListStatusItem
|
|
155
162
|
from .v1_customer_consumables_retrieve_currency import (
|
|
156
163
|
V1CustomerConsumablesRetrieveCurrency,
|
|
@@ -179,6 +186,7 @@ from .v3_orders_subscriptions_list_currency import V3OrdersSubscriptionsListCurr
|
|
|
179
186
|
from .v3_orders_subscriptions_list_status_item import (
|
|
180
187
|
V3OrdersSubscriptionsListStatusItem,
|
|
181
188
|
)
|
|
189
|
+
from .why_enum import WhyEnum
|
|
182
190
|
|
|
183
191
|
__all__ = (
|
|
184
192
|
"AddressProvider",
|
|
@@ -193,7 +201,12 @@ __all__ = (
|
|
|
193
201
|
"CallAddRequestRequest",
|
|
194
202
|
"CallCost",
|
|
195
203
|
"CallLocationEpoch",
|
|
204
|
+
"CallMessageRequestRequest",
|
|
205
|
+
"CallMessageRequestTypeEnum",
|
|
196
206
|
"CallMetadata",
|
|
207
|
+
"CallReport",
|
|
208
|
+
"CallReportReason",
|
|
209
|
+
"CallReportStatusEnum",
|
|
197
210
|
"CallTagRequest",
|
|
198
211
|
"CallTagResponse",
|
|
199
212
|
"CallTokenRequest",
|
|
@@ -315,6 +328,8 @@ __all__ = (
|
|
|
315
328
|
"UserIdentity",
|
|
316
329
|
"V1AppOrganizationsListStatusItem",
|
|
317
330
|
"V1CallsListDirection",
|
|
331
|
+
"V1CallsReportRetrieveDateRange",
|
|
332
|
+
"V1CallsReportRetrieveFieldsItem",
|
|
318
333
|
"V1CampaignListStatusItem",
|
|
319
334
|
"V1CustomerConsumablesRetrieveCurrency",
|
|
320
335
|
"V1IvrListDuration",
|
|
@@ -331,4 +346,5 @@ __all__ = (
|
|
|
331
346
|
"V2AppOrganizationsEmployeesListStatusItem",
|
|
332
347
|
"V3OrdersSubscriptionsListCurrency",
|
|
333
348
|
"V3OrdersSubscriptionsListStatusItem",
|
|
349
|
+
"WhyEnum",
|
|
334
350
|
)
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright (c) 2010-present by Jaxl Innovations Private Limited.
|
|
3
|
+
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms,
|
|
7
|
+
with or without modification, is strictly prohibited.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
import datetime
|
|
11
|
+
from typing import Any, Dict, List, Type, TypeVar, Union
|
|
12
|
+
|
|
13
|
+
import attr
|
|
14
|
+
from dateutil.parser import isoparse
|
|
15
|
+
|
|
16
|
+
from ..models.call_message_request_type_enum import CallMessageRequestTypeEnum
|
|
17
|
+
from ..models.why_enum import WhyEnum
|
|
18
|
+
from ..types import UNSET, Unset
|
|
19
|
+
|
|
20
|
+
T = TypeVar("T", bound="CallMessageRequestRequest")
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
@attr.s(auto_attribs=True)
|
|
24
|
+
class CallMessageRequestRequest:
|
|
25
|
+
"""
|
|
26
|
+
Attributes:
|
|
27
|
+
text (str): Text encrypted with attestation key
|
|
28
|
+
timestamp (datetime.datetime): When this message activity happened.
|
|
29
|
+
why (WhyEnum):
|
|
30
|
+
type (Union[Unset, CallMessageRequestTypeEnum]): Default: CallMessageRequestTypeEnum.VALUE_10.
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
text: str
|
|
34
|
+
timestamp: datetime.datetime
|
|
35
|
+
why: WhyEnum
|
|
36
|
+
type: Union[Unset, CallMessageRequestTypeEnum] = CallMessageRequestTypeEnum.VALUE_10
|
|
37
|
+
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
38
|
+
|
|
39
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
40
|
+
text = self.text
|
|
41
|
+
timestamp = self.timestamp.isoformat()
|
|
42
|
+
|
|
43
|
+
why = self.why.value
|
|
44
|
+
|
|
45
|
+
type: Union[Unset, int] = UNSET
|
|
46
|
+
if not isinstance(self.type, Unset):
|
|
47
|
+
type = self.type.value
|
|
48
|
+
|
|
49
|
+
field_dict: Dict[str, Any] = {}
|
|
50
|
+
field_dict.update(self.additional_properties)
|
|
51
|
+
field_dict.update(
|
|
52
|
+
{
|
|
53
|
+
"text": text,
|
|
54
|
+
"timestamp": timestamp,
|
|
55
|
+
"why": why,
|
|
56
|
+
}
|
|
57
|
+
)
|
|
58
|
+
if type is not UNSET:
|
|
59
|
+
field_dict["type"] = type
|
|
60
|
+
|
|
61
|
+
return field_dict
|
|
62
|
+
|
|
63
|
+
@classmethod
|
|
64
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
65
|
+
d = src_dict.copy()
|
|
66
|
+
text = d.pop("text")
|
|
67
|
+
|
|
68
|
+
timestamp = isoparse(d.pop("timestamp"))
|
|
69
|
+
|
|
70
|
+
why = WhyEnum(d.pop("why"))
|
|
71
|
+
|
|
72
|
+
_type = d.pop("type", UNSET)
|
|
73
|
+
type: Union[Unset, CallMessageRequestTypeEnum]
|
|
74
|
+
if isinstance(_type, Unset):
|
|
75
|
+
type = UNSET
|
|
76
|
+
else:
|
|
77
|
+
type = CallMessageRequestTypeEnum(_type)
|
|
78
|
+
|
|
79
|
+
call_message_request_request = cls(
|
|
80
|
+
text=text,
|
|
81
|
+
timestamp=timestamp,
|
|
82
|
+
why=why,
|
|
83
|
+
type=type,
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
call_message_request_request.additional_properties = d
|
|
87
|
+
return call_message_request_request
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
def additional_keys(self) -> List[str]:
|
|
91
|
+
return list(self.additional_properties.keys())
|
|
92
|
+
|
|
93
|
+
def __getitem__(self, key: str) -> Any:
|
|
94
|
+
return self.additional_properties[key]
|
|
95
|
+
|
|
96
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
97
|
+
self.additional_properties[key] = value
|
|
98
|
+
|
|
99
|
+
def __delitem__(self, key: str) -> None:
|
|
100
|
+
del self.additional_properties[key]
|
|
101
|
+
|
|
102
|
+
def __contains__(self, key: str) -> bool:
|
|
103
|
+
return key in self.additional_properties
|