kaltura-client 3.3.0 → 14.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. checksums.yaml +7 -0
  2. data/README +23 -23
  3. data/lib/kaltura_client.rb +2054 -1860
  4. data/lib/kaltura_client_base.rb +4 -1
  5. data/lib/kaltura_enums.rb +612 -36
  6. data/lib/kaltura_plugins/kaltura_activiti_business_process_notification_client_plugin.rb +96 -0
  7. data/lib/kaltura_plugins/kaltura_ad_cue_point_client_plugin.rb +46 -17
  8. data/lib/kaltura_plugins/kaltura_admin_console_client_plugin.rb +61 -251
  9. data/lib/kaltura_plugins/kaltura_annotation_client_plugin.rb +131 -60
  10. data/lib/kaltura_plugins/kaltura_aspera_client_plugin.rb +62 -0
  11. data/lib/kaltura_plugins/kaltura_attachment_client_plugin.rb +83 -55
  12. data/lib/kaltura_plugins/kaltura_audit_client_plugin.rb +613 -0
  13. data/lib/kaltura_plugins/kaltura_avn_distribution_client_plugin.rb +109 -0
  14. data/lib/kaltura_plugins/kaltura_bpm_event_notification_integration_client_plugin.rb +61 -0
  15. data/lib/kaltura_plugins/kaltura_bulk_upload_client_plugin.rb +17 -19
  16. data/lib/kaltura_plugins/kaltura_bulk_upload_csv_client_plugin.rb +7 -6
  17. data/lib/kaltura_plugins/kaltura_bulk_upload_filter_client_plugin.rb +33 -13
  18. data/lib/kaltura_plugins/kaltura_bulk_upload_xml_client_plugin.rb +1 -2
  19. data/lib/kaltura_plugins/kaltura_business_process_notification_client_plugin.rb +545 -0
  20. data/lib/kaltura_plugins/kaltura_caption_client_plugin.rb +235 -114
  21. data/lib/kaltura_plugins/kaltura_caption_search_client_plugin.rb +86 -29
  22. data/lib/kaltura_plugins/kaltura_cielo24client_plugin.rb +39 -17
  23. data/lib/kaltura_plugins/kaltura_code_cue_point_client_plugin.rb +49 -18
  24. data/lib/kaltura_plugins/kaltura_comcast_mrss_distribution_client_plugin.rb +163 -0
  25. data/lib/kaltura_plugins/kaltura_content_distribution_client_plugin.rb +846 -439
  26. data/lib/kaltura_plugins/kaltura_cross_kaltura_distribution_client_plugin.rb +232 -0
  27. data/lib/kaltura_plugins/kaltura_cue_point_client_plugin.rb +229 -74
  28. data/lib/kaltura_plugins/kaltura_dailymotion_distribution_client_plugin.rb +199 -0
  29. data/lib/kaltura_plugins/kaltura_document_client_plugin.rb +140 -97
  30. data/lib/kaltura_plugins/kaltura_double_click_distribution_client_plugin.rb +142 -0
  31. data/lib/kaltura_plugins/kaltura_drm_client_plugin.rb +635 -0
  32. data/lib/kaltura_plugins/kaltura_drop_folder_client_plugin.rb +485 -196
  33. data/lib/kaltura_plugins/kaltura_drop_folder_xml_bulk_upload_client_plugin.rb +19 -1
  34. data/lib/kaltura_plugins/kaltura_elastic_search_client_plugin.rb +1228 -0
  35. data/lib/kaltura_plugins/kaltura_email_notification_client_plugin.rb +178 -89
  36. data/lib/kaltura_plugins/kaltura_event_cue_point_client_plugin.rb +10 -4
  37. data/lib/kaltura_plugins/kaltura_event_notification_client_plugin.rb +205 -95
  38. data/lib/kaltura_plugins/kaltura_external_media_client_plugin.rb +43 -32
  39. data/lib/kaltura_plugins/kaltura_facebook_distribution_client_plugin.rb +183 -0
  40. data/lib/kaltura_plugins/kaltura_fairplay_client_plugin.rb +62 -0
  41. data/lib/kaltura_plugins/kaltura_feed_drop_folder_client_plugin.rb +40 -16
  42. data/lib/kaltura_plugins/kaltura_file_sync_client_plugin.rb +182 -67
  43. data/lib/kaltura_plugins/kaltura_freewheel_distribution_client_plugin.rb +157 -0
  44. data/lib/kaltura_plugins/kaltura_freewheel_generic_distribution_client_plugin.rb +172 -0
  45. data/lib/kaltura_plugins/kaltura_ftp_distribution_client_plugin.rb +258 -0
  46. data/lib/kaltura_plugins/kaltura_http_notification_client_plugin.rb +154 -102
  47. data/lib/kaltura_plugins/kaltura_hulu_distribution_client_plugin.rb +213 -0
  48. data/lib/kaltura_plugins/kaltura_idetic_distribution_client_plugin.rb +131 -0
  49. data/lib/kaltura_plugins/kaltura_integration_client_plugin.rb +19 -10
  50. data/lib/kaltura_plugins/kaltura_kaltura_internal_tools_client_plugin.rb +1 -87
  51. data/lib/kaltura_plugins/kaltura_kontiki_client_plugin.rb +19 -10
  52. data/lib/kaltura_plugins/kaltura_like_client_plugin.rb +45 -25
  53. data/lib/kaltura_plugins/kaltura_metadata_client_plugin.rb +435 -213
  54. data/lib/kaltura_plugins/kaltura_metro_pcs_distribution_client_plugin.rb +155 -0
  55. data/lib/kaltura_plugins/kaltura_msn_distribution_client_plugin.rb +186 -0
  56. data/lib/kaltura_plugins/kaltura_play_ready_client_plugin.rb +482 -0
  57. data/lib/kaltura_plugins/kaltura_poll_client_plugin.rb +116 -0
  58. data/lib/kaltura_plugins/kaltura_push_notification_client_plugin.rb +154 -0
  59. data/lib/kaltura_plugins/kaltura_quick_play_distribution_client_plugin.rb +187 -0
  60. data/lib/kaltura_plugins/kaltura_quiz_client_plugin.rb +155 -58
  61. data/lib/kaltura_plugins/kaltura_schedule_bulk_upload_client_plugin.rb +107 -0
  62. data/lib/kaltura_plugins/kaltura_schedule_client_plugin.rb +1580 -0
  63. data/lib/kaltura_plugins/kaltura_schedule_drop_folder_client_plugin.rb +52 -0
  64. data/lib/kaltura_plugins/kaltura_scheduled_task_client_plugin.rb +277 -71
  65. data/lib/kaltura_plugins/kaltura_scheduled_task_content_distribution_client_plugin.rb +4 -3
  66. data/lib/kaltura_plugins/kaltura_scheduled_task_event_notification_client_plugin.rb +4 -3
  67. data/lib/kaltura_plugins/kaltura_scheduled_task_metadata_client_plugin.rb +10 -7
  68. data/lib/kaltura_plugins/kaltura_short_link_client_plugin.rb +113 -66
  69. data/lib/kaltura_plugins/kaltura_system_partner_client_plugin.rb +81 -517
  70. data/lib/kaltura_plugins/kaltura_tag_search_client_plugin.rb +63 -30
  71. data/lib/kaltura_plugins/kaltura_thumb_cue_point_client_plugin.rb +40 -16
  72. data/lib/kaltura_plugins/kaltura_transcript_client_plugin.rb +44 -8
  73. data/lib/kaltura_plugins/kaltura_unicorn_distribution_client_plugin.rb +212 -0
  74. data/lib/kaltura_plugins/kaltura_var_console_client_plugin.rb +75 -74
  75. data/lib/kaltura_plugins/kaltura_velocix_client_plugin.rb +10 -4
  76. data/lib/kaltura_plugins/kaltura_view_history_client_plugin.rb +112 -0
  77. data/lib/kaltura_plugins/kaltura_virus_scan_client_plugin.rb +119 -59
  78. data/lib/kaltura_plugins/kaltura_voicebase_client_plugin.rb +34 -19
  79. data/lib/kaltura_plugins/kaltura_webex_drop_folder_client_plugin.rb +207 -0
  80. data/lib/kaltura_plugins/kaltura_widevine_client_plugin.rb +299 -0
  81. data/lib/kaltura_plugins/kaltura_wowza_client_plugin.rb +22 -13
  82. data/lib/kaltura_plugins/kaltura_yahoo_distribution_client_plugin.rb +155 -0
  83. data/lib/kaltura_plugins/kaltura_you_tube_distribution_client_plugin.rb +382 -0
  84. data/lib/kaltura_plugins/kaltura_youtube_api_distribution_client_plugin.rb +219 -0
  85. data/lib/kaltura_types.rb +10305 -4858
  86. data/test/access_control_service_test.rb +43 -20
  87. data/test/base_entry_service_test.rb +57 -67
  88. data/test/configuration_test.rb +2 -34
  89. data/test/cue_point_service_test.rb +1 -1
  90. data/test/data_service_test.rb +19 -5
  91. data/test/document_service_test.rb +1 -1
  92. data/test/media_service_test.rb +296 -296
  93. data/test/metadata_profile_service_test.rb +1 -1
  94. metadata +52 -21
@@ -0,0 +1,232 @@
1
+ # ===================================================================================================
2
+ # _ __ _ _
3
+ # | |/ /__ _| | |_ _ _ _ _ __ _
4
+ # | ' </ _` | | _| || | '_/ _` |
5
+ # |_|\_\__,_|_|\__|\_,_|_| \__,_|
6
+ #
7
+ # This file is part of the Kaltura Collaborative Media Suite which allows users
8
+ # to do with audio, video, and animation what Wiki platfroms allow them to do with
9
+ # text.
10
+ #
11
+ # Copyright (C) 2006-2019 Kaltura Inc.
12
+ #
13
+ # This program is free software: you can redistribute it and/or modify
14
+ # it under the terms of the GNU Affero General Public License as
15
+ # published by the Free Software Foundation, either version 3 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # This program is distributed in the hope that it will be useful,
19
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
+ # GNU Affero General Public License for more details.
22
+ #
23
+ # You should have received a copy of the GNU Affero General Public License
24
+ # along with this program. If not, see <http:#www.gnu.org/licenses/>.
25
+ #
26
+ # @ignore
27
+ # ===================================================================================================
28
+ require 'kaltura_client.rb'
29
+ require File.dirname(__FILE__) + '/kaltura_content_distribution_client_plugin.rb'
30
+
31
+ module Kaltura
32
+
33
+ class KalturaCrossKalturaDistributionProfileOrderBy
34
+ CREATED_AT_ASC = "+createdAt"
35
+ UPDATED_AT_ASC = "+updatedAt"
36
+ CREATED_AT_DESC = "-createdAt"
37
+ UPDATED_AT_DESC = "-updatedAt"
38
+ end
39
+
40
+ class KalturaCrossKalturaDistributionProviderOrderBy
41
+ end
42
+
43
+ class KalturaCrossKalturaDistributionProvider < KalturaDistributionProvider
44
+
45
+
46
+ def from_xml(xml_element)
47
+ super
48
+ end
49
+
50
+ end
51
+
52
+ class KalturaCrossKalturaDistributionJobProviderData < KalturaConfigurableDistributionJobProviderData
53
+ # Key-value array where the keys are IDs of distributed flavor assets in the source account and the values are the matching IDs in the target account
54
+ attr_accessor :distributed_flavor_assets
55
+ # Key-value array where the keys are IDs of distributed thumb assets in the source account and the values are the matching IDs in the target account
56
+ attr_accessor :distributed_thumb_assets
57
+ # Key-value array where the keys are IDs of distributed metadata objects in the source account and the values are the matching IDs in the target account
58
+ attr_accessor :distributed_metadata
59
+ # Key-value array where the keys are IDs of distributed caption assets in the source account and the values are the matching IDs in the target account
60
+ attr_accessor :distributed_caption_assets
61
+ # Key-value array where the keys are IDs of distributed cue points in the source account and the values are the matching IDs in the target account
62
+ attr_accessor :distributed_cue_points
63
+ # Key-value array where the keys are IDs of distributed thumb cue points in the source account and the values are the matching IDs in the target account
64
+ attr_accessor :distributed_thumb_cue_points
65
+ # Key-value array where the keys are IDs of distributed timed thumb assets in the source account and the values are the matching IDs in the target account
66
+ attr_accessor :distributed_timed_thumb_assets
67
+
68
+
69
+ def from_xml(xml_element)
70
+ super
71
+ if xml_element.elements['distributedFlavorAssets'] != nil
72
+ self.distributed_flavor_assets = xml_element.elements['distributedFlavorAssets'].text
73
+ end
74
+ if xml_element.elements['distributedThumbAssets'] != nil
75
+ self.distributed_thumb_assets = xml_element.elements['distributedThumbAssets'].text
76
+ end
77
+ if xml_element.elements['distributedMetadata'] != nil
78
+ self.distributed_metadata = xml_element.elements['distributedMetadata'].text
79
+ end
80
+ if xml_element.elements['distributedCaptionAssets'] != nil
81
+ self.distributed_caption_assets = xml_element.elements['distributedCaptionAssets'].text
82
+ end
83
+ if xml_element.elements['distributedCuePoints'] != nil
84
+ self.distributed_cue_points = xml_element.elements['distributedCuePoints'].text
85
+ end
86
+ if xml_element.elements['distributedThumbCuePoints'] != nil
87
+ self.distributed_thumb_cue_points = xml_element.elements['distributedThumbCuePoints'].text
88
+ end
89
+ if xml_element.elements['distributedTimedThumbAssets'] != nil
90
+ self.distributed_timed_thumb_assets = xml_element.elements['distributedTimedThumbAssets'].text
91
+ end
92
+ end
93
+
94
+ end
95
+
96
+ class KalturaCrossKalturaDistributionProfile < KalturaConfigurableDistributionProfile
97
+ attr_accessor :target_service_url
98
+ attr_accessor :target_account_id
99
+ attr_accessor :target_login_id
100
+ attr_accessor :target_login_password
101
+ attr_accessor :metadata_xslt
102
+ attr_accessor :metadata_xpaths_trigger_update
103
+ attr_accessor :distribute_captions
104
+ attr_accessor :distribute_cue_points
105
+ attr_accessor :distribute_remote_flavor_asset_content
106
+ attr_accessor :distribute_remote_thumb_asset_content
107
+ attr_accessor :distribute_remote_caption_asset_content
108
+ attr_accessor :map_access_control_profile_ids
109
+ attr_accessor :map_conversion_profile_ids
110
+ attr_accessor :map_metadata_profile_ids
111
+ attr_accessor :map_storage_profile_ids
112
+ attr_accessor :map_flavor_params_ids
113
+ attr_accessor :map_thumb_params_ids
114
+ attr_accessor :map_caption_params_ids
115
+
116
+ def target_account_id=(val)
117
+ @target_account_id = val.to_i
118
+ end
119
+ def distribute_captions=(val)
120
+ @distribute_captions = to_b(val)
121
+ end
122
+ def distribute_cue_points=(val)
123
+ @distribute_cue_points = to_b(val)
124
+ end
125
+ def distribute_remote_flavor_asset_content=(val)
126
+ @distribute_remote_flavor_asset_content = to_b(val)
127
+ end
128
+ def distribute_remote_thumb_asset_content=(val)
129
+ @distribute_remote_thumb_asset_content = to_b(val)
130
+ end
131
+ def distribute_remote_caption_asset_content=(val)
132
+ @distribute_remote_caption_asset_content = to_b(val)
133
+ end
134
+
135
+ def from_xml(xml_element)
136
+ super
137
+ if xml_element.elements['targetServiceUrl'] != nil
138
+ self.target_service_url = xml_element.elements['targetServiceUrl'].text
139
+ end
140
+ if xml_element.elements['targetAccountId'] != nil
141
+ self.target_account_id = xml_element.elements['targetAccountId'].text
142
+ end
143
+ if xml_element.elements['targetLoginId'] != nil
144
+ self.target_login_id = xml_element.elements['targetLoginId'].text
145
+ end
146
+ if xml_element.elements['targetLoginPassword'] != nil
147
+ self.target_login_password = xml_element.elements['targetLoginPassword'].text
148
+ end
149
+ if xml_element.elements['metadataXslt'] != nil
150
+ self.metadata_xslt = xml_element.elements['metadataXslt'].text
151
+ end
152
+ if xml_element.elements['metadataXpathsTriggerUpdate'] != nil
153
+ self.metadata_xpaths_trigger_update = KalturaClientBase.object_from_xml(xml_element.elements['metadataXpathsTriggerUpdate'], 'KalturaStringValue')
154
+ end
155
+ if xml_element.elements['distributeCaptions'] != nil
156
+ self.distribute_captions = xml_element.elements['distributeCaptions'].text
157
+ end
158
+ if xml_element.elements['distributeCuePoints'] != nil
159
+ self.distribute_cue_points = xml_element.elements['distributeCuePoints'].text
160
+ end
161
+ if xml_element.elements['distributeRemoteFlavorAssetContent'] != nil
162
+ self.distribute_remote_flavor_asset_content = xml_element.elements['distributeRemoteFlavorAssetContent'].text
163
+ end
164
+ if xml_element.elements['distributeRemoteThumbAssetContent'] != nil
165
+ self.distribute_remote_thumb_asset_content = xml_element.elements['distributeRemoteThumbAssetContent'].text
166
+ end
167
+ if xml_element.elements['distributeRemoteCaptionAssetContent'] != nil
168
+ self.distribute_remote_caption_asset_content = xml_element.elements['distributeRemoteCaptionAssetContent'].text
169
+ end
170
+ if xml_element.elements['mapAccessControlProfileIds'] != nil
171
+ self.map_access_control_profile_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapAccessControlProfileIds'], 'KalturaKeyValue')
172
+ end
173
+ if xml_element.elements['mapConversionProfileIds'] != nil
174
+ self.map_conversion_profile_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapConversionProfileIds'], 'KalturaKeyValue')
175
+ end
176
+ if xml_element.elements['mapMetadataProfileIds'] != nil
177
+ self.map_metadata_profile_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapMetadataProfileIds'], 'KalturaKeyValue')
178
+ end
179
+ if xml_element.elements['mapStorageProfileIds'] != nil
180
+ self.map_storage_profile_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapStorageProfileIds'], 'KalturaKeyValue')
181
+ end
182
+ if xml_element.elements['mapFlavorParamsIds'] != nil
183
+ self.map_flavor_params_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapFlavorParamsIds'], 'KalturaKeyValue')
184
+ end
185
+ if xml_element.elements['mapThumbParamsIds'] != nil
186
+ self.map_thumb_params_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapThumbParamsIds'], 'KalturaKeyValue')
187
+ end
188
+ if xml_element.elements['mapCaptionParamsIds'] != nil
189
+ self.map_caption_params_ids = KalturaClientBase.object_from_xml(xml_element.elements['mapCaptionParamsIds'], 'KalturaKeyValue')
190
+ end
191
+ end
192
+
193
+ end
194
+
195
+ class KalturaCrossKalturaDistributionProviderBaseFilter < KalturaDistributionProviderFilter
196
+
197
+
198
+ def from_xml(xml_element)
199
+ super
200
+ end
201
+
202
+ end
203
+
204
+ class KalturaCrossKalturaDistributionProviderFilter < KalturaCrossKalturaDistributionProviderBaseFilter
205
+
206
+
207
+ def from_xml(xml_element)
208
+ super
209
+ end
210
+
211
+ end
212
+
213
+ class KalturaCrossKalturaDistributionProfileBaseFilter < KalturaConfigurableDistributionProfileFilter
214
+
215
+
216
+ def from_xml(xml_element)
217
+ super
218
+ end
219
+
220
+ end
221
+
222
+ class KalturaCrossKalturaDistributionProfileFilter < KalturaCrossKalturaDistributionProfileBaseFilter
223
+
224
+
225
+ def from_xml(xml_element)
226
+ super
227
+ end
228
+
229
+ end
230
+
231
+
232
+ end
@@ -8,7 +8,7 @@
8
8
  # to do with audio, video, and animation what Wiki platfroms allow them to do with
9
9
  # text.
10
10
  #
11
- # Copyright (C) 2006-2015 Kaltura Inc.
11
+ # Copyright (C) 2006-2019 Kaltura Inc.
12
12
  #
13
13
  # This program is free software: you can redistribute it and/or modify
14
14
  # it under the terms of the GNU Affero General Public License as
@@ -36,6 +36,17 @@ module Kaltura
36
36
  PENDING = 4
37
37
  end
38
38
 
39
+ class KalturaQuestionType
40
+ MULTIPLE_CHOICE_ANSWER = 1
41
+ TRUE_FALSE = 2
42
+ REFLECTION_POINT = 3
43
+ MULTIPLE_ANSWER_QUESTION = 4
44
+ FILL_IN_BLANK = 5
45
+ HOT_SPOT = 6
46
+ GO_TO = 7
47
+ OPEN_QUESTION = 8
48
+ end
49
+
39
50
  class KalturaQuizOutputType
40
51
  PDF = 1
41
52
  end
@@ -79,7 +90,6 @@ module Kaltura
79
90
  attr_accessor :triggered_at
80
91
  attr_accessor :tags
81
92
  # Start time in milliseconds
82
- #
83
93
  attr_accessor :start_time
84
94
  attr_accessor :user_id
85
95
  attr_accessor :partner_data
@@ -87,6 +97,8 @@ module Kaltura
87
97
  attr_accessor :force_stop
88
98
  attr_accessor :thumb_offset
89
99
  attr_accessor :system_name
100
+ attr_accessor :is_momentary
101
+ attr_accessor :copied_from
90
102
 
91
103
  def status=(val)
92
104
  @status = val.to_i
@@ -115,25 +127,66 @@ module Kaltura
115
127
  def thumb_offset=(val)
116
128
  @thumb_offset = val.to_i
117
129
  end
130
+ def is_momentary=(val)
131
+ @is_momentary = to_b(val)
132
+ end
118
133
 
119
134
  def from_xml(xml_element)
120
135
  super
121
- self.id = xml_element.elements['id'].text
122
- self.cue_point_type = xml_element.elements['cuePointType'].text
123
- self.status = xml_element.elements['status'].text
124
- self.entry_id = xml_element.elements['entryId'].text
125
- self.partner_id = xml_element.elements['partnerId'].text
126
- self.created_at = xml_element.elements['createdAt'].text
127
- self.updated_at = xml_element.elements['updatedAt'].text
128
- self.triggered_at = xml_element.elements['triggeredAt'].text
129
- self.tags = xml_element.elements['tags'].text
130
- self.start_time = xml_element.elements['startTime'].text
131
- self.user_id = xml_element.elements['userId'].text
132
- self.partner_data = xml_element.elements['partnerData'].text
133
- self.partner_sort_value = xml_element.elements['partnerSortValue'].text
134
- self.force_stop = xml_element.elements['forceStop'].text
135
- self.thumb_offset = xml_element.elements['thumbOffset'].text
136
- self.system_name = xml_element.elements['systemName'].text
136
+ if xml_element.elements['id'] != nil
137
+ self.id = xml_element.elements['id'].text
138
+ end
139
+ if xml_element.elements['cuePointType'] != nil
140
+ self.cue_point_type = xml_element.elements['cuePointType'].text
141
+ end
142
+ if xml_element.elements['status'] != nil
143
+ self.status = xml_element.elements['status'].text
144
+ end
145
+ if xml_element.elements['entryId'] != nil
146
+ self.entry_id = xml_element.elements['entryId'].text
147
+ end
148
+ if xml_element.elements['partnerId'] != nil
149
+ self.partner_id = xml_element.elements['partnerId'].text
150
+ end
151
+ if xml_element.elements['createdAt'] != nil
152
+ self.created_at = xml_element.elements['createdAt'].text
153
+ end
154
+ if xml_element.elements['updatedAt'] != nil
155
+ self.updated_at = xml_element.elements['updatedAt'].text
156
+ end
157
+ if xml_element.elements['triggeredAt'] != nil
158
+ self.triggered_at = xml_element.elements['triggeredAt'].text
159
+ end
160
+ if xml_element.elements['tags'] != nil
161
+ self.tags = xml_element.elements['tags'].text
162
+ end
163
+ if xml_element.elements['startTime'] != nil
164
+ self.start_time = xml_element.elements['startTime'].text
165
+ end
166
+ if xml_element.elements['userId'] != nil
167
+ self.user_id = xml_element.elements['userId'].text
168
+ end
169
+ if xml_element.elements['partnerData'] != nil
170
+ self.partner_data = xml_element.elements['partnerData'].text
171
+ end
172
+ if xml_element.elements['partnerSortValue'] != nil
173
+ self.partner_sort_value = xml_element.elements['partnerSortValue'].text
174
+ end
175
+ if xml_element.elements['forceStop'] != nil
176
+ self.force_stop = xml_element.elements['forceStop'].text
177
+ end
178
+ if xml_element.elements['thumbOffset'] != nil
179
+ self.thumb_offset = xml_element.elements['thumbOffset'].text
180
+ end
181
+ if xml_element.elements['systemName'] != nil
182
+ self.system_name = xml_element.elements['systemName'].text
183
+ end
184
+ if xml_element.elements['isMomentary'] != nil
185
+ self.is_momentary = xml_element.elements['isMomentary'].text
186
+ end
187
+ if xml_element.elements['copiedFrom'] != nil
188
+ self.copied_from = xml_element.elements['copiedFrom'].text
189
+ end
137
190
  end
138
191
 
139
192
  end
@@ -144,7 +197,9 @@ module Kaltura
144
197
 
145
198
  def from_xml(xml_element)
146
199
  super
147
- self.objects = KalturaClientBase.object_from_xml(xml_element.elements['objects'], 'KalturaCuePoint')
200
+ if xml_element.elements['objects'] != nil
201
+ self.objects = KalturaClientBase.object_from_xml(xml_element.elements['objects'], 'KalturaCuePoint')
202
+ end
148
203
  end
149
204
 
150
205
  end
@@ -221,34 +276,90 @@ module Kaltura
221
276
 
222
277
  def from_xml(xml_element)
223
278
  super
224
- self.id_equal = xml_element.elements['idEqual'].text
225
- self.id_in = xml_element.elements['idIn'].text
226
- self.cue_point_type_equal = xml_element.elements['cuePointTypeEqual'].text
227
- self.cue_point_type_in = xml_element.elements['cuePointTypeIn'].text
228
- self.status_equal = xml_element.elements['statusEqual'].text
229
- self.status_in = xml_element.elements['statusIn'].text
230
- self.entry_id_equal = xml_element.elements['entryIdEqual'].text
231
- self.entry_id_in = xml_element.elements['entryIdIn'].text
232
- self.created_at_greater_than_or_equal = xml_element.elements['createdAtGreaterThanOrEqual'].text
233
- self.created_at_less_than_or_equal = xml_element.elements['createdAtLessThanOrEqual'].text
234
- self.updated_at_greater_than_or_equal = xml_element.elements['updatedAtGreaterThanOrEqual'].text
235
- self.updated_at_less_than_or_equal = xml_element.elements['updatedAtLessThanOrEqual'].text
236
- self.triggered_at_greater_than_or_equal = xml_element.elements['triggeredAtGreaterThanOrEqual'].text
237
- self.triggered_at_less_than_or_equal = xml_element.elements['triggeredAtLessThanOrEqual'].text
238
- self.tags_like = xml_element.elements['tagsLike'].text
239
- self.tags_multi_like_or = xml_element.elements['tagsMultiLikeOr'].text
240
- self.tags_multi_like_and = xml_element.elements['tagsMultiLikeAnd'].text
241
- self.start_time_greater_than_or_equal = xml_element.elements['startTimeGreaterThanOrEqual'].text
242
- self.start_time_less_than_or_equal = xml_element.elements['startTimeLessThanOrEqual'].text
243
- self.user_id_equal = xml_element.elements['userIdEqual'].text
244
- self.user_id_in = xml_element.elements['userIdIn'].text
245
- self.partner_sort_value_equal = xml_element.elements['partnerSortValueEqual'].text
246
- self.partner_sort_value_in = xml_element.elements['partnerSortValueIn'].text
247
- self.partner_sort_value_greater_than_or_equal = xml_element.elements['partnerSortValueGreaterThanOrEqual'].text
248
- self.partner_sort_value_less_than_or_equal = xml_element.elements['partnerSortValueLessThanOrEqual'].text
249
- self.force_stop_equal = xml_element.elements['forceStopEqual'].text
250
- self.system_name_equal = xml_element.elements['systemNameEqual'].text
251
- self.system_name_in = xml_element.elements['systemNameIn'].text
279
+ if xml_element.elements['idEqual'] != nil
280
+ self.id_equal = xml_element.elements['idEqual'].text
281
+ end
282
+ if xml_element.elements['idIn'] != nil
283
+ self.id_in = xml_element.elements['idIn'].text
284
+ end
285
+ if xml_element.elements['cuePointTypeEqual'] != nil
286
+ self.cue_point_type_equal = xml_element.elements['cuePointTypeEqual'].text
287
+ end
288
+ if xml_element.elements['cuePointTypeIn'] != nil
289
+ self.cue_point_type_in = xml_element.elements['cuePointTypeIn'].text
290
+ end
291
+ if xml_element.elements['statusEqual'] != nil
292
+ self.status_equal = xml_element.elements['statusEqual'].text
293
+ end
294
+ if xml_element.elements['statusIn'] != nil
295
+ self.status_in = xml_element.elements['statusIn'].text
296
+ end
297
+ if xml_element.elements['entryIdEqual'] != nil
298
+ self.entry_id_equal = xml_element.elements['entryIdEqual'].text
299
+ end
300
+ if xml_element.elements['entryIdIn'] != nil
301
+ self.entry_id_in = xml_element.elements['entryIdIn'].text
302
+ end
303
+ if xml_element.elements['createdAtGreaterThanOrEqual'] != nil
304
+ self.created_at_greater_than_or_equal = xml_element.elements['createdAtGreaterThanOrEqual'].text
305
+ end
306
+ if xml_element.elements['createdAtLessThanOrEqual'] != nil
307
+ self.created_at_less_than_or_equal = xml_element.elements['createdAtLessThanOrEqual'].text
308
+ end
309
+ if xml_element.elements['updatedAtGreaterThanOrEqual'] != nil
310
+ self.updated_at_greater_than_or_equal = xml_element.elements['updatedAtGreaterThanOrEqual'].text
311
+ end
312
+ if xml_element.elements['updatedAtLessThanOrEqual'] != nil
313
+ self.updated_at_less_than_or_equal = xml_element.elements['updatedAtLessThanOrEqual'].text
314
+ end
315
+ if xml_element.elements['triggeredAtGreaterThanOrEqual'] != nil
316
+ self.triggered_at_greater_than_or_equal = xml_element.elements['triggeredAtGreaterThanOrEqual'].text
317
+ end
318
+ if xml_element.elements['triggeredAtLessThanOrEqual'] != nil
319
+ self.triggered_at_less_than_or_equal = xml_element.elements['triggeredAtLessThanOrEqual'].text
320
+ end
321
+ if xml_element.elements['tagsLike'] != nil
322
+ self.tags_like = xml_element.elements['tagsLike'].text
323
+ end
324
+ if xml_element.elements['tagsMultiLikeOr'] != nil
325
+ self.tags_multi_like_or = xml_element.elements['tagsMultiLikeOr'].text
326
+ end
327
+ if xml_element.elements['tagsMultiLikeAnd'] != nil
328
+ self.tags_multi_like_and = xml_element.elements['tagsMultiLikeAnd'].text
329
+ end
330
+ if xml_element.elements['startTimeGreaterThanOrEqual'] != nil
331
+ self.start_time_greater_than_or_equal = xml_element.elements['startTimeGreaterThanOrEqual'].text
332
+ end
333
+ if xml_element.elements['startTimeLessThanOrEqual'] != nil
334
+ self.start_time_less_than_or_equal = xml_element.elements['startTimeLessThanOrEqual'].text
335
+ end
336
+ if xml_element.elements['userIdEqual'] != nil
337
+ self.user_id_equal = xml_element.elements['userIdEqual'].text
338
+ end
339
+ if xml_element.elements['userIdIn'] != nil
340
+ self.user_id_in = xml_element.elements['userIdIn'].text
341
+ end
342
+ if xml_element.elements['partnerSortValueEqual'] != nil
343
+ self.partner_sort_value_equal = xml_element.elements['partnerSortValueEqual'].text
344
+ end
345
+ if xml_element.elements['partnerSortValueIn'] != nil
346
+ self.partner_sort_value_in = xml_element.elements['partnerSortValueIn'].text
347
+ end
348
+ if xml_element.elements['partnerSortValueGreaterThanOrEqual'] != nil
349
+ self.partner_sort_value_greater_than_or_equal = xml_element.elements['partnerSortValueGreaterThanOrEqual'].text
350
+ end
351
+ if xml_element.elements['partnerSortValueLessThanOrEqual'] != nil
352
+ self.partner_sort_value_less_than_or_equal = xml_element.elements['partnerSortValueLessThanOrEqual'].text
353
+ end
354
+ if xml_element.elements['forceStopEqual'] != nil
355
+ self.force_stop_equal = xml_element.elements['forceStopEqual'].text
356
+ end
357
+ if xml_element.elements['systemNameEqual'] != nil
358
+ self.system_name_equal = xml_element.elements['systemNameEqual'].text
359
+ end
360
+ if xml_element.elements['systemNameIn'] != nil
361
+ self.system_name_in = xml_element.elements['systemNameIn'].text
362
+ end
252
363
  end
253
364
 
254
365
  end
@@ -267,23 +378,28 @@ module Kaltura
267
378
 
268
379
  def from_xml(xml_element)
269
380
  super
270
- self.free_text = xml_element.elements['freeText'].text
271
- self.user_id_equal_current = xml_element.elements['userIdEqualCurrent'].text
272
- self.user_id_current = xml_element.elements['userIdCurrent'].text
381
+ if xml_element.elements['freeText'] != nil
382
+ self.free_text = xml_element.elements['freeText'].text
383
+ end
384
+ if xml_element.elements['userIdEqualCurrent'] != nil
385
+ self.user_id_equal_current = xml_element.elements['userIdEqualCurrent'].text
386
+ end
387
+ if xml_element.elements['userIdCurrent'] != nil
388
+ self.user_id_current = xml_element.elements['userIdCurrent'].text
389
+ end
273
390
  end
274
391
 
275
392
  end
276
393
 
277
394
 
278
395
  # Cue Point service
279
- #
280
396
  class KalturaCuePointService < KalturaServiceBase
281
397
  def initialize(client)
282
398
  super(client)
283
399
  end
284
400
 
285
401
  # Allows you to add an cue point object associated with an entry
286
- #
402
+ # @return [KalturaCuePoint]
287
403
  def add(cue_point)
288
404
  kparams = {}
289
405
  client.add_param(kparams, 'cuePoint', cue_point)
@@ -295,7 +411,7 @@ module Kaltura
295
411
  end
296
412
 
297
413
  # Allows you to add multiple cue points objects by uploading XML that contains multiple cue point definitions
298
- #
414
+ # @return [KalturaCuePointListResponse]
299
415
  def add_from_bulk(file_data)
300
416
  kparams = {}
301
417
  kfiles = {}
@@ -307,18 +423,45 @@ module Kaltura
307
423
  return client.do_queue()
308
424
  end
309
425
 
310
- # Download multiple cue points objects as XML definitions
311
- #
312
- def serve_bulk(filter=KalturaNotImplemented, pager=KalturaNotImplemented)
426
+ # Clone cuePoint with id to given entry
427
+ # @return [KalturaCuePoint]
428
+ def clone(id, entry_id)
429
+ kparams = {}
430
+ client.add_param(kparams, 'id', id)
431
+ client.add_param(kparams, 'entryId', entry_id)
432
+ client.queue_service_action_call('cuepoint_cuepoint', 'clone', 'KalturaCuePoint', kparams)
433
+ if (client.is_multirequest)
434
+ return nil
435
+ end
436
+ return client.do_queue()
437
+ end
438
+
439
+ # count cue point objects by filter
440
+ # @return [int]
441
+ def count(filter=KalturaNotImplemented)
313
442
  kparams = {}
314
443
  client.add_param(kparams, 'filter', filter)
315
- client.add_param(kparams, 'pager', pager)
316
- client.queue_service_action_call('cuepoint_cuepoint', 'serveBulk', 'file', kparams)
317
- return client.get_serve_url()
444
+ client.queue_service_action_call('cuepoint_cuepoint', 'count', 'int', kparams)
445
+ if (client.is_multirequest)
446
+ return nil
447
+ end
448
+ return client.do_queue()
449
+ end
450
+
451
+ # delete cue point by id, and delete all children cue points
452
+ # @return []
453
+ def delete(id)
454
+ kparams = {}
455
+ client.add_param(kparams, 'id', id)
456
+ client.queue_service_action_call('cuepoint_cuepoint', 'delete', '', kparams)
457
+ if (client.is_multirequest)
458
+ return nil
459
+ end
460
+ return client.do_queue()
318
461
  end
319
462
 
320
463
  # Retrieve an CuePoint object by id
321
- #
464
+ # @return [KalturaCuePoint]
322
465
  def get(id)
323
466
  kparams = {}
324
467
  client.add_param(kparams, 'id', id)
@@ -330,7 +473,7 @@ module Kaltura
330
473
  end
331
474
 
332
475
  # List cue point objects by filter and pager
333
- #
476
+ # @return [KalturaCuePointListResponse]
334
477
  def list(filter=KalturaNotImplemented, pager=KalturaNotImplemented)
335
478
  kparams = {}
336
479
  client.add_param(kparams, 'filter', filter)
@@ -342,37 +485,49 @@ module Kaltura
342
485
  return client.do_queue()
343
486
  end
344
487
 
345
- # count cue point objects by filter
346
- #
347
- def count(filter=KalturaNotImplemented)
488
+ # Download multiple cue points objects as XML definitions
489
+ # @return [file]
490
+ def serve_bulk(filter=KalturaNotImplemented, pager=KalturaNotImplemented)
348
491
  kparams = {}
349
492
  client.add_param(kparams, 'filter', filter)
350
- client.queue_service_action_call('cuepoint_cuepoint', 'count', 'int', kparams)
493
+ client.add_param(kparams, 'pager', pager)
494
+ client.queue_service_action_call('cuepoint_cuepoint', 'serveBulk', 'file', kparams)
495
+ return client.get_serve_url()
496
+ end
497
+
498
+ # Update cue point by id
499
+ # @return [KalturaCuePoint]
500
+ def update(id, cue_point)
501
+ kparams = {}
502
+ client.add_param(kparams, 'id', id)
503
+ client.add_param(kparams, 'cuePoint', cue_point)
504
+ client.queue_service_action_call('cuepoint_cuepoint', 'update', 'KalturaCuePoint', kparams)
351
505
  if (client.is_multirequest)
352
506
  return nil
353
507
  end
354
508
  return client.do_queue()
355
509
  end
356
510
 
357
- # Update cue point by id
358
- #
359
- def update(id, cue_point)
511
+ # @return [KalturaCuePoint]
512
+ def update_cue_points_times(id, start_time, end_time=KalturaNotImplemented)
360
513
  kparams = {}
361
514
  client.add_param(kparams, 'id', id)
362
- client.add_param(kparams, 'cuePoint', cue_point)
363
- client.queue_service_action_call('cuepoint_cuepoint', 'update', 'KalturaCuePoint', kparams)
515
+ client.add_param(kparams, 'startTime', start_time)
516
+ client.add_param(kparams, 'endTime', end_time)
517
+ client.queue_service_action_call('cuepoint_cuepoint', 'updateCuePointsTimes', 'KalturaCuePoint', kparams)
364
518
  if (client.is_multirequest)
365
519
  return nil
366
520
  end
367
521
  return client.do_queue()
368
522
  end
369
523
 
370
- # delete cue point by id, and delete all children cue points
371
- #
372
- def delete(id)
524
+ # Update cuePoint status by id
525
+ # @return []
526
+ def update_status(id, status)
373
527
  kparams = {}
374
528
  client.add_param(kparams, 'id', id)
375
- client.queue_service_action_call('cuepoint_cuepoint', 'delete', '', kparams)
529
+ client.add_param(kparams, 'status', status)
530
+ client.queue_service_action_call('cuepoint_cuepoint', 'updateStatus', '', kparams)
376
531
  if (client.is_multirequest)
377
532
  return nil
378
533
  end