multi_video_streaming 1.0.0.beta → 1.0.1.beta

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0c1ae1d10ba98cf2adfd9db15e18956c5ec601e0afdd47f4857c5313d5b5661c
4
- data.tar.gz: e972c5a015cb6e813c9423d21a0993646aacc807b549797f6db638f3686823c4
3
+ metadata.gz: 0f823ff71e880e3e7efce69dcbdb48456176327e2f0731b9d40d2870d23f0b71
4
+ data.tar.gz: 9807632350465257894274a8818f498d5593b19757ab59db1f063c8fa26ccc6a
5
5
  SHA512:
6
- metadata.gz: 1feb06fa08e5ec6775c208ea859371083956b99d95c71b419b040823cfa307156c1acaeb110ae012bf12c6d573636ef800752d3fb3ed3ed74415ecb6db1bac2f
7
- data.tar.gz: a4cf1f7c854d9b3b4838e459c75417441078fccc2ac2b09ff02751855d29579126529a701efc7303da03ea5a96604da6ca8d746e2b5158b7da75a610b1c99982
6
+ metadata.gz: 8e4cd7670fd8b64ccc9f7b1ccb49ae6180cfb966f625b9942075b58dc9e2999b8c7dfbb9d48dc21b32ba1e2256af194e793feeaf29616b6875f48fcad4465412
7
+ data.tar.gz: 104882165a54cd6bc82b918b67b566cc5965cd492fc7f851a1de471283443cf00836d71c99d2f39f379c792020513681694af2f343407270e3d3aea8119fb70b
@@ -110,6 +110,7 @@ module MultiVideoStreaming
110
110
  }
111
111
  end
112
112
 
113
+ MultiVideoStreaming::Helpers::SortFilesArrayByLabel.sort(array: files)
113
114
  response["files"] = files
114
115
  status = STATUS_EQUIVALENT[response["status"].to_s]
115
116
 
@@ -29,17 +29,18 @@ module MultiVideoStreaming
29
29
  response = Aws::S3::Resource.new().bucket(bucket).object(video_id)
30
30
  video_url = response.public_url
31
31
 
32
+ url_signed = generate_presign_url(bucket: bucket, key: video_id)
32
33
  data = {
33
34
  "key": response.key,
34
35
  "title": response.key,
35
36
  "status": STATUS_EQUIVALENT[:true],
36
37
  "files": [
37
38
  {
38
- file: video_url
39
+ file: url_signed
39
40
  }
40
41
  ],
41
42
  "available_resolutions": [],
42
- "direct_play": video_url,
43
+ "direct_play": url_signed,
43
44
  "date_uploaded": response.data.last_modified
44
45
  }
45
46
 
@@ -139,6 +140,11 @@ module MultiVideoStreaming
139
140
  Aws.config.update(credentials: credentials, region: region, force_path_style: true)
140
141
  end
141
142
  end
143
+
144
+ def generate_presign_url(bucket:, key:)
145
+ signer = Aws::S3::Presigner.new
146
+ signer.presigned_url(:get_object, bucket: bucket, key: key, expires_in: 900)
147
+ end
142
148
  end
143
149
  end
144
150
  end
@@ -112,6 +112,7 @@ module MultiVideoStreaming
112
112
  end
113
113
  end
114
114
 
115
+ MultiVideoStreaming::Helpers::SortFilesArrayByLabel.sort(array: files)
115
116
  response["files"] = files
116
117
  response["available_resolutions"] = available_resolutions
117
118
  response["status"] = STATUS_EQUIVALENT[response["status"]]
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MultiVideoStreaming
4
+ module Helpers
5
+ class SortFilesArrayByLabel
6
+ def self.sort(array:)
7
+ array.sort! { |lastFile, nextFile| /[\d]+/.match(nextFile[:label])[0].to_i <=> /[\d]+/.match(lastFile[:label])[0].to_i }
8
+ end
9
+ end
10
+ end
11
+ end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "multi_video_streaming/helpers/title_from_url.rb"
4
+ require "multi_video_streaming/helpers/sort_files_array_by_label.rb"
4
5
  require "multi_video_streaming/helpers/get_default_error_message.rb"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MultiVideoStreaming
4
- VERSION = "1.0.0.beta"
4
+ VERSION = "1.0.1.beta"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multi_video_streaming
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.beta
4
+ version: 1.0.1.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henrique Schmeller
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2022-08-10 00:00:00.000000000 Z
13
+ date: 2022-09-29 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rspec
@@ -89,6 +89,7 @@ files:
89
89
  - lib/multi_video_streaming/factories/drive.rb
90
90
  - lib/multi_video_streaming/helpers.rb
91
91
  - lib/multi_video_streaming/helpers/get_default_error_message.rb
92
+ - lib/multi_video_streaming/helpers/sort_files_array_by_label.rb
92
93
  - lib/multi_video_streaming/helpers/title_from_url.rb
93
94
  - lib/multi_video_streaming/platforms_support.rb
94
95
  - lib/multi_video_streaming/protocols.rb