bandwidth-sdk 2.1.1 → 6.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +85 -70
- data/lib/bandwidth.rb +31 -2
- data/lib/bandwidth/api_helper.rb +14 -9
- data/lib/bandwidth/client.rb +22 -2
- data/lib/bandwidth/configuration.rb +67 -12
- data/lib/bandwidth/http/api_response.rb +2 -0
- data/lib/bandwidth/http/auth/two_factor_auth_basic_auth.rb +22 -0
- data/lib/bandwidth/http/auth/web_rtc_basic_auth.rb +22 -0
- data/lib/bandwidth/http/faraday_client.rb +5 -2
- data/lib/bandwidth/messaging_lib/messaging.rb +5 -3
- data/lib/bandwidth/messaging_lib/messaging/client.rb +13 -2
- data/lib/bandwidth/messaging_lib/messaging/controllers/api_controller.rb +191 -113
- data/lib/bandwidth/messaging_lib/messaging/controllers/base_controller.rb +1 -1
- data/lib/bandwidth/messaging_lib/messaging/exceptions/{generic_client_exception.rb → messaging_exception.rb} +2 -14
- data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_message.rb +23 -13
- data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_message_item.rb +125 -0
- data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_messages_list.rb +60 -0
- data/lib/bandwidth/messaging_lib/messaging/models/media.rb +4 -4
- data/lib/bandwidth/messaging_lib/messaging/models/message_request.rb +21 -8
- data/lib/bandwidth/messaging_lib/messaging/models/page_info.rb +62 -0
- data/lib/bandwidth/messaging_lib/messaging/models/priority_enum.rb +19 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth.rb +22 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/client.rb +51 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/controllers/base_controller.rb +49 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/controllers/mfa_controller.rb +209 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/exceptions/error_with_request_exception.rb +34 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/exceptions/forbidden_request_exception.rb +29 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/exceptions/unauthorized_request_exception.rb +29 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/models/two_factor_code_request_schema.rb +88 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/models/two_factor_messaging_response.rb +35 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/models/two_factor_verify_code_response.rb +35 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/models/two_factor_verify_request_schema.rb +75 -0
- data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/models/two_factor_voice_response.rb +35 -0
- data/lib/bandwidth/utilities/file_wrapper.rb +17 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/bridge.rb +28 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/conference.rb +32 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/gather.rb +13 -1
- data/lib/bandwidth/voice_lib/bxml/verbs/phone_number.rb +7 -1
- data/lib/bandwidth/voice_lib/bxml/verbs/record.rb +9 -1
- data/lib/bandwidth/voice_lib/bxml/verbs/redirect.rb +5 -1
- data/lib/bandwidth/voice_lib/bxml/verbs/ring.rb +15 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/send_dtmf.rb +4 -1
- data/lib/bandwidth/voice_lib/bxml/verbs/sip_uri.rb +25 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/start_gather.rb +20 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/start_recording.rb +4 -1
- data/lib/bandwidth/voice_lib/bxml/verbs/stop_gather.rb +14 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/tag.rb +13 -0
- data/lib/bandwidth/voice_lib/bxml/verbs/transfer.rb +14 -3
- data/lib/bandwidth/voice_lib/voice.rb +19 -4
- data/lib/bandwidth/voice_lib/voice/client.rb +13 -2
- data/lib/bandwidth/voice_lib/voice/controllers/api_controller.rb +1219 -133
- data/lib/bandwidth/voice_lib/voice/controllers/base_controller.rb +1 -1
- data/lib/bandwidth/voice_lib/voice/exceptions/{error_response_exception.rb → api_error_response_exception.rb} +3 -3
- data/lib/bandwidth/voice_lib/voice/models/answer_fallback_method_enum.rb +17 -0
- data/lib/bandwidth/voice_lib/voice/models/api_call_response.rb +56 -2
- data/lib/bandwidth/voice_lib/voice/models/api_call_state_response.rb +164 -0
- data/lib/bandwidth/voice_lib/voice/models/api_create_call_request.rb +135 -12
- data/lib/bandwidth/voice_lib/voice/models/api_modify_call_request.rb +37 -1
- data/lib/bandwidth/voice_lib/voice/models/api_modify_conference_request.rb +107 -0
- data/lib/bandwidth/voice_lib/voice/models/api_transcribe_recording_request.rb +80 -0
- data/lib/bandwidth/voice_lib/voice/models/callback_method_enum.rb +35 -0
- data/lib/bandwidth/voice_lib/voice/models/conference_detail.rb +108 -0
- data/lib/bandwidth/voice_lib/voice/models/conference_event_method_enum.rb +35 -0
- data/lib/bandwidth/voice_lib/voice/models/conference_member_detail.rb +80 -0
- data/lib/bandwidth/voice_lib/voice/models/conference_recording_metadata_response.rb +126 -0
- data/lib/bandwidth/voice_lib/voice/models/disconnect_cause_enum.rb +47 -0
- data/lib/bandwidth/voice_lib/voice/models/modify_call_recording_state.rb +1 -1
- data/lib/bandwidth/voice_lib/voice/models/recording_metadata_response.rb +66 -28
- data/lib/bandwidth/voice_lib/voice/models/redirect_fallback_method_enum.rb +17 -0
- data/lib/bandwidth/voice_lib/voice/models/state1_enum.rb +4 -7
- data/lib/bandwidth/voice_lib/voice/models/state2_enum.rb +20 -0
- data/lib/bandwidth/voice_lib/voice/models/state_enum.rb +7 -4
- data/lib/bandwidth/voice_lib/voice/models/status1_enum.rb +29 -0
- data/lib/bandwidth/voice_lib/voice/models/status3_enum.rb +32 -0
- data/lib/bandwidth/voice_lib/voice/models/status_enum.rb +17 -0
- data/lib/bandwidth/{messaging_lib/messaging/models/field_error.rb → voice_lib/voice/models/transcript.rb} +15 -15
- data/lib/bandwidth/voice_lib/voice/models/transcription.rb +62 -0
- data/lib/bandwidth/voice_lib/voice/models/transcription_response.rb +42 -0
- data/lib/bandwidth/web_rtc_lib/utils/web_rtc_transfer.rb +13 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc.rb +22 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/client.rb +51 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/controllers/api_controller.rb +692 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/controllers/base_controller.rb +49 -0
- data/lib/bandwidth/{messaging_lib/messaging/exceptions/path_client_exception.rb → web_rtc_lib/web_rtc/exceptions/error_exception.rb} +4 -19
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/accounts_participants_response.rb +47 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/device_api_version_enum.rb +17 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/participant.rb +92 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/participant_subscription.rb +35 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/publish_permission_enum.rb +17 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/session.rb +44 -0
- data/lib/bandwidth/web_rtc_lib/web_rtc/models/subscriptions.rb +54 -0
- data/test/integration/test_integration.rb +570 -0
- metadata +132 -19
- data/lib/bandwidth/voice_lib/voice/models/api_get_account_recordings_metadata_request.rb +0 -65
- data/lib/bandwidth/voice_lib/voice/models/transcription_status_enum.rb +0 -20
- data/lib/bandwidth/voice_lib/voice/models/type_enum.rb +0 -32
@@ -4,10 +4,10 @@
|
|
4
4
|
# ( https://apimatic.io ).
|
5
5
|
|
6
6
|
module Bandwidth
|
7
|
-
#
|
8
|
-
class
|
7
|
+
# ApiErrorResponse class.
|
8
|
+
class ApiErrorResponseException < APIException
|
9
9
|
# TODO: Write general description for this method
|
10
|
-
# @return [
|
10
|
+
# @return [String]
|
11
11
|
attr_accessor :type
|
12
12
|
|
13
13
|
# TODO: Write general description for this method
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# bandwidth
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module Bandwidth
|
7
|
+
# AnswerFallbackMethod.
|
8
|
+
class AnswerFallbackMethodEnum
|
9
|
+
ANSWER_FALLBACK_METHOD_ENUM = [
|
10
|
+
# TODO: Write general description for POST
|
11
|
+
POST = 'POST'.freeze,
|
12
|
+
|
13
|
+
# TODO: Write general description for GET
|
14
|
+
GET = 'GET'.freeze
|
15
|
+
].freeze
|
16
|
+
end
|
17
|
+
end
|
@@ -7,6 +7,10 @@ require 'date'
|
|
7
7
|
module Bandwidth
|
8
8
|
# ApiCallResponse Model.
|
9
9
|
class ApiCallResponse < BaseModel
|
10
|
+
# TODO: Write general description for this method
|
11
|
+
# @return [String]
|
12
|
+
attr_accessor :account_id
|
13
|
+
|
10
14
|
# TODO: Write general description for this method
|
11
15
|
# @return [String]
|
12
16
|
attr_accessor :call_id
|
@@ -35,6 +39,10 @@ module Bandwidth
|
|
35
39
|
# @return [Float]
|
36
40
|
attr_accessor :call_timeout
|
37
41
|
|
42
|
+
# TODO: Write general description for this method
|
43
|
+
# @return [Float]
|
44
|
+
attr_accessor :callback_timeout
|
45
|
+
|
38
46
|
# TODO: Write general description for this method
|
39
47
|
# @return [String]
|
40
48
|
attr_accessor :answer_url
|
@@ -43,6 +51,14 @@ module Bandwidth
|
|
43
51
|
# @return [AnswerMethodEnum]
|
44
52
|
attr_accessor :answer_method
|
45
53
|
|
54
|
+
# TODO: Write general description for this method
|
55
|
+
# @return [String]
|
56
|
+
attr_accessor :answer_fallback_url
|
57
|
+
|
58
|
+
# TODO: Write general description for this method
|
59
|
+
# @return [AnswerFallbackMethodEnum]
|
60
|
+
attr_accessor :answer_fallback_method
|
61
|
+
|
46
62
|
# TODO: Write general description for this method
|
47
63
|
# @return [String]
|
48
64
|
attr_accessor :disconnect_url
|
@@ -59,6 +75,14 @@ module Bandwidth
|
|
59
75
|
# @return [String]
|
60
76
|
attr_accessor :password
|
61
77
|
|
78
|
+
# TODO: Write general description for this method
|
79
|
+
# @return [String]
|
80
|
+
attr_accessor :fallback_username
|
81
|
+
|
82
|
+
# TODO: Write general description for this method
|
83
|
+
# @return [String]
|
84
|
+
attr_accessor :fallback_password
|
85
|
+
|
62
86
|
# TODO: Write general description for this method
|
63
87
|
# @return [String]
|
64
88
|
attr_accessor :tag
|
@@ -66,6 +90,7 @@ module Bandwidth
|
|
66
90
|
# A mapping from model property names to API property names.
|
67
91
|
def self.names
|
68
92
|
@_hash = {} if @_hash.nil?
|
93
|
+
@_hash['account_id'] = 'accountId'
|
69
94
|
@_hash['call_id'] = 'callId'
|
70
95
|
@_hash['application_id'] = 'applicationId'
|
71
96
|
@_hash['to'] = 'to'
|
@@ -73,17 +98,23 @@ module Bandwidth
|
|
73
98
|
@_hash['start_time'] = 'startTime'
|
74
99
|
@_hash['call_url'] = 'callUrl'
|
75
100
|
@_hash['call_timeout'] = 'callTimeout'
|
101
|
+
@_hash['callback_timeout'] = 'callbackTimeout'
|
76
102
|
@_hash['answer_url'] = 'answerUrl'
|
77
103
|
@_hash['answer_method'] = 'answerMethod'
|
104
|
+
@_hash['answer_fallback_url'] = 'answerFallbackUrl'
|
105
|
+
@_hash['answer_fallback_method'] = 'answerFallbackMethod'
|
78
106
|
@_hash['disconnect_url'] = 'disconnectUrl'
|
79
107
|
@_hash['disconnect_method'] = 'disconnectMethod'
|
80
108
|
@_hash['username'] = 'username'
|
81
109
|
@_hash['password'] = 'password'
|
110
|
+
@_hash['fallback_username'] = 'fallbackUsername'
|
111
|
+
@_hash['fallback_password'] = 'fallbackPassword'
|
82
112
|
@_hash['tag'] = 'tag'
|
83
113
|
@_hash
|
84
114
|
end
|
85
115
|
|
86
|
-
def initialize(
|
116
|
+
def initialize(account_id = nil,
|
117
|
+
call_id = nil,
|
87
118
|
application_id = nil,
|
88
119
|
to = nil,
|
89
120
|
from = nil,
|
@@ -93,10 +124,16 @@ module Bandwidth
|
|
93
124
|
disconnect_method = nil,
|
94
125
|
start_time = nil,
|
95
126
|
call_timeout = nil,
|
127
|
+
callback_timeout = nil,
|
128
|
+
answer_fallback_url = nil,
|
129
|
+
answer_fallback_method = nil,
|
96
130
|
disconnect_url = nil,
|
97
131
|
username = nil,
|
98
132
|
password = nil,
|
133
|
+
fallback_username = nil,
|
134
|
+
fallback_password = nil,
|
99
135
|
tag = nil)
|
136
|
+
@account_id = account_id
|
100
137
|
@call_id = call_id
|
101
138
|
@application_id = application_id
|
102
139
|
@to = to
|
@@ -104,12 +141,17 @@ module Bandwidth
|
|
104
141
|
@start_time = start_time
|
105
142
|
@call_url = call_url
|
106
143
|
@call_timeout = call_timeout
|
144
|
+
@callback_timeout = callback_timeout
|
107
145
|
@answer_url = answer_url
|
108
146
|
@answer_method = answer_method
|
147
|
+
@answer_fallback_url = answer_fallback_url
|
148
|
+
@answer_fallback_method = answer_fallback_method
|
109
149
|
@disconnect_url = disconnect_url
|
110
150
|
@disconnect_method = disconnect_method
|
111
151
|
@username = username
|
112
152
|
@password = password
|
153
|
+
@fallback_username = fallback_username
|
154
|
+
@fallback_password = fallback_password
|
113
155
|
@tag = tag
|
114
156
|
end
|
115
157
|
|
@@ -118,6 +160,7 @@ module Bandwidth
|
|
118
160
|
return nil unless hash
|
119
161
|
|
120
162
|
# Extract variables from the hash.
|
163
|
+
account_id = hash['accountId']
|
121
164
|
call_id = hash['callId']
|
122
165
|
application_id = hash['applicationId']
|
123
166
|
to = hash['to']
|
@@ -128,13 +171,19 @@ module Bandwidth
|
|
128
171
|
disconnect_method = hash['disconnectMethod']
|
129
172
|
start_time = APIHelper.rfc3339(hash['startTime']) if hash['startTime']
|
130
173
|
call_timeout = hash['callTimeout']
|
174
|
+
callback_timeout = hash['callbackTimeout']
|
175
|
+
answer_fallback_url = hash['answerFallbackUrl']
|
176
|
+
answer_fallback_method = hash['answerFallbackMethod']
|
131
177
|
disconnect_url = hash['disconnectUrl']
|
132
178
|
username = hash['username']
|
133
179
|
password = hash['password']
|
180
|
+
fallback_username = hash['fallbackUsername']
|
181
|
+
fallback_password = hash['fallbackPassword']
|
134
182
|
tag = hash['tag']
|
135
183
|
|
136
184
|
# Create object from extracted values.
|
137
|
-
ApiCallResponse.new(
|
185
|
+
ApiCallResponse.new(account_id,
|
186
|
+
call_id,
|
138
187
|
application_id,
|
139
188
|
to,
|
140
189
|
from,
|
@@ -144,9 +193,14 @@ module Bandwidth
|
|
144
193
|
disconnect_method,
|
145
194
|
start_time,
|
146
195
|
call_timeout,
|
196
|
+
callback_timeout,
|
197
|
+
answer_fallback_url,
|
198
|
+
answer_fallback_method,
|
147
199
|
disconnect_url,
|
148
200
|
username,
|
149
201
|
password,
|
202
|
+
fallback_username,
|
203
|
+
fallback_password,
|
150
204
|
tag)
|
151
205
|
end
|
152
206
|
end
|
@@ -0,0 +1,164 @@
|
|
1
|
+
# bandwidth
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
require 'date'
|
7
|
+
module Bandwidth
|
8
|
+
# ApiCallStateResponse Model.
|
9
|
+
class ApiCallStateResponse < BaseModel
|
10
|
+
# TODO: Write general description for this method
|
11
|
+
# @return [String]
|
12
|
+
attr_accessor :call_id
|
13
|
+
|
14
|
+
# TODO: Write general description for this method
|
15
|
+
# @return [String]
|
16
|
+
attr_accessor :parent_call_id
|
17
|
+
|
18
|
+
# TODO: Write general description for this method
|
19
|
+
# @return [String]
|
20
|
+
attr_accessor :application_id
|
21
|
+
|
22
|
+
# TODO: Write general description for this method
|
23
|
+
# @return [String]
|
24
|
+
attr_accessor :account_id
|
25
|
+
|
26
|
+
# TODO: Write general description for this method
|
27
|
+
# @return [String]
|
28
|
+
attr_accessor :to
|
29
|
+
|
30
|
+
# TODO: Write general description for this method
|
31
|
+
# @return [String]
|
32
|
+
attr_accessor :from
|
33
|
+
|
34
|
+
# TODO: Write general description for this method
|
35
|
+
# @return [String]
|
36
|
+
attr_accessor :direction
|
37
|
+
|
38
|
+
# TODO: Write general description for this method
|
39
|
+
# @return [StateEnum]
|
40
|
+
attr_accessor :state
|
41
|
+
|
42
|
+
# TODO: Write general description for this method
|
43
|
+
# @return [DateTime]
|
44
|
+
attr_accessor :start_time
|
45
|
+
|
46
|
+
# TODO: Write general description for this method
|
47
|
+
# @return [DateTime]
|
48
|
+
attr_accessor :answer_time
|
49
|
+
|
50
|
+
# TODO: Write general description for this method
|
51
|
+
# @return [DateTime]
|
52
|
+
attr_accessor :end_time
|
53
|
+
|
54
|
+
# TODO: Write general description for this method
|
55
|
+
# @return [DisconnectCauseEnum]
|
56
|
+
attr_accessor :disconnect_cause
|
57
|
+
|
58
|
+
# TODO: Write general description for this method
|
59
|
+
# @return [String]
|
60
|
+
attr_accessor :error_message
|
61
|
+
|
62
|
+
# TODO: Write general description for this method
|
63
|
+
# @return [String]
|
64
|
+
attr_accessor :error_id
|
65
|
+
|
66
|
+
# TODO: Write general description for this method
|
67
|
+
# @return [DateTime]
|
68
|
+
attr_accessor :last_update
|
69
|
+
|
70
|
+
# A mapping from model property names to API property names.
|
71
|
+
def self.names
|
72
|
+
@_hash = {} if @_hash.nil?
|
73
|
+
@_hash['call_id'] = 'callId'
|
74
|
+
@_hash['parent_call_id'] = 'parentCallId'
|
75
|
+
@_hash['application_id'] = 'applicationId'
|
76
|
+
@_hash['account_id'] = 'accountId'
|
77
|
+
@_hash['to'] = 'to'
|
78
|
+
@_hash['from'] = 'from'
|
79
|
+
@_hash['direction'] = 'direction'
|
80
|
+
@_hash['state'] = 'state'
|
81
|
+
@_hash['start_time'] = 'startTime'
|
82
|
+
@_hash['answer_time'] = 'answerTime'
|
83
|
+
@_hash['end_time'] = 'endTime'
|
84
|
+
@_hash['disconnect_cause'] = 'disconnectCause'
|
85
|
+
@_hash['error_message'] = 'errorMessage'
|
86
|
+
@_hash['error_id'] = 'errorId'
|
87
|
+
@_hash['last_update'] = 'lastUpdate'
|
88
|
+
@_hash
|
89
|
+
end
|
90
|
+
|
91
|
+
def initialize(call_id = nil,
|
92
|
+
parent_call_id = nil,
|
93
|
+
application_id = nil,
|
94
|
+
account_id = nil,
|
95
|
+
to = nil,
|
96
|
+
from = nil,
|
97
|
+
direction = nil,
|
98
|
+
state = nil,
|
99
|
+
start_time = nil,
|
100
|
+
answer_time = nil,
|
101
|
+
end_time = nil,
|
102
|
+
disconnect_cause = nil,
|
103
|
+
error_message = nil,
|
104
|
+
error_id = nil,
|
105
|
+
last_update = nil)
|
106
|
+
@call_id = call_id
|
107
|
+
@parent_call_id = parent_call_id
|
108
|
+
@application_id = application_id
|
109
|
+
@account_id = account_id
|
110
|
+
@to = to
|
111
|
+
@from = from
|
112
|
+
@direction = direction
|
113
|
+
@state = state
|
114
|
+
@start_time = start_time
|
115
|
+
@answer_time = answer_time
|
116
|
+
@end_time = end_time
|
117
|
+
@disconnect_cause = disconnect_cause
|
118
|
+
@error_message = error_message
|
119
|
+
@error_id = error_id
|
120
|
+
@last_update = last_update
|
121
|
+
end
|
122
|
+
|
123
|
+
# Creates an instance of the object from a hash.
|
124
|
+
def self.from_hash(hash)
|
125
|
+
return nil unless hash
|
126
|
+
|
127
|
+
# Extract variables from the hash.
|
128
|
+
call_id = hash['callId']
|
129
|
+
parent_call_id = hash['parentCallId']
|
130
|
+
application_id = hash['applicationId']
|
131
|
+
account_id = hash['accountId']
|
132
|
+
to = hash['to']
|
133
|
+
from = hash['from']
|
134
|
+
direction = hash['direction']
|
135
|
+
state = hash['state']
|
136
|
+
start_time = APIHelper.rfc3339(hash['startTime']) if hash['startTime']
|
137
|
+
answer_time = APIHelper.rfc3339(hash['answerTime']) if
|
138
|
+
hash['answerTime']
|
139
|
+
end_time = APIHelper.rfc3339(hash['endTime']) if hash['endTime']
|
140
|
+
disconnect_cause = hash['disconnectCause']
|
141
|
+
error_message = hash['errorMessage']
|
142
|
+
error_id = hash['errorId']
|
143
|
+
last_update = APIHelper.rfc3339(hash['lastUpdate']) if
|
144
|
+
hash['lastUpdate']
|
145
|
+
|
146
|
+
# Create object from extracted values.
|
147
|
+
ApiCallStateResponse.new(call_id,
|
148
|
+
parent_call_id,
|
149
|
+
application_id,
|
150
|
+
account_id,
|
151
|
+
to,
|
152
|
+
from,
|
153
|
+
direction,
|
154
|
+
state,
|
155
|
+
start_time,
|
156
|
+
answer_time,
|
157
|
+
end_time,
|
158
|
+
disconnect_cause,
|
159
|
+
error_message,
|
160
|
+
error_id,
|
161
|
+
last_update)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
end
|
@@ -10,60 +10,151 @@ module Bandwidth
|
|
10
10
|
# @return [String]
|
11
11
|
attr_accessor :from
|
12
12
|
|
13
|
-
# Format is E164
|
13
|
+
# Format is E164 or SIP URI
|
14
14
|
# @return [String]
|
15
15
|
attr_accessor :to
|
16
16
|
|
17
|
-
#
|
17
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
18
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
19
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
20
|
+
# exceed 256 characters, including the encoding parameter.
|
21
|
+
# @return [String]
|
22
|
+
attr_accessor :uui
|
23
|
+
|
24
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
25
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
26
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
27
|
+
# exceed 256 characters, including the encoding parameter.
|
18
28
|
# @return [Float]
|
19
29
|
attr_accessor :call_timeout
|
20
30
|
|
21
|
-
#
|
31
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
32
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
33
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
34
|
+
# exceed 256 characters, including the encoding parameter.
|
35
|
+
# @return [Float]
|
36
|
+
attr_accessor :callback_timeout
|
37
|
+
|
38
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
39
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
40
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
41
|
+
# exceed 256 characters, including the encoding parameter.
|
22
42
|
# @return [String]
|
23
43
|
attr_accessor :answer_url
|
24
44
|
|
25
|
-
#
|
45
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
46
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
47
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
48
|
+
# exceed 256 characters, including the encoding parameter.
|
49
|
+
# @return [String]
|
50
|
+
attr_accessor :answer_fallback_url
|
51
|
+
|
52
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
53
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
54
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
55
|
+
# exceed 256 characters, including the encoding parameter.
|
26
56
|
# @return [String]
|
27
57
|
attr_accessor :username
|
28
58
|
|
29
|
-
#
|
59
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
60
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
61
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
62
|
+
# exceed 256 characters, including the encoding parameter.
|
30
63
|
# @return [String]
|
31
64
|
attr_accessor :password
|
32
65
|
|
33
|
-
#
|
66
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
67
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
68
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
69
|
+
# exceed 256 characters, including the encoding parameter.
|
70
|
+
# @return [String]
|
71
|
+
attr_accessor :fallback_username
|
72
|
+
|
73
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
74
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
75
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
76
|
+
# exceed 256 characters, including the encoding parameter.
|
77
|
+
# @return [String]
|
78
|
+
attr_accessor :fallback_password
|
79
|
+
|
80
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
81
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
82
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
83
|
+
# exceed 256 characters, including the encoding parameter.
|
34
84
|
# @return [AnswerMethodEnum]
|
35
85
|
attr_accessor :answer_method
|
36
86
|
|
37
|
-
#
|
87
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
88
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
89
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
90
|
+
# exceed 256 characters, including the encoding parameter.
|
91
|
+
# @return [AnswerFallbackMethodEnum]
|
92
|
+
attr_accessor :answer_fallback_method
|
93
|
+
|
94
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
95
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
96
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
97
|
+
# exceed 256 characters, including the encoding parameter.
|
38
98
|
# @return [String]
|
39
99
|
attr_accessor :disconnect_url
|
40
100
|
|
41
|
-
#
|
101
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
102
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
103
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
104
|
+
# exceed 256 characters, including the encoding parameter.
|
42
105
|
# @return [DisconnectMethodEnum]
|
43
106
|
attr_accessor :disconnect_method
|
44
107
|
|
45
|
-
#
|
108
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
109
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
110
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
111
|
+
# exceed 256 characters, including the encoding parameter.
|
46
112
|
# @return [String]
|
47
113
|
attr_accessor :tag
|
48
114
|
|
49
|
-
#
|
115
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
116
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
117
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
118
|
+
# exceed 256 characters, including the encoding parameter.
|
50
119
|
# @return [String]
|
51
120
|
attr_accessor :application_id
|
52
121
|
|
122
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
123
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
124
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
125
|
+
# exceed 256 characters, including the encoding parameter.
|
126
|
+
# @return [String]
|
127
|
+
attr_accessor :obfuscated_to
|
128
|
+
|
129
|
+
# When calling a SIP URI, this will be sent as the 'User-To-User' header
|
130
|
+
# within the initial INVITE. An 'encoding' parameter must be specified as
|
131
|
+
# described in https://tools.ietf.org/html/rfc7433. This header cannot
|
132
|
+
# exceed 256 characters, including the encoding parameter.
|
133
|
+
# @return [String]
|
134
|
+
attr_accessor :obfuscated_from
|
135
|
+
|
53
136
|
# A mapping from model property names to API property names.
|
54
137
|
def self.names
|
55
138
|
@_hash = {} if @_hash.nil?
|
56
139
|
@_hash['from'] = 'from'
|
57
140
|
@_hash['to'] = 'to'
|
141
|
+
@_hash['uui'] = 'uui'
|
58
142
|
@_hash['call_timeout'] = 'callTimeout'
|
143
|
+
@_hash['callback_timeout'] = 'callbackTimeout'
|
59
144
|
@_hash['answer_url'] = 'answerUrl'
|
145
|
+
@_hash['answer_fallback_url'] = 'answerFallbackUrl'
|
60
146
|
@_hash['username'] = 'username'
|
61
147
|
@_hash['password'] = 'password'
|
148
|
+
@_hash['fallback_username'] = 'fallbackUsername'
|
149
|
+
@_hash['fallback_password'] = 'fallbackPassword'
|
62
150
|
@_hash['answer_method'] = 'answerMethod'
|
151
|
+
@_hash['answer_fallback_method'] = 'answerFallbackMethod'
|
63
152
|
@_hash['disconnect_url'] = 'disconnectUrl'
|
64
153
|
@_hash['disconnect_method'] = 'disconnectMethod'
|
65
154
|
@_hash['tag'] = 'tag'
|
66
155
|
@_hash['application_id'] = 'applicationId'
|
156
|
+
@_hash['obfuscated_to'] = 'obfuscatedTo'
|
157
|
+
@_hash['obfuscated_from'] = 'obfuscatedFrom'
|
67
158
|
@_hash
|
68
159
|
end
|
69
160
|
|
@@ -71,24 +162,40 @@ module Bandwidth
|
|
71
162
|
to = nil,
|
72
163
|
answer_url = nil,
|
73
164
|
application_id = nil,
|
165
|
+
uui = nil,
|
74
166
|
call_timeout = nil,
|
167
|
+
callback_timeout = nil,
|
168
|
+
answer_fallback_url = nil,
|
75
169
|
username = nil,
|
76
170
|
password = nil,
|
171
|
+
fallback_username = nil,
|
172
|
+
fallback_password = nil,
|
77
173
|
answer_method = nil,
|
174
|
+
answer_fallback_method = nil,
|
78
175
|
disconnect_url = nil,
|
79
176
|
disconnect_method = nil,
|
80
|
-
tag = nil
|
177
|
+
tag = nil,
|
178
|
+
obfuscated_to = nil,
|
179
|
+
obfuscated_from = nil)
|
81
180
|
@from = from
|
82
181
|
@to = to
|
182
|
+
@uui = uui
|
83
183
|
@call_timeout = call_timeout
|
184
|
+
@callback_timeout = callback_timeout
|
84
185
|
@answer_url = answer_url
|
186
|
+
@answer_fallback_url = answer_fallback_url
|
85
187
|
@username = username
|
86
188
|
@password = password
|
189
|
+
@fallback_username = fallback_username
|
190
|
+
@fallback_password = fallback_password
|
87
191
|
@answer_method = answer_method
|
192
|
+
@answer_fallback_method = answer_fallback_method
|
88
193
|
@disconnect_url = disconnect_url
|
89
194
|
@disconnect_method = disconnect_method
|
90
195
|
@tag = tag
|
91
196
|
@application_id = application_id
|
197
|
+
@obfuscated_to = obfuscated_to
|
198
|
+
@obfuscated_from = obfuscated_from
|
92
199
|
end
|
93
200
|
|
94
201
|
# Creates an instance of the object from a hash.
|
@@ -100,26 +207,42 @@ module Bandwidth
|
|
100
207
|
to = hash['to']
|
101
208
|
answer_url = hash['answerUrl']
|
102
209
|
application_id = hash['applicationId']
|
210
|
+
uui = hash['uui']
|
103
211
|
call_timeout = hash['callTimeout']
|
212
|
+
callback_timeout = hash['callbackTimeout']
|
213
|
+
answer_fallback_url = hash['answerFallbackUrl']
|
104
214
|
username = hash['username']
|
105
215
|
password = hash['password']
|
216
|
+
fallback_username = hash['fallbackUsername']
|
217
|
+
fallback_password = hash['fallbackPassword']
|
106
218
|
answer_method = hash['answerMethod']
|
219
|
+
answer_fallback_method = hash['answerFallbackMethod']
|
107
220
|
disconnect_url = hash['disconnectUrl']
|
108
221
|
disconnect_method = hash['disconnectMethod']
|
109
222
|
tag = hash['tag']
|
223
|
+
obfuscated_to = hash['obfuscatedTo']
|
224
|
+
obfuscated_from = hash['obfuscatedFrom']
|
110
225
|
|
111
226
|
# Create object from extracted values.
|
112
227
|
ApiCreateCallRequest.new(from,
|
113
228
|
to,
|
114
229
|
answer_url,
|
115
230
|
application_id,
|
231
|
+
uui,
|
116
232
|
call_timeout,
|
233
|
+
callback_timeout,
|
234
|
+
answer_fallback_url,
|
117
235
|
username,
|
118
236
|
password,
|
237
|
+
fallback_username,
|
238
|
+
fallback_password,
|
119
239
|
answer_method,
|
240
|
+
answer_fallback_method,
|
120
241
|
disconnect_url,
|
121
242
|
disconnect_method,
|
122
|
-
tag
|
243
|
+
tag,
|
244
|
+
obfuscated_to,
|
245
|
+
obfuscated_from)
|
123
246
|
end
|
124
247
|
end
|
125
248
|
end
|