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

  • account_sid (String)

    The SID of the Account that created this Workspace resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 476

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](www.twilio.com/docs/iam/api/account) that created the Workspace resource.

Returns:



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

def 
    @properties['account_sid']
end

#activitiesactivities

Access the activities

Returns:



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

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:



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

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

#cumulative_statisticscumulative_statistics

Access the cumulative_statistics

Returns:



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

def cumulative_statistics
    context.cumulative_statistics
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



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

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



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

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.



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

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.



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

def default_activity_sid
    @properties['default_activity_sid']
end

#deleteBoolean

Delete the WorkspaceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



607
608
609
610
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 607

def delete

    context.delete
end

#event_callback_urlString

Returns The URL we call when an event occurs. If provided, the Workspace will publish events to this URL, for example, to collect data for reporting. See [Workspace Events](www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio’s [Webhooks (HTTP callbacks) Connection Overrides](www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).

Returns:



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

def event_callback_url
    @properties['event_callback_url']
end

#eventsevents

Access the events

Returns:



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

def events
    context.events
end

#events_filterString

Returns 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.

Returns:

  • (String)

    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.



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

def events_filter
    @properties['events_filter']
end

#fetchWorkspaceInstance

Fetch the WorkspaceInstance

Returns:



615
616
617
618
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 615

def fetch

    context.fetch
end

#friendly_nameString

Returns The string that you assigned to describe the Workspace resource. For example ‘Customer Support` or `2014 Election Campaign`.

Returns:

  • (String)

    The string that you assigned to describe the Workspace resource. For example ‘Customer Support` or `2014 Election Campaign`.



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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

Returns The URLs of related resources.

Returns:

  • (Hash)

    The URLs of related resources.



600
601
602
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 600

def links
    @properties['links']
end

#multi_task_enabledBoolean

Returns Whether multi-tasking is enabled. The default is ‘true`, which enables multi-tasking. Multi-tasking allows Workers to handle multiple Tasks simultaneously. When enabled (`true`), each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking each Worker would only receive a new reservation when the previous task is completed. Learn more at [Multitasking](www.twilio.com/docs/taskrouter/multitasking).

Returns:

  • (Boolean)

    Whether multi-tasking is enabled. The default is ‘true`, which enables multi-tasking. Multi-tasking allows Workers to handle multiple Tasks simultaneously. When enabled (`true`), each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking each Worker would only receive a new reservation when the previous task is completed. Learn more at [Multitasking](www.twilio.com/docs/taskrouter/multitasking).



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

def multi_task_enabled
    @properties['multi_task_enabled']
end

#prioritize_queue_orderQueueOrder

Returns:

  • (QueueOrder)


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

def prioritize_queue_order
    @properties['prioritize_queue_order']
end

#real_time_statisticsreal_time_statistics

Access the real_time_statistics

Returns:



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

def real_time_statistics
    context.real_time_statistics
end

#sidString

Returns The unique string that we created to identify the Workspace resource.

Returns:

  • (String)

    The unique string that we created to identify the Workspace resource.



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

def sid
    @properties['sid']
end

#statisticsstatistics

Access the statistics

Returns:



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

def statistics
    context.statistics
end

#task_channelstask_channels

Access the task_channels

Returns:



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

def task_channels
    context.task_channels
end

#task_queuestask_queues

Access the task_queues

Returns:



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

def task_queues
    context.task_queues
end

#taskstasks

Access the tasks

Returns:



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

def tasks
    context.tasks
end

#timeout_activity_nameString

Returns The name of the timeout activity.

Returns:

  • (String)

    The name of the timeout activity.



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

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.



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

def timeout_activity_sid
    @properties['timeout_activity_sid']
end

#to_sObject

Provide a user friendly representation



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

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](www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio’s [Webhooks (HTTP callbacks) Connection Overrides](www.twilio.com/docs/usage/webhooks/webhooks-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](www.twilio.com/docs/taskrouter/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 (QueueOrder) (defaults to: :unset)

Returns:



630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 630

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.



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

def url
    @properties['url']
end

#workersworkers

Access the workers

Returns:



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

def workers
    context.workers
end

#workflowsworkflows

Access the workflows

Returns:



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

def workflows
    context.workflows
end