Class: Twilio::REST::Taskrouter::V1::WorkspaceInstance

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

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ WorkspaceInstance

Initialize the WorkspaceInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    The SID of the Workspace resource to fetch.


464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 464

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

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'default_activity_name' => payload['default_activity_name'],
      'default_activity_sid' => payload['default_activity_sid'],
      'event_callback_url' => payload['event_callback_url'],
      'events_filter' => payload['events_filter'],
      'friendly_name' => payload['friendly_name'],
      'multi_task_enabled' => payload['multi_task_enabled'],
      'sid' => payload['sid'],
      'timeout_activity_name' => payload['timeout_activity_name'],
      'timeout_activity_sid' => payload['timeout_activity_sid'],
      'prioritize_queue_order' => payload['prioritize_queue_order'],
      'url' => payload['url'],
      'links' => payload['links'],
  }

  # Context
  @instance_context = nil
  @params = {'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


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

def 
  @properties['account_sid']
end

#activitiesactivities

Access the activities

Returns:


656
657
658
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 656

def activities
  context.activities
end

#contextWorkspaceContext

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

Returns:


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

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

#cumulative_statisticscumulative_statistics

Access the cumulative_statistics

Returns:


712
713
714
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 712

def cumulative_statistics
  context.cumulative_statistics
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


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

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


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

def date_updated
  @properties['date_updated']
end

#default_activity_nameString

Returns The name of the default activity.

Returns:

  • (String)

    The name of the default activity


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

def default_activity_name
  @properties['default_activity_name']
end

#default_activity_sidString

Returns The SID of the Activity that will be used when new Workers are created in the Workspace.

Returns:

  • (String)

    The SID of the Activity that will be used when new Workers are created in the Workspace


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

def default_activity_sid
  @properties['default_activity_sid']
end

#deleteBoolean

Delete the WorkspaceInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


649
650
651
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 649

def delete
  context.delete
end

#event_callback_urlString

Returns The URL we call when an event occurs.

Returns:

  • (String)

    The URL we call when an event occurs


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

def event_callback_url
  @properties['event_callback_url']
end

#eventsevents

Access the events

Returns:


663
664
665
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 663

def events
  context.events
end

#events_filterString

Returns The list of Workspace events for which to call event_callback_url.

Returns:

  • (String)

    The list of Workspace events for which to call event_callback_url


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

def events_filter
  @properties['events_filter']
end

#fetchWorkspaceInstance

Fetch the WorkspaceInstance

Returns:


595
596
597
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 595

def fetch
  context.fetch
end

#friendly_nameString

Returns The string that you assigned to describe the Workspace resource.

Returns:

  • (String)

    The string that you assigned to describe the Workspace resource


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

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation


732
733
734
735
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 732

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

Returns The URLs of related resources.

Returns:

  • (String)

    The URLs of related resources


588
589
590
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 588

def links
  @properties['links']
end

#multi_task_enabledBoolean

Returns Whether multi-tasking is enabled.

Returns:

  • (Boolean)

    Whether multi-tasking is enabled


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

def multi_task_enabled
  @properties['multi_task_enabled']
end

#prioritize_queue_orderworkspace.QueueOrder

Returns The type of TaskQueue to prioritize when Workers are receiving Tasks from both types of TaskQueues.

Returns:

  • (workspace.QueueOrder)

    The type of TaskQueue to prioritize when Workers are receiving Tasks from both types of TaskQueues


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

def prioritize_queue_order
  @properties['prioritize_queue_order']
end

#real_time_statisticsreal_time_statistics

Access the real_time_statistics

Returns:


705
706
707
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 705

def real_time_statistics
  context.real_time_statistics
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource


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

def sid
  @properties['sid']
end

#statisticsstatistics

Access the statistics

Returns:


698
699
700
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 698

def statistics
  context.statistics
end

#task_channelstask_channels

Access the task_channels

Returns:


719
720
721
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 719

def task_channels
  context.task_channels
end

#task_queuestask_queues

Access the task_queues

Returns:


677
678
679
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 677

def task_queues
  context.task_queues
end

#taskstasks

Access the tasks

Returns:


670
671
672
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 670

def tasks
  context.tasks
end

#timeout_activity_nameString

Returns The name of the timeout activity.

Returns:

  • (String)

    The name of the timeout activity


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

def timeout_activity_name
  @properties['timeout_activity_name']
end

#timeout_activity_sidString

Returns The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.

Returns:

  • (String)

    The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response


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

def timeout_activity_sid
  @properties['timeout_activity_sid']
end

#to_sObject

Provide a user friendly representation


725
726
727
728
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 725

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

#update(default_activity_sid: :unset, event_callback_url: :unset, events_filter: :unset, friendly_name: :unset, multi_task_enabled: :unset, timeout_activity_sid: :unset, prioritize_queue_order: :unset) ⇒ WorkspaceInstance

Update the WorkspaceInstance

Parameters:

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

    The SID of the Activity that will be used when new Workers are created in the Workspace.

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

    The URL we should call when an event occurs. See Workspace Events for more information. This parameter supports Twilio's Webhooks (HTTP callbacks) Connection Overrides.

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

    The list of Workspace events for which to call event_callback_url. For example if `EventsFilter=task.created,task.canceled,worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.

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

    A descriptive string that you create to describe the Workspace resource. For example: `Sales Call Center` or `Customer Support Team`.

  • multi_task_enabled (Boolean) (defaults to: :unset)

    Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be maintained as multi-tasking. There is no default when omitting this parameter. A multi-tasking Workspace can't be updated to single-tasking unless it is not a Flex Project and another (legacy) single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at Multitasking.

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

    The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.

  • prioritize_queue_order (workspace.QueueOrder) (defaults to: :unset)

    The type of TaskQueue to prioritize when Workers are receiving Tasks from both types of TaskQueues. Can be: `LIFO` or `FIFO`. For more information, see Queue Ordering.

Returns:


634
635
636
637
638
639
640
641
642
643
644
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 634

def update(default_activity_sid: :unset, event_callback_url: :unset, events_filter: :unset, friendly_name: :unset, multi_task_enabled: :unset, timeout_activity_sid: :unset, prioritize_queue_order: :unset)
  context.update(
      default_activity_sid: default_activity_sid,
      event_callback_url: event_callback_url,
      events_filter: events_filter,
      friendly_name: friendly_name,
      multi_task_enabled: multi_task_enabled,
      timeout_activity_sid: timeout_activity_sid,
      prioritize_queue_order: prioritize_queue_order,
  )
end

#urlString

Returns The absolute URL of the Workspace resource.

Returns:

  • (String)

    The absolute URL of the Workspace resource


582
583
584
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 582

def url
  @properties['url']
end

#workersworkers

Access the workers

Returns:


684
685
686
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 684

def workers
  context.workers
end

#workflowsworkflows

Access the workflows

Returns:


691
692
693
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 691

def workflows
  context.workflows
end