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,24 @@
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
+ # CreateMediaResponseMaxResolution - The maximum resolution tier determines the highest quality your media will be available in.
12
+ class CreateMediaResponseMaxResolution < T::Enum
13
+ enums do
14
+ TWO_THOUSAND_ONE_HUNDRED_AND_SIXTYP = new('2160p')
15
+ ONE_THOUSAND_FOUR_HUNDRED_AND_FORTYP = new('1440p')
16
+ ONE_THOUSAND_AND_EIGHTYP = new('1080p')
17
+ SEVEN_HUNDRED_AND_TWENTYP = new('720p')
18
+ FOUR_HUNDRED_AND_EIGHTYP = new('480p')
19
+ THREE_HUNDRED_AND_SIXTYP = new('360p')
20
+ end
21
+ end
22
+ end
23
+ end
24
+ 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
+ # You can search for videos with specific key value pairs using metadata, when you tag a video in "key" : "value" pairs. Dynamic Metadata allows you to define a key that allows any value pair. You can have maximum of 255 characters and upto 10 entries are allowed.
12
+ class CreateMediaResponseMetadata
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,58 @@
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 DirectUpload
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # When creating the upload, FastPix assigns a universally unique identifier with a maximum length of 255 characters.
17
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('id') } }
18
+ # When creating the media, FastPix assigns a universally unique identifier with a maximum length of 255 characters.
19
+ field :media_id, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('mediaId') } }
20
+ # Determines the media's status, which can be one of the possible values.
21
+ field :status, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('status') } }
22
+ # The url hosts the media file for FastPix, which needs to be download to use further. It supports formats like MP3, MP4, MOV, MKV, or TS, and includes text tracks for subtitles/CC (SRT file/VTT file). While FastPix can handle various audio and video formats and codecs, using standard inputs can help with optimal processing speed.
23
+ field :url, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('url') } }
24
+ # Upload media directly from a device using the url name or enter '*' to allow all.
25
+ field :cors_origin, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('corsOrigin') } }
26
+
27
+ field :push_media_settings, T.nilable(Models::Components::DirectUploadResponse), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('pushMediaSettings') } }
28
+ # The duration set for the validity of the upload URL. If the upload isn't completed within this timeframe, it's marked as timed out.
29
+ #
30
+ field :timeout, T.nilable(::Float), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('timeout') } }
31
+
32
+ sig { params(id: T.nilable(::String), media_id: T.nilable(::String), status: T.nilable(::String), url: T.nilable(::String), cors_origin: T.nilable(::String), push_media_settings: T.nilable(Models::Components::DirectUploadResponse), timeout: T.nilable(::Float)).void }
33
+ def initialize(id: nil, media_id: nil, status: nil, url: nil, cors_origin: nil, push_media_settings: nil, timeout: 14_400.0)
34
+ @id = id
35
+ @media_id = media_id
36
+ @status = status
37
+ @url = url
38
+ @cors_origin = cors_origin
39
+ @push_media_settings = push_media_settings
40
+ @timeout = timeout
41
+ end
42
+
43
+ sig { params(other: T.untyped).returns(T::Boolean) }
44
+ def ==(other)
45
+ return false unless other.is_a? self.class
46
+ return false unless @id == other.id
47
+ return false unless @media_id == other.media_id
48
+ return false unless @status == other.status
49
+ return false unless @url == other.url
50
+ return false unless @cors_origin == other.cors_origin
51
+ return false unless @push_media_settings == other.push_media_settings
52
+ return false unless @timeout == other.timeout
53
+ true
54
+ end
55
+ end
56
+ end
57
+ end
58
+ 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 DirectUploadResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :playback_ids, T.nilable(T::Array[Models::Components::PlaybackId]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('playbackIds') } }
18
+ # You can search for videos with specific key value pairs using metadata, when you tag a video in "key" : "value" pairs. Dynamic Metadata allows you to define a key that allows any value pair. You can have maximum of 255 characters and upto 10 entries are allowed.
19
+ field :metadata, T.nilable(Models::Components::DirectUploadResponseMetadata), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('metadata') } }
20
+
21
+ sig { params(playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), metadata: T.nilable(Models::Components::DirectUploadResponseMetadata)).void }
22
+ def initialize(playback_ids: nil, metadata: nil)
23
+ @playback_ids = playback_ids
24
+ @metadata = metadata
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 @playback_ids == other.playback_ids
31
+ return false unless @metadata == other.metadata
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
+ # You can search for videos with specific key value pairs using metadata, when you tag a video in "key" : "value" pairs. Dynamic Metadata allows you to define a key that allows any value pair. You can have maximum of 255 characters and upto 10 entries are allowed.
12
+ class DirectUploadResponseMetadata
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,85 @@
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 GetCreateLiveStreamResponseDTO
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Upon creating a new live stream, FastPix assigns a unique identifier to the stream.
17
+ field :stream_id, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('streamId') } }
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
+ # A secret used for securing the SRT stream. This ensures that only authorized users can access the stream.
21
+ field :srt_secret, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('srtSecret') } }
22
+ # FastPix allows for a to trial the live stream for free. The duration of trial streams is five minutes. After five minutes of activity, the trial stream is turned off, and the recorded asset is removed after a day.
23
+ field :trial, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('trial') } }
24
+ # The current live stream status can be one of four values:Idle, Preparing, Active or Disabled.The Idle status signifies that there isn't a broadcast in progress.The preparing status indicates that the stream is getting prepared. while, the Active status indicates that a broadcast is currently in progress. The Disabled status means that no more RTMP streams can be published.
25
+ field :status, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('status') } }
26
+ # Max resolution can be used to control the maximum resolution your media is encoded, stored, and streamed at.
27
+ field :max_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('maxResolution') } }
28
+ # The maximum duration in seconds that a live stream can have before it ends the stream.
29
+ field :max_duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('maxDuration') } }
30
+ # It is the moment when the stream was created Time the media was generated, defined as a localDateTime (UTC Time).
31
+ field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('createdAt'), 'decoder': Utils.datetime_from_iso_format(true) } }
32
+ # When set to true, the livestream will be recorded and stored for later viewing purposes. If set to false, the livestream will not be recorded.
33
+ field :enable_recording, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('enableRecording') } }
34
+ # Determines whether the recorded stream should be publicly accessible or private in Live to VOD (Video on Demand).
35
+ field :media_policy, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('mediaPolicy') } }
36
+ # You can search for videos with specific key value pairs using metadata, when you tag a video in "key":"value"s pairs. Dynamic Metadata allows you to define a key that allows any value pair. You can have maximum of 255 characters and upto 10 entries are allowed.
37
+ field :metadata, T.nilable(Models::Components::GetCreateLiveStreamResponseDTOMetadata), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('metadata') } }
38
+ # A collection of Playback ID objects utilized for crafting HLS playback urls.
39
+ field :playback_id, T.nilable(T::Array[Models::Components::PlaybackIds]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('playbackId') } }
40
+ # This object contains the livestream playback response details for SRT Protocol.
41
+ field :srt_playback_response, T.nilable(Models::Components::GetCreateLiveStreamResponseDTOSrtPlaybackResponse), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('srtPlaybackResponse') } }
42
+ # In case the software streaming the live, get disrupted for any reason and get disconnect from FastPix, the reconnect window specifies the waiting time span of FastPix will wait before ending the stream. Before starting the stream, you can set the reconnect window time set which is up to 1800 seconds.
43
+ field :reconnect_window, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('reconnectWindow') } }
44
+
45
+ sig { params(stream_id: T.nilable(::String), stream_key: T.nilable(::String), srt_secret: T.nilable(::String), trial: T.nilable(T::Boolean), status: T.nilable(::String), max_resolution: T.nilable(::String), max_duration: T.nilable(::Integer), created_at: T.nilable(::DateTime), enable_recording: T.nilable(T::Boolean), media_policy: T.nilable(::String), metadata: T.nilable(Models::Components::GetCreateLiveStreamResponseDTOMetadata), playback_id: T.nilable(T::Array[Models::Components::PlaybackIds]), srt_playback_response: T.nilable(Models::Components::GetCreateLiveStreamResponseDTOSrtPlaybackResponse), reconnect_window: T.nilable(::Integer)).void }
46
+ def initialize(stream_id: nil, stream_key: nil, srt_secret: nil, trial: nil, status: nil, max_resolution: nil, max_duration: nil, created_at: nil, enable_recording: nil, media_policy: nil, metadata: nil, playback_id: nil, srt_playback_response: nil, reconnect_window: 60)
47
+ @stream_id = stream_id
48
+ @stream_key = stream_key
49
+ @srt_secret = srt_secret
50
+ @trial = trial
51
+ @status = status
52
+ @max_resolution = max_resolution
53
+ @max_duration = max_duration
54
+ @created_at = created_at
55
+ @enable_recording = enable_recording
56
+ @media_policy = media_policy
57
+ @metadata = metadata
58
+ @playback_id = playback_id
59
+ @srt_playback_response = srt_playback_response
60
+ @reconnect_window = reconnect_window
61
+ end
62
+
63
+ sig { params(other: T.untyped).returns(T::Boolean) }
64
+ def ==(other)
65
+ return false unless other.is_a? self.class
66
+ return false unless @stream_id == other.stream_id
67
+ return false unless @stream_key == other.stream_key
68
+ return false unless @srt_secret == other.srt_secret
69
+ return false unless @trial == other.trial
70
+ return false unless @status == other.status
71
+ return false unless @max_resolution == other.max_resolution
72
+ return false unless @max_duration == other.max_duration
73
+ return false unless @created_at == other.created_at
74
+ return false unless @enable_recording == other.enable_recording
75
+ return false unless @media_policy == other.media_policy
76
+ return false unless @metadata == other.metadata
77
+ return false unless @playback_id == other.playback_id
78
+ return false unless @srt_playback_response == other.srt_playback_response
79
+ return false unless @reconnect_window == other.reconnect_window
80
+ true
81
+ end
82
+ end
83
+ end
84
+ end
85
+ 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
+ # You can search for videos with specific key value pairs using metadata, when you tag a video in "key":"value"s pairs. Dynamic Metadata allows you to define a key that allows any value pair. You can have maximum of 255 characters and upto 10 entries are allowed.
12
+ class GetCreateLiveStreamResponseDTOMetadata
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,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
+ # This object contains the livestream playback response details for SRT Protocol.
12
+ class GetCreateLiveStreamResponseDTOSrtPlaybackResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # A unique identifier for the SRT playback stream. This ID is used to distinguish between different playback streams.
17
+ field :srt_playback_stream_id, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('srtPlaybackStreamId') } }
18
+ # A playback secret used for securing the SRT playback stream. This ensures that only authorized users can access the playback.
19
+ field :srt_playback_secret, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('srtPlaybackSecret') } }
20
+
21
+ sig { params(srt_playback_stream_id: T.nilable(::String), srt_playback_secret: T.nilable(::String)).void }
22
+ def initialize(srt_playback_stream_id: nil, srt_playback_secret: nil)
23
+ @srt_playback_stream_id = srt_playback_stream_id
24
+ @srt_playback_secret = srt_playback_secret
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 @srt_playback_stream_id == other.srt_playback_stream_id
31
+ return false unless @srt_playback_secret == other.srt_playback_secret
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
+ # Displays the result of the request.
12
+ class GetStreamsResponse
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(T::Array[Models::Components::GetCreateLiveStreamResponseDTO]), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('data') } }
20
+ # Pagination organizes content into pages for better readability and navigation.
21
+ field :pagination, T.nilable(Models::Components::Pagination), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('pagination') } }
22
+
23
+ sig { params(success: T.nilable(T::Boolean), data: T.nilable(T::Array[Models::Components::GetCreateLiveStreamResponseDTO]), pagination: T.nilable(Models::Components::Pagination)).void }
24
+ def initialize(success: nil, data: nil, pagination: nil)
25
+ @success = success
26
+ @data = data
27
+ @pagination = pagination
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 @success == other.success
34
+ return false unless @data == other.data
35
+ return false unless @pagination == other.pagination
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,49 @@
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 ImposeTrack
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # URL of the audio track to impose on the video.
17
+ field :url, T.nilable(::String), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('url') } }
18
+ # Start time (in seconds) of the imposed audio in the video.
19
+ field :start_time, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('startTime') } }
20
+ # End time (in seconds) of the imposed audio in the video.
21
+ field :end_time, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('endTime') } }
22
+ # Level of fade-in effect (in seconds) at the start of the imposed audio.
23
+ field :fade_in_level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('fadeInLevel') } }
24
+ # Level of fade-out effect (in seconds) at the end of the imposed audio.
25
+ field :fade_out_level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('fadeOutLevel') } }
26
+
27
+ sig { params(url: T.nilable(::String), start_time: T.nilable(::Integer), end_time: T.nilable(::Integer), fade_in_level: T.nilable(::Integer), fade_out_level: T.nilable(::Integer)).void }
28
+ def initialize(url: nil, start_time: nil, end_time: nil, fade_in_level: nil, fade_out_level: nil)
29
+ @url = url
30
+ @start_time = start_time
31
+ @end_time = end_time
32
+ @fade_in_level = fade_in_level
33
+ @fade_out_level = fade_out_level
34
+ end
35
+
36
+ sig { params(other: T.untyped).returns(T::Boolean) }
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @url == other.url
40
+ return false unless @start_time == other.start_time
41
+ return false unless @end_time == other.end_time
42
+ return false unless @fade_in_level == other.fade_in_level
43
+ return false unless @fade_out_level == other.fade_out_level
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ 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 Input
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,45 @@
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 input Media settings.
12
+ class InputMediaSettings
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # You can search for videos with specific key value pairs using metadata, when you tag a video in "key":"value"s pairs. Dynamic Metadata allows you to define a key that allows any value pair. You can have maximum of 255 characters and upto 10 entries are allowed.
17
+ field :metadata, T.nilable(Models::Components::CreateLiveStreamRequestMetadata), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('metadata') } }
18
+ # Max resolution can be used to control the maximum resolution your media is encoded, stored, and streamed at.
19
+ field :max_resolution, T.nilable(Models::Components::CreateLiveStreamRequestMaxResolution), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('maxResolution'), 'decoder': Utils.enum_from_string(Models::Components::CreateLiveStreamRequestMaxResolution, true) } }
20
+ # In case the software streaming the live, get disrupted for any reason and get disconnect from FastPix, the reconnect window specifies the waiting time span of FastPix will wait before ending the stream. Before starting the stream, you can set the reconnect window time set which is up to 1800 seconds.
21
+ field :reconnect_window, T.nilable(::Integer), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('reconnectWindow') } }
22
+ # Determines whether the recorded stream should be publicly accessible or private in Live to VOD (Video on Demand).
23
+ field :media_policy, T.nilable(Models::Components::MediaPolicy), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('mediaPolicy'), 'decoder': Utils.enum_from_string(Models::Components::MediaPolicy, true) } }
24
+
25
+ sig { params(metadata: T.nilable(Models::Components::CreateLiveStreamRequestMetadata), max_resolution: T.nilable(Models::Components::CreateLiveStreamRequestMaxResolution), reconnect_window: T.nilable(::Integer), media_policy: T.nilable(Models::Components::MediaPolicy)).void }
26
+ def initialize(metadata: nil, max_resolution: Models::Components::CreateLiveStreamRequestMaxResolution::ONE_THOUSAND_AND_EIGHTYP, reconnect_window: 60, media_policy: Models::Components::MediaPolicy::PUBLIC)
27
+ @metadata = metadata
28
+ @max_resolution = max_resolution
29
+ @reconnect_window = reconnect_window
30
+ @media_policy = media_policy
31
+ end
32
+
33
+ sig { params(other: T.untyped).returns(T::Boolean) }
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @metadata == other.metadata
37
+ return false unless @max_resolution == other.max_resolution
38
+ return false unless @reconnect_window == other.reconnect_window
39
+ return false unless @media_policy == other.media_policy
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ 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 LiveStreamDeleteResponse
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
+ # Displays the result of the request.
12
+ class LivestreamgetResponse
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::GetCreateLiveStreamResponseDTO), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('data') } }
20
+
21
+ sig { params(success: T.nilable(T::Boolean), data: T.nilable(Models::Components::GetCreateLiveStreamResponseDTO)).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
+ # Displays the result of the request.
12
+ class LiveStreamResponseDTO
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::GetCreateLiveStreamResponseDTO), { 'format_json': { 'letter_case': ::FastpixApiSDK::Utils.field_name('data') } }
20
+
21
+ sig { params(success: T.nilable(T::Boolean), data: T.nilable(Models::Components::GetCreateLiveStreamResponseDTO)).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