freeclimb 5.1.0 → 5.3.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/Gemfile +4 -5
- data/Gemfile.lock +20 -7
- data/README.md +17 -4
- data/Rakefile +1 -1
- data/docs/CallResult.md +2 -2
- data/docs/CreateConference.md +4 -2
- data/docs/CreateConferenceRequest.md +1 -1
- data/docs/DefaultApi.md +369 -2
- data/docs/ExportList.md +32 -0
- data/docs/ExportOutputType.md +16 -0
- data/docs/ExportRequest.md +24 -0
- data/docs/ExportRequestOutput.md +18 -0
- data/docs/ExportResourceType.md +17 -0
- data/docs/ExportResult.md +40 -0
- data/docs/ExportResultOutput.md +18 -0
- data/docs/ExportStatus.md +21 -0
- data/freeclimb.gemspec +21 -26
- data/lib/freeclimb/api/default_api.rb +1191 -878
- data/lib/freeclimb/api_client.rb +78 -83
- data/lib/freeclimb/api_error.rb +17 -19
- data/lib/freeclimb/configuration.rb +27 -29
- data/lib/freeclimb/models/account_request.rb +36 -41
- data/lib/freeclimb/models/account_result.rb +88 -92
- data/lib/freeclimb/models/account_status.rb +12 -14
- data/lib/freeclimb/models/account_type.rb +12 -14
- data/lib/freeclimb/models/add_to_conference.rb +81 -85
- data/lib/freeclimb/models/add_to_conference_notification_webhook.rb +99 -103
- data/lib/freeclimb/models/add_to_queue_notification_webhook.rb +78 -82
- data/lib/freeclimb/models/answered_by.rb +12 -14
- data/lib/freeclimb/models/application_list.rb +74 -78
- data/lib/freeclimb/models/application_request.rb +66 -70
- data/lib/freeclimb/models/application_result.rb +100 -104
- data/lib/freeclimb/models/available_number.rb +66 -70
- data/lib/freeclimb/models/available_number_list.rb +74 -78
- data/lib/freeclimb/models/barge_in_reason.rb +12 -14
- data/lib/freeclimb/models/buy_incoming_number_request.rb +41 -45
- data/lib/freeclimb/models/call_control_webhook.rb +56 -61
- data/lib/freeclimb/models/call_direction.rb +12 -14
- data/lib/freeclimb/models/call_ended_reason.rb +12 -14
- data/lib/freeclimb/models/call_list.rb +74 -78
- data/lib/freeclimb/models/call_result.rb +144 -148
- data/lib/freeclimb/models/call_status.rb +12 -14
- data/lib/freeclimb/models/call_status_webhook.rb +84 -88
- data/lib/freeclimb/models/capabilities.rb +55 -59
- data/lib/freeclimb/models/completion_request.rb +32 -36
- data/lib/freeclimb/models/completion_result.rb +36 -40
- data/lib/freeclimb/models/completion_result_status.rb +12 -14
- data/lib/freeclimb/models/conference_list.rb +74 -78
- data/lib/freeclimb/models/conference_participant_list.rb +74 -78
- data/lib/freeclimb/models/conference_participant_result.rb +88 -92
- data/lib/freeclimb/models/conference_recording_status_webhook.rb +99 -103
- data/lib/freeclimb/models/conference_result.rb +106 -110
- data/lib/freeclimb/models/conference_status.rb +12 -14
- data/lib/freeclimb/models/conference_status_webhook.rb +102 -106
- data/lib/freeclimb/models/create_conference.rb +71 -64
- data/lib/freeclimb/models/create_conference_request.rb +55 -54
- data/lib/freeclimb/models/create_conference_webhook.rb +102 -106
- data/lib/freeclimb/models/create_web_rtc_token.rb +42 -46
- data/lib/freeclimb/models/dequeue.rb +28 -33
- data/lib/freeclimb/models/dequeue_webhook.rb +89 -93
- data/lib/freeclimb/models/enqueue.rb +48 -52
- data/lib/freeclimb/models/export_list.rb +304 -0
- data/lib/freeclimb/models/export_output_type.rb +34 -0
- data/lib/freeclimb/models/export_request.rb +276 -0
- data/lib/freeclimb/models/export_request_output.rb +243 -0
- data/lib/freeclimb/models/export_resource_type.rb +35 -0
- data/lib/freeclimb/models/export_result.rb +405 -0
- data/lib/freeclimb/models/export_result_output.rb +243 -0
- data/lib/freeclimb/models/export_status.rb +39 -0
- data/lib/freeclimb/models/filter_logs_request.rb +31 -35
- data/lib/freeclimb/models/get_digits.rb +73 -77
- data/lib/freeclimb/models/get_digits_reason.rb +12 -14
- data/lib/freeclimb/models/get_digits_webhook.rb +93 -97
- data/lib/freeclimb/models/get_speech.rb +94 -97
- data/lib/freeclimb/models/get_speech_reason.rb +12 -14
- data/lib/freeclimb/models/get_speech_webhook.rb +118 -122
- data/lib/freeclimb/models/grammar_file_built_in.rb +12 -14
- data/lib/freeclimb/models/grammar_type.rb +12 -14
- data/lib/freeclimb/models/hangup.rb +34 -39
- data/lib/freeclimb/models/if_machine.rb +12 -14
- data/lib/freeclimb/models/inbound_call_webhook.rb +85 -89
- data/lib/freeclimb/models/incoming_number_list.rb +74 -78
- data/lib/freeclimb/models/incoming_number_request.rb +41 -45
- data/lib/freeclimb/models/incoming_number_result.rb +122 -126
- data/lib/freeclimb/models/language.rb +12 -14
- data/lib/freeclimb/models/leave_conference_webhook.rb +79 -83
- data/lib/freeclimb/models/log_level.rb +12 -14
- data/lib/freeclimb/models/log_list.rb +74 -78
- data/lib/freeclimb/models/log_result.rb +67 -71
- data/lib/freeclimb/models/machine_detected_webhook.rb +89 -93
- data/lib/freeclimb/models/machine_type.rb +12 -14
- data/lib/freeclimb/models/make_call_request.rb +77 -81
- data/lib/freeclimb/models/message_delivery_webhook.rb +81 -86
- data/lib/freeclimb/models/message_direction.rb +12 -14
- data/lib/freeclimb/models/message_request.rb +72 -75
- data/lib/freeclimb/models/message_result.rb +135 -139
- data/lib/freeclimb/models/message_status.rb +12 -14
- data/lib/freeclimb/models/message_status_webhook.rb +86 -90
- data/lib/freeclimb/models/messages_list.rb +74 -78
- data/lib/freeclimb/models/mutable_resource_model.rb +46 -51
- data/lib/freeclimb/models/out_dial.rb +80 -84
- data/lib/freeclimb/models/out_dial_api_connect_webhook.rb +84 -88
- data/lib/freeclimb/models/out_dial_connect_webhook.rb +84 -88
- data/lib/freeclimb/models/out_dial_start_webhook.rb +90 -94
- data/lib/freeclimb/models/pagination_model.rb +67 -71
- data/lib/freeclimb/models/park.rb +44 -48
- data/lib/freeclimb/models/pause.rb +33 -37
- data/lib/freeclimb/models/percl_command.rb +36 -40
- data/lib/freeclimb/models/percl_script.rb +32 -36
- data/lib/freeclimb/models/play.rb +44 -48
- data/lib/freeclimb/models/play_beep.rb +12 -14
- data/lib/freeclimb/models/play_early_media.rb +33 -37
- data/lib/freeclimb/models/queue_list.rb +74 -78
- data/lib/freeclimb/models/queue_member.rb +55 -59
- data/lib/freeclimb/models/queue_member_list.rb +74 -78
- data/lib/freeclimb/models/queue_request.rb +37 -42
- data/lib/freeclimb/models/queue_result.rb +88 -92
- data/lib/freeclimb/models/queue_result_status.rb +12 -14
- data/lib/freeclimb/models/queue_wait_webhook.rb +94 -98
- data/lib/freeclimb/models/record_utterance.rb +63 -67
- data/lib/freeclimb/models/record_utterance_term_reason.rb +12 -14
- data/lib/freeclimb/models/record_webhook.rb +119 -123
- data/lib/freeclimb/models/recording_list.rb +74 -78
- data/lib/freeclimb/models/recording_result.rb +76 -80
- data/lib/freeclimb/models/redirect.rb +33 -37
- data/lib/freeclimb/models/redirect_webhook.rb +84 -88
- data/lib/freeclimb/models/reject.rb +34 -39
- data/lib/freeclimb/models/remove_from_conference.rb +28 -33
- data/lib/freeclimb/models/remove_from_queue_notification_webhook.rb +89 -93
- data/lib/freeclimb/models/request_type.rb +12 -14
- data/lib/freeclimb/models/say.rb +49 -53
- data/lib/freeclimb/models/send_digits.rb +43 -47
- data/lib/freeclimb/models/set_dtmf_pass_through.rb +34 -39
- data/lib/freeclimb/models/set_listen.rb +34 -39
- data/lib/freeclimb/models/set_talk.rb +34 -39
- data/lib/freeclimb/models/sms.rb +48 -52
- data/lib/freeclimb/models/sms_ten_dlc_brand.rb +187 -190
- data/lib/freeclimb/models/sms_ten_dlc_brand_alt_business_id_type.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_brand_entity_type.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_brand_identity_status.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_brand_relationship.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_brand_stock_exchange.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_brands_list_result.rb +74 -78
- data/lib/freeclimb/models/sms_ten_dlc_campaign.rb +226 -229
- data/lib/freeclimb/models/sms_ten_dlc_campaign_status.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_campaigns_list_result.rb +74 -78
- data/lib/freeclimb/models/sms_ten_dlc_partner_campaign.rb +186 -189
- data/lib/freeclimb/models/sms_ten_dlc_partner_campaign_brand.rb +84 -87
- data/lib/freeclimb/models/sms_ten_dlc_partner_campaign_status.rb +12 -14
- data/lib/freeclimb/models/sms_ten_dlc_partner_campaigns_list_result.rb +74 -78
- data/lib/freeclimb/models/sms_toll_free_campaign.rb +61 -64
- data/lib/freeclimb/models/sms_toll_free_campaign_registration_status.rb +12 -14
- data/lib/freeclimb/models/sms_toll_free_campaigns_list_result.rb +74 -78
- data/lib/freeclimb/models/start_record_call.rb +28 -33
- data/lib/freeclimb/models/terminate_conference.rb +28 -33
- data/lib/freeclimb/models/tfn.rb +31 -35
- data/lib/freeclimb/models/tfn_campaign.rb +76 -79
- data/lib/freeclimb/models/transcribe_reason.rb +12 -14
- data/lib/freeclimb/models/transcribe_term_reason.rb +12 -14
- data/lib/freeclimb/models/transcribe_utterance.rb +61 -65
- data/lib/freeclimb/models/transcribe_utterance_record.rb +43 -47
- data/lib/freeclimb/models/transcribe_webhook.rb +150 -154
- data/lib/freeclimb/models/unpark.rb +28 -33
- data/lib/freeclimb/models/update_call_request.rb +31 -35
- data/lib/freeclimb/models/update_call_request_status.rb +12 -14
- data/lib/freeclimb/models/update_conference_participant_request.rb +41 -46
- data/lib/freeclimb/models/update_conference_request.rb +41 -45
- data/lib/freeclimb/models/update_conference_request_status.rb +12 -14
- data/lib/freeclimb/models/webhook.rb +32 -37
- data/lib/freeclimb/utils/request_verifier.rb +14 -14
- data/lib/freeclimb/utils/signature_information.rb +8 -8
- data/lib/freeclimb/version.rb +10 -12
- data/lib/freeclimb.rb +164 -158
- data/openapi.json +373 -2
- data/package.json +1 -1
- data/spec/api/default_api_spec.rb +631 -676
- data/spec/api_client_spec.rb +100 -102
- data/spec/configuration_spec.rb +16 -18
- data/spec/models/account_request_spec.rb +104 -233
- data/spec/models/account_result_spec.rb +393 -1013
- data/spec/models/account_status_spec.rb +27 -30
- data/spec/models/account_type_spec.rb +24 -27
- data/spec/models/add_to_conference_notification_webhook_spec.rb +464 -1197
- data/spec/models/add_to_conference_spec.rb +354 -850
- data/spec/models/add_to_queue_notification_webhook_spec.rb +341 -864
- data/spec/models/answered_by_spec.rb +24 -27
- data/spec/models/application_list_spec.rb +289 -646
- data/spec/models/application_request_spec.rb +265 -679
- data/spec/models/application_result_spec.rb +444 -1184
- data/spec/models/available_number_list_spec.rb +289 -646
- data/spec/models/available_number_spec.rb +271 -650
- data/spec/models/barge_in_reason_spec.rb +27 -30
- data/spec/models/buy_incoming_number_request_spec.rb +136 -322
- data/spec/models/call_control_webhook_spec.rb +203 -503
- data/spec/models/call_direction_spec.rb +27 -30
- data/spec/models/call_ended_reason_spec.rb +107 -110
- data/spec/models/call_list_spec.rb +289 -646
- data/spec/models/call_result_spec.rb +699 -1798
- data/spec/models/call_status_spec.rb +47 -50
- data/spec/models/call_status_webhook_spec.rb +413 -990
- data/spec/models/capabilities_spec.rb +202 -411
- data/spec/models/completion_request_spec.rb +75 -143
- data/spec/models/completion_result_spec.rb +104 -231
- data/spec/models/completion_result_status_spec.rb +24 -27
- data/spec/models/conference_list_spec.rb +289 -646
- data/spec/models/conference_participant_list_spec.rb +289 -646
- data/spec/models/conference_participant_result_spec.rb +384 -938
- data/spec/models/conference_recording_status_webhook_spec.rb +464 -1197
- data/spec/models/conference_result_spec.rb +489 -1263
- data/spec/models/conference_status_spec.rb +31 -34
- data/spec/models/conference_status_webhook_spec.rb +464 -1197
- data/spec/models/create_conference_request_spec.rb +204 -485
- data/spec/models/create_conference_spec.rb +289 -561
- data/spec/models/create_conference_webhook_spec.rb +464 -1197
- data/spec/models/create_web_rtc_token_spec.rb +136 -307
- data/spec/models/dequeue_spec.rb +14 -17
- data/spec/models/dequeue_webhook_spec.rb +400 -1021
- data/spec/models/enqueue_spec.rb +169 -412
- data/spec/models/export_list_spec.rb +502 -0
- data/spec/models/export_output_type_spec.rb +43 -0
- data/spec/models/export_request_output_spec.rb +162 -0
- data/spec/models/export_request_spec.rb +320 -0
- data/spec/models/export_resource_type_spec.rb +59 -0
- data/spec/models/export_result_output_spec.rb +162 -0
- data/spec/models/export_result_spec.rb +718 -0
- data/spec/models/export_status_spec.rb +123 -0
- data/spec/models/filter_logs_request_spec.rb +73 -145
- data/spec/models/get_digits_reason_spec.rb +31 -34
- data/spec/models/get_digits_spec.rb +326 -737
- data/spec/models/get_digits_webhook_spec.rb +435 -1127
- data/spec/models/get_speech_reason_spec.rb +39 -42
- data/spec/models/get_speech_spec.rb +399 -1036
- data/spec/models/get_speech_webhook_spec.rb +608 -1553
- data/spec/models/grammar_file_built_in_spec.rb +75 -78
- data/spec/models/grammar_type_spec.rb +24 -27
- data/spec/models/hangup_spec.rb +73 -145
- data/spec/models/if_machine_spec.rb +24 -27
- data/spec/models/inbound_call_webhook_spec.rb +371 -951
- data/spec/models/incoming_number_list_spec.rb +289 -646
- data/spec/models/incoming_number_request_spec.rb +136 -322
- data/spec/models/incoming_number_result_spec.rb +573 -1489
- data/spec/models/language_spec.rb +120 -123
- data/spec/models/leave_conference_webhook_spec.rb +341 -864
- data/spec/models/log_level_spec.rb +27 -30
- data/spec/models/log_list_spec.rb +289 -646
- data/spec/models/log_result_spec.rb +272 -667
- data/spec/models/machine_detected_webhook_spec.rb +401 -1036
- data/spec/models/machine_type_spec.rb +24 -27
- data/spec/models/make_call_request_spec.rb +353 -905
- data/spec/models/message_delivery_webhook_spec.rb +357 -942
- data/spec/models/message_direction_spec.rb +24 -27
- data/spec/models/message_request_spec.rb +324 -818
- data/spec/models/message_result_spec.rb +647 -1710
- data/spec/models/message_status_spec.rb +60 -63
- data/spec/models/message_status_webhook_spec.rb +405 -1045
- data/spec/models/messages_list_spec.rb +289 -646
- data/spec/models/mutable_resource_model_spec.rb +168 -395
- data/spec/models/out_dial_api_connect_webhook_spec.rb +371 -951
- data/spec/models/out_dial_connect_webhook_spec.rb +371 -951
- data/spec/models/out_dial_spec.rb +354 -903
- data/spec/models/out_dial_start_webhook_spec.rb +401 -1038
- data/spec/models/pagination_model_spec.rb +259 -577
- data/spec/models/park_spec.rb +136 -322
- data/spec/models/pause_spec.rb +72 -128
- data/spec/models/percl_command_spec.rb +76 -145
- data/spec/models/percl_script_spec.rb +73 -127
- data/spec/models/play_beep_spec.rb +31 -34
- data/spec/models/play_early_media_spec.rb +73 -145
- data/spec/models/play_spec.rb +135 -287
- data/spec/models/queue_list_spec.rb +289 -646
- data/spec/models/queue_member_list_spec.rb +289 -646
- data/spec/models/queue_member_spec.rb +199 -467
- data/spec/models/queue_request_spec.rb +103 -216
- data/spec/models/queue_result_spec.rb +388 -965
- data/spec/models/queue_result_status_spec.rb +31 -34
- data/spec/models/queue_wait_webhook_spec.rb +429 -1091
- data/spec/models/record_utterance_spec.rb +263 -591
- data/spec/models/record_utterance_term_reason_spec.rb +31 -34
- data/spec/models/record_webhook_spec.rb +605 -1548
- data/spec/models/recording_list_spec.rb +289 -646
- data/spec/models/recording_result_spec.rb +323 -819
- data/spec/models/redirect_spec.rb +73 -145
- data/spec/models/redirect_webhook_spec.rb +371 -951
- data/spec/models/reject_spec.rb +73 -145
- data/spec/models/remove_from_conference_spec.rb +14 -17
- data/spec/models/remove_from_queue_notification_webhook_spec.rb +404 -1023
- data/spec/models/request_type_spec.rb +107 -110
- data/spec/models/say_spec.rb +168 -377
- data/spec/models/send_digits_spec.rb +135 -287
- data/spec/models/set_dtmf_pass_through_spec.rb +74 -127
- data/spec/models/set_listen_spec.rb +74 -127
- data/spec/models/set_talk_spec.rb +74 -127
- data/spec/models/sms_spec.rb +169 -412
- data/spec/models/sms_ten_dlc_brand_alt_business_id_type_spec.rb +31 -34
- data/spec/models/sms_ten_dlc_brand_entity_type_spec.rb +35 -38
- data/spec/models/sms_ten_dlc_brand_identity_status_spec.rb +31 -34
- data/spec/models/sms_ten_dlc_brand_relationship_spec.rb +35 -38
- data/spec/models/sms_ten_dlc_brand_spec.rb +1082 -2746
- data/spec/models/sms_ten_dlc_brand_stock_exchange_spec.rb +124 -127
- data/spec/models/sms_ten_dlc_brands_list_result_spec.rb +289 -646
- data/spec/models/sms_ten_dlc_campaign_spec.rb +1139 -2881
- data/spec/models/sms_ten_dlc_campaign_status_spec.rb +24 -27
- data/spec/models/sms_ten_dlc_campaigns_list_result_spec.rb +289 -646
- data/spec/models/sms_ten_dlc_partner_campaign_brand_spec.rb +406 -1004
- data/spec/models/sms_ten_dlc_partner_campaign_spec.rb +961 -2393
- data/spec/models/sms_ten_dlc_partner_campaign_status_spec.rb +24 -27
- data/spec/models/sms_ten_dlc_partner_campaigns_list_result_spec.rb +289 -646
- data/spec/models/sms_toll_free_campaign_registration_status_spec.rb +35 -38
- data/spec/models/sms_toll_free_campaign_spec.rb +270 -666
- data/spec/models/sms_toll_free_campaigns_list_result_spec.rb +289 -646
- data/spec/models/start_record_call_spec.rb +14 -17
- data/spec/models/terminate_conference_spec.rb +14 -17
- data/spec/models/tfn_campaign_spec.rb +330 -858
- data/spec/models/tfn_spec.rb +73 -145
- data/spec/models/transcribe_reason_spec.rb +35 -38
- data/spec/models/transcribe_term_reason_spec.rb +24 -27
- data/spec/models/transcribe_utterance_record_spec.rb +134 -270
- data/spec/models/transcribe_utterance_spec.rb +236 -523
- data/spec/models/transcribe_webhook_spec.rb +749 -1918
- data/spec/models/unpark_spec.rb +14 -17
- data/spec/models/update_call_request_spec.rb +74 -143
- data/spec/models/update_call_request_status_spec.rb +24 -27
- data/spec/models/update_conference_participant_request_spec.rb +137 -268
- data/spec/models/update_conference_request_spec.rb +140 -321
- data/spec/models/update_conference_request_status_spec.rb +24 -27
- data/spec/models/webhook_spec.rb +68 -137
- data/spec/quickstart_spec.rb +5 -5
- data/spec/spec_helper.rb +92 -100
- data/spec/utils/request_verifier_spec.rb +70 -71
- data/spec/utils/signature_information_spec.rb +23 -23
- data/yarn.lock +38 -29
- metadata +27 -151
@@ -1,17 +1,15 @@
|
|
1
|
-
|
2
|
-
#
|
1
|
+
# #FreeClimb API
|
2
|
+
#
|
3
|
+
# 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.
|
4
|
+
#
|
5
|
+
# The version of the OpenAPI document: 1.0.0
|
6
|
+
# Contact: support@freeclimb.com
|
7
|
+
# Generated by: https://openapi-generator.tech
|
8
|
+
# OpenAPI Generator version: 7.9.0
|
9
|
+
#
|
3
10
|
|
4
|
-
|
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: 7.9.0
|
10
|
-
|
11
|
-
=end
|
12
|
-
|
13
|
-
require 'date'
|
14
|
-
require 'time'
|
11
|
+
require "date"
|
12
|
+
require "time"
|
15
13
|
|
16
14
|
module Freeclimb
|
17
15
|
class ConferenceStatus
|
@@ -31,7 +29,7 @@ module Freeclimb
|
|
31
29
|
# @param [String] The enum value in the form of the string
|
32
30
|
# @return [String] The enum value
|
33
31
|
def build_from_hash(value)
|
34
|
-
constantValues = ConferenceStatus.constants.select { |c| ConferenceStatus
|
32
|
+
constantValues = ConferenceStatus.constants.select { |c| ConferenceStatus.const_get(c) == value }
|
35
33
|
raise "Invalid ENUM value #{value} for class #ConferenceStatus" if constantValues.empty?
|
36
34
|
value
|
37
35
|
end
|
@@ -1,17 +1,15 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
|
4
|
-
#
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
require 'date'
|
14
|
-
require 'time'
|
1
|
+
# #FreeClimb API
|
2
|
+
#
|
3
|
+
# 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.
|
4
|
+
#
|
5
|
+
# The version of the OpenAPI document: 1.0.0
|
6
|
+
# Contact: support@freeclimb.com
|
7
|
+
# Generated by: https://openapi-generator.tech
|
8
|
+
# OpenAPI Generator version: 7.9.0
|
9
|
+
#
|
10
|
+
|
11
|
+
require "date"
|
12
|
+
require "time"
|
15
13
|
|
16
14
|
module Freeclimb
|
17
15
|
# The context or reason why this request is being made. Will be conferenceStatus - A Conference's status changed and its statusCallbackUrl is being invoked.
|
@@ -19,8 +17,8 @@ module Freeclimb
|
|
19
17
|
def self.deserialize(payload)
|
20
18
|
return nil if payload.nil? || payload.empty?
|
21
19
|
data = JSON.parse("[#{payload}]")[0]
|
22
|
-
inverted_attributes =
|
23
|
-
hash =
|
20
|
+
inverted_attributes = attribute_map.invert
|
21
|
+
hash = acceptable_attributes.uniq.map { |k| [inverted_attributes[k], data[k.to_s]] }.to_h
|
24
22
|
ConferenceStatusWebhook.new(hash)
|
25
23
|
end
|
26
24
|
# Context or reason why this request is being made. Will be conferenceRecordingStatus - The statusCallbackUrl request includes Recording information for a Conference that ended.
|
@@ -84,19 +82,19 @@ module Freeclimb
|
|
84
82
|
# Attribute mapping from ruby-style variable name to JSON key.
|
85
83
|
def self.attribute_map
|
86
84
|
{
|
87
|
-
:
|
88
|
-
:
|
89
|
-
:
|
90
|
-
:
|
91
|
-
:
|
92
|
-
:
|
93
|
-
:
|
94
|
-
:
|
95
|
-
:
|
96
|
-
:
|
97
|
-
:
|
98
|
-
:
|
99
|
-
:
|
85
|
+
request_type: :requestType,
|
86
|
+
call_id: :callId,
|
87
|
+
account_id: :accountId,
|
88
|
+
from: :from,
|
89
|
+
to: :to,
|
90
|
+
call_status: :callStatus,
|
91
|
+
direction: :direction,
|
92
|
+
conference_id: :conferenceId,
|
93
|
+
queue_id: :queueId,
|
94
|
+
status: :status,
|
95
|
+
recording_url: :recordingUrl,
|
96
|
+
recording_id: :recordingId,
|
97
|
+
recording_duration_sec: :recordingDurationSec
|
100
98
|
}
|
101
99
|
end
|
102
100
|
|
@@ -108,155 +106,153 @@ module Freeclimb
|
|
108
106
|
# Attribute type mapping.
|
109
107
|
def self.openapi_types
|
110
108
|
{
|
111
|
-
:
|
112
|
-
:
|
113
|
-
:
|
114
|
-
:
|
115
|
-
:
|
116
|
-
:
|
117
|
-
:
|
118
|
-
:
|
119
|
-
:
|
120
|
-
:
|
121
|
-
:
|
122
|
-
:
|
123
|
-
:
|
109
|
+
request_type: :String,
|
110
|
+
call_id: :String,
|
111
|
+
account_id: :String,
|
112
|
+
from: :String,
|
113
|
+
to: :String,
|
114
|
+
call_status: :CallStatus,
|
115
|
+
direction: :CallDirection,
|
116
|
+
conference_id: :String,
|
117
|
+
queue_id: :String,
|
118
|
+
status: :ConferenceStatus,
|
119
|
+
recording_url: :String,
|
120
|
+
recording_id: :String,
|
121
|
+
recording_duration_sec: :Integer
|
124
122
|
}
|
125
123
|
end
|
126
124
|
|
127
125
|
# List of attributes with nullable: true
|
128
126
|
def self.openapi_nullable
|
129
127
|
Set.new([
|
130
|
-
:
|
131
|
-
:
|
132
|
-
:
|
133
|
-
:
|
134
|
-
:
|
135
|
-
:
|
136
|
-
:
|
128
|
+
:call_status,
|
129
|
+
:direction,
|
130
|
+
:queue_id,
|
131
|
+
:status,
|
132
|
+
:recording_url,
|
133
|
+
:recording_id,
|
134
|
+
:recording_duration_sec
|
137
135
|
])
|
138
136
|
end
|
139
137
|
|
140
138
|
# List of class defined in allOf (OpenAPI v3)
|
141
139
|
def self.openapi_all_of
|
142
140
|
[
|
143
|
-
|
141
|
+
:Webhook
|
144
142
|
]
|
145
143
|
end
|
146
144
|
|
147
145
|
# Initializes the object
|
148
146
|
# @param [Hash] attributes Model attributes in the form of hash
|
149
147
|
def initialize(attributes = {})
|
150
|
-
if
|
148
|
+
if !attributes.is_a?(Hash)
|
151
149
|
fail ArgumentError, "The input argument (attributes) must be a hash in `Freeclimb::ConferenceStatusWebhook` initialize method"
|
152
150
|
end
|
153
151
|
|
154
152
|
# check to see if the attribute exists and convert string to symbol for hash key
|
155
153
|
attributes = attributes.each_with_object({}) { |(k, v), h|
|
156
|
-
if
|
154
|
+
if !self.class.attribute_map.key?(k.to_sym)
|
157
155
|
fail ArgumentError, "`#{k}` is not a valid attribute in `Freeclimb::ConferenceStatusWebhook`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
158
156
|
end
|
159
157
|
h[k.to_sym] = v
|
160
158
|
}
|
161
159
|
|
162
160
|
# call parent's initialize
|
163
|
-
super
|
161
|
+
super
|
164
162
|
|
165
|
-
if attributes.key?(:
|
166
|
-
self.request_type = attributes[:
|
163
|
+
if attributes.key?(:request_type)
|
164
|
+
self.request_type = attributes[:request_type]
|
167
165
|
end
|
168
166
|
|
169
|
-
if attributes.key?(:
|
170
|
-
self.call_id = attributes[:
|
167
|
+
if attributes.key?(:call_id)
|
168
|
+
self.call_id = attributes[:call_id]
|
171
169
|
end
|
172
170
|
|
173
|
-
if attributes.key?(:
|
174
|
-
self.account_id = attributes[:
|
171
|
+
if attributes.key?(:account_id)
|
172
|
+
self.account_id = attributes[:account_id]
|
175
173
|
end
|
176
174
|
|
177
|
-
if attributes.key?(:
|
178
|
-
self.from = attributes[:
|
175
|
+
if attributes.key?(:from)
|
176
|
+
self.from = attributes[:from]
|
179
177
|
end
|
180
178
|
|
181
|
-
if attributes.key?(:
|
182
|
-
self.to = attributes[:
|
179
|
+
if attributes.key?(:to)
|
180
|
+
self.to = attributes[:to]
|
183
181
|
end
|
184
182
|
|
185
|
-
if attributes.key?(:
|
186
|
-
self.call_status = attributes[:
|
183
|
+
if attributes.key?(:call_status)
|
184
|
+
self.call_status = attributes[:call_status]
|
187
185
|
end
|
188
186
|
|
189
|
-
if attributes.key?(:
|
190
|
-
self.direction = attributes[:
|
187
|
+
if attributes.key?(:direction)
|
188
|
+
self.direction = attributes[:direction]
|
191
189
|
end
|
192
190
|
|
193
|
-
if attributes.key?(:
|
194
|
-
self.conference_id = attributes[:
|
191
|
+
if attributes.key?(:conference_id)
|
192
|
+
self.conference_id = attributes[:conference_id]
|
195
193
|
end
|
196
194
|
|
197
|
-
if attributes.key?(:
|
198
|
-
self.queue_id = attributes[:
|
195
|
+
if attributes.key?(:queue_id)
|
196
|
+
self.queue_id = attributes[:queue_id]
|
199
197
|
end
|
200
198
|
|
201
|
-
if attributes.key?(:
|
202
|
-
self.status = attributes[:
|
199
|
+
if attributes.key?(:status)
|
200
|
+
self.status = attributes[:status]
|
203
201
|
end
|
204
202
|
|
205
|
-
if attributes.key?(:
|
206
|
-
self.recording_url = attributes[:
|
203
|
+
if attributes.key?(:recording_url)
|
204
|
+
self.recording_url = attributes[:recording_url]
|
207
205
|
end
|
208
206
|
|
209
|
-
if attributes.key?(:
|
210
|
-
self.recording_id = attributes[:
|
207
|
+
if attributes.key?(:recording_id)
|
208
|
+
self.recording_id = attributes[:recording_id]
|
211
209
|
end
|
212
210
|
|
213
|
-
if attributes.key?(:
|
214
|
-
self.recording_duration_sec = attributes[:
|
211
|
+
if attributes.key?(:recording_duration_sec)
|
212
|
+
self.recording_duration_sec = attributes[:recording_duration_sec]
|
215
213
|
end
|
216
214
|
end
|
217
215
|
|
218
216
|
# Show invalid properties with the reasons. Usually used together with valid?
|
219
217
|
# @return Array for valid properties with the reasons
|
220
218
|
def list_invalid_properties
|
221
|
-
|
222
|
-
invalid_properties
|
219
|
+
super
|
223
220
|
end
|
224
221
|
|
225
222
|
# Check to see if the all the properties in the model are valid
|
226
223
|
# @return true if the model is valid
|
227
224
|
def valid?
|
228
|
-
|
229
225
|
if @request_type.nil?
|
230
226
|
false
|
231
227
|
else
|
232
|
-
list_invalid_properties.length
|
228
|
+
list_invalid_properties.length == 0
|
233
229
|
end
|
234
230
|
end
|
235
231
|
|
236
232
|
# Checks equality by comparing each attribute.
|
237
233
|
# @param [Object] Object to be compared
|
238
|
-
def ==(
|
239
|
-
return true if
|
240
|
-
self.class ==
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
234
|
+
def ==(other)
|
235
|
+
return true if equal?(other)
|
236
|
+
self.class == other.class &&
|
237
|
+
request_type == other.request_type &&
|
238
|
+
call_id == other.call_id &&
|
239
|
+
account_id == other.account_id &&
|
240
|
+
from == other.from &&
|
241
|
+
to == other.to &&
|
242
|
+
call_status == other.call_status &&
|
243
|
+
direction == other.direction &&
|
244
|
+
conference_id == other.conference_id &&
|
245
|
+
queue_id == other.queue_id &&
|
246
|
+
status == other.status &&
|
247
|
+
recording_url == other.recording_url &&
|
248
|
+
recording_id == other.recording_id &&
|
249
|
+
recording_duration_sec == other.recording_duration_sec && super
|
254
250
|
end
|
255
251
|
|
256
252
|
# @see the `==` method
|
257
253
|
# @param [Object] Object to be compared
|
258
|
-
def eql?(
|
259
|
-
self ==
|
254
|
+
def eql?(other)
|
255
|
+
self == other
|
260
256
|
end
|
261
257
|
|
262
258
|
# Calculates hash code according to all attributes.
|
@@ -277,18 +273,18 @@ module Freeclimb
|
|
277
273
|
# @return [Object] Returns the model itself
|
278
274
|
def build_from_hash(attributes)
|
279
275
|
return nil unless attributes.is_a?(Hash)
|
280
|
-
super
|
276
|
+
super
|
281
277
|
self.class.openapi_types.each_pair do |key, type|
|
282
278
|
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
283
|
-
|
279
|
+
send(:"#{key}=", nil)
|
284
280
|
elsif type =~ /\AArray<(.*)>/i
|
285
281
|
# check to ensure the input is an array given that the attribute
|
286
282
|
# is documented as an array but the input is not
|
287
283
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
288
|
-
|
284
|
+
send(:"#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
289
285
|
end
|
290
286
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
291
|
-
|
287
|
+
send(:"#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
292
288
|
end
|
293
289
|
end
|
294
290
|
|
@@ -355,7 +351,7 @@ module Freeclimb
|
|
355
351
|
def to_hash
|
356
352
|
hash = super
|
357
353
|
self.class.attribute_map.each_pair do |attr, param|
|
358
|
-
value =
|
354
|
+
value = send(attr)
|
359
355
|
if value.nil?
|
360
356
|
is_nullable = self.class.openapi_nullable.include?(attr)
|
361
357
|
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
@@ -1,25 +1,23 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
|
4
|
-
#
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
require 'date'
|
14
|
-
require 'time'
|
1
|
+
# #FreeClimb API
|
2
|
+
#
|
3
|
+
# 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.
|
4
|
+
#
|
5
|
+
# The version of the OpenAPI document: 1.0.0
|
6
|
+
# Contact: support@freeclimb.com
|
7
|
+
# Generated by: https://openapi-generator.tech
|
8
|
+
# OpenAPI Generator version: 7.9.0
|
9
|
+
#
|
10
|
+
|
11
|
+
require "date"
|
12
|
+
require "time"
|
15
13
|
|
16
14
|
module Freeclimb
|
17
15
|
# The `CreateConference` command does exactly what its name implies — it creates an unpopulated Conference (one without any Participants). Once created, a Conference remains in FreeClimb until explicitly terminated by a customer. Once a Conference has been terminated, it can no longer be used.
|
18
16
|
class CreateConference < PerclCommand
|
19
|
-
# This URL is invoked once the Conference is successfully created. Actions on the Conference, such as adding Participants, can be performed via the PerCL script returned in the response.
|
17
|
+
# This URL is invoked once the Conference is successfully created. Actions on the Conference, such as adding Participants, can be performed via the PerCL script returned in the response.
|
20
18
|
attr_accessor :action_url
|
21
19
|
|
22
|
-
# Descriptive name for the Conference.
|
20
|
+
# Descriptive name for the Conference.
|
23
21
|
attr_accessor :_alias
|
24
22
|
|
25
23
|
attr_accessor :play_beep
|
@@ -33,6 +31,9 @@ module Freeclimb
|
|
33
31
|
# If specified, this URL provides the custom hold music for the Conference when it is in the populated state. This attribute is always fetched using HTTP GET and is fetched just once – when the Conference is created. The URL must be an audio file that is reachable and readable by FreeClimb.
|
34
32
|
attr_accessor :wait_url
|
35
33
|
|
34
|
+
# ID of the Call that created this leg (child call).
|
35
|
+
attr_accessor :parent_call_id
|
36
|
+
|
36
37
|
class EnumAttributeValidator
|
37
38
|
attr_reader :datatype
|
38
39
|
attr_reader :allowable_values
|
@@ -58,12 +59,13 @@ module Freeclimb
|
|
58
59
|
# Attribute mapping from ruby-style variable name to JSON key.
|
59
60
|
def self.attribute_map
|
60
61
|
{
|
61
|
-
:
|
62
|
-
:
|
63
|
-
:
|
64
|
-
:
|
65
|
-
:
|
66
|
-
:
|
62
|
+
action_url: :actionUrl,
|
63
|
+
_alias: :alias,
|
64
|
+
play_beep: :playBeep,
|
65
|
+
record: :record,
|
66
|
+
status_callback_url: :statusCallbackUrl,
|
67
|
+
wait_url: :waitUrl,
|
68
|
+
parent_call_id: :parentCallId
|
67
69
|
}
|
68
70
|
end
|
69
71
|
|
@@ -75,69 +77,74 @@ module Freeclimb
|
|
75
77
|
# Attribute type mapping.
|
76
78
|
def self.openapi_types
|
77
79
|
{
|
78
|
-
:
|
79
|
-
:
|
80
|
-
:
|
81
|
-
:
|
82
|
-
:
|
83
|
-
:
|
80
|
+
action_url: :String,
|
81
|
+
_alias: :String,
|
82
|
+
play_beep: :PlayBeep,
|
83
|
+
record: :Boolean,
|
84
|
+
status_callback_url: :String,
|
85
|
+
wait_url: :String,
|
86
|
+
parent_call_id: :String
|
84
87
|
}
|
85
88
|
end
|
86
89
|
|
87
90
|
# List of attributes with nullable: true
|
88
91
|
def self.openapi_nullable
|
89
92
|
Set.new([
|
90
|
-
:
|
93
|
+
:play_beep
|
91
94
|
])
|
92
95
|
end
|
93
96
|
|
94
97
|
# List of class defined in allOf (OpenAPI v3)
|
95
98
|
def self.openapi_all_of
|
96
99
|
[
|
97
|
-
|
100
|
+
:PerclCommand
|
98
101
|
]
|
99
102
|
end
|
100
103
|
|
101
104
|
# Initializes the object
|
102
105
|
# @param [Hash] attributes Model attributes in the form of hash
|
103
106
|
def initialize(attributes = {})
|
104
|
-
if
|
107
|
+
if !attributes.is_a?(Hash)
|
105
108
|
fail ArgumentError, "The input argument (attributes) must be a hash in `Freeclimb::CreateConference` initialize method"
|
106
109
|
end
|
107
110
|
|
108
111
|
# check to see if the attribute exists and convert string to symbol for hash key
|
109
112
|
attributes = attributes.each_with_object({}) { |(k, v), h|
|
110
|
-
if
|
113
|
+
if !self.class.attribute_map.key?(k.to_sym)
|
111
114
|
fail ArgumentError, "`#{k}` is not a valid attribute in `Freeclimb::CreateConference`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
112
115
|
end
|
113
116
|
h[k.to_sym] = v
|
114
117
|
}
|
115
118
|
|
116
119
|
# call parent's initialize
|
117
|
-
super
|
120
|
+
super
|
121
|
+
|
122
|
+
if attributes.key?(:action_url)
|
123
|
+
self.action_url = attributes[:action_url]
|
124
|
+
end
|
118
125
|
|
119
|
-
if attributes.key?(:
|
120
|
-
self.
|
126
|
+
if attributes.key?(:_alias)
|
127
|
+
self._alias = attributes[:_alias]
|
121
128
|
end
|
122
129
|
|
123
|
-
if attributes.key?(:
|
124
|
-
self.
|
130
|
+
if attributes.key?(:play_beep)
|
131
|
+
self.play_beep = attributes[:play_beep]
|
125
132
|
end
|
126
133
|
|
127
|
-
if attributes.key?(:
|
128
|
-
self.
|
134
|
+
if attributes.key?(:record)
|
135
|
+
self.record = attributes[:record]
|
129
136
|
end
|
130
137
|
|
131
|
-
if attributes.key?(:
|
132
|
-
self.
|
138
|
+
if attributes.key?(:status_callback_url)
|
139
|
+
self.status_callback_url = attributes[:status_callback_url]
|
133
140
|
end
|
134
141
|
|
135
|
-
if attributes.key?(:
|
136
|
-
self.
|
142
|
+
if attributes.key?(:wait_url)
|
143
|
+
self.wait_url = attributes[:wait_url]
|
137
144
|
end
|
138
145
|
|
139
|
-
if attributes.key?(:
|
140
|
-
self.
|
146
|
+
if attributes.key?(:parent_call_id)
|
147
|
+
self.parent_call_id = attributes[:parent_call_id]
|
141
148
|
end
|
142
149
|
self.command = "CreateConference"
|
143
150
|
end
|
@@ -156,37 +163,37 @@ module Freeclimb
|
|
156
163
|
# Check to see if the all the properties in the model are valid
|
157
164
|
# @return true if the model is valid
|
158
165
|
def valid?
|
159
|
-
|
160
166
|
if @action_url.nil?
|
161
167
|
false
|
162
168
|
else
|
163
|
-
list_invalid_properties.length
|
169
|
+
list_invalid_properties.length == 0
|
164
170
|
end
|
165
171
|
end
|
166
172
|
|
167
173
|
# Checks equality by comparing each attribute.
|
168
174
|
# @param [Object] Object to be compared
|
169
|
-
def ==(
|
170
|
-
return true if
|
171
|
-
self.class ==
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
175
|
+
def ==(other)
|
176
|
+
return true if equal?(other)
|
177
|
+
self.class == other.class &&
|
178
|
+
action_url == other.action_url &&
|
179
|
+
_alias == other._alias &&
|
180
|
+
play_beep == other.play_beep &&
|
181
|
+
record == other.record &&
|
182
|
+
status_callback_url == other.status_callback_url &&
|
183
|
+
wait_url == other.wait_url &&
|
184
|
+
parent_call_id == other.parent_call_id && super
|
178
185
|
end
|
179
186
|
|
180
187
|
# @see the `==` method
|
181
188
|
# @param [Object] Object to be compared
|
182
|
-
def eql?(
|
183
|
-
self ==
|
189
|
+
def eql?(other)
|
190
|
+
self == other
|
184
191
|
end
|
185
192
|
|
186
193
|
# Calculates hash code according to all attributes.
|
187
194
|
# @return [Integer] Hash code
|
188
195
|
def hash
|
189
|
-
[action_url, _alias, play_beep, record, status_callback_url, wait_url].hash
|
196
|
+
[action_url, _alias, play_beep, record, status_callback_url, wait_url, parent_call_id].hash
|
190
197
|
end
|
191
198
|
|
192
199
|
# Builds the object from hash
|
@@ -201,18 +208,18 @@ module Freeclimb
|
|
201
208
|
# @return [Object] Returns the model itself
|
202
209
|
def build_from_hash(attributes)
|
203
210
|
return nil unless attributes.is_a?(Hash)
|
204
|
-
super
|
211
|
+
super
|
205
212
|
self.class.openapi_types.each_pair do |key, type|
|
206
213
|
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
207
|
-
|
214
|
+
send(:"#{key}=", nil)
|
208
215
|
elsif type =~ /\AArray<(.*)>/i
|
209
216
|
# check to ensure the input is an array given that the attribute
|
210
217
|
# is documented as an array but the input is not
|
211
218
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
212
|
-
|
219
|
+
send(:"#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
213
220
|
end
|
214
221
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
215
|
-
|
222
|
+
send(:"#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
216
223
|
end
|
217
224
|
end
|
218
225
|
|
@@ -279,7 +286,7 @@ module Freeclimb
|
|
279
286
|
def to_hash
|
280
287
|
hash = super
|
281
288
|
self.class.attribute_map.each_pair do |attr, param|
|
282
|
-
value =
|
289
|
+
value = send(attr)
|
283
290
|
if value.nil?
|
284
291
|
is_nullable = self.class.openapi_nullable.include?(attr)
|
285
292
|
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|