freeclimb 2.0.3 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +30 -0
- data/README.md +9 -5
- data/docs/AccountResult.md +2 -2
- data/docs/AccountResultAllOf.md +2 -2
- data/docs/DefaultApi.md +46 -46
- data/docs/Hangup.md +17 -0
- data/docs/HangupAllOf.md +17 -0
- data/docs/MakeCallRequest.md +5 -3
- data/docs/RecordUtterance.md +3 -1
- data/docs/RecordUtteranceAllOf.md +3 -1
- data/docs/Redirect.md +1 -1
- data/docs/RedirectAllOf.md +1 -1
- data/docs/Reject.md +17 -0
- data/docs/RejectAllOf.md +17 -0
- data/freeclimb-2.0.3.gem +0 -0
- data/freeclimb-2.1.0.gem +0 -0
- data/freeclimb-2.1.1.gem +0 -0
- data/freeclimb-2.1.2.gem +0 -0
- data/freeclimb-2.2.0.gem +0 -0
- data/lib/freeclimb.rb +5 -0
- data/lib/freeclimb/api_client.rb +1 -1
- data/lib/freeclimb/models/account_result.rb +8 -8
- data/lib/freeclimb/models/account_result_all_of.rb +8 -8
- data/lib/freeclimb/models/hangup.rb +220 -0
- data/lib/freeclimb/models/hangup_all_of.rb +207 -0
- data/lib/freeclimb/models/make_call_request.rb +16 -11
- data/lib/freeclimb/models/record_utterance.rb +14 -4
- data/lib/freeclimb/models/record_utterance_all_of.rb +14 -4
- data/lib/freeclimb/models/redirect.rb +7 -2
- data/lib/freeclimb/models/redirect_all_of.rb +6 -1
- data/lib/freeclimb/models/reject.rb +220 -0
- data/lib/freeclimb/models/reject_all_of.rb +207 -0
- data/lib/freeclimb/utils.rb +34 -0
- data/lib/freeclimb/version.rb +1 -1
- data/spec/api/web_mocks.rb +1 -1
- data/spec/models/hangup_spec.rb +41 -0
- data/spec/models/reject_spec.rb +41 -0
- metadata +19 -2
@@ -0,0 +1,207 @@
|
|
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
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 4.3.0-SNAPSHOT
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module Freeclimb
|
16
|
+
class HangupAllOf
|
17
|
+
# The user defined reason for the hangup. In general, applications should use a set of enumerated values that are predefined to cover all exit points of the Call flows for the given application.
|
18
|
+
attr_accessor :reason
|
19
|
+
|
20
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
21
|
+
def self.attribute_map
|
22
|
+
{
|
23
|
+
:'reason' => :'reason'
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
# Attribute type mapping.
|
28
|
+
def self.openapi_types
|
29
|
+
{
|
30
|
+
:'reason' => :'String'
|
31
|
+
}
|
32
|
+
end
|
33
|
+
|
34
|
+
# List of attributes with nullable: true
|
35
|
+
def self.openapi_nullable
|
36
|
+
Set.new([
|
37
|
+
])
|
38
|
+
end
|
39
|
+
|
40
|
+
# Initializes the object
|
41
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
42
|
+
def initialize(attributes = {})
|
43
|
+
if (!attributes.is_a?(Hash))
|
44
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Freeclimb::HangupAllOf` initialize method"
|
45
|
+
end
|
46
|
+
|
47
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
48
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
49
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
50
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Freeclimb::HangupAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
51
|
+
end
|
52
|
+
h[k.to_sym] = v
|
53
|
+
}
|
54
|
+
|
55
|
+
if attributes.key?(:'reason')
|
56
|
+
self.reason = attributes[:'reason']
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
61
|
+
# @return Array for valid properties with the reasons
|
62
|
+
def list_invalid_properties
|
63
|
+
invalid_properties = Array.new
|
64
|
+
invalid_properties
|
65
|
+
end
|
66
|
+
|
67
|
+
# Check to see if the all the properties in the model are valid
|
68
|
+
# @return true if the model is valid
|
69
|
+
def valid?
|
70
|
+
true
|
71
|
+
end
|
72
|
+
|
73
|
+
# Checks equality by comparing each attribute.
|
74
|
+
# @param [Object] Object to be compared
|
75
|
+
def ==(o)
|
76
|
+
return true if self.equal?(o)
|
77
|
+
self.class == o.class &&
|
78
|
+
reason == o.reason
|
79
|
+
end
|
80
|
+
|
81
|
+
# @see the `==` method
|
82
|
+
# @param [Object] Object to be compared
|
83
|
+
def eql?(o)
|
84
|
+
self == o
|
85
|
+
end
|
86
|
+
|
87
|
+
# Calculates hash code according to all attributes.
|
88
|
+
# @return [Integer] Hash code
|
89
|
+
def hash
|
90
|
+
[reason].hash
|
91
|
+
end
|
92
|
+
|
93
|
+
# Builds the object from hash
|
94
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
95
|
+
# @return [Object] Returns the model itself
|
96
|
+
def self.build_from_hash(attributes)
|
97
|
+
new.build_from_hash(attributes)
|
98
|
+
end
|
99
|
+
|
100
|
+
# Builds the object from hash
|
101
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
102
|
+
# @return [Object] Returns the model itself
|
103
|
+
def build_from_hash(attributes)
|
104
|
+
return nil unless attributes.is_a?(Hash)
|
105
|
+
self.class.openapi_types.each_pair do |key, type|
|
106
|
+
if type =~ /\AArray<(.*)>/i
|
107
|
+
# check to ensure the input is an array given that the attribute
|
108
|
+
# is documented as an array but the input is not
|
109
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
110
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
111
|
+
end
|
112
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
113
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
114
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
115
|
+
end
|
116
|
+
|
117
|
+
self
|
118
|
+
end
|
119
|
+
|
120
|
+
# Deserializes the data based on type
|
121
|
+
# @param string type Data type
|
122
|
+
# @param string value Value to be deserialized
|
123
|
+
# @return [Object] Deserialized data
|
124
|
+
def _deserialize(type, value)
|
125
|
+
case type.to_sym
|
126
|
+
when :DateTime
|
127
|
+
DateTime.parse(value)
|
128
|
+
when :Date
|
129
|
+
Date.parse(value)
|
130
|
+
when :String
|
131
|
+
value.to_s
|
132
|
+
when :Integer
|
133
|
+
value.to_i
|
134
|
+
when :Float
|
135
|
+
value.to_f
|
136
|
+
when :Boolean
|
137
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
138
|
+
true
|
139
|
+
else
|
140
|
+
false
|
141
|
+
end
|
142
|
+
when :Object
|
143
|
+
# generic object (usually a Hash), return directly
|
144
|
+
value
|
145
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
146
|
+
inner_type = Regexp.last_match[:inner_type]
|
147
|
+
value.map { |v| _deserialize(inner_type, v) }
|
148
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
149
|
+
k_type = Regexp.last_match[:k_type]
|
150
|
+
v_type = Regexp.last_match[:v_type]
|
151
|
+
{}.tap do |hash|
|
152
|
+
value.each do |k, v|
|
153
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
154
|
+
end
|
155
|
+
end
|
156
|
+
else # model
|
157
|
+
Freeclimb.const_get(type).build_from_hash(value)
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
# Returns the string representation of the object
|
162
|
+
# @return [String] String presentation of the object
|
163
|
+
def to_s
|
164
|
+
to_hash.to_s
|
165
|
+
end
|
166
|
+
|
167
|
+
# to_body is an alias to to_hash (backward compatibility)
|
168
|
+
# @return [Hash] Returns the object in the form of hash
|
169
|
+
def to_body
|
170
|
+
to_hash
|
171
|
+
end
|
172
|
+
|
173
|
+
# Returns the object in the form of hash
|
174
|
+
# @return [Hash] Returns the object in the form of hash
|
175
|
+
def to_hash
|
176
|
+
hash = {}
|
177
|
+
self.class.attribute_map.each_pair do |attr, param|
|
178
|
+
value = self.send(attr)
|
179
|
+
if value.nil?
|
180
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
181
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
182
|
+
end
|
183
|
+
|
184
|
+
hash[param] = _to_hash(value)
|
185
|
+
end
|
186
|
+
hash
|
187
|
+
end
|
188
|
+
|
189
|
+
# Outputs non-array value in the form of hash
|
190
|
+
# For object, use to_hash. Otherwise, just return the value
|
191
|
+
# @param [Object] value Any valid value
|
192
|
+
# @return [Hash] Returns the value in the form of hash
|
193
|
+
def _to_hash(value)
|
194
|
+
if value.is_a?(Array)
|
195
|
+
value.compact.map { |v| _to_hash(v) }
|
196
|
+
elsif value.is_a?(Hash)
|
197
|
+
{}.tap do |hash|
|
198
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
199
|
+
end
|
200
|
+
elsif value.respond_to? :to_hash
|
201
|
+
value.to_hash
|
202
|
+
else
|
203
|
+
value
|
204
|
+
end
|
205
|
+
end
|
206
|
+
end
|
207
|
+
end
|
@@ -20,7 +20,7 @@ module Freeclimb
|
|
20
20
|
# Phone number to place the Call to.
|
21
21
|
attr_accessor :to
|
22
22
|
|
23
|
-
# ID of the application FreeClimb should use to handle this phone call. FreeClimb will use the `callConnectUrl` and `statusCallbackUrl` set on the application.
|
23
|
+
# Required if no `parentCallId` or `callConnectUrl` has been provided. ID of the application FreeClimb should use to handle this phone call. FreeClimb will use the `callConnectUrl` and `statusCallbackUrl` set on the application unless the `callConnectUrl` attribute is also provided with the request. In this case, the URL specified in that `callConnectUrl` attribute will be used as a replacement of the `callConnectUrl` originally assigned in the application. If the `callConnectUrl` is not set as either an attribute of the request or as part of the specified application, an error will be provided. The application’s voiceUrl parameter is not used for outbound calls.
|
24
24
|
attr_accessor :application_id
|
25
25
|
|
26
26
|
# String of digits to dial after connecting to the number. It can include digits `0-9`, `*`, and `#`, and allows embedding a pause between the output of individual digits. The default pause is 500 milliseconds. So, a string such as *1234#* will be played in 2 seconds because of the 4 standard pauses implied within the string. A custom pause is specified by including a positive integer wrapped in curly braces: {n}. For more information, see **sendDigits examples** below.
|
@@ -35,12 +35,15 @@ module Freeclimb
|
|
35
35
|
# Number of seconds that FreeClimb should allow the phone to ring before assuming there is no answer. Default is 30 seconds. Maximum allowed ring-time is determined by the target phone's provider. Note that most providers limit ring-time to 120 seconds.
|
36
36
|
attr_accessor :timeout
|
37
37
|
|
38
|
-
# The ID of the parent Call in the case that this new Call is meant to be treated as a child of an existing Call. This attribute should be included when possible to reduce latency when adding child calls to Conferences containing the parent Call. A call can only be used as a parent once the call is in progress or as an inbound call that is still ringing.
|
38
|
+
# Required if no `applicationId` or `callConnectUrl` has been provided. The ID of the parent Call in the case that this new Call is meant to be treated as a child of an existing Call. This attribute should be included when possible to reduce latency when adding child calls to Conferences containing the parent Call. A call can only be used as a parent once the call is in progress or as an inbound call that is still ringing. An outbound call is considered to be in progress once the `outdialConnect` or `outdialApiConnect` webhook is invoked. An inbound call is ringing when the inbound webhook is invoked. If a `callConnectUrl` attribute is also included with the `parentCallId` in the request, this URL will be used as a replacement of the `callConnectUrl` originally assigned in the parent call.
|
39
39
|
attr_accessor :parent_call_id
|
40
40
|
|
41
41
|
# Activate privacy mode in order to obscure log data that can potentially expose private information.
|
42
42
|
attr_accessor :privacy_mode
|
43
43
|
|
44
|
+
# The URL that FreeClimb should use to handle this phone call. If an applicationId or parentCallId have already been provided, this callConnectUrl attribute will be used as a replacement of the callConnectUrl originally assigned in the application or parent call.
|
45
|
+
attr_accessor :call_connect_url
|
46
|
+
|
44
47
|
# Attribute mapping from ruby-style variable name to JSON key.
|
45
48
|
def self.attribute_map
|
46
49
|
{
|
@@ -52,7 +55,8 @@ module Freeclimb
|
|
52
55
|
:'if_machine_url' => :'ifMachineUrl',
|
53
56
|
:'timeout' => :'timeout',
|
54
57
|
:'parent_call_id' => :'parentCallId',
|
55
|
-
:'privacy_mode' => :'privacyMode'
|
58
|
+
:'privacy_mode' => :'privacyMode',
|
59
|
+
:'call_connect_url' => :'callConnectUrl'
|
56
60
|
}
|
57
61
|
end
|
58
62
|
|
@@ -67,7 +71,8 @@ module Freeclimb
|
|
67
71
|
:'if_machine_url' => :'String',
|
68
72
|
:'timeout' => :'Integer',
|
69
73
|
:'parent_call_id' => :'String',
|
70
|
-
:'privacy_mode' => :'Boolean'
|
74
|
+
:'privacy_mode' => :'Boolean',
|
75
|
+
:'call_connect_url' => :'String'
|
71
76
|
}
|
72
77
|
end
|
73
78
|
|
@@ -127,6 +132,10 @@ module Freeclimb
|
|
127
132
|
if attributes.key?(:'privacy_mode')
|
128
133
|
self.privacy_mode = attributes[:'privacy_mode']
|
129
134
|
end
|
135
|
+
|
136
|
+
if attributes.key?(:'call_connect_url')
|
137
|
+
self.call_connect_url = attributes[:'call_connect_url']
|
138
|
+
end
|
130
139
|
end
|
131
140
|
|
132
141
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -141,10 +150,6 @@ module Freeclimb
|
|
141
150
|
invalid_properties.push('invalid value for "to", to cannot be nil.')
|
142
151
|
end
|
143
152
|
|
144
|
-
if @application_id.nil?
|
145
|
-
invalid_properties.push('invalid value for "application_id", application_id cannot be nil.')
|
146
|
-
end
|
147
|
-
|
148
153
|
invalid_properties
|
149
154
|
end
|
150
155
|
|
@@ -153,7 +158,6 @@ module Freeclimb
|
|
153
158
|
def valid?
|
154
159
|
return false if @from.nil?
|
155
160
|
return false if @to.nil?
|
156
|
-
return false if @application_id.nil?
|
157
161
|
true
|
158
162
|
end
|
159
163
|
|
@@ -170,7 +174,8 @@ module Freeclimb
|
|
170
174
|
if_machine_url == o.if_machine_url &&
|
171
175
|
timeout == o.timeout &&
|
172
176
|
parent_call_id == o.parent_call_id &&
|
173
|
-
privacy_mode == o.privacy_mode
|
177
|
+
privacy_mode == o.privacy_mode &&
|
178
|
+
call_connect_url == o.call_connect_url
|
174
179
|
end
|
175
180
|
|
176
181
|
# @see the `==` method
|
@@ -182,7 +187,7 @@ module Freeclimb
|
|
182
187
|
# Calculates hash code according to all attributes.
|
183
188
|
# @return [Integer] Hash code
|
184
189
|
def hash
|
185
|
-
[from, to, application_id, send_digits, if_machine, if_machine_url, timeout, parent_call_id, privacy_mode].hash
|
190
|
+
[from, to, application_id, send_digits, if_machine, if_machine_url, timeout, parent_call_id, privacy_mode, call_connect_url].hash
|
186
191
|
end
|
187
192
|
|
188
193
|
# Builds the object from hash
|
@@ -33,6 +33,9 @@ module Freeclimb
|
|
33
33
|
# If `false`, recording begins immediately after the RecordUtterance command is processed. If `true`, recording begins when audio is present and if audio begins before the `maxLengthSec` timeout. If no audio begins before `maxLengthSec`, no recording is generated.
|
34
34
|
attr_accessor :auto_start
|
35
35
|
|
36
|
+
# Parameter `privacyMode` will not log the `text` as required by PCI compliance.
|
37
|
+
attr_accessor :privacy_mode
|
38
|
+
|
36
39
|
# Attribute mapping from ruby-style variable name to JSON key.
|
37
40
|
def self.attribute_map
|
38
41
|
{
|
@@ -41,7 +44,8 @@ module Freeclimb
|
|
41
44
|
:'finish_on_key' => :'finishOnKey',
|
42
45
|
:'max_length_sec' => :'maxLengthSec',
|
43
46
|
:'play_beep' => :'playBeep',
|
44
|
-
:'auto_start' => :'autoStart'
|
47
|
+
:'auto_start' => :'autoStart',
|
48
|
+
:'privacy_mode' => :'privacyMode'
|
45
49
|
}
|
46
50
|
end
|
47
51
|
|
@@ -53,7 +57,8 @@ module Freeclimb
|
|
53
57
|
:'finish_on_key' => :'String',
|
54
58
|
:'max_length_sec' => :'Integer',
|
55
59
|
:'play_beep' => :'Boolean',
|
56
|
-
:'auto_start' => :'Boolean'
|
60
|
+
:'auto_start' => :'Boolean',
|
61
|
+
:'privacy_mode' => :'Boolean'
|
57
62
|
}
|
58
63
|
end
|
59
64
|
|
@@ -112,6 +117,10 @@ module Freeclimb
|
|
112
117
|
if attributes.key?(:'auto_start')
|
113
118
|
self.auto_start = attributes[:'auto_start']
|
114
119
|
end
|
120
|
+
|
121
|
+
if attributes.key?(:'privacy_mode')
|
122
|
+
self.privacy_mode = attributes[:'privacy_mode']
|
123
|
+
end
|
115
124
|
end
|
116
125
|
|
117
126
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -142,7 +151,8 @@ module Freeclimb
|
|
142
151
|
finish_on_key == o.finish_on_key &&
|
143
152
|
max_length_sec == o.max_length_sec &&
|
144
153
|
play_beep == o.play_beep &&
|
145
|
-
auto_start == o.auto_start &&
|
154
|
+
auto_start == o.auto_start &&
|
155
|
+
privacy_mode == o.privacy_mode && super(o)
|
146
156
|
end
|
147
157
|
|
148
158
|
# @see the `==` method
|
@@ -154,7 +164,7 @@ module Freeclimb
|
|
154
164
|
# Calculates hash code according to all attributes.
|
155
165
|
# @return [Integer] Hash code
|
156
166
|
def hash
|
157
|
-
[action_url, silence_timeout_ms, finish_on_key, max_length_sec, play_beep, auto_start].hash
|
167
|
+
[action_url, silence_timeout_ms, finish_on_key, max_length_sec, play_beep, auto_start, privacy_mode].hash
|
158
168
|
end
|
159
169
|
|
160
170
|
# Builds the object from hash
|
@@ -32,6 +32,9 @@ module Freeclimb
|
|
32
32
|
# If `false`, recording begins immediately after the RecordUtterance command is processed. If `true`, recording begins when audio is present and if audio begins before the `maxLengthSec` timeout. If no audio begins before `maxLengthSec`, no recording is generated.
|
33
33
|
attr_accessor :auto_start
|
34
34
|
|
35
|
+
# Parameter `privacyMode` will not log the `text` as required by PCI compliance.
|
36
|
+
attr_accessor :privacy_mode
|
37
|
+
|
35
38
|
# Attribute mapping from ruby-style variable name to JSON key.
|
36
39
|
def self.attribute_map
|
37
40
|
{
|
@@ -40,7 +43,8 @@ module Freeclimb
|
|
40
43
|
:'finish_on_key' => :'finishOnKey',
|
41
44
|
:'max_length_sec' => :'maxLengthSec',
|
42
45
|
:'play_beep' => :'playBeep',
|
43
|
-
:'auto_start' => :'autoStart'
|
46
|
+
:'auto_start' => :'autoStart',
|
47
|
+
:'privacy_mode' => :'privacyMode'
|
44
48
|
}
|
45
49
|
end
|
46
50
|
|
@@ -52,7 +56,8 @@ module Freeclimb
|
|
52
56
|
:'finish_on_key' => :'String',
|
53
57
|
:'max_length_sec' => :'Integer',
|
54
58
|
:'play_beep' => :'Boolean',
|
55
|
-
:'auto_start' => :'Boolean'
|
59
|
+
:'auto_start' => :'Boolean',
|
60
|
+
:'privacy_mode' => :'Boolean'
|
56
61
|
}
|
57
62
|
end
|
58
63
|
|
@@ -100,6 +105,10 @@ module Freeclimb
|
|
100
105
|
if attributes.key?(:'auto_start')
|
101
106
|
self.auto_start = attributes[:'auto_start']
|
102
107
|
end
|
108
|
+
|
109
|
+
if attributes.key?(:'privacy_mode')
|
110
|
+
self.privacy_mode = attributes[:'privacy_mode']
|
111
|
+
end
|
103
112
|
end
|
104
113
|
|
105
114
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -130,7 +139,8 @@ module Freeclimb
|
|
130
139
|
finish_on_key == o.finish_on_key &&
|
131
140
|
max_length_sec == o.max_length_sec &&
|
132
141
|
play_beep == o.play_beep &&
|
133
|
-
auto_start == o.auto_start
|
142
|
+
auto_start == o.auto_start &&
|
143
|
+
privacy_mode == o.privacy_mode
|
134
144
|
end
|
135
145
|
|
136
146
|
# @see the `==` method
|
@@ -142,7 +152,7 @@ module Freeclimb
|
|
142
152
|
# Calculates hash code according to all attributes.
|
143
153
|
# @return [Integer] Hash code
|
144
154
|
def hash
|
145
|
-
[action_url, silence_timeout_ms, finish_on_key, max_length_sec, play_beep, auto_start].hash
|
155
|
+
[action_url, silence_timeout_ms, finish_on_key, max_length_sec, play_beep, auto_start, privacy_mode].hash
|
146
156
|
end
|
147
157
|
|
148
158
|
# Builds the object from hash
|
@@ -13,9 +13,9 @@ OpenAPI Generator version: 4.3.0-SNAPSHOT
|
|
13
13
|
require 'date'
|
14
14
|
|
15
15
|
module Freeclimb
|
16
|
-
# The `
|
16
|
+
# The `Redirect` command transfers control of a Call to the PerCL at a different URL. `Redirect` is a terminal command, so any actions following it are never executed. The maximum number of redirections allowed during the life time of a Call is 256. This is intended to prevent a Call from possibly looping infinitely due to errors in PerCL being generated.
|
17
17
|
class Redirect < PerclCommand
|
18
|
-
#
|
18
|
+
# URL to request a new PerCL script to continue with the current Call's processing. When `Redirect` invokes the `actionUrl`, an `inbound` Webhook is sent. This request therefore looks identical to the initial request (made to the `voiceUrl` of the number that was called) for an inbound Call.
|
19
19
|
attr_accessor :action_url
|
20
20
|
|
21
21
|
# Attribute mapping from ruby-style variable name to JSON key.
|
@@ -73,12 +73,17 @@ module Freeclimb
|
|
73
73
|
# @return Array for valid properties with the reasons
|
74
74
|
def list_invalid_properties
|
75
75
|
invalid_properties = super
|
76
|
+
if @action_url.nil?
|
77
|
+
invalid_properties.push('invalid value for "action_url", action_url cannot be nil.')
|
78
|
+
end
|
79
|
+
|
76
80
|
invalid_properties
|
77
81
|
end
|
78
82
|
|
79
83
|
# Check to see if the all the properties in the model are valid
|
80
84
|
# @return true if the model is valid
|
81
85
|
def valid?
|
86
|
+
return false if @action_url.nil?
|
82
87
|
true && super
|
83
88
|
end
|
84
89
|
|
@@ -14,7 +14,7 @@ require 'date'
|
|
14
14
|
|
15
15
|
module Freeclimb
|
16
16
|
class RedirectAllOf
|
17
|
-
#
|
17
|
+
# URL to request a new PerCL script to continue with the current Call's processing. When `Redirect` invokes the `actionUrl`, an `inbound` Webhook is sent. This request therefore looks identical to the initial request (made to the `voiceUrl` of the number that was called) for an inbound Call.
|
18
18
|
attr_accessor :action_url
|
19
19
|
|
20
20
|
# Attribute mapping from ruby-style variable name to JSON key.
|
@@ -61,12 +61,17 @@ module Freeclimb
|
|
61
61
|
# @return Array for valid properties with the reasons
|
62
62
|
def list_invalid_properties
|
63
63
|
invalid_properties = Array.new
|
64
|
+
if @action_url.nil?
|
65
|
+
invalid_properties.push('invalid value for "action_url", action_url cannot be nil.')
|
66
|
+
end
|
67
|
+
|
64
68
|
invalid_properties
|
65
69
|
end
|
66
70
|
|
67
71
|
# Check to see if the all the properties in the model are valid
|
68
72
|
# @return true if the model is valid
|
69
73
|
def valid?
|
74
|
+
return false if @action_url.nil?
|
70
75
|
true
|
71
76
|
end
|
72
77
|
|