wsc_sdk 1.3.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 (265) hide show
  1. checksums.yaml +7 -0
  2. data/.circleci/config.yml +146 -0
  3. data/.circleci/docker/build/Dockerfile +3 -0
  4. data/.circleci/helpers/add_preamble.rb +29 -0
  5. data/.circleci/helpers/build_docs.sh +5 -0
  6. data/.circleci/helpers/build_gem.sh +5 -0
  7. data/.circleci/helpers/debundle-context.sh +14 -0
  8. data/.circleci/helpers/finalize_release.sh +24 -0
  9. data/.circleci/helpers/publish_docs.sh +10 -0
  10. data/.circleci/helpers/release_gem.sh +8 -0
  11. data/.circleci/helpers/setup.sh +11 -0
  12. data/.circleci/helpers/setup_aws.sh +13 -0
  13. data/.circleci/helpers/setup_gem.sh +2 -0
  14. data/.circleci/helpers/setup_git.sh +27 -0
  15. data/.circleci/helpers/setup_rubygems.sh +15 -0
  16. data/.circleci/helpers/test_integration.sh +12 -0
  17. data/.circleci/helpers/test_unit.sh +6 -0
  18. data/.circleci/jobs/publish-production.sh +17 -0
  19. data/.circleci/jobs/publish-staging.sh +17 -0
  20. data/.circleci/jobs/release-production.sh +21 -0
  21. data/.circleci/jobs/test-integration.sh +9 -0
  22. data/.circleci/jobs/test-unit.sh +9 -0
  23. data/.circleci/tag_repo.rb +46 -0
  24. data/.gitignore +28 -0
  25. data/.rspec +2 -0
  26. data/.yard/config +2 -0
  27. data/.yard/template/default/fulldoc/html/css/custom.css +151 -0
  28. data/.yard/template/default/layout/html/footer.erb +0 -0
  29. data/.yard/template/default/layout/html/headers.erb +10 -0
  30. data/.yard/template/default/layout/html/layout.erb +45 -0
  31. data/.yard/template/default/layout/html/setup.rb +24 -0
  32. data/.yardopts +1 -0
  33. data/CODE_OF_CONDUCT.md +74 -0
  34. data/Gemfile +6 -0
  35. data/Gemfile.lock +99 -0
  36. data/LICENSE.txt +28 -0
  37. data/README.md +397 -0
  38. data/Rakefile +2 -0
  39. data/bin/console +14 -0
  40. data/bin/setup +8 -0
  41. data/doc/Hash.html +291 -0
  42. data/doc/WscSdk.html +570 -0
  43. data/doc/WscSdk/ApiResponse.html +242 -0
  44. data/doc/WscSdk/Attributes.html +128 -0
  45. data/doc/WscSdk/Attributes/Mode.html +191 -0
  46. data/doc/WscSdk/Attributes/Type.html +389 -0
  47. data/doc/WscSdk/Client.html +2677 -0
  48. data/doc/WscSdk/Configuration.html +595 -0
  49. data/doc/WscSdk/Endpoint.html +2974 -0
  50. data/doc/WscSdk/Endpoints.html +141 -0
  51. data/doc/WscSdk/Endpoints/CustomStreamTargets.html +383 -0
  52. data/doc/WscSdk/Endpoints/LiveStreams.html +197 -0
  53. data/doc/WscSdk/Endpoints/OutputStreamTargets.html +180 -0
  54. data/doc/WscSdk/Endpoints/Outputs.html +180 -0
  55. data/doc/WscSdk/Endpoints/StreamTargets.html +446 -0
  56. data/doc/WscSdk/Endpoints/Transcoders.html +197 -0
  57. data/doc/WscSdk/Endpoints/UllStreamTargets.html +383 -0
  58. data/doc/WscSdk/Endpoints/WowzaStreamTargets.html +383 -0
  59. data/doc/WscSdk/Enum.html +225 -0
  60. data/doc/WscSdk/Enums.html +321 -0
  61. data/doc/WscSdk/Enums/BillingMode.html +188 -0
  62. data/doc/WscSdk/Enums/BroadcastLocation.html +396 -0
  63. data/doc/WscSdk/Enums/BufferSize.html +301 -0
  64. data/doc/WscSdk/Enums/ClosedCaptionType.html +221 -0
  65. data/doc/WscSdk/Enums/CustomProvider.html +252 -0
  66. data/doc/WscSdk/Enums/DeliveryMethod.html +188 -0
  67. data/doc/WscSdk/Enums/DeliveryType.html +188 -0
  68. data/doc/WscSdk/Enums/Encoder.html +460 -0
  69. data/doc/WscSdk/Enums/Errors.html +555 -0
  70. data/doc/WscSdk/Enums/IdleTimeout.html +398 -0
  71. data/doc/WscSdk/Enums/ImagePosition.html +220 -0
  72. data/doc/WscSdk/Enums/ModelMode.html +175 -0
  73. data/doc/WscSdk/Enums/ModelType.html +373 -0
  74. data/doc/WscSdk/Enums/PlayerType.html +188 -0
  75. data/doc/WscSdk/Enums/Protocol.html +204 -0
  76. data/doc/WscSdk/Enums/TargetDeliveryProtocol.html +188 -0
  77. data/doc/WscSdk/Enums/TranscoderType.html +188 -0
  78. data/doc/WscSdk/Enums/UserRegion.html +383 -0
  79. data/doc/WscSdk/Enums/WowzaProvider.html +188 -0
  80. data/doc/WscSdk/Errors.html +683 -0
  81. data/doc/WscSdk/Loggable.html +346 -0
  82. data/doc/WscSdk/Model.html +3316 -0
  83. data/doc/WscSdk/ModelList.html +442 -0
  84. data/doc/WscSdk/ModelTemplate.html +267 -0
  85. data/doc/WscSdk/Models.html +141 -0
  86. data/doc/WscSdk/Models/CustomStreamTarget.html +192 -0
  87. data/doc/WscSdk/Models/Error.html +351 -0
  88. data/doc/WscSdk/Models/LiveStream.html +601 -0
  89. data/doc/WscSdk/Models/LiveStreamConnectionCode.html +192 -0
  90. data/doc/WscSdk/Models/LiveStreamState.html +200 -0
  91. data/doc/WscSdk/Models/LiveStreamStats.html +200 -0
  92. data/doc/WscSdk/Models/LiveStreamThumbnailUrl.html +200 -0
  93. data/doc/WscSdk/Models/Output.html +294 -0
  94. data/doc/WscSdk/Models/OutputStreamTarget.html +274 -0
  95. data/doc/WscSdk/Models/StreamTarget.html +273 -0
  96. data/doc/WscSdk/Models/Transcoder.html +793 -0
  97. data/doc/WscSdk/Models/TranscoderBooleanStat.html +278 -0
  98. data/doc/WscSdk/Models/TranscoderConnectionCode.html +192 -0
  99. data/doc/WscSdk/Models/TranscoderFloatStat.html +278 -0
  100. data/doc/WscSdk/Models/TranscoderIntegerStat.html +278 -0
  101. data/doc/WscSdk/Models/TranscoderState.html +196 -0
  102. data/doc/WscSdk/Models/TranscoderStats.html +196 -0
  103. data/doc/WscSdk/Models/TranscoderStreamTargetState.html +192 -0
  104. data/doc/WscSdk/Models/TranscoderStringStat.html +278 -0
  105. data/doc/WscSdk/Models/TranscoderThumbnailUrl.html +196 -0
  106. data/doc/WscSdk/Models/UllStreamTarget.html +360 -0
  107. data/doc/WscSdk/Models/WowzaStreamTarget.html +380 -0
  108. data/doc/WscSdk/Pagination.html +1277 -0
  109. data/doc/WscSdk/Schema.html +861 -0
  110. data/doc/WscSdk/SchemaAttribute.html +2400 -0
  111. data/doc/WscSdk/Templates.html +141 -0
  112. data/doc/WscSdk/Templates/CustomStreamTarget.html +1045 -0
  113. data/doc/WscSdk/Templates/LiveStream.html +1432 -0
  114. data/doc/WscSdk/Templates/Output.html +829 -0
  115. data/doc/WscSdk/Templates/Transcoder.html +699 -0
  116. data/doc/WscSdk/Templates/UllStreamTarget.html +411 -0
  117. data/doc/WscSdk/Templates/WowzaStreamTarget.html +447 -0
  118. data/doc/WscSdk/TranscoderSharedMethods.html +1113 -0
  119. data/doc/_index.html +705 -0
  120. data/doc/class_list.html +51 -0
  121. data/doc/css/bootstrap.css +5 -0
  122. data/doc/css/common.css +1 -0
  123. data/doc/css/custom.css +151 -0
  124. data/doc/css/full_list.css +58 -0
  125. data/doc/css/style.css +496 -0
  126. data/doc/file.README.html +570 -0
  127. data/doc/file_list.html +56 -0
  128. data/doc/frames.html +17 -0
  129. data/doc/images/wsc-ruby-1800x400.png +0 -0
  130. data/doc/index.html +570 -0
  131. data/doc/js/app.js +292 -0
  132. data/doc/js/full_list.js +216 -0
  133. data/doc/js/jquery.js +4 -0
  134. data/doc/method_list.html +1731 -0
  135. data/doc/top-level-namespace.html +182 -0
  136. data/examples/client.rb +40 -0
  137. data/examples/helpers.rb +100 -0
  138. data/examples/live_streams/create.rb +39 -0
  139. data/examples/live_streams/delete.rb +32 -0
  140. data/examples/live_streams/find.rb +22 -0
  141. data/examples/live_streams/flood.rb +126 -0
  142. data/examples/live_streams/list.rb +24 -0
  143. data/examples/live_streams/regenerate_connection_code.rb +29 -0
  144. data/examples/live_streams/reset.rb +32 -0
  145. data/examples/live_streams/reset_and_wait.rb +51 -0
  146. data/examples/live_streams/start.rb +33 -0
  147. data/examples/live_streams/start_and_wait.rb +51 -0
  148. data/examples/live_streams/state.rb +33 -0
  149. data/examples/live_streams/stats.rb +43 -0
  150. data/examples/live_streams/stop.rb +33 -0
  151. data/examples/live_streams/stop_and_wait.rb +51 -0
  152. data/examples/live_streams/thumbnail_url.rb +46 -0
  153. data/examples/live_streams/update.rb +43 -0
  154. data/examples/live_streams/workflow.rb +165 -0
  155. data/examples/output_stream_targets/create.rb +56 -0
  156. data/examples/output_stream_targets/delete.rb +45 -0
  157. data/examples/output_stream_targets/find.rb +37 -0
  158. data/examples/output_stream_targets/list.rb +36 -0
  159. data/examples/output_stream_targets/update.rb +56 -0
  160. data/examples/outputs/create.rb +49 -0
  161. data/examples/outputs/delete.rb +39 -0
  162. data/examples/outputs/find.rb +31 -0
  163. data/examples/outputs/list.rb +29 -0
  164. data/examples/outputs/update.rb +50 -0
  165. data/examples/stream_targets/custom/create.rb +42 -0
  166. data/examples/stream_targets/custom/delete.rb +31 -0
  167. data/examples/stream_targets/custom/find.rb +23 -0
  168. data/examples/stream_targets/custom/list.rb +24 -0
  169. data/examples/stream_targets/custom/update.rb +43 -0
  170. data/examples/stream_targets/list.rb +24 -0
  171. data/examples/stream_targets/ull/create.rb +41 -0
  172. data/examples/stream_targets/ull/delete.rb +31 -0
  173. data/examples/stream_targets/ull/find.rb +23 -0
  174. data/examples/stream_targets/ull/list.rb +24 -0
  175. data/examples/stream_targets/ull/update.rb +43 -0
  176. data/examples/stream_targets/wowza/create.rb +42 -0
  177. data/examples/stream_targets/wowza/delete.rb +31 -0
  178. data/examples/stream_targets/wowza/find.rb +23 -0
  179. data/examples/stream_targets/wowza/list.rb +23 -0
  180. data/examples/stream_targets/wowza/update.rb +43 -0
  181. data/examples/transcoders/create.rb +39 -0
  182. data/examples/transcoders/delete.rb +31 -0
  183. data/examples/transcoders/find.rb +23 -0
  184. data/examples/transcoders/list.rb +24 -0
  185. data/examples/transcoders/reset.rb +32 -0
  186. data/examples/transcoders/reset_and_wait.rb +48 -0
  187. data/examples/transcoders/start.rb +33 -0
  188. data/examples/transcoders/start_and_wait.rb +50 -0
  189. data/examples/transcoders/state.rb +33 -0
  190. data/examples/transcoders/stats.rb +43 -0
  191. data/examples/transcoders/stop.rb +33 -0
  192. data/examples/transcoders/stop_and_wait.rb +50 -0
  193. data/examples/transcoders/thumbnail_url.rb +46 -0
  194. data/examples/transcoders/update.rb +43 -0
  195. data/images/wsc-ruby-1800x400.png +0 -0
  196. data/lib/wsc_sdk.rb +81 -0
  197. data/lib/wsc_sdk/client.rb +417 -0
  198. data/lib/wsc_sdk/configuration.rb +21 -0
  199. data/lib/wsc_sdk/constants.rb +29 -0
  200. data/lib/wsc_sdk/endpoint.rb +492 -0
  201. data/lib/wsc_sdk/endpoints/custom_stream_targets.rb +44 -0
  202. data/lib/wsc_sdk/endpoints/live_streams.rb +34 -0
  203. data/lib/wsc_sdk/endpoints/output_stream_targets.rb +17 -0
  204. data/lib/wsc_sdk/endpoints/outputs.rb +17 -0
  205. data/lib/wsc_sdk/endpoints/stream_targets.rb +45 -0
  206. data/lib/wsc_sdk/endpoints/transcoders.rb +38 -0
  207. data/lib/wsc_sdk/endpoints/ull_stream_targets.rb +44 -0
  208. data/lib/wsc_sdk/endpoints/wowza_stream_targets.rb +44 -0
  209. data/lib/wsc_sdk/enums.rb +31 -0
  210. data/lib/wsc_sdk/enums/billing_mode.rb +20 -0
  211. data/lib/wsc_sdk/enums/broadcast_location.rb +58 -0
  212. data/lib/wsc_sdk/enums/buffer_size.rb +41 -0
  213. data/lib/wsc_sdk/enums/closed_caption_type.rb +26 -0
  214. data/lib/wsc_sdk/enums/custom_provider.rb +32 -0
  215. data/lib/wsc_sdk/enums/delivery_method.rb +20 -0
  216. data/lib/wsc_sdk/enums/delivery_type.rb +20 -0
  217. data/lib/wsc_sdk/enums/encoder.rb +71 -0
  218. data/lib/wsc_sdk/enums/idle_timeout.rb +50 -0
  219. data/lib/wsc_sdk/enums/image_position.rb +26 -0
  220. data/lib/wsc_sdk/enums/player_type.rb +20 -0
  221. data/lib/wsc_sdk/enums/protocol.rb +23 -0
  222. data/lib/wsc_sdk/enums/target_delivery_protocol.rb +20 -0
  223. data/lib/wsc_sdk/enums/transcoder_type.rb +20 -0
  224. data/lib/wsc_sdk/enums/wowza_provider.rb +20 -0
  225. data/lib/wsc_sdk/errors.rb +115 -0
  226. data/lib/wsc_sdk/model.rb +515 -0
  227. data/lib/wsc_sdk/model_list.rb +42 -0
  228. data/lib/wsc_sdk/model_template.rb +27 -0
  229. data/lib/wsc_sdk/models/custom_stream_target.rb +34 -0
  230. data/lib/wsc_sdk/models/error.rb +53 -0
  231. data/lib/wsc_sdk/models/live_stream.rb +130 -0
  232. data/lib/wsc_sdk/models/live_stream_connection_code.rb +31 -0
  233. data/lib/wsc_sdk/models/live_stream_state.rb +20 -0
  234. data/lib/wsc_sdk/models/live_stream_stats.rb +20 -0
  235. data/lib/wsc_sdk/models/live_stream_thumbnail_url.rb +20 -0
  236. data/lib/wsc_sdk/models/output.rb +61 -0
  237. data/lib/wsc_sdk/models/output_stream_target.rb +37 -0
  238. data/lib/wsc_sdk/models/stream_target.rb +29 -0
  239. data/lib/wsc_sdk/models/transcoder.rb +135 -0
  240. data/lib/wsc_sdk/models/transcoder_boolean_stat.rb +41 -0
  241. data/lib/wsc_sdk/models/transcoder_connection_code.rb +29 -0
  242. data/lib/wsc_sdk/models/transcoder_float_stat.rb +40 -0
  243. data/lib/wsc_sdk/models/transcoder_integer_stat.rb +40 -0
  244. data/lib/wsc_sdk/models/transcoder_state.rb +31 -0
  245. data/lib/wsc_sdk/models/transcoder_stats.rb +51 -0
  246. data/lib/wsc_sdk/models/transcoder_stream_target_state.rb +29 -0
  247. data/lib/wsc_sdk/models/transcoder_string_stat.rb +40 -0
  248. data/lib/wsc_sdk/models/transcoder_thumbnail_url.rb +29 -0
  249. data/lib/wsc_sdk/models/ull_stream_target.rb +54 -0
  250. data/lib/wsc_sdk/models/wowza_stream_target.rb +60 -0
  251. data/lib/wsc_sdk/modules/api_response.rb +24 -0
  252. data/lib/wsc_sdk/modules/loggable.rb +44 -0
  253. data/lib/wsc_sdk/modules/transcoder_shared_methods.rb +221 -0
  254. data/lib/wsc_sdk/pagination.rb +89 -0
  255. data/lib/wsc_sdk/schema.rb +140 -0
  256. data/lib/wsc_sdk/schema_attribute.rb +349 -0
  257. data/lib/wsc_sdk/templates/custom_stream_target.rb +154 -0
  258. data/lib/wsc_sdk/templates/live_stream.rb +234 -0
  259. data/lib/wsc_sdk/templates/output.rb +133 -0
  260. data/lib/wsc_sdk/templates/transcoder.rb +97 -0
  261. data/lib/wsc_sdk/templates/ull_stream_target.rb +49 -0
  262. data/lib/wsc_sdk/templates/wowza_stream_target.rb +57 -0
  263. data/lib/wsc_sdk/version.rb +7 -0
  264. data/wsc_sdk.gemspec +48 -0
  265. metadata +460 -0
@@ -0,0 +1,44 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Endpoints
6
+
7
+ # An endpoint to manage Custom Stream Targets
8
+ #
9
+ class CustomStreamTargets < WscSdk::Endpoint
10
+
11
+ model_class WscSdk::Models::CustomStreamTarget
12
+
13
+ #---------------------------------------------------------------------------
14
+ # ___ _ _
15
+ # | _ \__ _| |_| |_ ___
16
+ # | _/ _` | _| ' \(_-<
17
+ # |_| \__,_|\__|_||_/__/
18
+ #
19
+ #---------------------------------------------------------------------------
20
+
21
+ # Get the path for the list of models
22
+ #
23
+ # @return [String]
24
+ # The list path.
25
+ #
26
+ def list_path
27
+ [ parent_path, "custom" ].compact.join("/")
28
+ end
29
+
30
+ # Get the path for an individual model.
31
+ #
32
+ # @param id [Any]
33
+ # The unique id of the model.
34
+ #
35
+ # @return [String]
36
+ # The model path.
37
+ #
38
+ def model_path(id)
39
+ [ parent_path, "custom", id ].compact.join("/")
40
+ end
41
+
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,34 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Endpoints
6
+
7
+ # An endpoint to manage Live Streams
8
+ #
9
+ # @example Usage: Listing Live Streams
10
+ #
11
+ # !!!ruby
12
+ # # View the WscSdk::Client documentation for how to establish a client instance.
13
+ # list = client.live_streams
14
+ #
15
+ # list.each do |id, live_stream|
16
+ # puts "#{id}: #{live_stream.name}"
17
+ # ends
18
+ #
19
+ class LiveStreams < WscSdk::Endpoint
20
+
21
+ model_class WscSdk::Models::LiveStream
22
+
23
+ model_action :start, :put, WscSdk::Models::LiveStreamState
24
+ model_action :stop, :put, WscSdk::Models::LiveStreamState
25
+ model_action :reset, :put, WscSdk::Models::LiveStreamState
26
+ model_action :state, :get, WscSdk::Models::LiveStreamState
27
+ model_action :thumbnail_url, :get, WscSdk::Models::LiveStreamThumbnailUrl
28
+ model_action :stats, :get, WscSdk::Models::LiveStreamStats
29
+ model_action :regenerate_connection_code,
30
+ :put, WscSdk::Models::LiveStreamConnectionCode
31
+
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,17 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ require 'wsc_sdk/models/output'
5
+
6
+ module WscSdk
7
+ module Endpoints
8
+
9
+ # An endpoint to manage Output Stream Targets.
10
+ #
11
+ class OutputStreamTargets < WscSdk::Endpoint
12
+
13
+ model_class WscSdk::Models::OutputStreamTarget
14
+
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ require 'wsc_sdk/models/output'
5
+
6
+ module WscSdk
7
+ module Endpoints
8
+
9
+ # An endpoint to manage Outputs.
10
+ #
11
+ class Outputs < WscSdk::Endpoint
12
+
13
+ model_class WscSdk::Models::Output
14
+
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,45 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Endpoints
6
+
7
+ # An endpoint to manage Stream Targets
8
+ #
9
+ class StreamTargets < WscSdk::Endpoint
10
+
11
+ model_class WscSdk::Models::StreamTarget
12
+
13
+ # Only allow the list action to be enabled.
14
+ actions include: :list
15
+
16
+ # Access the /stream_targets/wowza endpoints
17
+ #
18
+ # @return [Wsc::Endpoints::WowzaStreamTargets]
19
+ # An instance of the WowzaStreamTargets endpoint class.
20
+ #
21
+ def wowza
22
+ WscSdk::Endpoints::WowzaStreamTargets.new(self.client, parent_path: self.list_path)
23
+ end
24
+
25
+ # Access the /stream_targets/custom endpoints
26
+ #
27
+ # @return [Wsc::Endpoints::CustomStreamTargets]
28
+ # An instance of the CustomStreamTargets endpoint class.
29
+ #
30
+ def custom
31
+ WscSdk::Endpoints::CustomStreamTargets.new(self.client, parent_path: self.list_path)
32
+ end
33
+
34
+ # Access the /stream_targets/ull endpoints
35
+ #
36
+ # @return [Wsc::Endpoints::UllStreamTargets]
37
+ # An instance of the UllStreamTargets endpoint class.
38
+ #
39
+ def ull
40
+ WscSdk::Endpoints::UllStreamTargets.new(self.client, parent_path: self.list_path)
41
+ end
42
+
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,38 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Endpoints
6
+
7
+ # An endpoint to manage Transcoders
8
+ #
9
+ # @example Usage: Listing Transcoders
10
+ #
11
+ # !!!ruby
12
+ # # View the WscSdk::Client documentation for how to establish a client instance.
13
+ # list = client.transcoders
14
+ #
15
+ # list.each do |id, transcoder|
16
+ # puts "#{id}: #{transcoder.name}"
17
+ # ends
18
+ #
19
+ class Transcoders < WscSdk::Endpoint
20
+
21
+ model_class WscSdk::Models::Transcoder
22
+
23
+ model_action :start, :put, WscSdk::Models::TranscoderState
24
+ model_action :stop, :put, WscSdk::Models::TranscoderState
25
+ model_action :reset, :put, WscSdk::Models::TranscoderState
26
+ model_action :state, :get, WscSdk::Models::TranscoderState
27
+ model_action :thumbnail_url, :get, WscSdk::Models::TranscoderThumbnailUrl
28
+ model_action :stats, :get, WscSdk::Models::TranscoderStats
29
+
30
+ model_action :enable_all_stream_targets,
31
+ :put, WscSdk::Models::TranscoderStreamTargetState
32
+
33
+ model_action :disable_all_stream_targets,
34
+ :put, WscSdk::Models::TranscoderStreamTargetState
35
+
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,44 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Endpoints
6
+
7
+ # An endpoint to manage Ultra Low Latency Stream Targets
8
+ #
9
+ class UllStreamTargets < WscSdk::Endpoint
10
+
11
+ model_class WscSdk::Models::UllStreamTarget
12
+
13
+ #---------------------------------------------------------------------------
14
+ # ___ _ _
15
+ # | _ \__ _| |_| |_ ___
16
+ # | _/ _` | _| ' \(_-<
17
+ # |_| \__,_|\__|_||_/__/
18
+ #
19
+ #---------------------------------------------------------------------------
20
+
21
+ # Get the path for the list of models
22
+ #
23
+ # @return [String]
24
+ # The list path.
25
+ #
26
+ def list_path
27
+ [ parent_path, "ull" ].compact.join("/")
28
+ end
29
+
30
+ # Get the path for an individual model.
31
+ #
32
+ # @param id [Any]
33
+ # The unique id of the model.
34
+ #
35
+ # @return [String]
36
+ # The model path.
37
+ #
38
+ def model_path(id)
39
+ [ parent_path, "ull", id ].compact.join("/")
40
+ end
41
+
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,44 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Endpoints
6
+
7
+ # An endpoint to manage Wowza Stream Targets
8
+ #
9
+ class WowzaStreamTargets < WscSdk::Endpoint
10
+
11
+ model_class WscSdk::Models::WowzaStreamTarget
12
+
13
+ #---------------------------------------------------------------------------
14
+ # ___ _ _
15
+ # | _ \__ _| |_| |_ ___
16
+ # | _/ _` | _| ' \(_-<
17
+ # |_| \__,_|\__|_||_/__/
18
+ #
19
+ #---------------------------------------------------------------------------
20
+
21
+ # Get the path for the list of models
22
+ #
23
+ # @return [String]
24
+ # The list path.
25
+ #
26
+ def list_path
27
+ [ parent_path, "wowza" ].compact.join("/")
28
+ end
29
+
30
+ # Get the path for an individual model.
31
+ #
32
+ # @param id [Any]
33
+ # The unique id of the model.
34
+ #
35
+ # @return [String]
36
+ # The model path.
37
+ #
38
+ def model_path(id)
39
+ [ parent_path, "wowza", id ].compact.join("/")
40
+ end
41
+
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,31 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+
6
+ # A module for defining sets of enumerators and their behaviors.
7
+ #
8
+ module Enums
9
+
10
+ # Get a list of values from constants defined in the enum.
11
+ #
12
+ # @return [Array<Any>]
13
+ # The values defined by the enumerator.
14
+ #
15
+ def values
16
+ _values = []
17
+ self.constants(false).each { |constant| _values << self.const_get(constant) }
18
+ _values
19
+ end
20
+
21
+
22
+ # Convert a string or symbol into the appropriate constant, and generate
23
+ # an exception otherwise.
24
+ #
25
+ def to_constant(name)
26
+ constant_name = name.to_s.upcase.to_sym
27
+ raise "Model type '#{name.to_s}' doesn't exist" unless self.constants.include?(constant_name)
28
+ return self.const_get("#{self.name}::#{constant_name}")
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,20 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Enums
6
+
7
+ # Enumerates the billing modes for a Transcoder or Live Stream.
8
+ #
9
+ module BillingMode
10
+ extend WscSdk::Enums
11
+
12
+ # Define a Pay-as-you-go transcoder
13
+ PAY_AS_YOU_GO = "pay_as_you_go"
14
+
15
+ # Define a 24x7 transcoder
16
+ TWENTY_FOUR_SEVEN = "twentyfour_seven"
17
+
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,58 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Enums
6
+
7
+ # Enumerate the valid user regions for a Trasncoder or Live Stream.
8
+ #
9
+ module BroadcastLocation
10
+ extend WscSdk::Enums
11
+
12
+ # Asia Pacific: Australia
13
+ ASIA_PACIFIC_AUSTRALIA = "asia_pacific_australia"
14
+
15
+ # Asia Pacific: India
16
+ ASIA_PACIFIC_INDIA = "asia_pacific_india"
17
+
18
+ # Asia Pacific: Japan
19
+ ASIA_PACIFIC_JAPAN = "asia_pacific_japan"
20
+
21
+ # Asia Pacific: Singapore
22
+ ASIA_PACIFIC_SINGAPORE = "asia_pacific_singapore"
23
+
24
+ # Asia Pacific: South Korea
25
+ ASIA_PACIFIC_S_KOREA = "asia_pacific_s_korea"
26
+
27
+ # Asia Pacific: Taiwan
28
+ ASIA_PACIFIC_TAIWAN = "asia_pacific_taiwan"
29
+
30
+ # Europe: Belgium
31
+ EU_BELGIUM = "eu_belgium"
32
+
33
+ # Europe: Germany
34
+ EU_GERMANY = "eu_germany"
35
+
36
+ # Europe: Ireland
37
+ EU_IRELAND = "eu_ireland"
38
+
39
+ # South America: Brazil
40
+ SOUTH_AMERICA_BRAZIL = "south_america_brazil"
41
+
42
+ # USA: Iowa
43
+ US_CENTRAL_IOWA = "us_central_iowa"
44
+
45
+ # USA: South Carolina
46
+ US_EAST_S_CAROLINA = "us_east_s_carolina"
47
+
48
+ # USA: Virginia
49
+ US_EAST_VIRGINIA = "us_east_virginia"
50
+
51
+ # USA: California
52
+ US_WEST_CALIFORNIA = "us_west_california"
53
+
54
+ # USA: Oregon
55
+ US_WEST_OREGON = "us_west_oregon"
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,41 @@
1
+ ####> This code and all components © 2015 – 2019 Wowza Media Systems, LLC. All rights reserved.
2
+ ####> This code is licensed pursuant to the BSD 3-Clause License.
3
+
4
+ module WscSdk
5
+ module Enums
6
+
7
+ # Enumerate common buffer sizes within the appropriate range for a Transcoder.
8
+ #
9
+ module BufferSize
10
+ extend WscSdk::Enums
11
+
12
+ # Define no buffer.
13
+ NONE = 0
14
+
15
+ # Define a 1 second buffer
16
+ ONE_SECOND = 1000
17
+
18
+ # Define a 2 second buffer
19
+ TWO_SECONDS = 2000
20
+
21
+ # Define a 3 second buffer
22
+ THREE_SECONDS = 3000
23
+
24
+ # Define a 4 second buffer
25
+ FOUR_SECONDS = 4000
26
+
27
+ # Define a 5 second buffer
28
+ FIVE_SECONDS = 5000
29
+
30
+ # Define a 6 second buffer
31
+ SIX_SECONDS = 6000
32
+
33
+ # Define a 7 second buffer
34
+ SEVEN_SECONDS = 7000
35
+
36
+ # Define a 8 second buffer
37
+ EIGHT_SECONDS = 8000
38
+
39
+ end
40
+ end
41
+ end