freeclimb 4.9.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/Gemfile.lock +34 -18
  4. data/README.md +43 -51
  5. data/docs/AddToConferenceNotificationWebhook.md +42 -0
  6. data/docs/AddToQueueNotificationWebhook.md +34 -0
  7. data/docs/BargeInReason.md +18 -0
  8. data/docs/CallControlWebhook.md +26 -0
  9. data/docs/CallEndedReason.md +38 -0
  10. data/docs/CallStatusWebhook.md +36 -0
  11. data/docs/CompletionResult.md +1 -1
  12. data/docs/CompletionResultStatus.md +17 -0
  13. data/docs/ConferenceRecordingStatusWebhook.md +42 -0
  14. data/docs/ConferenceResult.md +1 -1
  15. data/docs/ConferenceStatusWebhook.md +42 -0
  16. data/docs/CreateConference.md +1 -1
  17. data/docs/CreateConferenceRequest.md +1 -1
  18. data/docs/CreateConferenceWebhook.md +42 -0
  19. data/docs/DequeueWebhook.md +38 -0
  20. data/docs/GetDigitsReason.md +19 -0
  21. data/docs/GetDigitsWebhook.md +40 -0
  22. data/docs/GetSpeechWebhook.md +50 -0
  23. data/docs/InboundCallWebhook.md +36 -0
  24. data/docs/LeaveConferenceWebhook.md +34 -0
  25. data/docs/MachineDetectedWebhook.md +38 -0
  26. data/docs/MachineType.md +2 -2
  27. data/docs/MessageDeliveryWebhook.md +36 -0
  28. data/docs/MessageStatusWebhook.md +38 -0
  29. data/docs/OutDialApiConnectWebhook.md +36 -0
  30. data/docs/OutDialConnectWebhook.md +36 -0
  31. data/docs/OutDialStartWebhook.md +38 -0
  32. data/docs/QueueWaitWebhook.md +40 -0
  33. data/docs/RecordWebhook.md +50 -0
  34. data/docs/RedirectWebhook.md +36 -0
  35. data/docs/RemoveFromQueueNotificationWebhook.md +38 -0
  36. data/docs/SMSTenDLCBrand.md +6 -6
  37. data/docs/SMSTenDLCBrandAltBusinessIdType.md +19 -0
  38. data/docs/SMSTenDLCBrandEntityType.md +20 -0
  39. data/docs/SMSTenDLCBrandIdentityStatus.md +19 -0
  40. data/docs/SMSTenDLCBrandRelationship.md +20 -0
  41. data/docs/SMSTenDLCBrandStockExchange.md +42 -0
  42. data/docs/SMSTenDLCCampaign.md +1 -1
  43. data/docs/SMSTenDLCCampaignStatus.md +17 -0
  44. data/docs/SMSTenDLCPartnerCampaign.md +1 -1
  45. data/docs/SMSTenDLCPartnerCampaignStatus.md +17 -0
  46. data/docs/SMSTollFreeCampaign.md +1 -1
  47. data/docs/SMSTollFreeCampaignRegistrationStatus.md +20 -0
  48. data/docs/TranscribeReason.md +20 -0
  49. data/docs/TranscribeTermReason.md +17 -0
  50. data/docs/TranscribeUtterance.md +2 -2
  51. data/docs/TranscribeWebhook.md +62 -0
  52. data/docs/UpdateConferenceRequest.md +1 -1
  53. data/docs/Webhook.md +18 -0
  54. data/freeclimb.gemspec +1 -1
  55. data/lib/freeclimb/api/default_api.rb +18 -18
  56. data/lib/freeclimb/api_client.rb +1 -1
  57. data/lib/freeclimb/api_error.rb +1 -1
  58. data/lib/freeclimb/configuration.rb +1 -2
  59. data/lib/freeclimb/models/account_request.rb +1 -3
  60. data/lib/freeclimb/models/account_result.rb +23 -4
  61. data/lib/freeclimb/models/account_status.rb +1 -1
  62. data/lib/freeclimb/models/account_type.rb +1 -1
  63. data/lib/freeclimb/models/add_to_conference.rb +1 -4
  64. data/lib/freeclimb/models/add_to_conference_notification_webhook.rb +384 -0
  65. data/lib/freeclimb/models/{conference_participant_result_all_of.rb → add_to_queue_notification_webhook.rb} +112 -59
  66. data/lib/freeclimb/models/answered_by.rb +1 -1
  67. data/lib/freeclimb/models/application_list.rb +1 -4
  68. data/lib/freeclimb/models/application_request.rb +1 -3
  69. data/lib/freeclimb/models/application_result.rb +1 -4
  70. data/lib/freeclimb/models/available_number.rb +1 -3
  71. data/lib/freeclimb/models/available_number_list.rb +1 -4
  72. data/lib/freeclimb/models/barge_in_reason.rb +38 -0
  73. data/lib/freeclimb/models/buy_incoming_number_request.rb +1 -3
  74. data/lib/freeclimb/models/{recording_result_all_of.rb → call_control_webhook.rb} +57 -45
  75. data/lib/freeclimb/models/call_direction.rb +1 -1
  76. data/lib/freeclimb/models/call_ended_reason.rb +58 -0
  77. data/lib/freeclimb/models/call_list.rb +1 -4
  78. data/lib/freeclimb/models/call_result.rb +23 -4
  79. data/lib/freeclimb/models/call_status.rb +1 -1
  80. data/lib/freeclimb/models/call_status_webhook.rb +354 -0
  81. data/lib/freeclimb/models/capabilities.rb +1 -3
  82. data/lib/freeclimb/models/completion_request.rb +1 -3
  83. data/lib/freeclimb/models/completion_result.rb +2 -15
  84. data/lib/freeclimb/models/completion_result_status.rb +37 -0
  85. data/lib/freeclimb/models/conference_list.rb +1 -4
  86. data/lib/freeclimb/models/conference_participant_list.rb +1 -4
  87. data/lib/freeclimb/models/conference_participant_result.rb +1 -4
  88. data/lib/freeclimb/models/conference_recording_status_webhook.rb +384 -0
  89. data/lib/freeclimb/models/conference_result.rb +23 -6
  90. data/lib/freeclimb/models/conference_status.rb +1 -1
  91. data/lib/freeclimb/models/conference_status_webhook.rb +387 -0
  92. data/lib/freeclimb/models/create_conference.rb +23 -6
  93. data/lib/freeclimb/models/create_conference_request.rb +23 -5
  94. data/lib/freeclimb/models/create_conference_webhook.rb +387 -0
  95. data/lib/freeclimb/models/create_web_rtc_token.rb +1 -3
  96. data/lib/freeclimb/models/dequeue.rb +1 -3
  97. data/lib/freeclimb/models/dequeue_webhook.rb +365 -0
  98. data/lib/freeclimb/models/enqueue.rb +1 -4
  99. data/lib/freeclimb/models/filter_logs_request.rb +1 -3
  100. data/lib/freeclimb/models/get_digits.rb +1 -4
  101. data/lib/freeclimb/models/get_digits_reason.rb +39 -0
  102. data/lib/freeclimb/models/get_digits_webhook.rb +373 -0
  103. data/lib/freeclimb/models/get_speech.rb +23 -4
  104. data/lib/freeclimb/models/get_speech_reason.rb +1 -1
  105. data/lib/freeclimb/models/get_speech_webhook.rb +423 -0
  106. data/lib/freeclimb/models/grammar_file_built_in.rb +1 -1
  107. data/lib/freeclimb/models/grammar_type.rb +1 -1
  108. data/lib/freeclimb/models/hangup.rb +1 -4
  109. data/lib/freeclimb/models/if_machine.rb +1 -1
  110. data/lib/freeclimb/models/inbound_call_webhook.rb +355 -0
  111. data/lib/freeclimb/models/incoming_number_list.rb +1 -4
  112. data/lib/freeclimb/models/incoming_number_request.rb +1 -3
  113. data/lib/freeclimb/models/incoming_number_result.rb +1 -4
  114. data/lib/freeclimb/models/language.rb +1 -1
  115. data/lib/freeclimb/models/{conference_result_all_of.rb → leave_conference_webhook.rb} +110 -89
  116. data/lib/freeclimb/models/log_level.rb +1 -1
  117. data/lib/freeclimb/models/log_list.rb +1 -4
  118. data/lib/freeclimb/models/log_result.rb +23 -3
  119. data/lib/freeclimb/models/{call_result_all_of.rb → machine_detected_webhook.rb} +96 -119
  120. data/lib/freeclimb/models/machine_type.rb +3 -3
  121. data/lib/freeclimb/models/make_call_request.rb +1 -3
  122. data/lib/freeclimb/models/{message_result_all_of.rb → message_delivery_webhook.rb} +71 -87
  123. data/lib/freeclimb/models/message_direction.rb +1 -1
  124. data/lib/freeclimb/models/message_request.rb +1 -4
  125. data/lib/freeclimb/models/message_result.rb +23 -4
  126. data/lib/freeclimb/models/message_status.rb +1 -1
  127. data/lib/freeclimb/models/{incoming_number_result_all_of.rb → message_status_webhook.rb} +117 -107
  128. data/lib/freeclimb/models/messages_list.rb +1 -4
  129. data/lib/freeclimb/models/mutable_resource_model.rb +1 -3
  130. data/lib/freeclimb/models/out_dial.rb +23 -4
  131. data/lib/freeclimb/models/out_dial_api_connect_webhook.rb +355 -0
  132. data/lib/freeclimb/models/out_dial_connect_webhook.rb +355 -0
  133. data/lib/freeclimb/models/out_dial_start_webhook.rb +366 -0
  134. data/lib/freeclimb/models/pagination_model.rb +1 -3
  135. data/lib/freeclimb/models/park.rb +1 -4
  136. data/lib/freeclimb/models/pause.rb +1 -4
  137. data/lib/freeclimb/models/percl_command.rb +3 -5
  138. data/lib/freeclimb/models/percl_script.rb +2 -4
  139. data/lib/freeclimb/models/play.rb +2 -5
  140. data/lib/freeclimb/models/play_beep.rb +1 -1
  141. data/lib/freeclimb/models/play_early_media.rb +2 -5
  142. data/lib/freeclimb/models/queue_list.rb +2 -5
  143. data/lib/freeclimb/models/queue_member.rb +1 -3
  144. data/lib/freeclimb/models/queue_member_list.rb +2 -5
  145. data/lib/freeclimb/models/queue_request.rb +1 -3
  146. data/lib/freeclimb/models/queue_result.rb +2 -5
  147. data/lib/freeclimb/models/queue_result_status.rb +1 -1
  148. data/lib/freeclimb/models/queue_wait_webhook.rb +375 -0
  149. data/lib/freeclimb/models/record_utterance.rb +2 -5
  150. data/lib/freeclimb/models/record_utterance_term_reason.rb +1 -1
  151. data/lib/freeclimb/models/record_webhook.rb +424 -0
  152. data/lib/freeclimb/models/recording_list.rb +2 -5
  153. data/lib/freeclimb/models/recording_result.rb +2 -5
  154. data/lib/freeclimb/models/redirect.rb +2 -5
  155. data/lib/freeclimb/models/redirect_webhook.rb +355 -0
  156. data/lib/freeclimb/models/reject.rb +2 -5
  157. data/lib/freeclimb/models/remove_from_conference.rb +1 -3
  158. data/lib/freeclimb/models/remove_from_queue_notification_webhook.rb +364 -0
  159. data/lib/freeclimb/models/request_type.rb +1 -1
  160. data/lib/freeclimb/models/say.rb +2 -5
  161. data/lib/freeclimb/models/send_digits.rb +2 -5
  162. data/lib/freeclimb/models/set_dtmf_pass_through.rb +2 -5
  163. data/lib/freeclimb/models/set_listen.rb +2 -5
  164. data/lib/freeclimb/models/set_talk.rb +2 -5
  165. data/lib/freeclimb/models/sms.rb +2 -5
  166. data/lib/freeclimb/models/sms_ten_dlc_brand.rb +6 -67
  167. data/lib/freeclimb/models/sms_ten_dlc_brand_alt_business_id_type.rb +39 -0
  168. data/lib/freeclimb/models/sms_ten_dlc_brand_entity_type.rb +40 -0
  169. data/lib/freeclimb/models/sms_ten_dlc_brand_identity_status.rb +39 -0
  170. data/lib/freeclimb/models/sms_ten_dlc_brand_relationship.rb +40 -0
  171. data/lib/freeclimb/models/sms_ten_dlc_brand_stock_exchange.rb +62 -0
  172. data/lib/freeclimb/models/sms_ten_dlc_brands_list_result.rb +2 -5
  173. data/lib/freeclimb/models/sms_ten_dlc_campaign.rb +2 -15
  174. data/lib/freeclimb/models/sms_ten_dlc_campaign_status.rb +37 -0
  175. data/lib/freeclimb/models/sms_ten_dlc_campaigns_list_result.rb +2 -5
  176. data/lib/freeclimb/models/sms_ten_dlc_partner_campaign.rb +2 -15
  177. data/lib/freeclimb/models/sms_ten_dlc_partner_campaign_brand.rb +1 -3
  178. data/lib/freeclimb/models/sms_ten_dlc_partner_campaign_status.rb +37 -0
  179. data/lib/freeclimb/models/sms_ten_dlc_partner_campaigns_list_result.rb +2 -5
  180. data/lib/freeclimb/models/sms_toll_free_campaign.rb +2 -15
  181. data/lib/freeclimb/models/sms_toll_free_campaign_registration_status.rb +40 -0
  182. data/lib/freeclimb/models/sms_toll_free_campaigns_list_result.rb +2 -5
  183. data/lib/freeclimb/models/start_record_call.rb +1 -3
  184. data/lib/freeclimb/models/terminate_conference.rb +1 -3
  185. data/lib/freeclimb/models/tfn.rb +1 -3
  186. data/lib/freeclimb/models/transcribe_reason.rb +40 -0
  187. data/lib/freeclimb/models/transcribe_term_reason.rb +37 -0
  188. data/lib/freeclimb/models/transcribe_utterance.rb +4 -7
  189. data/lib/freeclimb/models/{transcribe_utterance_all_of_record.rb → transcribe_utterance_record.rb} +8 -10
  190. data/lib/freeclimb/models/transcribe_webhook.rb +481 -0
  191. data/lib/freeclimb/models/unpark.rb +1 -3
  192. data/lib/freeclimb/models/update_call_request.rb +23 -3
  193. data/lib/freeclimb/models/update_call_request_status.rb +1 -1
  194. data/lib/freeclimb/models/update_conference_participant_request.rb +1 -3
  195. data/lib/freeclimb/models/update_conference_request.rb +23 -5
  196. data/lib/freeclimb/models/update_conference_request_status.rb +1 -1
  197. data/lib/freeclimb/models/{call_list_all_of.rb → webhook.rb} +18 -17
  198. data/lib/freeclimb/utils/request_verifier.rb +51 -51
  199. data/lib/freeclimb/utils/signature_information.rb +34 -34
  200. data/lib/freeclimb/version.rb +2 -2
  201. data/lib/freeclimb.rb +41 -49
  202. data/openapi.json +1734 -681
  203. data/package.json +3 -1
  204. data/spec/api/default_api_spec.rb +61 -35
  205. data/spec/factories.rb +78 -78
  206. data/spec/models/account_request_spec.rb +55 -17
  207. data/spec/models/account_result_spec.rb +304 -80
  208. data/spec/models/account_status_spec.rb +1 -1
  209. data/spec/models/account_type_spec.rb +1 -1
  210. data/spec/models/add_to_conference_notification_webhook_spec.rb +866 -0
  211. data/spec/models/add_to_conference_spec.rb +251 -38
  212. data/spec/models/add_to_queue_notification_webhook_spec.rb +643 -0
  213. data/spec/models/answered_by_spec.rb +1 -1
  214. data/spec/models/application_list_spec.rb +181 -39
  215. data/spec/models/application_request_spec.rb +160 -32
  216. data/spec/models/application_result_spec.rb +286 -50
  217. data/spec/models/available_number_list_spec.rb +181 -39
  218. data/spec/models/available_number_spec.rb +160 -32
  219. data/spec/models/barge_in_reason_spec.rb +77 -0
  220. data/spec/models/buy_incoming_number_request_spec.rb +76 -20
  221. data/spec/models/call_control_webhook_spec.rb +385 -0
  222. data/spec/models/call_direction_spec.rb +1 -1
  223. data/spec/models/call_ended_reason_spec.rb +397 -0
  224. data/spec/models/call_list_spec.rb +181 -39
  225. data/spec/models/call_result_spec.rb +551 -122
  226. data/spec/models/call_status_spec.rb +1 -1
  227. data/spec/models/call_status_webhook_spec.rb +793 -0
  228. data/spec/models/capabilities_spec.rb +118 -26
  229. data/spec/models/completion_request_spec.rb +35 -15
  230. data/spec/models/completion_result_spec.rb +91 -45
  231. data/spec/models/completion_result_status_spec.rb +61 -0
  232. data/spec/models/conference_list_spec.rb +181 -39
  233. data/spec/models/conference_participant_list_spec.rb +181 -39
  234. data/spec/models/conference_participant_result_spec.rb +272 -41
  235. data/spec/models/conference_recording_status_webhook_spec.rb +866 -0
  236. data/spec/models/conference_result_spec.rb +367 -89
  237. data/spec/models/conference_status_spec.rb +1 -1
  238. data/spec/models/conference_status_webhook_spec.rb +866 -0
  239. data/spec/models/create_conference_request_spec.rb +148 -44
  240. data/spec/models/create_conference_spec.rb +169 -47
  241. data/spec/models/create_conference_webhook_spec.rb +866 -0
  242. data/spec/models/create_web_rtc_token_spec.rb +76 -20
  243. data/spec/models/dequeue_spec.rb +1 -1
  244. data/spec/models/dequeue_webhook_spec.rb +743 -0
  245. data/spec/models/enqueue_spec.rb +97 -23
  246. data/spec/models/filter_logs_request_spec.rb +34 -14
  247. data/spec/models/get_digits_reason_spec.rb +93 -0
  248. data/spec/models/get_digits_spec.rb +202 -42
  249. data/spec/models/get_digits_webhook_spec.rb +815 -0
  250. data/spec/models/get_speech_reason_spec.rb +1 -1
  251. data/spec/models/get_speech_spec.rb +308 -66
  252. data/spec/models/get_speech_webhook_spec.rb +1072 -0
  253. data/spec/models/grammar_file_built_in_spec.rb +1 -1
  254. data/spec/models/grammar_type_spec.rb +1 -1
  255. data/spec/models/hangup_spec.rb +34 -14
  256. data/spec/models/if_machine_spec.rb +1 -1
  257. data/spec/models/inbound_call_webhook_spec.rb +692 -0
  258. data/spec/models/incoming_number_list_spec.rb +181 -39
  259. data/spec/models/incoming_number_request_spec.rb +76 -20
  260. data/spec/models/incoming_number_result_spec.rb +370 -62
  261. data/spec/models/language_spec.rb +1 -1
  262. data/spec/models/leave_conference_webhook_spec.rb +643 -0
  263. data/spec/models/log_level_spec.rb +1 -1
  264. data/spec/models/log_list_spec.rb +181 -39
  265. data/spec/models/log_result_spec.rb +190 -50
  266. data/spec/models/machine_detected_webhook_spec.rb +758 -0
  267. data/spec/models/machine_type_spec.rb +10 -10
  268. data/spec/models/make_call_request_spec.rb +223 -41
  269. data/spec/models/message_delivery_webhook_spec.rb +630 -0
  270. data/spec/models/message_direction_spec.rb +1 -1
  271. data/spec/models/message_request_spec.rb +202 -38
  272. data/spec/models/message_result_spec.rb +375 -74
  273. data/spec/models/message_status_spec.rb +1 -1
  274. data/spec/models/message_status_webhook_spec.rb +732 -0
  275. data/spec/models/messages_list_spec.rb +181 -39
  276. data/spec/models/mutable_resource_model_spec.rb +97 -23
  277. data/spec/models/out_dial_api_connect_webhook_spec.rb +692 -0
  278. data/spec/models/out_dial_connect_webhook_spec.rb +692 -0
  279. data/spec/models/out_dial_spec.rb +253 -59
  280. data/spec/models/out_dial_start_webhook_spec.rb +741 -0
  281. data/spec/models/pagination_model_spec.rb +160 -32
  282. data/spec/models/park_spec.rb +76 -20
  283. data/spec/models/pause_spec.rb +34 -14
  284. data/spec/models/percl_command_spec.rb +34 -14
  285. data/spec/models/percl_script_spec.rb +34 -18
  286. data/spec/models/play_beep_spec.rb +1 -1
  287. data/spec/models/play_early_media_spec.rb +34 -14
  288. data/spec/models/play_spec.rb +76 -20
  289. data/spec/models/queue_list_spec.rb +181 -39
  290. data/spec/models/queue_member_list_spec.rb +181 -39
  291. data/spec/models/queue_member_spec.rb +118 -26
  292. data/spec/models/queue_request_spec.rb +55 -17
  293. data/spec/models/queue_result_spec.rb +244 -44
  294. data/spec/models/queue_result_status_spec.rb +1 -1
  295. data/spec/models/queue_wait_webhook_spec.rb +794 -0
  296. data/spec/models/record_utterance_spec.rb +160 -32
  297. data/spec/models/record_utterance_term_reason_spec.rb +1 -1
  298. data/spec/models/record_webhook_spec.rb +1062 -0
  299. data/spec/models/recording_list_spec.rb +181 -39
  300. data/spec/models/recording_result_spec.rb +202 -38
  301. data/spec/models/redirect_spec.rb +34 -14
  302. data/spec/models/redirect_webhook_spec.rb +692 -0
  303. data/spec/models/reject_spec.rb +34 -14
  304. data/spec/models/remove_from_conference_spec.rb +1 -1
  305. data/spec/models/remove_from_queue_notification_webhook_spec.rb +768 -0
  306. data/spec/models/request_type_spec.rb +1 -1
  307. data/spec/models/say_spec.rb +97 -23
  308. data/spec/models/send_digits_spec.rb +76 -20
  309. data/spec/models/set_dtmf_pass_through_spec.rb +34 -14
  310. data/spec/models/set_listen_spec.rb +34 -14
  311. data/spec/models/set_talk_spec.rb +34 -14
  312. data/spec/models/sms_spec.rb +97 -23
  313. data/spec/models/sms_ten_dlc_brand_alt_business_id_type_spec.rb +93 -0
  314. data/spec/models/sms_ten_dlc_brand_entity_type_spec.rb +109 -0
  315. data/spec/models/sms_ten_dlc_brand_identity_status_spec.rb +93 -0
  316. data/spec/models/sms_ten_dlc_brand_relationship_spec.rb +109 -0
  317. data/spec/models/sms_ten_dlc_brand_spec.rb +933 -378
  318. data/spec/models/sms_ten_dlc_brand_stock_exchange_spec.rb +461 -0
  319. data/spec/models/sms_ten_dlc_brands_list_result_spec.rb +181 -39
  320. data/spec/models/sms_ten_dlc_campaign_spec.rb +820 -164
  321. data/spec/models/sms_ten_dlc_campaign_status_spec.rb +61 -0
  322. data/spec/models/sms_ten_dlc_campaigns_list_result_spec.rb +181 -39
  323. data/spec/models/sms_ten_dlc_partner_campaign_brand_spec.rb +251 -51
  324. data/spec/models/sms_ten_dlc_partner_campaign_spec.rb +713 -183
  325. data/spec/models/sms_ten_dlc_partner_campaign_status_spec.rb +61 -0
  326. data/spec/models/sms_ten_dlc_partner_campaigns_list_result_spec.rb +181 -39
  327. data/spec/models/sms_toll_free_campaign_registration_status_spec.rb +109 -0
  328. data/spec/models/sms_toll_free_campaign_spec.rb +200 -69
  329. data/spec/models/sms_toll_free_campaigns_list_result_spec.rb +181 -39
  330. data/spec/models/start_record_call_spec.rb +1 -1
  331. data/spec/models/terminate_conference_spec.rb +1 -1
  332. data/spec/models/tfn_spec.rb +34 -14
  333. data/spec/models/transcribe_reason_spec.rb +109 -0
  334. data/spec/models/transcribe_term_reason_spec.rb +61 -0
  335. data/spec/models/{transcribe_utterance_all_of_record_spec.rb → transcribe_utterance_record_spec.rb} +99 -43
  336. data/spec/models/transcribe_utterance_spec.rb +155 -45
  337. data/spec/models/transcribe_webhook_spec.rb +1373 -0
  338. data/spec/models/unpark_spec.rb +1 -1
  339. data/spec/models/update_call_request_spec.rb +64 -32
  340. data/spec/models/update_call_request_status_spec.rb +1 -1
  341. data/spec/models/update_conference_participant_request_spec.rb +104 -17
  342. data/spec/models/update_conference_request_spec.rb +136 -56
  343. data/spec/models/update_conference_request_status_spec.rb +1 -1
  344. data/spec/models/webhook_spec.rb +176 -0
  345. data/spec/quickstart_spec.rb +7 -7
  346. data/spec/spec_helper.rb +1 -1
  347. data/spec/utils/request_verifier_spec.rb +123 -123
  348. data/spec/utils/signature_information_spec.rb +36 -36
  349. data/yarn.lock +91 -91
  350. metadata +157 -100
  351. data/docs/AccountResultAllOf.md +0 -30
  352. data/docs/AddToConferenceAllOf.md +0 -36
  353. data/docs/ApplicationListAllOf.md +0 -18
  354. data/docs/ApplicationResultAllOf.md +0 -34
  355. data/docs/AvailableNumberListAllOf.md +0 -18
  356. data/docs/CallListAllOf.md +0 -18
  357. data/docs/CallResultAllOf.md +0 -48
  358. data/docs/ConferenceListAllOf.md +0 -18
  359. data/docs/ConferenceParticipantListAllOf.md +0 -18
  360. data/docs/ConferenceParticipantResultAllOf.md +0 -30
  361. data/docs/ConferenceResultAllOf.md +0 -36
  362. data/docs/CreateConferenceAllOf.md +0 -28
  363. data/docs/EnqueueAllOf.md +0 -24
  364. data/docs/GetDigitsAllOf.md +0 -34
  365. data/docs/GetSpeechAllOf.md +0 -42
  366. data/docs/HangupAllOf.md +0 -18
  367. data/docs/IncomingNumberListAllOf.md +0 -18
  368. data/docs/IncomingNumberResultAllOf.md +0 -42
  369. data/docs/LogListAllOf.md +0 -18
  370. data/docs/MessageRequestAllOf.md +0 -26
  371. data/docs/MessageResultAllOf.md +0 -40
  372. data/docs/MessagesListAllOf.md +0 -18
  373. data/docs/OutDialAllOf.md +0 -36
  374. data/docs/ParkAllOf.md +0 -22
  375. data/docs/PauseAllOf.md +0 -18
  376. data/docs/PlayAllOf.md +0 -22
  377. data/docs/PlayEarlyMediaAllOf.md +0 -18
  378. data/docs/QueueListAllOf.md +0 -18
  379. data/docs/QueueMemberListAllOf.md +0 -18
  380. data/docs/QueueResultAllOf.md +0 -30
  381. data/docs/RecordUtteranceAllOf.md +0 -30
  382. data/docs/RecordingListAllOf.md +0 -18
  383. data/docs/RecordingResultAllOf.md +0 -26
  384. data/docs/RedirectAllOf.md +0 -18
  385. data/docs/RejectAllOf.md +0 -18
  386. data/docs/RemoveFromConferenceAllOf.md +0 -18
  387. data/docs/SMSTenDLCBrandsListResultAllOf.md +0 -18
  388. data/docs/SMSTenDLCCampaignsListResultAllOf.md +0 -18
  389. data/docs/SMSTenDLCPartnerCampaignsListResultAllOf.md +0 -18
  390. data/docs/SMSTollFreeCampaignsListResultAllOf.md +0 -18
  391. data/docs/SayAllOf.md +0 -24
  392. data/docs/SendDigitsAllOf.md +0 -22
  393. data/docs/SetDTMFPassThroughAllOf.md +0 -18
  394. data/docs/SetListenAllOf.md +0 -18
  395. data/docs/SetTalkAllOf.md +0 -18
  396. data/docs/SmsAllOf.md +0 -24
  397. data/docs/TerminateConferenceAllOf.md +0 -18
  398. data/docs/TranscribeUtteranceAllOf.md +0 -28
  399. data/docs/TranscribeUtteranceAllOfRecord.md +0 -22
  400. data/lib/freeclimb/models/account_result_all_of.rb +0 -289
  401. data/lib/freeclimb/models/add_to_conference_all_of.rb +0 -318
  402. data/lib/freeclimb/models/application_list_all_of.rb +0 -226
  403. data/lib/freeclimb/models/application_result_all_of.rb +0 -313
  404. data/lib/freeclimb/models/available_number_list_all_of.rb +0 -226
  405. data/lib/freeclimb/models/conference_list_all_of.rb +0 -226
  406. data/lib/freeclimb/models/conference_participant_list_all_of.rb +0 -226
  407. data/lib/freeclimb/models/create_conference_all_of.rb +0 -280
  408. data/lib/freeclimb/models/enqueue_all_of.rb +0 -266
  409. data/lib/freeclimb/models/get_digits_all_of.rb +0 -310
  410. data/lib/freeclimb/models/get_speech_all_of.rb +0 -354
  411. data/lib/freeclimb/models/hangup_all_of.rb +0 -224
  412. data/lib/freeclimb/models/incoming_number_list_all_of.rb +0 -226
  413. data/lib/freeclimb/models/log_list_all_of.rb +0 -226
  414. data/lib/freeclimb/models/message_request_all_of.rb +0 -279
  415. data/lib/freeclimb/models/messages_list_all_of.rb +0 -227
  416. data/lib/freeclimb/models/out_dial_all_of.rb +0 -329
  417. data/lib/freeclimb/models/park_all_of.rb +0 -252
  418. data/lib/freeclimb/models/pause_all_of.rb +0 -228
  419. data/lib/freeclimb/models/play_all_of.rb +0 -248
  420. data/lib/freeclimb/models/play_early_media_all_of.rb +0 -228
  421. data/lib/freeclimb/models/queue_list_all_of.rb +0 -226
  422. data/lib/freeclimb/models/queue_member_list_all_of.rb +0 -226
  423. data/lib/freeclimb/models/queue_result_all_of.rb +0 -291
  424. data/lib/freeclimb/models/record_utterance_all_of.rb +0 -288
  425. data/lib/freeclimb/models/recording_list_all_of.rb +0 -226
  426. data/lib/freeclimb/models/redirect_all_of.rb +0 -228
  427. data/lib/freeclimb/models/reject_all_of.rb +0 -224
  428. data/lib/freeclimb/models/say_all_of.rb +0 -260
  429. data/lib/freeclimb/models/send_digits_all_of.rb +0 -248
  430. data/lib/freeclimb/models/set_dtmf_pass_through_all_of.rb +0 -224
  431. data/lib/freeclimb/models/set_listen_all_of.rb +0 -224
  432. data/lib/freeclimb/models/set_talk_all_of.rb +0 -224
  433. data/lib/freeclimb/models/sms_all_of.rb +0 -266
  434. data/lib/freeclimb/models/sms_ten_dlc_brands_list_result_all_of.rb +0 -226
  435. data/lib/freeclimb/models/sms_ten_dlc_campaigns_list_result_all_of.rb +0 -226
  436. data/lib/freeclimb/models/sms_ten_dlc_partner_campaigns_list_result_all_of.rb +0 -226
  437. data/lib/freeclimb/models/sms_toll_free_campaigns_list_result_all_of.rb +0 -226
  438. data/lib/freeclimb/models/transcribe_utterance_all_of.rb +0 -281
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ OpenAPI Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -14,126 +14,119 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Freeclimb
17
- class MessageResultAllOf
18
- # String that uniquely identifies this account resource.
19
- attr_accessor :account_id
20
-
21
- # String that uniquely identifies this message resource
22
- attr_accessor :message_id
17
+ # An SMS has been received by the platform and is being delivered to the smsUrl of the customer application that is associated with the destination number. A PerCL response will be ignored.
18
+ class MessageDeliveryWebhook < Webhook
19
+ def self.deserialize(payload)
20
+ return nil if payload.nil? || payload.empty?
21
+ data = JSON.parse("[#{payload}]")[0]
22
+ inverted_attributes = self.attribute_map.invert
23
+ hash = self.acceptable_attributes.uniq.map { |k| [inverted_attributes[k], data[k.to_s]] }.to_h
24
+ MessageDeliveryWebhook.new(hash)
25
+ end
26
+ # Value will be messageDelivery - An SMS message has been received by the platform and is being delivered to the customer application associated with the destination number.
27
+ attr_accessor :request_type
23
28
 
24
- attr_accessor :status
29
+ # Account ID associated with your account.
30
+ attr_accessor :account_id
25
31
 
26
- # Phone number in E.164 format that sent the message.
32
+ # Phone number of the party that initiated the Call (in E.164 format).
27
33
  attr_accessor :from
28
34
 
29
- # Phone number in E.164 format that received the message.
35
+ # Phone number provisioned to you and to which this Call is directed (in E.164 format).
30
36
  attr_accessor :to
31
37
 
32
- # Message contents
38
+ # Body of the SMS message.
33
39
  attr_accessor :text
34
40
 
35
- # Noting whether the message was inbound or outbound
41
+ # Value will be inbound to indicate the receipt of a message into the FreeClimb platform.
36
42
  attr_accessor :direction
37
43
 
38
- # URL invoked when message sent
39
- attr_accessor :notification_url
40
-
41
- # The unique identifier for the brand associated with the message
42
- attr_accessor :brand_id
44
+ # ID of the application to which the destination number is assigned.
45
+ attr_accessor :application_id
43
46
 
44
- # The unique identifier for the campaign associated with the message
45
- attr_accessor :campaign_id
47
+ # Value will be received to indicate that the platform has successfully received the incoming message.
48
+ attr_accessor :status
46
49
 
47
- # The number of segments into which the message was split
48
- attr_accessor :segment_count
50
+ # ID of the destination phone number.
51
+ attr_accessor :phone_number_id
49
52
 
50
- # an array of HTTP URLs which were attached this this message
51
- attr_accessor :media_urls
53
+ # The URI for this resource, relative to the API base URL
54
+ attr_accessor :uri
52
55
 
53
56
  # Attribute mapping from ruby-style variable name to JSON key.
54
57
  def self.attribute_map
55
58
  {
59
+ :'request_type' => :'requestType',
56
60
  :'account_id' => :'accountId',
57
- :'message_id' => :'messageId',
58
- :'status' => :'status',
59
61
  :'from' => :'from',
60
62
  :'to' => :'to',
61
63
  :'text' => :'text',
62
64
  :'direction' => :'direction',
63
- :'notification_url' => :'notificationUrl',
64
- :'brand_id' => :'brandId',
65
- :'campaign_id' => :'campaignId',
66
- :'segment_count' => :'segmentCount',
67
- :'media_urls' => :'mediaUrls'
65
+ :'application_id' => :'applicationId',
66
+ :'status' => :'status',
67
+ :'phone_number_id' => :'phoneNumberId',
68
+ :'uri' => :'uri'
68
69
  }
69
70
  end
70
71
 
71
- # Returns all the JSON keys this model knows about
72
+ # Returns all the JSON keys this model knows about, including the ones defined in its parent(s)
72
73
  def self.acceptable_attributes
73
- attribute_map.values
74
+ attribute_map.values.concat(superclass.acceptable_attributes)
74
75
  end
75
76
 
76
77
  # Attribute type mapping.
77
78
  def self.openapi_types
78
79
  {
80
+ :'request_type' => :'String',
79
81
  :'account_id' => :'String',
80
- :'message_id' => :'String',
81
- :'status' => :'MessageStatus',
82
82
  :'from' => :'String',
83
83
  :'to' => :'String',
84
84
  :'text' => :'String',
85
85
  :'direction' => :'String',
86
- :'notification_url' => :'String',
87
- :'brand_id' => :'String',
88
- :'campaign_id' => :'String',
89
- :'segment_count' => :'Float',
90
- :'media_urls' => :'Array<String>'
86
+ :'application_id' => :'String',
87
+ :'status' => :'String',
88
+ :'phone_number_id' => :'String',
89
+ :'uri' => :'String'
91
90
  }
92
91
  end
93
92
 
94
93
  # List of attributes with nullable: true
95
94
  def self.openapi_nullable
96
95
  Set.new([
97
- :'account_id',
98
- :'message_id',
99
- :'status',
100
- :'from',
101
- :'to',
102
- :'text',
103
- :'direction',
104
- :'notification_url',
105
- :'brand_id',
106
- :'campaign_id',
107
- :'segment_count',
108
- :'media_urls'
109
96
  ])
110
97
  end
111
98
 
99
+ # List of class defined in allOf (OpenAPI v3)
100
+ def self.openapi_all_of
101
+ [
102
+ :'Webhook'
103
+ ]
104
+ end
105
+
112
106
  # Initializes the object
113
107
  # @param [Hash] attributes Model attributes in the form of hash
114
108
  def initialize(attributes = {})
115
109
  if (!attributes.is_a?(Hash))
116
- fail ArgumentError, "The input argument (attributes) must be a hash in `Freeclimb::MessageResultAllOf` initialize method"
110
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Freeclimb::MessageDeliveryWebhook` initialize method"
117
111
  end
118
112
 
119
113
  # check to see if the attribute exists and convert string to symbol for hash key
120
114
  attributes = attributes.each_with_object({}) { |(k, v), h|
121
115
  if (!self.class.attribute_map.key?(k.to_sym))
122
- fail ArgumentError, "`#{k}` is not a valid attribute in `Freeclimb::MessageResultAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
116
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Freeclimb::MessageDeliveryWebhook`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
123
117
  end
124
118
  h[k.to_sym] = v
125
119
  }
126
120
 
127
- if attributes.key?(:'account_id')
128
- self.account_id = attributes[:'account_id']
129
- end
121
+ # call parent's initialize
122
+ super(attributes)
130
123
 
131
- if attributes.key?(:'message_id')
132
- self.message_id = attributes[:'message_id']
124
+ if attributes.key?(:'request_type')
125
+ self.request_type = attributes[:'request_type']
133
126
  end
134
127
 
135
- if attributes.key?(:'status')
136
- self.status = attributes[:'status']
128
+ if attributes.key?(:'account_id')
129
+ self.account_id = attributes[:'account_id']
137
130
  end
138
131
 
139
132
  if attributes.key?(:'from')
@@ -152,33 +145,27 @@ module Freeclimb
152
145
  self.direction = attributes[:'direction']
153
146
  end
154
147
 
155
- if attributes.key?(:'notification_url')
156
- self.notification_url = attributes[:'notification_url']
148
+ if attributes.key?(:'application_id')
149
+ self.application_id = attributes[:'application_id']
157
150
  end
158
151
 
159
- if attributes.key?(:'brand_id')
160
- self.brand_id = attributes[:'brand_id']
161
- end
162
-
163
- if attributes.key?(:'campaign_id')
164
- self.campaign_id = attributes[:'campaign_id']
152
+ if attributes.key?(:'status')
153
+ self.status = attributes[:'status']
165
154
  end
166
155
 
167
- if attributes.key?(:'segment_count')
168
- self.segment_count = attributes[:'segment_count']
156
+ if attributes.key?(:'phone_number_id')
157
+ self.phone_number_id = attributes[:'phone_number_id']
169
158
  end
170
159
 
171
- if attributes.key?(:'media_urls')
172
- if (value = attributes[:'media_urls']).is_a?(Array)
173
- self.media_urls = value
174
- end
160
+ if attributes.key?(:'uri')
161
+ self.uri = attributes[:'uri']
175
162
  end
176
163
  end
177
164
 
178
165
  # Show invalid properties with the reasons. Usually used together with valid?
179
166
  # @return Array for valid properties with the reasons
180
167
  def list_invalid_properties
181
- invalid_properties = Array.new
168
+ invalid_properties = super
182
169
  invalid_properties
183
170
  end
184
171
 
@@ -186,7 +173,7 @@ module Freeclimb
186
173
  # @return true if the model is valid
187
174
  def valid?
188
175
 
189
- if @account_id.nil?
176
+ if @request_type.nil?
190
177
  false
191
178
  else
192
179
  list_invalid_properties.length() == 0
@@ -198,18 +185,16 @@ module Freeclimb
198
185
  def ==(o)
199
186
  return true if self.equal?(o)
200
187
  self.class == o.class &&
188
+ request_type == o.request_type &&
201
189
  account_id == o.account_id &&
202
- message_id == o.message_id &&
203
- status == o.status &&
204
190
  from == o.from &&
205
191
  to == o.to &&
206
192
  text == o.text &&
207
193
  direction == o.direction &&
208
- notification_url == o.notification_url &&
209
- brand_id == o.brand_id &&
210
- campaign_id == o.campaign_id &&
211
- segment_count == o.segment_count &&
212
- media_urls == o.media_urls
194
+ application_id == o.application_id &&
195
+ status == o.status &&
196
+ phone_number_id == o.phone_number_id &&
197
+ uri == o.uri && super(o)
213
198
  end
214
199
 
215
200
  # @see the `==` method
@@ -221,7 +206,7 @@ module Freeclimb
221
206
  # Calculates hash code according to all attributes.
222
207
  # @return [Integer] Hash code
223
208
  def hash
224
- [account_id, message_id, status, from, to, text, direction, notification_url, brand_id, campaign_id, segment_count, media_urls].hash
209
+ [request_type, account_id, from, to, text, direction, application_id, status, phone_number_id, uri].hash
225
210
  end
226
211
 
227
212
  # Builds the object from hash
@@ -236,6 +221,7 @@ module Freeclimb
236
221
  # @return [Object] Returns the model itself
237
222
  def build_from_hash(attributes)
238
223
  return nil unless attributes.is_a?(Hash)
224
+ super(attributes)
239
225
  self.class.openapi_types.each_pair do |key, type|
240
226
  if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
241
227
  self.send("#{key}=", nil)
@@ -311,7 +297,7 @@ module Freeclimb
311
297
  # Returns the object in the form of hash
312
298
  # @return [Hash] Returns the object in the form of hash
313
299
  def to_hash
314
- hash = {}
300
+ hash = super
315
301
  self.class.attribute_map.each_pair do |attr, param|
316
302
  value = self.send(attr)
317
303
  if value.nil?
@@ -341,7 +327,5 @@ module Freeclimb
341
327
  value
342
328
  end
343
329
  end
344
-
345
330
  end
346
-
347
331
  end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ OpenAPI Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ OpenAPI Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -87,7 +87,6 @@ module Freeclimb
87
87
  # List of class defined in allOf (OpenAPI v3)
88
88
  def self.openapi_all_of
89
89
  [
90
- :'MessageRequestAllOf',
91
90
  :'MutableResourceModel'
92
91
  ]
93
92
  end
@@ -321,7 +320,5 @@ module Freeclimb
321
320
  value
322
321
  end
323
322
  end
324
-
325
323
  end
326
-
327
324
  end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ OpenAPI Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -62,6 +62,28 @@ module Freeclimb
62
62
  # an array of HTTP URLs which were attached this this message
63
63
  attr_accessor :media_urls
64
64
 
65
+ class EnumAttributeValidator
66
+ attr_reader :datatype
67
+ attr_reader :allowable_values
68
+
69
+ def initialize(datatype, allowable_values)
70
+ @allowable_values = allowable_values.map do |value|
71
+ case datatype.to_s
72
+ when /Integer/i
73
+ value.to_i
74
+ when /Float/i
75
+ value.to_f
76
+ else
77
+ value
78
+ end
79
+ end
80
+ end
81
+
82
+ def valid?(value)
83
+ !value || allowable_values.include?(value)
84
+ end
85
+ end
86
+
65
87
  # Attribute mapping from ruby-style variable name to JSON key.
66
88
  def self.attribute_map
67
89
  {
@@ -132,7 +154,6 @@ module Freeclimb
132
154
  # List of class defined in allOf (OpenAPI v3)
133
155
  def self.openapi_all_of
134
156
  [
135
- :'MessageResultAllOf',
136
157
  :'MutableResourceModel'
137
158
  ]
138
159
  end
@@ -389,7 +410,5 @@ module Freeclimb
389
410
  value
390
411
  end
391
412
  end
392
-
393
413
  end
394
-
395
414
  end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ OpenAPI Generator version: 7.9.0
10
10
 
11
11
  =end
12
12