fastpixapi 0.0.1

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 (217) hide show
  1. checksums.yaml +7 -0
  2. data/lib/crystalline/metadata_fields.rb +210 -0
  3. data/lib/crystalline/t.rb +78 -0
  4. data/lib/crystalline/utils.rb +95 -0
  5. data/lib/crystalline.rb +12 -0
  6. data/lib/fastpix_api_sdk/input_video.rb +454 -0
  7. data/lib/fastpix_api_sdk/manage_live_stream.rb +717 -0
  8. data/lib/fastpix_api_sdk/manage_videos.rb +960 -0
  9. data/lib/fastpix_api_sdk/models/components/audioinput.rb +41 -0
  10. data/lib/fastpix_api_sdk/models/components/audioinput_type.rb +19 -0
  11. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest.rb +37 -0
  12. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest_maxresolution.rb +21 -0
  13. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest_metadata.rb +28 -0
  14. data/lib/fastpix_api_sdk/models/components/createmediarequest.rb +89 -0
  15. data/lib/fastpix_api_sdk/models/components/createmediarequest_accesspolicy.rb +22 -0
  16. data/lib/fastpix_api_sdk/models/components/createmediarequest_accessrestrictions.rb +37 -0
  17. data/lib/fastpix_api_sdk/models/components/createmediarequest_domains.rb +48 -0
  18. data/lib/fastpix_api_sdk/models/components/createmediarequest_domains_defaultpolicy.rb +23 -0
  19. data/lib/fastpix_api_sdk/models/components/createmediarequest_languagecode.rb +26 -0
  20. data/lib/fastpix_api_sdk/models/components/createmediarequest_maxresolution.rb +25 -0
  21. data/lib/fastpix_api_sdk/models/components/createmediarequest_metadata.rb +29 -0
  22. data/lib/fastpix_api_sdk/models/components/createmediarequest_mp4support.rb +22 -0
  23. data/lib/fastpix_api_sdk/models/components/createmediarequest_type.rb +22 -0
  24. data/lib/fastpix_api_sdk/models/components/createmediarequest_useragents.rb +48 -0
  25. data/lib/fastpix_api_sdk/models/components/createmediarequest_useragents_defaultpolicy.rb +23 -0
  26. data/lib/fastpix_api_sdk/models/components/createmediaresponse.rb +62 -0
  27. data/lib/fastpix_api_sdk/models/components/createmediaresponse_maxresolution.rb +24 -0
  28. data/lib/fastpix_api_sdk/models/components/createmediaresponse_metadata.rb +28 -0
  29. data/lib/fastpix_api_sdk/models/components/directupload.rb +58 -0
  30. data/lib/fastpix_api_sdk/models/components/directuploadresponse.rb +37 -0
  31. data/lib/fastpix_api_sdk/models/components/directuploadresponse_metadata.rb +28 -0
  32. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto.rb +85 -0
  33. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto_metadata.rb +28 -0
  34. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto_srtplaybackresponse.rb +37 -0
  35. data/lib/fastpix_api_sdk/models/components/getstreamsresponse.rb +41 -0
  36. data/lib/fastpix_api_sdk/models/components/imposetrack.rb +49 -0
  37. data/lib/fastpix_api_sdk/models/components/input.rb +28 -0
  38. data/lib/fastpix_api_sdk/models/components/inputmediasettings.rb +45 -0
  39. data/lib/fastpix_api_sdk/models/components/livestreamdeleteresponse.rb +33 -0
  40. data/lib/fastpix_api_sdk/models/components/livestreamgetresponse.rb +37 -0
  41. data/lib/fastpix_api_sdk/models/components/livestreamresponsedto.rb +37 -0
  42. data/lib/fastpix_api_sdk/models/components/media.rb +93 -0
  43. data/lib/fastpix_api_sdk/models/components/media_maxresolution.rb +24 -0
  44. data/lib/fastpix_api_sdk/models/components/media_metadata.rb +28 -0
  45. data/lib/fastpix_api_sdk/models/components/media_mp4support.rb +22 -0
  46. data/lib/fastpix_api_sdk/models/components/mediapolicy.rb +20 -0
  47. data/lib/fastpix_api_sdk/models/components/moderation.rb +34 -0
  48. data/lib/fastpix_api_sdk/models/components/pagination.rb +41 -0
  49. data/lib/fastpix_api_sdk/models/components/patchlivestreamrequest.rb +37 -0
  50. data/lib/fastpix_api_sdk/models/components/patchlivestreamrequest_metadata.rb +28 -0
  51. data/lib/fastpix_api_sdk/models/components/patchresponsedata.rb +85 -0
  52. data/lib/fastpix_api_sdk/models/components/patchresponsedata_metadata.rb +28 -0
  53. data/lib/fastpix_api_sdk/models/components/patchresponsedata_srtplaybackresponse.rb +37 -0
  54. data/lib/fastpix_api_sdk/models/components/patchresponsedto.rb +37 -0
  55. data/lib/fastpix_api_sdk/models/components/placement.rb +45 -0
  56. data/lib/fastpix_api_sdk/models/components/playbackid.rb +41 -0
  57. data/lib/fastpix_api_sdk/models/components/playbackid_accesspolicy.rb +21 -0
  58. data/lib/fastpix_api_sdk/models/components/playbackid_accessrestrictions.rb +37 -0
  59. data/lib/fastpix_api_sdk/models/components/playbackid_domains.rb +41 -0
  60. data/lib/fastpix_api_sdk/models/components/playbackid_domains_defaultpolicy.rb +20 -0
  61. data/lib/fastpix_api_sdk/models/components/playbackid_useragents.rb +41 -0
  62. data/lib/fastpix_api_sdk/models/components/playbackid_useragents_defaultpolicy.rb +20 -0
  63. data/lib/fastpix_api_sdk/models/components/playbackidrequest.rb +33 -0
  64. data/lib/fastpix_api_sdk/models/components/playbackidrequest_accesspolicy.rb +20 -0
  65. data/lib/fastpix_api_sdk/models/components/playbackidresponse.rb +37 -0
  66. data/lib/fastpix_api_sdk/models/components/playbackidresponse_data.rb +37 -0
  67. data/lib/fastpix_api_sdk/models/components/playbackids.rb +37 -0
  68. data/lib/fastpix_api_sdk/models/components/playbacksettings.rb +33 -0
  69. data/lib/fastpix_api_sdk/models/components/playbacksettings_accesspolicy.rb +20 -0
  70. data/lib/fastpix_api_sdk/models/components/security.rb +37 -0
  71. data/lib/fastpix_api_sdk/models/components/segment_1.rb +37 -0
  72. data/lib/fastpix_api_sdk/models/components/segment_2.rb +37 -0
  73. data/lib/fastpix_api_sdk/models/components/segment_union.rb +28 -0
  74. data/lib/fastpix_api_sdk/models/components/simulcastdeleteresponse.rb +33 -0
  75. data/lib/fastpix_api_sdk/models/components/simulcastrequest.rb +37 -0
  76. data/lib/fastpix_api_sdk/models/components/simulcastresponse.rb +37 -0
  77. data/lib/fastpix_api_sdk/models/components/simulcastresponse_data.rb +49 -0
  78. data/lib/fastpix_api_sdk/models/components/simulcastresponse_metadata.rb +28 -0
  79. data/lib/fastpix_api_sdk/models/components/simulcastupdaterequest.rb +37 -0
  80. data/lib/fastpix_api_sdk/models/components/simulcastupdaterequest_metadata.rb +28 -0
  81. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse.rb +37 -0
  82. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse_data.rb +49 -0
  83. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse_metadata.rb +28 -0
  84. data/lib/fastpix_api_sdk/models/components/sourceresolution.rb +24 -0
  85. data/lib/fastpix_api_sdk/models/components/subtitle.rb +45 -0
  86. data/lib/fastpix_api_sdk/models/components/subtitle_metadata.rb +29 -0
  87. data/lib/fastpix_api_sdk/models/components/subtitleinput.rb +47 -0
  88. data/lib/fastpix_api_sdk/models/components/subtitleinput_languagecode.rb +76 -0
  89. data/lib/fastpix_api_sdk/models/components/summary.rb +40 -0
  90. data/lib/fastpix_api_sdk/models/components/track.rb +53 -0
  91. data/lib/fastpix_api_sdk/models/components/videoinput.rb +68 -0
  92. data/lib/fastpix_api_sdk/models/components/watermarkinput.rb +53 -0
  93. data/lib/fastpix_api_sdk/models/components/watermarkinput_type.rb +19 -0
  94. data/lib/fastpix_api_sdk/models/components/xalign.rb +21 -0
  95. data/lib/fastpix_api_sdk/models/components/yalign.rb +21 -0
  96. data/lib/fastpix_api_sdk/models/components.rb +98 -0
  97. data/lib/fastpix_api_sdk/models/errors/apierror.rb +38 -0
  98. data/lib/fastpix_api_sdk/models/errors/badrequest_error.rb +37 -0
  99. data/lib/fastpix_api_sdk/models/errors/badrequest_error_error.rb +42 -0
  100. data/lib/fastpix_api_sdk/models/errors/field.rb +37 -0
  101. data/lib/fastpix_api_sdk/models/errors/forbidden_error.rb +37 -0
  102. data/lib/fastpix_api_sdk/models/errors/forbidden_error_error.rb +42 -0
  103. data/lib/fastpix_api_sdk/models/errors/invalidpermission_error.rb +37 -0
  104. data/lib/fastpix_api_sdk/models/errors/invalidpermission_error_error.rb +42 -0
  105. data/lib/fastpix_api_sdk/models/errors/medianotfound_error.rb +37 -0
  106. data/lib/fastpix_api_sdk/models/errors/medianotfound_error_error.rb +42 -0
  107. data/lib/fastpix_api_sdk/models/errors/mediaorplaybacknotfound_error.rb +37 -0
  108. data/lib/fastpix_api_sdk/models/errors/mediaorplaybacknotfound_error_error.rb +42 -0
  109. data/lib/fastpix_api_sdk/models/errors/notfounderror.rb +37 -0
  110. data/lib/fastpix_api_sdk/models/errors/notfounderror_error.rb +42 -0
  111. data/lib/fastpix_api_sdk/models/errors/notfounderrorplaybackid.rb +37 -0
  112. data/lib/fastpix_api_sdk/models/errors/notfounderrorplaybackid_error.rb +42 -0
  113. data/lib/fastpix_api_sdk/models/errors/notfounderrorsimulcast.rb +37 -0
  114. data/lib/fastpix_api_sdk/models/errors/notfounderrorsimulcast_error.rb +42 -0
  115. data/lib/fastpix_api_sdk/models/errors/simulcastunavailable_error.rb +38 -0
  116. data/lib/fastpix_api_sdk/models/errors/simulcastunavailable_error_error.rb +45 -0
  117. data/lib/fastpix_api_sdk/models/errors/unauthorized_error.rb +37 -0
  118. data/lib/fastpix_api_sdk/models/errors/unauthorized_error_error.rb +42 -0
  119. data/lib/fastpix_api_sdk/models/errors/validationerrorresponse.rb +37 -0
  120. data/lib/fastpix_api_sdk/models/errors/validationerrorresponse_error.rb +41 -0
  121. data/lib/fastpix_api_sdk/models/errors.rb +35 -0
  122. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_accesspolicy.rb +21 -0
  123. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_accessrestrictions.rb +37 -0
  124. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_domains.rb +48 -0
  125. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_domains_defaultpolicy.rb +23 -0
  126. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_request.rb +37 -0
  127. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_requestbody.rb +37 -0
  128. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_response.rb +45 -0
  129. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_responsebody.rb +37 -0
  130. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_useragents.rb +48 -0
  131. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_useragents_defaultpolicy.rb +23 -0
  132. data/lib/fastpix_api_sdk/models/operations/create_media_response.rb +45 -0
  133. data/lib/fastpix_api_sdk/models/operations/create_media_responsebody.rb +37 -0
  134. data/lib/fastpix_api_sdk/models/operations/create_new_stream_response.rb +45 -0
  135. data/lib/fastpix_api_sdk/models/operations/create_playbackid_of_stream_request.rb +37 -0
  136. data/lib/fastpix_api_sdk/models/operations/create_playbackid_of_stream_response.rb +45 -0
  137. data/lib/fastpix_api_sdk/models/operations/create_simulcast_of_stream_request.rb +37 -0
  138. data/lib/fastpix_api_sdk/models/operations/create_simulcast_of_stream_response.rb +45 -0
  139. data/lib/fastpix_api_sdk/models/operations/data.rb +33 -0
  140. data/lib/fastpix_api_sdk/models/operations/delete_live_stream_request.rb +33 -0
  141. data/lib/fastpix_api_sdk/models/operations/delete_live_stream_response.rb +45 -0
  142. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_request.rb +37 -0
  143. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_response.rb +45 -0
  144. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_responsebody.rb +33 -0
  145. data/lib/fastpix_api_sdk/models/operations/delete_media_request.rb +33 -0
  146. data/lib/fastpix_api_sdk/models/operations/delete_media_response.rb +45 -0
  147. data/lib/fastpix_api_sdk/models/operations/delete_media_responsebody.rb +33 -0
  148. data/lib/fastpix_api_sdk/models/operations/delete_playbackid_of_stream_request.rb +37 -0
  149. data/lib/fastpix_api_sdk/models/operations/delete_playbackid_of_stream_response.rb +45 -0
  150. data/lib/fastpix_api_sdk/models/operations/delete_simulcast_of_stream_request.rb +37 -0
  151. data/lib/fastpix_api_sdk/models/operations/delete_simulcast_of_stream_response.rb +45 -0
  152. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_accesspolicy.rb +20 -0
  153. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_accessrestrictions.rb +37 -0
  154. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_domains.rb +48 -0
  155. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_domains_defaultpolicy.rb +23 -0
  156. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_metadata.rb +28 -0
  157. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_request.rb +37 -0
  158. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_response.rb +45 -0
  159. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_responsebody.rb +37 -0
  160. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_useragents.rb +48 -0
  161. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_useragents_defaultpolicy.rb +23 -0
  162. data/lib/fastpix_api_sdk/models/operations/get_all_streams_orderby.rb +20 -0
  163. data/lib/fastpix_api_sdk/models/operations/get_all_streams_request.rb +41 -0
  164. data/lib/fastpix_api_sdk/models/operations/get_all_streams_response.rb +45 -0
  165. data/lib/fastpix_api_sdk/models/operations/get_live_stream_by_id_request.rb +33 -0
  166. data/lib/fastpix_api_sdk/models/operations/get_live_stream_by_id_response.rb +45 -0
  167. data/lib/fastpix_api_sdk/models/operations/get_live_stream_playback_id_request.rb +37 -0
  168. data/lib/fastpix_api_sdk/models/operations/get_live_stream_playback_id_response.rb +45 -0
  169. data/lib/fastpix_api_sdk/models/operations/get_media_request.rb +33 -0
  170. data/lib/fastpix_api_sdk/models/operations/get_media_response.rb +45 -0
  171. data/lib/fastpix_api_sdk/models/operations/get_media_responsebody.rb +37 -0
  172. data/lib/fastpix_api_sdk/models/operations/get_specific_simulcast_of_stream_request.rb +37 -0
  173. data/lib/fastpix_api_sdk/models/operations/get_specific_simulcast_of_stream_response.rb +45 -0
  174. data/lib/fastpix_api_sdk/models/operations/input.rb +28 -0
  175. data/lib/fastpix_api_sdk/models/operations/languagecode.rb +26 -0
  176. data/lib/fastpix_api_sdk/models/operations/list_media_orderby.rb +20 -0
  177. data/lib/fastpix_api_sdk/models/operations/list_media_request.rb +41 -0
  178. data/lib/fastpix_api_sdk/models/operations/list_media_response.rb +45 -0
  179. data/lib/fastpix_api_sdk/models/operations/list_media_responsebody.rb +41 -0
  180. data/lib/fastpix_api_sdk/models/operations/maxresolution.rb +25 -0
  181. data/lib/fastpix_api_sdk/models/operations/moderation.rb +34 -0
  182. data/lib/fastpix_api_sdk/models/operations/mp4support.rb +22 -0
  183. data/lib/fastpix_api_sdk/models/operations/push_media_settings.rb +95 -0
  184. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_request.rb +33 -0
  185. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_response.rb +45 -0
  186. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_responsebody.rb +37 -0
  187. data/lib/fastpix_api_sdk/models/operations/subtitles.rb +43 -0
  188. data/lib/fastpix_api_sdk/models/operations/subtitles_metadata.rb +28 -0
  189. data/lib/fastpix_api_sdk/models/operations/summary.rb +40 -0
  190. data/lib/fastpix_api_sdk/models/operations/type.rb +22 -0
  191. data/lib/fastpix_api_sdk/models/operations/update_live_stream_request.rb +37 -0
  192. data/lib/fastpix_api_sdk/models/operations/update_live_stream_response.rb +45 -0
  193. data/lib/fastpix_api_sdk/models/operations/update_specific_simulcast_of_stream_request.rb +41 -0
  194. data/lib/fastpix_api_sdk/models/operations/update_specific_simulcast_of_stream_response.rb +45 -0
  195. data/lib/fastpix_api_sdk/models/operations/updated_media_metadata.rb +28 -0
  196. data/lib/fastpix_api_sdk/models/operations/updated_media_request.rb +37 -0
  197. data/lib/fastpix_api_sdk/models/operations/updated_media_requestbody.rb +33 -0
  198. data/lib/fastpix_api_sdk/models/operations/updated_media_response.rb +45 -0
  199. data/lib/fastpix_api_sdk/models/operations/updated_media_responsebody.rb +37 -0
  200. data/lib/fastpix_api_sdk/models/operations.rb +89 -0
  201. data/lib/fastpix_api_sdk/playback.rb +941 -0
  202. data/lib/fastpix_api_sdk/sdk.rb +103 -0
  203. data/lib/fastpix_api_sdk/sdk_hooks/hooks.rb +96 -0
  204. data/lib/fastpix_api_sdk/sdk_hooks/types.rb +157 -0
  205. data/lib/fastpix_api_sdk/sdkconfiguration.rb +77 -0
  206. data/lib/fastpix_api_sdk/simulcast_stream.rb +767 -0
  207. data/lib/fastpix_api_sdk/start_live_stream.rb +208 -0
  208. data/lib/fastpix_api_sdk/utils/forms.rb +210 -0
  209. data/lib/fastpix_api_sdk/utils/headers.rb +79 -0
  210. data/lib/fastpix_api_sdk/utils/query_params.rb +133 -0
  211. data/lib/fastpix_api_sdk/utils/request_bodies.rb +62 -0
  212. data/lib/fastpix_api_sdk/utils/retries.rb +95 -0
  213. data/lib/fastpix_api_sdk/utils/security.rb +133 -0
  214. data/lib/fastpix_api_sdk/utils/url.rb +102 -0
  215. data/lib/fastpix_api_sdk/utils/utils.rb +186 -0
  216. data/lib/fastpixapi.rb +29 -0
  217. metadata +442 -0
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # Controls access based on domains and user agents. Defines a default policy (either "allow" or "deny") and provides lists for explicitly allowed or denied domains and user agents.
12
+ class PlaybackIdAccessRestrictions
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Restrictions based on the originating domain of a request (e.g., whether requests from certain websites should be allowed or blocked).
17
+ field :domains, T.nilable(Models::Components::PlaybackIdDomains), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('domains') } }
18
+ # Restrictions based on the user agent (which is typically a string sent by browsers or bots identifying themselves).
19
+ field :user_agents, T.nilable(Models::Components::PlaybackIdUserAgents), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('userAgents') } }
20
+
21
+ sig { params(domains: T.nilable(Models::Components::PlaybackIdDomains), user_agents: T.nilable(Models::Components::PlaybackIdUserAgents)).void }
22
+ def initialize(domains: nil, user_agents: nil)
23
+ @domains = domains
24
+ @user_agents = user_agents
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @domains == other.domains
31
+ return false unless @user_agents == other.user_agents
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,41 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # Restrictions based on the originating domain of a request (e.g., whether requests from certain websites should be allowed or blocked).
12
+ class PlaybackIdDomains
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # This sets the default behavior for domain access (either "allow" or "deny").
17
+ field :default_policy, T.nilable(Models::Components::PlaybackIdDomainsDefaultPolicy), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('defaultPolicy'), 'decoder': Utils.enum_from_string(Models::Components::PlaybackIdDomainsDefaultPolicy, true) } }
18
+ # A list of domains that are explicitly allowed access.
19
+ field :allow, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('allow') } }
20
+ # A list of domains that are explicitly blocked from accessing the resource.
21
+ field :deny, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('deny') } }
22
+
23
+ sig { params(default_policy: T.nilable(Models::Components::PlaybackIdDomainsDefaultPolicy), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
24
+ def initialize(default_policy: nil, allow: nil, deny: nil)
25
+ @default_policy = default_policy
26
+ @allow = allow
27
+ @deny = deny
28
+ end
29
+
30
+ sig { params(other: T.untyped).returns(T::Boolean) }
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @default_policy == other.default_policy
34
+ return false unless @allow == other.allow
35
+ return false unless @deny == other.deny
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # PlaybackIdDomainsDefaultPolicy - This sets the default behavior for domain access (either "allow" or "deny").
12
+ class PlaybackIdDomainsDefaultPolicy < T::Enum
13
+ enums do
14
+ ALLOW = new('allow')
15
+ DENY = new('deny')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,41 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # Restrictions based on the user agent (which is typically a string sent by browsers or bots identifying themselves).
12
+ class PlaybackIdUserAgents
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # This sets the default behavior for user agent access (either "allow" or "deny").
17
+ field :default_policy, T.nilable(Models::Components::PlaybackIdUserAgentsDefaultPolicy), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('defaultPolicy'), 'decoder': Utils.enum_from_string(Models::Components::PlaybackIdUserAgentsDefaultPolicy, true) } }
18
+ # A list of specific user agents that are allowed to access the resource.
19
+ field :allow, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('allow') } }
20
+ # A list of specific user agents that are blocked.
21
+ field :deny, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('deny') } }
22
+
23
+ sig { params(default_policy: T.nilable(Models::Components::PlaybackIdUserAgentsDefaultPolicy), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
24
+ def initialize(default_policy: nil, allow: nil, deny: nil)
25
+ @default_policy = default_policy
26
+ @allow = allow
27
+ @deny = deny
28
+ end
29
+
30
+ sig { params(other: T.untyped).returns(T::Boolean) }
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @default_policy == other.default_policy
34
+ return false unless @allow == other.allow
35
+ return false unless @deny == other.deny
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # PlaybackIdUserAgentsDefaultPolicy - This sets the default behavior for user agent access (either "allow" or "deny").
12
+ class PlaybackIdUserAgentsDefaultPolicy < T::Enum
13
+ enums do
14
+ ALLOW = new('allow')
15
+ DENY = new('deny')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class PlaybackIdRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Determines if access to the streamed content is kept private or available to all.
17
+ field :access_policy, T.nilable(Models::Components::PlaybackIdRequestAccessPolicy), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('accessPolicy'), 'decoder': Utils.enum_from_string(Models::Components::PlaybackIdRequestAccessPolicy, true) } }
18
+
19
+ sig { params(access_policy: T.nilable(Models::Components::PlaybackIdRequestAccessPolicy)).void }
20
+ def initialize(access_policy: Models::Components::PlaybackIdRequestAccessPolicy::PUBLIC)
21
+ @access_policy = access_policy
22
+ end
23
+
24
+ sig { params(other: T.untyped).returns(T::Boolean) }
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @access_policy == other.access_policy
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # PlaybackIdRequestAccessPolicy - Determines if access to the streamed content is kept private or available to all.
12
+ class PlaybackIdRequestAccessPolicy < T::Enum
13
+ enums do
14
+ PUBLIC = new('public')
15
+ PRIVATE = new('private')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # Displays the result of the request.
12
+ class PlaybackIdResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # It demonstrates whether the request is successful or not.
17
+ field :success, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('success') } }
18
+
19
+ field :data, T.nilable(Models::Components::PlaybackIdResponseData), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('data') } }
20
+
21
+ sig { params(success: T.nilable(T::Boolean), data: T.nilable(Models::Components::PlaybackIdResponseData)).void }
22
+ def initialize(success: nil, data: nil)
23
+ @success = success
24
+ @data = data
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @success == other.success
31
+ return false unless @data == other.data
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class PlaybackIdResponseData
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Unique identifier for the playbackId
17
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('id') } }
18
+ # Determines if access to the streamed content is kept private or available to all.
19
+ field :access_policy, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('accessPolicy') } }
20
+
21
+ sig { params(id: T.nilable(::String), access_policy: T.nilable(::String)).void }
22
+ def initialize(id: nil, access_policy: nil)
23
+ @id = id
24
+ @access_policy = access_policy
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @id == other.id
31
+ return false unless @access_policy == other.access_policy
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # A collection of Playback ID objects utilized for crafting HLS playback urls.
12
+ class PlaybackIds
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Unique identifier for the playbackId
17
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('id') } }
18
+ # Determines if access to the streamed content is kept private or available to all.
19
+ field :access_policy, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('accessPolicy') } }
20
+
21
+ sig { params(id: T.nilable(::String), access_policy: T.nilable(::String)).void }
22
+ def initialize(id: nil, access_policy: nil)
23
+ @id = id
24
+ @access_policy = access_policy
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @id == other.id
31
+ return false unless @access_policy == other.access_policy
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # Displays the result of the playback settings.
12
+ class PlaybackSettings
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Determines if access to the streamed content is kept private or available to all.
17
+ field :access_policy, T.nilable(Models::Components::PlaybackSettingsAccessPolicy), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('accessPolicy'), 'decoder': Utils.enum_from_string(Models::Components::PlaybackSettingsAccessPolicy, true) } }
18
+
19
+ sig { params(access_policy: T.nilable(Models::Components::PlaybackSettingsAccessPolicy)).void }
20
+ def initialize(access_policy: Models::Components::PlaybackSettingsAccessPolicy::PUBLIC)
21
+ @access_policy = access_policy
22
+ end
23
+
24
+ sig { params(other: T.untyped).returns(T::Boolean) }
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @access_policy == other.access_policy
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # PlaybackSettingsAccessPolicy - Determines if access to the streamed content is kept private or available to all.
12
+ class PlaybackSettingsAccessPolicy < T::Enum
13
+ enums do
14
+ PUBLIC = new('public')
15
+ PRIVATE = new('private')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class Security
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :username, ::String, { 'security': { 'scheme': true, 'type': 'http', 'sub_type': 'basic', 'field_name': 'username' } }
18
+
19
+ field :password, ::String, { 'security': { 'scheme': true, 'type': 'http', 'sub_type': 'basic', 'field_name': 'password' } }
20
+
21
+ sig { params(username: ::String, password: ::String).void }
22
+ def initialize(username:, password:)
23
+ @username = username
24
+ @password = password
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @username == other.username
31
+ return false unless @password == other.password
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class Segment1
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # URL of the segment to be added.
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('url'), required: true } }
18
+ # The timestamp at which the segment should be inserted.
19
+ field :insert_at, ::Integer, { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('insertAt'), required: true } }
20
+
21
+ sig { params(url: ::String, insert_at: ::Integer).void }
22
+ def initialize(url:, insert_at:)
23
+ @url = url
24
+ @insert_at = insert_at
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @url == other.url
31
+ return false unless @insert_at == other.insert_at
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class Segment2
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # URL of the segment to be added.
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('url'), required: true } }
18
+ # Flag indicating the segment should be inserted at the end.
19
+ field :insert_at_end, T::Boolean, { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('insertAtEnd'), required: true } }
20
+
21
+ sig { params(url: ::String, insert_at_end: T::Boolean).void }
22
+ def initialize(url:, insert_at_end:)
23
+ @url = url
24
+ @insert_at_end = insert_at_end
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @url == other.url
31
+ return false unless @insert_at_end == other.insert_at_end
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class SegmentUnion
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+ def initialize; end
19
+
20
+ sig { params(other: T.untyped).returns(T::Boolean) }
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class SimulcastdeleteResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # It demonstrates whether the request is successful or not.
17
+ field :success, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('success') } }
18
+
19
+ sig { params(success: T.nilable(T::Boolean)).void }
20
+ def initialize(success: nil)
21
+ @success = success
22
+ end
23
+
24
+ sig { params(other: T.untyped).returns(T::Boolean) }
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @success == other.success
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class SimulcastRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The RTMP hostname, combined with the application name, is crucial for connecting to third-party live streaming services and transmitting the live stream.
17
+ field :url, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('url') } }
18
+ # A unique stream key is generated for streaming, allowing the user to start streaming on any third-party platform using this key.
19
+ field :stream_key, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('streamKey') } }
20
+
21
+ sig { params(url: T.nilable(::String), stream_key: T.nilable(::String)).void }
22
+ def initialize(url: nil, stream_key: nil)
23
+ @url = url
24
+ @stream_key = stream_key
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @url == other.url
31
+ return false unless @stream_key == other.stream_key
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixApiSDK
8
+ module Models
9
+ module Components
10
+
11
+ # Displays the result of the request.
12
+ class SimulcastResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # It demonstrates whether the request is successful or not.
17
+ field :success, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('success') } }
18
+ # Displays the result of the request.
19
+ field :data, T.nilable(Models::Components::SimulcastResponseData), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('data') } }
20
+
21
+ sig { params(success: T.nilable(T::Boolean), data: T.nilable(Models::Components::SimulcastResponseData)).void }
22
+ def initialize(success: nil, data: nil)
23
+ @success = success
24
+ @data = data
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @success == other.success
31
+ return false unless @data == other.data
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end