jaxl-python 0.0.34__tar.gz → 0.0.36__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.
Files changed (266) hide show
  1. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/PKG-INFO +4 -4
  2. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/README.md +3 -3
  3. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/SPECIFICATION.md +1 -1
  4. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/_scm_version.py +2 -2
  5. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/apps.py +13 -18
  6. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/calls.py +17 -0
  7. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/silence.py +5 -2
  8. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/PKG-INFO +4 -4
  9. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/.github/workflows/sdk.yml +0 -0
  10. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/.gitignore +0 -0
  11. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/.isort.cfg +0 -0
  12. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/.pylintrc +0 -0
  13. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/.vscode/settings.json +0 -0
  14. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/LICENSE.md +0 -0
  15. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/docs.sh +0 -0
  16. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/README.md +0 -0
  17. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/__init__.py +0 -0
  18. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/prompts/example.txt +0 -0
  19. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/py.typed +0 -0
  20. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/request_and_confirm_code_then_send_to_phone.py +0 -0
  21. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/request_code_and_send_to_phone.py +0 -0
  22. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/send_to_phone.py +0 -0
  23. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/streaming_aiagent.py +0 -0
  24. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/streaming_audio_chunks.py +0 -0
  25. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/streaming_speech_segments.py +0 -0
  26. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/examples/streaming_transcriptions.py +0 -0
  27. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/index.md +0 -0
  28. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/__init__.py +0 -0
  29. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/_client.py +0 -0
  30. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/_sdk.py +0 -0
  31. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/base.py +0 -0
  32. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/cli.py +0 -0
  33. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/__init__.py +0 -0
  34. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/__init__.py +0 -0
  35. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/__init__.py +0 -0
  36. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_app_organizations_list.py +0 -0
  37. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_app_organizations_providers_list.py +0 -0
  38. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_appusers_me_retrieve.py +0 -0
  39. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_add_create.py +0 -0
  40. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_audio_retrieve.py +0 -0
  41. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_hangup_retrieve.py +0 -0
  42. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_list.py +0 -0
  43. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_messages_create.py +0 -0
  44. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_report_retrieve.py +0 -0
  45. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_retrieve.py +0 -0
  46. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_tags_create.py +0 -0
  47. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_token_create.py +0 -0
  48. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_transfer_create.py +0 -0
  49. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_tts_create.py +0 -0
  50. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_calls_usage_retrieve.py +0 -0
  51. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_campaign_list.py +0 -0
  52. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_campaign_upload_create.py +0 -0
  53. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_customer_consumables_retrieve.py +0 -0
  54. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_devices_attest_create.py +0 -0
  55. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_devices_list.py +0 -0
  56. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_integrations_create.py +0 -0
  57. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_ivr_create.py +0 -0
  58. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_ivr_list.py +0 -0
  59. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_ivr_options_create.py +0 -0
  60. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_ivr_options_list.py +0 -0
  61. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_ivr_options_partial_update.py +0 -0
  62. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_kyc_list.py +0 -0
  63. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_messages_list.py +0 -0
  64. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_phonenumbers_list.py +0 -0
  65. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_phonenumbers_partial_update.py +0 -0
  66. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v1/v1_phonenumbers_search_retrieve.py +0 -0
  67. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v2/__init__.py +0 -0
  68. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v2/v2_app_organizations_employees_list.py +0 -0
  69. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v2/v2_app_organizations_groups_list.py +0 -0
  70. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v3/__init__.py +0 -0
  71. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/api/v3/v3_orders_subscriptions_list.py +0 -0
  72. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/client.py +0 -0
  73. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/errors.py +0 -0
  74. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/__init__.py +0 -0
  75. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/address_provider.py +0 -0
  76. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/address_provider_status_enum.py +0 -0
  77. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/analytic.py +0 -0
  78. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/app_price.py +0 -0
  79. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/app_user.py +0 -0
  80. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/available_phone_number.py +0 -0
  81. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/available_phone_number_capabilities.py +0 -0
  82. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/available_phone_number_provider_enum.py +0 -0
  83. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call.py +0 -0
  84. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_add_request_request.py +0 -0
  85. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_audio_reason.py +0 -0
  86. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_cost.py +0 -0
  87. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_location_epoch.py +0 -0
  88. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_message_request_request.py +0 -0
  89. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_message_request_type_enum.py +0 -0
  90. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_metadata.py +0 -0
  91. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_report.py +0 -0
  92. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_report_reason.py +0 -0
  93. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_report_status_enum.py +0 -0
  94. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_tag_request.py +0 -0
  95. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_tag_response.py +0 -0
  96. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_token_request.py +0 -0
  97. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_token_response.py +0 -0
  98. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_transfer_request_request.py +0 -0
  99. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_tts_request_request.py +0 -0
  100. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_type_enum.py +0 -0
  101. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_usage_by_currency_response.py +0 -0
  102. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_usage_response.py +0 -0
  103. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/call_usage_stats_response.py +0 -0
  104. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign.py +0 -0
  105. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_metadata.py +0 -0
  106. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_metadata_metadata.py +0 -0
  107. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_response.py +0 -0
  108. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_response_status_enum.py +0 -0
  109. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_stats.py +0 -0
  110. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_tag.py +0 -0
  111. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_upload_request.py +0 -0
  112. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_upload_request_options.py +0 -0
  113. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_upload_type_enum.py +0 -0
  114. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/campaign_window_request.py +0 -0
  115. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/can_user_resubscribe_plan.py +0 -0
  116. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/canceled_by_enum.py +0 -0
  117. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/capabilities.py +0 -0
  118. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/connection.py +0 -0
  119. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/content_type_enum.py +0 -0
  120. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/country.py +0 -0
  121. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/cta.py +0 -0
  122. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/cta_request.py +0 -0
  123. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/cta_type_enum.py +0 -0
  124. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/currency_enum.py +0 -0
  125. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/customer_consumable_total.py +0 -0
  126. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/customer_order_subscriptions_serializer_v2.py +0 -0
  127. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/customer_order_subscriptions_serializer_v2_status_enum.py +0 -0
  128. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/customer_provider_serializer_v2.py +0 -0
  129. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/device.py +0 -0
  130. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/device_attestation_error.py +0 -0
  131. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/device_attestation_error_reason_enum.py +0 -0
  132. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/device_attestation_response.py +0 -0
  133. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/dh_message.py +0 -0
  134. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/dh_message_attachment.py +0 -0
  135. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/dh_message_reaction.py +0 -0
  136. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/dh_message_type_enum.py +0 -0
  137. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/direction_enum.py +0 -0
  138. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/emoji.py +0 -0
  139. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/emoji_reaction.py +0 -0
  140. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/exotel_auth_request_request.py +0 -0
  141. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/id_enum.py +0 -0
  142. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/integrations_error_response.py +0 -0
  143. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/integrations_properties_request.py +0 -0
  144. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/integrations_request_provider_enum.py +0 -0
  145. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/integrations_request_request.py +0 -0
  146. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/integrations_response.py +0 -0
  147. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/intent_enum.py +0 -0
  148. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/invalid_provider_request.py +0 -0
  149. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/iso_country_enum.py +0 -0
  150. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/item.py +0 -0
  151. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_collection.py +0 -0
  152. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_collection_request.py +0 -0
  153. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_menu_request.py +0 -0
  154. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_menu_response.py +0 -0
  155. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_menu_response_status_enum.py +0 -0
  156. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_options_invalid_response.py +0 -0
  157. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_options_request.py +0 -0
  158. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/ivr_options_response.py +0 -0
  159. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/kyc.py +0 -0
  160. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/kyc_status_enum.py +0 -0
  161. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/kyc_upload_metadata.py +0 -0
  162. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/location.py +0 -0
  163. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/next_or_cta_request.py +0 -0
  164. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/order_status_enum.py +0 -0
  165. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization.py +0 -0
  166. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_employee.py +0 -0
  167. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_employee_preferences.py +0 -0
  168. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_employee_status_enum.py +0 -0
  169. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_group_inline.py +0 -0
  170. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_group_response.py +0 -0
  171. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_preferences.py +0 -0
  172. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/organization_provider.py +0 -0
  173. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_call_list.py +0 -0
  174. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_campaign_response_list.py +0 -0
  175. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_customer_order_subscriptions_serializer_v2_list.py +0 -0
  176. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_device_list.py +0 -0
  177. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_dh_message_list.py +0 -0
  178. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_ivr_menu_response_list.py +0 -0
  179. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_ivr_options_response_list.py +0 -0
  180. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_kyc_list.py +0 -0
  181. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_organization_employee_list.py +0 -0
  182. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_organization_group_response_list.py +0 -0
  183. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_organization_list.py +0 -0
  184. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_organization_provider_list.py +0 -0
  185. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/paginated_phone_number_list.py +0 -0
  186. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/patched_ivr_options_update_request.py +0 -0
  187. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/patched_phone_number_request.py +0 -0
  188. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/payment_gateway_fees_info.py +0 -0
  189. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/period_enum.py +0 -0
  190. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/phone_number.py +0 -0
  191. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/phone_number_attributes.py +0 -0
  192. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/phone_number_capabilities.py +0 -0
  193. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/phone_number_provider_enum.py +0 -0
  194. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/phone_number_search_response.py +0 -0
  195. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/phone_number_status_enum.py +0 -0
  196. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan.py +0 -0
  197. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_cancel_info.py +0 -0
  198. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_expiry_timestamp.py +0 -0
  199. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_expiry_timestamp_type_enum.py +0 -0
  200. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_extra_details.py +0 -0
  201. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_item.py +0 -0
  202. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_type.py +0 -0
  203. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/plan_type_cycle.py +0 -0
  204. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/platform_enum.py +0 -0
  205. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/product_group.py +0 -0
  206. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/proof.py +0 -0
  207. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/proof_status_enum.py +0 -0
  208. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/provider_status_enum.py +0 -0
  209. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/reaction_by.py +0 -0
  210. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/rental_currency_enum.py +0 -0
  211. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/resource_enum.py +0 -0
  212. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/shopify_auth_request_request.py +0 -0
  213. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/stripe_auth_request_request.py +0 -0
  214. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/user_agent.py +0 -0
  215. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/user_agent_browser.py +0 -0
  216. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/user_agent_device.py +0 -0
  217. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/user_agent_operating_system.py +0 -0
  218. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/user_agent_platform.py +0 -0
  219. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/user_identity.py +0 -0
  220. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_app_organizations_list_status_item.py +0 -0
  221. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_calls_list_direction.py +0 -0
  222. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_calls_report_retrieve_date_range.py +0 -0
  223. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_calls_report_retrieve_fields_item.py +0 -0
  224. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_campaign_list_status_item.py +0 -0
  225. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_customer_consumables_retrieve_currency.py +0 -0
  226. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_ivr_list_duration.py +0 -0
  227. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_kyc_list_iso_country.py +0 -0
  228. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_kyc_list_provider_status_item.py +0 -0
  229. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_kyc_list_resource.py +0 -0
  230. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_kyc_list_status.py +0 -0
  231. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_phonenumbers_list_additional_status_item.py +0 -0
  232. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_phonenumbers_list_provider.py +0 -0
  233. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_phonenumbers_list_status.py +0 -0
  234. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_intent.py +0 -0
  235. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_iso_country_code.py +0 -0
  236. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_resource.py +0 -0
  237. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v2_app_organizations_employees_list_status_item.py +0 -0
  238. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v3_orders_subscriptions_list_currency.py +0 -0
  239. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/v3_orders_subscriptions_list_status_item.py +0 -0
  240. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/models/why_enum.py +0 -0
  241. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/client/types.py +0 -0
  242. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/py.typed +0 -0
  243. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/__init__.py +0 -0
  244. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/_constants.py +0 -0
  245. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/accounts.py +0 -0
  246. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/campaigns.py +0 -0
  247. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/devices.py +0 -0
  248. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/ivrs.py +0 -0
  249. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/kycs.py +0 -0
  250. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/members.py +0 -0
  251. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/messages.py +0 -0
  252. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/notifications.py +0 -0
  253. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/orgs.py +0 -0
  254. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/payments.py +0 -0
  255. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/phones.py +0 -0
  256. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl/api/resources/teams.py +0 -0
  257. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/SOURCES.txt +0 -0
  258. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/dependency_links.txt +0 -0
  259. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/entry_points.txt +0 -0
  260. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/not-zip-safe +0 -0
  261. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/requires.txt +0 -0
  262. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/jaxl_python.egg-info/top_level.txt +0 -0
  263. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/mkdocs.yml +0 -0
  264. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/pyproject.toml +0 -0
  265. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/setup.cfg +0 -0
  266. {jaxl_python-0.0.34 → jaxl_python-0.0.36}/setup.gif +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jaxl-python
3
- Version: 0.0.34
3
+ Version: 0.0.36
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
@@ -207,7 +207,7 @@ This IVR will speak the message and then hangup the call.
207
207
 
208
208
  ```bash
209
209
  jaxl ivrs create \
210
- --message "Hello, we are calling via Jaxl IVR demo created from CLI. Will hang up after speaking this message." \
210
+ --message "Hello, we are calling via Jaxl IVR demo created from CLI. Will hang up after speaking this message" \
211
211
  --hangup
212
212
  ```
213
213
 
@@ -290,8 +290,8 @@ jaxl calls create \
290
290
  --to "+CC<Callee Number>" \
291
291
  --from "+CC<Purchased Jaxl Number>" \
292
292
  --message "Hello, we are calling you from MyCompany" \
293
- --option "1=Press 1 for sales:team=<Sales Team ID>" \
294
- --option "2=Press 2 for HR department:team=<HR Team ID>
293
+ --option "1=Press 1 for sales:teams=<Sales Team ID>" \
294
+ --option "2=Press 2 for HR department:teams=<HR Team ID>
295
295
  ```
296
296
 
297
297
  ### Dial-out 2-Party Conference with Ad-hoc IVR
@@ -117,7 +117,7 @@ This IVR will speak the message and then hangup the call.
117
117
 
118
118
  ```bash
119
119
  jaxl ivrs create \
120
- --message "Hello, we are calling via Jaxl IVR demo created from CLI. Will hang up after speaking this message." \
120
+ --message "Hello, we are calling via Jaxl IVR demo created from CLI. Will hang up after speaking this message" \
121
121
  --hangup
122
122
  ```
123
123
 
@@ -200,8 +200,8 @@ jaxl calls create \
200
200
  --to "+CC<Callee Number>" \
201
201
  --from "+CC<Purchased Jaxl Number>" \
202
202
  --message "Hello, we are calling you from MyCompany" \
203
- --option "1=Press 1 for sales:team=<Sales Team ID>" \
204
- --option "2=Press 2 for HR department:team=<HR Team ID>
203
+ --option "1=Press 1 for sales:teams=<Sales Team ID>" \
204
+ --option "2=Press 2 for HR department:teams=<HR Team ID>
205
205
  ```
206
206
 
207
207
  ### Dial-out 2-Party Conference with Ad-hoc IVR
@@ -112,7 +112,7 @@ services to build custom call flows.
112
112
  ### Teardown Event (3)
113
113
 
114
114
  - Triggered when an incoming call ends.
115
- - Webhook endpoint will receive following POST request:
115
+ - Webhook endpoint will receive following DELETE request:
116
116
 
117
117
  ```json
118
118
  {
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '0.0.34'
21
- __version_tuple__ = version_tuple = (0, 0, 34)
20
+ __version__ = version = '0.0.36'
21
+ __version_tuple__ = version_tuple = (0, 0, 36)
@@ -67,8 +67,8 @@ def _start_server(
67
67
  transcribe_device: str = "cpu",
68
68
  transcribe_temperature: float = 0.3,
69
69
  vad_aggressiveness: int = 2,
70
- vad_silence_frame_threshold: int = 25,
71
- vad_speech_frame_threshold: int = 20,
70
+ vad_silence_frame_threshold: int = 12,
71
+ vad_speech_frame_threshold: int = 8,
72
72
  ) -> "FastAPI":
73
73
  from fastapi import FastAPI, Request, WebSocket
74
74
 
@@ -239,7 +239,7 @@ def _start_server(
239
239
  speech_frame_threshold=vad_speech_frame_threshold,
240
240
  )
241
241
  speaking: bool = False
242
- buffer: Deque[bytes] = deque(maxlen=sdetector.speech_frame_threshold)
242
+ buffer: Deque[bytes] = deque(maxlen=4)
243
243
  slin16s: List[bytes] = []
244
244
 
245
245
  await ws.accept()
@@ -259,25 +259,19 @@ def _start_server(
259
259
  # Detect start/end of speech
260
260
  buffer.append(slin16)
261
261
  change = sdetector.process(slin16)
262
+ current_frame_is_speech = sdetector.last_frame_is_speech
262
263
  # Manage speech segments
263
264
  if change is True:
264
265
  speaking = change
265
266
  await app.handle_speech_detection(state["call_id"], speaking)
266
267
  if len(slin16s) == 0:
267
- # Silence just got detected, copy over
268
- # last speech_frame_threshold of frames
268
+ # Copy over a short, fixed preroll window.
269
269
  slin16s = list(buffer)
270
270
  if len(slin16s) > 0:
271
271
  await app.handle_speech_chunks(req, slin16s)
272
- # print("💿")
273
- # print("🎙️")
274
- slin16s.append(slin16)
275
- await app.handle_speech_chunks(req, [slin16])
276
272
  elif change is False:
277
273
  speaking = change
278
- await app.handle_speech_chunks(req, [slin16])
279
274
  await app.handle_speech_detection(state["call_id"], speaking)
280
- # print("🤐")
281
275
  if len(slin16s) > 0:
282
276
  # Invoke speech segment handlers
283
277
  await app.handle_speech_segment(req, slin16s)
@@ -296,8 +290,9 @@ def _start_server(
296
290
  else:
297
291
  assert change is None
298
292
  if speaking is True:
299
- await app.handle_speech_chunks(req, [slin16])
300
- slin16s.append(slin16)
293
+ if current_frame_is_speech:
294
+ await app.handle_speech_chunks(req, [slin16])
295
+ slin16s.append(slin16)
301
296
  else:
302
297
  assert speaking is False
303
298
  elif ev == "connected":
@@ -426,20 +421,20 @@ def _subparser(parser: argparse.ArgumentParser) -> None:
426
421
  apps_run_parser.add_argument(
427
422
  "--vad-aggressiveness",
428
423
  type=int,
429
- default=1,
424
+ default=2,
430
425
  help="VAD Aggressiveness",
431
426
  )
432
427
  apps_run_parser.add_argument(
433
428
  "--vad-silence-frame-threshold",
434
429
  type=int,
435
- default=25,
436
- help="Amount of silence in milliseconds before silence detection is triggered",
430
+ default=12,
431
+ help="Number of 20ms frames of silence before silence detection is triggered",
437
432
  )
438
433
  apps_run_parser.add_argument(
439
434
  "--vad-speech-frame-threshold",
440
435
  type=int,
441
- default=20,
442
- help="Amount of speech in milliseconds before speech detection is triggered",
436
+ default=8,
437
+ help="Number of 20ms frames of speech before speech detection is triggered",
443
438
  )
444
439
  apps_run_parser.set_defaults(
445
440
  func=apps_run,
@@ -203,6 +203,20 @@ def calls_get(args: Optional[Dict[str, Any]] = None) -> Response[Call]:
203
203
  )
204
204
 
205
205
 
206
+ async def calls_aget(args: Optional[Dict[str, Any]] = None) -> Response[Call]:
207
+ """Get a call asynchronously"""
208
+ args = args or {}
209
+ return await v1_calls_retrieve.asyncio_detailed(
210
+ id=args["call_id"],
211
+ client=jaxl_api_client(
212
+ JaxlApiModule.CALL,
213
+ credentials=args.get("credentials", None),
214
+ auth_token=args.get("auth_token", None),
215
+ ),
216
+ currency=args.get("currency", DEFAULT_CURRENCY),
217
+ )
218
+
219
+
206
220
  def calls_list(args: Optional[Dict[str, Any]] = None) -> Response[PaginatedCallList]:
207
221
  """List calls"""
208
222
  args = args or {}
@@ -591,6 +605,9 @@ class JaxlCallsSDK:
591
605
  def get(self, **kwargs: Any) -> Response[Call]:
592
606
  return calls_get(kwargs)
593
607
 
608
+ async def aget(self, **kwargs: Any) -> Response[Call]:
609
+ return await calls_aget(kwargs)
610
+
594
611
  def add_tag(self, **kwargs: Any) -> Response[CallTagResponse]:
595
612
  return calls_tag_add(kwargs)
596
613
 
@@ -20,8 +20,8 @@ class SilenceDetector:
20
20
  sample_rate: int = 8000,
21
21
  frame_duration_ms: int = 20,
22
22
  aggressiveness: int = 2,
23
- silence_frame_threshold: int = 25, # ~500ms
24
- speech_frame_threshold: int = 20, # ~400ms
23
+ silence_frame_threshold: int = 12, # ~240ms
24
+ speech_frame_threshold: int = 8, # ~160ms
25
25
  ):
26
26
  import webrtcvad
27
27
 
@@ -37,6 +37,7 @@ class SilenceDetector:
37
37
  self.speech_frames = 0
38
38
  self.silence_frames = 0
39
39
  self.buffer = b""
40
+ self.last_frame_is_speech: Optional[bool] = None
40
41
 
41
42
  def process(self, slin16: bytes) -> Optional[bool]:
42
43
  """Process PCM16 mono audio. Returns:
@@ -54,6 +55,7 @@ class SilenceDetector:
54
55
  )
55
56
 
56
57
  is_speech = self.vad.is_speech(frame, self.sample_rate)
58
+ self.last_frame_is_speech = is_speech
57
59
 
58
60
  if is_speech:
59
61
  self.speech_frames += 1
@@ -81,3 +83,4 @@ class SilenceDetector:
81
83
  self.silence_frames = 0
82
84
  self.speech_frames = 0
83
85
  self.is_talking = False
86
+ self.last_frame_is_speech = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jaxl-python
3
- Version: 0.0.34
3
+ Version: 0.0.36
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
@@ -207,7 +207,7 @@ This IVR will speak the message and then hangup the call.
207
207
 
208
208
  ```bash
209
209
  jaxl ivrs create \
210
- --message "Hello, we are calling via Jaxl IVR demo created from CLI. Will hang up after speaking this message." \
210
+ --message "Hello, we are calling via Jaxl IVR demo created from CLI. Will hang up after speaking this message" \
211
211
  --hangup
212
212
  ```
213
213
 
@@ -290,8 +290,8 @@ jaxl calls create \
290
290
  --to "+CC<Callee Number>" \
291
291
  --from "+CC<Purchased Jaxl Number>" \
292
292
  --message "Hello, we are calling you from MyCompany" \
293
- --option "1=Press 1 for sales:team=<Sales Team ID>" \
294
- --option "2=Press 2 for HR department:team=<HR Team ID>
293
+ --option "1=Press 1 for sales:teams=<Sales Team ID>" \
294
+ --option "2=Press 2 for HR department:teams=<HR Team ID>
295
295
  ```
296
296
 
297
297
  ### Dial-out 2-Party Conference with Ad-hoc IVR
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes