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,39 @@
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"
5
+ require_relative "../client" # Get our client
6
+ require_relative "../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, transcoder_id: nil, output_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ transcoders = $client.transcoders
13
+ transcoder_id = arguments[0]
14
+ output_id = arguments[1]
15
+
16
+ # Request the specific transcoder
17
+ transcoder = transcoders.find(transcoder_id)
18
+
19
+ # Handle an API error (in the helpers.rb file)
20
+ handle_api_error(transcoder, "There was an error retrieving the transcoder") unless transcoder.success?
21
+
22
+ # Request the specific output
23
+ output = transcoder.outputs.find(output_id)
24
+
25
+ # Handle an API error (in the helpers.rb file)
26
+ handle_api_error(output, "There was an error retrieving the output") unless output.success?
27
+
28
+ # Delete the output
29
+ result = output.delete
30
+
31
+ # Handle an API error (in the helpers.rb file)
32
+ handle_api_error(result, "There was an error deleting the output") unless result.success?
33
+
34
+ # If we've successfully deleted the output, then output some output about the
35
+ # output. Note that the data for the output still exists locally in the
36
+ # SDK, however the ID has been removed since it no longer references a
37
+ # valid record in the API.
38
+ # Defined in helpers.rb
39
+ output_model_attributes(output, "Output: #{output.name}")
@@ -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
+ require "wsc_sdk"
5
+ require_relative "../client" # Get our client
6
+ require_relative "../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, transcoder_id: nil, output_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ transcoders = $client.transcoders
13
+ transcoder_id = arguments[0]
14
+ output_id = arguments[1]
15
+
16
+ # Request the specific transcoder
17
+ transcoder = transcoders.find(transcoder_id)
18
+
19
+ # Handle an API error (in the helpers.rb file)
20
+ handle_api_error(transcoder, "There was an error retrieving the transcoder") unless transcoder.success?
21
+
22
+ # Request the specific output
23
+ output = transcoder.outputs.find(output_id)
24
+
25
+ # Handle an API error (in the helpers.rb file)
26
+ handle_api_error(output, "There was an error retrieving the output") unless output.success?
27
+
28
+ # If we've successfully found the output then output some output about the
29
+ # output.
30
+ # Defined in helpers.rb
31
+ output_model_attributes(output, "Output: #{output.name}")
@@ -0,0 +1,29 @@
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"
5
+ require_relative "../client" # Get our client
6
+ require_relative "../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, transcoder_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ transcoders = $client.transcoders
13
+ transcoder_id = arguments[0]
14
+
15
+ # Request the specific transcoder
16
+ transcoder = transcoders.find(transcoder_id)
17
+
18
+ # Handle an API error (in the helpers.rb file)
19
+ handle_api_error(transcoder, "There was an error retrieving the transcoder") unless transcoder.success?
20
+
21
+ # Request the outputs list
22
+ list = transcoder.outputs.list
23
+
24
+ # Handle an API error (in the helpers.rb file)
25
+ handle_api_error(list, "There was an error retrieving the outputs list") unless list.success?
26
+
27
+ # Output the list of outputs
28
+ # Defined in helpers.rb
29
+ output_model_list(list, "Outputs for transcoder '#{transcoder.name}':", false, :name)
@@ -0,0 +1,50 @@
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"
5
+ require_relative "../client" # Get our client
6
+ require_relative "../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, transcoder_id: nil, output_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ transcoders = $client.transcoders
13
+ transcoder_id = arguments[0]
14
+ output_id = arguments[1]
15
+
16
+ # Request the specific transcoder
17
+ transcoder = transcoders.find(transcoder_id)
18
+
19
+ # Handle an API error (in the helpers.rb file)
20
+ handle_api_error(transcoder, "There was an error retrieving the transcoder") unless transcoder.success?
21
+
22
+ # Request the specific output
23
+ output = transcoder.outputs.find(output_id)
24
+
25
+ # Handle an API error (in the helpers.rb file)
26
+ handle_api_error(output, "There was an error retrieving the output") unless output.success?
27
+
28
+ # Modify the output
29
+ output.bitrate_audio = 256
30
+ output.bitrate_video = 8000
31
+
32
+ # Make sure the output is valid
33
+ unless output.valid?
34
+ puts "Invalid Output:"
35
+ output.errors.each do |field, message|
36
+ puts " - #{field}: #{message}"
37
+ end
38
+ exit
39
+ end
40
+
41
+ # Get the results of saving the output
42
+ saved = output.save
43
+
44
+ # Handle an API error (in the helpers.rb file)
45
+ handle_api_error(saved, "There was an error updating the output") unless saved.success?
46
+
47
+ # If we've successfully found the output then output some output about the
48
+ # output
49
+ # Defined in helpers.rb
50
+ output_model_attributes(output, "Output: #{output.name}")
@@ -0,0 +1,42 @@
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"
5
+ require_relative "../../client" # Include our client configuration
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present.
9
+ arguments = ask_for_arguments(__FILE__, stream_target_name: nil, primary_url: nil, stream_name: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ custom_stream_targets = $client.stream_targets.custom
13
+
14
+ # Build a RTMP/pull custom_stream_target using a predefined template, and modify a
15
+ # few values
16
+ name = arguments[0]
17
+ primary_url = arguments[1]
18
+ stream_name = arguments[2]
19
+ custom_stream_target_data = WscSdk::Templates::CustomStreamTarget.akamai_hls(name, primary_url, stream_name)
20
+
21
+ # Build the custom_stream_target object
22
+ custom_stream_target = custom_stream_targets.build(custom_stream_target_data)
23
+
24
+ # If the custom_stream_target is invalid, output the messages and exit
25
+ unless (custom_stream_target.valid?)
26
+ puts "Custom Stream Target is invalid:"
27
+
28
+ custom_stream_target.errors.each do |field, message|
29
+ puts " - #{field}: #{message}"
30
+ end
31
+ exit
32
+ end
33
+
34
+ # Get the result of saving the object to the API
35
+ saved = custom_stream_target.save
36
+
37
+ # Handle an API error (in the helpers.rb file)
38
+ handle_api_error(saved, "There was an error creating the custom stream target") unless saved.success?
39
+
40
+ # Output the custom stream target
41
+ # Defined in helpers.rb
42
+ output_model_attributes(custom_stream_target, "Custom Stream Target: #{custom_stream_target.name}")
@@ -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
+ require "wsc_sdk"
5
+ require_relative "../../client" # Get our client
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, custom_stream_target_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ custom_stream_targets = $client.stream_targets.custom
13
+ custom_stream_target_id = arguments[0]
14
+
15
+ # Request the custom_stream_target object
16
+ custom_stream_target = custom_stream_targets.find(custom_stream_target_id)
17
+
18
+ # Handle an API error (in the helpers.rb file)
19
+ handle_api_error(custom_stream_target, "There was an error finding the custom stream target") unless custom_stream_target.success?
20
+
21
+ # Get the result of deleting the object from the API
22
+ deleted = custom_stream_target.delete
23
+
24
+ # Handle an API error (in the helpers.rb file)
25
+ handle_api_error(deleted, "There was an error deleting the custom stream target") unless deleted.success?
26
+
27
+ # If we've successfully deleted the custom_stream_target, then output the details.
28
+ # Note that the data for the output still exists locally in the SDK, however the
29
+ # ID has been removed since it no longer references a valid record in the API
30
+ # Defined in helpers.rb
31
+ output_model_attributes(custom_stream_target, "Custom Stream Target: #{custom_stream_target.name}")
@@ -0,0 +1,23 @@
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"
5
+ require_relative "../../client" # Get our client
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, custom_stream_target_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ custom_stream_targets = $client.stream_targets.custom
13
+ custom_stream_target_id = arguments[0]
14
+
15
+ # Request the transcoder object
16
+ custom_stream_target = custom_stream_targets.find(custom_stream_target_id)
17
+
18
+ # Handle an API error (in the helpers.rb file)
19
+ handle_api_error(custom_stream_target, "There was an error finding the Custom stream target") unless custom_stream_target.success?
20
+
21
+ # Output the custom stream target
22
+ # Defined in helpers.rb
23
+ output_model_attributes(custom_stream_target, "Custom Stream Target: #{custom_stream_target.name}")
@@ -0,0 +1,24 @@
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"
5
+ require_relative "../../client" # Get our client
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, pagination_page: 1, pagination_per_page: 25)
10
+
11
+ # Extract some data into convenience variables
12
+ stream_targets_custom = $client.stream_targets.custom
13
+ page = arguments[0] # First argument is the page number (default: 1)
14
+ per_page = arguments[1] # Second argument is the items per page (default: 25, max: 1000)
15
+
16
+ # Request the list of custom stream targets using pagination parameters passed into the example.
17
+ list = stream_targets_custom.list(pagination: { page: page.to_i, per_page: per_page.to_i })
18
+
19
+ # Handle an API error (in the helpers.rb file)
20
+ handle_api_error(list, "There was an error retrieving the list of the Custom stream targets") unless list.success?
21
+
22
+ # Output the list of stream_targets_custom
23
+ # Defined in helpers.rb
24
+ output_model_list(list, "Custom Stream Targets: #{list.keys.length}", true, :name)
@@ -0,0 +1,43 @@
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"
5
+ require_relative "../../client" # Get our client
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, custom_stream_target_id: nil, new_stream_target_name: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ custom_stream_targets = $client.stream_targets.custom
13
+ custom_stream_target_id = arguments[0]
14
+ name = arguments[1]
15
+
16
+ # Request the custom_stream_target object
17
+ custom_stream_target = custom_stream_targets.find(custom_stream_target_id)
18
+
19
+ # Handle an API error (in the helpers.rb file)
20
+ handle_api_error(custom_stream_target, "There was an error finding the custom stream target") unless custom_stream_target.success?
21
+
22
+ # Update the custom_stream_target
23
+ custom_stream_target.name = "My updated SDK custom_stream_target"
24
+
25
+ # If the custom_stream_target is invalid, output the messages and exit
26
+ unless (custom_stream_target.valid?)
27
+ puts "Custom Stream Target is invalid:"
28
+
29
+ custom_stream_target.errors.each do |field, message|
30
+ puts " - #{field}: #{message}"
31
+ end
32
+ exit
33
+ end
34
+
35
+ # Get the result of saving the object to the API
36
+ saved = custom_stream_target.save
37
+
38
+ # Handle an API error (in the helpers.rb file)
39
+ handle_api_error(saved, "There was an error saving the custom stream target") unless saved.success?
40
+
41
+ # Output the custom_stream_target details
42
+ # Defined in helpers.rb
43
+ output_model_attributes(custom_stream_target, "Custom Stream Target: #{custom_stream_target.name}")
@@ -0,0 +1,24 @@
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"
5
+ require_relative "../client" # Get our client
6
+ require_relative "../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, pagination_page: 1, pagination_per_page: 25)
10
+
11
+ # Extract some data into convenience variables
12
+ stream_targets = $client.stream_targets
13
+ page = arguments[0] # First argument is the page number (default: 1)
14
+ per_page = arguments[1] # Second argument is the items per page (default: 25, max: 1000)
15
+
16
+ # Request the list of stream_targets using pagination
17
+ list = stream_targets.list(pagination: { page: page.to_i, per_page: per_page.to_i })
18
+
19
+ # Handle an API error (in the helpers.rb file)
20
+ handle_api_error(list, "There was an error retrieving the list of stream targets") unless list.success?
21
+
22
+ # Output the list of stream_targets
23
+ # Defined in helpers.rb
24
+ output_model_list(list, "Stream Targets: #{list.keys.length}", true, :name)
@@ -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
+ require "wsc_sdk"
5
+ require_relative "../../client" # Include our client configuration
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present.
9
+ arguments = ask_for_arguments(__FILE__, stream_target_name: nil, source_url: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ ull_stream_targets = $client.stream_targets.ull
13
+
14
+ # Build a RTMP/pull ull_stream_target using a predefined template, and modify a
15
+ # few values
16
+ name = arguments[0]
17
+ source_url = arguments[1]
18
+ ull_stream_target_data = WscSdk::Templates::UllStreamTarget.pull(name, source_url)
19
+
20
+ # Build the ull_stream_target object
21
+ ull_stream_target = ull_stream_targets.build(ull_stream_target_data)
22
+
23
+ # If the ull_stream_target is invalid, output the messages and exit
24
+ unless (ull_stream_target.valid?)
25
+ puts "ULL Stream Target is invalid:"
26
+
27
+ ull_stream_target.errors.each do |field, message|
28
+ puts " - #{field}: #{message}"
29
+ end
30
+ exit
31
+ end
32
+
33
+ # Get the result of saving the object to the API
34
+ saved = ull_stream_target.save
35
+
36
+ # Handle an API error (in the helpers.rb file)
37
+ handle_api_error(saved, "There was an error creating the ull stream target") unless saved.success?
38
+
39
+ # Output the ULL stream target
40
+ # Defined in helpers.rb
41
+ output_model_attributes(ull_stream_target, "ULL Stream Target: #{ull_stream_target.name}")
@@ -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
+ require "wsc_sdk"
5
+ require_relative "../../client" # Get our client
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, ull_stream_target_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ ull_stream_targets = $client.stream_targets.ull
13
+ ull_stream_target_id = arguments[0]
14
+
15
+ # Request the ull_stream_target object
16
+ ull_stream_target = ull_stream_targets.find(ull_stream_target_id)
17
+
18
+ # Handle an API error (in the helpers.rb file)
19
+ handle_api_error(ull_stream_target, "There was an error finding the ull stream target") unless ull_stream_target.success?
20
+
21
+ # Get the result of deleting the object from the API
22
+ deleted = ull_stream_target.delete
23
+
24
+ # Handle an API error (in the helpers.rb file)
25
+ handle_api_error(deleted, "There was an error deleting the ull stream target") unless deleted.success?
26
+
27
+ # If we've successfully deleted the ull_stream_target, then output the details.
28
+ # Note that the data for the output still exists locally in the SDK, however the
29
+ # ID has been removed since it no longer references a valid record in the API.
30
+ # Defined in helpers.rb
31
+ output_model_attributes(ull_stream_target, "Ull Stream Target: #{ull_stream_target.name}")
@@ -0,0 +1,23 @@
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"
5
+ require_relative "../../client" # Get our client
6
+ require_relative "../../helpers" # Include some helpers to make the code more direct
7
+
8
+ # Ensure the args passed in are present
9
+ arguments = ask_for_arguments(__FILE__, ull_stream_target_id: nil)
10
+
11
+ # Extract some data into convenience variables
12
+ ull_stream_targets = $client.stream_targets.ull
13
+ ull_stream_target_id = arguments[0]
14
+
15
+ # Request the ull stream target object
16
+ ull_stream_target = ull_stream_targets.find(ull_stream_target_id)
17
+
18
+ # Handle an API error (in the helpers.rb file)
19
+ handle_api_error(ull_stream_target, "There was an error finding the Wowza stream target") unless ull_stream_target.success?
20
+
21
+ # Output the ULL stream target
22
+ # Defined in helpers.rb
23
+ output_model_attributes(ull_stream_target, "Ull Stream Target: #{ull_stream_target.name}")