notifo-io 1.0.1.2 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +646 -149
  3. data/docs/AppDetailsDto.md +3 -1
  4. data/docs/AppDto.md +2 -0
  5. data/docs/AppsApi.md +0 -186
  6. data/docs/{NotificationSend.md → ChannelCondition.md} +1 -1
  7. data/docs/{EventProperties.md → ChannelSend.md} +1 -1
  8. data/docs/ChannelSendInfoDto.md +9 -0
  9. data/docs/ChannelSettingDto.md +11 -0
  10. data/docs/ChannelTemplateDetailsDtoOfEmailTemplateDto.md +12 -0
  11. data/docs/ChannelTemplateDetailsDtoOfMessagingTemplateDto.md +12 -0
  12. data/docs/ChannelTemplateDetailsDtoOfSmsTemplateDto.md +12 -0
  13. data/docs/ChannelTemplateDto.md +11 -0
  14. data/docs/ConfiguredIntegrationDto.md +2 -1
  15. data/docs/CreateChannelTemplateDto.md +7 -0
  16. data/docs/{CreateEmailTemplateDto.md → CreateChannelTemplateLanguageDto.md} +1 -1
  17. data/docs/CreateIntegrationDto.md +1 -1
  18. data/docs/CreateSystemUserDto.md +9 -0
  19. data/docs/EmailFormattingError.md +10 -0
  20. data/docs/EmailPreviewDto.md +8 -0
  21. data/docs/EmailPreviewRequestDto.md +9 -0
  22. data/docs/{EmailTemplatesDto.md → EmailPreviewType.md} +1 -1
  23. data/docs/EmailTemplateDto.md +3 -0
  24. data/docs/{IntegrationProperties.md → EmailTemplateType.md} +1 -1
  25. data/docs/EmailTemplatesApi.md +488 -0
  26. data/docs/ErrorDto.md +1 -0
  27. data/docs/EventDto.md +3 -1
  28. data/docs/EventsApi.md +7 -5
  29. data/docs/HandledInfoDto.md +8 -0
  30. data/docs/IntegrationPropertyDto.md +2 -0
  31. data/docs/ListResponseDtoOfChannelTemplateDto.md +8 -0
  32. data/docs/ListResponseDtoOfMobilePushTokenDto.md +1 -1
  33. data/docs/{ListResponseDtoOfNotificationDto.md → ListResponseDtoOfSystemUserDto.md} +2 -2
  34. data/docs/ListResponseDtoOfUserNotificationDetailsDto.md +8 -0
  35. data/docs/ListResponseDtoOfUserNotificationDto.md +8 -0
  36. data/docs/MediaDto.md +3 -1
  37. data/docs/{Body.md → MessagingTemplateDto.md} +2 -2
  38. data/docs/MessagingTemplatesApi.md +394 -0
  39. data/docs/MobilePushApi.md +15 -15
  40. data/docs/MobilePushTokenDto.md +3 -2
  41. data/docs/MobilePushTokenDto2.md +8 -0
  42. data/docs/NotificationFormattingDto.md +1 -1
  43. data/docs/NotificationProperties.md +6 -0
  44. data/docs/NotificationsApi.md +74 -16
  45. data/docs/PingApi.md +48 -0
  46. data/docs/ProcessStatus.md +6 -0
  47. data/docs/ProfileDto.md +2 -1
  48. data/docs/PublishDto.md +2 -2
  49. data/docs/{EmailVerificationStatus.md → SmsTemplateDto.md} +2 -1
  50. data/docs/SmsTemplatesApi.md +394 -0
  51. data/docs/SubscribeDto.md +8 -0
  52. data/docs/SubscribeManyDto.md +8 -0
  53. data/docs/SubscriptionDto.md +1 -1
  54. data/docs/SystemUserDto.md +11 -0
  55. data/docs/SystemUsersApi.md +327 -0
  56. data/docs/TemplateDto.md +3 -1
  57. data/docs/TemplatesApi.md +3 -4
  58. data/docs/TopicChannel.md +6 -0
  59. data/docs/TopicDto.md +7 -1
  60. data/docs/TopicQueryScope.md +6 -0
  61. data/docs/TopicsApi.md +95 -0
  62. data/docs/UpdateChannelTemplateDtoOfEmailTemplateDto.md +9 -0
  63. data/docs/UpdateChannelTemplateDtoOfMessagingTemplateDto.md +9 -0
  64. data/docs/UpdateChannelTemplateDtoOfSmsTemplateDto.md +9 -0
  65. data/docs/UpdateIntegrationDto.md +2 -1
  66. data/docs/UpdateProfileDto.md +1 -1
  67. data/docs/UpdateSystemUserDto.md +9 -0
  68. data/docs/UpsertTemplateDto.md +1 -1
  69. data/docs/UpsertTopicDto.md +11 -0
  70. data/docs/UpsertTopicsDto.md +7 -0
  71. data/docs/UpsertUserDto.md +2 -2
  72. data/docs/UserApi.md +119 -21
  73. data/docs/UserDto.md +7 -2
  74. data/docs/UserNotificationBaseDto.md +23 -0
  75. data/docs/UserNotificationChannelDto.md +11 -0
  76. data/docs/UserNotificationDetailsDto.md +27 -0
  77. data/docs/{NotificationDto.md → UserNotificationDto.md} +9 -5
  78. data/docs/UserPropertyDto.md +9 -0
  79. data/docs/UserTopicDto.md +11 -0
  80. data/docs/UsersApi.md +37 -32
  81. data/lib/notifo/api/apps_api.rb +1 -245
  82. data/lib/notifo/api/configs_api.rb +1 -1
  83. data/lib/notifo/api/email_templates_api.rb +663 -0
  84. data/lib/notifo/api/events_api.rb +10 -7
  85. data/lib/notifo/api/logs_api.rb +1 -1
  86. data/lib/notifo/api/media_api.rb +1 -1
  87. data/lib/notifo/api/messaging_templates_api.rb +541 -0
  88. data/lib/notifo/api/mobile_push_api.rb +18 -18
  89. data/lib/notifo/api/notifications_api.rb +97 -22
  90. data/lib/notifo/api/ping_api.rb +70 -0
  91. data/lib/notifo/api/sms_templates_api.rb +541 -0
  92. data/lib/notifo/api/system_users_api.rb +411 -0
  93. data/lib/notifo/api/templates_api.rb +6 -6
  94. data/lib/notifo/api/topics_api.rb +126 -1
  95. data/lib/notifo/api/user_api.rb +138 -27
  96. data/lib/notifo/api/users_api.rb +38 -32
  97. data/lib/notifo/api_client.rb +1 -1
  98. data/lib/notifo/api_error.rb +1 -1
  99. data/lib/notifo/configuration.rb +1 -1
  100. data/lib/notifo/models/add_allowed_topic_dto.rb +1 -1
  101. data/lib/notifo/models/add_contributor_dto.rb +1 -1
  102. data/lib/notifo/models/app_contributor_dto.rb +1 -1
  103. data/lib/notifo/models/app_details_dto.rb +41 -11
  104. data/lib/notifo/models/app_dto.rb +32 -2
  105. data/lib/notifo/models/app_id_media_body.rb +1 -1
  106. data/lib/notifo/models/channel_condition.rb +30 -0
  107. data/lib/notifo/models/{notification_send.rb → channel_send.rb} +4 -4
  108. data/lib/notifo/models/channel_send_info_dto.rb +227 -0
  109. data/lib/notifo/models/channel_setting_dto.rb +256 -0
  110. data/lib/notifo/models/channel_template_details_dto_of_email_template_dto.rb +285 -0
  111. data/lib/notifo/models/channel_template_details_dto_of_messaging_template_dto.rb +285 -0
  112. data/lib/notifo/models/channel_template_details_dto_of_sms_template_dto.rb +285 -0
  113. data/lib/notifo/models/channel_template_dto.rb +264 -0
  114. data/lib/notifo/models/configured_integration_dto.rb +17 -3
  115. data/lib/notifo/models/configured_integrations_dto.rb +1 -1
  116. data/lib/notifo/models/confirm_mode.rb +2 -3
  117. data/lib/notifo/models/{body.rb → create_channel_template_dto.rb} +13 -11
  118. data/lib/notifo/models/{create_email_template_dto.rb → create_channel_template_language_dto.rb} +4 -4
  119. data/lib/notifo/models/create_integration_dto.rb +7 -2
  120. data/lib/notifo/models/create_system_user_dto.rb +240 -0
  121. data/lib/notifo/models/email_formatting_error.rb +233 -0
  122. data/lib/notifo/models/email_preview_dto.rb +221 -0
  123. data/lib/notifo/models/email_preview_request_dto.rb +232 -0
  124. data/lib/notifo/models/email_preview_type.rb +28 -0
  125. data/lib/notifo/models/email_template_dto.rb +39 -6
  126. data/lib/notifo/models/email_template_type.rb +30 -0
  127. data/lib/notifo/models/error_dto.rb +13 -2
  128. data/lib/notifo/models/event_dto.rb +24 -2
  129. data/lib/notifo/models/handled_info_dto.rb +218 -0
  130. data/lib/notifo/models/integration_created_dto.rb +1 -1
  131. data/lib/notifo/models/integration_definition_dto.rb +1 -1
  132. data/lib/notifo/models/integration_property_dto.rb +30 -2
  133. data/lib/notifo/models/integration_property_type.rb +1 -1
  134. data/lib/notifo/models/integration_status.rb +1 -1
  135. data/lib/notifo/models/iso_day_of_week.rb +1 -1
  136. data/lib/notifo/models/list_response_dto_of_channel_template_dto.rb +229 -0
  137. data/lib/notifo/models/list_response_dto_of_event_dto.rb +1 -1
  138. data/lib/notifo/models/list_response_dto_of_log_entry_dto.rb +1 -1
  139. data/lib/notifo/models/list_response_dto_of_media_dto.rb +1 -1
  140. data/lib/notifo/models/list_response_dto_of_mobile_push_token_dto.rb +1 -1
  141. data/lib/notifo/models/list_response_dto_of_subscription_dto.rb +1 -1
  142. data/lib/notifo/models/{list_response_dto_of_notification_dto.rb → list_response_dto_of_system_user_dto.rb} +4 -4
  143. data/lib/notifo/models/list_response_dto_of_template_dto.rb +1 -1
  144. data/lib/notifo/models/list_response_dto_of_topic_dto.rb +1 -1
  145. data/lib/notifo/models/list_response_dto_of_user_dto.rb +1 -1
  146. data/lib/notifo/models/list_response_dto_of_user_notification_details_dto.rb +229 -0
  147. data/lib/notifo/models/list_response_dto_of_user_notification_dto.rb +229 -0
  148. data/lib/notifo/models/localized_text.rb +1 -1
  149. data/lib/notifo/models/log_entry_dto.rb +1 -1
  150. data/lib/notifo/models/media_dto.rb +42 -12
  151. data/lib/notifo/models/media_metadata.rb +1 -1
  152. data/lib/notifo/models/media_type.rb +1 -1
  153. data/lib/notifo/models/messaging_template_dto.rb +212 -0
  154. data/lib/notifo/models/mobile_device_type.rb +1 -1
  155. data/lib/notifo/models/mobile_push_token_dto.rb +22 -6
  156. data/lib/notifo/models/{notification_setting_dto.rb → mobile_push_token_dto2.rb} +21 -22
  157. data/lib/notifo/models/notification_formatting_dto.rb +1 -6
  158. data/lib/notifo/models/{event_properties.rb → notification_properties.rb} +4 -4
  159. data/lib/notifo/models/{email_verification_status.rb → process_status.rb} +8 -7
  160. data/lib/notifo/models/profile_dto.rb +14 -2
  161. data/lib/notifo/models/publish_dto.rb +1 -1
  162. data/lib/notifo/models/publish_many_dto.rb +1 -1
  163. data/lib/notifo/models/register_mobile_token_dto.rb +1 -1
  164. data/lib/notifo/models/resize_mode.rb +1 -1
  165. data/lib/notifo/models/scheduling_dto.rb +1 -1
  166. data/lib/notifo/models/scheduling_type.rb +1 -1
  167. data/lib/notifo/models/{email_templates_dto.rb → sms_template_dto.rb} +22 -11
  168. data/lib/notifo/models/subscribe_dto.rb +225 -0
  169. data/lib/notifo/models/subscribe_many_dto.rb +223 -0
  170. data/lib/notifo/models/subscription_dto.rb +6 -2
  171. data/lib/notifo/models/system_user_dto.rb +269 -0
  172. data/lib/notifo/models/template_dto.rb +32 -2
  173. data/lib/notifo/models/topic_channel.rb +28 -0
  174. data/lib/notifo/models/topic_dto.rb +69 -3
  175. data/lib/notifo/models/topic_query_scope.rb +29 -0
  176. data/lib/notifo/models/track_notification_dto.rb +1 -1
  177. data/lib/notifo/models/update_channel_template_dto_of_email_template_dto.rb +232 -0
  178. data/lib/notifo/models/update_channel_template_dto_of_messaging_template_dto.rb +232 -0
  179. data/lib/notifo/models/update_channel_template_dto_of_sms_template_dto.rb +232 -0
  180. data/lib/notifo/models/update_integration_dto.rb +19 -3
  181. data/lib/notifo/models/update_profile_dto.rb +1 -1
  182. data/lib/notifo/models/update_system_user_dto.rb +240 -0
  183. data/lib/notifo/models/upsert_app_dto.rb +1 -1
  184. data/lib/notifo/models/upsert_template_dto.rb +1 -1
  185. data/lib/notifo/models/upsert_templates_dto.rb +1 -1
  186. data/lib/notifo/models/upsert_topic_dto.rb +249 -0
  187. data/lib/notifo/models/upsert_topics_dto.rb +214 -0
  188. data/lib/notifo/models/upsert_user_dto.rb +15 -13
  189. data/lib/notifo/models/upsert_users_dto.rb +1 -1
  190. data/lib/notifo/models/user_dto.rb +89 -16
  191. data/lib/notifo/models/{notification_dto.rb → user_notification_base_dto.rb} +62 -46
  192. data/lib/notifo/models/user_notification_channel_dto.rb +261 -0
  193. data/lib/notifo/models/user_notification_details_dto.rb +450 -0
  194. data/lib/notifo/models/user_notification_dto.rb +436 -0
  195. data/lib/notifo/models/user_property_dto.rb +234 -0
  196. data/lib/notifo/models/user_topic_dto.rb +265 -0
  197. data/lib/notifo/version.rb +1 -1
  198. data/lib/notifo.rb +49 -11
  199. data/notifo.gemspec +3 -3
  200. data/spec/api/apps_api_spec.rb +20 -20
  201. data/spec/api/configs_api_spec.rb +1 -1
  202. data/spec/api/email_templates_api_spec.rb +161 -0
  203. data/spec/api/events_api_spec.rb +13 -1
  204. data/spec/api/logs_api_spec.rb +1 -1
  205. data/spec/api/media_api_spec.rb +1 -1
  206. data/spec/api/messaging_templates_api_spec.rb +137 -0
  207. data/spec/api/mobile_push_api_spec.rb +7 -7
  208. data/spec/api/notifications_api_spec.rb +25 -8
  209. data/spec/api/ping_api_spec.rb +45 -0
  210. data/spec/api/sms_templates_api_spec.rb +137 -0
  211. data/spec/api/system_users_api_spec.rb +114 -0
  212. data/spec/api/templates_api_spec.rb +2 -2
  213. data/spec/api/topics_api_spec.rb +26 -1
  214. data/spec/api/user_api_spec.rb +33 -8
  215. data/spec/api/users_api_spec.rb +15 -13
  216. data/spec/api_client_spec.rb +1 -1
  217. data/spec/configuration_spec.rb +4 -4
  218. data/spec/models/add_allowed_topic_dto_spec.rb +1 -1
  219. data/spec/models/add_contributor_dto_spec.rb +1 -1
  220. data/spec/models/app_contributor_dto_spec.rb +1 -1
  221. data/spec/models/app_details_dto_spec.rb +4 -40
  222. data/spec/models/app_dto_spec.rb +13 -1
  223. data/spec/models/app_id_media_body_spec.rb +1 -1
  224. data/spec/models/{notification_send_spec.rb → channel_condition_spec.rb} +7 -7
  225. data/spec/models/channel_send_info_dto_spec.rb +52 -0
  226. data/spec/models/{event_properties_spec.rb → channel_send_spec.rb} +7 -7
  227. data/spec/models/channel_setting_dto_spec.rb +64 -0
  228. data/spec/models/channel_template_details_dto_of_email_template_dto_spec.rb +70 -0
  229. data/spec/models/channel_template_details_dto_of_messaging_template_dto_spec.rb +70 -0
  230. data/spec/models/channel_template_details_dto_of_sms_template_dto_spec.rb +70 -0
  231. data/spec/models/channel_template_dto_spec.rb +64 -0
  232. data/spec/models/configured_integration_dto_spec.rb +7 -1
  233. data/spec/models/configured_integrations_dto_spec.rb +1 -1
  234. data/spec/models/confirm_mode_spec.rb +1 -1
  235. data/spec/models/create_channel_template_dto_spec.rb +40 -0
  236. data/spec/models/{create_email_template_dto_spec.rb → create_channel_template_language_dto_spec.rb} +7 -7
  237. data/spec/models/create_integration_dto_spec.rb +1 -1
  238. data/spec/models/create_system_user_dto_spec.rb +52 -0
  239. data/spec/{api/authorization_api_spec.rb → models/email_formatting_error_spec.rb} +16 -19
  240. data/spec/models/{notification_setting_dto_spec.rb → email_preview_dto_spec.rb} +9 -9
  241. data/spec/models/email_preview_request_dto_spec.rb +52 -0
  242. data/spec/models/{email_templates_dto_spec.rb → email_preview_type_spec.rb} +7 -7
  243. data/spec/models/email_template_dto_spec.rb +19 -1
  244. data/spec/models/{integration_properties_spec.rb → email_template_type_spec.rb} +7 -7
  245. data/spec/models/error_dto_spec.rb +7 -1
  246. data/spec/models/event_dto_spec.rb +19 -1
  247. data/spec/models/handled_info_dto_spec.rb +46 -0
  248. data/spec/models/integration_created_dto_spec.rb +1 -1
  249. data/spec/models/integration_definition_dto_spec.rb +1 -1
  250. data/spec/models/integration_property_dto_spec.rb +13 -1
  251. data/spec/models/integration_property_type_spec.rb +1 -1
  252. data/spec/models/integration_status_spec.rb +1 -1
  253. data/spec/models/iso_day_of_week_spec.rb +1 -1
  254. data/spec/models/list_response_dto_of_channel_template_dto_spec.rb +46 -0
  255. data/spec/models/list_response_dto_of_event_dto_spec.rb +1 -1
  256. data/spec/models/list_response_dto_of_log_entry_dto_spec.rb +1 -1
  257. data/spec/models/list_response_dto_of_media_dto_spec.rb +1 -1
  258. data/spec/models/list_response_dto_of_mobile_push_token_dto_spec.rb +1 -1
  259. data/spec/models/list_response_dto_of_subscription_dto_spec.rb +1 -1
  260. data/spec/models/{list_response_dto_of_notification_dto_spec.rb → list_response_dto_of_system_user_dto_spec.rb} +7 -7
  261. data/spec/models/list_response_dto_of_template_dto_spec.rb +1 -1
  262. data/spec/models/list_response_dto_of_topic_dto_spec.rb +1 -1
  263. data/spec/models/list_response_dto_of_user_dto_spec.rb +1 -1
  264. data/spec/models/list_response_dto_of_user_notification_details_dto_spec.rb +46 -0
  265. data/spec/{api/user_info_api_spec.rb → models/list_response_dto_of_user_notification_dto_spec.rb} +10 -16
  266. data/spec/models/localized_text_spec.rb +1 -1
  267. data/spec/models/log_entry_dto_spec.rb +1 -1
  268. data/spec/models/media_dto_spec.rb +14 -2
  269. data/spec/models/media_metadata_spec.rb +1 -1
  270. data/spec/models/media_type_spec.rb +1 -1
  271. data/spec/models/messaging_template_dto_spec.rb +40 -0
  272. data/spec/models/mobile_device_type_spec.rb +1 -1
  273. data/spec/models/mobile_push_token_dto2_spec.rb +46 -0
  274. data/spec/models/mobile_push_token_dto_spec.rb +7 -1
  275. data/spec/models/notification_formatting_dto_spec.rb +1 -1
  276. data/spec/models/notification_properties_spec.rb +34 -0
  277. data/spec/models/process_status_spec.rb +34 -0
  278. data/spec/models/profile_dto_spec.rb +7 -1
  279. data/spec/models/publish_dto_spec.rb +13 -1
  280. data/spec/models/publish_many_dto_spec.rb +1 -1
  281. data/spec/models/register_mobile_token_dto_spec.rb +1 -1
  282. data/spec/models/resize_mode_spec.rb +1 -1
  283. data/spec/models/scheduling_dto_spec.rb +1 -1
  284. data/spec/models/scheduling_type_spec.rb +1 -1
  285. data/spec/models/{body_spec.rb → sms_template_dto_spec.rb} +8 -8
  286. data/spec/models/subscribe_dto_spec.rb +46 -0
  287. data/spec/models/subscribe_many_dto_spec.rb +46 -0
  288. data/spec/models/subscription_dto_spec.rb +1 -1
  289. data/spec/models/system_user_dto_spec.rb +64 -0
  290. data/spec/models/template_dto_spec.rb +13 -1
  291. data/spec/models/topic_channel_spec.rb +34 -0
  292. data/spec/models/topic_dto_spec.rb +37 -1
  293. data/spec/models/topic_query_scope_spec.rb +34 -0
  294. data/spec/models/track_notification_dto_spec.rb +1 -1
  295. data/spec/models/update_channel_template_dto_of_email_template_dto_spec.rb +52 -0
  296. data/spec/models/update_channel_template_dto_of_messaging_template_dto_spec.rb +52 -0
  297. data/spec/models/update_channel_template_dto_of_sms_template_dto_spec.rb +52 -0
  298. data/spec/models/update_integration_dto_spec.rb +7 -1
  299. data/spec/models/update_profile_dto_spec.rb +1 -1
  300. data/spec/models/update_system_user_dto_spec.rb +52 -0
  301. data/spec/models/upsert_app_dto_spec.rb +1 -1
  302. data/spec/models/upsert_template_dto_spec.rb +1 -1
  303. data/spec/models/upsert_templates_dto_spec.rb +1 -1
  304. data/spec/models/upsert_topic_dto_spec.rb +64 -0
  305. data/spec/models/upsert_topics_dto_spec.rb +40 -0
  306. data/spec/models/upsert_user_dto_spec.rb +7 -1
  307. data/spec/models/upsert_users_dto_spec.rb +1 -1
  308. data/spec/models/user_dto_spec.rb +49 -1
  309. data/spec/models/{notification_dto_spec.rb → user_notification_base_dto_spec.rb} +23 -11
  310. data/spec/models/user_notification_channel_dto_spec.rb +64 -0
  311. data/spec/models/user_notification_details_dto_spec.rb +160 -0
  312. data/spec/models/user_notification_dto_spec.rb +148 -0
  313. data/spec/models/user_property_dto_spec.rb +52 -0
  314. data/spec/models/user_topic_dto_spec.rb +64 -0
  315. data/spec/spec_helper.rb +1 -1
  316. metadata +207 -64
  317. data/docs/AuthorizationApi.md +0 -121
  318. data/docs/NotificationSettingDto.md +0 -8
  319. data/docs/UserInfoApi.md +0 -83
  320. data/lib/notifo/api/authorization_api.rb +0 -158
  321. data/lib/notifo/api/user_info_api.rb +0 -112
  322. data/lib/notifo/models/integration_properties.rb +0 -201
  323. data/notifo-io-1.0.1.1.gem +0 -0
  324. data/spec/models/email_verification_status_spec.rb +0 -34
@@ -0,0 +1,450 @@
1
+ =begin
2
+ #Notifo API
3
+
4
+ #No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
5
+
6
+ OpenAPI spec version: 1.0.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 3.0.29
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module Notifo
15
+ class UserNotificationDetailsDto
16
+ # The id of the notification.
17
+ attr_accessor :id
18
+
19
+ # The subject of the notification in the language of the user.
20
+ attr_accessor :subject
21
+
22
+ # True when the notification is silent.
23
+ attr_accessor :silent
24
+
25
+ # The timestamp when the notification has been created.
26
+ attr_accessor :created
27
+
28
+ # The timestamp when the notification has been updated.
29
+ attr_accessor :updated
30
+
31
+ # The tracking token.
32
+ attr_accessor :tracking_token
33
+
34
+ # The optional body text.
35
+ attr_accessor :body
36
+
37
+ # The optional link to the small image.
38
+ attr_accessor :image_small
39
+
40
+ # The optional link to the large image.
41
+ attr_accessor :image_large
42
+
43
+ # The tracking url that needs to be invoked to mark the notification as seen.
44
+ attr_accessor :track_seen_url
45
+
46
+ # The tracking url that needs to be invoked to mark the notification as delivered.
47
+ attr_accessor :track_delivered_url
48
+
49
+ # An optional link.
50
+ attr_accessor :link_url
51
+
52
+ # The link text.
53
+ attr_accessor :link_text
54
+
55
+ # The text for the confirm button.
56
+ attr_accessor :confirm_text
57
+
58
+ # The tracking url that needs to be invoked to mark the notification as confirmed.
59
+ attr_accessor :confirm_url
60
+
61
+ # Optional data, usually a json object.
62
+ attr_accessor :data
63
+
64
+ attr_accessor :properties
65
+
66
+ # The channel details.
67
+ attr_accessor :channels
68
+
69
+ attr_accessor :first_delivered
70
+
71
+ attr_accessor :first_seen
72
+
73
+ attr_accessor :first_confirmed
74
+
75
+ # Attribute mapping from ruby-style variable name to JSON key.
76
+ def self.attribute_map
77
+ {
78
+ :'id' => :'id',
79
+ :'subject' => :'subject',
80
+ :'silent' => :'silent',
81
+ :'created' => :'created',
82
+ :'updated' => :'updated',
83
+ :'tracking_token' => :'trackingToken',
84
+ :'body' => :'body',
85
+ :'image_small' => :'imageSmall',
86
+ :'image_large' => :'imageLarge',
87
+ :'track_seen_url' => :'trackSeenUrl',
88
+ :'track_delivered_url' => :'trackDeliveredUrl',
89
+ :'link_url' => :'linkUrl',
90
+ :'link_text' => :'linkText',
91
+ :'confirm_text' => :'confirmText',
92
+ :'confirm_url' => :'confirmUrl',
93
+ :'data' => :'data',
94
+ :'properties' => :'properties',
95
+ :'channels' => :'channels',
96
+ :'first_delivered' => :'firstDelivered',
97
+ :'first_seen' => :'firstSeen',
98
+ :'first_confirmed' => :'firstConfirmed'
99
+ }
100
+ end
101
+
102
+ # Attribute type mapping.
103
+ def self.openapi_types
104
+ {
105
+ :'id' => :'',
106
+ :'subject' => :'',
107
+ :'silent' => :'',
108
+ :'created' => :'',
109
+ :'updated' => :'',
110
+ :'tracking_token' => :'',
111
+ :'body' => :'',
112
+ :'image_small' => :'',
113
+ :'image_large' => :'',
114
+ :'track_seen_url' => :'',
115
+ :'track_delivered_url' => :'',
116
+ :'link_url' => :'',
117
+ :'link_text' => :'',
118
+ :'confirm_text' => :'',
119
+ :'confirm_url' => :'',
120
+ :'data' => :'',
121
+ :'properties' => :'',
122
+ :'channels' => :'',
123
+ :'first_delivered' => :'',
124
+ :'first_seen' => :'',
125
+ :'first_confirmed' => :''
126
+ }
127
+ end
128
+
129
+ # List of attributes with nullable: true
130
+ def self.openapi_nullable
131
+ Set.new([
132
+ :'tracking_token',
133
+ :'body',
134
+ :'image_small',
135
+ :'image_large',
136
+ :'track_seen_url',
137
+ :'track_delivered_url',
138
+ :'link_url',
139
+ :'link_text',
140
+ :'confirm_text',
141
+ :'confirm_url',
142
+ :'data',
143
+ ])
144
+ end
145
+
146
+ # Initializes the object
147
+ # @param [Hash] attributes Model attributes in the form of hash
148
+ def initialize(attributes = {})
149
+ if (!attributes.is_a?(Hash))
150
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Notifo::UserNotificationDetailsDto` initialize method"
151
+ end
152
+
153
+ # check to see if the attribute exists and convert string to symbol for hash key
154
+ attributes = attributes.each_with_object({}) { |(k, v), h|
155
+ if (!self.class.attribute_map.key?(k.to_sym))
156
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Notifo::UserNotificationDetailsDto`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
157
+ end
158
+ h[k.to_sym] = v
159
+ }
160
+
161
+ # call parent's initialize
162
+ super(attributes)
163
+
164
+ if attributes.key?(:'id')
165
+ self.id = attributes[:'id']
166
+ end
167
+
168
+ if attributes.key?(:'subject')
169
+ self.subject = attributes[:'subject']
170
+ end
171
+
172
+ if attributes.key?(:'silent')
173
+ self.silent = attributes[:'silent']
174
+ end
175
+
176
+ if attributes.key?(:'created')
177
+ self.created = attributes[:'created']
178
+ end
179
+
180
+ if attributes.key?(:'updated')
181
+ self.updated = attributes[:'updated']
182
+ end
183
+
184
+ if attributes.key?(:'tracking_token')
185
+ self.tracking_token = attributes[:'tracking_token']
186
+ end
187
+
188
+ if attributes.key?(:'body')
189
+ self.body = attributes[:'body']
190
+ end
191
+
192
+ if attributes.key?(:'image_small')
193
+ self.image_small = attributes[:'image_small']
194
+ end
195
+
196
+ if attributes.key?(:'image_large')
197
+ self.image_large = attributes[:'image_large']
198
+ end
199
+
200
+ if attributes.key?(:'track_seen_url')
201
+ self.track_seen_url = attributes[:'track_seen_url']
202
+ end
203
+
204
+ if attributes.key?(:'track_delivered_url')
205
+ self.track_delivered_url = attributes[:'track_delivered_url']
206
+ end
207
+
208
+ if attributes.key?(:'link_url')
209
+ self.link_url = attributes[:'link_url']
210
+ end
211
+
212
+ if attributes.key?(:'link_text')
213
+ self.link_text = attributes[:'link_text']
214
+ end
215
+
216
+ if attributes.key?(:'confirm_text')
217
+ self.confirm_text = attributes[:'confirm_text']
218
+ end
219
+
220
+ if attributes.key?(:'confirm_url')
221
+ self.confirm_url = attributes[:'confirm_url']
222
+ end
223
+
224
+ if attributes.key?(:'data')
225
+ self.data = attributes[:'data']
226
+ end
227
+
228
+ if attributes.key?(:'properties')
229
+ self.properties = attributes[:'properties']
230
+ end
231
+
232
+ if attributes.key?(:'channels')
233
+ if (value = attributes[:'channels']).is_a?(Hash)
234
+ self.channels = value
235
+ end
236
+ end
237
+
238
+ if attributes.key?(:'first_delivered')
239
+ self.first_delivered = attributes[:'first_delivered']
240
+ end
241
+
242
+ if attributes.key?(:'first_seen')
243
+ self.first_seen = attributes[:'first_seen']
244
+ end
245
+
246
+ if attributes.key?(:'first_confirmed')
247
+ self.first_confirmed = attributes[:'first_confirmed']
248
+ end
249
+ end
250
+
251
+ # Show invalid properties with the reasons. Usually used together with valid?
252
+ # @return Array for valid properties with the reasons
253
+ def list_invalid_properties
254
+ invalid_properties = super
255
+ if @id.nil?
256
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
257
+ end
258
+
259
+ if @subject.nil?
260
+ invalid_properties.push('invalid value for "subject", subject cannot be nil.')
261
+ end
262
+
263
+ if @silent.nil?
264
+ invalid_properties.push('invalid value for "silent", silent cannot be nil.')
265
+ end
266
+
267
+ if @created.nil?
268
+ invalid_properties.push('invalid value for "created", created cannot be nil.')
269
+ end
270
+
271
+ if @updated.nil?
272
+ invalid_properties.push('invalid value for "updated", updated cannot be nil.')
273
+ end
274
+
275
+ if @channels.nil?
276
+ invalid_properties.push('invalid value for "channels", channels cannot be nil.')
277
+ end
278
+
279
+ invalid_properties
280
+ end
281
+
282
+ # Check to see if the all the properties in the model are valid
283
+ # @return true if the model is valid
284
+ def valid?
285
+ return false if @id.nil?
286
+ return false if @subject.nil?
287
+ return false if @silent.nil?
288
+ return false if @created.nil?
289
+ return false if @updated.nil?
290
+ return false if @channels.nil?
291
+ true
292
+ end
293
+
294
+ # Checks equality by comparing each attribute.
295
+ # @param [Object] Object to be compared
296
+ def ==(o)
297
+ return true if self.equal?(o)
298
+ self.class == o.class &&
299
+ id == o.id &&
300
+ subject == o.subject &&
301
+ silent == o.silent &&
302
+ created == o.created &&
303
+ updated == o.updated &&
304
+ tracking_token == o.tracking_token &&
305
+ body == o.body &&
306
+ image_small == o.image_small &&
307
+ image_large == o.image_large &&
308
+ track_seen_url == o.track_seen_url &&
309
+ track_delivered_url == o.track_delivered_url &&
310
+ link_url == o.link_url &&
311
+ link_text == o.link_text &&
312
+ confirm_text == o.confirm_text &&
313
+ confirm_url == o.confirm_url &&
314
+ data == o.data &&
315
+ properties == o.properties &&
316
+ channels == o.channels &&
317
+ first_delivered == o.first_delivered &&
318
+ first_seen == o.first_seen &&
319
+ first_confirmed == o.first_confirmed && super(o)
320
+ end
321
+
322
+ # @see the `==` method
323
+ # @param [Object] Object to be compared
324
+ def eql?(o)
325
+ self == o
326
+ end
327
+
328
+ # Calculates hash code according to all attributes.
329
+ # @return [Integer] Hash code
330
+ def hash
331
+ [id, subject, silent, created, updated, tracking_token, body, image_small, image_large, track_seen_url, track_delivered_url, link_url, link_text, confirm_text, confirm_url, data, properties, channels, first_delivered, first_seen, first_confirmed].hash
332
+ end
333
+
334
+ # Builds the object from hash
335
+ # @param [Hash] attributes Model attributes in the form of hash
336
+ # @return [Object] Returns the model itself
337
+ def self.build_from_hash(attributes)
338
+ new.build_from_hash(attributes)
339
+ end
340
+
341
+ # Builds the object from hash
342
+ # @param [Hash] attributes Model attributes in the form of hash
343
+ # @return [Object] Returns the model itself
344
+ def build_from_hash(attributes)
345
+ return nil unless attributes.is_a?(Hash)
346
+ super(attributes)
347
+ self.class.openapi_types.each_pair do |key, type|
348
+ if type =~ /\AArray<(.*)>/i
349
+ # check to ensure the input is an array given that the attribute
350
+ # is documented as an array but the input is not
351
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
352
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
353
+ end
354
+ elsif !attributes[self.class.attribute_map[key]].nil?
355
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
356
+ elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
357
+ self.send("#{key}=", nil)
358
+ end
359
+ end
360
+
361
+ self
362
+ end
363
+
364
+ # Deserializes the data based on type
365
+ # @param string type Data type
366
+ # @param string value Value to be deserialized
367
+ # @return [Object] Deserialized data
368
+ def _deserialize(type, value)
369
+ case type.to_sym
370
+ when :DateTime
371
+ DateTime.parse(value)
372
+ when :Date
373
+ Date.parse(value)
374
+ when :String
375
+ value.to_s
376
+ when :Integer
377
+ value.to_i
378
+ when :Float
379
+ value.to_f
380
+ when :Boolean
381
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
382
+ true
383
+ else
384
+ false
385
+ end
386
+ when :Object
387
+ # generic object (usually a Hash), return directly
388
+ value
389
+ when /\AArray<(?<inner_type>.+)>\z/
390
+ inner_type = Regexp.last_match[:inner_type]
391
+ value.map { |v| _deserialize(inner_type, v) }
392
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
393
+ k_type = Regexp.last_match[:k_type]
394
+ v_type = Regexp.last_match[:v_type]
395
+ {}.tap do |hash|
396
+ value.each do |k, v|
397
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
398
+ end
399
+ end
400
+ else # model
401
+ Notifo.const_get(type).build_from_hash(value)
402
+ end
403
+ end
404
+
405
+ # Returns the string representation of the object
406
+ # @return [String] String presentation of the object
407
+ def to_s
408
+ to_hash.to_s
409
+ end
410
+
411
+ # to_body is an alias to to_hash (backward compatibility)
412
+ # @return [Hash] Returns the object in the form of hash
413
+ def to_body
414
+ to_hash
415
+ end
416
+
417
+ # Returns the object in the form of hash
418
+ # @return [Hash] Returns the object in the form of hash
419
+ def to_hash
420
+ hash = super
421
+ self.class.attribute_map.each_pair do |attr, param|
422
+ value = self.send(attr)
423
+ if value.nil?
424
+ is_nullable = self.class.openapi_nullable.include?(attr)
425
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
426
+ end
427
+
428
+ hash[param] = _to_hash(value)
429
+ end
430
+ hash
431
+ end
432
+
433
+ # Outputs non-array value in the form of hash
434
+ # For object, use to_hash. Otherwise, just return the value
435
+ # @param [Object] value Any valid value
436
+ # @return [Hash] Returns the value in the form of hash
437
+ def _to_hash(value)
438
+ if value.is_a?(Array)
439
+ value.compact.map { |v| _to_hash(v) }
440
+ elsif value.is_a?(Hash)
441
+ {}.tap do |hash|
442
+ value.each { |k, v| hash[k] = _to_hash(v) }
443
+ end
444
+ elsif value.respond_to? :to_hash
445
+ value.to_hash
446
+ else
447
+ value
448
+ end
449
+ end end
450
+ end