Class: Twilio::REST::Taskrouter::V1::WorkspaceContext::WorkflowInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, workspace_sid: nil, sid: nil) ⇒ WorkflowInstance

Initialize the WorkflowInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • workspace_sid (String) (defaults to: nil)

    The workspace_sid

  • sid (String) (defaults to: nil)

    The sid



303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 303

def initialize(version, payload, workspace_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'assignment_callback_url' => payload['assignment_callback_url'],
      'configuration' => payload['configuration'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'document_content_type' => payload['document_content_type'],
      'fallback_assignment_callback_url' => payload['fallback_assignment_callback_url'],
      'friendly_name' => payload['friendly_name'],
      'sid' => payload['sid'],
      'task_reservation_timeout' => payload['task_reservation_timeout'].to_i,
      'workspace_sid' => payload['workspace_sid'],
      'url' => payload['url'],
      'links' => payload['links'],
  }

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

Instance Method Details

#account_sidString

Returns The account_sid.

Returns:

  • (String)

    The account_sid



348
349
350
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 348

def 
  @properties['account_sid']
end

#assignment_callback_urlString

Returns The assignment_callback_url.

Returns:

  • (String)

    The assignment_callback_url



354
355
356
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 354

def assignment_callback_url
  @properties['assignment_callback_url']
end

#configurationString

Returns The configuration.

Returns:

  • (String)

    The configuration



360
361
362
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 360

def configuration
  @properties['configuration']
end

#contextWorkflowContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



335
336
337
338
339
340
341
342
343
344
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 335

def context
  unless @instance_context
    @instance_context = WorkflowContext.new(
        @version,
        @params['workspace_sid'],
        @params['sid'],
    )
  end
  @instance_context
end

#date_createdTime

Returns The date_created.

Returns:

  • (Time)

    The date_created



366
367
368
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 366

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date_updated.

Returns:

  • (Time)

    The date_updated



372
373
374
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 372

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the WorkflowInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



453
454
455
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 453

def delete
  context.delete
end

#document_content_typeString

Returns The document_content_type.

Returns:

  • (String)

    The document_content_type



378
379
380
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 378

def document_content_type
  @properties['document_content_type']
end

#fallback_assignment_callback_urlString

Returns The fallback_assignment_callback_url.

Returns:

  • (String)

    The fallback_assignment_callback_url



384
385
386
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 384

def fallback_assignment_callback_url
  @properties['fallback_assignment_callback_url']
end

#fetchWorkflowInstance

Fetch a WorkflowInstance

Returns:



427
428
429
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 427

def fetch
  context.fetch
end

#friendly_nameString

Returns The friendly_name.

Returns:

  • (String)

    The friendly_name



390
391
392
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 390

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



473
474
475
476
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 473

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

Returns The links.

Returns:

  • (String)

    The links



420
421
422
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 420

def links
  @properties['links']
end

#sidString

Returns The sid.

Returns:

  • (String)

    The sid



396
397
398
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 396

def sid
  @properties['sid']
end

#statisticsstatistics

Access the statistics

Returns:



460
461
462
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 460

def statistics
  context.statistics
end

#task_reservation_timeoutString

Returns The task_reservation_timeout.

Returns:

  • (String)

    The task_reservation_timeout



402
403
404
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 402

def task_reservation_timeout
  @properties['task_reservation_timeout']
end

#to_sObject

Provide a user friendly representation



466
467
468
469
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 466

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

#update(friendly_name: :unset, assignment_callback_url: :unset, fallback_assignment_callback_url: :unset, configuration: :unset, task_reservation_timeout: :unset) ⇒ WorkflowInstance

Update the WorkflowInstance

Parameters:

  • friendly_name (String) (defaults to: :unset)

    The friendly_name

  • assignment_callback_url (String) (defaults to: :unset)

    The assignment_callback_url

  • fallback_assignment_callback_url (String) (defaults to: :unset)

    The fallback_assignment_callback_url

  • configuration (String) (defaults to: :unset)

    The configuration

  • task_reservation_timeout (String) (defaults to: :unset)

    The task_reservation_timeout

Returns:



440
441
442
443
444
445
446
447
448
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 440

def update(friendly_name: :unset, assignment_callback_url: :unset, fallback_assignment_callback_url: :unset, configuration: :unset, task_reservation_timeout: :unset)
  context.update(
      friendly_name: friendly_name,
      assignment_callback_url: assignment_callback_url,
      fallback_assignment_callback_url: fallback_assignment_callback_url,
      configuration: configuration,
      task_reservation_timeout: task_reservation_timeout,
  )
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



414
415
416
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 414

def url
  @properties['url']
end

#workspace_sidString

Returns The workspace_sid.

Returns:

  • (String)

    The workspace_sid



408
409
410
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb', line 408

def workspace_sid
  @properties['workspace_sid']
end