jaxl-python 0.0.47__tar.gz → 0.0.48__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 (281) hide show
  1. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/PKG-INFO +1 -1
  2. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/base.py +7 -1
  3. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/_scm_version.py +2 -2
  4. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/apps.py +23 -12
  5. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/PKG-INFO +1 -1
  6. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/.github/workflows/sdk.yml +0 -0
  7. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/.gitignore +0 -0
  8. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/.isort.cfg +0 -0
  9. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/.pylintrc +0 -0
  10. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/.vscode/settings.json +0 -0
  11. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/LICENSE.md +0 -0
  12. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/README.md +0 -0
  13. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/SPECIFICATION.md +0 -0
  14. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/docs.sh +0 -0
  15. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/README.md +0 -0
  16. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/__init__.py +0 -0
  17. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/prompts/example.txt +0 -0
  18. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/py.typed +0 -0
  19. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/request_and_confirm_code_then_send_to_phone.py +0 -0
  20. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/request_code_and_send_to_phone.py +0 -0
  21. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/send_to_phone.py +0 -0
  22. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/streaming_aiagent.py +0 -0
  23. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/streaming_audio_chunks.py +0 -0
  24. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/streaming_speech_segments.py +0 -0
  25. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/streaming_transcriptions.py +0 -0
  26. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/examples/streaming_wav_file.py +0 -0
  27. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/index.md +0 -0
  28. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/__init__.py +0 -0
  29. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/_client.py +0 -0
  30. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/_sdk.py +0 -0
  31. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/cli.py +0 -0
  32. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/__init__.py +0 -0
  33. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/__init__.py +0 -0
  34. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/__init__.py +0 -0
  35. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_app_organizations_list.py +0 -0
  36. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_app_organizations_providers_list.py +0 -0
  37. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_appusers_me_retrieve.py +0 -0
  38. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_add_create.py +0 -0
  39. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_audio_retrieve.py +0 -0
  40. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_hangup_retrieve.py +0 -0
  41. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_list.py +0 -0
  42. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_messages_create.py +0 -0
  43. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_metadata_create.py +0 -0
  44. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_report_retrieve.py +0 -0
  45. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_retrieve.py +0 -0
  46. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_tags_create.py +0 -0
  47. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_token_create.py +0 -0
  48. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_transfer_create.py +0 -0
  49. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_tts_create.py +0 -0
  50. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_calls_usage_retrieve.py +0 -0
  51. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_campaign_list.py +0 -0
  52. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_campaign_upload_create.py +0 -0
  53. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_customer_consumables_retrieve.py +0 -0
  54. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_devices_attest_create.py +0 -0
  55. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_devices_list.py +0 -0
  56. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_integrations_create.py +0 -0
  57. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_ivr_create.py +0 -0
  58. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_ivr_list.py +0 -0
  59. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_ivr_options_create.py +0 -0
  60. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_ivr_options_list.py +0 -0
  61. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_ivr_options_partial_update.py +0 -0
  62. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_kyc_list.py +0 -0
  63. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_messages_list.py +0 -0
  64. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_phonenumbers_list.py +0 -0
  65. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_phonenumbers_partial_update.py +0 -0
  66. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v1/v1_phonenumbers_search_retrieve.py +0 -0
  67. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v2/__init__.py +0 -0
  68. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v2/v2_app_organizations_employees_list.py +0 -0
  69. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v2/v2_app_organizations_groups_list.py +0 -0
  70. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v3/__init__.py +0 -0
  71. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/api/v3/v3_orders_subscriptions_list.py +0 -0
  72. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/client.py +0 -0
  73. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/errors.py +0 -0
  74. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/__init__.py +0 -0
  75. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/address_provider.py +0 -0
  76. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/address_provider_status_enum.py +0 -0
  77. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/analytic.py +0 -0
  78. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/app_price.py +0 -0
  79. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/app_user.py +0 -0
  80. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/available_phone_number.py +0 -0
  81. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/available_phone_number_capabilities.py +0 -0
  82. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/available_phone_number_provider_enum.py +0 -0
  83. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call.py +0 -0
  84. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_add_request_request.py +0 -0
  85. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_audio_reason.py +0 -0
  86. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_cost.py +0 -0
  87. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_location_epoch.py +0 -0
  88. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_message_request_request.py +0 -0
  89. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_message_request_type_enum.py +0 -0
  90. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_metadata.py +0 -0
  91. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_report.py +0 -0
  92. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_report_reason.py +0 -0
  93. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_report_status_enum.py +0 -0
  94. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_tag_request.py +0 -0
  95. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_tag_response.py +0 -0
  96. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_token_request.py +0 -0
  97. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_token_response.py +0 -0
  98. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_transfer_request_request.py +0 -0
  99. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_tts_request_request.py +0 -0
  100. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_type_enum.py +0 -0
  101. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_usage_by_currency_response.py +0 -0
  102. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_usage_response.py +0 -0
  103. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/call_usage_stats_response.py +0 -0
  104. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign.py +0 -0
  105. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_metadata.py +0 -0
  106. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_metadata_metadata.py +0 -0
  107. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_response.py +0 -0
  108. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_response_status_enum.py +0 -0
  109. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_stats.py +0 -0
  110. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_tag.py +0 -0
  111. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_upload_request.py +0 -0
  112. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_upload_request_options.py +0 -0
  113. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_upload_type_enum.py +0 -0
  114. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/campaign_window_request.py +0 -0
  115. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/can_user_resubscribe_plan.py +0 -0
  116. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/canceled_by_enum.py +0 -0
  117. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/capabilities.py +0 -0
  118. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/connection.py +0 -0
  119. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/content_type_enum.py +0 -0
  120. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/country.py +0 -0
  121. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/cta.py +0 -0
  122. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/cta_request.py +0 -0
  123. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/cta_type_enum.py +0 -0
  124. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/currency_enum.py +0 -0
  125. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/customer_consumable_total.py +0 -0
  126. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/customer_order_subscriptions_serializer_v2.py +0 -0
  127. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/customer_order_subscriptions_serializer_v2_status_enum.py +0 -0
  128. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/customer_provider_serializer_v2.py +0 -0
  129. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/device.py +0 -0
  130. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/device_attestation_error.py +0 -0
  131. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/device_attestation_error_reason_enum.py +0 -0
  132. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/device_attestation_response.py +0 -0
  133. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/dh_message.py +0 -0
  134. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/dh_message_attachment.py +0 -0
  135. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/dh_message_reaction.py +0 -0
  136. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/dh_message_type_enum.py +0 -0
  137. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/direction_enum.py +0 -0
  138. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/emoji.py +0 -0
  139. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/emoji_reaction.py +0 -0
  140. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/exotel_auth_request_request.py +0 -0
  141. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/failure_reason_enum.py +0 -0
  142. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/id_enum.py +0 -0
  143. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/integrations_error_response.py +0 -0
  144. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/integrations_properties_request.py +0 -0
  145. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/integrations_request_provider_enum.py +0 -0
  146. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/integrations_request_request.py +0 -0
  147. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/integrations_response.py +0 -0
  148. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/intent_enum.py +0 -0
  149. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/invalid_provider_request.py +0 -0
  150. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/iso_country_enum.py +0 -0
  151. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/item.py +0 -0
  152. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_collection.py +0 -0
  153. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_collection_request.py +0 -0
  154. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_menu_request.py +0 -0
  155. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_menu_request_settings.py +0 -0
  156. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_menu_response.py +0 -0
  157. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_menu_response_settings.py +0 -0
  158. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_menu_response_status_enum.py +0 -0
  159. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_options_invalid_response.py +0 -0
  160. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_options_request.py +0 -0
  161. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ivr_options_response.py +0 -0
  162. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/kyc.py +0 -0
  163. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/kyc_status_enum.py +0 -0
  164. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/kyc_upload_metadata.py +0 -0
  165. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/location.py +0 -0
  166. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/next_or_cta_request.py +0 -0
  167. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/nimbus_post_auth_request_request.py +0 -0
  168. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/order_status_enum.py +0 -0
  169. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization.py +0 -0
  170. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_employee.py +0 -0
  171. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_employee_preferences.py +0 -0
  172. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_employee_status_enum.py +0 -0
  173. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_group_inline.py +0 -0
  174. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_group_response.py +0 -0
  175. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_preferences.py +0 -0
  176. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/organization_provider.py +0 -0
  177. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_call_list.py +0 -0
  178. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_campaign_response_list.py +0 -0
  179. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_customer_order_subscriptions_serializer_v2_list.py +0 -0
  180. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_device_list.py +0 -0
  181. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_dh_message_list.py +0 -0
  182. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_ivr_menu_response_list.py +0 -0
  183. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_ivr_options_response_list.py +0 -0
  184. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_kyc_list.py +0 -0
  185. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_organization_employee_list.py +0 -0
  186. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_organization_group_response_list.py +0 -0
  187. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_organization_list.py +0 -0
  188. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_organization_provider_list.py +0 -0
  189. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/paginated_phone_number_list.py +0 -0
  190. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/patched_ivr_options_update_request.py +0 -0
  191. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/patched_phone_number_update_request.py +0 -0
  192. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/patched_phone_number_update_request_frontdesk.py +0 -0
  193. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/payment_gateway_fees_info.py +0 -0
  194. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/period_enum.py +0 -0
  195. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number.py +0 -0
  196. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number_attributes.py +0 -0
  197. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number_capabilities.py +0 -0
  198. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number_frontdesk.py +0 -0
  199. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number_provider_enum.py +0 -0
  200. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number_search_response.py +0 -0
  201. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/phone_number_status_enum.py +0 -0
  202. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan.py +0 -0
  203. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_cancel_info.py +0 -0
  204. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_expiry_timestamp.py +0 -0
  205. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_expiry_timestamp_type_enum.py +0 -0
  206. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_extra_details.py +0 -0
  207. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_item.py +0 -0
  208. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_type.py +0 -0
  209. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/plan_type_cycle.py +0 -0
  210. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/platform_enum.py +0 -0
  211. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/product_group.py +0 -0
  212. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/proof.py +0 -0
  213. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/proof_status_enum.py +0 -0
  214. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/provider_status_enum.py +0 -0
  215. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/reaction_by.py +0 -0
  216. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/rental_currency_enum.py +0 -0
  217. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/resource_enum.py +0 -0
  218. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/ringing_strategy_enum.py +0 -0
  219. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/sales_max_auth_request_request.py +0 -0
  220. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/shopify_auth_request_request.py +0 -0
  221. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/stripe_auth_request_request.py +0 -0
  222. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/upload_metadata.py +0 -0
  223. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/user_agent.py +0 -0
  224. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/user_agent_browser.py +0 -0
  225. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/user_agent_device.py +0 -0
  226. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/user_agent_operating_system.py +0 -0
  227. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/user_agent_platform.py +0 -0
  228. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/user_identity.py +0 -0
  229. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_app_organizations_list_status_item.py +0 -0
  230. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_calls_list_direction.py +0 -0
  231. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_calls_metadata_create_json_body.py +0 -0
  232. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_calls_metadata_create_response_200.py +0 -0
  233. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_calls_report_retrieve_date_range.py +0 -0
  234. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_calls_report_retrieve_fields_item.py +0 -0
  235. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_campaign_list_status_item.py +0 -0
  236. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_customer_consumables_retrieve_currency.py +0 -0
  237. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_ivr_list_duration.py +0 -0
  238. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_kyc_list_iso_country.py +0 -0
  239. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_kyc_list_provider_status_item.py +0 -0
  240. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_kyc_list_resource.py +0 -0
  241. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_kyc_list_status.py +0 -0
  242. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_messages_list_types_item.py +0 -0
  243. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_phonenumbers_list_additional_status_item.py +0 -0
  244. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_phonenumbers_list_provider.py +0 -0
  245. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_phonenumbers_list_status.py +0 -0
  246. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_intent.py +0 -0
  247. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_iso_country_code.py +0 -0
  248. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v1_phonenumbers_search_retrieve_resource.py +0 -0
  249. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v2_app_organizations_employees_list_status_item.py +0 -0
  250. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v3_orders_subscriptions_list_currency.py +0 -0
  251. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/v3_orders_subscriptions_list_status_item.py +0 -0
  252. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/models/why_enum.py +0 -0
  253. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/client/types.py +0 -0
  254. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/py.typed +0 -0
  255. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/__init__.py +0 -0
  256. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/_constants.py +0 -0
  257. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/accounts.py +0 -0
  258. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/calls.py +0 -0
  259. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/campaigns.py +0 -0
  260. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/devices.py +0 -0
  261. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/ivrs.py +0 -0
  262. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/kycs.py +0 -0
  263. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/members.py +0 -0
  264. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/messages.py +0 -0
  265. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/notifications.py +0 -0
  266. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/orgs.py +0 -0
  267. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/payments.py +0 -0
  268. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/phones.py +0 -0
  269. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/silence.py +0 -0
  270. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl/api/resources/teams.py +0 -0
  271. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/SOURCES.txt +0 -0
  272. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/dependency_links.txt +0 -0
  273. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/entry_points.txt +0 -0
  274. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/not-zip-safe +0 -0
  275. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/requires.txt +0 -0
  276. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/jaxl_python.egg-info/top_level.txt +0 -0
  277. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/mkdocs.yml +0 -0
  278. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/pyproject.toml +0 -0
  279. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/setup.cfg +0 -0
  280. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/setup.gif +0 -0
  281. {jaxl_python-0.0.47 → jaxl_python-0.0.48}/tests/test_streaming_vad.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jaxl-python
3
- Version: 0.0.47
3
+ Version: 0.0.48
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
@@ -113,8 +113,14 @@ class JaxlStreamMeta(BaseModel):
113
113
  class JaxlStreamRequest(BaseModel):
114
114
  # IVR ID
115
115
  pk: int
116
- # Webhook state
116
+ # Webhook state (present on legacy streams that carry the full
117
+ # base64 state blob in the websocket URL; None on slim streams)
117
118
  state: Optional[JaxlWebhookState]
119
+ # Call ID for this stream — always populated by the SDK server.
120
+ # On slim streams (the `call_id=` query form) this is the ONLY
121
+ # call identity on the socket; apps needing the full state should
122
+ # take it from the SETUP webhook instead.
123
+ call_id: Optional[int] = None
118
124
 
119
125
 
120
126
  class JaxlPhoneCta(BaseModel):
@@ -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.47'
21
- __version_tuple__ = version_tuple = (0, 0, 47)
20
+ __version__ = version = '0.0.48'
21
+ __version_tuple__ = version_tuple = (0, 0, 48)
@@ -248,12 +248,23 @@ def _start_server(
248
248
  """Jaxl Streaming Unidirectional Websockets Endpoint."""
249
249
  _ivr_id = ws.query_params.get("ivr_id")
250
250
  _state = ws.query_params.get("state")
251
- if _state is None or _ivr_id is None:
251
+ _call_id = ws.query_params.get("call_id")
252
+ # Exactly ONE of `state` (legacy: the full webhook-state blob,
253
+ # base64-encoded into the websocket URL) or `call_id` (slim
254
+ # form: only the call identity rides the URL; the full state
255
+ # travels via the SETUP webhook) must be present — never both,
256
+ # never neither.
257
+ if _ivr_id is None or (_state is None) == (_call_id is None):
252
258
  await ws.close(code=1008)
253
259
  return
254
260
 
255
261
  ivr_id = int(_ivr_id)
256
- state = json.loads(base64.urlsafe_b64decode(_state))
262
+ if _state is not None:
263
+ state = json.loads(base64.urlsafe_b64decode(_state))
264
+ call_id = int(state["call_id"])
265
+ else:
266
+ state = None
267
+ call_id = int(_call_id) # type: ignore[arg-type]
257
268
 
258
269
  # Speech detector, Speech state & Segment buffer
259
270
  sdetector = SilenceDetector(
@@ -265,10 +276,10 @@ def _start_server(
265
276
  slin16s: List[bytes] = []
266
277
 
267
278
  await ws.accept()
268
- wss[state["call_id"]] = ws
279
+ wss[call_id] = ws
269
280
 
270
281
  # pylint: disable=too-many-nested-blocks
271
- await app.on_stream_connect(state["call_id"])
282
+ await app.on_stream_connect(call_id)
272
283
  try:
273
284
  while True:
274
285
  try:
@@ -284,7 +295,7 @@ def _start_server(
284
295
  data = json.loads(raw)
285
296
  ev = data["event"]
286
297
  if ev == "media":
287
- req = JaxlStreamRequest(pk=ivr_id, state=state)
298
+ req = JaxlStreamRequest(pk=ivr_id, state=state, call_id=call_id)
288
299
  slin16 = base64.b64decode(data[ev]["payload"])
289
300
  # Optional per-packet metadata (e.g. speaker attribution)
290
301
  _meta = data[ev].get("meta")
@@ -296,7 +307,7 @@ def _start_server(
296
307
  # Manage speech segments
297
308
  if change is True:
298
309
  speaking = change
299
- await app.handle_speech_detection(state["call_id"], speaking)
310
+ await app.handle_speech_detection(call_id, speaking)
300
311
  # Pull the detector's preroll — this contains the
301
312
  # trigger frames (the `speech_frame_threshold` speech
302
313
  # frames that fired speech-start) plus a few earlier
@@ -310,7 +321,7 @@ def _start_server(
310
321
  await app.handle_speech_chunks(req, preroll_chunks)
311
322
  elif change is False:
312
323
  speaking = change
313
- await app.handle_speech_detection(state["call_id"], speaking)
324
+ await app.handle_speech_detection(call_id, speaking)
314
325
  if len(slin16s) > 0:
315
326
  # Invoke speech segment handlers
316
327
  await app.handle_speech_segment(req, slin16s)
@@ -341,14 +352,14 @@ def _start_server(
341
352
  assert speaking is False
342
353
  elif ev == "handoff":
343
354
  await app.handle_handoff(
344
- state["call_id"],
355
+ call_id,
345
356
  int(data[ev]["call_id"]),
346
357
  str(data[ev]["status"]),
347
358
  )
348
359
  elif ev == "mark":
349
360
  # Echo envelope is {"event": "mark", "mark": {"name": ...}}
350
361
  await app.handle_stream_mark(
351
- state["call_id"], str(data[ev]["name"])
362
+ call_id, str(data[ev]["name"])
352
363
  )
353
364
  elif ev == "connected":
354
365
  pass
@@ -358,8 +369,8 @@ def _start_server(
358
369
  pass
359
370
  finally:
360
371
  try:
361
- if state["call_id"] in wss:
362
- del wss[state["call_id"]]
372
+ if call_id in wss:
373
+ del wss[call_id]
363
374
  if ws.client_state != WebSocketState.DISCONNECTED:
364
375
  try:
365
376
  await ws.close()
@@ -369,7 +380,7 @@ def _start_server(
369
380
  # message has been sent." Nothing to do.
370
381
  pass
371
382
  finally:
372
- await app.on_stream_disconnect(state["call_id"])
383
+ await app.on_stream_disconnect(call_id)
373
384
 
374
385
  for config, func in app.api_routes():
375
386
  server.add_api_route(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jaxl-python
3
- Version: 0.0.47
3
+ Version: 0.0.48
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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes