class Twilio::REST::Taskrouter::V1::WorkspaceContext::TaskQueueList

Public Class Methods

new(version, workspace_sid: nil) click to toggle source

Initialize the TaskQueueList @param [Version] version Version that contains the resource @param [String] workspace_sid The SID of the Workspace that contains the

TaskQueue.

@return [TaskQueueList] TaskQueueList

Calls superclass method Twilio::REST::ListResource::new
   # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
21 def initialize(version, workspace_sid: nil)
22   super(version)
23 
24   # Path Solution
25   @solution = {workspace_sid: workspace_sid}
26   @uri = "/Workspaces/#{@solution[:workspace_sid]}/TaskQueues"
27 
28   # Components
29   @statistics = nil
30 end

Public Instance Methods

create(friendly_name: nil, target_workers: :unset, max_reserved_workers: :unset, task_order: :unset, reservation_activity_sid: :unset, assignment_activity_sid: :unset) click to toggle source

Create the TaskQueueInstance @param [String] friendly_name A descriptive string that you create to describe

the TaskQueue. For example `Support-Tier 1`, `Sales`, or `Escalation`.

@param [String] target_workers A string that describes the Worker selection

criteria for any Tasks that enter the TaskQueue. For example, `'"language" ==
"spanish"'`. The default value is `1==1`. If this value is empty, Tasks will
wait in the TaskQueue until they are deleted or moved to another TaskQueue. For
more information about Worker selection, see {Describing Worker selection
criteria}[https://www.twilio.com/docs/taskrouter/api/taskqueues#target-workers].

@param [String] max_reserved_workers The maximum number of Workers to reserve

for the assignment of a Task in the queue. Can be an integer between 1 and 50,
inclusive and defaults to 1.

@param [task_queue.TaskOrder] task_order How Tasks will be assigned to Workers.

Set this parameter to `LIFO` to assign most recently created Task first or FIFO
to assign the oldest Task first. Default is `FIFO`. {Click
here}[https://www.twilio.com/docs/taskrouter/queue-ordering-last-first-out-lifo]
to learn more.

@param [String] reservation_activity_sid The SID of the Activity to assign

Workers when a task is reserved for them.

@param [String] assignment_activity_sid The SID of the Activity to assign

Workers when a task is assigned to them.

@return [TaskQueueInstance] Created TaskQueueInstance

    # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
170 def create(friendly_name: nil, target_workers: :unset, max_reserved_workers: :unset, task_order: :unset, reservation_activity_sid: :unset, assignment_activity_sid: :unset)
171   data = Twilio::Values.of({
172       'FriendlyName' => friendly_name,
173       'TargetWorkers' => target_workers,
174       'MaxReservedWorkers' => max_reserved_workers,
175       'TaskOrder' => task_order,
176       'ReservationActivitySid' => reservation_activity_sid,
177       'AssignmentActivitySid' => assignment_activity_sid,
178   })
179 
180   payload = @version.create('POST', @uri, data: data)
181 
182   TaskQueueInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], )
183 end
each() { |x| ... } click to toggle source

When passed a block, yields TaskQueueInstance records from the API. This operation lazily loads records as efficiently as possible until the limit is reached.

    # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
 95 def each
 96   limits = @version.read_limits
 97 
 98   page = self.page(page_size: limits[:page_size], )
 99 
100   @version.stream(page,
101                   limit: limits[:limit],
102                   page_limit: limits[:page_limit]).each {|x| yield x}
103 end
get_page(target_url) click to toggle source

Retrieve a single page of TaskQueueInstance records from the API. Request is executed immediately. @param [String] target_url API-generated URL for the requested results page @return [Page] Page of TaskQueueInstance

    # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
139 def get_page(target_url)
140   response = @version.domain.request(
141       'GET',
142       target_url
143   )
144   TaskQueuePage.new(@version, response, @solution)
145 end
list(friendly_name: :unset, evaluate_worker_attributes: :unset, worker_sid: :unset, limit: nil, page_size: nil) click to toggle source

Lists TaskQueueInstance records from the API as a list. Unlike stream(), this operation is eager and will load `limit` records into memory before returning. @param [String] friendly_name The `friendly_name` of the TaskQueue resources to

read.

@param [String] evaluate_worker_attributes The attributes of the Workers to

read. Returns the TaskQueues with Workers that match the attributes specified in
this parameter.

@param [String] worker_sid The SID of the Worker with the TaskQueue resources to

read.

@param [Integer] limit Upper limit for the number of records to return. stream()

guarantees to never return more than limit.  Default is no limit

@param [Integer] page_size Number of records to fetch per request, when

not set will use the default value of 50 records.  If no page_size is defined
but a limit is defined, stream() will attempt to read the limit with the most
efficient page size, i.e. min(limit, 1000)

@return [Array] Array of up to limit results

   # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
50 def list(friendly_name: :unset, evaluate_worker_attributes: :unset, worker_sid: :unset, limit: nil, page_size: nil)
51   self.stream(
52       friendly_name: friendly_name,
53       evaluate_worker_attributes: evaluate_worker_attributes,
54       worker_sid: worker_sid,
55       limit: limit,
56       page_size: page_size
57   ).entries
58 end
page(friendly_name: :unset, evaluate_worker_attributes: :unset, worker_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset) click to toggle source

Retrieve a single page of TaskQueueInstance records from the API. Request is executed immediately. @param [String] friendly_name The `friendly_name` of the TaskQueue resources to

read.

@param [String] evaluate_worker_attributes The attributes of the Workers to

read. Returns the TaskQueues with Workers that match the attributes specified in
this parameter.

@param [String] worker_sid The SID of the Worker with the TaskQueue resources to

read.

@param [String] page_token PageToken provided by the API @param [Integer] page_number Page Number, this value is simply for client state @param [Integer] page_size Number of records to return, defaults to 50 @return [Page] Page of TaskQueueInstance

    # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
119 def page(friendly_name: :unset, evaluate_worker_attributes: :unset, worker_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
120   params = Twilio::Values.of({
121       'FriendlyName' => friendly_name,
122       'EvaluateWorkerAttributes' => evaluate_worker_attributes,
123       'WorkerSid' => worker_sid,
124       'PageToken' => page_token,
125       'Page' => page_number,
126       'PageSize' => page_size,
127   })
128 
129   response = @version.page('GET', @uri, params: params)
130 
131   TaskQueuePage.new(@version, response, @solution)
132 end
statistics() click to toggle source

Access the statistics @return [TaskQueuesStatisticsList] @return [TaskQueuesStatisticsContext]

    # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
189 def statistics
190   @statistics ||= TaskQueuesStatisticsList.new(@version, workspace_sid: @solution[:workspace_sid], )
191 end
stream(friendly_name: :unset, evaluate_worker_attributes: :unset, worker_sid: :unset, limit: nil, page_size: nil) click to toggle source

Streams TaskQueueInstance records from the API as an Enumerable. This operation lazily loads records as efficiently as possible until the limit is reached. @param [String] friendly_name The `friendly_name` of the TaskQueue resources to

read.

@param [String] evaluate_worker_attributes The attributes of the Workers to

read. Returns the TaskQueues with Workers that match the attributes specified in
this parameter.

@param [String] worker_sid The SID of the Worker with the TaskQueue resources to

read.

@param [Integer] limit Upper limit for the number of records to return. stream()

guarantees to never return more than limit. Default is no limit.

@param [Integer] page_size Number of records to fetch per request, when

not set will use the default value of 50 records. If no page_size is defined
but a limit is defined, stream() will attempt to read the limit with the most
efficient page size, i.e. min(limit, 1000)

@return [Enumerable] Enumerable that will yield up to limit results

   # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
78 def stream(friendly_name: :unset, evaluate_worker_attributes: :unset, worker_sid: :unset, limit: nil, page_size: nil)
79   limits = @version.read_limits(limit, page_size)
80 
81   page = self.page(
82       friendly_name: friendly_name,
83       evaluate_worker_attributes: evaluate_worker_attributes,
84       worker_sid: worker_sid,
85       page_size: limits[:page_size],
86   )
87 
88   @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
89 end
to_s() click to toggle source

Provide a user friendly representation

    # File lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
195 def to_s
196   '#<Twilio.Taskrouter.V1.TaskQueueList>'
197 end