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.



469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 469

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:



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

def 
    @properties['account_sid']
end

#activitiesactivities

Access the activities

Returns:



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

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:



500
501
502
503
504
505
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 500

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

#cumulative_statisticscumulative_statistics

Access the cumulative_statistics

Returns:



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

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:



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

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:



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

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.



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

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.



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

def default_activity_sid
    @properties['default_activity_sid']
end

#deleteBoolean

Delete the WorkspaceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

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:



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

def event_callback_url
    @properties['event_callback_url']
end

#eventsevents

Access the events

Returns:



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

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.



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

def events_filter
    @properties['events_filter']
end

#fetchWorkspaceInstance

Fetch the WorkspaceInstance

Returns:



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

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



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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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.



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

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



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

def multi_task_enabled
    @properties['multi_task_enabled']
end

#prioritize_queue_orderQueueOrder

Returns:

  • (QueueOrder)


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

def prioritize_queue_order
    @properties['prioritize_queue_order']
end

#real_time_statisticsreal_time_statistics

Access the real_time_statistics

Returns:



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

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.



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

def sid
    @properties['sid']
end

#statisticsstatistics

Access the statistics

Returns:



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

def statistics
    context.statistics
end

#task_channelstask_channels

Access the task_channels

Returns:



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

def task_channels
    context.task_channels
end

#task_queuestask_queues

Access the task_queues

Returns:



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

def task_queues
    context.task_queues
end

#taskstasks

Access the tasks

Returns:



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

def tasks
    context.tasks
end

#timeout_activity_nameString

Returns The name of the timeout activity.

Returns:

  • (String)

    The name of the timeout activity.



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

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.



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

def timeout_activity_sid
    @properties['timeout_activity_sid']
end

#to_sObject

Provide a user friendly representation



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

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:



623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace.rb', line 623

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.



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

def url
    @properties['url']
end

#workersworkers

Access the workers

Returns:



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

def workers
    context.workers
end

#workflowsworkflows

Access the workflows

Returns:



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

def workflows
    context.workflows
end