Class: Twilio::REST::Taskrouter::V1::WorkspaceContext::TaskContext
- Inherits:
-
InstanceContext
- Object
- InstanceContext
- Twilio::REST::Taskrouter::V1::WorkspaceContext::TaskContext
- Defined in:
- lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb,
lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb
Defined Under Namespace
Classes: ReservationContext, ReservationInstance, ReservationList, ReservationPage
Instance Method Summary collapse
-
#delete(if_match: :unset) ⇒ Boolean
Delete the TaskInstance.
-
#fetch ⇒ TaskInstance
Fetch the TaskInstance.
-
#initialize(version, workspace_sid, sid) ⇒ TaskContext
constructor
Initialize the TaskContext.
-
#inspect ⇒ Object
Provide a detailed, user friendly representation.
-
#reservations(sid = :unset) ⇒ ReservationList, ReservationContext
Access the reservations.
-
#to_s ⇒ Object
Provide a user friendly representation.
-
#update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, virtual_start_time: :unset, if_match: :unset) ⇒ TaskInstance
Update the TaskInstance.
Constructor Details
#initialize(version, workspace_sid, sid) ⇒ TaskContext
Initialize the TaskContext
243 244 245 246 247 248 249 250 251 252 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 243 def initialize(version, workspace_sid, sid) super(version) # Path Solution @solution = { workspace_sid: workspace_sid, sid: sid, } @uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:sid]}" # Dependents @reservations = nil end |
Instance Method Details
#delete(if_match: :unset) ⇒ Boolean
Delete the TaskInstance
257 258 259 260 261 262 263 264 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 257 def delete( if_match: :unset ) headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, }) @version.delete('DELETE', @uri, headers: headers) end |
#fetch ⇒ TaskInstance
Fetch the TaskInstance
269 270 271 272 273 274 275 276 277 278 279 280 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 269 def fetch headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', }) payload = @version.fetch('GET', @uri, headers: headers) TaskInstance.new( @version, payload, workspace_sid: @solution[:workspace_sid], sid: @solution[:sid], ) end |
#inspect ⇒ Object
Provide a detailed, user friendly representation
351 352 353 354 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 351 def inspect context = @solution.map{|k, v| "#{k}: #{v}"}.join(',') "#<Twilio.Taskrouter.V1.TaskContext #{context}>" end |
#reservations(sid = :unset) ⇒ ReservationList, ReservationContext
Access the reservations
326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 326 def reservations(sid=:unset) raise ArgumentError, 'sid cannot be nil' if sid.nil? if sid != :unset return ReservationContext.new(@version, @solution[:workspace_sid], @solution[:sid],sid ) end unless @reservations @reservations = ReservationList.new( @version, workspace_sid: @solution[:workspace_sid], task_sid: @solution[:sid], ) end @reservations end |
#to_s ⇒ Object
Provide a user friendly representation
344 345 346 347 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 344 def to_s context = @solution.map{|k, v| "#{k}: #{v}"}.join(',') "#<Twilio.Taskrouter.V1.TaskContext #{context}>" end |
#update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, virtual_start_time: :unset, if_match: :unset) ⇒ TaskInstance
Update the TaskInstance
292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 |
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb', line 292 def update( attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, virtual_start_time: :unset, if_match: :unset ) data = Twilio::Values.of({ 'Attributes' => attributes, 'AssignmentStatus' => assignment_status, 'Reason' => reason, 'Priority' => priority, 'TaskChannel' => task_channel, 'VirtualStartTime' => Twilio.serialize_iso8601_datetime(virtual_start_time), }) headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, }) payload = @version.update('POST', @uri, data: data, headers: headers) TaskInstance.new( @version, payload, workspace_sid: @solution[:workspace_sid], sid: @solution[:sid], ) end |