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
@@ -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
@@ -45,6 +45,7 @@ module Kaltura
45
45
  STATIC_LIST = "1"
46
46
  CATEGORY = "2"
47
47
  USER = "3"
48
+ GROUP = "4"
48
49
  end
49
50
 
50
51
  class KalturaEmailNotificationTemplateOrderBy
@@ -58,38 +59,39 @@ module Kaltura
58
59
 
59
60
  class KalturaEmailNotificationRecipient < KalturaObjectBase
60
61
  # Recipient e-mail address
61
- #
62
62
  attr_accessor :email
63
63
  # Recipient name
64
- #
65
64
  attr_accessor :name
66
65
 
67
66
 
68
67
  def from_xml(xml_element)
69
68
  super
70
- self.email = KalturaClientBase.object_from_xml(xml_element.elements['email'], 'KalturaStringValue')
71
- self.name = KalturaClientBase.object_from_xml(xml_element.elements['name'], 'KalturaStringValue')
69
+ if xml_element.elements['email'] != nil
70
+ self.email = KalturaClientBase.object_from_xml(xml_element.elements['email'], 'KalturaStringValue')
71
+ end
72
+ if xml_element.elements['name'] != nil
73
+ self.name = KalturaClientBase.object_from_xml(xml_element.elements['name'], 'KalturaStringValue')
74
+ end
72
75
  end
73
76
 
74
77
  end
75
78
 
76
79
  # Abstract class representing the final output recipients going into the batch mechanism
77
- #
78
80
  class KalturaEmailNotificationRecipientJobData < KalturaObjectBase
79
81
  # Provider type of the job data.
80
- #
81
82
  attr_accessor :provider_type
82
83
 
83
84
 
84
85
  def from_xml(xml_element)
85
86
  super
86
- self.provider_type = xml_element.elements['providerType'].text
87
+ if xml_element.elements['providerType'] != nil
88
+ self.provider_type = xml_element.elements['providerType'].text
89
+ end
87
90
  end
88
91
 
89
92
  end
90
93
 
91
94
  # Abstract core class which provides the recipients (to, CC, BCC) for an email notification
92
- #
93
95
  class KalturaEmailNotificationRecipientProvider < KalturaObjectBase
94
96
 
95
97
 
@@ -134,48 +136,108 @@ module Kaltura
134
136
 
135
137
  def from_xml(xml_element)
136
138
  super
137
- self.user_id_equal = xml_element.elements['userIdEqual'].text
138
- self.user_id_in = xml_element.elements['userIdIn'].text
139
- self.status_equal = xml_element.elements['statusEqual'].text
140
- self.status_in = xml_element.elements['statusIn'].text
141
- self.created_at_greater_than_or_equal = xml_element.elements['createdAtGreaterThanOrEqual'].text
142
- self.created_at_less_than_or_equal = xml_element.elements['createdAtLessThanOrEqual'].text
143
- self.updated_at_greater_than_or_equal = xml_element.elements['updatedAtGreaterThanOrEqual'].text
144
- self.updated_at_less_than_or_equal = xml_element.elements['updatedAtLessThanOrEqual'].text
145
- self.update_method_equal = xml_element.elements['updateMethodEqual'].text
146
- self.update_method_in = xml_element.elements['updateMethodIn'].text
147
- self.permission_names_match_and = xml_element.elements['permissionNamesMatchAnd'].text
148
- self.permission_names_match_or = xml_element.elements['permissionNamesMatchOr'].text
139
+ if xml_element.elements['userIdEqual'] != nil
140
+ self.user_id_equal = xml_element.elements['userIdEqual'].text
141
+ end
142
+ if xml_element.elements['userIdIn'] != nil
143
+ self.user_id_in = xml_element.elements['userIdIn'].text
144
+ end
145
+ if xml_element.elements['statusEqual'] != nil
146
+ self.status_equal = xml_element.elements['statusEqual'].text
147
+ end
148
+ if xml_element.elements['statusIn'] != nil
149
+ self.status_in = xml_element.elements['statusIn'].text
150
+ end
151
+ if xml_element.elements['createdAtGreaterThanOrEqual'] != nil
152
+ self.created_at_greater_than_or_equal = xml_element.elements['createdAtGreaterThanOrEqual'].text
153
+ end
154
+ if xml_element.elements['createdAtLessThanOrEqual'] != nil
155
+ self.created_at_less_than_or_equal = xml_element.elements['createdAtLessThanOrEqual'].text
156
+ end
157
+ if xml_element.elements['updatedAtGreaterThanOrEqual'] != nil
158
+ self.updated_at_greater_than_or_equal = xml_element.elements['updatedAtGreaterThanOrEqual'].text
159
+ end
160
+ if xml_element.elements['updatedAtLessThanOrEqual'] != nil
161
+ self.updated_at_less_than_or_equal = xml_element.elements['updatedAtLessThanOrEqual'].text
162
+ end
163
+ if xml_element.elements['updateMethodEqual'] != nil
164
+ self.update_method_equal = xml_element.elements['updateMethodEqual'].text
165
+ end
166
+ if xml_element.elements['updateMethodIn'] != nil
167
+ self.update_method_in = xml_element.elements['updateMethodIn'].text
168
+ end
169
+ if xml_element.elements['permissionNamesMatchAnd'] != nil
170
+ self.permission_names_match_and = xml_element.elements['permissionNamesMatchAnd'].text
171
+ end
172
+ if xml_element.elements['permissionNamesMatchOr'] != nil
173
+ self.permission_names_match_or = xml_element.elements['permissionNamesMatchOr'].text
174
+ end
149
175
  end
150
176
 
151
177
  end
152
178
 
153
179
  # Job Data representing the provider of recipients for a single categoryId
154
- #
155
180
  class KalturaEmailNotificationCategoryRecipientJobData < KalturaEmailNotificationRecipientJobData
156
181
  attr_accessor :category_user_filter
157
182
 
158
183
 
159
184
  def from_xml(xml_element)
160
185
  super
161
- self.category_user_filter = KalturaClientBase.object_from_xml(xml_element.elements['categoryUserFilter'], 'KalturaCategoryUserFilter')
186
+ if xml_element.elements['categoryUserFilter'] != nil
187
+ self.category_user_filter = KalturaClientBase.object_from_xml(xml_element.elements['categoryUserFilter'], 'KalturaCategoryUserFilter')
188
+ end
162
189
  end
163
190
 
164
191
  end
165
192
 
166
193
  # API object which provides the recipients of category related notifications.
167
- #
168
194
  class KalturaEmailNotificationCategoryRecipientProvider < KalturaEmailNotificationRecipientProvider
169
195
  # The ID of the category whose subscribers should receive the email notification.
170
- #
171
196
  attr_accessor :category_id
197
+ # The IDs of the categories whose subscribers should receive the email notification.
198
+ attr_accessor :category_ids
172
199
  attr_accessor :category_user_filter
173
200
 
174
201
 
175
202
  def from_xml(xml_element)
176
203
  super
177
- self.category_id = KalturaClientBase.object_from_xml(xml_element.elements['categoryId'], 'KalturaStringValue')
178
- self.category_user_filter = KalturaClientBase.object_from_xml(xml_element.elements['categoryUserFilter'], 'KalturaCategoryUserProviderFilter')
204
+ if xml_element.elements['categoryId'] != nil
205
+ self.category_id = KalturaClientBase.object_from_xml(xml_element.elements['categoryId'], 'KalturaStringValue')
206
+ end
207
+ if xml_element.elements['categoryIds'] != nil
208
+ self.category_ids = KalturaClientBase.object_from_xml(xml_element.elements['categoryIds'], 'KalturaStringValue')
209
+ end
210
+ if xml_element.elements['categoryUserFilter'] != nil
211
+ self.category_user_filter = KalturaClientBase.object_from_xml(xml_element.elements['categoryUserFilter'], 'KalturaCategoryUserProviderFilter')
212
+ end
213
+ end
214
+
215
+ end
216
+
217
+ # JobData representing the dynamic user receipient array
218
+ class KalturaEmailNotificationGroupRecipientJobData < KalturaEmailNotificationRecipientJobData
219
+ attr_accessor :group_id
220
+
221
+
222
+ def from_xml(xml_element)
223
+ super
224
+ if xml_element.elements['groupId'] != nil
225
+ self.group_id = xml_element.elements['groupId'].text
226
+ end
227
+ end
228
+
229
+ end
230
+
231
+ # API class for recipient provider which constructs a dynamic list of recipients according to a user filter
232
+ class KalturaEmailNotificationGroupRecipientProvider < KalturaEmailNotificationRecipientProvider
233
+ attr_accessor :group_id
234
+
235
+
236
+ def from_xml(xml_element)
237
+ super
238
+ if xml_element.elements['groupId'] != nil
239
+ self.group_id = xml_element.elements['groupId'].text
240
+ end
179
241
  end
180
242
 
181
243
  end
@@ -190,79 +252,65 @@ module Kaltura
190
252
  end
191
253
 
192
254
  # JobData representing the static receipient array
193
- #
194
255
  class KalturaEmailNotificationStaticRecipientJobData < KalturaEmailNotificationRecipientJobData
195
256
  # Email to emails and names
196
- #
197
257
  attr_accessor :email_recipients
198
258
 
199
259
 
200
260
  def from_xml(xml_element)
201
261
  super
202
- self.email_recipients = KalturaClientBase.object_from_xml(xml_element.elements['emailRecipients'], 'KalturaKeyValue')
262
+ if xml_element.elements['emailRecipients'] != nil
263
+ self.email_recipients = KalturaClientBase.object_from_xml(xml_element.elements['emailRecipients'], 'KalturaKeyValue')
264
+ end
203
265
  end
204
266
 
205
267
  end
206
268
 
207
269
  # API class for recipient provider containing a static list of email recipients.
208
- #
209
270
  class KalturaEmailNotificationStaticRecipientProvider < KalturaEmailNotificationRecipientProvider
210
271
  # Email to emails and names
211
- #
212
272
  attr_accessor :email_recipients
213
273
 
214
274
 
215
275
  def from_xml(xml_element)
216
276
  super
217
- self.email_recipients = KalturaClientBase.object_from_xml(xml_element.elements['emailRecipients'], 'KalturaEmailNotificationRecipient')
277
+ if xml_element.elements['emailRecipients'] != nil
278
+ self.email_recipients = KalturaClientBase.object_from_xml(xml_element.elements['emailRecipients'], 'KalturaEmailNotificationRecipient')
279
+ end
218
280
  end
219
281
 
220
282
  end
221
283
 
222
284
  class KalturaEmailNotificationTemplate < KalturaEventNotificationTemplate
223
285
  # Define the email body format
224
- #
225
286
  attr_accessor :format
226
- # Define the email subject
227
- #
287
+ # Define the email subject
228
288
  attr_accessor :subject
229
289
  # Define the email body content
230
- #
231
290
  attr_accessor :body
232
291
  # Define the email sender email
233
- #
234
292
  attr_accessor :from_email
235
293
  # Define the email sender name
236
- #
237
294
  attr_accessor :from_name
238
295
  # Email recipient emails and names
239
- #
240
296
  attr_accessor :to
241
297
  # Email recipient emails and names
242
- #
243
298
  attr_accessor :cc
244
299
  # Email recipient emails and names
245
- #
246
300
  attr_accessor :bcc
247
- # Default email addresses to whom the reply should be sent.
248
- #
301
+ # Default email addresses to whom the reply should be sent.
249
302
  attr_accessor :reply_to
250
303
  # Define the email priority
251
- #
252
304
  attr_accessor :priority
253
305
  # Email address that a reading confirmation will be sent
254
- #
255
306
  attr_accessor :confirm_reading_to
256
307
  # Hostname to use in Message-Id and Received headers and as default HELLO string.
257
308
  # If empty, the value returned by SERVER_NAME is used or 'localhost.localdomain'.
258
- #
259
309
  attr_accessor :hostname
260
310
  # Sets the message ID to be used in the Message-Id header.
261
311
  # If empty, a unique id will be generated.
262
- #
263
312
  attr_accessor :message_id
264
313
  # Adds a e-mail custom header
265
- #
266
314
  attr_accessor :custom_headers
267
315
 
268
316
  def priority=(val)
@@ -271,85 +319,104 @@ module Kaltura
271
319
 
272
320
  def from_xml(xml_element)
273
321
  super
274
- self.format = xml_element.elements['format'].text
275
- self.subject = xml_element.elements['subject'].text
276
- self.body = xml_element.elements['body'].text
277
- self.from_email = xml_element.elements['fromEmail'].text
278
- self.from_name = xml_element.elements['fromName'].text
279
- self.to = KalturaClientBase.object_from_xml(xml_element.elements['to'], 'KalturaEmailNotificationRecipientProvider')
280
- self.cc = KalturaClientBase.object_from_xml(xml_element.elements['cc'], 'KalturaEmailNotificationRecipientProvider')
281
- self.bcc = KalturaClientBase.object_from_xml(xml_element.elements['bcc'], 'KalturaEmailNotificationRecipientProvider')
282
- self.reply_to = KalturaClientBase.object_from_xml(xml_element.elements['replyTo'], 'KalturaEmailNotificationRecipientProvider')
283
- self.priority = xml_element.elements['priority'].text
284
- self.confirm_reading_to = xml_element.elements['confirmReadingTo'].text
285
- self.hostname = xml_element.elements['hostname'].text
286
- self.message_id = xml_element.elements['messageID'].text
287
- self.custom_headers = KalturaClientBase.object_from_xml(xml_element.elements['customHeaders'], 'KalturaKeyValue')
322
+ if xml_element.elements['format'] != nil
323
+ self.format = xml_element.elements['format'].text
324
+ end
325
+ if xml_element.elements['subject'] != nil
326
+ self.subject = xml_element.elements['subject'].text
327
+ end
328
+ if xml_element.elements['body'] != nil
329
+ self.body = xml_element.elements['body'].text
330
+ end
331
+ if xml_element.elements['fromEmail'] != nil
332
+ self.from_email = xml_element.elements['fromEmail'].text
333
+ end
334
+ if xml_element.elements['fromName'] != nil
335
+ self.from_name = xml_element.elements['fromName'].text
336
+ end
337
+ if xml_element.elements['to'] != nil
338
+ self.to = KalturaClientBase.object_from_xml(xml_element.elements['to'], 'KalturaEmailNotificationRecipientProvider')
339
+ end
340
+ if xml_element.elements['cc'] != nil
341
+ self.cc = KalturaClientBase.object_from_xml(xml_element.elements['cc'], 'KalturaEmailNotificationRecipientProvider')
342
+ end
343
+ if xml_element.elements['bcc'] != nil
344
+ self.bcc = KalturaClientBase.object_from_xml(xml_element.elements['bcc'], 'KalturaEmailNotificationRecipientProvider')
345
+ end
346
+ if xml_element.elements['replyTo'] != nil
347
+ self.reply_to = KalturaClientBase.object_from_xml(xml_element.elements['replyTo'], 'KalturaEmailNotificationRecipientProvider')
348
+ end
349
+ if xml_element.elements['priority'] != nil
350
+ self.priority = xml_element.elements['priority'].text
351
+ end
352
+ if xml_element.elements['confirmReadingTo'] != nil
353
+ self.confirm_reading_to = xml_element.elements['confirmReadingTo'].text
354
+ end
355
+ if xml_element.elements['hostname'] != nil
356
+ self.hostname = xml_element.elements['hostname'].text
357
+ end
358
+ if xml_element.elements['messageID'] != nil
359
+ self.message_id = xml_element.elements['messageID'].text
360
+ end
361
+ if xml_element.elements['customHeaders'] != nil
362
+ self.custom_headers = KalturaClientBase.object_from_xml(xml_element.elements['customHeaders'], 'KalturaKeyValue')
363
+ end
288
364
  end
289
365
 
290
366
  end
291
367
 
292
368
  # JobData representing the dynamic user receipient array
293
- #
294
369
  class KalturaEmailNotificationUserRecipientJobData < KalturaEmailNotificationRecipientJobData
295
370
  attr_accessor :filter
296
371
 
297
372
 
298
373
  def from_xml(xml_element)
299
374
  super
300
- self.filter = KalturaClientBase.object_from_xml(xml_element.elements['filter'], 'KalturaUserFilter')
375
+ if xml_element.elements['filter'] != nil
376
+ self.filter = KalturaClientBase.object_from_xml(xml_element.elements['filter'], 'KalturaUserFilter')
377
+ end
301
378
  end
302
379
 
303
380
  end
304
381
 
305
382
  # API class for recipient provider which constructs a dynamic list of recipients according to a user filter
306
- #
307
383
  class KalturaEmailNotificationUserRecipientProvider < KalturaEmailNotificationRecipientProvider
308
384
  attr_accessor :filter
309
385
 
310
386
 
311
387
  def from_xml(xml_element)
312
388
  super
313
- self.filter = KalturaClientBase.object_from_xml(xml_element.elements['filter'], 'KalturaUserFilter')
389
+ if xml_element.elements['filter'] != nil
390
+ self.filter = KalturaClientBase.object_from_xml(xml_element.elements['filter'], 'KalturaUserFilter')
391
+ end
314
392
  end
315
393
 
316
394
  end
317
395
 
318
396
  class KalturaEmailNotificationDispatchJobData < KalturaEventNotificationDispatchJobData
319
397
  # Define the email sender email
320
- #
321
398
  attr_accessor :from_email
322
399
  # Define the email sender name
323
- #
324
400
  attr_accessor :from_name
325
401
  # Email recipient emails and names, key is mail address and value is the name
326
- #
327
402
  attr_accessor :to
328
403
  # Email cc emails and names, key is mail address and value is the name
329
- #
330
404
  attr_accessor :cc
331
405
  # Email bcc emails and names, key is mail address and value is the name
332
- #
333
406
  attr_accessor :bcc
334
407
  # Email addresses that a replies should be sent to, key is mail address and value is the name
335
- #
336
408
  attr_accessor :reply_to
337
409
  # Define the email priority
338
- #
339
410
  attr_accessor :priority
340
411
  # Email address that a reading confirmation will be sent to
341
- #
342
412
  attr_accessor :confirm_reading_to
343
413
  # Hostname to use in Message-Id and Received headers and as default HELO string.
344
414
  # If empty, the value returned by SERVER_NAME is used or 'localhost.localdomain'.
345
- #
346
415
  attr_accessor :hostname
347
416
  # Sets the message ID to be used in the Message-Id header.
348
417
  # If empty, a unique id will be generated.
349
- #
350
418
  attr_accessor :message_id
351
419
  # Adds a e-mail custom header
352
- #
353
420
  attr_accessor :custom_headers
354
421
 
355
422
  def priority=(val)
@@ -358,17 +425,39 @@ module Kaltura
358
425
 
359
426
  def from_xml(xml_element)
360
427
  super
361
- self.from_email = xml_element.elements['fromEmail'].text
362
- self.from_name = xml_element.elements['fromName'].text
363
- self.to = KalturaClientBase.object_from_xml(xml_element.elements['to'], 'KalturaEmailNotificationRecipientJobData')
364
- self.cc = KalturaClientBase.object_from_xml(xml_element.elements['cc'], 'KalturaEmailNotificationRecipientJobData')
365
- self.bcc = KalturaClientBase.object_from_xml(xml_element.elements['bcc'], 'KalturaEmailNotificationRecipientJobData')
366
- self.reply_to = KalturaClientBase.object_from_xml(xml_element.elements['replyTo'], 'KalturaEmailNotificationRecipientJobData')
367
- self.priority = xml_element.elements['priority'].text
368
- self.confirm_reading_to = xml_element.elements['confirmReadingTo'].text
369
- self.hostname = xml_element.elements['hostname'].text
370
- self.message_id = xml_element.elements['messageID'].text
371
- self.custom_headers = KalturaClientBase.object_from_xml(xml_element.elements['customHeaders'], 'KalturaKeyValue')
428
+ if xml_element.elements['fromEmail'] != nil
429
+ self.from_email = xml_element.elements['fromEmail'].text
430
+ end
431
+ if xml_element.elements['fromName'] != nil
432
+ self.from_name = xml_element.elements['fromName'].text
433
+ end
434
+ if xml_element.elements['to'] != nil
435
+ self.to = KalturaClientBase.object_from_xml(xml_element.elements['to'], 'KalturaEmailNotificationRecipientJobData')
436
+ end
437
+ if xml_element.elements['cc'] != nil
438
+ self.cc = KalturaClientBase.object_from_xml(xml_element.elements['cc'], 'KalturaEmailNotificationRecipientJobData')
439
+ end
440
+ if xml_element.elements['bcc'] != nil
441
+ self.bcc = KalturaClientBase.object_from_xml(xml_element.elements['bcc'], 'KalturaEmailNotificationRecipientJobData')
442
+ end
443
+ if xml_element.elements['replyTo'] != nil
444
+ self.reply_to = KalturaClientBase.object_from_xml(xml_element.elements['replyTo'], 'KalturaEmailNotificationRecipientJobData')
445
+ end
446
+ if xml_element.elements['priority'] != nil
447
+ self.priority = xml_element.elements['priority'].text
448
+ end
449
+ if xml_element.elements['confirmReadingTo'] != nil
450
+ self.confirm_reading_to = xml_element.elements['confirmReadingTo'].text
451
+ end
452
+ if xml_element.elements['hostname'] != nil
453
+ self.hostname = xml_element.elements['hostname'].text
454
+ end
455
+ if xml_element.elements['messageID'] != nil
456
+ self.message_id = xml_element.elements['messageID'].text
457
+ end
458
+ if xml_element.elements['customHeaders'] != nil
459
+ self.custom_headers = KalturaClientBase.object_from_xml(xml_element.elements['customHeaders'], 'KalturaKeyValue')
460
+ end
372
461
  end
373
462
 
374
463
  end