Class: Twilio::REST::Taskrouter::V1::WorkspaceContext::TaskInstance

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

Instance Method Summary collapse

Constructor Details

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

Initialize the TaskInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • workspace_sid (String) (defaults to: nil)

    The SID of the Workspace that contains the Task.

  • sid (String) (defaults to: nil)

    The SID of the Task resource to fetch.



404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 404

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

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'age' => payload['age'].to_i,
      'assignment_status' => payload['assignment_status'],
      'attributes' => payload['attributes'],
      'addons' => payload['addons'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'task_queue_entered_date' => Twilio.deserialize_iso8601_datetime(payload['task_queue_entered_date']),
      'priority' => payload['priority'].to_i,
      'reason' => payload['reason'],
      'sid' => payload['sid'],
      'task_queue_sid' => payload['task_queue_sid'],
      'task_queue_friendly_name' => payload['task_queue_friendly_name'],
      'task_channel_sid' => payload['task_channel_sid'],
      'task_channel_unique_name' => payload['task_channel_unique_name'],
      'timeout' => payload['timeout'].to_i,
      'workflow_sid' => payload['workflow_sid'],
      'workflow_friendly_name' => payload['workflow_friendly_name'],
      '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 SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource



450
451
452
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 450

def 
  @properties['account_sid']
end

#addonsString

Returns An object that contains the addon data for all installed addons.

Returns:

  • (String)

    An object that contains the addon data for all installed addons



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

def addons
  @properties['addons']
end

#ageString

Returns The number of seconds since the Task was created.

Returns:

  • (String)

    The number of seconds since the Task was created



456
457
458
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 456

def age
  @properties['age']
end

#assignment_statustask.Status

Returns The current status of the Task’s assignment.

Returns:

  • (task.Status)

    The current status of the Task’s assignment



462
463
464
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 462

def assignment_status
  @properties['assignment_status']
end

#attributesString

Returns The JSON string with custom attributes of the work.

Returns:

  • (String)

    The JSON string with custom attributes of the work



468
469
470
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 468

def attributes
  @properties['attributes']
end

#contextTaskContext

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

Returns:



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

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

#date_createdTime

Returns The ISO 8601 date and time in GMT when the resource was created.

Returns:

  • (Time)

    The ISO 8601 date and time in GMT when the resource was created



480
481
482
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 480

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The ISO 8601 date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The ISO 8601 date and time in GMT when the resource was last updated



486
487
488
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 486

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Delete the TaskInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



612
613
614
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 612

def delete
  context.delete
end

#fetchTaskInstance

Fetch the TaskInstance

Returns:



577
578
579
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 577

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



632
633
634
635
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 632

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

Returns The URLs of related resources.

Returns:

  • (String)

    The URLs of related resources



570
571
572
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 570

def links
  @properties['links']
end

#priorityString

Returns Retrieve the list of all Tasks in the Workspace with the specified priority.

Returns:

  • (String)

    Retrieve the list of all Tasks in the Workspace with the specified priority



498
499
500
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 498

def priority
  @properties['priority']
end

#reasonString

Returns The reason the Task was canceled or completed.

Returns:

  • (String)

    The reason the Task was canceled or completed



504
505
506
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 504

def reason
  @properties['reason']
end

#reservationsreservations

Access the reservations

Returns:



619
620
621
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 619

def reservations
  context.reservations
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



510
511
512
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 510

def sid
  @properties['sid']
end

#task_channel_sidString

Returns The SID of the TaskChannel.

Returns:

  • (String)

    The SID of the TaskChannel



528
529
530
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 528

def task_channel_sid
  @properties['task_channel_sid']
end

#task_channel_unique_nameString

Returns The unique name of the TaskChannel.

Returns:

  • (String)

    The unique name of the TaskChannel



534
535
536
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 534

def task_channel_unique_name
  @properties['task_channel_unique_name']
end

#task_queue_entered_dateTime

Returns The ISO 8601 date and time in GMT when the Task entered the TaskQueue.

Returns:

  • (Time)

    The ISO 8601 date and time in GMT when the Task entered the TaskQueue.



492
493
494
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 492

def task_queue_entered_date
  @properties['task_queue_entered_date']
end

#task_queue_friendly_nameString

Returns The friendly name of the TaskQueue.

Returns:

  • (String)

    The friendly name of the TaskQueue



522
523
524
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 522

def task_queue_friendly_name
  @properties['task_queue_friendly_name']
end

#task_queue_sidString

Returns The SID of the TaskQueue.

Returns:

  • (String)

    The SID of the TaskQueue



516
517
518
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 516

def task_queue_sid
  @properties['task_queue_sid']
end

#timeoutString

Returns The amount of time in seconds that the Task is allowed to live.

Returns:

  • (String)

    The amount of time in seconds that the Task is allowed to live



540
541
542
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 540

def timeout
  @properties['timeout']
end

#to_sObject

Provide a user friendly representation



625
626
627
628
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 625

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

#update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset) ⇒ TaskInstance

Update the TaskInstance

Parameters:

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

    The JSON string that describes the custom attributes of the task.

  • assignment_status (task.Status) (defaults to: :unset)

    The new status of the task. Can be: ‘canceled`, to cancel a Task that is currently `pending` or `reserved`; `wrapping`, to move the Task to wrapup state; or `completed`, to move a Task to the completed state.

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

    The reason that the Task was canceled or completed. This parameter is required only if the Task is canceled or completed. Setting this value queues the task for deletion and logs the reason.

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

    The Task’s new priority value. When supplied, the Task takes on the specified priority unless it matches a Workflow Target with a Priority set. Value can be 0 to 2^31^ (2,147,483,647).

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

    When MultiTasking is enabled, specify the TaskChannel with the task to update. Can be the TaskChannel’s SID or its ‘unique_name`, such as `voice`, `sms`, or `default`.

Returns:



599
600
601
602
603
604
605
606
607
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 599

def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset)
  context.update(
      attributes: attributes,
      assignment_status: assignment_status,
      reason: reason,
      priority: priority,
      task_channel: task_channel,
  )
end

#urlString

Returns The absolute URL of the Task resource.

Returns:

  • (String)

    The absolute URL of the Task resource



564
565
566
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 564

def url
  @properties['url']
end

#workflow_friendly_nameString

Returns The friendly name of the Workflow that is controlling the Task.

Returns:

  • (String)

    The friendly name of the Workflow that is controlling the Task



552
553
554
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 552

def workflow_friendly_name
  @properties['workflow_friendly_name']
end

#workflow_sidString

Returns The SID of the Workflow that is controlling the Task.

Returns:

  • (String)

    The SID of the Workflow that is controlling the Task



546
547
548
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 546

def workflow_sid
  @properties['workflow_sid']
end

#workspace_sidString

Returns The SID of the Workspace that contains the Task.

Returns:

  • (String)

    The SID of the Workspace that contains the Task



558
559
560
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 558

def workspace_sid
  @properties['workspace_sid']
end