Class: Twilio::REST::Studio::V1::FlowContext::EngagementContext::StepInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, flow_sid: nil, engagement_sid: nil, sid: nil) ⇒ StepInstance

Initialize the StepInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • flow_sid (String) (defaults to: nil)

    The unique SID identifier of the Flow.

  • engagement_sid (String) (defaults to: nil)

    The unique SID identifier of the Engagement.

  • sid (String) (defaults to: nil)

    The unique SID identifier of the Step.



218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 218

def initialize(version, payload, flow_sid: nil, engagement_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'flow_sid' => payload['flow_sid'],
      'engagement_sid' => payload['engagement_sid'],
      'name' => payload['name'],
      'context' => payload['context'],
      'transitioned_from' => payload['transitioned_from'],
      'transitioned_to' => payload['transitioned_to'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'url' => payload['url'],
      'links' => payload['links'],
  }

  # Context
  @instance_context = nil
  @params = {
      'flow_sid' => flow_sid,
      'engagement_sid' => engagement_sid,
      'sid' => sid || @properties['sid'],
  }
end

Instance Method Details

#account_sidString

Returns Account Sid.

Returns:

  • (String)

    Account Sid.



270
271
272
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 270

def 
  @properties['account_sid']
end

#contextHash

Returns The context.

Returns:

  • (Hash)

    The context



250
251
252
253
254
255
256
257
258
259
260
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 250

def context
  unless @instance_context
    @instance_context = StepContext.new(
        @version,
        @params['flow_sid'],
        @params['engagement_sid'],
        @params['sid'],
    )
  end
  @instance_context
end

#date_createdTime

Returns The date this Step was created.

Returns:

  • (Time)

    The date this Step was created



312
313
314
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 312

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date this Step was updated.

Returns:

  • (Time)

    The date this Step was updated



318
319
320
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 318

def date_updated
  @properties['date_updated']
end

#engagement_sidString

Returns Engagement Sid.

Returns:

  • (String)

    Engagement Sid.



282
283
284
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 282

def engagement_sid
  @properties['engagement_sid']
end

#fetchStepInstance

Fetch a StepInstance

Returns:



337
338
339
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 337

def fetch
  context.fetch
end

#flow_sidString

Returns Flow Sid.

Returns:

  • (String)

    Flow Sid.



276
277
278
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 276

def flow_sid
  @properties['flow_sid']
end

#inspectObject

Provide a detailed, user friendly representation



357
358
359
360
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 357

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Studio.V1.StepInstance #{values}>"
end

Returns The links.

Returns:

  • (String)

    The links



330
331
332
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 330

def links
  @properties['links']
end

#nameString

Returns The event that caused the flow to transition to this Step.

Returns:

  • (String)

    The event that caused the flow to transition to this Step.



288
289
290
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 288

def name
  @properties['name']
end

#sidString

Returns A string that uniquely identifies this Step.

Returns:

  • (String)

    A string that uniquely identifies this Step.



264
265
266
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 264

def sid
  @properties['sid']
end

#step_contextstep_context

Access the step_context

Returns:



344
345
346
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 344

def step_context
  context.step_context
end

#to_sObject

Provide a user friendly representation



350
351
352
353
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 350

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Studio.V1.StepInstance #{values}>"
end

#transitioned_fromString

Returns The Widget that preceded the Widget for this Step.

Returns:

  • (String)

    The Widget that preceded the Widget for this Step.



300
301
302
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 300

def transitioned_from
  @properties['transitioned_from']
end

#transitioned_toString

Returns The Widget that will follow the Widget for this Step.

Returns:

  • (String)

    The Widget that will follow the Widget for this Step.



306
307
308
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 306

def transitioned_to
  @properties['transitioned_to']
end

#urlString

Returns The URL of this resource.

Returns:

  • (String)

    The URL of this resource.



324
325
326
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb', line 324

def url
  @properties['url']
end