bandwidth-sdk 3.8.0 → 4.0.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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/lib/bandwidth/client.rb +2 -0
  4. data/lib/bandwidth/configuration.rb +23 -4
  5. data/lib/bandwidth/http/api_response.rb +2 -0
  6. data/lib/bandwidth/http/faraday_client.rb +9 -2
  7. data/lib/bandwidth/messaging_lib/messaging/client.rb +2 -0
  8. data/lib/bandwidth/messaging_lib/messaging/controllers/api_controller.rb +8 -8
  9. data/lib/bandwidth/messaging_lib/messaging/controllers/base_controller.rb +1 -1
  10. data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/client.rb +2 -0
  11. data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/controllers/api_controller.rb +3 -3
  12. data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/controllers/base_controller.rb +1 -1
  13. data/lib/bandwidth/two_factor_auth_lib/two_factor_auth/models/two_factor_verify_request_schema.rb +0 -19
  14. data/lib/bandwidth/voice_lib/bxml/verbs/bridge.rb +7 -1
  15. data/lib/bandwidth/voice_lib/bxml/verbs/conference.rb +5 -1
  16. data/lib/bandwidth/voice_lib/bxml/verbs/gather.rb +5 -1
  17. data/lib/bandwidth/voice_lib/bxml/verbs/phone_number.rb +5 -1
  18. data/lib/bandwidth/voice_lib/bxml/verbs/record.rb +5 -1
  19. data/lib/bandwidth/voice_lib/bxml/verbs/redirect.rb +5 -1
  20. data/lib/bandwidth/voice_lib/bxml/verbs/ring.rb +15 -0
  21. data/lib/bandwidth/voice_lib/bxml/verbs/sip_uri.rb +25 -0
  22. data/lib/bandwidth/voice_lib/bxml/verbs/start_gather.rb +20 -0
  23. data/lib/bandwidth/voice_lib/bxml/verbs/stop_gather.rb +14 -0
  24. data/lib/bandwidth/voice_lib/bxml/verbs/tag.rb +13 -0
  25. data/lib/bandwidth/voice_lib/bxml/verbs/transfer.rb +14 -3
  26. data/lib/bandwidth/voice_lib/voice/client.rb +2 -0
  27. data/lib/bandwidth/voice_lib/voice/controllers/api_controller.rb +455 -56
  28. data/lib/bandwidth/voice_lib/voice/controllers/base_controller.rb +1 -1
  29. data/lib/bandwidth/voice_lib/voice/models/answer_fallback_method_enum.rb +17 -0
  30. data/lib/bandwidth/voice_lib/voice/models/api_call_response.rb +45 -0
  31. data/lib/bandwidth/voice_lib/voice/models/api_create_call_request.rb +117 -12
  32. data/lib/bandwidth/voice_lib/voice/models/api_modify_call_request.rb +36 -0
  33. data/lib/bandwidth/voice_lib/voice/models/api_modify_conference_request.rb +107 -0
  34. data/lib/bandwidth/voice_lib/voice/models/api_transcribe_recording_request.rb +11 -2
  35. data/lib/bandwidth/voice_lib/voice/models/call_engine_modify_conference_request.rb +74 -2
  36. data/lib/bandwidth/voice_lib/voice/models/conference_detail.rb +7 -4
  37. data/lib/bandwidth/voice_lib/voice/models/conference_recording_metadata_response.rb +126 -0
  38. data/lib/bandwidth/voice_lib/voice/models/recording_metadata_response.rb +32 -4
  39. data/lib/bandwidth/voice_lib/voice/models/redirect_fallback_method_enum.rb +17 -0
  40. data/lib/bandwidth/voice_lib/voice/models/status1_enum.rb +4 -1
  41. data/lib/bandwidth/voice_lib/voice/models/{status2_enum.rb → status3_enum.rb} +3 -3
  42. data/lib/bandwidth/voice_lib/voice/models/transcription.rb +1 -1
  43. data/lib/bandwidth/voice_lib/voice.rb +5 -2
  44. data/lib/bandwidth/web_rtc_lib/utils/web_rtc_transfer.rb +13 -0
  45. data/lib/bandwidth/web_rtc_lib/web_rtc/client.rb +2 -0
  46. data/lib/bandwidth/web_rtc_lib/web_rtc/controllers/api_controller.rb +24 -24
  47. data/lib/bandwidth/web_rtc_lib/web_rtc/controllers/base_controller.rb +1 -1
  48. data/lib/bandwidth.rb +24 -1
  49. metadata +35 -13
@@ -10,15 +10,71 @@ module Bandwidth
10
10
  # @return [StatusEnum]
11
11
  attr_accessor :status
12
12
 
13
+ # TODO: Write general description for this method
14
+ # @return [String]
15
+ attr_accessor :redirect_url
16
+
17
+ # TODO: Write general description for this method
18
+ # @return [String]
19
+ attr_accessor :redirect_fallback_url
20
+
21
+ # TODO: Write general description for this method
22
+ # @return [RedirectMethodEnum]
23
+ attr_accessor :redirect_method
24
+
25
+ # TODO: Write general description for this method
26
+ # @return [RedirectFallbackMethodEnum]
27
+ attr_accessor :redirect_fallback_method
28
+
29
+ # TODO: Write general description for this method
30
+ # @return [String]
31
+ attr_accessor :username
32
+
33
+ # TODO: Write general description for this method
34
+ # @return [String]
35
+ attr_accessor :password
36
+
37
+ # TODO: Write general description for this method
38
+ # @return [String]
39
+ attr_accessor :fallback_username
40
+
41
+ # TODO: Write general description for this method
42
+ # @return [String]
43
+ attr_accessor :fallback_password
44
+
13
45
  # A mapping from model property names to API property names.
14
46
  def self.names
15
47
  @_hash = {} if @_hash.nil?
16
48
  @_hash['status'] = 'status'
49
+ @_hash['redirect_url'] = 'redirectUrl'
50
+ @_hash['redirect_fallback_url'] = 'redirectFallbackUrl'
51
+ @_hash['redirect_method'] = 'redirectMethod'
52
+ @_hash['redirect_fallback_method'] = 'redirectFallbackMethod'
53
+ @_hash['username'] = 'username'
54
+ @_hash['password'] = 'password'
55
+ @_hash['fallback_username'] = 'fallbackUsername'
56
+ @_hash['fallback_password'] = 'fallbackPassword'
17
57
  @_hash
18
58
  end
19
59
 
20
- def initialize(status = nil)
60
+ def initialize(redirect_url = nil,
61
+ status = nil,
62
+ redirect_fallback_url = nil,
63
+ redirect_method = nil,
64
+ redirect_fallback_method = nil,
65
+ username = nil,
66
+ password = nil,
67
+ fallback_username = nil,
68
+ fallback_password = nil)
21
69
  @status = status
70
+ @redirect_url = redirect_url
71
+ @redirect_fallback_url = redirect_fallback_url
72
+ @redirect_method = redirect_method
73
+ @redirect_fallback_method = redirect_fallback_method
74
+ @username = username
75
+ @password = password
76
+ @fallback_username = fallback_username
77
+ @fallback_password = fallback_password
22
78
  end
23
79
 
24
80
  # Creates an instance of the object from a hash.
@@ -26,10 +82,26 @@ module Bandwidth
26
82
  return nil unless hash
27
83
 
28
84
  # Extract variables from the hash.
85
+ redirect_url = hash['redirectUrl']
29
86
  status = hash['status']
87
+ redirect_fallback_url = hash['redirectFallbackUrl']
88
+ redirect_method = hash['redirectMethod']
89
+ redirect_fallback_method = hash['redirectFallbackMethod']
90
+ username = hash['username']
91
+ password = hash['password']
92
+ fallback_username = hash['fallbackUsername']
93
+ fallback_password = hash['fallbackPassword']
30
94
 
31
95
  # Create object from extracted values.
32
- CallEngineModifyConferenceRequest.new(status)
96
+ CallEngineModifyConferenceRequest.new(redirect_url,
97
+ status,
98
+ redirect_fallback_url,
99
+ redirect_method,
100
+ redirect_fallback_method,
101
+ username,
102
+ password,
103
+ fallback_username,
104
+ fallback_password)
33
105
  end
34
106
  end
35
107
  end
@@ -3,6 +3,7 @@
3
3
  # This file was automatically generated by APIMATIC v2.0
4
4
  # ( https://apimatic.io ).
5
5
 
6
+ require 'date'
6
7
  module Bandwidth
7
8
  # ConferenceDetail Model.
8
9
  class ConferenceDetail < BaseModel
@@ -15,11 +16,11 @@ module Bandwidth
15
16
  attr_accessor :name
16
17
 
17
18
  # TODO: Write general description for this method
18
- # @return [Long]
19
+ # @return [DateTime]
19
20
  attr_accessor :created_time
20
21
 
21
22
  # TODO: Write general description for this method
22
- # @return [Long]
23
+ # @return [DateTime]
23
24
  attr_accessor :completed_time
24
25
 
25
26
  # TODO: Write general description for this method
@@ -77,8 +78,10 @@ module Bandwidth
77
78
  # Extract variables from the hash.
78
79
  id = hash['id']
79
80
  name = hash['name']
80
- created_time = hash['createdTime']
81
- completed_time = hash['completedTime']
81
+ created_time = APIHelper.rfc3339(hash['createdTime']) if
82
+ hash['createdTime']
83
+ completed_time = APIHelper.rfc3339(hash['completedTime']) if
84
+ hash['completedTime']
82
85
  conference_event_url = hash['conferenceEventUrl']
83
86
  conference_event_method = hash['conferenceEventMethod']
84
87
  tag = hash['tag']
@@ -0,0 +1,126 @@
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
+ # ConferenceRecordingMetadataResponse Model.
9
+ class ConferenceRecordingMetadataResponse < BaseModel
10
+ # TODO: Write general description for this method
11
+ # @return [String]
12
+ attr_accessor :account_id
13
+
14
+ # TODO: Write general description for this method
15
+ # @return [String]
16
+ attr_accessor :conference_id
17
+
18
+ # TODO: Write general description for this method
19
+ # @return [String]
20
+ attr_accessor :name
21
+
22
+ # TODO: Write general description for this method
23
+ # @return [String]
24
+ attr_accessor :recording_id
25
+
26
+ # Format is ISO-8601
27
+ # @return [String]
28
+ attr_accessor :duration
29
+
30
+ # Format is ISO-8601
31
+ # @return [Integer]
32
+ attr_accessor :channels
33
+
34
+ # Format is ISO-8601
35
+ # @return [DateTime]
36
+ attr_accessor :start_time
37
+
38
+ # Format is ISO-8601
39
+ # @return [DateTime]
40
+ attr_accessor :end_time
41
+
42
+ # Format is ISO-8601
43
+ # @return [FileFormatEnum]
44
+ attr_accessor :file_format
45
+
46
+ # Format is ISO-8601
47
+ # @return [Status1Enum]
48
+ attr_accessor :status
49
+
50
+ # Format is ISO-8601
51
+ # @return [String]
52
+ attr_accessor :media_url
53
+
54
+ # A mapping from model property names to API property names.
55
+ def self.names
56
+ @_hash = {} if @_hash.nil?
57
+ @_hash['account_id'] = 'accountId'
58
+ @_hash['conference_id'] = 'conferenceId'
59
+ @_hash['name'] = 'name'
60
+ @_hash['recording_id'] = 'recordingId'
61
+ @_hash['duration'] = 'duration'
62
+ @_hash['channels'] = 'channels'
63
+ @_hash['start_time'] = 'startTime'
64
+ @_hash['end_time'] = 'endTime'
65
+ @_hash['file_format'] = 'fileFormat'
66
+ @_hash['status'] = 'status'
67
+ @_hash['media_url'] = 'mediaUrl'
68
+ @_hash
69
+ end
70
+
71
+ def initialize(account_id = nil,
72
+ conference_id = nil,
73
+ name = nil,
74
+ recording_id = nil,
75
+ duration = nil,
76
+ channels = nil,
77
+ start_time = nil,
78
+ end_time = nil,
79
+ file_format = nil,
80
+ status = nil,
81
+ media_url = nil)
82
+ @account_id = account_id
83
+ @conference_id = conference_id
84
+ @name = name
85
+ @recording_id = recording_id
86
+ @duration = duration
87
+ @channels = channels
88
+ @start_time = start_time
89
+ @end_time = end_time
90
+ @file_format = file_format
91
+ @status = status
92
+ @media_url = media_url
93
+ end
94
+
95
+ # Creates an instance of the object from a hash.
96
+ def self.from_hash(hash)
97
+ return nil unless hash
98
+
99
+ # Extract variables from the hash.
100
+ account_id = hash['accountId']
101
+ conference_id = hash['conferenceId']
102
+ name = hash['name']
103
+ recording_id = hash['recordingId']
104
+ duration = hash['duration']
105
+ channels = hash['channels']
106
+ start_time = APIHelper.rfc3339(hash['startTime']) if hash['startTime']
107
+ end_time = APIHelper.rfc3339(hash['endTime']) if hash['endTime']
108
+ file_format = hash['fileFormat']
109
+ status = hash['status']
110
+ media_url = hash['mediaUrl']
111
+
112
+ # Create object from extracted values.
113
+ ConferenceRecordingMetadataResponse.new(account_id,
114
+ conference_id,
115
+ name,
116
+ recording_id,
117
+ duration,
118
+ channels,
119
+ start_time,
120
+ end_time,
121
+ file_format,
122
+ status,
123
+ media_url)
124
+ end
125
+ end
126
+ end
@@ -3,6 +3,7 @@
3
3
  # This file was automatically generated by APIMATIC v2.0
4
4
  # ( https://apimatic.io ).
5
5
 
6
+ require 'date'
6
7
  module Bandwidth
7
8
  # RecordingMetadataResponse Model.
8
9
  class RecordingMetadataResponse < BaseModel
@@ -18,6 +19,10 @@ module Bandwidth
18
19
  # @return [String]
19
20
  attr_accessor :call_id
20
21
 
22
+ # TODO: Write general description for this method
23
+ # @return [String]
24
+ attr_accessor :parent_call_id
25
+
21
26
  # TODO: Write general description for this method
22
27
  # @return [String]
23
28
  attr_accessor :recording_id
@@ -30,6 +35,14 @@ module Bandwidth
30
35
  # @return [String]
31
36
  attr_accessor :from
32
37
 
38
+ # TODO: Write general description for this method
39
+ # @return [String]
40
+ attr_accessor :transfer_caller_id
41
+
42
+ # TODO: Write general description for this method
43
+ # @return [String]
44
+ attr_accessor :transfer_to
45
+
33
46
  # Format is ISO-8601
34
47
  # @return [String]
35
48
  attr_accessor :duration
@@ -43,11 +56,11 @@ module Bandwidth
43
56
  attr_accessor :channels
44
57
 
45
58
  # Format is ISO-8601
46
- # @return [Long]
59
+ # @return [DateTime]
47
60
  attr_accessor :start_time
48
61
 
49
62
  # Format is ISO-8601
50
- # @return [Long]
63
+ # @return [DateTime]
51
64
  attr_accessor :end_time
52
65
 
53
66
  # Format is ISO-8601
@@ -72,9 +85,12 @@ module Bandwidth
72
85
  @_hash['application_id'] = 'applicationId'
73
86
  @_hash['account_id'] = 'accountId'
74
87
  @_hash['call_id'] = 'callId'
88
+ @_hash['parent_call_id'] = 'parentCallId'
75
89
  @_hash['recording_id'] = 'recordingId'
76
90
  @_hash['to'] = 'to'
77
91
  @_hash['from'] = 'from'
92
+ @_hash['transfer_caller_id'] = 'transferCallerId'
93
+ @_hash['transfer_to'] = 'transferTo'
78
94
  @_hash['duration'] = 'duration'
79
95
  @_hash['direction'] = 'direction'
80
96
  @_hash['channels'] = 'channels'
@@ -90,9 +106,12 @@ module Bandwidth
90
106
  def initialize(application_id = nil,
91
107
  account_id = nil,
92
108
  call_id = nil,
109
+ parent_call_id = nil,
93
110
  recording_id = nil,
94
111
  to = nil,
95
112
  from = nil,
113
+ transfer_caller_id = nil,
114
+ transfer_to = nil,
96
115
  duration = nil,
97
116
  direction = nil,
98
117
  channels = nil,
@@ -105,9 +124,12 @@ module Bandwidth
105
124
  @application_id = application_id
106
125
  @account_id = account_id
107
126
  @call_id = call_id
127
+ @parent_call_id = parent_call_id
108
128
  @recording_id = recording_id
109
129
  @to = to
110
130
  @from = from
131
+ @transfer_caller_id = transfer_caller_id
132
+ @transfer_to = transfer_to
111
133
  @duration = duration
112
134
  @direction = direction
113
135
  @channels = channels
@@ -127,14 +149,17 @@ module Bandwidth
127
149
  application_id = hash['applicationId']
128
150
  account_id = hash['accountId']
129
151
  call_id = hash['callId']
152
+ parent_call_id = hash['parentCallId']
130
153
  recording_id = hash['recordingId']
131
154
  to = hash['to']
132
155
  from = hash['from']
156
+ transfer_caller_id = hash['transferCallerId']
157
+ transfer_to = hash['transferTo']
133
158
  duration = hash['duration']
134
159
  direction = hash['direction']
135
160
  channels = hash['channels']
136
- start_time = hash['startTime']
137
- end_time = hash['endTime']
161
+ start_time = APIHelper.rfc3339(hash['startTime']) if hash['startTime']
162
+ end_time = APIHelper.rfc3339(hash['endTime']) if hash['endTime']
138
163
  file_format = hash['fileFormat']
139
164
  status = hash['status']
140
165
  media_url = hash['mediaUrl']
@@ -145,9 +170,12 @@ module Bandwidth
145
170
  RecordingMetadataResponse.new(application_id,
146
171
  account_id,
147
172
  call_id,
173
+ parent_call_id,
148
174
  recording_id,
149
175
  to,
150
176
  from,
177
+ transfer_caller_id,
178
+ transfer_to,
151
179
  duration,
152
180
  direction,
153
181
  channels,
@@ -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
+ # RedirectFallbackMethod.
8
+ class RedirectFallbackMethodEnum
9
+ REDIRECT_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
@@ -20,7 +20,10 @@ module Bandwidth
20
20
  DELETED = 'deleted'.freeze,
21
21
 
22
22
  # TODO: Write general description for ERROR
23
- ERROR = 'error'.freeze
23
+ ERROR = 'error'.freeze,
24
+
25
+ # TODO: Write general description for ALREADYINPROGRESS
26
+ ALREADYINPROGRESS = 'already-in-progress'.freeze
24
27
  ].freeze
25
28
  end
26
29
  end
@@ -4,9 +4,9 @@
4
4
  # ( https://apimatic.io ).
5
5
 
6
6
  module Bandwidth
7
- # Status2.
8
- class Status2Enum
9
- STATUS2_ENUM = [
7
+ # Status3.
8
+ class Status3Enum
9
+ STATUS3_ENUM = [
10
10
  # TODO: Write general description for NONE
11
11
  NONE = 'none'.freeze,
12
12
 
@@ -11,7 +11,7 @@ module Bandwidth
11
11
  attr_accessor :id
12
12
 
13
13
  # TODO: Write general description for this method
14
- # @return [Status2Enum]
14
+ # @return [Status3Enum]
15
15
  attr_accessor :status
16
16
 
17
17
  # TODO: Write general description for this method
@@ -11,15 +11,17 @@ require_relative 'voice/models/api_call_response.rb'
11
11
  require_relative 'voice/models/api_call_state_response.rb'
12
12
  require_relative 'voice/models/api_create_call_request.rb'
13
13
  require_relative 'voice/models/api_modify_call_request.rb'
14
+ require_relative 'voice/models/api_modify_conference_request.rb'
14
15
  require_relative 'voice/models/api_transcribe_recording_request.rb'
15
- require_relative 'voice/models/call_engine_modify_conference_request.rb'
16
16
  require_relative 'voice/models/conference_detail.rb'
17
17
  require_relative 'voice/models/conference_member_detail.rb'
18
+ require_relative 'voice/models/conference_recording_metadata_response.rb'
18
19
  require_relative 'voice/models/modify_call_recording_state.rb'
19
20
  require_relative 'voice/models/recording_metadata_response.rb'
20
21
  require_relative 'voice/models/transcript.rb'
21
22
  require_relative 'voice/models/transcription.rb'
22
23
  require_relative 'voice/models/transcription_response.rb'
24
+ require_relative 'voice/models/answer_fallback_method_enum.rb'
23
25
  require_relative 'voice/models/answer_method_enum.rb'
24
26
  require_relative 'voice/models/callback_method_enum.rb'
25
27
  require_relative 'voice/models/conference_event_method_enum.rb'
@@ -27,13 +29,14 @@ require_relative 'voice/models/direction_enum.rb'
27
29
  require_relative 'voice/models/disconnect_cause_enum.rb'
28
30
  require_relative 'voice/models/disconnect_method_enum.rb'
29
31
  require_relative 'voice/models/file_format_enum.rb'
32
+ require_relative 'voice/models/redirect_fallback_method_enum.rb'
30
33
  require_relative 'voice/models/redirect_method_enum.rb'
31
34
  require_relative 'voice/models/state_enum.rb'
32
35
  require_relative 'voice/models/state1_enum.rb'
33
36
  require_relative 'voice/models/state2_enum.rb'
34
37
  require_relative 'voice/models/status_enum.rb'
35
38
  require_relative 'voice/models/status1_enum.rb'
36
- require_relative 'voice/models/status2_enum.rb'
39
+ require_relative 'voice/models/status3_enum.rb'
37
40
 
38
41
  # Exceptions
39
42
  require_relative 'voice/exceptions/api_error_response_exception.rb'
@@ -0,0 +1,13 @@
1
+ # web_rtc_transfer.rb
2
+ #
3
+ # Custom transfer BXML for WebRtc
4
+ #
5
+ # @copyright Bandwidth INC
6
+
7
+ module Bandwidth
8
+ module WebRtc
9
+ def generate_bxml(device_token, sip_uri="sip:sipx.webrtc.bandwidth.com:5060")
10
+ return '<?xml version="1.0" encoding="UTF-8"?><Response><Transfer><SipUri uui="%s;encoding=jwt">%s</SipUri></Transfer></Response>' % [device_token, sip_uri]
11
+ end
12
+ end
13
+ end
@@ -17,6 +17,7 @@ module Bandwidth
17
17
 
18
18
  def initialize(timeout: 60, max_retries: 0, retry_interval: 1,
19
19
  backoff_factor: 1, environment: Environment::PRODUCTION,
20
+ base_url: 'https://www.example.com',
20
21
  messaging_basic_auth_user_name: 'TODO: Replace',
21
22
  messaging_basic_auth_password: 'TODO: Replace',
22
23
  two_factor_auth_basic_auth_user_name: 'TODO: Replace',
@@ -32,6 +33,7 @@ module Bandwidth
32
33
  retry_interval: retry_interval,
33
34
  backoff_factor: backoff_factor,
34
35
  environment: environment,
36
+ base_url: base_url,
35
37
  messaging_basic_auth_user_name: messaging_basic_auth_user_name,
36
38
  messaging_basic_auth_password: messaging_basic_auth_password,
37
39
  two_factor_auth_basic_auth_user_name: two_factor_auth_basic_auth_user_name,
@@ -24,7 +24,7 @@ module WebRtc
24
24
  _query_builder << '/accounts/{accountId}/participants'
25
25
  _query_builder = APIHelper.append_url_with_template_parameters(
26
26
  _query_builder,
27
- 'accountId' => { 'value' => account_id, 'encode' => true }
27
+ 'accountId' => { 'value' => account_id, 'encode' => false }
28
28
  )
29
29
  _query_url = APIHelper.clean_url _query_builder
30
30
 
@@ -87,8 +87,8 @@ module WebRtc
87
87
  _query_builder << '/accounts/{accountId}/participants/{participantId}'
88
88
  _query_builder = APIHelper.append_url_with_template_parameters(
89
89
  _query_builder,
90
- 'accountId' => { 'value' => account_id, 'encode' => true },
91
- 'participantId' => { 'value' => participant_id, 'encode' => true }
90
+ 'accountId' => { 'value' => account_id, 'encode' => false },
91
+ 'participantId' => { 'value' => participant_id, 'encode' => false }
92
92
  )
93
93
  _query_url = APIHelper.clean_url _query_builder
94
94
 
@@ -148,8 +148,8 @@ module WebRtc
148
148
  _query_builder << '/accounts/{accountId}/participants/{participantId}'
149
149
  _query_builder = APIHelper.append_url_with_template_parameters(
150
150
  _query_builder,
151
- 'accountId' => { 'value' => account_id, 'encode' => true },
152
- 'participantId' => { 'value' => participant_id, 'encode' => true }
151
+ 'accountId' => { 'value' => account_id, 'encode' => false },
152
+ 'participantId' => { 'value' => participant_id, 'encode' => false }
153
153
  )
154
154
  _query_url = APIHelper.clean_url _query_builder
155
155
 
@@ -202,7 +202,7 @@ module WebRtc
202
202
  _query_builder << '/accounts/{accountId}/sessions'
203
203
  _query_builder = APIHelper.append_url_with_template_parameters(
204
204
  _query_builder,
205
- 'accountId' => { 'value' => account_id, 'encode' => true }
205
+ 'accountId' => { 'value' => account_id, 'encode' => false }
206
206
  )
207
207
  _query_url = APIHelper.clean_url _query_builder
208
208
 
@@ -264,8 +264,8 @@ module WebRtc
264
264
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}'
265
265
  _query_builder = APIHelper.append_url_with_template_parameters(
266
266
  _query_builder,
267
- 'accountId' => { 'value' => account_id, 'encode' => true },
268
- 'sessionId' => { 'value' => session_id, 'encode' => true }
267
+ 'accountId' => { 'value' => account_id, 'encode' => false },
268
+ 'sessionId' => { 'value' => session_id, 'encode' => false }
269
269
  )
270
270
  _query_url = APIHelper.clean_url _query_builder
271
271
 
@@ -325,8 +325,8 @@ module WebRtc
325
325
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}'
326
326
  _query_builder = APIHelper.append_url_with_template_parameters(
327
327
  _query_builder,
328
- 'accountId' => { 'value' => account_id, 'encode' => true },
329
- 'sessionId' => { 'value' => session_id, 'encode' => true }
328
+ 'accountId' => { 'value' => account_id, 'encode' => false },
329
+ 'sessionId' => { 'value' => session_id, 'encode' => false }
330
330
  )
331
331
  _query_url = APIHelper.clean_url _query_builder
332
332
 
@@ -377,8 +377,8 @@ module WebRtc
377
377
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants'
378
378
  _query_builder = APIHelper.append_url_with_template_parameters(
379
379
  _query_builder,
380
- 'accountId' => { 'value' => account_id, 'encode' => true },
381
- 'sessionId' => { 'value' => session_id, 'encode' => true }
380
+ 'accountId' => { 'value' => account_id, 'encode' => false },
381
+ 'sessionId' => { 'value' => session_id, 'encode' => false }
382
382
  )
383
383
  _query_url = APIHelper.clean_url _query_builder
384
384
 
@@ -445,9 +445,9 @@ module WebRtc
445
445
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}'
446
446
  _query_builder = APIHelper.append_url_with_template_parameters(
447
447
  _query_builder,
448
- 'accountId' => { 'value' => account_id, 'encode' => true },
449
- 'sessionId' => { 'value' => session_id, 'encode' => true },
450
- 'participantId' => { 'value' => participant_id, 'encode' => true }
448
+ 'accountId' => { 'value' => account_id, 'encode' => false },
449
+ 'sessionId' => { 'value' => session_id, 'encode' => false },
450
+ 'participantId' => { 'value' => participant_id, 'encode' => false }
451
451
  )
452
452
  _query_url = APIHelper.clean_url _query_builder
453
453
 
@@ -509,9 +509,9 @@ module WebRtc
509
509
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}'
510
510
  _query_builder = APIHelper.append_url_with_template_parameters(
511
511
  _query_builder,
512
- 'accountId' => { 'value' => account_id, 'encode' => true },
513
- 'participantId' => { 'value' => participant_id, 'encode' => true },
514
- 'sessionId' => { 'value' => session_id, 'encode' => true }
512
+ 'accountId' => { 'value' => account_id, 'encode' => false },
513
+ 'participantId' => { 'value' => participant_id, 'encode' => false },
514
+ 'sessionId' => { 'value' => session_id, 'encode' => false }
515
515
  )
516
516
  _query_url = APIHelper.clean_url _query_builder
517
517
 
@@ -564,9 +564,9 @@ module WebRtc
564
564
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}/subscriptions'
565
565
  _query_builder = APIHelper.append_url_with_template_parameters(
566
566
  _query_builder,
567
- 'accountId' => { 'value' => account_id, 'encode' => true },
568
- 'participantId' => { 'value' => participant_id, 'encode' => true },
569
- 'sessionId' => { 'value' => session_id, 'encode' => true }
567
+ 'accountId' => { 'value' => account_id, 'encode' => false },
568
+ 'participantId' => { 'value' => participant_id, 'encode' => false },
569
+ 'sessionId' => { 'value' => session_id, 'encode' => false }
570
570
  )
571
571
  _query_url = APIHelper.clean_url _query_builder
572
572
 
@@ -634,9 +634,9 @@ module WebRtc
634
634
  _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}/subscriptions'
635
635
  _query_builder = APIHelper.append_url_with_template_parameters(
636
636
  _query_builder,
637
- 'accountId' => { 'value' => account_id, 'encode' => true },
638
- 'participantId' => { 'value' => participant_id, 'encode' => true },
639
- 'sessionId' => { 'value' => session_id, 'encode' => true }
637
+ 'accountId' => { 'value' => account_id, 'encode' => false },
638
+ 'participantId' => { 'value' => participant_id, 'encode' => false },
639
+ 'sessionId' => { 'value' => session_id, 'encode' => false }
640
640
  )
641
641
  _query_url = APIHelper.clean_url _query_builder
642
642
 
@@ -13,7 +13,7 @@ module Bandwidth
13
13
  @http_call_back = http_call_back
14
14
 
15
15
  @global_headers = {
16
- 'user-agent' => 'ruby-sdk-refs/tags/ruby3.8.0'
16
+ 'user-agent' => 'ruby-sdk'
17
17
  }
18
18
  end
19
19
 
data/lib/bandwidth.rb CHANGED
@@ -42,4 +42,27 @@ require_relative 'bandwidth/http/auth/voice_basic_auth.rb'
42
42
  require_relative 'bandwidth/web_rtc_lib/web_rtc'
43
43
  require_relative 'bandwidth/http/auth/web_rtc_basic_auth.rb'
44
44
 
45
- # Controllers
45
+ # External Files
46
+ require_relative 'bandwidth/voice_lib/bxml/bxml.rb'
47
+ require_relative 'bandwidth/voice_lib/bxml/verbs/bridge.rb'
48
+ require_relative 'bandwidth/voice_lib/bxml/verbs/conference.rb'
49
+ require_relative 'bandwidth/voice_lib/bxml/verbs/forward.rb'
50
+ require_relative 'bandwidth/voice_lib/bxml/verbs/gather.rb'
51
+ require_relative 'bandwidth/voice_lib/bxml/verbs/hangup.rb'
52
+ require_relative 'bandwidth/voice_lib/bxml/verbs/pause.rb'
53
+ require_relative 'bandwidth/voice_lib/bxml/verbs/pause_recording.rb'
54
+ require_relative 'bandwidth/voice_lib/bxml/verbs/phone_number.rb'
55
+ require_relative 'bandwidth/voice_lib/bxml/verbs/play_audio.rb'
56
+ require_relative 'bandwidth/voice_lib/bxml/verbs/record.rb'
57
+ require_relative 'bandwidth/voice_lib/bxml/verbs/redirect.rb'
58
+ require_relative 'bandwidth/voice_lib/bxml/verbs/resume_recording.rb'
59
+ require_relative 'bandwidth/voice_lib/bxml/verbs/ring.rb'
60
+ require_relative 'bandwidth/voice_lib/bxml/verbs/send_dtmf.rb'
61
+ require_relative 'bandwidth/voice_lib/bxml/verbs/speak_sentence.rb'
62
+ require_relative 'bandwidth/voice_lib/bxml/verbs/start_gather.rb'
63
+ require_relative 'bandwidth/voice_lib/bxml/verbs/start_recording.rb'
64
+ require_relative 'bandwidth/voice_lib/bxml/verbs/stop_gather.rb'
65
+ require_relative 'bandwidth/voice_lib/bxml/verbs/stop_recording.rb'
66
+ require_relative 'bandwidth/voice_lib/bxml/verbs/transfer.rb'
67
+ require_relative 'bandwidth/voice_lib/bxml/verbs/xml_verb.rb'
68
+ require_relative 'bandwidth/web_rtc_lib/utils/web_rtc_transfer.rb'