telnyx 5.68.2 → 5.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +7 -0
  5. data/lib/telnyx/internal/util.rb +18 -4
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +47 -1
  7. data/lib/telnyx/models/ai/assistant_tool.rb +25 -5
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +47 -1
  9. data/lib/telnyx/models/ai/assistants/update_assistant.rb +48 -1
  10. data/lib/telnyx/models/ai/audio_transcribe_response.rb +70 -7
  11. data/lib/telnyx/models/ai/inference_embedding.rb +48 -1
  12. data/lib/telnyx/models/ai/telephony_settings.rb +13 -1
  13. data/lib/telnyx/models/pronunciation_dict_create_params.rb +141 -0
  14. data/lib/telnyx/models/pronunciation_dict_create_response.rb +207 -0
  15. data/lib/telnyx/models/pronunciation_dict_delete_params.rb +20 -0
  16. data/lib/telnyx/models/pronunciation_dict_list_params.rb +30 -0
  17. data/lib/telnyx/models/pronunciation_dict_list_response.rb +190 -0
  18. data/lib/telnyx/models/pronunciation_dict_retrieve_params.rb +20 -0
  19. data/lib/telnyx/models/pronunciation_dict_retrieve_response.rb +207 -0
  20. data/lib/telnyx/models/pronunciation_dict_update_params.rb +144 -0
  21. data/lib/telnyx/models/pronunciation_dict_update_response.rb +207 -0
  22. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +1893 -547
  23. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +514 -0
  24. data/lib/telnyx/models/texml_initiate_ai_call_response.rb +34 -0
  25. data/lib/telnyx/models/verification.rb +1 -0
  26. data/lib/telnyx/models/verification_trigger_whatsapp_verification_params.rb +46 -0
  27. data/lib/telnyx/models/verify_profile_create_params.rb +43 -1
  28. data/lib/telnyx/models/verify_profile_update_params.rb +43 -1
  29. data/lib/telnyx/models/whatsapp_message_content.rb +196 -1
  30. data/lib/telnyx/models/wireless_blocklist_update_params.rb +8 -21
  31. data/lib/telnyx/models.rb +15 -0
  32. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  33. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  34. data/lib/telnyx/resources/pronunciation_dicts.rb +156 -0
  35. data/lib/telnyx/resources/texml/accounts/calls.rb +3 -84
  36. data/lib/telnyx/resources/texml.rb +106 -0
  37. data/lib/telnyx/resources/verifications.rb +28 -0
  38. data/lib/telnyx/resources/verify_profiles.rb +5 -2
  39. data/lib/telnyx/resources/wireless_blocklists.rb +5 -5
  40. data/lib/telnyx/version.rb +1 -1
  41. data/lib/telnyx.rb +13 -0
  42. data/rbi/telnyx/client.rbi +6 -0
  43. data/rbi/telnyx/internal/util.rbi +8 -0
  44. data/rbi/telnyx/models/ai/assistant_create_params.rbi +130 -0
  45. data/rbi/telnyx/models/ai/assistant_tool.rbi +56 -5
  46. data/rbi/telnyx/models/ai/assistant_update_params.rbi +130 -0
  47. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +132 -0
  48. data/rbi/telnyx/models/ai/audio_transcribe_response.rbi +123 -10
  49. data/rbi/telnyx/models/ai/inference_embedding.rbi +130 -0
  50. data/rbi/telnyx/models/ai/telephony_settings.rbi +13 -0
  51. data/rbi/telnyx/models/pronunciation_dict_create_params.rbi +246 -0
  52. data/rbi/telnyx/models/pronunciation_dict_create_response.rbi +398 -0
  53. data/rbi/telnyx/models/pronunciation_dict_delete_params.rbi +38 -0
  54. data/rbi/telnyx/models/pronunciation_dict_list_params.rbi +57 -0
  55. data/rbi/telnyx/models/pronunciation_dict_list_response.rbi +353 -0
  56. data/rbi/telnyx/models/pronunciation_dict_retrieve_params.rbi +38 -0
  57. data/rbi/telnyx/models/pronunciation_dict_retrieve_response.rbi +398 -0
  58. data/rbi/telnyx/models/pronunciation_dict_update_params.rbi +268 -0
  59. data/rbi/telnyx/models/pronunciation_dict_update_response.rbi +398 -0
  60. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +3719 -1011
  61. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +1010 -0
  62. data/rbi/telnyx/models/texml_initiate_ai_call_response.rbi +58 -0
  63. data/rbi/telnyx/models/verification.rbi +1 -0
  64. data/rbi/telnyx/models/verification_trigger_whatsapp_verification_params.rbi +73 -0
  65. data/rbi/telnyx/models/verify_profile_create_params.rbi +85 -0
  66. data/rbi/telnyx/models/verify_profile_update_params.rbi +85 -0
  67. data/rbi/telnyx/models/whatsapp_message_content.rbi +492 -0
  68. data/rbi/telnyx/models/wireless_blocklist_update_params.rbi +6 -49
  69. data/rbi/telnyx/models.rbi +19 -10
  70. data/rbi/telnyx/resources/ai/assistants/versions.rbi +4 -0
  71. data/rbi/telnyx/resources/ai/assistants.rbi +6 -0
  72. data/rbi/telnyx/resources/pronunciation_dicts.rbi +131 -0
  73. data/rbi/telnyx/resources/texml/accounts/calls.rbi +7 -163
  74. data/rbi/telnyx/resources/texml.rbi +164 -0
  75. data/rbi/telnyx/resources/verifications.rbi +23 -0
  76. data/rbi/telnyx/resources/verify_profiles.rbi +4 -0
  77. data/rbi/telnyx/resources/wireless_blocklists.rbi +3 -3
  78. data/sig/telnyx/client.rbs +2 -0
  79. data/sig/telnyx/internal/util.rbs +4 -0
  80. data/sig/telnyx/models/ai/assistant_create_params.rbs +62 -0
  81. data/sig/telnyx/models/ai/assistant_tool.rbs +17 -4
  82. data/sig/telnyx/models/ai/assistant_update_params.rbs +62 -0
  83. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +62 -0
  84. data/sig/telnyx/models/ai/audio_transcribe_response.rbs +53 -3
  85. data/sig/telnyx/models/ai/inference_embedding.rbs +62 -0
  86. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  87. data/sig/telnyx/models/pronunciation_dict_create_params.rbs +97 -0
  88. data/sig/telnyx/models/pronunciation_dict_create_response.rbs +167 -0
  89. data/sig/telnyx/models/pronunciation_dict_delete_params.rbs +20 -0
  90. data/sig/telnyx/models/pronunciation_dict_list_params.rbs +32 -0
  91. data/sig/telnyx/models/pronunciation_dict_list_response.rbs +144 -0
  92. data/sig/telnyx/models/pronunciation_dict_retrieve_params.rbs +20 -0
  93. data/sig/telnyx/models/pronunciation_dict_retrieve_response.rbs +167 -0
  94. data/sig/telnyx/models/pronunciation_dict_update_params.rbs +108 -0
  95. data/sig/telnyx/models/pronunciation_dict_update_response.rbs +167 -0
  96. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +1368 -331
  97. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +444 -0
  98. data/sig/telnyx/models/texml_initiate_ai_call_response.rbs +38 -0
  99. data/sig/telnyx/models/verification.rbs +2 -1
  100. data/sig/telnyx/models/verification_trigger_whatsapp_verification_params.rbs +43 -0
  101. data/sig/telnyx/models/verify_profile_create_params.rbs +43 -1
  102. data/sig/telnyx/models/verify_profile_update_params.rbs +43 -1
  103. data/sig/telnyx/models/whatsapp_message_content.rbs +205 -0
  104. data/sig/telnyx/models/wireless_blocklist_update_params.rbs +5 -25
  105. data/sig/telnyx/models.rbs +14 -0
  106. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  107. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  108. data/sig/telnyx/resources/pronunciation_dicts.rbs +33 -0
  109. data/sig/telnyx/resources/texml/accounts/calls.rbs +1 -40
  110. data/sig/telnyx/resources/texml.rbs +44 -0
  111. data/sig/telnyx/resources/verifications.rbs +8 -0
  112. data/sig/telnyx/resources/verify_profiles.rbs +2 -0
  113. data/sig/telnyx/resources/wireless_blocklists.rbs +1 -1
  114. metadata +41 -2
@@ -14,558 +14,1904 @@ module Telnyx
14
14
  # @return [String]
15
15
  required :account_sid, String
16
16
 
17
- # @!attribute application_sid
18
- # The ID of the TeXML Application.
17
+ # @!attribute body
19
18
  #
20
- # @return [String]
21
- required :application_sid, String, api_name: :ApplicationSid
22
-
23
- # @!attribute from
24
- # The phone number of the party that initiated the call. Phone numbers are
25
- # formatted with a `+` and country code.
26
- #
27
- # @return [String]
28
- required :from, String, api_name: :From
29
-
30
- # @!attribute to
31
- # The phone number of the called party. Phone numbers are formatted with a `+` and
32
- # country code.
33
- #
34
- # @return [String]
35
- required :to, String, api_name: :To
36
-
37
- # @!attribute async_amd
38
- # Select whether to perform answering machine detection in the background. By
39
- # default execution is blocked until Answering Machine Detection is completed.
40
- #
41
- # @return [Boolean, nil]
42
- optional :async_amd, Telnyx::Internal::Type::Boolean, api_name: :AsyncAmd
43
-
44
- # @!attribute async_amd_status_callback
45
- # URL destination for Telnyx to send AMD callback events to for the call.
46
- #
47
- # @return [String, nil]
48
- optional :async_amd_status_callback, String, api_name: :AsyncAmdStatusCallback
49
-
50
- # @!attribute async_amd_status_callback_method
51
- # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
52
- # inherited from TeXML Application setting.
53
- #
54
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::AsyncAmdStatusCallbackMethod, nil]
55
- optional :async_amd_status_callback_method,
56
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::AsyncAmdStatusCallbackMethod },
57
- api_name: :AsyncAmdStatusCallbackMethod
58
-
59
- # @!attribute caller_id
60
- # To be used as the caller id name (SIP From Display Name) presented to the
61
- # destination (`To` number). The string should have a maximum of 128 characters,
62
- # containing only letters, numbers, spaces, and `-_~!.+` special characters. If
63
- # ommited, the display name will be the same as the number in the `From` field.
64
- #
65
- # @return [String, nil]
66
- optional :caller_id, String, api_name: :CallerId
67
-
68
- # @!attribute cancel_playback_on_detect_message_end
69
- # Whether to cancel ongoing playback on `greeting ended` detection. Defaults to
70
- # `true`.
71
- #
72
- # @return [Boolean, nil]
73
- optional :cancel_playback_on_detect_message_end,
74
- Telnyx::Internal::Type::Boolean,
75
- api_name: :CancelPlaybackOnDetectMessageEnd
76
-
77
- # @!attribute cancel_playback_on_machine_detection
78
- # Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
79
- #
80
- # @return [Boolean, nil]
81
- optional :cancel_playback_on_machine_detection,
82
- Telnyx::Internal::Type::Boolean,
83
- api_name: :CancelPlaybackOnMachineDetection
84
-
85
- # @!attribute custom_headers
86
- # Custom HTTP headers to be sent with the call. Each header should be an object
87
- # with 'name' and 'value' properties.
88
- #
89
- # @return [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::CustomHeader>, nil]
90
- optional :custom_headers,
91
- -> {
92
- Telnyx::Internal::Type::ArrayOf[Telnyx::Texml::Accounts::CallCallsParams::CustomHeader]
93
- },
94
- api_name: :CustomHeaders
95
-
96
- # @!attribute detection_mode
97
- # Allows you to chose between Premium and Standard detections.
98
- #
99
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::DetectionMode, nil]
100
- optional :detection_mode,
101
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::DetectionMode },
102
- api_name: :DetectionMode
103
-
104
- # @!attribute fallback_url
105
- # A failover URL for which Telnyx will retrieve the TeXML call instructions if the
106
- # `Url` is not responding.
107
- #
108
- # @return [String, nil]
109
- optional :fallback_url, String, api_name: :FallbackUrl
19
+ # @return [Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault]
20
+ required :body, union: -> { Telnyx::Texml::Accounts::CallCallsParams::Body }
110
21
 
111
- # @!attribute machine_detection
112
- # Enables Answering Machine Detection.
113
- #
114
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::MachineDetection, nil]
115
- optional :machine_detection,
116
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::MachineDetection },
117
- api_name: :MachineDetection
118
-
119
- # @!attribute machine_detection_silence_timeout
120
- # If initial silence duration is greater than this value, consider it a machine.
121
- # Ignored when `premium` detection is used.
122
- #
123
- # @return [Integer, nil]
124
- optional :machine_detection_silence_timeout, Integer, api_name: :MachineDetectionSilenceTimeout
125
-
126
- # @!attribute machine_detection_speech_end_threshold
127
- # Silence duration threshold after a greeting message or voice for it be
128
- # considered human. Ignored when `premium` detection is used.
129
- #
130
- # @return [Integer, nil]
131
- optional :machine_detection_speech_end_threshold,
132
- Integer,
133
- api_name: :MachineDetectionSpeechEndThreshold
134
-
135
- # @!attribute machine_detection_speech_threshold
136
- # Maximum threshold of a human greeting. If greeting longer than this value,
137
- # considered machine. Ignored when `premium` detection is used.
138
- #
139
- # @return [Integer, nil]
140
- optional :machine_detection_speech_threshold, Integer, api_name: :MachineDetectionSpeechThreshold
141
-
142
- # @!attribute machine_detection_timeout
143
- # Maximum timeout threshold in milliseconds for overall detection.
144
- #
145
- # @return [Integer, nil]
146
- optional :machine_detection_timeout, Integer, api_name: :MachineDetectionTimeout
147
-
148
- # @!attribute preferred_codecs
149
- # The list of comma-separated codecs to be offered on a call.
150
- #
151
- # @return [String, nil]
152
- optional :preferred_codecs, String, api_name: :PreferredCodecs
153
-
154
- # @!attribute record
155
- # Whether to record the entire participant's call leg. Defaults to `false`.
156
- #
157
- # @return [Boolean, nil]
158
- optional :record, Telnyx::Internal::Type::Boolean, api_name: :Record
159
-
160
- # @!attribute recording_channels
161
- # The number of channels in the final recording. Defaults to `mono`.
162
- #
163
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::RecordingChannels, nil]
164
- optional :recording_channels,
165
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::RecordingChannels },
166
- api_name: :RecordingChannels
167
-
168
- # @!attribute recording_status_callback
169
- # The URL the recording callbacks will be sent to.
170
- #
171
- # @return [String, nil]
172
- optional :recording_status_callback, String, api_name: :RecordingStatusCallback
173
-
174
- # @!attribute recording_status_callback_event
175
- # The changes to the recording's state that should generate a call to
176
- # `RecoridngStatusCallback`. Can be: `in-progress`, `completed` and `absent`.
177
- # Separate multiple values with a space. Defaults to `completed`.
178
- #
179
- # @return [String, nil]
180
- optional :recording_status_callback_event, String, api_name: :RecordingStatusCallbackEvent
181
-
182
- # @!attribute recording_status_callback_method
183
- # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
184
- #
185
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::RecordingStatusCallbackMethod, nil]
186
- optional :recording_status_callback_method,
187
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::RecordingStatusCallbackMethod },
188
- api_name: :RecordingStatusCallbackMethod
189
-
190
- # @!attribute recording_timeout
191
- # The number of seconds that Telnyx will wait for the recording to be stopped if
192
- # silence is detected. The timer only starts when the speech is detected. Please
193
- # note that the transcription is used to detect silence and the related charge
194
- # will be applied. The minimum value is 0. The default value is 0 (infinite)
195
- #
196
- # @return [Integer, nil]
197
- optional :recording_timeout, Integer, api_name: :RecordingTimeout
198
-
199
- # @!attribute recording_track
200
- # The audio track to record for the call. The default is `both`.
201
- #
202
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::RecordingTrack, nil]
203
- optional :recording_track,
204
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::RecordingTrack },
205
- api_name: :RecordingTrack
206
-
207
- # @!attribute send_recording_url
208
- # Whether to send RecordingUrl in webhooks.
209
- #
210
- # @return [Boolean, nil]
211
- optional :send_recording_url, Telnyx::Internal::Type::Boolean, api_name: :SendRecordingUrl
212
-
213
- # @!attribute sip_auth_password
214
- # The password to use for SIP authentication.
215
- #
216
- # @return [String, nil]
217
- optional :sip_auth_password, String, api_name: :SipAuthPassword
218
-
219
- # @!attribute sip_auth_username
220
- # The username to use for SIP authentication.
221
- #
222
- # @return [String, nil]
223
- optional :sip_auth_username, String, api_name: :SipAuthUsername
224
-
225
- # @!attribute sip_region
226
- # Defines the SIP region to be used for the call.
227
- #
228
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::SipRegion, nil]
229
- optional :sip_region,
230
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::SipRegion },
231
- api_name: :SipRegion
232
-
233
- # @!attribute status_callback
234
- # URL destination for Telnyx to send status callback events to for the call.
235
- #
236
- # @return [String, nil]
237
- optional :status_callback, String, api_name: :StatusCallback
238
-
239
- # @!attribute status_callback_event
240
- # The call events for which Telnyx should send a webhook. Multiple events can be
241
- # defined when separated by a space.
242
- #
243
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::StatusCallbackEvent, nil]
244
- optional :status_callback_event,
245
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::StatusCallbackEvent },
246
- api_name: :StatusCallbackEvent
247
-
248
- # @!attribute status_callback_method
249
- # HTTP request type used for `StatusCallback`.
250
- #
251
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::StatusCallbackMethod, nil]
252
- optional :status_callback_method,
253
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::StatusCallbackMethod },
254
- api_name: :StatusCallbackMethod
255
-
256
- # @!attribute supervise_call_sid
257
- # The call control ID of the existing call to supervise. When provided, the
258
- # created leg will be added to the specified call in supervising mode. Status
259
- # callbacks and action callbacks will NOT be sent for the supervising leg.
260
- #
261
- # @return [String, nil]
262
- optional :supervise_call_sid, String, api_name: :SuperviseCallSid
263
-
264
- # @!attribute supervising_role
265
- # The supervising role for the new leg. Determines the audio behavior: barge (hear
266
- # both sides), whisper (only hear supervisor), monitor (hear both sides but
267
- # supervisor muted). Default: barge
268
- #
269
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::SupervisingRole, nil]
270
- optional :supervising_role,
271
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::SupervisingRole },
272
- api_name: :SupervisingRole
273
-
274
- # @!attribute texml
275
- # TeXML to be used as instructions for the call. If provided, the call will
276
- # execute these instructions instead of fetching from the Url.
277
- #
278
- # @return [String, nil]
279
- optional :texml, String, api_name: :Texml
280
-
281
- # @!attribute time_limit
282
- # The maximum duration of the call in seconds. The minimum value is 30 and the
283
- # maximum value is 14400 (4 hours). Default is 14400 seconds.
284
- #
285
- # @return [Integer, nil]
286
- optional :time_limit, Integer, api_name: :TimeLimit
287
-
288
- # @!attribute timeout_seconds
289
- # The number of seconds to wait for the called party to answer the call before the
290
- # call is canceled. The minimum value is 5 and the maximum value is 120. Default
291
- # is 30 seconds.
292
- #
293
- # @return [Integer, nil]
294
- optional :timeout_seconds, Integer, api_name: :Timeout
295
-
296
- # @!attribute trim
297
- # Whether to trim any leading and trailing silence from the recording. Defaults to
298
- # `trim-silence`.
299
- #
300
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Trim, nil]
301
- optional :trim, enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Trim }, api_name: :Trim
302
-
303
- # @!attribute url
304
- # The URL from which Telnyx will retrieve the TeXML call instructions.
305
- #
306
- # @return [String, nil]
307
- optional :url, String, api_name: :Url
308
-
309
- # @!attribute url_method
310
- # HTTP request type used for `Url`. The default value is inherited from TeXML
311
- # Application setting.
312
- #
313
- # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::URLMethod, nil]
314
- optional :url_method,
315
- enum: -> { Telnyx::Texml::Accounts::CallCallsParams::URLMethod },
316
- api_name: :UrlMethod
317
-
318
- # @!method initialize(account_sid:, application_sid:, from:, to:, async_amd: nil, async_amd_status_callback: nil, async_amd_status_callback_method: nil, caller_id: nil, cancel_playback_on_detect_message_end: nil, cancel_playback_on_machine_detection: nil, custom_headers: nil, detection_mode: nil, fallback_url: nil, machine_detection: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_timeout: nil, recording_track: nil, send_recording_url: nil, sip_auth_password: nil, sip_auth_username: nil, sip_region: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, supervise_call_sid: nil, supervising_role: nil, texml: nil, time_limit: nil, timeout_seconds: nil, trim: nil, url: nil, url_method: nil, request_options: {})
319
- # Some parameter documentations has been truncated, see
320
- # {Telnyx::Models::Texml::Accounts::CallCallsParams} for more details.
321
- #
22
+ # @!method initialize(account_sid:, body:, request_options: {})
322
23
  # @param account_sid [String]
323
- #
324
- # @param application_sid [String] The ID of the TeXML Application.
325
- #
326
- # @param from [String] The phone number of the party that initiated the call. Phone numbers are formatt
327
- #
328
- # @param to [String] The phone number of the called party. Phone numbers are formatted with a `+` and
329
- #
330
- # @param async_amd [Boolean] Select whether to perform answering machine detection in the background. By defa
331
- #
332
- # @param async_amd_status_callback [String] URL destination for Telnyx to send AMD callback events to for the call.
333
- #
334
- # @param async_amd_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::AsyncAmdStatusCallbackMethod] HTTP request type used for `AsyncAmdStatusCallback`. The default value is inheri
335
- #
336
- # @param caller_id [String] To be used as the caller id name (SIP From Display Name) presented to the destin
337
- #
338
- # @param cancel_playback_on_detect_message_end [Boolean] Whether to cancel ongoing playback on `greeting ended` detection. Defaults to `t
339
- #
340
- # @param cancel_playback_on_machine_detection [Boolean] Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
341
- #
342
- # @param custom_headers [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::CustomHeader>] Custom HTTP headers to be sent with the call. Each header should be an object wi
343
- #
344
- # @param detection_mode [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::DetectionMode] Allows you to chose between Premium and Standard detections.
345
- #
346
- # @param fallback_url [String] A failover URL for which Telnyx will retrieve the TeXML call instructions if the
347
- #
348
- # @param machine_detection [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::MachineDetection] Enables Answering Machine Detection.
349
- #
350
- # @param machine_detection_silence_timeout [Integer] If initial silence duration is greater than this value, consider it a machine. I
351
- #
352
- # @param machine_detection_speech_end_threshold [Integer] Silence duration threshold after a greeting message or voice for it be considere
353
- #
354
- # @param machine_detection_speech_threshold [Integer] Maximum threshold of a human greeting. If greeting longer than this value, consi
355
- #
356
- # @param machine_detection_timeout [Integer] Maximum timeout threshold in milliseconds for overall detection.
357
- #
358
- # @param preferred_codecs [String] The list of comma-separated codecs to be offered on a call.
359
- #
360
- # @param record [Boolean] Whether to record the entire participant's call leg. Defaults to `false`.
361
- #
362
- # @param recording_channels [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::RecordingChannels] The number of channels in the final recording. Defaults to `mono`.
363
- #
364
- # @param recording_status_callback [String] The URL the recording callbacks will be sent to.
365
- #
366
- # @param recording_status_callback_event [String] The changes to the recording's state that should generate a call to `RecoridngSt
367
- #
368
- # @param recording_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::RecordingStatusCallbackMethod] HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
369
- #
370
- # @param recording_timeout [Integer] The number of seconds that Telnyx will wait for the recording to be stopped if s
371
- #
372
- # @param recording_track [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::RecordingTrack] The audio track to record for the call. The default is `both`.
373
- #
374
- # @param send_recording_url [Boolean] Whether to send RecordingUrl in webhooks.
375
- #
376
- # @param sip_auth_password [String] The password to use for SIP authentication.
377
- #
378
- # @param sip_auth_username [String] The username to use for SIP authentication.
379
- #
380
- # @param sip_region [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::SipRegion] Defines the SIP region to be used for the call.
381
- #
382
- # @param status_callback [String] URL destination for Telnyx to send status callback events to for the call.
383
- #
384
- # @param status_callback_event [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::StatusCallbackEvent] The call events for which Telnyx should send a webhook. Multiple events can be d
385
- #
386
- # @param status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::StatusCallbackMethod] HTTP request type used for `StatusCallback`.
387
- #
388
- # @param supervise_call_sid [String] The call control ID of the existing call to supervise. When provided, the create
389
- #
390
- # @param supervising_role [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::SupervisingRole] The supervising role for the new leg. Determines the audio behavior: barge (hear
391
- #
392
- # @param texml [String] TeXML to be used as instructions for the call. If provided, the call will execut
393
- #
394
- # @param time_limit [Integer] The maximum duration of the call in seconds. The minimum value is 30 and the max
395
- #
396
- # @param timeout_seconds [Integer] The number of seconds to wait for the called party to answer the call before the
397
- #
398
- # @param trim [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Trim] Whether to trim any leading and trailing silence from the recording. Defaults to
399
- #
400
- # @param url [String] The URL from which Telnyx will retrieve the TeXML call instructions.
401
- #
402
- # @param url_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::URLMethod] HTTP request type used for `Url`. The default value is inherited from TeXML Appl
403
- #
24
+ # @param body [Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault]
404
25
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
405
26
 
406
- # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
407
- # inherited from TeXML Application setting.
408
- module AsyncAmdStatusCallbackMethod
409
- extend Telnyx::Internal::Type::Enum
410
-
411
- GET = :GET
412
- POST = :POST
413
-
414
- # @!method self.values
415
- # @return [Array<Symbol>]
416
- end
417
-
418
- class CustomHeader < Telnyx::Internal::Type::BaseModel
419
- # @!attribute name
420
- # The name of the custom header
421
- #
422
- # @return [String]
423
- required :name, String
424
-
425
- # @!attribute value
426
- # The value of the custom header
427
- #
428
- # @return [String]
429
- required :value, String
430
-
431
- # @!method initialize(name:, value:)
432
- # @param name [String] The name of the custom header
433
- #
434
- # @param value [String] The value of the custom header
435
- end
436
-
437
- # Allows you to chose between Premium and Standard detections.
438
- module DetectionMode
439
- extend Telnyx::Internal::Type::Enum
440
-
441
- PREMIUM = :Premium
442
- REGULAR = :Regular
443
-
444
- # @!method self.values
445
- # @return [Array<Symbol>]
446
- end
447
-
448
- # Enables Answering Machine Detection.
449
- module MachineDetection
450
- extend Telnyx::Internal::Type::Enum
451
-
452
- ENABLE = :Enable
453
- DISABLE = :Disable
454
- DETECT_MESSAGE_END = :DetectMessageEnd
455
-
456
- # @!method self.values
457
- # @return [Array<Symbol>]
458
- end
459
-
460
- # The number of channels in the final recording. Defaults to `mono`.
461
- module RecordingChannels
462
- extend Telnyx::Internal::Type::Enum
463
-
464
- MONO = :mono
465
- DUAL = :dual
466
-
467
- # @!method self.values
468
- # @return [Array<Symbol>]
469
- end
470
-
471
- # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
472
- module RecordingStatusCallbackMethod
473
- extend Telnyx::Internal::Type::Enum
474
-
475
- GET = :GET
476
- POST = :POST
477
-
478
- # @!method self.values
479
- # @return [Array<Symbol>]
480
- end
481
-
482
- # The audio track to record for the call. The default is `both`.
483
- module RecordingTrack
484
- extend Telnyx::Internal::Type::Enum
485
-
486
- INBOUND = :inbound
487
- OUTBOUND = :outbound
488
- BOTH = :both
489
-
490
- # @!method self.values
491
- # @return [Array<Symbol>]
492
- end
493
-
494
- # Defines the SIP region to be used for the call.
495
- module SipRegion
496
- extend Telnyx::Internal::Type::Enum
497
-
498
- US = :US
499
- EUROPE = :Europe
500
- CANADA = :Canada
501
- AUSTRALIA = :Australia
502
- MIDDLE_EAST = :"Middle East"
503
-
504
- # @!method self.values
505
- # @return [Array<Symbol>]
506
- end
507
-
508
- # The call events for which Telnyx should send a webhook. Multiple events can be
509
- # defined when separated by a space.
510
- module StatusCallbackEvent
511
- extend Telnyx::Internal::Type::Enum
512
-
513
- INITIATED = :initiated
514
- RINGING = :ringing
515
- ANSWERED = :answered
516
- COMPLETED = :completed
517
-
518
- # @!method self.values
519
- # @return [Array<Symbol>]
520
- end
521
-
522
- # HTTP request type used for `StatusCallback`.
523
- module StatusCallbackMethod
524
- extend Telnyx::Internal::Type::Enum
525
-
526
- GET = :GET
527
- POST = :POST
528
-
529
- # @!method self.values
530
- # @return [Array<Symbol>]
531
- end
532
-
533
- # The supervising role for the new leg. Determines the audio behavior: barge (hear
534
- # both sides), whisper (only hear supervisor), monitor (hear both sides but
535
- # supervisor muted). Default: barge
536
- module SupervisingRole
537
- extend Telnyx::Internal::Type::Enum
538
-
539
- BARGE = :barge
540
- WHISPER = :whisper
541
- MONITOR = :monitor
542
-
543
- # @!method self.values
544
- # @return [Array<Symbol>]
545
- end
546
-
547
- # Whether to trim any leading and trailing silence from the recording. Defaults to
548
- # `trim-silence`.
549
- module Trim
550
- extend Telnyx::Internal::Type::Enum
551
-
552
- TRIM_SILENCE = :"trim-silence"
553
- DO_NOT_TRIM = :"do-not-trim"
554
-
555
- # @!method self.values
556
- # @return [Array<Symbol>]
557
- end
558
-
559
- # HTTP request type used for `Url`. The default value is inherited from TeXML
560
- # Application setting.
561
- module URLMethod
562
- extend Telnyx::Internal::Type::Enum
563
-
564
- GET = :GET
565
- POST = :POST
566
-
567
- # @!method self.values
568
- # @return [Array<Symbol>]
27
+ module Body
28
+ extend Telnyx::Internal::Type::Union
29
+
30
+ variant -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL }
31
+
32
+ variant -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml }
33
+
34
+ variant -> { Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault }
35
+
36
+ class WithURL < Telnyx::Internal::Type::BaseModel
37
+ # @!attribute url
38
+ # The URL from which Telnyx will retrieve the TeXML call instructions.
39
+ #
40
+ # @return [String]
41
+ required :url, String, api_name: :Url
42
+
43
+ # @!attribute application_sid
44
+ # The ID of the TeXML Application.
45
+ #
46
+ # @return [String, nil]
47
+ optional :application_sid, String, api_name: :ApplicationSid
48
+
49
+ # @!attribute async_amd
50
+ # Select whether to perform answering machine detection in the background. By
51
+ # default execution is blocked until Answering Machine Detection is completed.
52
+ #
53
+ # @return [Boolean, nil]
54
+ optional :async_amd, Telnyx::Internal::Type::Boolean, api_name: :AsyncAmd
55
+
56
+ # @!attribute async_amd_status_callback
57
+ # URL destination for Telnyx to send AMD callback events to for the call.
58
+ #
59
+ # @return [String, nil]
60
+ optional :async_amd_status_callback, String, api_name: :AsyncAmdStatusCallback
61
+
62
+ # @!attribute async_amd_status_callback_method
63
+ # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
64
+ # inherited from TeXML Application setting.
65
+ #
66
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::AsyncAmdStatusCallbackMethod, nil]
67
+ optional :async_amd_status_callback_method,
68
+ enum: -> {
69
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::AsyncAmdStatusCallbackMethod
70
+ },
71
+ api_name: :AsyncAmdStatusCallbackMethod
72
+
73
+ # @!attribute caller_id
74
+ # To be used as the caller id name (SIP From Display Name) presented to the
75
+ # destination (`To` number). The string should have a maximum of 128 characters,
76
+ # containing only letters, numbers, spaces, and `-_~!.+` special characters. If
77
+ # ommited, the display name will be the same as the number in the `From` field.
78
+ #
79
+ # @return [String, nil]
80
+ optional :caller_id, String, api_name: :CallerId
81
+
82
+ # @!attribute cancel_playback_on_detect_message_end
83
+ # Whether to cancel ongoing playback on `greeting ended` detection. Defaults to
84
+ # `true`.
85
+ #
86
+ # @return [Boolean, nil]
87
+ optional :cancel_playback_on_detect_message_end,
88
+ Telnyx::Internal::Type::Boolean,
89
+ api_name: :CancelPlaybackOnDetectMessageEnd
90
+
91
+ # @!attribute cancel_playback_on_machine_detection
92
+ # Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
93
+ #
94
+ # @return [Boolean, nil]
95
+ optional :cancel_playback_on_machine_detection,
96
+ Telnyx::Internal::Type::Boolean,
97
+ api_name: :CancelPlaybackOnMachineDetection
98
+
99
+ # @!attribute custom_headers
100
+ # Custom HTTP headers to be sent with the call. Each header should be an object
101
+ # with 'name' and 'value' properties.
102
+ #
103
+ # @return [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::CustomHeader>, nil]
104
+ optional :custom_headers,
105
+ -> {
106
+ Telnyx::Internal::Type::ArrayOf[Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::CustomHeader]
107
+ },
108
+ api_name: :CustomHeaders
109
+
110
+ # @!attribute detection_mode
111
+ # Allows you to chose between Premium and Standard detections.
112
+ #
113
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::DetectionMode, nil]
114
+ optional :detection_mode,
115
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::DetectionMode },
116
+ api_name: :DetectionMode
117
+
118
+ # @!attribute fallback_url
119
+ # A failover URL for which Telnyx will retrieve the TeXML call instructions if the
120
+ # `Url` is not responding.
121
+ #
122
+ # @return [String, nil]
123
+ optional :fallback_url, String, api_name: :FallbackUrl
124
+
125
+ # @!attribute from
126
+ # The phone number of the party that initiated the call. Phone numbers are
127
+ # formatted with a `+` and country code.
128
+ #
129
+ # @return [String, nil]
130
+ optional :from, String, api_name: :From
131
+
132
+ # @!attribute machine_detection
133
+ # Enables Answering Machine Detection.
134
+ #
135
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::MachineDetection, nil]
136
+ optional :machine_detection,
137
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::MachineDetection },
138
+ api_name: :MachineDetection
139
+
140
+ # @!attribute machine_detection_silence_timeout
141
+ # If initial silence duration is greater than this value, consider it a machine.
142
+ # Ignored when `premium` detection is used.
143
+ #
144
+ # @return [Integer, nil]
145
+ optional :machine_detection_silence_timeout, Integer, api_name: :MachineDetectionSilenceTimeout
146
+
147
+ # @!attribute machine_detection_speech_end_threshold
148
+ # Silence duration threshold after a greeting message or voice for it be
149
+ # considered human. Ignored when `premium` detection is used.
150
+ #
151
+ # @return [Integer, nil]
152
+ optional :machine_detection_speech_end_threshold,
153
+ Integer,
154
+ api_name: :MachineDetectionSpeechEndThreshold
155
+
156
+ # @!attribute machine_detection_speech_threshold
157
+ # Maximum threshold of a human greeting. If greeting longer than this value,
158
+ # considered machine. Ignored when `premium` detection is used.
159
+ #
160
+ # @return [Integer, nil]
161
+ optional :machine_detection_speech_threshold,
162
+ Integer,
163
+ api_name: :MachineDetectionSpeechThreshold
164
+
165
+ # @!attribute machine_detection_timeout
166
+ # Maximum timeout threshold in milliseconds for overall detection.
167
+ #
168
+ # @return [Integer, nil]
169
+ optional :machine_detection_timeout, Integer, api_name: :MachineDetectionTimeout
170
+
171
+ # @!attribute media_encryption
172
+ # Defines whether media should be encrypted on the call. When set to `SRTP`, the
173
+ # call will use Secure Real-time Transport Protocol for media encryption. When set
174
+ # to `DTLS`, the call will use DTLS for media encryption. Only supported for SIP
175
+ # destinations.
176
+ #
177
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::MediaEncryption, nil]
178
+ optional :media_encryption,
179
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::MediaEncryption },
180
+ api_name: :MediaEncryption
181
+
182
+ # @!attribute preferred_codecs
183
+ # The list of comma-separated codecs to be offered on a call.
184
+ #
185
+ # @return [String, nil]
186
+ optional :preferred_codecs, String, api_name: :PreferredCodecs
187
+
188
+ # @!attribute record
189
+ # Whether to record the entire participant's call leg. Defaults to `false`.
190
+ #
191
+ # @return [Boolean, nil]
192
+ optional :record, Telnyx::Internal::Type::Boolean, api_name: :Record
193
+
194
+ # @!attribute recording_channels
195
+ # The number of channels in the final recording. Defaults to `mono`.
196
+ #
197
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingChannels, nil]
198
+ optional :recording_channels,
199
+ enum: -> {
200
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingChannels
201
+ },
202
+ api_name: :RecordingChannels
203
+
204
+ # @!attribute recording_status_callback
205
+ # The URL the recording callbacks will be sent to.
206
+ #
207
+ # @return [String, nil]
208
+ optional :recording_status_callback, String, api_name: :RecordingStatusCallback
209
+
210
+ # @!attribute recording_status_callback_event
211
+ # The changes to the recording's state that should generate a call to
212
+ # `RecoridngStatusCallback`. Can be: `in-progress`, `completed` and `absent`.
213
+ # Separate multiple values with a space. Defaults to `completed`.
214
+ #
215
+ # @return [String, nil]
216
+ optional :recording_status_callback_event, String, api_name: :RecordingStatusCallbackEvent
217
+
218
+ # @!attribute recording_status_callback_method
219
+ # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
220
+ #
221
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingStatusCallbackMethod, nil]
222
+ optional :recording_status_callback_method,
223
+ enum: -> {
224
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingStatusCallbackMethod
225
+ },
226
+ api_name: :RecordingStatusCallbackMethod
227
+
228
+ # @!attribute recording_timeout
229
+ # The number of seconds that Telnyx will wait for the recording to be stopped if
230
+ # silence is detected. The timer only starts when the speech is detected. Please
231
+ # note that the transcription is used to detect silence and the related charge
232
+ # will be applied. The minimum value is 0. The default value is 0 (infinite)
233
+ #
234
+ # @return [Integer, nil]
235
+ optional :recording_timeout, Integer, api_name: :RecordingTimeout
236
+
237
+ # @!attribute recording_track
238
+ # The audio track to record for the call. The default is `both`.
239
+ #
240
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingTrack, nil]
241
+ optional :recording_track,
242
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingTrack },
243
+ api_name: :RecordingTrack
244
+
245
+ # @!attribute send_recording_url
246
+ # Whether to send RecordingUrl in webhooks.
247
+ #
248
+ # @return [Boolean, nil]
249
+ optional :send_recording_url, Telnyx::Internal::Type::Boolean, api_name: :SendRecordingUrl
250
+
251
+ # @!attribute sip_auth_password
252
+ # The password to use for SIP authentication.
253
+ #
254
+ # @return [String, nil]
255
+ optional :sip_auth_password, String, api_name: :SipAuthPassword
256
+
257
+ # @!attribute sip_auth_username
258
+ # The username to use for SIP authentication.
259
+ #
260
+ # @return [String, nil]
261
+ optional :sip_auth_username, String, api_name: :SipAuthUsername
262
+
263
+ # @!attribute sip_region
264
+ # Defines the SIP region to be used for the call.
265
+ #
266
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::SipRegion, nil]
267
+ optional :sip_region,
268
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::SipRegion },
269
+ api_name: :SipRegion
270
+
271
+ # @!attribute status_callback
272
+ # URL destination for Telnyx to send status callback events to for the call.
273
+ #
274
+ # @return [String, nil]
275
+ optional :status_callback, String, api_name: :StatusCallback
276
+
277
+ # @!attribute status_callback_event
278
+ # The call events for which Telnyx should send a webhook. Multiple events can be
279
+ # defined when separated by a space.
280
+ #
281
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::StatusCallbackEvent, nil]
282
+ optional :status_callback_event,
283
+ enum: -> {
284
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::StatusCallbackEvent
285
+ },
286
+ api_name: :StatusCallbackEvent
287
+
288
+ # @!attribute status_callback_method
289
+ # HTTP request type used for `StatusCallback`.
290
+ #
291
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::StatusCallbackMethod, nil]
292
+ optional :status_callback_method,
293
+ enum: -> {
294
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::StatusCallbackMethod
295
+ },
296
+ api_name: :StatusCallbackMethod
297
+
298
+ # @!attribute supervise_call_sid
299
+ # The call control ID of the existing call to supervise. When provided, the
300
+ # created leg will be added to the specified call in supervising mode. Status
301
+ # callbacks and action callbacks will NOT be sent for the supervising leg.
302
+ #
303
+ # @return [String, nil]
304
+ optional :supervise_call_sid, String, api_name: :SuperviseCallSid
305
+
306
+ # @!attribute supervising_role
307
+ # The supervising role for the new leg. Determines the audio behavior: barge (hear
308
+ # both sides), whisper (only hear supervisor), monitor (hear both sides but
309
+ # supervisor muted). Default: barge
310
+ #
311
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::SupervisingRole, nil]
312
+ optional :supervising_role,
313
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::SupervisingRole },
314
+ api_name: :SupervisingRole
315
+
316
+ # @!attribute texml
317
+ #
318
+ # @return [Object, nil]
319
+ optional :texml, Telnyx::Internal::Type::Unknown, api_name: :Texml
320
+
321
+ # @!attribute time_limit
322
+ # The maximum duration of the call in seconds. The minimum value is 30 and the
323
+ # maximum value is 14400 (4 hours). Default is 14400 seconds.
324
+ #
325
+ # @return [Integer, nil]
326
+ optional :time_limit, Integer, api_name: :TimeLimit
327
+
328
+ # @!attribute timeout
329
+ # The number of seconds to wait for the called party to answer the call before the
330
+ # call is canceled. The minimum value is 5 and the maximum value is 120. Default
331
+ # is 30 seconds.
332
+ #
333
+ # @return [Integer, nil]
334
+ optional :timeout, Integer, api_name: :Timeout
335
+
336
+ # @!attribute to
337
+ # The phone number of the called party. Phone numbers are formatted with a `+` and
338
+ # country code.
339
+ #
340
+ # @return [String, nil]
341
+ optional :to, String, api_name: :To
342
+
343
+ # @!attribute trim
344
+ # Whether to trim any leading and trailing silence from the recording. Defaults to
345
+ # `trim-silence`.
346
+ #
347
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::Trim, nil]
348
+ optional :trim,
349
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::Trim },
350
+ api_name: :Trim
351
+
352
+ # @!attribute url_method
353
+ # HTTP request type used for `Url`. The default value is inherited from TeXML
354
+ # Application setting.
355
+ #
356
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::URLMethod, nil]
357
+ optional :url_method,
358
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithURL::URLMethod },
359
+ api_name: :UrlMethod
360
+
361
+ # @!method initialize(url:, application_sid: nil, async_amd: nil, async_amd_status_callback: nil, async_amd_status_callback_method: nil, caller_id: nil, cancel_playback_on_detect_message_end: nil, cancel_playback_on_machine_detection: nil, custom_headers: nil, detection_mode: nil, fallback_url: nil, from: nil, machine_detection: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, media_encryption: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_timeout: nil, recording_track: nil, send_recording_url: nil, sip_auth_password: nil, sip_auth_username: nil, sip_region: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, supervise_call_sid: nil, supervising_role: nil, texml: nil, time_limit: nil, timeout: nil, to: nil, trim: nil, url_method: nil)
362
+ # Some parameter documentations has been truncated, see
363
+ # {Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL} for more
364
+ # details.
365
+ #
366
+ # @param url [String] The URL from which Telnyx will retrieve the TeXML call instructions.
367
+ #
368
+ # @param application_sid [String] The ID of the TeXML Application.
369
+ #
370
+ # @param async_amd [Boolean] Select whether to perform answering machine detection in the background. By defa
371
+ #
372
+ # @param async_amd_status_callback [String] URL destination for Telnyx to send AMD callback events to for the call.
373
+ #
374
+ # @param async_amd_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::AsyncAmdStatusCallbackMethod] HTTP request type used for `AsyncAmdStatusCallback`. The default value is inheri
375
+ #
376
+ # @param caller_id [String] To be used as the caller id name (SIP From Display Name) presented to the destin
377
+ #
378
+ # @param cancel_playback_on_detect_message_end [Boolean] Whether to cancel ongoing playback on `greeting ended` detection. Defaults to `t
379
+ #
380
+ # @param cancel_playback_on_machine_detection [Boolean] Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
381
+ #
382
+ # @param custom_headers [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::CustomHeader>] Custom HTTP headers to be sent with the call. Each header should be an object wi
383
+ #
384
+ # @param detection_mode [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::DetectionMode] Allows you to chose between Premium and Standard detections.
385
+ #
386
+ # @param fallback_url [String] A failover URL for which Telnyx will retrieve the TeXML call instructions if the
387
+ #
388
+ # @param from [String] The phone number of the party that initiated the call. Phone numbers are formatt
389
+ #
390
+ # @param machine_detection [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::MachineDetection] Enables Answering Machine Detection.
391
+ #
392
+ # @param machine_detection_silence_timeout [Integer] If initial silence duration is greater than this value, consider it a machine. I
393
+ #
394
+ # @param machine_detection_speech_end_threshold [Integer] Silence duration threshold after a greeting message or voice for it be considere
395
+ #
396
+ # @param machine_detection_speech_threshold [Integer] Maximum threshold of a human greeting. If greeting longer than this value, consi
397
+ #
398
+ # @param machine_detection_timeout [Integer] Maximum timeout threshold in milliseconds for overall detection.
399
+ #
400
+ # @param media_encryption [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::MediaEncryption] Defines whether media should be encrypted on the call. When set to `SRTP`, the c
401
+ #
402
+ # @param preferred_codecs [String] The list of comma-separated codecs to be offered on a call.
403
+ #
404
+ # @param record [Boolean] Whether to record the entire participant's call leg. Defaults to `false`.
405
+ #
406
+ # @param recording_channels [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingChannels] The number of channels in the final recording. Defaults to `mono`.
407
+ #
408
+ # @param recording_status_callback [String] The URL the recording callbacks will be sent to.
409
+ #
410
+ # @param recording_status_callback_event [String] The changes to the recording's state that should generate a call to `RecoridngSt
411
+ #
412
+ # @param recording_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingStatusCallbackMethod] HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
413
+ #
414
+ # @param recording_timeout [Integer] The number of seconds that Telnyx will wait for the recording to be stopped if s
415
+ #
416
+ # @param recording_track [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::RecordingTrack] The audio track to record for the call. The default is `both`.
417
+ #
418
+ # @param send_recording_url [Boolean] Whether to send RecordingUrl in webhooks.
419
+ #
420
+ # @param sip_auth_password [String] The password to use for SIP authentication.
421
+ #
422
+ # @param sip_auth_username [String] The username to use for SIP authentication.
423
+ #
424
+ # @param sip_region [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::SipRegion] Defines the SIP region to be used for the call.
425
+ #
426
+ # @param status_callback [String] URL destination for Telnyx to send status callback events to for the call.
427
+ #
428
+ # @param status_callback_event [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::StatusCallbackEvent] The call events for which Telnyx should send a webhook. Multiple events can be d
429
+ #
430
+ # @param status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::StatusCallbackMethod] HTTP request type used for `StatusCallback`.
431
+ #
432
+ # @param supervise_call_sid [String] The call control ID of the existing call to supervise. When provided, the create
433
+ #
434
+ # @param supervising_role [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::SupervisingRole] The supervising role for the new leg. Determines the audio behavior: barge (hear
435
+ #
436
+ # @param texml [Object]
437
+ #
438
+ # @param time_limit [Integer] The maximum duration of the call in seconds. The minimum value is 30 and the max
439
+ #
440
+ # @param timeout [Integer] The number of seconds to wait for the called party to answer the call before the
441
+ #
442
+ # @param to [String] The phone number of the called party. Phone numbers are formatted with a `+` and
443
+ #
444
+ # @param trim [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::Trim] Whether to trim any leading and trailing silence from the recording. Defaults to
445
+ #
446
+ # @param url_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL::URLMethod] HTTP request type used for `Url`. The default value is inherited from TeXML Appl
447
+
448
+ # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
449
+ # inherited from TeXML Application setting.
450
+ #
451
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#async_amd_status_callback_method
452
+ module AsyncAmdStatusCallbackMethod
453
+ extend Telnyx::Internal::Type::Enum
454
+
455
+ GET = :GET
456
+ POST = :POST
457
+
458
+ # @!method self.values
459
+ # @return [Array<Symbol>]
460
+ end
461
+
462
+ class CustomHeader < Telnyx::Internal::Type::BaseModel
463
+ # @!attribute name
464
+ # The name of the custom header
465
+ #
466
+ # @return [String]
467
+ required :name, String
468
+
469
+ # @!attribute value
470
+ # The value of the custom header
471
+ #
472
+ # @return [String]
473
+ required :value, String
474
+
475
+ # @!method initialize(name:, value:)
476
+ # @param name [String] The name of the custom header
477
+ #
478
+ # @param value [String] The value of the custom header
479
+ end
480
+
481
+ # Allows you to chose between Premium and Standard detections.
482
+ #
483
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#detection_mode
484
+ module DetectionMode
485
+ extend Telnyx::Internal::Type::Enum
486
+
487
+ PREMIUM = :Premium
488
+ REGULAR = :Regular
489
+
490
+ # @!method self.values
491
+ # @return [Array<Symbol>]
492
+ end
493
+
494
+ # Enables Answering Machine Detection.
495
+ #
496
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#machine_detection
497
+ module MachineDetection
498
+ extend Telnyx::Internal::Type::Enum
499
+
500
+ ENABLE = :Enable
501
+ DISABLE = :Disable
502
+ DETECT_MESSAGE_END = :DetectMessageEnd
503
+
504
+ # @!method self.values
505
+ # @return [Array<Symbol>]
506
+ end
507
+
508
+ # Defines whether media should be encrypted on the call. When set to `SRTP`, the
509
+ # call will use Secure Real-time Transport Protocol for media encryption. When set
510
+ # to `DTLS`, the call will use DTLS for media encryption. Only supported for SIP
511
+ # destinations.
512
+ #
513
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#media_encryption
514
+ module MediaEncryption
515
+ extend Telnyx::Internal::Type::Enum
516
+
517
+ DISABLED = :disabled
518
+ SRTP = :SRTP
519
+ DTLS = :DTLS
520
+
521
+ # @!method self.values
522
+ # @return [Array<Symbol>]
523
+ end
524
+
525
+ # The number of channels in the final recording. Defaults to `mono`.
526
+ #
527
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#recording_channels
528
+ module RecordingChannels
529
+ extend Telnyx::Internal::Type::Enum
530
+
531
+ MONO = :mono
532
+ DUAL = :dual
533
+
534
+ # @!method self.values
535
+ # @return [Array<Symbol>]
536
+ end
537
+
538
+ # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
539
+ #
540
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#recording_status_callback_method
541
+ module RecordingStatusCallbackMethod
542
+ extend Telnyx::Internal::Type::Enum
543
+
544
+ GET = :GET
545
+ POST = :POST
546
+
547
+ # @!method self.values
548
+ # @return [Array<Symbol>]
549
+ end
550
+
551
+ # The audio track to record for the call. The default is `both`.
552
+ #
553
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#recording_track
554
+ module RecordingTrack
555
+ extend Telnyx::Internal::Type::Enum
556
+
557
+ INBOUND = :inbound
558
+ OUTBOUND = :outbound
559
+ BOTH = :both
560
+
561
+ # @!method self.values
562
+ # @return [Array<Symbol>]
563
+ end
564
+
565
+ # Defines the SIP region to be used for the call.
566
+ #
567
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#sip_region
568
+ module SipRegion
569
+ extend Telnyx::Internal::Type::Enum
570
+
571
+ US = :US
572
+ EUROPE = :Europe
573
+ CANADA = :Canada
574
+ AUSTRALIA = :Australia
575
+ MIDDLE_EAST = :"Middle East"
576
+
577
+ # @!method self.values
578
+ # @return [Array<Symbol>]
579
+ end
580
+
581
+ # The call events for which Telnyx should send a webhook. Multiple events can be
582
+ # defined when separated by a space.
583
+ #
584
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#status_callback_event
585
+ module StatusCallbackEvent
586
+ extend Telnyx::Internal::Type::Enum
587
+
588
+ INITIATED = :initiated
589
+ RINGING = :ringing
590
+ ANSWERED = :answered
591
+ COMPLETED = :completed
592
+
593
+ # @!method self.values
594
+ # @return [Array<Symbol>]
595
+ end
596
+
597
+ # HTTP request type used for `StatusCallback`.
598
+ #
599
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#status_callback_method
600
+ module StatusCallbackMethod
601
+ extend Telnyx::Internal::Type::Enum
602
+
603
+ GET = :GET
604
+ POST = :POST
605
+
606
+ # @!method self.values
607
+ # @return [Array<Symbol>]
608
+ end
609
+
610
+ # The supervising role for the new leg. Determines the audio behavior: barge (hear
611
+ # both sides), whisper (only hear supervisor), monitor (hear both sides but
612
+ # supervisor muted). Default: barge
613
+ #
614
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#supervising_role
615
+ module SupervisingRole
616
+ extend Telnyx::Internal::Type::Enum
617
+
618
+ BARGE = :barge
619
+ WHISPER = :whisper
620
+ MONITOR = :monitor
621
+
622
+ # @!method self.values
623
+ # @return [Array<Symbol>]
624
+ end
625
+
626
+ # Whether to trim any leading and trailing silence from the recording. Defaults to
627
+ # `trim-silence`.
628
+ #
629
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#trim
630
+ module Trim
631
+ extend Telnyx::Internal::Type::Enum
632
+
633
+ TRIM_SILENCE = :"trim-silence"
634
+ DO_NOT_TRIM = :"do-not-trim"
635
+
636
+ # @!method self.values
637
+ # @return [Array<Symbol>]
638
+ end
639
+
640
+ # HTTP request type used for `Url`. The default value is inherited from TeXML
641
+ # Application setting.
642
+ #
643
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL#url_method
644
+ module URLMethod
645
+ extend Telnyx::Internal::Type::Enum
646
+
647
+ GET = :GET
648
+ POST = :POST
649
+
650
+ # @!method self.values
651
+ # @return [Array<Symbol>]
652
+ end
653
+ end
654
+
655
+ class WithTeXml < Telnyx::Internal::Type::BaseModel
656
+ # @!attribute texml
657
+ # TeXML to be used as instructions for the call. If provided, the call will
658
+ # execute these instructions instead of fetching from the Url.
659
+ #
660
+ # @return [String]
661
+ required :texml, String, api_name: :Texml
662
+
663
+ # @!attribute application_sid
664
+ # The ID of the TeXML Application.
665
+ #
666
+ # @return [String, nil]
667
+ optional :application_sid, String, api_name: :ApplicationSid
668
+
669
+ # @!attribute async_amd
670
+ # Select whether to perform answering machine detection in the background. By
671
+ # default execution is blocked until Answering Machine Detection is completed.
672
+ #
673
+ # @return [Boolean, nil]
674
+ optional :async_amd, Telnyx::Internal::Type::Boolean, api_name: :AsyncAmd
675
+
676
+ # @!attribute async_amd_status_callback
677
+ # URL destination for Telnyx to send AMD callback events to for the call.
678
+ #
679
+ # @return [String, nil]
680
+ optional :async_amd_status_callback, String, api_name: :AsyncAmdStatusCallback
681
+
682
+ # @!attribute async_amd_status_callback_method
683
+ # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
684
+ # inherited from TeXML Application setting.
685
+ #
686
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::AsyncAmdStatusCallbackMethod, nil]
687
+ optional :async_amd_status_callback_method,
688
+ enum: -> {
689
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::AsyncAmdStatusCallbackMethod
690
+ },
691
+ api_name: :AsyncAmdStatusCallbackMethod
692
+
693
+ # @!attribute caller_id
694
+ # To be used as the caller id name (SIP From Display Name) presented to the
695
+ # destination (`To` number). The string should have a maximum of 128 characters,
696
+ # containing only letters, numbers, spaces, and `-_~!.+` special characters. If
697
+ # ommited, the display name will be the same as the number in the `From` field.
698
+ #
699
+ # @return [String, nil]
700
+ optional :caller_id, String, api_name: :CallerId
701
+
702
+ # @!attribute cancel_playback_on_detect_message_end
703
+ # Whether to cancel ongoing playback on `greeting ended` detection. Defaults to
704
+ # `true`.
705
+ #
706
+ # @return [Boolean, nil]
707
+ optional :cancel_playback_on_detect_message_end,
708
+ Telnyx::Internal::Type::Boolean,
709
+ api_name: :CancelPlaybackOnDetectMessageEnd
710
+
711
+ # @!attribute cancel_playback_on_machine_detection
712
+ # Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
713
+ #
714
+ # @return [Boolean, nil]
715
+ optional :cancel_playback_on_machine_detection,
716
+ Telnyx::Internal::Type::Boolean,
717
+ api_name: :CancelPlaybackOnMachineDetection
718
+
719
+ # @!attribute custom_headers
720
+ # Custom HTTP headers to be sent with the call. Each header should be an object
721
+ # with 'name' and 'value' properties.
722
+ #
723
+ # @return [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::CustomHeader>, nil]
724
+ optional :custom_headers,
725
+ -> {
726
+ Telnyx::Internal::Type::ArrayOf[Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::CustomHeader]
727
+ },
728
+ api_name: :CustomHeaders
729
+
730
+ # @!attribute detection_mode
731
+ # Allows you to chose between Premium and Standard detections.
732
+ #
733
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::DetectionMode, nil]
734
+ optional :detection_mode,
735
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::DetectionMode },
736
+ api_name: :DetectionMode
737
+
738
+ # @!attribute fallback_url
739
+ # A failover URL for which Telnyx will retrieve the TeXML call instructions if the
740
+ # `Url` is not responding.
741
+ #
742
+ # @return [String, nil]
743
+ optional :fallback_url, String, api_name: :FallbackUrl
744
+
745
+ # @!attribute from
746
+ # The phone number of the party that initiated the call. Phone numbers are
747
+ # formatted with a `+` and country code.
748
+ #
749
+ # @return [String, nil]
750
+ optional :from, String, api_name: :From
751
+
752
+ # @!attribute machine_detection
753
+ # Enables Answering Machine Detection.
754
+ #
755
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::MachineDetection, nil]
756
+ optional :machine_detection,
757
+ enum: -> {
758
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::MachineDetection
759
+ },
760
+ api_name: :MachineDetection
761
+
762
+ # @!attribute machine_detection_silence_timeout
763
+ # If initial silence duration is greater than this value, consider it a machine.
764
+ # Ignored when `premium` detection is used.
765
+ #
766
+ # @return [Integer, nil]
767
+ optional :machine_detection_silence_timeout, Integer, api_name: :MachineDetectionSilenceTimeout
768
+
769
+ # @!attribute machine_detection_speech_end_threshold
770
+ # Silence duration threshold after a greeting message or voice for it be
771
+ # considered human. Ignored when `premium` detection is used.
772
+ #
773
+ # @return [Integer, nil]
774
+ optional :machine_detection_speech_end_threshold,
775
+ Integer,
776
+ api_name: :MachineDetectionSpeechEndThreshold
777
+
778
+ # @!attribute machine_detection_speech_threshold
779
+ # Maximum threshold of a human greeting. If greeting longer than this value,
780
+ # considered machine. Ignored when `premium` detection is used.
781
+ #
782
+ # @return [Integer, nil]
783
+ optional :machine_detection_speech_threshold,
784
+ Integer,
785
+ api_name: :MachineDetectionSpeechThreshold
786
+
787
+ # @!attribute machine_detection_timeout
788
+ # Maximum timeout threshold in milliseconds for overall detection.
789
+ #
790
+ # @return [Integer, nil]
791
+ optional :machine_detection_timeout, Integer, api_name: :MachineDetectionTimeout
792
+
793
+ # @!attribute media_encryption
794
+ # Defines whether media should be encrypted on the call. When set to `SRTP`, the
795
+ # call will use Secure Real-time Transport Protocol for media encryption. When set
796
+ # to `DTLS`, the call will use DTLS for media encryption. Only supported for SIP
797
+ # destinations.
798
+ #
799
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::MediaEncryption, nil]
800
+ optional :media_encryption,
801
+ enum: -> {
802
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::MediaEncryption
803
+ },
804
+ api_name: :MediaEncryption
805
+
806
+ # @!attribute preferred_codecs
807
+ # The list of comma-separated codecs to be offered on a call.
808
+ #
809
+ # @return [String, nil]
810
+ optional :preferred_codecs, String, api_name: :PreferredCodecs
811
+
812
+ # @!attribute record
813
+ # Whether to record the entire participant's call leg. Defaults to `false`.
814
+ #
815
+ # @return [Boolean, nil]
816
+ optional :record, Telnyx::Internal::Type::Boolean, api_name: :Record
817
+
818
+ # @!attribute recording_channels
819
+ # The number of channels in the final recording. Defaults to `mono`.
820
+ #
821
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingChannels, nil]
822
+ optional :recording_channels,
823
+ enum: -> {
824
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingChannels
825
+ },
826
+ api_name: :RecordingChannels
827
+
828
+ # @!attribute recording_status_callback
829
+ # The URL the recording callbacks will be sent to.
830
+ #
831
+ # @return [String, nil]
832
+ optional :recording_status_callback, String, api_name: :RecordingStatusCallback
833
+
834
+ # @!attribute recording_status_callback_event
835
+ # The changes to the recording's state that should generate a call to
836
+ # `RecoridngStatusCallback`. Can be: `in-progress`, `completed` and `absent`.
837
+ # Separate multiple values with a space. Defaults to `completed`.
838
+ #
839
+ # @return [String, nil]
840
+ optional :recording_status_callback_event, String, api_name: :RecordingStatusCallbackEvent
841
+
842
+ # @!attribute recording_status_callback_method
843
+ # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
844
+ #
845
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingStatusCallbackMethod, nil]
846
+ optional :recording_status_callback_method,
847
+ enum: -> {
848
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingStatusCallbackMethod
849
+ },
850
+ api_name: :RecordingStatusCallbackMethod
851
+
852
+ # @!attribute recording_timeout
853
+ # The number of seconds that Telnyx will wait for the recording to be stopped if
854
+ # silence is detected. The timer only starts when the speech is detected. Please
855
+ # note that the transcription is used to detect silence and the related charge
856
+ # will be applied. The minimum value is 0. The default value is 0 (infinite)
857
+ #
858
+ # @return [Integer, nil]
859
+ optional :recording_timeout, Integer, api_name: :RecordingTimeout
860
+
861
+ # @!attribute recording_track
862
+ # The audio track to record for the call. The default is `both`.
863
+ #
864
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingTrack, nil]
865
+ optional :recording_track,
866
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingTrack },
867
+ api_name: :RecordingTrack
868
+
869
+ # @!attribute send_recording_url
870
+ # Whether to send RecordingUrl in webhooks.
871
+ #
872
+ # @return [Boolean, nil]
873
+ optional :send_recording_url, Telnyx::Internal::Type::Boolean, api_name: :SendRecordingUrl
874
+
875
+ # @!attribute sip_auth_password
876
+ # The password to use for SIP authentication.
877
+ #
878
+ # @return [String, nil]
879
+ optional :sip_auth_password, String, api_name: :SipAuthPassword
880
+
881
+ # @!attribute sip_auth_username
882
+ # The username to use for SIP authentication.
883
+ #
884
+ # @return [String, nil]
885
+ optional :sip_auth_username, String, api_name: :SipAuthUsername
886
+
887
+ # @!attribute sip_region
888
+ # Defines the SIP region to be used for the call.
889
+ #
890
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::SipRegion, nil]
891
+ optional :sip_region,
892
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::SipRegion },
893
+ api_name: :SipRegion
894
+
895
+ # @!attribute status_callback
896
+ # URL destination for Telnyx to send status callback events to for the call.
897
+ #
898
+ # @return [String, nil]
899
+ optional :status_callback, String, api_name: :StatusCallback
900
+
901
+ # @!attribute status_callback_event
902
+ # The call events for which Telnyx should send a webhook. Multiple events can be
903
+ # defined when separated by a space.
904
+ #
905
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::StatusCallbackEvent, nil]
906
+ optional :status_callback_event,
907
+ enum: -> {
908
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::StatusCallbackEvent
909
+ },
910
+ api_name: :StatusCallbackEvent
911
+
912
+ # @!attribute status_callback_method
913
+ # HTTP request type used for `StatusCallback`.
914
+ #
915
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::StatusCallbackMethod, nil]
916
+ optional :status_callback_method,
917
+ enum: -> {
918
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::StatusCallbackMethod
919
+ },
920
+ api_name: :StatusCallbackMethod
921
+
922
+ # @!attribute supervise_call_sid
923
+ # The call control ID of the existing call to supervise. When provided, the
924
+ # created leg will be added to the specified call in supervising mode. Status
925
+ # callbacks and action callbacks will NOT be sent for the supervising leg.
926
+ #
927
+ # @return [String, nil]
928
+ optional :supervise_call_sid, String, api_name: :SuperviseCallSid
929
+
930
+ # @!attribute supervising_role
931
+ # The supervising role for the new leg. Determines the audio behavior: barge (hear
932
+ # both sides), whisper (only hear supervisor), monitor (hear both sides but
933
+ # supervisor muted). Default: barge
934
+ #
935
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::SupervisingRole, nil]
936
+ optional :supervising_role,
937
+ enum: -> {
938
+ Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::SupervisingRole
939
+ },
940
+ api_name: :SupervisingRole
941
+
942
+ # @!attribute time_limit
943
+ # The maximum duration of the call in seconds. The minimum value is 30 and the
944
+ # maximum value is 14400 (4 hours). Default is 14400 seconds.
945
+ #
946
+ # @return [Integer, nil]
947
+ optional :time_limit, Integer, api_name: :TimeLimit
948
+
949
+ # @!attribute timeout
950
+ # The number of seconds to wait for the called party to answer the call before the
951
+ # call is canceled. The minimum value is 5 and the maximum value is 120. Default
952
+ # is 30 seconds.
953
+ #
954
+ # @return [Integer, nil]
955
+ optional :timeout, Integer, api_name: :Timeout
956
+
957
+ # @!attribute to
958
+ # The phone number of the called party. Phone numbers are formatted with a `+` and
959
+ # country code.
960
+ #
961
+ # @return [String, nil]
962
+ optional :to, String, api_name: :To
963
+
964
+ # @!attribute trim
965
+ # Whether to trim any leading and trailing silence from the recording. Defaults to
966
+ # `trim-silence`.
967
+ #
968
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::Trim, nil]
969
+ optional :trim,
970
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::Trim },
971
+ api_name: :Trim
972
+
973
+ # @!attribute url
974
+ #
975
+ # @return [Object, nil]
976
+ optional :url, Telnyx::Internal::Type::Unknown, api_name: :Url
977
+
978
+ # @!attribute url_method
979
+ # HTTP request type used for `Url`. The default value is inherited from TeXML
980
+ # Application setting.
981
+ #
982
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::URLMethod, nil]
983
+ optional :url_method,
984
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::WithTeXml::URLMethod },
985
+ api_name: :UrlMethod
986
+
987
+ # @!method initialize(texml:, application_sid: nil, async_amd: nil, async_amd_status_callback: nil, async_amd_status_callback_method: nil, caller_id: nil, cancel_playback_on_detect_message_end: nil, cancel_playback_on_machine_detection: nil, custom_headers: nil, detection_mode: nil, fallback_url: nil, from: nil, machine_detection: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, media_encryption: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_timeout: nil, recording_track: nil, send_recording_url: nil, sip_auth_password: nil, sip_auth_username: nil, sip_region: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, supervise_call_sid: nil, supervising_role: nil, time_limit: nil, timeout: nil, to: nil, trim: nil, url: nil, url_method: nil)
988
+ # Some parameter documentations has been truncated, see
989
+ # {Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml} for more
990
+ # details.
991
+ #
992
+ # @param texml [String] TeXML to be used as instructions for the call. If provided, the call will execut
993
+ #
994
+ # @param application_sid [String] The ID of the TeXML Application.
995
+ #
996
+ # @param async_amd [Boolean] Select whether to perform answering machine detection in the background. By defa
997
+ #
998
+ # @param async_amd_status_callback [String] URL destination for Telnyx to send AMD callback events to for the call.
999
+ #
1000
+ # @param async_amd_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::AsyncAmdStatusCallbackMethod] HTTP request type used for `AsyncAmdStatusCallback`. The default value is inheri
1001
+ #
1002
+ # @param caller_id [String] To be used as the caller id name (SIP From Display Name) presented to the destin
1003
+ #
1004
+ # @param cancel_playback_on_detect_message_end [Boolean] Whether to cancel ongoing playback on `greeting ended` detection. Defaults to `t
1005
+ #
1006
+ # @param cancel_playback_on_machine_detection [Boolean] Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
1007
+ #
1008
+ # @param custom_headers [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::CustomHeader>] Custom HTTP headers to be sent with the call. Each header should be an object wi
1009
+ #
1010
+ # @param detection_mode [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::DetectionMode] Allows you to chose between Premium and Standard detections.
1011
+ #
1012
+ # @param fallback_url [String] A failover URL for which Telnyx will retrieve the TeXML call instructions if the
1013
+ #
1014
+ # @param from [String] The phone number of the party that initiated the call. Phone numbers are formatt
1015
+ #
1016
+ # @param machine_detection [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::MachineDetection] Enables Answering Machine Detection.
1017
+ #
1018
+ # @param machine_detection_silence_timeout [Integer] If initial silence duration is greater than this value, consider it a machine. I
1019
+ #
1020
+ # @param machine_detection_speech_end_threshold [Integer] Silence duration threshold after a greeting message or voice for it be considere
1021
+ #
1022
+ # @param machine_detection_speech_threshold [Integer] Maximum threshold of a human greeting. If greeting longer than this value, consi
1023
+ #
1024
+ # @param machine_detection_timeout [Integer] Maximum timeout threshold in milliseconds for overall detection.
1025
+ #
1026
+ # @param media_encryption [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::MediaEncryption] Defines whether media should be encrypted on the call. When set to `SRTP`, the c
1027
+ #
1028
+ # @param preferred_codecs [String] The list of comma-separated codecs to be offered on a call.
1029
+ #
1030
+ # @param record [Boolean] Whether to record the entire participant's call leg. Defaults to `false`.
1031
+ #
1032
+ # @param recording_channels [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingChannels] The number of channels in the final recording. Defaults to `mono`.
1033
+ #
1034
+ # @param recording_status_callback [String] The URL the recording callbacks will be sent to.
1035
+ #
1036
+ # @param recording_status_callback_event [String] The changes to the recording's state that should generate a call to `RecoridngSt
1037
+ #
1038
+ # @param recording_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingStatusCallbackMethod] HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
1039
+ #
1040
+ # @param recording_timeout [Integer] The number of seconds that Telnyx will wait for the recording to be stopped if s
1041
+ #
1042
+ # @param recording_track [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::RecordingTrack] The audio track to record for the call. The default is `both`.
1043
+ #
1044
+ # @param send_recording_url [Boolean] Whether to send RecordingUrl in webhooks.
1045
+ #
1046
+ # @param sip_auth_password [String] The password to use for SIP authentication.
1047
+ #
1048
+ # @param sip_auth_username [String] The username to use for SIP authentication.
1049
+ #
1050
+ # @param sip_region [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::SipRegion] Defines the SIP region to be used for the call.
1051
+ #
1052
+ # @param status_callback [String] URL destination for Telnyx to send status callback events to for the call.
1053
+ #
1054
+ # @param status_callback_event [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::StatusCallbackEvent] The call events for which Telnyx should send a webhook. Multiple events can be d
1055
+ #
1056
+ # @param status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::StatusCallbackMethod] HTTP request type used for `StatusCallback`.
1057
+ #
1058
+ # @param supervise_call_sid [String] The call control ID of the existing call to supervise. When provided, the create
1059
+ #
1060
+ # @param supervising_role [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::SupervisingRole] The supervising role for the new leg. Determines the audio behavior: barge (hear
1061
+ #
1062
+ # @param time_limit [Integer] The maximum duration of the call in seconds. The minimum value is 30 and the max
1063
+ #
1064
+ # @param timeout [Integer] The number of seconds to wait for the called party to answer the call before the
1065
+ #
1066
+ # @param to [String] The phone number of the called party. Phone numbers are formatted with a `+` and
1067
+ #
1068
+ # @param trim [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::Trim] Whether to trim any leading and trailing silence from the recording. Defaults to
1069
+ #
1070
+ # @param url [Object]
1071
+ #
1072
+ # @param url_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml::URLMethod] HTTP request type used for `Url`. The default value is inherited from TeXML Appl
1073
+
1074
+ # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
1075
+ # inherited from TeXML Application setting.
1076
+ #
1077
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#async_amd_status_callback_method
1078
+ module AsyncAmdStatusCallbackMethod
1079
+ extend Telnyx::Internal::Type::Enum
1080
+
1081
+ GET = :GET
1082
+ POST = :POST
1083
+
1084
+ # @!method self.values
1085
+ # @return [Array<Symbol>]
1086
+ end
1087
+
1088
+ class CustomHeader < Telnyx::Internal::Type::BaseModel
1089
+ # @!attribute name
1090
+ # The name of the custom header
1091
+ #
1092
+ # @return [String]
1093
+ required :name, String
1094
+
1095
+ # @!attribute value
1096
+ # The value of the custom header
1097
+ #
1098
+ # @return [String]
1099
+ required :value, String
1100
+
1101
+ # @!method initialize(name:, value:)
1102
+ # @param name [String] The name of the custom header
1103
+ #
1104
+ # @param value [String] The value of the custom header
1105
+ end
1106
+
1107
+ # Allows you to chose between Premium and Standard detections.
1108
+ #
1109
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#detection_mode
1110
+ module DetectionMode
1111
+ extend Telnyx::Internal::Type::Enum
1112
+
1113
+ PREMIUM = :Premium
1114
+ REGULAR = :Regular
1115
+
1116
+ # @!method self.values
1117
+ # @return [Array<Symbol>]
1118
+ end
1119
+
1120
+ # Enables Answering Machine Detection.
1121
+ #
1122
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#machine_detection
1123
+ module MachineDetection
1124
+ extend Telnyx::Internal::Type::Enum
1125
+
1126
+ ENABLE = :Enable
1127
+ DISABLE = :Disable
1128
+ DETECT_MESSAGE_END = :DetectMessageEnd
1129
+
1130
+ # @!method self.values
1131
+ # @return [Array<Symbol>]
1132
+ end
1133
+
1134
+ # Defines whether media should be encrypted on the call. When set to `SRTP`, the
1135
+ # call will use Secure Real-time Transport Protocol for media encryption. When set
1136
+ # to `DTLS`, the call will use DTLS for media encryption. Only supported for SIP
1137
+ # destinations.
1138
+ #
1139
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#media_encryption
1140
+ module MediaEncryption
1141
+ extend Telnyx::Internal::Type::Enum
1142
+
1143
+ DISABLED = :disabled
1144
+ SRTP = :SRTP
1145
+ DTLS = :DTLS
1146
+
1147
+ # @!method self.values
1148
+ # @return [Array<Symbol>]
1149
+ end
1150
+
1151
+ # The number of channels in the final recording. Defaults to `mono`.
1152
+ #
1153
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#recording_channels
1154
+ module RecordingChannels
1155
+ extend Telnyx::Internal::Type::Enum
1156
+
1157
+ MONO = :mono
1158
+ DUAL = :dual
1159
+
1160
+ # @!method self.values
1161
+ # @return [Array<Symbol>]
1162
+ end
1163
+
1164
+ # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
1165
+ #
1166
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#recording_status_callback_method
1167
+ module RecordingStatusCallbackMethod
1168
+ extend Telnyx::Internal::Type::Enum
1169
+
1170
+ GET = :GET
1171
+ POST = :POST
1172
+
1173
+ # @!method self.values
1174
+ # @return [Array<Symbol>]
1175
+ end
1176
+
1177
+ # The audio track to record for the call. The default is `both`.
1178
+ #
1179
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#recording_track
1180
+ module RecordingTrack
1181
+ extend Telnyx::Internal::Type::Enum
1182
+
1183
+ INBOUND = :inbound
1184
+ OUTBOUND = :outbound
1185
+ BOTH = :both
1186
+
1187
+ # @!method self.values
1188
+ # @return [Array<Symbol>]
1189
+ end
1190
+
1191
+ # Defines the SIP region to be used for the call.
1192
+ #
1193
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#sip_region
1194
+ module SipRegion
1195
+ extend Telnyx::Internal::Type::Enum
1196
+
1197
+ US = :US
1198
+ EUROPE = :Europe
1199
+ CANADA = :Canada
1200
+ AUSTRALIA = :Australia
1201
+ MIDDLE_EAST = :"Middle East"
1202
+
1203
+ # @!method self.values
1204
+ # @return [Array<Symbol>]
1205
+ end
1206
+
1207
+ # The call events for which Telnyx should send a webhook. Multiple events can be
1208
+ # defined when separated by a space.
1209
+ #
1210
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#status_callback_event
1211
+ module StatusCallbackEvent
1212
+ extend Telnyx::Internal::Type::Enum
1213
+
1214
+ INITIATED = :initiated
1215
+ RINGING = :ringing
1216
+ ANSWERED = :answered
1217
+ COMPLETED = :completed
1218
+
1219
+ # @!method self.values
1220
+ # @return [Array<Symbol>]
1221
+ end
1222
+
1223
+ # HTTP request type used for `StatusCallback`.
1224
+ #
1225
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#status_callback_method
1226
+ module StatusCallbackMethod
1227
+ extend Telnyx::Internal::Type::Enum
1228
+
1229
+ GET = :GET
1230
+ POST = :POST
1231
+
1232
+ # @!method self.values
1233
+ # @return [Array<Symbol>]
1234
+ end
1235
+
1236
+ # The supervising role for the new leg. Determines the audio behavior: barge (hear
1237
+ # both sides), whisper (only hear supervisor), monitor (hear both sides but
1238
+ # supervisor muted). Default: barge
1239
+ #
1240
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#supervising_role
1241
+ module SupervisingRole
1242
+ extend Telnyx::Internal::Type::Enum
1243
+
1244
+ BARGE = :barge
1245
+ WHISPER = :whisper
1246
+ MONITOR = :monitor
1247
+
1248
+ # @!method self.values
1249
+ # @return [Array<Symbol>]
1250
+ end
1251
+
1252
+ # Whether to trim any leading and trailing silence from the recording. Defaults to
1253
+ # `trim-silence`.
1254
+ #
1255
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#trim
1256
+ module Trim
1257
+ extend Telnyx::Internal::Type::Enum
1258
+
1259
+ TRIM_SILENCE = :"trim-silence"
1260
+ DO_NOT_TRIM = :"do-not-trim"
1261
+
1262
+ # @!method self.values
1263
+ # @return [Array<Symbol>]
1264
+ end
1265
+
1266
+ # HTTP request type used for `Url`. The default value is inherited from TeXML
1267
+ # Application setting.
1268
+ #
1269
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml#url_method
1270
+ module URLMethod
1271
+ extend Telnyx::Internal::Type::Enum
1272
+
1273
+ GET = :GET
1274
+ POST = :POST
1275
+
1276
+ # @!method self.values
1277
+ # @return [Array<Symbol>]
1278
+ end
1279
+ end
1280
+
1281
+ class ApplicationDefault < Telnyx::Internal::Type::BaseModel
1282
+ # @!attribute application_sid
1283
+ # The ID of the TeXML Application.
1284
+ #
1285
+ # @return [String, nil]
1286
+ optional :application_sid, String, api_name: :ApplicationSid
1287
+
1288
+ # @!attribute async_amd
1289
+ # Select whether to perform answering machine detection in the background. By
1290
+ # default execution is blocked until Answering Machine Detection is completed.
1291
+ #
1292
+ # @return [Boolean, nil]
1293
+ optional :async_amd, Telnyx::Internal::Type::Boolean, api_name: :AsyncAmd
1294
+
1295
+ # @!attribute async_amd_status_callback
1296
+ # URL destination for Telnyx to send AMD callback events to for the call.
1297
+ #
1298
+ # @return [String, nil]
1299
+ optional :async_amd_status_callback, String, api_name: :AsyncAmdStatusCallback
1300
+
1301
+ # @!attribute async_amd_status_callback_method
1302
+ # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
1303
+ # inherited from TeXML Application setting.
1304
+ #
1305
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::AsyncAmdStatusCallbackMethod, nil]
1306
+ optional :async_amd_status_callback_method,
1307
+ enum: -> {
1308
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::AsyncAmdStatusCallbackMethod
1309
+ },
1310
+ api_name: :AsyncAmdStatusCallbackMethod
1311
+
1312
+ # @!attribute caller_id
1313
+ # To be used as the caller id name (SIP From Display Name) presented to the
1314
+ # destination (`To` number). The string should have a maximum of 128 characters,
1315
+ # containing only letters, numbers, spaces, and `-_~!.+` special characters. If
1316
+ # ommited, the display name will be the same as the number in the `From` field.
1317
+ #
1318
+ # @return [String, nil]
1319
+ optional :caller_id, String, api_name: :CallerId
1320
+
1321
+ # @!attribute cancel_playback_on_detect_message_end
1322
+ # Whether to cancel ongoing playback on `greeting ended` detection. Defaults to
1323
+ # `true`.
1324
+ #
1325
+ # @return [Boolean, nil]
1326
+ optional :cancel_playback_on_detect_message_end,
1327
+ Telnyx::Internal::Type::Boolean,
1328
+ api_name: :CancelPlaybackOnDetectMessageEnd
1329
+
1330
+ # @!attribute cancel_playback_on_machine_detection
1331
+ # Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
1332
+ #
1333
+ # @return [Boolean, nil]
1334
+ optional :cancel_playback_on_machine_detection,
1335
+ Telnyx::Internal::Type::Boolean,
1336
+ api_name: :CancelPlaybackOnMachineDetection
1337
+
1338
+ # @!attribute custom_headers
1339
+ # Custom HTTP headers to be sent with the call. Each header should be an object
1340
+ # with 'name' and 'value' properties.
1341
+ #
1342
+ # @return [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::CustomHeader>, nil]
1343
+ optional :custom_headers,
1344
+ -> {
1345
+ Telnyx::Internal::Type::ArrayOf[Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::CustomHeader]
1346
+ },
1347
+ api_name: :CustomHeaders
1348
+
1349
+ # @!attribute detection_mode
1350
+ # Allows you to chose between Premium and Standard detections.
1351
+ #
1352
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::DetectionMode, nil]
1353
+ optional :detection_mode,
1354
+ enum: -> {
1355
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::DetectionMode
1356
+ },
1357
+ api_name: :DetectionMode
1358
+
1359
+ # @!attribute fallback_url
1360
+ # A failover URL for which Telnyx will retrieve the TeXML call instructions if the
1361
+ # `Url` is not responding.
1362
+ #
1363
+ # @return [String, nil]
1364
+ optional :fallback_url, String, api_name: :FallbackUrl
1365
+
1366
+ # @!attribute from
1367
+ # The phone number of the party that initiated the call. Phone numbers are
1368
+ # formatted with a `+` and country code.
1369
+ #
1370
+ # @return [String, nil]
1371
+ optional :from, String, api_name: :From
1372
+
1373
+ # @!attribute machine_detection
1374
+ # Enables Answering Machine Detection.
1375
+ #
1376
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::MachineDetection, nil]
1377
+ optional :machine_detection,
1378
+ enum: -> {
1379
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::MachineDetection
1380
+ },
1381
+ api_name: :MachineDetection
1382
+
1383
+ # @!attribute machine_detection_silence_timeout
1384
+ # If initial silence duration is greater than this value, consider it a machine.
1385
+ # Ignored when `premium` detection is used.
1386
+ #
1387
+ # @return [Integer, nil]
1388
+ optional :machine_detection_silence_timeout, Integer, api_name: :MachineDetectionSilenceTimeout
1389
+
1390
+ # @!attribute machine_detection_speech_end_threshold
1391
+ # Silence duration threshold after a greeting message or voice for it be
1392
+ # considered human. Ignored when `premium` detection is used.
1393
+ #
1394
+ # @return [Integer, nil]
1395
+ optional :machine_detection_speech_end_threshold,
1396
+ Integer,
1397
+ api_name: :MachineDetectionSpeechEndThreshold
1398
+
1399
+ # @!attribute machine_detection_speech_threshold
1400
+ # Maximum threshold of a human greeting. If greeting longer than this value,
1401
+ # considered machine. Ignored when `premium` detection is used.
1402
+ #
1403
+ # @return [Integer, nil]
1404
+ optional :machine_detection_speech_threshold,
1405
+ Integer,
1406
+ api_name: :MachineDetectionSpeechThreshold
1407
+
1408
+ # @!attribute machine_detection_timeout
1409
+ # Maximum timeout threshold in milliseconds for overall detection.
1410
+ #
1411
+ # @return [Integer, nil]
1412
+ optional :machine_detection_timeout, Integer, api_name: :MachineDetectionTimeout
1413
+
1414
+ # @!attribute media_encryption
1415
+ # Defines whether media should be encrypted on the call. When set to `SRTP`, the
1416
+ # call will use Secure Real-time Transport Protocol for media encryption. When set
1417
+ # to `DTLS`, the call will use DTLS for media encryption. Only supported for SIP
1418
+ # destinations.
1419
+ #
1420
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::MediaEncryption, nil]
1421
+ optional :media_encryption,
1422
+ enum: -> {
1423
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::MediaEncryption
1424
+ },
1425
+ api_name: :MediaEncryption
1426
+
1427
+ # @!attribute preferred_codecs
1428
+ # The list of comma-separated codecs to be offered on a call.
1429
+ #
1430
+ # @return [String, nil]
1431
+ optional :preferred_codecs, String, api_name: :PreferredCodecs
1432
+
1433
+ # @!attribute record
1434
+ # Whether to record the entire participant's call leg. Defaults to `false`.
1435
+ #
1436
+ # @return [Boolean, nil]
1437
+ optional :record, Telnyx::Internal::Type::Boolean, api_name: :Record
1438
+
1439
+ # @!attribute recording_channels
1440
+ # The number of channels in the final recording. Defaults to `mono`.
1441
+ #
1442
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingChannels, nil]
1443
+ optional :recording_channels,
1444
+ enum: -> {
1445
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingChannels
1446
+ },
1447
+ api_name: :RecordingChannels
1448
+
1449
+ # @!attribute recording_status_callback
1450
+ # The URL the recording callbacks will be sent to.
1451
+ #
1452
+ # @return [String, nil]
1453
+ optional :recording_status_callback, String, api_name: :RecordingStatusCallback
1454
+
1455
+ # @!attribute recording_status_callback_event
1456
+ # The changes to the recording's state that should generate a call to
1457
+ # `RecoridngStatusCallback`. Can be: `in-progress`, `completed` and `absent`.
1458
+ # Separate multiple values with a space. Defaults to `completed`.
1459
+ #
1460
+ # @return [String, nil]
1461
+ optional :recording_status_callback_event, String, api_name: :RecordingStatusCallbackEvent
1462
+
1463
+ # @!attribute recording_status_callback_method
1464
+ # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
1465
+ #
1466
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingStatusCallbackMethod, nil]
1467
+ optional :recording_status_callback_method,
1468
+ enum: -> {
1469
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingStatusCallbackMethod
1470
+ },
1471
+ api_name: :RecordingStatusCallbackMethod
1472
+
1473
+ # @!attribute recording_timeout
1474
+ # The number of seconds that Telnyx will wait for the recording to be stopped if
1475
+ # silence is detected. The timer only starts when the speech is detected. Please
1476
+ # note that the transcription is used to detect silence and the related charge
1477
+ # will be applied. The minimum value is 0. The default value is 0 (infinite)
1478
+ #
1479
+ # @return [Integer, nil]
1480
+ optional :recording_timeout, Integer, api_name: :RecordingTimeout
1481
+
1482
+ # @!attribute recording_track
1483
+ # The audio track to record for the call. The default is `both`.
1484
+ #
1485
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingTrack, nil]
1486
+ optional :recording_track,
1487
+ enum: -> {
1488
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingTrack
1489
+ },
1490
+ api_name: :RecordingTrack
1491
+
1492
+ # @!attribute send_recording_url
1493
+ # Whether to send RecordingUrl in webhooks.
1494
+ #
1495
+ # @return [Boolean, nil]
1496
+ optional :send_recording_url, Telnyx::Internal::Type::Boolean, api_name: :SendRecordingUrl
1497
+
1498
+ # @!attribute sip_auth_password
1499
+ # The password to use for SIP authentication.
1500
+ #
1501
+ # @return [String, nil]
1502
+ optional :sip_auth_password, String, api_name: :SipAuthPassword
1503
+
1504
+ # @!attribute sip_auth_username
1505
+ # The username to use for SIP authentication.
1506
+ #
1507
+ # @return [String, nil]
1508
+ optional :sip_auth_username, String, api_name: :SipAuthUsername
1509
+
1510
+ # @!attribute sip_region
1511
+ # Defines the SIP region to be used for the call.
1512
+ #
1513
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::SipRegion, nil]
1514
+ optional :sip_region,
1515
+ enum: -> {
1516
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::SipRegion
1517
+ },
1518
+ api_name: :SipRegion
1519
+
1520
+ # @!attribute status_callback
1521
+ # URL destination for Telnyx to send status callback events to for the call.
1522
+ #
1523
+ # @return [String, nil]
1524
+ optional :status_callback, String, api_name: :StatusCallback
1525
+
1526
+ # @!attribute status_callback_event
1527
+ # The call events for which Telnyx should send a webhook. Multiple events can be
1528
+ # defined when separated by a space.
1529
+ #
1530
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::StatusCallbackEvent, nil]
1531
+ optional :status_callback_event,
1532
+ enum: -> {
1533
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::StatusCallbackEvent
1534
+ },
1535
+ api_name: :StatusCallbackEvent
1536
+
1537
+ # @!attribute status_callback_method
1538
+ # HTTP request type used for `StatusCallback`.
1539
+ #
1540
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::StatusCallbackMethod, nil]
1541
+ optional :status_callback_method,
1542
+ enum: -> {
1543
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::StatusCallbackMethod
1544
+ },
1545
+ api_name: :StatusCallbackMethod
1546
+
1547
+ # @!attribute supervise_call_sid
1548
+ # The call control ID of the existing call to supervise. When provided, the
1549
+ # created leg will be added to the specified call in supervising mode. Status
1550
+ # callbacks and action callbacks will NOT be sent for the supervising leg.
1551
+ #
1552
+ # @return [String, nil]
1553
+ optional :supervise_call_sid, String, api_name: :SuperviseCallSid
1554
+
1555
+ # @!attribute supervising_role
1556
+ # The supervising role for the new leg. Determines the audio behavior: barge (hear
1557
+ # both sides), whisper (only hear supervisor), monitor (hear both sides but
1558
+ # supervisor muted). Default: barge
1559
+ #
1560
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::SupervisingRole, nil]
1561
+ optional :supervising_role,
1562
+ enum: -> {
1563
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::SupervisingRole
1564
+ },
1565
+ api_name: :SupervisingRole
1566
+
1567
+ # @!attribute texml
1568
+ #
1569
+ # @return [Object, nil]
1570
+ optional :texml, Telnyx::Internal::Type::Unknown, api_name: :Texml
1571
+
1572
+ # @!attribute time_limit
1573
+ # The maximum duration of the call in seconds. The minimum value is 30 and the
1574
+ # maximum value is 14400 (4 hours). Default is 14400 seconds.
1575
+ #
1576
+ # @return [Integer, nil]
1577
+ optional :time_limit, Integer, api_name: :TimeLimit
1578
+
1579
+ # @!attribute timeout
1580
+ # The number of seconds to wait for the called party to answer the call before the
1581
+ # call is canceled. The minimum value is 5 and the maximum value is 120. Default
1582
+ # is 30 seconds.
1583
+ #
1584
+ # @return [Integer, nil]
1585
+ optional :timeout, Integer, api_name: :Timeout
1586
+
1587
+ # @!attribute to
1588
+ # The phone number of the called party. Phone numbers are formatted with a `+` and
1589
+ # country code.
1590
+ #
1591
+ # @return [String, nil]
1592
+ optional :to, String, api_name: :To
1593
+
1594
+ # @!attribute trim
1595
+ # Whether to trim any leading and trailing silence from the recording. Defaults to
1596
+ # `trim-silence`.
1597
+ #
1598
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::Trim, nil]
1599
+ optional :trim,
1600
+ enum: -> { Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::Trim },
1601
+ api_name: :Trim
1602
+
1603
+ # @!attribute url
1604
+ #
1605
+ # @return [Object, nil]
1606
+ optional :url, Telnyx::Internal::Type::Unknown, api_name: :Url
1607
+
1608
+ # @!attribute url_method
1609
+ # HTTP request type used for `Url`. The default value is inherited from TeXML
1610
+ # Application setting.
1611
+ #
1612
+ # @return [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::URLMethod, nil]
1613
+ optional :url_method,
1614
+ enum: -> {
1615
+ Telnyx::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::URLMethod
1616
+ },
1617
+ api_name: :UrlMethod
1618
+
1619
+ # @!method initialize(application_sid: nil, async_amd: nil, async_amd_status_callback: nil, async_amd_status_callback_method: nil, caller_id: nil, cancel_playback_on_detect_message_end: nil, cancel_playback_on_machine_detection: nil, custom_headers: nil, detection_mode: nil, fallback_url: nil, from: nil, machine_detection: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, media_encryption: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_timeout: nil, recording_track: nil, send_recording_url: nil, sip_auth_password: nil, sip_auth_username: nil, sip_region: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, supervise_call_sid: nil, supervising_role: nil, texml: nil, time_limit: nil, timeout: nil, to: nil, trim: nil, url: nil, url_method: nil)
1620
+ # Some parameter documentations has been truncated, see
1621
+ # {Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault} for
1622
+ # more details.
1623
+ #
1624
+ # @param application_sid [String] The ID of the TeXML Application.
1625
+ #
1626
+ # @param async_amd [Boolean] Select whether to perform answering machine detection in the background. By defa
1627
+ #
1628
+ # @param async_amd_status_callback [String] URL destination for Telnyx to send AMD callback events to for the call.
1629
+ #
1630
+ # @param async_amd_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::AsyncAmdStatusCallbackMethod] HTTP request type used for `AsyncAmdStatusCallback`. The default value is inheri
1631
+ #
1632
+ # @param caller_id [String] To be used as the caller id name (SIP From Display Name) presented to the destin
1633
+ #
1634
+ # @param cancel_playback_on_detect_message_end [Boolean] Whether to cancel ongoing playback on `greeting ended` detection. Defaults to `t
1635
+ #
1636
+ # @param cancel_playback_on_machine_detection [Boolean] Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
1637
+ #
1638
+ # @param custom_headers [Array<Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::CustomHeader>] Custom HTTP headers to be sent with the call. Each header should be an object wi
1639
+ #
1640
+ # @param detection_mode [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::DetectionMode] Allows you to chose between Premium and Standard detections.
1641
+ #
1642
+ # @param fallback_url [String] A failover URL for which Telnyx will retrieve the TeXML call instructions if the
1643
+ #
1644
+ # @param from [String] The phone number of the party that initiated the call. Phone numbers are formatt
1645
+ #
1646
+ # @param machine_detection [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::MachineDetection] Enables Answering Machine Detection.
1647
+ #
1648
+ # @param machine_detection_silence_timeout [Integer] If initial silence duration is greater than this value, consider it a machine. I
1649
+ #
1650
+ # @param machine_detection_speech_end_threshold [Integer] Silence duration threshold after a greeting message or voice for it be considere
1651
+ #
1652
+ # @param machine_detection_speech_threshold [Integer] Maximum threshold of a human greeting. If greeting longer than this value, consi
1653
+ #
1654
+ # @param machine_detection_timeout [Integer] Maximum timeout threshold in milliseconds for overall detection.
1655
+ #
1656
+ # @param media_encryption [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::MediaEncryption] Defines whether media should be encrypted on the call. When set to `SRTP`, the c
1657
+ #
1658
+ # @param preferred_codecs [String] The list of comma-separated codecs to be offered on a call.
1659
+ #
1660
+ # @param record [Boolean] Whether to record the entire participant's call leg. Defaults to `false`.
1661
+ #
1662
+ # @param recording_channels [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingChannels] The number of channels in the final recording. Defaults to `mono`.
1663
+ #
1664
+ # @param recording_status_callback [String] The URL the recording callbacks will be sent to.
1665
+ #
1666
+ # @param recording_status_callback_event [String] The changes to the recording's state that should generate a call to `RecoridngSt
1667
+ #
1668
+ # @param recording_status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingStatusCallbackMethod] HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
1669
+ #
1670
+ # @param recording_timeout [Integer] The number of seconds that Telnyx will wait for the recording to be stopped if s
1671
+ #
1672
+ # @param recording_track [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::RecordingTrack] The audio track to record for the call. The default is `both`.
1673
+ #
1674
+ # @param send_recording_url [Boolean] Whether to send RecordingUrl in webhooks.
1675
+ #
1676
+ # @param sip_auth_password [String] The password to use for SIP authentication.
1677
+ #
1678
+ # @param sip_auth_username [String] The username to use for SIP authentication.
1679
+ #
1680
+ # @param sip_region [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::SipRegion] Defines the SIP region to be used for the call.
1681
+ #
1682
+ # @param status_callback [String] URL destination for Telnyx to send status callback events to for the call.
1683
+ #
1684
+ # @param status_callback_event [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::StatusCallbackEvent] The call events for which Telnyx should send a webhook. Multiple events can be d
1685
+ #
1686
+ # @param status_callback_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::StatusCallbackMethod] HTTP request type used for `StatusCallback`.
1687
+ #
1688
+ # @param supervise_call_sid [String] The call control ID of the existing call to supervise. When provided, the create
1689
+ #
1690
+ # @param supervising_role [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::SupervisingRole] The supervising role for the new leg. Determines the audio behavior: barge (hear
1691
+ #
1692
+ # @param texml [Object]
1693
+ #
1694
+ # @param time_limit [Integer] The maximum duration of the call in seconds. The minimum value is 30 and the max
1695
+ #
1696
+ # @param timeout [Integer] The number of seconds to wait for the called party to answer the call before the
1697
+ #
1698
+ # @param to [String] The phone number of the called party. Phone numbers are formatted with a `+` and
1699
+ #
1700
+ # @param trim [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::Trim] Whether to trim any leading and trailing silence from the recording. Defaults to
1701
+ #
1702
+ # @param url [Object]
1703
+ #
1704
+ # @param url_method [Symbol, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault::URLMethod] HTTP request type used for `Url`. The default value is inherited from TeXML Appl
1705
+
1706
+ # HTTP request type used for `AsyncAmdStatusCallback`. The default value is
1707
+ # inherited from TeXML Application setting.
1708
+ #
1709
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#async_amd_status_callback_method
1710
+ module AsyncAmdStatusCallbackMethod
1711
+ extend Telnyx::Internal::Type::Enum
1712
+
1713
+ GET = :GET
1714
+ POST = :POST
1715
+
1716
+ # @!method self.values
1717
+ # @return [Array<Symbol>]
1718
+ end
1719
+
1720
+ class CustomHeader < Telnyx::Internal::Type::BaseModel
1721
+ # @!attribute name
1722
+ # The name of the custom header
1723
+ #
1724
+ # @return [String]
1725
+ required :name, String
1726
+
1727
+ # @!attribute value
1728
+ # The value of the custom header
1729
+ #
1730
+ # @return [String]
1731
+ required :value, String
1732
+
1733
+ # @!method initialize(name:, value:)
1734
+ # @param name [String] The name of the custom header
1735
+ #
1736
+ # @param value [String] The value of the custom header
1737
+ end
1738
+
1739
+ # Allows you to chose between Premium and Standard detections.
1740
+ #
1741
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#detection_mode
1742
+ module DetectionMode
1743
+ extend Telnyx::Internal::Type::Enum
1744
+
1745
+ PREMIUM = :Premium
1746
+ REGULAR = :Regular
1747
+
1748
+ # @!method self.values
1749
+ # @return [Array<Symbol>]
1750
+ end
1751
+
1752
+ # Enables Answering Machine Detection.
1753
+ #
1754
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#machine_detection
1755
+ module MachineDetection
1756
+ extend Telnyx::Internal::Type::Enum
1757
+
1758
+ ENABLE = :Enable
1759
+ DISABLE = :Disable
1760
+ DETECT_MESSAGE_END = :DetectMessageEnd
1761
+
1762
+ # @!method self.values
1763
+ # @return [Array<Symbol>]
1764
+ end
1765
+
1766
+ # Defines whether media should be encrypted on the call. When set to `SRTP`, the
1767
+ # call will use Secure Real-time Transport Protocol for media encryption. When set
1768
+ # to `DTLS`, the call will use DTLS for media encryption. Only supported for SIP
1769
+ # destinations.
1770
+ #
1771
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#media_encryption
1772
+ module MediaEncryption
1773
+ extend Telnyx::Internal::Type::Enum
1774
+
1775
+ DISABLED = :disabled
1776
+ SRTP = :SRTP
1777
+ DTLS = :DTLS
1778
+
1779
+ # @!method self.values
1780
+ # @return [Array<Symbol>]
1781
+ end
1782
+
1783
+ # The number of channels in the final recording. Defaults to `mono`.
1784
+ #
1785
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#recording_channels
1786
+ module RecordingChannels
1787
+ extend Telnyx::Internal::Type::Enum
1788
+
1789
+ MONO = :mono
1790
+ DUAL = :dual
1791
+
1792
+ # @!method self.values
1793
+ # @return [Array<Symbol>]
1794
+ end
1795
+
1796
+ # HTTP request type used for `RecordingStatusCallback`. Defaults to `POST`.
1797
+ #
1798
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#recording_status_callback_method
1799
+ module RecordingStatusCallbackMethod
1800
+ extend Telnyx::Internal::Type::Enum
1801
+
1802
+ GET = :GET
1803
+ POST = :POST
1804
+
1805
+ # @!method self.values
1806
+ # @return [Array<Symbol>]
1807
+ end
1808
+
1809
+ # The audio track to record for the call. The default is `both`.
1810
+ #
1811
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#recording_track
1812
+ module RecordingTrack
1813
+ extend Telnyx::Internal::Type::Enum
1814
+
1815
+ INBOUND = :inbound
1816
+ OUTBOUND = :outbound
1817
+ BOTH = :both
1818
+
1819
+ # @!method self.values
1820
+ # @return [Array<Symbol>]
1821
+ end
1822
+
1823
+ # Defines the SIP region to be used for the call.
1824
+ #
1825
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#sip_region
1826
+ module SipRegion
1827
+ extend Telnyx::Internal::Type::Enum
1828
+
1829
+ US = :US
1830
+ EUROPE = :Europe
1831
+ CANADA = :Canada
1832
+ AUSTRALIA = :Australia
1833
+ MIDDLE_EAST = :"Middle East"
1834
+
1835
+ # @!method self.values
1836
+ # @return [Array<Symbol>]
1837
+ end
1838
+
1839
+ # The call events for which Telnyx should send a webhook. Multiple events can be
1840
+ # defined when separated by a space.
1841
+ #
1842
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#status_callback_event
1843
+ module StatusCallbackEvent
1844
+ extend Telnyx::Internal::Type::Enum
1845
+
1846
+ INITIATED = :initiated
1847
+ RINGING = :ringing
1848
+ ANSWERED = :answered
1849
+ COMPLETED = :completed
1850
+
1851
+ # @!method self.values
1852
+ # @return [Array<Symbol>]
1853
+ end
1854
+
1855
+ # HTTP request type used for `StatusCallback`.
1856
+ #
1857
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#status_callback_method
1858
+ module StatusCallbackMethod
1859
+ extend Telnyx::Internal::Type::Enum
1860
+
1861
+ GET = :GET
1862
+ POST = :POST
1863
+
1864
+ # @!method self.values
1865
+ # @return [Array<Symbol>]
1866
+ end
1867
+
1868
+ # The supervising role for the new leg. Determines the audio behavior: barge (hear
1869
+ # both sides), whisper (only hear supervisor), monitor (hear both sides but
1870
+ # supervisor muted). Default: barge
1871
+ #
1872
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#supervising_role
1873
+ module SupervisingRole
1874
+ extend Telnyx::Internal::Type::Enum
1875
+
1876
+ BARGE = :barge
1877
+ WHISPER = :whisper
1878
+ MONITOR = :monitor
1879
+
1880
+ # @!method self.values
1881
+ # @return [Array<Symbol>]
1882
+ end
1883
+
1884
+ # Whether to trim any leading and trailing silence from the recording. Defaults to
1885
+ # `trim-silence`.
1886
+ #
1887
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#trim
1888
+ module Trim
1889
+ extend Telnyx::Internal::Type::Enum
1890
+
1891
+ TRIM_SILENCE = :"trim-silence"
1892
+ DO_NOT_TRIM = :"do-not-trim"
1893
+
1894
+ # @!method self.values
1895
+ # @return [Array<Symbol>]
1896
+ end
1897
+
1898
+ # HTTP request type used for `Url`. The default value is inherited from TeXML
1899
+ # Application setting.
1900
+ #
1901
+ # @see Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault#url_method
1902
+ module URLMethod
1903
+ extend Telnyx::Internal::Type::Enum
1904
+
1905
+ GET = :GET
1906
+ POST = :POST
1907
+
1908
+ # @!method self.values
1909
+ # @return [Array<Symbol>]
1910
+ end
1911
+ end
1912
+
1913
+ # @!method self.variants
1914
+ # @return [Array(Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithURL, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::WithTeXml, Telnyx::Models::Texml::Accounts::CallCallsParams::Body::ApplicationDefault)]
569
1915
  end
570
1916
  end
571
1917
  end