twilio-ruby 5.7.0 → 5.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: df9978edce096bf5092e3d6ac5a54c02d063795f
4
- data.tar.gz: beb0f63c4bb36035ea5e78dcb32c258d388fb49e
3
+ metadata.gz: 739e64ed88c197acb2ad3f6e2a24892379b9113a
4
+ data.tar.gz: 5032005bd70defd556793d46340e7daea90c75f6
5
5
  SHA512:
6
- metadata.gz: 6b31f0cedb31d01c8bea49036beff344fb865f90479ac21300a36415d1e691b7c3130dbf428d2914664560ff02432993a16567989f84c936ed7f8c513b755a4e
7
- data.tar.gz: e6ae47e713762e25cf73505817d6a81e0177242df3fe5e3b365639871deb03e03bf978729b2dcd9970d92e2e194e60edf064827c1eed4a39eec47b5c21293a1b
6
+ metadata.gz: 5cfb21a2b9d9ea4395f5af8bcb67440558016bb4820db24bacff9c255227894931f7c76630c1ea5fb8faf897f58d8881e63aa44a2bbcfd391418fcde198976cb
7
+ data.tar.gz: b962b9d40e2bc71db724bcb4842b62c6e4baecde44fe1bd16f19ce18ee6f7995c25d25d237ccdefe611749d0a0d4702e2b8416ba154514b896333f47f865aa8a
data/CHANGES.md CHANGED
@@ -1,6 +1,19 @@
1
1
  twilio-ruby changelog
2
2
  =====================
3
3
 
4
+ [2018-03-09] Version 5.7.1
5
+ ---------------------------
6
+ **Api**
7
+ - Add `caller_id` param to Outbound Calls API
8
+ - Release `trim` recording Outbound Calls API functionality in helper libraries
9
+
10
+ **Video**
11
+ - Add `room_sid` to Composition resource.
12
+
13
+ **Twiml**
14
+ - Adds support for passing in multiple input type enums when setting `input` on `Gather`
15
+
16
+
4
17
  [2018-03-02] Version 5.7.0
5
18
  ---------------------------
6
19
  **TwiML**
data/README.md CHANGED
@@ -27,13 +27,13 @@ in-line code documentation here in the library.
27
27
  To install using [Bundler][bundler] grab the latest stable version:
28
28
 
29
29
  ```ruby
30
- gem 'twilio-ruby', '~> 5.7.0'
30
+ gem 'twilio-ruby', '~> 5.7.1'
31
31
  ```
32
32
 
33
33
  To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
34
34
 
35
35
  ```bash
36
- gem install twilio-ruby -v 5.7.0
36
+ gem install twilio-ruby -v 5.7.1
37
37
  ```
38
38
 
39
39
  To build and install the development branch yourself from the latest source:
@@ -78,6 +78,12 @@ module Twilio
78
78
  # Twilio should wait while machine_detection is performned before timing out.
79
79
  # @param [String] recording_status_callback_event The
80
80
  # recording_status_callback_event
81
+ # @param [String] trim Set this parameter to control trimming of silence on the
82
+ # recording. Possible values are `trim-silence` or `do-not-trim`. Defaults to
83
+ # `trim-silence`.
84
+ # @param [String] caller_id The phone number, SIP address or Client identifier
85
+ # that made this Call. Phone numbers are in E.164 format (e.g. +16175551212). SIP
86
+ # addresses are formatted as `name@company.com`.
81
87
  # @param [String] url The fully qualified URL that should be consulted when the
82
88
  # call connects. Just like when you set a URL on a phone number for handling
83
89
  # inbound calls.
@@ -85,7 +91,7 @@ module Twilio
85
91
  # should use to handle this phone call. If this parameter is present, Twilio will
86
92
  # ignore all of the voice URLs passed and use the URLs set on the application.
87
93
  # @return [CallInstance] Newly created CallInstance
88
- def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, if_machine: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, url: :unset, application_sid: :unset)
94
+ def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, if_machine: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, trim: :unset, caller_id: :unset, url: :unset, application_sid: :unset)
89
95
  data = Twilio::Values.of({
90
96
  'To' => to,
91
97
  'From' => from,
@@ -109,6 +115,8 @@ module Twilio
109
115
  'MachineDetection' => machine_detection,
110
116
  'MachineDetectionTimeout' => machine_detection_timeout,
111
117
  'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
118
+ 'Trim' => trim,
119
+ 'CallerId' => caller_id,
112
120
  })
113
121
 
114
122
  payload = @version.create(
@@ -182,7 +182,6 @@ module Twilio
182
182
 
183
183
  # Dependents
184
184
  @steps = nil
185
- @engagement_context = nil
186
185
  end
187
186
 
188
187
  ##
@@ -218,14 +217,6 @@ module Twilio
218
217
  @steps
219
218
  end
220
219
 
221
- ##
222
- # Access the engagement_context
223
- # @return [EngagementContextList]
224
- # @return [EngagementContextContext]
225
- def engagement_context
226
- EngagementContextContext.new(@version, @solution[:flow_sid], @solution[:sid], )
227
- end
228
-
229
220
  ##
230
221
  # Provide a user friendly representation
231
222
  def to_s
@@ -255,6 +246,7 @@ module Twilio
255
246
  'contact_sid' => payload['contact_sid'],
256
247
  'contact_channel_address' => payload['contact_channel_address'],
257
248
  'status' => payload['status'],
249
+ 'context' => payload['context'],
258
250
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
259
251
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
260
252
  'url' => payload['url'],
@@ -313,6 +305,12 @@ module Twilio
313
305
  @properties['status']
314
306
  end
315
307
 
308
+ ##
309
+ # @return [Hash] The context
310
+ def context
311
+ @properties['context']
312
+ end
313
+
316
314
  ##
317
315
  # @return [Time] The date_created
318
316
  def date_created
@@ -351,13 +349,6 @@ module Twilio
351
349
  context.steps
352
350
  end
353
351
 
354
- ##
355
- # Access the engagement_context
356
- # @return [engagement_context] engagement_context
357
- def engagement_context
358
- context.engagement_context
359
- end
360
-
361
352
  ##
362
353
  # Provide a user friendly representation
363
354
  def to_s
@@ -168,9 +168,6 @@ module Twilio
168
168
  # Path Solution
169
169
  @solution = {flow_sid: flow_sid, engagement_sid: engagement_sid, sid: sid, }
170
170
  @uri = "/Flows/#{@solution[:flow_sid]}/Engagements/#{@solution[:engagement_sid]}/Steps/#{@solution[:sid]}"
171
-
172
- # Dependents
173
- @step_context = nil
174
171
  end
175
172
 
176
173
  ##
@@ -194,14 +191,6 @@ module Twilio
194
191
  )
195
192
  end
196
193
 
197
- ##
198
- # Access the step_context
199
- # @return [StepContextList]
200
- # @return [StepContextContext]
201
- def step_context
202
- StepContextContext.new(@version, @solution[:flow_sid], @solution[:engagement_sid], @solution[:sid], )
203
- end
204
-
205
194
  ##
206
195
  # Provide a user friendly representation
207
196
  def to_s
@@ -231,12 +220,12 @@ module Twilio
231
220
  'flow_sid' => payload['flow_sid'],
232
221
  'engagement_sid' => payload['engagement_sid'],
233
222
  'name' => payload['name'],
223
+ 'context' => payload['context'],
234
224
  'transitioned_from' => payload['transitioned_from'],
235
225
  'transitioned_to' => payload['transitioned_to'],
236
226
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
237
227
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
238
228
  'url' => payload['url'],
239
- 'links' => payload['links'],
240
229
  }
241
230
 
242
231
  # Context
@@ -294,6 +283,12 @@ module Twilio
294
283
  @properties['name']
295
284
  end
296
285
 
286
+ ##
287
+ # @return [Hash] The context
288
+ def context
289
+ @properties['context']
290
+ end
291
+
297
292
  ##
298
293
  # @return [String] The transitioned_from
299
294
  def transitioned_from
@@ -324,12 +319,6 @@ module Twilio
324
319
  @properties['url']
325
320
  end
326
321
 
327
- ##
328
- # @return [String] The links
329
- def links
330
- @properties['links']
331
- end
332
-
333
322
  ##
334
323
  # Fetch a StepInstance
335
324
  # @return [StepInstance] Fetched StepInstance
@@ -337,13 +326,6 @@ module Twilio
337
326
  context.fetch
338
327
  end
339
328
 
340
- ##
341
- # Access the step_context
342
- # @return [step_context] step_context
343
- def step_context
344
- context.step_context
345
- end
346
-
347
329
  ##
348
330
  # Provide a user friendly representation
349
331
  def to_s
@@ -30,6 +30,7 @@ module Twilio
30
30
  # @param [composition.Status] status The status
31
31
  # @param [Time] date_created_after The date_created_after
32
32
  # @param [Time] date_created_before The date_created_before
33
+ # @param [String] room_sid The room_sid
33
34
  # @param [Integer] limit Upper limit for the number of records to return. stream()
34
35
  # guarantees to never return more than limit. Default is no limit
35
36
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -37,11 +38,12 @@ module Twilio
37
38
  # but a limit is defined, stream() will attempt to read the limit with the most
38
39
  # efficient page size, i.e. min(limit, 1000)
39
40
  # @return [Array] Array of up to limit results
40
- def list(status: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil)
41
+ def list(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, limit: nil, page_size: nil)
41
42
  self.stream(
42
43
  status: status,
43
44
  date_created_after: date_created_after,
44
45
  date_created_before: date_created_before,
46
+ room_sid: room_sid,
45
47
  limit: limit,
46
48
  page_size: page_size
47
49
  ).entries
@@ -54,6 +56,7 @@ module Twilio
54
56
  # @param [composition.Status] status The status
55
57
  # @param [Time] date_created_after The date_created_after
56
58
  # @param [Time] date_created_before The date_created_before
59
+ # @param [String] room_sid The room_sid
57
60
  # @param [Integer] limit Upper limit for the number of records to return. stream()
58
61
  # guarantees to never return more than limit. Default is no limit.
59
62
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -61,13 +64,14 @@ module Twilio
61
64
  # but a limit is defined, stream() will attempt to read the limit with the most
62
65
  # efficient page size, i.e. min(limit, 1000)
63
66
  # @return [Enumerable] Enumerable that will yield up to limit results
64
- def stream(status: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil)
67
+ def stream(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, limit: nil, page_size: nil)
65
68
  limits = @version.read_limits(limit, page_size)
66
69
 
67
70
  page = self.page(
68
71
  status: status,
69
72
  date_created_after: date_created_after,
70
73
  date_created_before: date_created_before,
74
+ room_sid: room_sid,
71
75
  page_size: limits[:page_size],
72
76
  )
73
77
 
@@ -94,15 +98,17 @@ module Twilio
94
98
  # @param [composition.Status] status The status
95
99
  # @param [Time] date_created_after The date_created_after
96
100
  # @param [Time] date_created_before The date_created_before
101
+ # @param [String] room_sid The room_sid
97
102
  # @param [String] page_token PageToken provided by the API
98
103
  # @param [Integer] page_number Page Number, this value is simply for client state
99
104
  # @param [Integer] page_size Number of records to return, defaults to 50
100
105
  # @return [Page] Page of CompositionInstance
101
- def page(status: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
106
+ def page(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
102
107
  params = Twilio::Values.of({
103
108
  'Status' => status,
104
109
  'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
105
110
  'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
111
+ 'RoomSid' => room_sid,
106
112
  'PageToken' => page_token,
107
113
  'Page' => page_number,
108
114
  'PageSize' => page_size,
@@ -280,6 +286,7 @@ module Twilio
280
286
  'size' => payload['size'].to_i,
281
287
  'duration' => payload['duration'].to_i,
282
288
  'url' => payload['url'],
289
+ 'room_sid' => payload['room_sid'],
283
290
  'links' => payload['links'],
284
291
  }
285
292
 
@@ -389,6 +396,12 @@ module Twilio
389
396
  @properties['url']
390
397
  end
391
398
 
399
+ ##
400
+ # @return [String] The room_sid
401
+ def room_sid
402
+ @properties['room_sid']
403
+ end
404
+
392
405
  ##
393
406
  # @return [String] The links
394
407
  def links
@@ -1,3 +1,3 @@
1
1
  module Twilio
2
- VERSION = '5.7.0'
2
+ VERSION = '5.7.1'
3
3
  end
@@ -77,14 +77,12 @@ describe 'Step' do
77
77
  "flow_sid": "FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
78
78
  "engagement_sid": "FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
79
79
  "name": "incomingRequest",
80
+ "context": {},
80
81
  "transitioned_from": "Trigger",
81
82
  "transitioned_to": "Ended",
82
83
  "date_created": "2017-11-06T12:00:00Z",
83
84
  "date_updated": null,
84
- "url": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
85
- "links": {
86
- "step_context": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context"
87
- }
85
+ "url": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
88
86
  }
89
87
  ]
90
88
  ))
@@ -75,12 +75,12 @@ describe 'Engagement' do
75
75
  "contact_sid": "FCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
76
76
  "contact_channel_address": "+14155555555",
77
77
  "status": "ended",
78
+ "context": {},
78
79
  "date_created": "2017-11-06T12:00:00Z",
79
80
  "date_updated": null,
80
81
  "url": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
81
82
  "links": {
82
- "steps": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps",
83
- "engagement_context": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context"
83
+ "steps": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps"
84
84
  }
85
85
  }
86
86
  ]
@@ -118,14 +118,18 @@ describe 'Engagement' do
118
118
  "sid": "FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
119
119
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
120
120
  "flow_sid": "FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
121
+ "context": {
122
+ "flow": {
123
+ "first_name": "Foo"
124
+ }
125
+ },
121
126
  "contact_sid": "FCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
122
127
  "contact_channel_address": "+18001234567",
123
128
  "status": "active",
124
129
  "date_created": "2015-07-30T20:00:00Z",
125
130
  "date_updated": "2015-07-30T20:00:00Z",
126
131
  "links": {
127
- "steps": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps",
128
- "engagement_context": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context"
132
+ "steps": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps"
129
133
  }
130
134
  }
131
135
  ]
@@ -45,6 +45,7 @@ describe 'Composition' do
45
45
  "bitrate": 64,
46
46
  "size": 4,
47
47
  "duration": 6,
48
+ "room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
48
49
  "url": "https://video.twilio.com/v1/Compositions/CJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
49
50
  "links": {
50
51
  "media": "https://video.twilio.com/v1/Compositions/CJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Media"
@@ -121,6 +122,7 @@ describe 'Composition' do
121
122
  "bitrate": 16,
122
123
  "size": 55,
123
124
  "duration": 10,
125
+ "room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
124
126
  "url": "https://video.twilio.com/v1/Compositions/CJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
125
127
  "links": {
126
128
  "media": "https://video.twilio.com/v1/Compositions/CJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Media"
@@ -208,6 +210,7 @@ describe 'Composition' do
208
210
  "bitrate": 0,
209
211
  "size": 0,
210
212
  "duration": 1,
213
+ "room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
211
214
  "url": "https://video.twilio.com/v1/Compositions/CJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
212
215
  "links": {
213
216
  "media": "https://video.twilio.com/v1/Compositions/CJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Media"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twilio-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.7.0
4
+ version: 5.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Twilio API Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-03-03 00:00:00.000000000 Z
11
+ date: 2018-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -381,9 +381,7 @@ files:
381
381
  - lib/twilio-ruby/rest/studio/v1.rb
382
382
  - lib/twilio-ruby/rest/studio/v1/flow.rb
383
383
  - lib/twilio-ruby/rest/studio/v1/flow/engagement.rb
384
- - lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb
385
384
  - lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb
386
- - lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb
387
385
  - lib/twilio-ruby/rest/sync.rb
388
386
  - lib/twilio-ruby/rest/sync/v1.rb
389
387
  - lib/twilio-ruby/rest/sync/v1/service.rb
@@ -648,8 +646,6 @@ files:
648
646
  - spec/integration/proxy/v1/service/session_spec.rb
649
647
  - spec/integration/proxy/v1/service/short_code_spec.rb
650
648
  - spec/integration/proxy/v1/service_spec.rb
651
- - spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb
652
- - spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb
653
649
  - spec/integration/studio/v1/flow/engagement/step_spec.rb
654
650
  - spec/integration/studio/v1/flow/engagement_spec.rb
655
651
  - spec/integration/studio/v1/flow_spec.rb
@@ -946,8 +942,6 @@ test_files:
946
942
  - spec/integration/proxy/v1/service/session_spec.rb
947
943
  - spec/integration/proxy/v1/service/short_code_spec.rb
948
944
  - spec/integration/proxy/v1/service_spec.rb
949
- - spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb
950
- - spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb
951
945
  - spec/integration/studio/v1/flow/engagement/step_spec.rb
952
946
  - spec/integration/studio/v1/flow/engagement_spec.rb
953
947
  - spec/integration/studio/v1/flow_spec.rb
@@ -1,215 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- module Twilio
8
- module REST
9
- class Studio < Domain
10
- class V1 < Version
11
- class FlowContext < InstanceContext
12
- class EngagementContext < InstanceContext
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
- class EngagementContextList < ListResource
16
- ##
17
- # Initialize the EngagementContextList
18
- # @param [Version] version Version that contains the resource
19
- # @param [String] flow_sid The flow_sid
20
- # @param [String] engagement_sid The engagement_sid
21
- # @return [EngagementContextList] EngagementContextList
22
- def initialize(version, flow_sid: nil, engagement_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {flow_sid: flow_sid, engagement_sid: engagement_sid}
27
- end
28
-
29
- ##
30
- # Provide a user friendly representation
31
- def to_s
32
- '#<Twilio.Studio.V1.EngagementContextList>'
33
- end
34
- end
35
-
36
- ##
37
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
38
- class EngagementContextPage < Page
39
- ##
40
- # Initialize the EngagementContextPage
41
- # @param [Version] version Version that contains the resource
42
- # @param [Response] response Response from the API
43
- # @param [Hash] solution Path solution for the resource
44
- # @return [EngagementContextPage] EngagementContextPage
45
- def initialize(version, response, solution)
46
- super(version, response)
47
-
48
- # Path Solution
49
- @solution = solution
50
- end
51
-
52
- ##
53
- # Build an instance of EngagementContextInstance
54
- # @param [Hash] payload Payload response from the API
55
- # @return [EngagementContextInstance] EngagementContextInstance
56
- def get_instance(payload)
57
- EngagementContextInstance.new(
58
- @version,
59
- payload,
60
- flow_sid: @solution[:flow_sid],
61
- engagement_sid: @solution[:engagement_sid],
62
- )
63
- end
64
-
65
- ##
66
- # Provide a user friendly representation
67
- def to_s
68
- '<Twilio.Studio.V1.EngagementContextPage>'
69
- end
70
- end
71
-
72
- ##
73
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
74
- class EngagementContextContext < InstanceContext
75
- ##
76
- # Initialize the EngagementContextContext
77
- # @param [Version] version Version that contains the resource
78
- # @param [String] flow_sid The flow_sid
79
- # @param [String] engagement_sid The engagement_sid
80
- # @return [EngagementContextContext] EngagementContextContext
81
- def initialize(version, flow_sid, engagement_sid)
82
- super(version)
83
-
84
- # Path Solution
85
- @solution = {flow_sid: flow_sid, engagement_sid: engagement_sid, }
86
- @uri = "/Flows/#{@solution[:flow_sid]}/Engagements/#{@solution[:engagement_sid]}/Context"
87
- end
88
-
89
- ##
90
- # Fetch a EngagementContextInstance
91
- # @return [EngagementContextInstance] Fetched EngagementContextInstance
92
- def fetch
93
- params = Twilio::Values.of({})
94
-
95
- payload = @version.fetch(
96
- 'GET',
97
- @uri,
98
- params,
99
- )
100
-
101
- EngagementContextInstance.new(
102
- @version,
103
- payload,
104
- flow_sid: @solution[:flow_sid],
105
- engagement_sid: @solution[:engagement_sid],
106
- )
107
- end
108
-
109
- ##
110
- # Provide a user friendly representation
111
- def to_s
112
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
113
- "#<Twilio.Studio.V1.EngagementContextContext #{context}>"
114
- end
115
- end
116
-
117
- ##
118
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
119
- class EngagementContextInstance < InstanceResource
120
- ##
121
- # Initialize the EngagementContextInstance
122
- # @param [Version] version Version that contains the resource
123
- # @param [Hash] payload payload that contains response from Twilio
124
- # @param [String] flow_sid The flow_sid
125
- # @param [String] engagement_sid The engagement_sid
126
- # @return [EngagementContextInstance] EngagementContextInstance
127
- def initialize(version, payload, flow_sid: nil, engagement_sid: nil)
128
- super(version)
129
-
130
- # Marshaled Properties
131
- @properties = {
132
- 'account_sid' => payload['account_sid'],
133
- 'context' => payload['context'],
134
- 'engagement_sid' => payload['engagement_sid'],
135
- 'flow_sid' => payload['flow_sid'],
136
- 'url' => payload['url'],
137
- }
138
-
139
- # Context
140
- @instance_context = nil
141
- @params = {'flow_sid' => flow_sid, 'engagement_sid' => engagement_sid, }
142
- end
143
-
144
- ##
145
- # Generate an instance context for the instance, the context is capable of
146
- # performing various actions. All instance actions are proxied to the context
147
- # @return [EngagementContextContext] EngagementContextContext for this EngagementContextInstance
148
- def context
149
- unless @instance_context
150
- @instance_context = EngagementContextContext.new(
151
- @version,
152
- @params['flow_sid'],
153
- @params['engagement_sid'],
154
- )
155
- end
156
- @instance_context
157
- end
158
-
159
- ##
160
- # @return [String] The account_sid
161
- def account_sid
162
- @properties['account_sid']
163
- end
164
-
165
- ##
166
- # @return [Hash] The context
167
- def context
168
- @properties['context']
169
- end
170
-
171
- ##
172
- # @return [String] The engagement_sid
173
- def engagement_sid
174
- @properties['engagement_sid']
175
- end
176
-
177
- ##
178
- # @return [String] The flow_sid
179
- def flow_sid
180
- @properties['flow_sid']
181
- end
182
-
183
- ##
184
- # @return [String] The url
185
- def url
186
- @properties['url']
187
- end
188
-
189
- ##
190
- # Fetch a EngagementContextInstance
191
- # @return [EngagementContextInstance] Fetched EngagementContextInstance
192
- def fetch
193
- context.fetch
194
- end
195
-
196
- ##
197
- # Provide a user friendly representation
198
- def to_s
199
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
200
- "<Twilio.Studio.V1.EngagementContextInstance #{values}>"
201
- end
202
-
203
- ##
204
- # Provide a detailed, user friendly representation
205
- def inspect
206
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
207
- "<Twilio.Studio.V1.EngagementContextInstance #{values}>"
208
- end
209
- end
210
- end
211
- end
212
- end
213
- end
214
- end
215
- end
@@ -1,230 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- module Twilio
8
- module REST
9
- class Studio < Domain
10
- class V1 < Version
11
- class FlowContext < InstanceContext
12
- class EngagementContext < InstanceContext
13
- class StepContext < InstanceContext
14
- ##
15
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
- class StepContextList < ListResource
17
- ##
18
- # Initialize the StepContextList
19
- # @param [Version] version Version that contains the resource
20
- # @param [String] flow_sid The flow_sid
21
- # @param [String] engagement_sid The engagement_sid
22
- # @param [String] step_sid The step_sid
23
- # @return [StepContextList] StepContextList
24
- def initialize(version, flow_sid: nil, engagement_sid: nil, step_sid: nil)
25
- super(version)
26
-
27
- # Path Solution
28
- @solution = {flow_sid: flow_sid, engagement_sid: engagement_sid, step_sid: step_sid}
29
- end
30
-
31
- ##
32
- # Provide a user friendly representation
33
- def to_s
34
- '#<Twilio.Studio.V1.StepContextList>'
35
- end
36
- end
37
-
38
- ##
39
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
40
- class StepContextPage < Page
41
- ##
42
- # Initialize the StepContextPage
43
- # @param [Version] version Version that contains the resource
44
- # @param [Response] response Response from the API
45
- # @param [Hash] solution Path solution for the resource
46
- # @return [StepContextPage] StepContextPage
47
- def initialize(version, response, solution)
48
- super(version, response)
49
-
50
- # Path Solution
51
- @solution = solution
52
- end
53
-
54
- ##
55
- # Build an instance of StepContextInstance
56
- # @param [Hash] payload Payload response from the API
57
- # @return [StepContextInstance] StepContextInstance
58
- def get_instance(payload)
59
- StepContextInstance.new(
60
- @version,
61
- payload,
62
- flow_sid: @solution[:flow_sid],
63
- engagement_sid: @solution[:engagement_sid],
64
- step_sid: @solution[:step_sid],
65
- )
66
- end
67
-
68
- ##
69
- # Provide a user friendly representation
70
- def to_s
71
- '<Twilio.Studio.V1.StepContextPage>'
72
- end
73
- end
74
-
75
- ##
76
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
77
- class StepContextContext < InstanceContext
78
- ##
79
- # Initialize the StepContextContext
80
- # @param [Version] version Version that contains the resource
81
- # @param [String] flow_sid The flow_sid
82
- # @param [String] engagement_sid The engagement_sid
83
- # @param [String] step_sid The step_sid
84
- # @return [StepContextContext] StepContextContext
85
- def initialize(version, flow_sid, engagement_sid, step_sid)
86
- super(version)
87
-
88
- # Path Solution
89
- @solution = {flow_sid: flow_sid, engagement_sid: engagement_sid, step_sid: step_sid, }
90
- @uri = "/Flows/#{@solution[:flow_sid]}/Engagements/#{@solution[:engagement_sid]}/Steps/#{@solution[:step_sid]}/Context"
91
- end
92
-
93
- ##
94
- # Fetch a StepContextInstance
95
- # @return [StepContextInstance] Fetched StepContextInstance
96
- def fetch
97
- params = Twilio::Values.of({})
98
-
99
- payload = @version.fetch(
100
- 'GET',
101
- @uri,
102
- params,
103
- )
104
-
105
- StepContextInstance.new(
106
- @version,
107
- payload,
108
- flow_sid: @solution[:flow_sid],
109
- engagement_sid: @solution[:engagement_sid],
110
- step_sid: @solution[:step_sid],
111
- )
112
- end
113
-
114
- ##
115
- # Provide a user friendly representation
116
- def to_s
117
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
118
- "#<Twilio.Studio.V1.StepContextContext #{context}>"
119
- end
120
- end
121
-
122
- ##
123
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
124
- class StepContextInstance < InstanceResource
125
- ##
126
- # Initialize the StepContextInstance
127
- # @param [Version] version Version that contains the resource
128
- # @param [Hash] payload payload that contains response from Twilio
129
- # @param [String] flow_sid The flow_sid
130
- # @param [String] engagement_sid The engagement_sid
131
- # @param [String] step_sid The step_sid
132
- # @return [StepContextInstance] StepContextInstance
133
- def initialize(version, payload, flow_sid: nil, engagement_sid: nil, step_sid: nil)
134
- super(version)
135
-
136
- # Marshaled Properties
137
- @properties = {
138
- 'account_sid' => payload['account_sid'],
139
- 'context' => payload['context'],
140
- 'engagement_sid' => payload['engagement_sid'],
141
- 'flow_sid' => payload['flow_sid'],
142
- 'step_sid' => payload['step_sid'],
143
- 'url' => payload['url'],
144
- }
145
-
146
- # Context
147
- @instance_context = nil
148
- @params = {'flow_sid' => flow_sid, 'engagement_sid' => engagement_sid, 'step_sid' => step_sid, }
149
- end
150
-
151
- ##
152
- # Generate an instance context for the instance, the context is capable of
153
- # performing various actions. All instance actions are proxied to the context
154
- # @return [StepContextContext] StepContextContext for this StepContextInstance
155
- def context
156
- unless @instance_context
157
- @instance_context = StepContextContext.new(
158
- @version,
159
- @params['flow_sid'],
160
- @params['engagement_sid'],
161
- @params['step_sid'],
162
- )
163
- end
164
- @instance_context
165
- end
166
-
167
- ##
168
- # @return [String] The account_sid
169
- def account_sid
170
- @properties['account_sid']
171
- end
172
-
173
- ##
174
- # @return [Hash] The context
175
- def context
176
- @properties['context']
177
- end
178
-
179
- ##
180
- # @return [String] The engagement_sid
181
- def engagement_sid
182
- @properties['engagement_sid']
183
- end
184
-
185
- ##
186
- # @return [String] The flow_sid
187
- def flow_sid
188
- @properties['flow_sid']
189
- end
190
-
191
- ##
192
- # @return [String] The step_sid
193
- def step_sid
194
- @properties['step_sid']
195
- end
196
-
197
- ##
198
- # @return [String] The url
199
- def url
200
- @properties['url']
201
- end
202
-
203
- ##
204
- # Fetch a StepContextInstance
205
- # @return [StepContextInstance] Fetched StepContextInstance
206
- def fetch
207
- context.fetch
208
- end
209
-
210
- ##
211
- # Provide a user friendly representation
212
- def to_s
213
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
214
- "<Twilio.Studio.V1.StepContextInstance #{values}>"
215
- end
216
-
217
- ##
218
- # Provide a detailed, user friendly representation
219
- def inspect
220
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
221
- "<Twilio.Studio.V1.StepContextInstance #{values}>"
222
- end
223
- end
224
- end
225
- end
226
- end
227
- end
228
- end
229
- end
230
- end
@@ -1,49 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- require 'spec_helper.rb'
8
-
9
- describe 'EngagementContext' do
10
- it "can fetch" do
11
- @holodeck.mock(Twilio::Response.new(500, ''))
12
-
13
- expect {
14
- @client.studio.v1.flows('FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
15
- .engagements('FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
16
- .engagement_context().fetch()
17
- }.to raise_exception(Twilio::REST::TwilioError)
18
-
19
- values = {}
20
- expect(
21
- @holodeck.has_request?(Holodeck::Request.new(
22
- method: 'get',
23
- url: 'https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context',
24
- ))).to eq(true)
25
- end
26
-
27
- it "receives fetch responses" do
28
- @holodeck.mock(Twilio::Response.new(
29
- 200,
30
- %q[
31
- {
32
- "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
33
- "context": {
34
- "foo": "bar"
35
- },
36
- "flow_sid": "FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
37
- "engagement_sid": "FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
38
- "url": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context"
39
- }
40
- ]
41
- ))
42
-
43
- actual = @client.studio.v1.flows('FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
44
- .engagements('FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
45
- .engagement_context().fetch()
46
-
47
- expect(actual).to_not eq(nil)
48
- end
49
- end
@@ -1,52 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- require 'spec_helper.rb'
8
-
9
- describe 'StepContext' do
10
- it "can fetch" do
11
- @holodeck.mock(Twilio::Response.new(500, ''))
12
-
13
- expect {
14
- @client.studio.v1.flows('FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
15
- .engagements('FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
16
- .steps('FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
17
- .step_context().fetch()
18
- }.to raise_exception(Twilio::REST::TwilioError)
19
-
20
- values = {}
21
- expect(
22
- @holodeck.has_request?(Holodeck::Request.new(
23
- method: 'get',
24
- url: 'https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context',
25
- ))).to eq(true)
26
- end
27
-
28
- it "receives fetch responses" do
29
- @holodeck.mock(Twilio::Response.new(
30
- 200,
31
- %q[
32
- {
33
- "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
34
- "context": {
35
- "foo": "bar"
36
- },
37
- "flow_sid": "FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
38
- "engagement_sid": "FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
39
- "step_sid": "FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
40
- "url": "https://studio.twilio.com/v1/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Engagements/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context"
41
- }
42
- ]
43
- ))
44
-
45
- actual = @client.studio.v1.flows('FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
46
- .engagements('FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
47
- .steps('FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') \
48
- .step_context().fetch()
49
-
50
- expect(actual).to_not eq(nil)
51
- end
52
- end