mux_ruby 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +8 -0
  3. data/Gemfile.lock +79 -0
  4. data/LICENSE +7 -0
  5. data/README.md +121 -0
  6. data/Rakefile +10 -0
  7. data/docs/AbridgedVideoView.md +18 -0
  8. data/docs/Asset.md +27 -0
  9. data/docs/AssetErrors.md +9 -0
  10. data/docs/AssetMaster.md +9 -0
  11. data/docs/AssetResponse.md +8 -0
  12. data/docs/AssetStaticRenditions.md +9 -0
  13. data/docs/AssetStaticRenditionsFiles.md +13 -0
  14. data/docs/AssetsApi.md +476 -0
  15. data/docs/BreakdownValue.md +12 -0
  16. data/docs/CreateAssetRequest.md +13 -0
  17. data/docs/CreateLiveStreamRequest.md +9 -0
  18. data/docs/CreatePlaybackIDRequest.md +8 -0
  19. data/docs/CreatePlaybackIDResponse.md +8 -0
  20. data/docs/CreateUploadRequest.md +10 -0
  21. data/docs/DirectUploadsApi.md +214 -0
  22. data/docs/Error.md +15 -0
  23. data/docs/ErrorsApi.md +64 -0
  24. data/docs/ExportsApi.md +56 -0
  25. data/docs/FilterValue.md +9 -0
  26. data/docs/FiltersApi.md +118 -0
  27. data/docs/GetAssetInputInfoResponse.md +8 -0
  28. data/docs/GetAssetPlaybackIDResponse.md +8 -0
  29. data/docs/GetMetricTimeseriesDataResponse.md +10 -0
  30. data/docs/GetOverallValuesResponse.md +10 -0
  31. data/docs/InputFile.md +9 -0
  32. data/docs/InputInfo.md +9 -0
  33. data/docs/InputSettings.md +10 -0
  34. data/docs/InputSettingsOverlaySettings.md +14 -0
  35. data/docs/InputTrack.md +18 -0
  36. data/docs/Insight.md +13 -0
  37. data/docs/ListAllMetricValuesResponse.md +10 -0
  38. data/docs/ListAssetsResponse.md +8 -0
  39. data/docs/ListBreakdownValuesResponse.md +10 -0
  40. data/docs/ListErrorsResponse.md +10 -0
  41. data/docs/ListExportsResponse.md +10 -0
  42. data/docs/ListFilterValuesResponse.md +10 -0
  43. data/docs/ListFiltersResponse.md +10 -0
  44. data/docs/ListFiltersResponseData.md +9 -0
  45. data/docs/ListInsightsResponse.md +10 -0
  46. data/docs/ListLiveStreamsResponse.md +8 -0
  47. data/docs/ListSigningKeysResponse.md +8 -0
  48. data/docs/ListUploadsResponse.md +8 -0
  49. data/docs/ListVideoViewsResponse.md +10 -0
  50. data/docs/LiveStream.md +17 -0
  51. data/docs/LiveStreamResponse.md +8 -0
  52. data/docs/LiveStreamsApi.md +420 -0
  53. data/docs/Metric.md +12 -0
  54. data/docs/MetricsApi.md +322 -0
  55. data/docs/OverallValues.md +11 -0
  56. data/docs/PlaybackID.md +9 -0
  57. data/docs/PlaybackPolicy.md +7 -0
  58. data/docs/Score.md +13 -0
  59. data/docs/SignalLiveStreamCompleteResponse.md +8 -0
  60. data/docs/SigningKey.md +10 -0
  61. data/docs/SigningKeyResponse.md +8 -0
  62. data/docs/Track.md +17 -0
  63. data/docs/URLSigningKeysApi.md +215 -0
  64. data/docs/UpdateAssetMP4SupportRequest.md +8 -0
  65. data/docs/Upload.md +15 -0
  66. data/docs/UploadError.md +9 -0
  67. data/docs/UploadResponse.md +8 -0
  68. data/docs/VideoView.md +117 -0
  69. data/docs/VideoViewEvent.md +11 -0
  70. data/docs/VideoViewResponse.md +9 -0
  71. data/docs/VideoViewsApi.md +126 -0
  72. data/examples/data/exercise-errors.rb +23 -0
  73. data/examples/data/exercise-exports.rb +22 -0
  74. data/examples/data/exercise-filters.rb +29 -0
  75. data/examples/data/exercise-metrics.rb +52 -0
  76. data/examples/data/exercise-video-views.rb +30 -0
  77. data/examples/video/create-live-stream.rb +25 -0
  78. data/examples/video/exercise-assets.rb +95 -0
  79. data/examples/video/exercise-live-streams.rb +89 -0
  80. data/examples/video/exercise-signing-keys.rb +46 -0
  81. data/examples/video/exercise-uploads.rb +49 -0
  82. data/examples/video/ingest.rb +37 -0
  83. data/examples/video/list-everything.rb +48 -0
  84. data/github-ruby-sdk.png +0 -0
  85. data/lib/mux_ruby/api/assets_api.rb +507 -0
  86. data/lib/mux_ruby/api/direct_uploads_api.rb +224 -0
  87. data/lib/mux_ruby/api/errors_api.rb +69 -0
  88. data/lib/mux_ruby/api/exports_api.rb +63 -0
  89. data/lib/mux_ruby/api/filters_api.rb +128 -0
  90. data/lib/mux_ruby/api/live_streams_api.rb +440 -0
  91. data/lib/mux_ruby/api/metrics_api.rb +393 -0
  92. data/lib/mux_ruby/api/url_signing_keys_api.rb +219 -0
  93. data/lib/mux_ruby/api/video_views_api.rb +140 -0
  94. data/lib/mux_ruby/api_client.rb +400 -0
  95. data/lib/mux_ruby/api_error.rb +44 -0
  96. data/lib/mux_ruby/configuration.rb +244 -0
  97. data/lib/mux_ruby/models/abridged_video_view.rb +274 -0
  98. data/lib/mux_ruby/models/asset.rb +409 -0
  99. data/lib/mux_ruby/models/asset_errors.rb +195 -0
  100. data/lib/mux_ruby/models/asset_master.rb +193 -0
  101. data/lib/mux_ruby/models/asset_response.rb +184 -0
  102. data/lib/mux_ruby/models/asset_static_renditions.rb +232 -0
  103. data/lib/mux_ruby/models/asset_static_renditions_files.rb +279 -0
  104. data/lib/mux_ruby/models/breakdown_value.rb +220 -0
  105. data/lib/mux_ruby/models/create_asset_request.rb +267 -0
  106. data/lib/mux_ruby/models/create_live_stream_request.rb +195 -0
  107. data/lib/mux_ruby/models/create_playback_id_request.rb +184 -0
  108. data/lib/mux_ruby/models/create_playback_id_response.rb +184 -0
  109. data/lib/mux_ruby/models/create_upload_request.rb +235 -0
  110. data/lib/mux_ruby/models/error.rb +247 -0
  111. data/lib/mux_ruby/models/filter_value.rb +193 -0
  112. data/lib/mux_ruby/models/get_asset_input_info_response.rb +186 -0
  113. data/lib/mux_ruby/models/get_asset_playback_id_response.rb +184 -0
  114. data/lib/mux_ruby/models/get_metric_timeseries_data_response.rb +206 -0
  115. data/lib/mux_ruby/models/get_overall_values_response.rb +204 -0
  116. data/lib/mux_ruby/models/input_file.rb +195 -0
  117. data/lib/mux_ruby/models/input_info.rb +193 -0
  118. data/lib/mux_ruby/models/input_settings.rb +203 -0
  119. data/lib/mux_ruby/models/input_settings_overlay_settings.rb +238 -0
  120. data/lib/mux_ruby/models/input_track.rb +274 -0
  121. data/lib/mux_ruby/models/insight.rb +229 -0
  122. data/lib/mux_ruby/models/list_all_metric_values_response.rb +206 -0
  123. data/lib/mux_ruby/models/list_assets_response.rb +186 -0
  124. data/lib/mux_ruby/models/list_breakdown_values_response.rb +206 -0
  125. data/lib/mux_ruby/models/list_errors_response.rb +206 -0
  126. data/lib/mux_ruby/models/list_exports_response.rb +206 -0
  127. data/lib/mux_ruby/models/list_filter_values_response.rb +206 -0
  128. data/lib/mux_ruby/models/list_filters_response.rb +204 -0
  129. data/lib/mux_ruby/models/list_filters_response_data.rb +197 -0
  130. data/lib/mux_ruby/models/list_insights_response.rb +206 -0
  131. data/lib/mux_ruby/models/list_live_streams_response.rb +186 -0
  132. data/lib/mux_ruby/models/list_signing_keys_response.rb +186 -0
  133. data/lib/mux_ruby/models/list_uploads_response.rb +186 -0
  134. data/lib/mux_ruby/models/list_video_views_response.rb +206 -0
  135. data/lib/mux_ruby/models/live_stream.rb +269 -0
  136. data/lib/mux_ruby/models/live_stream_response.rb +184 -0
  137. data/lib/mux_ruby/models/metric.rb +220 -0
  138. data/lib/mux_ruby/models/overall_values.rb +211 -0
  139. data/lib/mux_ruby/models/playback_id.rb +193 -0
  140. data/lib/mux_ruby/models/playback_policy.rb +31 -0
  141. data/lib/mux_ruby/models/score.rb +231 -0
  142. data/lib/mux_ruby/models/signal_live_stream_complete_response.rb +184 -0
  143. data/lib/mux_ruby/models/signing_key.rb +202 -0
  144. data/lib/mux_ruby/models/signing_key_response.rb +184 -0
  145. data/lib/mux_ruby/models/track.rb +265 -0
  146. data/lib/mux_ruby/models/update_asset_mp4_support_request.rb +219 -0
  147. data/lib/mux_ruby/models/upload.rb +311 -0
  148. data/lib/mux_ruby/models/upload_error.rb +194 -0
  149. data/lib/mux_ruby/models/upload_response.rb +184 -0
  150. data/lib/mux_ruby/models/video_view.rb +1167 -0
  151. data/lib/mux_ruby/models/video_view_event.rb +211 -0
  152. data/lib/mux_ruby/models/video_view_response.rb +195 -0
  153. data/lib/mux_ruby/version.rb +8 -0
  154. data/lib/mux_ruby.rb +97 -0
  155. data/mux_ruby.gemspec +38 -0
  156. data/spec/api/assets_api_spec.rb +136 -0
  157. data/spec/api/direct_uploads_api_spec.rb +74 -0
  158. data/spec/api/errors_api_spec.rb +41 -0
  159. data/spec/api/exports_api_spec.rb +39 -0
  160. data/spec/api/filters_api_spec.rb +55 -0
  161. data/spec/api/live_streams_api_spec.rb +122 -0
  162. data/spec/api/metrics_api_spec.rb +110 -0
  163. data/spec/api/url_signing_keys_api_spec.rb +76 -0
  164. data/spec/api/video_views_api_spec.rb +58 -0
  165. data/spec/api_client_spec.rb +219 -0
  166. data/spec/configuration_spec.rb +35 -0
  167. data/spec/models/abridged_video_view_spec.rb +94 -0
  168. data/spec/models/asset_errors_spec.rb +40 -0
  169. data/spec/models/asset_master_spec.rb +40 -0
  170. data/spec/models/asset_response_spec.rb +34 -0
  171. data/spec/models/asset_spec.rb +156 -0
  172. data/spec/models/asset_static_renditions_files_spec.rb +72 -0
  173. data/spec/models/asset_static_renditions_spec.rb +44 -0
  174. data/spec/models/breakdown_value_spec.rb +58 -0
  175. data/spec/models/create_asset_request_spec.rb +68 -0
  176. data/spec/models/create_live_stream_request_spec.rb +40 -0
  177. data/spec/models/create_playback_id_request_spec.rb +34 -0
  178. data/spec/models/create_playback_id_response_spec.rb +34 -0
  179. data/spec/models/create_upload_request_spec.rb +46 -0
  180. data/spec/models/error_spec.rb +76 -0
  181. data/spec/models/filter_value_spec.rb +40 -0
  182. data/spec/models/get_asset_input_info_response_spec.rb +34 -0
  183. data/spec/models/get_asset_playback_id_response_spec.rb +34 -0
  184. data/spec/models/get_metric_timeseries_data_response_spec.rb +46 -0
  185. data/spec/models/get_overall_values_response_spec.rb +46 -0
  186. data/spec/models/input_file_spec.rb +40 -0
  187. data/spec/models/input_info_spec.rb +40 -0
  188. data/spec/models/input_settings_overlay_settings_spec.rb +70 -0
  189. data/spec/models/input_settings_spec.rb +46 -0
  190. data/spec/models/input_track_spec.rb +94 -0
  191. data/spec/models/insight_spec.rb +64 -0
  192. data/spec/models/list_all_metric_values_response_spec.rb +46 -0
  193. data/spec/models/list_assets_response_spec.rb +34 -0
  194. data/spec/models/list_breakdown_values_response_spec.rb +46 -0
  195. data/spec/models/list_errors_response_spec.rb +46 -0
  196. data/spec/models/list_exports_response_spec.rb +46 -0
  197. data/spec/models/list_filter_values_response_spec.rb +46 -0
  198. data/spec/models/list_filters_response_data_spec.rb +40 -0
  199. data/spec/models/list_filters_response_spec.rb +46 -0
  200. data/spec/models/list_insights_response_spec.rb +46 -0
  201. data/spec/models/list_live_streams_response_spec.rb +34 -0
  202. data/spec/models/list_signing_keys_response_spec.rb +34 -0
  203. data/spec/models/list_uploads_response_spec.rb +34 -0
  204. data/spec/models/list_video_views_response_spec.rb +46 -0
  205. data/spec/models/live_stream_response_spec.rb +34 -0
  206. data/spec/models/live_stream_spec.rb +88 -0
  207. data/spec/models/metric_spec.rb +58 -0
  208. data/spec/models/overall_values_spec.rb +52 -0
  209. data/spec/models/playback_id_spec.rb +40 -0
  210. data/spec/models/playback_policy_spec.rb +28 -0
  211. data/spec/models/score_spec.rb +64 -0
  212. data/spec/models/signal_live_stream_complete_response_spec.rb +34 -0
  213. data/spec/models/signing_key_response_spec.rb +34 -0
  214. data/spec/models/signing_key_spec.rb +46 -0
  215. data/spec/models/track_spec.rb +88 -0
  216. data/spec/models/update_asset_mp4_support_request_spec.rb +38 -0
  217. data/spec/models/upload_error_spec.rb +40 -0
  218. data/spec/models/upload_response_spec.rb +34 -0
  219. data/spec/models/upload_spec.rb +80 -0
  220. data/spec/models/video_view_event_spec.rb +52 -0
  221. data/spec/models/video_view_response_spec.rb +40 -0
  222. data/spec/models/video_view_spec.rb +688 -0
  223. data/spec/spec_helper.rb +104 -0
  224. metadata +514 -0
@@ -0,0 +1,1167 @@
1
+ =begin
2
+ # Mux Ruby - Copyright 2019 Mux Inc.
3
+ # NOTE: This file is auto generated. Do not edit this file manually.
4
+ =end
5
+
6
+ require 'date'
7
+
8
+ module MuxRuby
9
+ class VideoView
10
+ attr_accessor :view_total_upscaling
11
+
12
+ attr_accessor :preroll_ad_asset_hostname
13
+
14
+ attr_accessor :player_source_domain
15
+
16
+ attr_accessor :region
17
+
18
+ attr_accessor :viewer_user_agent
19
+
20
+ attr_accessor :preroll_requested
21
+
22
+ attr_accessor :page_type
23
+
24
+ attr_accessor :startup_score
25
+
26
+ attr_accessor :view_seek_duration
27
+
28
+ attr_accessor :country_name
29
+
30
+ attr_accessor :player_source_height
31
+
32
+ attr_accessor :longitude
33
+
34
+ attr_accessor :buffering_count
35
+
36
+ attr_accessor :video_duration
37
+
38
+ attr_accessor :player_source_type
39
+
40
+ attr_accessor :city
41
+
42
+ attr_accessor :view_id
43
+
44
+ attr_accessor :platform_description
45
+
46
+ attr_accessor :video_startup_preroll_request_time
47
+
48
+ attr_accessor :viewer_device_name
49
+
50
+ attr_accessor :video_series
51
+
52
+ attr_accessor :viewer_application_name
53
+
54
+ attr_accessor :updated_at
55
+
56
+ attr_accessor :view_total_content_playback_time
57
+
58
+ attr_accessor :cdn
59
+
60
+ attr_accessor :player_instance_id
61
+
62
+ attr_accessor :video_language
63
+
64
+ attr_accessor :player_source_width
65
+
66
+ attr_accessor :player_error_message
67
+
68
+ attr_accessor :player_mux_plugin_version
69
+
70
+ attr_accessor :watched
71
+
72
+ attr_accessor :playback_score
73
+
74
+ attr_accessor :page_url
75
+
76
+ attr_accessor :metro
77
+
78
+ attr_accessor :view_max_request_latency
79
+
80
+ attr_accessor :requests_for_first_preroll
81
+
82
+ attr_accessor :view_total_downscaling
83
+
84
+ attr_accessor :latitude
85
+
86
+ attr_accessor :player_source_host_name
87
+
88
+ attr_accessor :inserted_at
89
+
90
+ attr_accessor :view_end
91
+
92
+ attr_accessor :mux_embed_version
93
+
94
+ attr_accessor :player_language
95
+
96
+ attr_accessor :page_load_time
97
+
98
+ attr_accessor :viewer_device_category
99
+
100
+ attr_accessor :video_startup_preroll_load_time
101
+
102
+ attr_accessor :player_version
103
+
104
+ attr_accessor :watch_time
105
+
106
+ attr_accessor :player_source_stream_type
107
+
108
+ attr_accessor :preroll_ad_tag_hostname
109
+
110
+ attr_accessor :viewer_device_manufacturer
111
+
112
+ attr_accessor :rebuffering_score
113
+
114
+ attr_accessor :experiment_name
115
+
116
+ attr_accessor :viewer_os_version
117
+
118
+ attr_accessor :player_preload
119
+
120
+ attr_accessor :buffering_duration
121
+
122
+ attr_accessor :player_view_count
123
+
124
+ attr_accessor :player_software
125
+
126
+ attr_accessor :player_load_time
127
+
128
+ attr_accessor :platform_summary
129
+
130
+ attr_accessor :video_encoding_variant
131
+
132
+ attr_accessor :player_width
133
+
134
+ attr_accessor :view_seek_count
135
+
136
+ attr_accessor :viewer_experience_score
137
+
138
+ attr_accessor :view_error_id
139
+
140
+ attr_accessor :video_variant_name
141
+
142
+ attr_accessor :preroll_played
143
+
144
+ attr_accessor :viewer_application_engine
145
+
146
+ attr_accessor :viewer_os_architecture
147
+
148
+ attr_accessor :player_error_code
149
+
150
+ attr_accessor :buffering_rate
151
+
152
+ attr_accessor :events
153
+
154
+ attr_accessor :player_name
155
+
156
+ attr_accessor :view_start
157
+
158
+ attr_accessor :view_average_request_throughput
159
+
160
+ attr_accessor :video_producer
161
+
162
+ attr_accessor :error_type_id
163
+
164
+ attr_accessor :mux_viewer_id
165
+
166
+ attr_accessor :video_id
167
+
168
+ attr_accessor :continent_code
169
+
170
+ attr_accessor :session_id
171
+
172
+ attr_accessor :exit_before_video_start
173
+
174
+ attr_accessor :video_content_type
175
+
176
+ attr_accessor :viewer_os_family
177
+
178
+ attr_accessor :player_poster
179
+
180
+ attr_accessor :view_average_request_latency
181
+
182
+ attr_accessor :video_variant_id
183
+
184
+ attr_accessor :player_source_duration
185
+
186
+ attr_accessor :player_source_url
187
+
188
+ attr_accessor :mux_api_version
189
+
190
+ attr_accessor :video_title
191
+
192
+ attr_accessor :id
193
+
194
+ attr_accessor :short_time
195
+
196
+ attr_accessor :rebuffer_percentage
197
+
198
+ attr_accessor :time_to_first_frame
199
+
200
+ attr_accessor :viewer_user_id
201
+
202
+ attr_accessor :video_stream_type
203
+
204
+ attr_accessor :player_startup_time
205
+
206
+ attr_accessor :viewer_application_version
207
+
208
+ attr_accessor :view_max_downscale_percentage
209
+
210
+ attr_accessor :view_max_upscale_percentage
211
+
212
+ attr_accessor :country_code
213
+
214
+ attr_accessor :used_fullscreen
215
+
216
+ attr_accessor :isp
217
+
218
+ attr_accessor :property_id
219
+
220
+ attr_accessor :player_autoplay
221
+
222
+ attr_accessor :player_height
223
+
224
+ attr_accessor :asn
225
+
226
+ attr_accessor :quality_score
227
+
228
+ attr_accessor :player_software_version
229
+
230
+ # Attribute mapping from ruby-style variable name to JSON key.
231
+ def self.attribute_map
232
+ {
233
+ :'view_total_upscaling' => :'view_total_upscaling',
234
+ :'preroll_ad_asset_hostname' => :'preroll_ad_asset_hostname',
235
+ :'player_source_domain' => :'player_source_domain',
236
+ :'region' => :'region',
237
+ :'viewer_user_agent' => :'viewer_user_agent',
238
+ :'preroll_requested' => :'preroll_requested',
239
+ :'page_type' => :'page_type',
240
+ :'startup_score' => :'startup_score',
241
+ :'view_seek_duration' => :'view_seek_duration',
242
+ :'country_name' => :'country_name',
243
+ :'player_source_height' => :'player_source_height',
244
+ :'longitude' => :'longitude',
245
+ :'buffering_count' => :'buffering_count',
246
+ :'video_duration' => :'video_duration',
247
+ :'player_source_type' => :'player_source_type',
248
+ :'city' => :'city',
249
+ :'view_id' => :'view_id',
250
+ :'platform_description' => :'platform_description',
251
+ :'video_startup_preroll_request_time' => :'video_startup_preroll_request_time',
252
+ :'viewer_device_name' => :'viewer_device_name',
253
+ :'video_series' => :'video_series',
254
+ :'viewer_application_name' => :'viewer_application_name',
255
+ :'updated_at' => :'updated_at',
256
+ :'view_total_content_playback_time' => :'view_total_content_playback_time',
257
+ :'cdn' => :'cdn',
258
+ :'player_instance_id' => :'player_instance_id',
259
+ :'video_language' => :'video_language',
260
+ :'player_source_width' => :'player_source_width',
261
+ :'player_error_message' => :'player_error_message',
262
+ :'player_mux_plugin_version' => :'player_mux_plugin_version',
263
+ :'watched' => :'watched',
264
+ :'playback_score' => :'playback_score',
265
+ :'page_url' => :'page_url',
266
+ :'metro' => :'metro',
267
+ :'view_max_request_latency' => :'view_max_request_latency',
268
+ :'requests_for_first_preroll' => :'requests_for_first_preroll',
269
+ :'view_total_downscaling' => :'view_total_downscaling',
270
+ :'latitude' => :'latitude',
271
+ :'player_source_host_name' => :'player_source_host_name',
272
+ :'inserted_at' => :'inserted_at',
273
+ :'view_end' => :'view_end',
274
+ :'mux_embed_version' => :'mux_embed_version',
275
+ :'player_language' => :'player_language',
276
+ :'page_load_time' => :'page_load_time',
277
+ :'viewer_device_category' => :'viewer_device_category',
278
+ :'video_startup_preroll_load_time' => :'video_startup_preroll_load_time',
279
+ :'player_version' => :'player_version',
280
+ :'watch_time' => :'watch_time',
281
+ :'player_source_stream_type' => :'player_source_stream_type',
282
+ :'preroll_ad_tag_hostname' => :'preroll_ad_tag_hostname',
283
+ :'viewer_device_manufacturer' => :'viewer_device_manufacturer',
284
+ :'rebuffering_score' => :'rebuffering_score',
285
+ :'experiment_name' => :'experiment_name',
286
+ :'viewer_os_version' => :'viewer_os_version',
287
+ :'player_preload' => :'player_preload',
288
+ :'buffering_duration' => :'buffering_duration',
289
+ :'player_view_count' => :'player_view_count',
290
+ :'player_software' => :'player_software',
291
+ :'player_load_time' => :'player_load_time',
292
+ :'platform_summary' => :'platform_summary',
293
+ :'video_encoding_variant' => :'video_encoding_variant',
294
+ :'player_width' => :'player_width',
295
+ :'view_seek_count' => :'view_seek_count',
296
+ :'viewer_experience_score' => :'viewer_experience_score',
297
+ :'view_error_id' => :'view_error_id',
298
+ :'video_variant_name' => :'video_variant_name',
299
+ :'preroll_played' => :'preroll_played',
300
+ :'viewer_application_engine' => :'viewer_application_engine',
301
+ :'viewer_os_architecture' => :'viewer_os_architecture',
302
+ :'player_error_code' => :'player_error_code',
303
+ :'buffering_rate' => :'buffering_rate',
304
+ :'events' => :'events',
305
+ :'player_name' => :'player_name',
306
+ :'view_start' => :'view_start',
307
+ :'view_average_request_throughput' => :'view_average_request_throughput',
308
+ :'video_producer' => :'video_producer',
309
+ :'error_type_id' => :'error_type_id',
310
+ :'mux_viewer_id' => :'mux_viewer_id',
311
+ :'video_id' => :'video_id',
312
+ :'continent_code' => :'continent_code',
313
+ :'session_id' => :'session_id',
314
+ :'exit_before_video_start' => :'exit_before_video_start',
315
+ :'video_content_type' => :'video_content_type',
316
+ :'viewer_os_family' => :'viewer_os_family',
317
+ :'player_poster' => :'player_poster',
318
+ :'view_average_request_latency' => :'view_average_request_latency',
319
+ :'video_variant_id' => :'video_variant_id',
320
+ :'player_source_duration' => :'player_source_duration',
321
+ :'player_source_url' => :'player_source_url',
322
+ :'mux_api_version' => :'mux_api_version',
323
+ :'video_title' => :'video_title',
324
+ :'id' => :'id',
325
+ :'short_time' => :'short_time',
326
+ :'rebuffer_percentage' => :'rebuffer_percentage',
327
+ :'time_to_first_frame' => :'time_to_first_frame',
328
+ :'viewer_user_id' => :'viewer_user_id',
329
+ :'video_stream_type' => :'video_stream_type',
330
+ :'player_startup_time' => :'player_startup_time',
331
+ :'viewer_application_version' => :'viewer_application_version',
332
+ :'view_max_downscale_percentage' => :'view_max_downscale_percentage',
333
+ :'view_max_upscale_percentage' => :'view_max_upscale_percentage',
334
+ :'country_code' => :'country_code',
335
+ :'used_fullscreen' => :'used_fullscreen',
336
+ :'isp' => :'isp',
337
+ :'property_id' => :'property_id',
338
+ :'player_autoplay' => :'player_autoplay',
339
+ :'player_height' => :'player_height',
340
+ :'asn' => :'asn',
341
+ :'quality_score' => :'quality_score',
342
+ :'player_software_version' => :'player_software_version'
343
+ }
344
+ end
345
+
346
+ # Attribute type mapping.
347
+ def self.openapi_types
348
+ {
349
+ :'view_total_upscaling' => :'String',
350
+ :'preroll_ad_asset_hostname' => :'String',
351
+ :'player_source_domain' => :'String',
352
+ :'region' => :'String',
353
+ :'viewer_user_agent' => :'String',
354
+ :'preroll_requested' => :'BOOLEAN',
355
+ :'page_type' => :'String',
356
+ :'startup_score' => :'String',
357
+ :'view_seek_duration' => :'String',
358
+ :'country_name' => :'String',
359
+ :'player_source_height' => :'Integer',
360
+ :'longitude' => :'String',
361
+ :'buffering_count' => :'String',
362
+ :'video_duration' => :'String',
363
+ :'player_source_type' => :'String',
364
+ :'city' => :'String',
365
+ :'view_id' => :'String',
366
+ :'platform_description' => :'String',
367
+ :'video_startup_preroll_request_time' => :'String',
368
+ :'viewer_device_name' => :'String',
369
+ :'video_series' => :'String',
370
+ :'viewer_application_name' => :'String',
371
+ :'updated_at' => :'String',
372
+ :'view_total_content_playback_time' => :'String',
373
+ :'cdn' => :'String',
374
+ :'player_instance_id' => :'String',
375
+ :'video_language' => :'String',
376
+ :'player_source_width' => :'Integer',
377
+ :'player_error_message' => :'String',
378
+ :'player_mux_plugin_version' => :'String',
379
+ :'watched' => :'BOOLEAN',
380
+ :'playback_score' => :'String',
381
+ :'page_url' => :'String',
382
+ :'metro' => :'String',
383
+ :'view_max_request_latency' => :'String',
384
+ :'requests_for_first_preroll' => :'String',
385
+ :'view_total_downscaling' => :'String',
386
+ :'latitude' => :'String',
387
+ :'player_source_host_name' => :'String',
388
+ :'inserted_at' => :'String',
389
+ :'view_end' => :'String',
390
+ :'mux_embed_version' => :'String',
391
+ :'player_language' => :'String',
392
+ :'page_load_time' => :'Integer',
393
+ :'viewer_device_category' => :'String',
394
+ :'video_startup_preroll_load_time' => :'String',
395
+ :'player_version' => :'String',
396
+ :'watch_time' => :'Integer',
397
+ :'player_source_stream_type' => :'String',
398
+ :'preroll_ad_tag_hostname' => :'String',
399
+ :'viewer_device_manufacturer' => :'String',
400
+ :'rebuffering_score' => :'String',
401
+ :'experiment_name' => :'String',
402
+ :'viewer_os_version' => :'String',
403
+ :'player_preload' => :'BOOLEAN',
404
+ :'buffering_duration' => :'String',
405
+ :'player_view_count' => :'Integer',
406
+ :'player_software' => :'String',
407
+ :'player_load_time' => :'String',
408
+ :'platform_summary' => :'String',
409
+ :'video_encoding_variant' => :'String',
410
+ :'player_width' => :'Integer',
411
+ :'view_seek_count' => :'String',
412
+ :'viewer_experience_score' => :'String',
413
+ :'view_error_id' => :'Integer',
414
+ :'video_variant_name' => :'String',
415
+ :'preroll_played' => :'BOOLEAN',
416
+ :'viewer_application_engine' => :'String',
417
+ :'viewer_os_architecture' => :'String',
418
+ :'player_error_code' => :'String',
419
+ :'buffering_rate' => :'String',
420
+ :'events' => :'Array<VideoViewEvent>',
421
+ :'player_name' => :'String',
422
+ :'view_start' => :'String',
423
+ :'view_average_request_throughput' => :'String',
424
+ :'video_producer' => :'String',
425
+ :'error_type_id' => :'Integer',
426
+ :'mux_viewer_id' => :'String',
427
+ :'video_id' => :'String',
428
+ :'continent_code' => :'String',
429
+ :'session_id' => :'String',
430
+ :'exit_before_video_start' => :'BOOLEAN',
431
+ :'video_content_type' => :'String',
432
+ :'viewer_os_family' => :'String',
433
+ :'player_poster' => :'String',
434
+ :'view_average_request_latency' => :'String',
435
+ :'video_variant_id' => :'String',
436
+ :'player_source_duration' => :'Integer',
437
+ :'player_source_url' => :'String',
438
+ :'mux_api_version' => :'String',
439
+ :'video_title' => :'String',
440
+ :'id' => :'String',
441
+ :'short_time' => :'String',
442
+ :'rebuffer_percentage' => :'String',
443
+ :'time_to_first_frame' => :'String',
444
+ :'viewer_user_id' => :'String',
445
+ :'video_stream_type' => :'String',
446
+ :'player_startup_time' => :'Integer',
447
+ :'viewer_application_version' => :'String',
448
+ :'view_max_downscale_percentage' => :'String',
449
+ :'view_max_upscale_percentage' => :'String',
450
+ :'country_code' => :'String',
451
+ :'used_fullscreen' => :'BOOLEAN',
452
+ :'isp' => :'String',
453
+ :'property_id' => :'Integer',
454
+ :'player_autoplay' => :'BOOLEAN',
455
+ :'player_height' => :'Integer',
456
+ :'asn' => :'Integer',
457
+ :'quality_score' => :'String',
458
+ :'player_software_version' => :'String'
459
+ }
460
+ end
461
+
462
+ # Initializes the object
463
+ # @param [Hash] attributes Model attributes in the form of hash
464
+ def initialize(attributes = {})
465
+ return unless attributes.is_a?(Hash)
466
+
467
+ # convert string to symbol for hash key
468
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
469
+
470
+ if attributes.has_key?(:'view_total_upscaling')
471
+ self.view_total_upscaling = attributes[:'view_total_upscaling']
472
+ end
473
+
474
+ if attributes.has_key?(:'preroll_ad_asset_hostname')
475
+ self.preroll_ad_asset_hostname = attributes[:'preroll_ad_asset_hostname']
476
+ end
477
+
478
+ if attributes.has_key?(:'player_source_domain')
479
+ self.player_source_domain = attributes[:'player_source_domain']
480
+ end
481
+
482
+ if attributes.has_key?(:'region')
483
+ self.region = attributes[:'region']
484
+ end
485
+
486
+ if attributes.has_key?(:'viewer_user_agent')
487
+ self.viewer_user_agent = attributes[:'viewer_user_agent']
488
+ end
489
+
490
+ if attributes.has_key?(:'preroll_requested')
491
+ self.preroll_requested = attributes[:'preroll_requested']
492
+ end
493
+
494
+ if attributes.has_key?(:'page_type')
495
+ self.page_type = attributes[:'page_type']
496
+ end
497
+
498
+ if attributes.has_key?(:'startup_score')
499
+ self.startup_score = attributes[:'startup_score']
500
+ end
501
+
502
+ if attributes.has_key?(:'view_seek_duration')
503
+ self.view_seek_duration = attributes[:'view_seek_duration']
504
+ end
505
+
506
+ if attributes.has_key?(:'country_name')
507
+ self.country_name = attributes[:'country_name']
508
+ end
509
+
510
+ if attributes.has_key?(:'player_source_height')
511
+ self.player_source_height = attributes[:'player_source_height']
512
+ end
513
+
514
+ if attributes.has_key?(:'longitude')
515
+ self.longitude = attributes[:'longitude']
516
+ end
517
+
518
+ if attributes.has_key?(:'buffering_count')
519
+ self.buffering_count = attributes[:'buffering_count']
520
+ end
521
+
522
+ if attributes.has_key?(:'video_duration')
523
+ self.video_duration = attributes[:'video_duration']
524
+ end
525
+
526
+ if attributes.has_key?(:'player_source_type')
527
+ self.player_source_type = attributes[:'player_source_type']
528
+ end
529
+
530
+ if attributes.has_key?(:'city')
531
+ self.city = attributes[:'city']
532
+ end
533
+
534
+ if attributes.has_key?(:'view_id')
535
+ self.view_id = attributes[:'view_id']
536
+ end
537
+
538
+ if attributes.has_key?(:'platform_description')
539
+ self.platform_description = attributes[:'platform_description']
540
+ end
541
+
542
+ if attributes.has_key?(:'video_startup_preroll_request_time')
543
+ self.video_startup_preroll_request_time = attributes[:'video_startup_preroll_request_time']
544
+ end
545
+
546
+ if attributes.has_key?(:'viewer_device_name')
547
+ self.viewer_device_name = attributes[:'viewer_device_name']
548
+ end
549
+
550
+ if attributes.has_key?(:'video_series')
551
+ self.video_series = attributes[:'video_series']
552
+ end
553
+
554
+ if attributes.has_key?(:'viewer_application_name')
555
+ self.viewer_application_name = attributes[:'viewer_application_name']
556
+ end
557
+
558
+ if attributes.has_key?(:'updated_at')
559
+ self.updated_at = attributes[:'updated_at']
560
+ end
561
+
562
+ if attributes.has_key?(:'view_total_content_playback_time')
563
+ self.view_total_content_playback_time = attributes[:'view_total_content_playback_time']
564
+ end
565
+
566
+ if attributes.has_key?(:'cdn')
567
+ self.cdn = attributes[:'cdn']
568
+ end
569
+
570
+ if attributes.has_key?(:'player_instance_id')
571
+ self.player_instance_id = attributes[:'player_instance_id']
572
+ end
573
+
574
+ if attributes.has_key?(:'video_language')
575
+ self.video_language = attributes[:'video_language']
576
+ end
577
+
578
+ if attributes.has_key?(:'player_source_width')
579
+ self.player_source_width = attributes[:'player_source_width']
580
+ end
581
+
582
+ if attributes.has_key?(:'player_error_message')
583
+ self.player_error_message = attributes[:'player_error_message']
584
+ end
585
+
586
+ if attributes.has_key?(:'player_mux_plugin_version')
587
+ self.player_mux_plugin_version = attributes[:'player_mux_plugin_version']
588
+ end
589
+
590
+ if attributes.has_key?(:'watched')
591
+ self.watched = attributes[:'watched']
592
+ end
593
+
594
+ if attributes.has_key?(:'playback_score')
595
+ self.playback_score = attributes[:'playback_score']
596
+ end
597
+
598
+ if attributes.has_key?(:'page_url')
599
+ self.page_url = attributes[:'page_url']
600
+ end
601
+
602
+ if attributes.has_key?(:'metro')
603
+ self.metro = attributes[:'metro']
604
+ end
605
+
606
+ if attributes.has_key?(:'view_max_request_latency')
607
+ self.view_max_request_latency = attributes[:'view_max_request_latency']
608
+ end
609
+
610
+ if attributes.has_key?(:'requests_for_first_preroll')
611
+ self.requests_for_first_preroll = attributes[:'requests_for_first_preroll']
612
+ end
613
+
614
+ if attributes.has_key?(:'view_total_downscaling')
615
+ self.view_total_downscaling = attributes[:'view_total_downscaling']
616
+ end
617
+
618
+ if attributes.has_key?(:'latitude')
619
+ self.latitude = attributes[:'latitude']
620
+ end
621
+
622
+ if attributes.has_key?(:'player_source_host_name')
623
+ self.player_source_host_name = attributes[:'player_source_host_name']
624
+ end
625
+
626
+ if attributes.has_key?(:'inserted_at')
627
+ self.inserted_at = attributes[:'inserted_at']
628
+ end
629
+
630
+ if attributes.has_key?(:'view_end')
631
+ self.view_end = attributes[:'view_end']
632
+ end
633
+
634
+ if attributes.has_key?(:'mux_embed_version')
635
+ self.mux_embed_version = attributes[:'mux_embed_version']
636
+ end
637
+
638
+ if attributes.has_key?(:'player_language')
639
+ self.player_language = attributes[:'player_language']
640
+ end
641
+
642
+ if attributes.has_key?(:'page_load_time')
643
+ self.page_load_time = attributes[:'page_load_time']
644
+ end
645
+
646
+ if attributes.has_key?(:'viewer_device_category')
647
+ self.viewer_device_category = attributes[:'viewer_device_category']
648
+ end
649
+
650
+ if attributes.has_key?(:'video_startup_preroll_load_time')
651
+ self.video_startup_preroll_load_time = attributes[:'video_startup_preroll_load_time']
652
+ end
653
+
654
+ if attributes.has_key?(:'player_version')
655
+ self.player_version = attributes[:'player_version']
656
+ end
657
+
658
+ if attributes.has_key?(:'watch_time')
659
+ self.watch_time = attributes[:'watch_time']
660
+ end
661
+
662
+ if attributes.has_key?(:'player_source_stream_type')
663
+ self.player_source_stream_type = attributes[:'player_source_stream_type']
664
+ end
665
+
666
+ if attributes.has_key?(:'preroll_ad_tag_hostname')
667
+ self.preroll_ad_tag_hostname = attributes[:'preroll_ad_tag_hostname']
668
+ end
669
+
670
+ if attributes.has_key?(:'viewer_device_manufacturer')
671
+ self.viewer_device_manufacturer = attributes[:'viewer_device_manufacturer']
672
+ end
673
+
674
+ if attributes.has_key?(:'rebuffering_score')
675
+ self.rebuffering_score = attributes[:'rebuffering_score']
676
+ end
677
+
678
+ if attributes.has_key?(:'experiment_name')
679
+ self.experiment_name = attributes[:'experiment_name']
680
+ end
681
+
682
+ if attributes.has_key?(:'viewer_os_version')
683
+ self.viewer_os_version = attributes[:'viewer_os_version']
684
+ end
685
+
686
+ if attributes.has_key?(:'player_preload')
687
+ self.player_preload = attributes[:'player_preload']
688
+ end
689
+
690
+ if attributes.has_key?(:'buffering_duration')
691
+ self.buffering_duration = attributes[:'buffering_duration']
692
+ end
693
+
694
+ if attributes.has_key?(:'player_view_count')
695
+ self.player_view_count = attributes[:'player_view_count']
696
+ end
697
+
698
+ if attributes.has_key?(:'player_software')
699
+ self.player_software = attributes[:'player_software']
700
+ end
701
+
702
+ if attributes.has_key?(:'player_load_time')
703
+ self.player_load_time = attributes[:'player_load_time']
704
+ end
705
+
706
+ if attributes.has_key?(:'platform_summary')
707
+ self.platform_summary = attributes[:'platform_summary']
708
+ end
709
+
710
+ if attributes.has_key?(:'video_encoding_variant')
711
+ self.video_encoding_variant = attributes[:'video_encoding_variant']
712
+ end
713
+
714
+ if attributes.has_key?(:'player_width')
715
+ self.player_width = attributes[:'player_width']
716
+ end
717
+
718
+ if attributes.has_key?(:'view_seek_count')
719
+ self.view_seek_count = attributes[:'view_seek_count']
720
+ end
721
+
722
+ if attributes.has_key?(:'viewer_experience_score')
723
+ self.viewer_experience_score = attributes[:'viewer_experience_score']
724
+ end
725
+
726
+ if attributes.has_key?(:'view_error_id')
727
+ self.view_error_id = attributes[:'view_error_id']
728
+ end
729
+
730
+ if attributes.has_key?(:'video_variant_name')
731
+ self.video_variant_name = attributes[:'video_variant_name']
732
+ end
733
+
734
+ if attributes.has_key?(:'preroll_played')
735
+ self.preroll_played = attributes[:'preroll_played']
736
+ end
737
+
738
+ if attributes.has_key?(:'viewer_application_engine')
739
+ self.viewer_application_engine = attributes[:'viewer_application_engine']
740
+ end
741
+
742
+ if attributes.has_key?(:'viewer_os_architecture')
743
+ self.viewer_os_architecture = attributes[:'viewer_os_architecture']
744
+ end
745
+
746
+ if attributes.has_key?(:'player_error_code')
747
+ self.player_error_code = attributes[:'player_error_code']
748
+ end
749
+
750
+ if attributes.has_key?(:'buffering_rate')
751
+ self.buffering_rate = attributes[:'buffering_rate']
752
+ end
753
+
754
+ if attributes.has_key?(:'events')
755
+ if (value = attributes[:'events']).is_a?(Array)
756
+ self.events = value
757
+ end
758
+ end
759
+
760
+ if attributes.has_key?(:'player_name')
761
+ self.player_name = attributes[:'player_name']
762
+ end
763
+
764
+ if attributes.has_key?(:'view_start')
765
+ self.view_start = attributes[:'view_start']
766
+ end
767
+
768
+ if attributes.has_key?(:'view_average_request_throughput')
769
+ self.view_average_request_throughput = attributes[:'view_average_request_throughput']
770
+ end
771
+
772
+ if attributes.has_key?(:'video_producer')
773
+ self.video_producer = attributes[:'video_producer']
774
+ end
775
+
776
+ if attributes.has_key?(:'error_type_id')
777
+ self.error_type_id = attributes[:'error_type_id']
778
+ end
779
+
780
+ if attributes.has_key?(:'mux_viewer_id')
781
+ self.mux_viewer_id = attributes[:'mux_viewer_id']
782
+ end
783
+
784
+ if attributes.has_key?(:'video_id')
785
+ self.video_id = attributes[:'video_id']
786
+ end
787
+
788
+ if attributes.has_key?(:'continent_code')
789
+ self.continent_code = attributes[:'continent_code']
790
+ end
791
+
792
+ if attributes.has_key?(:'session_id')
793
+ self.session_id = attributes[:'session_id']
794
+ end
795
+
796
+ if attributes.has_key?(:'exit_before_video_start')
797
+ self.exit_before_video_start = attributes[:'exit_before_video_start']
798
+ end
799
+
800
+ if attributes.has_key?(:'video_content_type')
801
+ self.video_content_type = attributes[:'video_content_type']
802
+ end
803
+
804
+ if attributes.has_key?(:'viewer_os_family')
805
+ self.viewer_os_family = attributes[:'viewer_os_family']
806
+ end
807
+
808
+ if attributes.has_key?(:'player_poster')
809
+ self.player_poster = attributes[:'player_poster']
810
+ end
811
+
812
+ if attributes.has_key?(:'view_average_request_latency')
813
+ self.view_average_request_latency = attributes[:'view_average_request_latency']
814
+ end
815
+
816
+ if attributes.has_key?(:'video_variant_id')
817
+ self.video_variant_id = attributes[:'video_variant_id']
818
+ end
819
+
820
+ if attributes.has_key?(:'player_source_duration')
821
+ self.player_source_duration = attributes[:'player_source_duration']
822
+ end
823
+
824
+ if attributes.has_key?(:'player_source_url')
825
+ self.player_source_url = attributes[:'player_source_url']
826
+ end
827
+
828
+ if attributes.has_key?(:'mux_api_version')
829
+ self.mux_api_version = attributes[:'mux_api_version']
830
+ end
831
+
832
+ if attributes.has_key?(:'video_title')
833
+ self.video_title = attributes[:'video_title']
834
+ end
835
+
836
+ if attributes.has_key?(:'id')
837
+ self.id = attributes[:'id']
838
+ end
839
+
840
+ if attributes.has_key?(:'short_time')
841
+ self.short_time = attributes[:'short_time']
842
+ end
843
+
844
+ if attributes.has_key?(:'rebuffer_percentage')
845
+ self.rebuffer_percentage = attributes[:'rebuffer_percentage']
846
+ end
847
+
848
+ if attributes.has_key?(:'time_to_first_frame')
849
+ self.time_to_first_frame = attributes[:'time_to_first_frame']
850
+ end
851
+
852
+ if attributes.has_key?(:'viewer_user_id')
853
+ self.viewer_user_id = attributes[:'viewer_user_id']
854
+ end
855
+
856
+ if attributes.has_key?(:'video_stream_type')
857
+ self.video_stream_type = attributes[:'video_stream_type']
858
+ end
859
+
860
+ if attributes.has_key?(:'player_startup_time')
861
+ self.player_startup_time = attributes[:'player_startup_time']
862
+ end
863
+
864
+ if attributes.has_key?(:'viewer_application_version')
865
+ self.viewer_application_version = attributes[:'viewer_application_version']
866
+ end
867
+
868
+ if attributes.has_key?(:'view_max_downscale_percentage')
869
+ self.view_max_downscale_percentage = attributes[:'view_max_downscale_percentage']
870
+ end
871
+
872
+ if attributes.has_key?(:'view_max_upscale_percentage')
873
+ self.view_max_upscale_percentage = attributes[:'view_max_upscale_percentage']
874
+ end
875
+
876
+ if attributes.has_key?(:'country_code')
877
+ self.country_code = attributes[:'country_code']
878
+ end
879
+
880
+ if attributes.has_key?(:'used_fullscreen')
881
+ self.used_fullscreen = attributes[:'used_fullscreen']
882
+ end
883
+
884
+ if attributes.has_key?(:'isp')
885
+ self.isp = attributes[:'isp']
886
+ end
887
+
888
+ if attributes.has_key?(:'property_id')
889
+ self.property_id = attributes[:'property_id']
890
+ end
891
+
892
+ if attributes.has_key?(:'player_autoplay')
893
+ self.player_autoplay = attributes[:'player_autoplay']
894
+ end
895
+
896
+ if attributes.has_key?(:'player_height')
897
+ self.player_height = attributes[:'player_height']
898
+ end
899
+
900
+ if attributes.has_key?(:'asn')
901
+ self.asn = attributes[:'asn']
902
+ end
903
+
904
+ if attributes.has_key?(:'quality_score')
905
+ self.quality_score = attributes[:'quality_score']
906
+ end
907
+
908
+ if attributes.has_key?(:'player_software_version')
909
+ self.player_software_version = attributes[:'player_software_version']
910
+ end
911
+ end
912
+
913
+ # Show invalid properties with the reasons. Usually used together with valid?
914
+ # @return Array for valid properties with the reasons
915
+ def list_invalid_properties
916
+ invalid_properties = Array.new
917
+ invalid_properties
918
+ end
919
+
920
+ # Check to see if the all the properties in the model are valid
921
+ # @return true if the model is valid
922
+ def valid?
923
+ true
924
+ end
925
+
926
+ # Checks equality by comparing each attribute.
927
+ # @param [Object] Object to be compared
928
+ def ==(o)
929
+ return true if self.equal?(o)
930
+ self.class == o.class &&
931
+ view_total_upscaling == o.view_total_upscaling &&
932
+ preroll_ad_asset_hostname == o.preroll_ad_asset_hostname &&
933
+ player_source_domain == o.player_source_domain &&
934
+ region == o.region &&
935
+ viewer_user_agent == o.viewer_user_agent &&
936
+ preroll_requested == o.preroll_requested &&
937
+ page_type == o.page_type &&
938
+ startup_score == o.startup_score &&
939
+ view_seek_duration == o.view_seek_duration &&
940
+ country_name == o.country_name &&
941
+ player_source_height == o.player_source_height &&
942
+ longitude == o.longitude &&
943
+ buffering_count == o.buffering_count &&
944
+ video_duration == o.video_duration &&
945
+ player_source_type == o.player_source_type &&
946
+ city == o.city &&
947
+ view_id == o.view_id &&
948
+ platform_description == o.platform_description &&
949
+ video_startup_preroll_request_time == o.video_startup_preroll_request_time &&
950
+ viewer_device_name == o.viewer_device_name &&
951
+ video_series == o.video_series &&
952
+ viewer_application_name == o.viewer_application_name &&
953
+ updated_at == o.updated_at &&
954
+ view_total_content_playback_time == o.view_total_content_playback_time &&
955
+ cdn == o.cdn &&
956
+ player_instance_id == o.player_instance_id &&
957
+ video_language == o.video_language &&
958
+ player_source_width == o.player_source_width &&
959
+ player_error_message == o.player_error_message &&
960
+ player_mux_plugin_version == o.player_mux_plugin_version &&
961
+ watched == o.watched &&
962
+ playback_score == o.playback_score &&
963
+ page_url == o.page_url &&
964
+ metro == o.metro &&
965
+ view_max_request_latency == o.view_max_request_latency &&
966
+ requests_for_first_preroll == o.requests_for_first_preroll &&
967
+ view_total_downscaling == o.view_total_downscaling &&
968
+ latitude == o.latitude &&
969
+ player_source_host_name == o.player_source_host_name &&
970
+ inserted_at == o.inserted_at &&
971
+ view_end == o.view_end &&
972
+ mux_embed_version == o.mux_embed_version &&
973
+ player_language == o.player_language &&
974
+ page_load_time == o.page_load_time &&
975
+ viewer_device_category == o.viewer_device_category &&
976
+ video_startup_preroll_load_time == o.video_startup_preroll_load_time &&
977
+ player_version == o.player_version &&
978
+ watch_time == o.watch_time &&
979
+ player_source_stream_type == o.player_source_stream_type &&
980
+ preroll_ad_tag_hostname == o.preroll_ad_tag_hostname &&
981
+ viewer_device_manufacturer == o.viewer_device_manufacturer &&
982
+ rebuffering_score == o.rebuffering_score &&
983
+ experiment_name == o.experiment_name &&
984
+ viewer_os_version == o.viewer_os_version &&
985
+ player_preload == o.player_preload &&
986
+ buffering_duration == o.buffering_duration &&
987
+ player_view_count == o.player_view_count &&
988
+ player_software == o.player_software &&
989
+ player_load_time == o.player_load_time &&
990
+ platform_summary == o.platform_summary &&
991
+ video_encoding_variant == o.video_encoding_variant &&
992
+ player_width == o.player_width &&
993
+ view_seek_count == o.view_seek_count &&
994
+ viewer_experience_score == o.viewer_experience_score &&
995
+ view_error_id == o.view_error_id &&
996
+ video_variant_name == o.video_variant_name &&
997
+ preroll_played == o.preroll_played &&
998
+ viewer_application_engine == o.viewer_application_engine &&
999
+ viewer_os_architecture == o.viewer_os_architecture &&
1000
+ player_error_code == o.player_error_code &&
1001
+ buffering_rate == o.buffering_rate &&
1002
+ events == o.events &&
1003
+ player_name == o.player_name &&
1004
+ view_start == o.view_start &&
1005
+ view_average_request_throughput == o.view_average_request_throughput &&
1006
+ video_producer == o.video_producer &&
1007
+ error_type_id == o.error_type_id &&
1008
+ mux_viewer_id == o.mux_viewer_id &&
1009
+ video_id == o.video_id &&
1010
+ continent_code == o.continent_code &&
1011
+ session_id == o.session_id &&
1012
+ exit_before_video_start == o.exit_before_video_start &&
1013
+ video_content_type == o.video_content_type &&
1014
+ viewer_os_family == o.viewer_os_family &&
1015
+ player_poster == o.player_poster &&
1016
+ view_average_request_latency == o.view_average_request_latency &&
1017
+ video_variant_id == o.video_variant_id &&
1018
+ player_source_duration == o.player_source_duration &&
1019
+ player_source_url == o.player_source_url &&
1020
+ mux_api_version == o.mux_api_version &&
1021
+ video_title == o.video_title &&
1022
+ id == o.id &&
1023
+ short_time == o.short_time &&
1024
+ rebuffer_percentage == o.rebuffer_percentage &&
1025
+ time_to_first_frame == o.time_to_first_frame &&
1026
+ viewer_user_id == o.viewer_user_id &&
1027
+ video_stream_type == o.video_stream_type &&
1028
+ player_startup_time == o.player_startup_time &&
1029
+ viewer_application_version == o.viewer_application_version &&
1030
+ view_max_downscale_percentage == o.view_max_downscale_percentage &&
1031
+ view_max_upscale_percentage == o.view_max_upscale_percentage &&
1032
+ country_code == o.country_code &&
1033
+ used_fullscreen == o.used_fullscreen &&
1034
+ isp == o.isp &&
1035
+ property_id == o.property_id &&
1036
+ player_autoplay == o.player_autoplay &&
1037
+ player_height == o.player_height &&
1038
+ asn == o.asn &&
1039
+ quality_score == o.quality_score &&
1040
+ player_software_version == o.player_software_version
1041
+ end
1042
+
1043
+ # @see the `==` method
1044
+ # @param [Object] Object to be compared
1045
+ def eql?(o)
1046
+ self == o
1047
+ end
1048
+
1049
+ # Calculates hash code according to all attributes.
1050
+ # @return [Fixnum] Hash code
1051
+ def hash
1052
+ [view_total_upscaling, preroll_ad_asset_hostname, player_source_domain, region, viewer_user_agent, preroll_requested, page_type, startup_score, view_seek_duration, country_name, player_source_height, longitude, buffering_count, video_duration, player_source_type, city, view_id, platform_description, video_startup_preroll_request_time, viewer_device_name, video_series, viewer_application_name, updated_at, view_total_content_playback_time, cdn, player_instance_id, video_language, player_source_width, player_error_message, player_mux_plugin_version, watched, playback_score, page_url, metro, view_max_request_latency, requests_for_first_preroll, view_total_downscaling, latitude, player_source_host_name, inserted_at, view_end, mux_embed_version, player_language, page_load_time, viewer_device_category, video_startup_preroll_load_time, player_version, watch_time, player_source_stream_type, preroll_ad_tag_hostname, viewer_device_manufacturer, rebuffering_score, experiment_name, viewer_os_version, player_preload, buffering_duration, player_view_count, player_software, player_load_time, platform_summary, video_encoding_variant, player_width, view_seek_count, viewer_experience_score, view_error_id, video_variant_name, preroll_played, viewer_application_engine, viewer_os_architecture, player_error_code, buffering_rate, events, player_name, view_start, view_average_request_throughput, video_producer, error_type_id, mux_viewer_id, video_id, continent_code, session_id, exit_before_video_start, video_content_type, viewer_os_family, player_poster, view_average_request_latency, video_variant_id, player_source_duration, player_source_url, mux_api_version, video_title, id, short_time, rebuffer_percentage, time_to_first_frame, viewer_user_id, video_stream_type, player_startup_time, viewer_application_version, view_max_downscale_percentage, view_max_upscale_percentage, country_code, used_fullscreen, isp, property_id, player_autoplay, player_height, asn, quality_score, player_software_version].hash
1053
+ end
1054
+
1055
+ # Builds the object from hash
1056
+ # @param [Hash] attributes Model attributes in the form of hash
1057
+ # @return [Object] Returns the model itself
1058
+ def self.build_from_hash(attributes)
1059
+ new.build_from_hash(attributes)
1060
+ end
1061
+
1062
+ # Builds the object from hash
1063
+ # @param [Hash] attributes Model attributes in the form of hash
1064
+ # @return [Object] Returns the model itself
1065
+ def build_from_hash(attributes)
1066
+ return nil unless attributes.is_a?(Hash)
1067
+ self.class.openapi_types.each_pair do |key, type|
1068
+ if type =~ /\AArray<(.*)>/i
1069
+ # check to ensure the input is an array given that the attribute
1070
+ # is documented as an array but the input is not
1071
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
1072
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
1073
+ end
1074
+ elsif !attributes[self.class.attribute_map[key]].nil?
1075
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
1076
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
1077
+ end
1078
+
1079
+ self
1080
+ end
1081
+
1082
+ # Deserializes the data based on type
1083
+ # @param string type Data type
1084
+ # @param string value Value to be deserialized
1085
+ # @return [Object] Deserialized data
1086
+ def _deserialize(type, value)
1087
+ case type.to_sym
1088
+ when :DateTime
1089
+ DateTime.parse(value)
1090
+ when :Date
1091
+ Date.parse(value)
1092
+ when :String
1093
+ value.to_s
1094
+ when :Integer
1095
+ value.to_i
1096
+ when :Float
1097
+ value.to_f
1098
+ when :BOOLEAN
1099
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
1100
+ true
1101
+ else
1102
+ false
1103
+ end
1104
+ when :Object
1105
+ # generic object (usually a Hash), return directly
1106
+ value
1107
+ when /\AArray<(?<inner_type>.+)>\z/
1108
+ inner_type = Regexp.last_match[:inner_type]
1109
+ value.map { |v| _deserialize(inner_type, v) }
1110
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
1111
+ k_type = Regexp.last_match[:k_type]
1112
+ v_type = Regexp.last_match[:v_type]
1113
+ {}.tap do |hash|
1114
+ value.each do |k, v|
1115
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
1116
+ end
1117
+ end
1118
+ else # model
1119
+ MuxRuby.const_get(type).build_from_hash(value)
1120
+ end
1121
+ end
1122
+
1123
+ # Returns the string representation of the object
1124
+ # @return [String] String presentation of the object
1125
+ def to_s
1126
+ to_hash.to_s
1127
+ end
1128
+
1129
+ # to_body is an alias to to_hash (backward compatibility)
1130
+ # @return [Hash] Returns the object in the form of hash
1131
+ def to_body
1132
+ to_hash
1133
+ end
1134
+
1135
+ # Returns the object in the form of hash
1136
+ # @return [Hash] Returns the object in the form of hash
1137
+ def to_hash
1138
+ hash = {}
1139
+ self.class.attribute_map.each_pair do |attr, param|
1140
+ value = self.send(attr)
1141
+ next if value.nil?
1142
+ hash[param] = _to_hash(value)
1143
+ end
1144
+ hash
1145
+ end
1146
+
1147
+ # Outputs non-array value in the form of hash
1148
+ # For object, use to_hash. Otherwise, just return the value
1149
+ # @param [Object] value Any valid value
1150
+ # @return [Hash] Returns the value in the form of hash
1151
+ def _to_hash(value)
1152
+ if value.is_a?(Array)
1153
+ value.compact.map { |v| _to_hash(v) }
1154
+ elsif value.is_a?(Hash)
1155
+ {}.tap do |hash|
1156
+ value.each { |k, v| hash[k] = _to_hash(v) }
1157
+ end
1158
+ elsif value.respond_to? :to_hash
1159
+ value.to_hash
1160
+ else
1161
+ value
1162
+ end
1163
+ end
1164
+
1165
+ end
1166
+
1167
+ end