freeclimb 3.0.2 → 4.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (336) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/Gemfile +4 -1
  4. data/Gemfile.lock +33 -19
  5. data/README.md +40 -35
  6. data/docs/AccountRequest.md +9 -8
  7. data/docs/AccountResult.md +27 -26
  8. data/docs/AccountResultAllOf.md +19 -18
  9. data/docs/AddToConference.md +25 -24
  10. data/docs/AddToConferenceAllOf.md +25 -24
  11. data/docs/ApplicationList.md +21 -20
  12. data/docs/ApplicationListAllOf.md +7 -6
  13. data/docs/ApplicationRequest.md +19 -18
  14. data/docs/ApplicationResult.md +31 -30
  15. data/docs/ApplicationResultAllOf.md +23 -22
  16. data/docs/AvailableNumber.md +19 -14
  17. data/docs/AvailableNumberList.md +21 -20
  18. data/docs/AvailableNumberListAllOf.md +7 -6
  19. data/docs/BuyIncomingNumberRequest.md +11 -10
  20. data/docs/CallList.md +21 -20
  21. data/docs/CallListAllOf.md +7 -6
  22. data/docs/CallResult.md +43 -42
  23. data/docs/CallResultAllOf.md +35 -34
  24. data/docs/Capabilities.md +26 -0
  25. data/docs/ConferenceList.md +21 -20
  26. data/docs/ConferenceListAllOf.md +7 -6
  27. data/docs/ConferenceParticipantList.md +21 -20
  28. data/docs/ConferenceParticipantListAllOf.md +7 -6
  29. data/docs/ConferenceParticipantResult.md +25 -24
  30. data/docs/ConferenceParticipantResultAllOf.md +17 -16
  31. data/docs/ConferenceResult.md +33 -32
  32. data/docs/ConferenceResultAllOf.md +25 -24
  33. data/docs/CreateConference.md +17 -16
  34. data/docs/CreateConferenceAllOf.md +17 -16
  35. data/docs/CreateConferenceRequest.md +15 -14
  36. data/docs/DefaultApi.md +1625 -647
  37. data/docs/Dequeue.md +3 -4
  38. data/docs/Enqueue.md +13 -12
  39. data/docs/EnqueueAllOf.md +13 -12
  40. data/docs/FilterLogsRequest.md +7 -6
  41. data/docs/GetDigits.md +23 -22
  42. data/docs/GetDigitsAllOf.md +23 -22
  43. data/docs/GetSpeech.md +31 -30
  44. data/docs/GetSpeechAllOf.md +31 -30
  45. data/docs/Hangup.md +7 -6
  46. data/docs/HangupAllOf.md +7 -6
  47. data/docs/IncomingNumberList.md +21 -20
  48. data/docs/IncomingNumberListAllOf.md +7 -6
  49. data/docs/IncomingNumberRequest.md +9 -8
  50. data/docs/IncomingNumberResult.md +35 -30
  51. data/docs/IncomingNumberResultAllOf.md +27 -22
  52. data/docs/LogList.md +21 -20
  53. data/docs/LogListAllOf.md +7 -6
  54. data/docs/LogResult.md +19 -18
  55. data/docs/MakeCallRequest.md +25 -24
  56. data/docs/MessageRequest.md +23 -22
  57. data/docs/MessageRequestAllOf.md +15 -14
  58. data/docs/MessageResult.md +29 -28
  59. data/docs/MessageResultAllOf.md +21 -20
  60. data/docs/MessagesList.md +21 -20
  61. data/docs/MessagesListAllOf.md +7 -6
  62. data/docs/MutableResourceModel.md +13 -12
  63. data/docs/OutDial.md +25 -24
  64. data/docs/OutDialAllOf.md +25 -24
  65. data/docs/PaginationModel.md +19 -18
  66. data/docs/Park.md +22 -0
  67. data/docs/ParkAllOf.md +22 -0
  68. data/docs/Pause.md +7 -6
  69. data/docs/PauseAllOf.md +7 -6
  70. data/docs/PerclCommand.md +7 -6
  71. data/docs/PerclScript.md +7 -6
  72. data/docs/Play.md +13 -12
  73. data/docs/PlayAllOf.md +13 -12
  74. data/docs/PlayEarlyMedia.md +7 -6
  75. data/docs/PlayEarlyMediaAllOf.md +7 -6
  76. data/docs/QueueList.md +21 -20
  77. data/docs/QueueListAllOf.md +7 -6
  78. data/docs/QueueMember.md +15 -14
  79. data/docs/QueueMemberList.md +21 -20
  80. data/docs/QueueMemberListAllOf.md +7 -6
  81. data/docs/QueueRequest.md +9 -8
  82. data/docs/QueueResult.md +27 -26
  83. data/docs/QueueResultAllOf.md +19 -18
  84. data/docs/RecordUtterance.md +19 -18
  85. data/docs/RecordUtteranceAllOf.md +19 -18
  86. data/docs/RecordingList.md +21 -20
  87. data/docs/RecordingListAllOf.md +7 -6
  88. data/docs/RecordingResult.md +23 -22
  89. data/docs/RecordingResultAllOf.md +15 -14
  90. data/docs/Redirect.md +7 -6
  91. data/docs/RedirectAllOf.md +7 -6
  92. data/docs/Reject.md +7 -6
  93. data/docs/RejectAllOf.md +7 -6
  94. data/docs/RemoveFromConference.md +7 -6
  95. data/docs/RemoveFromConferenceAllOf.md +7 -6
  96. data/docs/Say.md +15 -14
  97. data/docs/SayAllOf.md +15 -14
  98. data/docs/SendDigits.md +11 -10
  99. data/docs/SendDigitsAllOf.md +11 -10
  100. data/docs/SetListen.md +9 -8
  101. data/docs/SetListenAllOf.md +9 -8
  102. data/docs/SetTalk.md +9 -8
  103. data/docs/SetTalkAllOf.md +9 -8
  104. data/docs/Sms.md +13 -12
  105. data/docs/SmsAllOf.md +13 -12
  106. data/docs/StartRecordCall.md +3 -4
  107. data/docs/TerminateConference.md +7 -6
  108. data/docs/TerminateConferenceAllOf.md +7 -6
  109. data/docs/Unpark.md +15 -0
  110. data/docs/UpdateCallRequest.md +7 -6
  111. data/docs/UpdateConferenceParticipantRequest.md +9 -8
  112. data/docs/UpdateConferenceRequest.md +11 -10
  113. data/freeclimb.gemspec +3 -4
  114. data/lib/freeclimb/api/default_api.rb +434 -278
  115. data/lib/freeclimb/api_client.rb +55 -51
  116. data/lib/freeclimb/api_error.rb +2 -2
  117. data/lib/freeclimb/configuration.rb +41 -11
  118. data/lib/freeclimb/models/account_request.rb +20 -8
  119. data/lib/freeclimb/models/account_result.rb +39 -8
  120. data/lib/freeclimb/models/account_result_all_of.rb +39 -8
  121. data/lib/freeclimb/models/add_to_conference.rb +21 -8
  122. data/lib/freeclimb/models/add_to_conference_all_of.rb +20 -8
  123. data/lib/freeclimb/models/application_list.rb +28 -8
  124. data/lib/freeclimb/models/application_list_all_of.rb +21 -8
  125. data/lib/freeclimb/models/application_request.rb +20 -8
  126. data/lib/freeclimb/models/application_result.rb +29 -8
  127. data/lib/freeclimb/models/application_result_all_of.rb +29 -8
  128. data/lib/freeclimb/models/available_number.rb +46 -9
  129. data/lib/freeclimb/models/available_number_list.rb +28 -8
  130. data/lib/freeclimb/models/available_number_list_all_of.rb +21 -8
  131. data/lib/freeclimb/models/buy_incoming_number_request.rb +20 -8
  132. data/lib/freeclimb/models/call_list.rb +28 -8
  133. data/lib/freeclimb/models/call_list_all_of.rb +21 -8
  134. data/lib/freeclimb/models/call_result.rb +35 -8
  135. data/lib/freeclimb/models/call_result_all_of.rb +35 -8
  136. data/lib/freeclimb/models/capabilities.rb +265 -0
  137. data/lib/freeclimb/models/conference_list.rb +28 -8
  138. data/lib/freeclimb/models/conference_list_all_of.rb +21 -8
  139. data/lib/freeclimb/models/conference_participant_list.rb +28 -8
  140. data/lib/freeclimb/models/conference_participant_list_all_of.rb +21 -8
  141. data/lib/freeclimb/models/conference_participant_result.rb +26 -8
  142. data/lib/freeclimb/models/conference_participant_result_all_of.rb +26 -8
  143. data/lib/freeclimb/models/conference_result.rb +30 -8
  144. data/lib/freeclimb/models/conference_result_all_of.rb +30 -8
  145. data/lib/freeclimb/models/create_conference.rb +21 -8
  146. data/lib/freeclimb/models/create_conference_all_of.rb +20 -8
  147. data/lib/freeclimb/models/create_conference_request.rb +20 -8
  148. data/lib/freeclimb/models/dequeue.rb +21 -8
  149. data/lib/freeclimb/models/enqueue.rb +21 -8
  150. data/lib/freeclimb/models/enqueue_all_of.rb +20 -8
  151. data/lib/freeclimb/models/filter_logs_request.rb +20 -8
  152. data/lib/freeclimb/models/get_digits.rb +21 -8
  153. data/lib/freeclimb/models/get_digits_all_of.rb +20 -8
  154. data/lib/freeclimb/models/get_speech.rb +21 -8
  155. data/lib/freeclimb/models/get_speech_all_of.rb +20 -8
  156. data/lib/freeclimb/models/hangup.rb +21 -8
  157. data/lib/freeclimb/models/hangup_all_of.rb +20 -8
  158. data/lib/freeclimb/models/incoming_number_list.rb +28 -8
  159. data/lib/freeclimb/models/incoming_number_list_all_of.rb +21 -8
  160. data/lib/freeclimb/models/incoming_number_request.rb +20 -8
  161. data/lib/freeclimb/models/incoming_number_result.rb +50 -9
  162. data/lib/freeclimb/models/incoming_number_result_all_of.rb +50 -9
  163. data/lib/freeclimb/models/log_list.rb +28 -8
  164. data/lib/freeclimb/models/log_list_all_of.rb +21 -8
  165. data/lib/freeclimb/models/log_result.rb +27 -8
  166. data/lib/freeclimb/models/make_call_request.rb +22 -8
  167. data/lib/freeclimb/models/message_request.rb +20 -8
  168. data/lib/freeclimb/models/message_request_all_of.rb +20 -8
  169. data/lib/freeclimb/models/message_result.rb +28 -8
  170. data/lib/freeclimb/models/message_result_all_of.rb +28 -8
  171. data/lib/freeclimb/models/messages_list.rb +28 -8
  172. data/lib/freeclimb/models/messages_list_all_of.rb +21 -8
  173. data/lib/freeclimb/models/mutable_resource_model.rb +20 -8
  174. data/lib/freeclimb/models/out_dial.rb +21 -8
  175. data/lib/freeclimb/models/out_dial_all_of.rb +20 -8
  176. data/lib/freeclimb/models/pagination_model.rb +27 -8
  177. data/lib/freeclimb/models/park.rb +263 -0
  178. data/lib/freeclimb/models/park_all_of.rb +249 -0
  179. data/lib/freeclimb/models/pause.rb +21 -8
  180. data/lib/freeclimb/models/pause_all_of.rb +20 -8
  181. data/lib/freeclimb/models/percl_command.rb +38 -8
  182. data/lib/freeclimb/models/percl_script.rb +24 -8
  183. data/lib/freeclimb/models/play.rb +21 -8
  184. data/lib/freeclimb/models/play_all_of.rb +20 -8
  185. data/lib/freeclimb/models/play_early_media.rb +21 -8
  186. data/lib/freeclimb/models/play_early_media_all_of.rb +20 -8
  187. data/lib/freeclimb/models/queue_list.rb +28 -8
  188. data/lib/freeclimb/models/queue_list_all_of.rb +21 -8
  189. data/lib/freeclimb/models/queue_member.rb +25 -8
  190. data/lib/freeclimb/models/queue_member_list.rb +28 -8
  191. data/lib/freeclimb/models/queue_member_list_all_of.rb +21 -8
  192. data/lib/freeclimb/models/queue_request.rb +22 -8
  193. data/lib/freeclimb/models/queue_result.rb +27 -8
  194. data/lib/freeclimb/models/queue_result_all_of.rb +27 -8
  195. data/lib/freeclimb/models/record_utterance.rb +21 -8
  196. data/lib/freeclimb/models/record_utterance_all_of.rb +20 -8
  197. data/lib/freeclimb/models/recording_list.rb +28 -8
  198. data/lib/freeclimb/models/recording_list_all_of.rb +21 -8
  199. data/lib/freeclimb/models/recording_result.rb +25 -8
  200. data/lib/freeclimb/models/recording_result_all_of.rb +25 -8
  201. data/lib/freeclimb/models/redirect.rb +21 -8
  202. data/lib/freeclimb/models/redirect_all_of.rb +20 -8
  203. data/lib/freeclimb/models/reject.rb +21 -8
  204. data/lib/freeclimb/models/reject_all_of.rb +20 -8
  205. data/lib/freeclimb/models/remove_from_conference.rb +21 -8
  206. data/lib/freeclimb/models/remove_from_conference_all_of.rb +20 -8
  207. data/lib/freeclimb/models/say.rb +23 -8
  208. data/lib/freeclimb/models/say_all_of.rb +22 -8
  209. data/lib/freeclimb/models/send_digits.rb +21 -8
  210. data/lib/freeclimb/models/send_digits_all_of.rb +20 -8
  211. data/lib/freeclimb/models/set_listen.rb +21 -8
  212. data/lib/freeclimb/models/set_listen_all_of.rb +20 -8
  213. data/lib/freeclimb/models/set_talk.rb +21 -8
  214. data/lib/freeclimb/models/set_talk_all_of.rb +20 -8
  215. data/lib/freeclimb/models/sms.rb +21 -8
  216. data/lib/freeclimb/models/sms_all_of.rb +20 -8
  217. data/lib/freeclimb/models/start_record_call.rb +21 -8
  218. data/lib/freeclimb/models/terminate_conference.rb +21 -8
  219. data/lib/freeclimb/models/terminate_conference_all_of.rb +20 -8
  220. data/lib/freeclimb/models/unpark.rb +222 -0
  221. data/lib/freeclimb/models/update_call_request.rb +20 -8
  222. data/lib/freeclimb/models/update_conference_participant_request.rb +20 -8
  223. data/lib/freeclimb/models/update_conference_request.rb +20 -8
  224. data/lib/freeclimb/version.rb +3 -3
  225. data/lib/freeclimb.rb +28 -52
  226. data/spec/api/default_api_spec.rb +1004 -21
  227. data/spec/api_client_spec.rb +5 -5
  228. data/spec/configuration_spec.rb +10 -10
  229. data/spec/factories.rb +80 -0
  230. data/spec/models/account_request_spec.rb +5 -12
  231. data/spec/models/account_result_spec.rb +10 -13
  232. data/spec/models/add_to_conference_spec.rb +5 -12
  233. data/spec/models/application_list_spec.rb +5 -12
  234. data/spec/models/application_request_spec.rb +5 -12
  235. data/spec/models/application_result_spec.rb +5 -12
  236. data/spec/models/available_number_list_spec.rb +5 -12
  237. data/spec/models/available_number_spec.rb +11 -12
  238. data/spec/models/buy_incoming_number_request_spec.rb +5 -12
  239. data/spec/models/call_list_spec.rb +5 -12
  240. data/spec/models/call_result_spec.rb +6 -13
  241. data/spec/models/{say_all_of_spec.rb → capabilities_spec.rb} +13 -20
  242. data/spec/models/conference_list_spec.rb +5 -12
  243. data/spec/models/conference_participant_list_spec.rb +5 -12
  244. data/spec/models/conference_participant_result_spec.rb +5 -12
  245. data/spec/models/conference_result_spec.rb +7 -14
  246. data/spec/models/create_conference_request_spec.rb +6 -13
  247. data/spec/models/create_conference_spec.rb +5 -12
  248. data/spec/models/dequeue_spec.rb +5 -12
  249. data/spec/models/enqueue_spec.rb +5 -12
  250. data/spec/models/filter_logs_request_spec.rb +5 -12
  251. data/spec/models/get_digits_spec.rb +5 -12
  252. data/spec/models/get_speech_spec.rb +5 -12
  253. data/spec/models/hangup_spec.rb +5 -12
  254. data/spec/models/incoming_number_list_spec.rb +5 -12
  255. data/spec/models/incoming_number_request_spec.rb +5 -12
  256. data/spec/models/incoming_number_result_spec.rb +11 -12
  257. data/spec/models/log_list_spec.rb +5 -12
  258. data/spec/models/log_result_spec.rb +6 -13
  259. data/spec/models/make_call_request_spec.rb +5 -12
  260. data/spec/models/message_request_spec.rb +5 -12
  261. data/spec/models/message_result_spec.rb +6 -13
  262. data/spec/models/messages_list_spec.rb +5 -12
  263. data/spec/models/mutable_resource_model_spec.rb +5 -12
  264. data/spec/models/out_dial_spec.rb +5 -12
  265. data/spec/models/pagination_model_spec.rb +5 -12
  266. data/spec/models/{enqueue_all_of_spec.rb → park_spec.rb} +11 -24
  267. data/spec/models/pause_spec.rb +5 -12
  268. data/spec/models/percl_command_spec.rb +5 -12
  269. data/spec/models/percl_script_spec.rb +5 -12
  270. data/spec/models/play_early_media_spec.rb +5 -12
  271. data/spec/models/play_spec.rb +5 -12
  272. data/spec/models/queue_list_spec.rb +5 -12
  273. data/spec/models/queue_member_list_spec.rb +5 -12
  274. data/spec/models/queue_member_spec.rb +5 -12
  275. data/spec/models/queue_request_spec.rb +5 -12
  276. data/spec/models/queue_result_spec.rb +5 -12
  277. data/spec/models/record_utterance_spec.rb +5 -12
  278. data/spec/models/recording_list_spec.rb +5 -12
  279. data/spec/models/recording_result_spec.rb +5 -12
  280. data/spec/models/redirect_spec.rb +5 -12
  281. data/spec/models/reject_spec.rb +5 -12
  282. data/spec/models/remove_from_conference_spec.rb +5 -12
  283. data/spec/models/say_spec.rb +5 -12
  284. data/spec/models/send_digits_spec.rb +5 -12
  285. data/spec/models/set_listen_spec.rb +5 -12
  286. data/spec/models/set_talk_spec.rb +5 -12
  287. data/spec/models/sms_spec.rb +5 -12
  288. data/spec/models/start_record_call_spec.rb +5 -12
  289. data/spec/models/terminate_conference_spec.rb +5 -12
  290. data/spec/models/{pause_all_of_spec.rb → unpark_spec.rb} +8 -21
  291. data/spec/models/update_call_request_spec.rb +6 -13
  292. data/spec/models/update_conference_participant_request_spec.rb +5 -12
  293. data/spec/models/update_conference_request_spec.rb +6 -13
  294. data/spec/quickstart_spec.rb +10 -0
  295. data/spec/spec_helper.rb +61 -2
  296. metadata +75 -162
  297. data/lib/freeclimb/utils.rb +0 -34
  298. data/spec/api/web_mocks.rb +0 -473
  299. data/spec/models/account_result_all_of_spec.rb +0 -81
  300. data/spec/models/add_to_conference_all_of_spec.rb +0 -95
  301. data/spec/models/application_list_all_of_spec.rb +0 -41
  302. data/spec/models/application_result_all_of_spec.rb +0 -89
  303. data/spec/models/available_number_list_all_of_spec.rb +0 -41
  304. data/spec/models/call_list_all_of_spec.rb +0 -41
  305. data/spec/models/call_result_all_of_spec.rb +0 -129
  306. data/spec/models/conference_list_all_of_spec.rb +0 -41
  307. data/spec/models/conference_participant_list_all_of_spec.rb +0 -41
  308. data/spec/models/conference_participant_result_all_of_spec.rb +0 -71
  309. data/spec/models/conference_result_all_of_spec.rb +0 -103
  310. data/spec/models/create_conference_all_of_spec.rb +0 -71
  311. data/spec/models/get_digits_all_of_spec.rb +0 -89
  312. data/spec/models/get_speech_all_of_spec.rb +0 -113
  313. data/spec/models/hangup_all_of_spec.rb +0 -41
  314. data/spec/models/incoming_number_list_all_of_spec.rb +0 -41
  315. data/spec/models/incoming_number_result_all_of_spec.rb +0 -89
  316. data/spec/models/log_list_all_of_spec.rb +0 -41
  317. data/spec/models/message_request_all_of_spec.rb +0 -65
  318. data/spec/models/message_result_all_of_spec.rb +0 -87
  319. data/spec/models/messages_list_all_of_spec.rb +0 -41
  320. data/spec/models/out_dial_all_of_spec.rb +0 -95
  321. data/spec/models/play_all_of_spec.rb +0 -59
  322. data/spec/models/play_early_media_all_of_spec.rb +0 -41
  323. data/spec/models/queue_list_all_of_spec.rb +0 -41
  324. data/spec/models/queue_member_list_all_of_spec.rb +0 -41
  325. data/spec/models/queue_result_all_of_spec.rb +0 -77
  326. data/spec/models/record_utterance_all_of_spec.rb +0 -77
  327. data/spec/models/recording_list_all_of_spec.rb +0 -41
  328. data/spec/models/recording_result_all_of_spec.rb +0 -65
  329. data/spec/models/redirect_all_of_spec.rb +0 -41
  330. data/spec/models/reject_all_of_spec.rb +0 -41
  331. data/spec/models/remove_from_conference_all_of_spec.rb +0 -41
  332. data/spec/models/send_digits_all_of_spec.rb +0 -53
  333. data/spec/models/set_listen_all_of_spec.rb +0 -47
  334. data/spec/models/set_talk_all_of_spec.rb +0 -47
  335. data/spec/models/sms_all_of_spec.rb +0 -59
  336. data/spec/models/terminate_conference_all_of_spec.rb +0 -41
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
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: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class CallResult
@@ -118,6 +119,11 @@ module Freeclimb
118
119
  }
119
120
  end
120
121
 
122
+ # Returns all the JSON keys this model knows about
123
+ def self.acceptable_attributes
124
+ attribute_map.values
125
+ end
126
+
121
127
  # Attribute type mapping.
122
128
  def self.openapi_types
123
129
  {
@@ -146,6 +152,21 @@ module Freeclimb
146
152
  # List of attributes with nullable: true
147
153
  def self.openapi_nullable
148
154
  Set.new([
155
+ :'call_id',
156
+ :'parent_call_id',
157
+ :'account_id',
158
+ :'from',
159
+ :'to',
160
+ :'phone_number_id',
161
+ :'status',
162
+ :'start_time',
163
+ :'connect_time',
164
+ :'end_time',
165
+ :'duration',
166
+ :'connect_duration',
167
+ :'direction',
168
+ :'answered_by',
169
+ :'subresource_uris'
149
170
  ])
150
171
  end
151
172
 
@@ -325,7 +346,9 @@ module Freeclimb
325
346
  def build_from_hash(attributes)
326
347
  return nil unless attributes.is_a?(Hash)
327
348
  self.class.openapi_types.each_pair do |key, type|
328
- if type =~ /\AArray<(.*)>/i
349
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
350
+ self.send("#{key}=", nil)
351
+ elsif type =~ /\AArray<(.*)>/i
329
352
  # check to ensure the input is an array given that the attribute
330
353
  # is documented as an array but the input is not
331
354
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -333,7 +356,7 @@ module Freeclimb
333
356
  end
334
357
  elsif !attributes[self.class.attribute_map[key]].nil?
335
358
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
336
- end # or else data not found in attributes(hash), not an issue as the data can be optional
359
+ end
337
360
  end
338
361
 
339
362
  self
@@ -345,8 +368,8 @@ module Freeclimb
345
368
  # @return [Object] Deserialized data
346
369
  def _deserialize(type, value)
347
370
  case type.to_sym
348
- when :DateTime
349
- DateTime.parse(value)
371
+ when :Time
372
+ Time.parse(value)
350
373
  when :Date
351
374
  Date.parse(value)
352
375
  when :String
@@ -376,7 +399,9 @@ module Freeclimb
376
399
  end
377
400
  end
378
401
  else # model
379
- Freeclimb.const_get(type).build_from_hash(value)
402
+ # models (e.g. Pet) or oneOf
403
+ klass = Freeclimb.const_get(type)
404
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
380
405
  end
381
406
  end
382
407
 
@@ -402,7 +427,7 @@ module Freeclimb
402
427
  is_nullable = self.class.openapi_nullable.include?(attr)
403
428
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
404
429
  end
405
-
430
+
406
431
  hash[param] = _to_hash(value)
407
432
  end
408
433
  hash
@@ -425,5 +450,7 @@ module Freeclimb
425
450
  value
426
451
  end
427
452
  end
453
+
428
454
  end
455
+
429
456
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
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: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class CallResultAllOf
@@ -102,6 +103,11 @@ module Freeclimb
102
103
  }
103
104
  end
104
105
 
106
+ # Returns all the JSON keys this model knows about
107
+ def self.acceptable_attributes
108
+ attribute_map.values
109
+ end
110
+
105
111
  # Attribute type mapping.
106
112
  def self.openapi_types
107
113
  {
@@ -126,6 +132,21 @@ module Freeclimb
126
132
  # List of attributes with nullable: true
127
133
  def self.openapi_nullable
128
134
  Set.new([
135
+ :'call_id',
136
+ :'parent_call_id',
137
+ :'account_id',
138
+ :'from',
139
+ :'to',
140
+ :'phone_number_id',
141
+ :'status',
142
+ :'start_time',
143
+ :'connect_time',
144
+ :'end_time',
145
+ :'duration',
146
+ :'connect_duration',
147
+ :'direction',
148
+ :'answered_by',
149
+ :'subresource_uris'
129
150
  ])
130
151
  end
131
152
 
@@ -277,7 +298,9 @@ module Freeclimb
277
298
  def build_from_hash(attributes)
278
299
  return nil unless attributes.is_a?(Hash)
279
300
  self.class.openapi_types.each_pair do |key, type|
280
- if type =~ /\AArray<(.*)>/i
301
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
302
+ self.send("#{key}=", nil)
303
+ elsif type =~ /\AArray<(.*)>/i
281
304
  # check to ensure the input is an array given that the attribute
282
305
  # is documented as an array but the input is not
283
306
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -285,7 +308,7 @@ module Freeclimb
285
308
  end
286
309
  elsif !attributes[self.class.attribute_map[key]].nil?
287
310
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
288
- end # or else data not found in attributes(hash), not an issue as the data can be optional
311
+ end
289
312
  end
290
313
 
291
314
  self
@@ -297,8 +320,8 @@ module Freeclimb
297
320
  # @return [Object] Deserialized data
298
321
  def _deserialize(type, value)
299
322
  case type.to_sym
300
- when :DateTime
301
- DateTime.parse(value)
323
+ when :Time
324
+ Time.parse(value)
302
325
  when :Date
303
326
  Date.parse(value)
304
327
  when :String
@@ -328,7 +351,9 @@ module Freeclimb
328
351
  end
329
352
  end
330
353
  else # model
331
- Freeclimb.const_get(type).build_from_hash(value)
354
+ # models (e.g. Pet) or oneOf
355
+ klass = Freeclimb.const_get(type)
356
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
332
357
  end
333
358
  end
334
359
 
@@ -354,7 +379,7 @@ module Freeclimb
354
379
  is_nullable = self.class.openapi_nullable.include?(attr)
355
380
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
356
381
  end
357
-
382
+
358
383
  hash[param] = _to_hash(value)
359
384
  end
360
385
  hash
@@ -377,5 +402,7 @@ module Freeclimb
377
402
  value
378
403
  end
379
404
  end
405
+
380
406
  end
407
+
381
408
  end
@@ -0,0 +1,265 @@
1
+ =begin
2
+ #FreeClimb API
3
+
4
+ #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@freeclimb.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.4.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Freeclimb
17
+ # Details for which features this number may be used.
18
+ class Capabilities
19
+ # Indicates whether a number can be used for voice calls. Replaces voiceEnabled.
20
+ attr_accessor :voice
21
+
22
+ # Indicates whether a number can be used SMS messaging. Replaces smsEnabled.
23
+ attr_accessor :sms
24
+
25
+ # Indicates that a number is toll-free and will make toll-free calls, and when enabled, toll-free messages.
26
+ attr_accessor :toll_free
27
+
28
+ # Indicates that a number, if sms is true, will be used for 10DLC messaging
29
+ attr_accessor :ten_dlc
30
+
31
+ # Indicates that a number is a short code and can be used for short code messaging
32
+ attr_accessor :short_code
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ def self.attribute_map
36
+ {
37
+ :'voice' => :'voice',
38
+ :'sms' => :'sms',
39
+ :'toll_free' => :'tollFree',
40
+ :'ten_dlc' => :'tenDLC',
41
+ :'short_code' => :'shortCode'
42
+ }
43
+ end
44
+
45
+ # Returns all the JSON keys this model knows about
46
+ def self.acceptable_attributes
47
+ attribute_map.values
48
+ end
49
+
50
+ # Attribute type mapping.
51
+ def self.openapi_types
52
+ {
53
+ :'voice' => :'Boolean',
54
+ :'sms' => :'Boolean',
55
+ :'toll_free' => :'Boolean',
56
+ :'ten_dlc' => :'Boolean',
57
+ :'short_code' => :'Boolean'
58
+ }
59
+ end
60
+
61
+ # List of attributes with nullable: true
62
+ def self.openapi_nullable
63
+ Set.new([
64
+ :'voice',
65
+ :'sms',
66
+ :'toll_free',
67
+ :'ten_dlc',
68
+ :'short_code'
69
+ ])
70
+ end
71
+
72
+ # Initializes the object
73
+ # @param [Hash] attributes Model attributes in the form of hash
74
+ def initialize(attributes = {})
75
+ if (!attributes.is_a?(Hash))
76
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Freeclimb::Capabilities` initialize method"
77
+ end
78
+
79
+ # check to see if the attribute exists and convert string to symbol for hash key
80
+ attributes = attributes.each_with_object({}) { |(k, v), h|
81
+ if (!self.class.attribute_map.key?(k.to_sym))
82
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Freeclimb::Capabilities`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
83
+ end
84
+ h[k.to_sym] = v
85
+ }
86
+
87
+ if attributes.key?(:'voice')
88
+ self.voice = attributes[:'voice']
89
+ end
90
+
91
+ if attributes.key?(:'sms')
92
+ self.sms = attributes[:'sms']
93
+ end
94
+
95
+ if attributes.key?(:'toll_free')
96
+ self.toll_free = attributes[:'toll_free']
97
+ end
98
+
99
+ if attributes.key?(:'ten_dlc')
100
+ self.ten_dlc = attributes[:'ten_dlc']
101
+ end
102
+
103
+ if attributes.key?(:'short_code')
104
+ self.short_code = attributes[:'short_code']
105
+ end
106
+ end
107
+
108
+ # Show invalid properties with the reasons. Usually used together with valid?
109
+ # @return Array for valid properties with the reasons
110
+ def list_invalid_properties
111
+ invalid_properties = Array.new
112
+ invalid_properties
113
+ end
114
+
115
+ # Check to see if the all the properties in the model are valid
116
+ # @return true if the model is valid
117
+ def valid?
118
+ true
119
+ end
120
+
121
+ # Checks equality by comparing each attribute.
122
+ # @param [Object] Object to be compared
123
+ def ==(o)
124
+ return true if self.equal?(o)
125
+ self.class == o.class &&
126
+ voice == o.voice &&
127
+ sms == o.sms &&
128
+ toll_free == o.toll_free &&
129
+ ten_dlc == o.ten_dlc &&
130
+ short_code == o.short_code
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] Object to be compared
135
+ def eql?(o)
136
+ self == o
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Integer] Hash code
141
+ def hash
142
+ [voice, sms, toll_free, ten_dlc, short_code].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def self.build_from_hash(attributes)
149
+ new.build_from_hash(attributes)
150
+ end
151
+
152
+ # Builds the object from hash
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ # @return [Object] Returns the model itself
155
+ def build_from_hash(attributes)
156
+ return nil unless attributes.is_a?(Hash)
157
+ self.class.openapi_types.each_pair do |key, type|
158
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
159
+ self.send("#{key}=", nil)
160
+ elsif type =~ /\AArray<(.*)>/i
161
+ # check to ensure the input is an array given that the attribute
162
+ # is documented as an array but the input is not
163
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
164
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
165
+ end
166
+ elsif !attributes[self.class.attribute_map[key]].nil?
167
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
168
+ end
169
+ end
170
+
171
+ self
172
+ end
173
+
174
+ # Deserializes the data based on type
175
+ # @param string type Data type
176
+ # @param string value Value to be deserialized
177
+ # @return [Object] Deserialized data
178
+ def _deserialize(type, value)
179
+ case type.to_sym
180
+ when :Time
181
+ Time.parse(value)
182
+ when :Date
183
+ Date.parse(value)
184
+ when :String
185
+ value.to_s
186
+ when :Integer
187
+ value.to_i
188
+ when :Float
189
+ value.to_f
190
+ when :Boolean
191
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
192
+ true
193
+ else
194
+ false
195
+ end
196
+ when :Object
197
+ # generic object (usually a Hash), return directly
198
+ value
199
+ when /\AArray<(?<inner_type>.+)>\z/
200
+ inner_type = Regexp.last_match[:inner_type]
201
+ value.map { |v| _deserialize(inner_type, v) }
202
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
203
+ k_type = Regexp.last_match[:k_type]
204
+ v_type = Regexp.last_match[:v_type]
205
+ {}.tap do |hash|
206
+ value.each do |k, v|
207
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
208
+ end
209
+ end
210
+ else # model
211
+ # models (e.g. Pet) or oneOf
212
+ klass = Freeclimb.const_get(type)
213
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
214
+ end
215
+ end
216
+
217
+ # Returns the string representation of the object
218
+ # @return [String] String presentation of the object
219
+ def to_s
220
+ to_hash.to_s
221
+ end
222
+
223
+ # to_body is an alias to to_hash (backward compatibility)
224
+ # @return [Hash] Returns the object in the form of hash
225
+ def to_body
226
+ to_hash
227
+ end
228
+
229
+ # Returns the object in the form of hash
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_hash
232
+ hash = {}
233
+ self.class.attribute_map.each_pair do |attr, param|
234
+ value = self.send(attr)
235
+ if value.nil?
236
+ is_nullable = self.class.openapi_nullable.include?(attr)
237
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
238
+ end
239
+
240
+ hash[param] = _to_hash(value)
241
+ end
242
+ hash
243
+ end
244
+
245
+ # Outputs non-array value in the form of hash
246
+ # For object, use to_hash. Otherwise, just return the value
247
+ # @param [Object] value Any valid value
248
+ # @return [Hash] Returns the value in the form of hash
249
+ def _to_hash(value)
250
+ if value.is_a?(Array)
251
+ value.compact.map { |v| _to_hash(v) }
252
+ elsif value.is_a?(Hash)
253
+ {}.tap do |hash|
254
+ value.each { |k, v| hash[k] = _to_hash(v) }
255
+ end
256
+ elsif value.respond_to? :to_hash
257
+ value.to_hash
258
+ else
259
+ value
260
+ end
261
+ end
262
+
263
+ end
264
+
265
+ end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
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: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceList
@@ -51,6 +52,11 @@ module Freeclimb
51
52
  }
52
53
  end
53
54
 
55
+ # Returns all the JSON keys this model knows about
56
+ def self.acceptable_attributes
57
+ attribute_map.values
58
+ end
59
+
54
60
  # Attribute type mapping.
55
61
  def self.openapi_types
56
62
  {
@@ -68,6 +74,14 @@ module Freeclimb
68
74
  # List of attributes with nullable: true
69
75
  def self.openapi_nullable
70
76
  Set.new([
77
+ :'total',
78
+ :'start',
79
+ :'_end',
80
+ :'page',
81
+ :'num_pages',
82
+ :'page_size',
83
+ :'next_page_uri',
84
+ :'conferences'
71
85
  ])
72
86
  end
73
87
 
@@ -182,7 +196,9 @@ module Freeclimb
182
196
  def build_from_hash(attributes)
183
197
  return nil unless attributes.is_a?(Hash)
184
198
  self.class.openapi_types.each_pair do |key, type|
185
- if type =~ /\AArray<(.*)>/i
199
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
200
+ self.send("#{key}=", nil)
201
+ elsif type =~ /\AArray<(.*)>/i
186
202
  # check to ensure the input is an array given that the attribute
187
203
  # is documented as an array but the input is not
188
204
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -190,7 +206,7 @@ module Freeclimb
190
206
  end
191
207
  elsif !attributes[self.class.attribute_map[key]].nil?
192
208
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
193
- end # or else data not found in attributes(hash), not an issue as the data can be optional
209
+ end
194
210
  end
195
211
 
196
212
  self
@@ -202,8 +218,8 @@ module Freeclimb
202
218
  # @return [Object] Deserialized data
203
219
  def _deserialize(type, value)
204
220
  case type.to_sym
205
- when :DateTime
206
- DateTime.parse(value)
221
+ when :Time
222
+ Time.parse(value)
207
223
  when :Date
208
224
  Date.parse(value)
209
225
  when :String
@@ -233,7 +249,9 @@ module Freeclimb
233
249
  end
234
250
  end
235
251
  else # model
236
- Freeclimb.const_get(type).build_from_hash(value)
252
+ # models (e.g. Pet) or oneOf
253
+ klass = Freeclimb.const_get(type)
254
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
237
255
  end
238
256
  end
239
257
 
@@ -259,7 +277,7 @@ module Freeclimb
259
277
  is_nullable = self.class.openapi_nullable.include?(attr)
260
278
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
261
279
  end
262
-
280
+
263
281
  hash[param] = _to_hash(value)
264
282
  end
265
283
  hash
@@ -282,5 +300,7 @@ module Freeclimb
282
300
  value
283
301
  end
284
302
  end
303
+
285
304
  end
305
+
286
306
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
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: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceListAllOf
@@ -23,6 +24,11 @@ module Freeclimb
23
24
  }
24
25
  end
25
26
 
27
+ # Returns all the JSON keys this model knows about
28
+ def self.acceptable_attributes
29
+ attribute_map.values
30
+ end
31
+
26
32
  # Attribute type mapping.
27
33
  def self.openapi_types
28
34
  {
@@ -33,6 +39,7 @@ module Freeclimb
33
39
  # List of attributes with nullable: true
34
40
  def self.openapi_nullable
35
41
  Set.new([
42
+ :'conferences'
36
43
  ])
37
44
  end
38
45
 
@@ -104,7 +111,9 @@ module Freeclimb
104
111
  def build_from_hash(attributes)
105
112
  return nil unless attributes.is_a?(Hash)
106
113
  self.class.openapi_types.each_pair do |key, type|
107
- if type =~ /\AArray<(.*)>/i
114
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
115
+ self.send("#{key}=", nil)
116
+ elsif type =~ /\AArray<(.*)>/i
108
117
  # check to ensure the input is an array given that the attribute
109
118
  # is documented as an array but the input is not
110
119
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -112,7 +121,7 @@ module Freeclimb
112
121
  end
113
122
  elsif !attributes[self.class.attribute_map[key]].nil?
114
123
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
115
- end # or else data not found in attributes(hash), not an issue as the data can be optional
124
+ end
116
125
  end
117
126
 
118
127
  self
@@ -124,8 +133,8 @@ module Freeclimb
124
133
  # @return [Object] Deserialized data
125
134
  def _deserialize(type, value)
126
135
  case type.to_sym
127
- when :DateTime
128
- DateTime.parse(value)
136
+ when :Time
137
+ Time.parse(value)
129
138
  when :Date
130
139
  Date.parse(value)
131
140
  when :String
@@ -155,7 +164,9 @@ module Freeclimb
155
164
  end
156
165
  end
157
166
  else # model
158
- Freeclimb.const_get(type).build_from_hash(value)
167
+ # models (e.g. Pet) or oneOf
168
+ klass = Freeclimb.const_get(type)
169
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
159
170
  end
160
171
  end
161
172
 
@@ -181,7 +192,7 @@ module Freeclimb
181
192
  is_nullable = self.class.openapi_nullable.include?(attr)
182
193
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
183
194
  end
184
-
195
+
185
196
  hash[param] = _to_hash(value)
186
197
  end
187
198
  hash
@@ -204,5 +215,7 @@ module Freeclimb
204
215
  value
205
216
  end
206
217
  end
218
+
207
219
  end
220
+
208
221
  end