Class: Twilio::REST::Taskrouter::V1::WorkspaceContext::TaskContext::ReservationInstance

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

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, workspace_sid: nil, task_sid: nil, sid: nil) ⇒ ReservationInstance

Initialize the ReservationInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • workspace_sid (String) (defaults to: nil)

    The ID of the Workspace that this task is contained within.

  • task_sid (String) (defaults to: nil)

    The ID of the reserved Task

  • sid (String) (defaults to: nil)

    The sid



367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 367

def initialize(version, payload, workspace_sid: nil, task_sid: nil, 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']),
      'reservation_status' => payload['reservation_status'],
      'sid' => payload['sid'],
      'task_sid' => payload['task_sid'],
      'worker_name' => payload['worker_name'],
      'worker_sid' => payload['worker_sid'],
      'workspace_sid' => payload['workspace_sid'],
      'url' => payload['url'],
      'links' => payload['links'],
  }

  # Context
  @instance_context = nil
  @params = {
      'workspace_sid' => workspace_sid,
      'task_sid' => task_sid,
      'sid' => sid || @properties['sid'],
  }
end

Instance Method Details

#account_sidString

Returns The ID of the Account that owns this Task.

Returns:

  • (String)

    The ID of the Account that owns this Task



412
413
414
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 412

def 
  @properties['account_sid']
end

#contextReservationContext

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

Returns:



398
399
400
401
402
403
404
405
406
407
408
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 398

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

#date_createdTime

Returns The date_created.

Returns:

  • (Time)

    The date_created



418
419
420
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 418

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date_updated.

Returns:

  • (Time)

    The date_updated



424
425
426
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 424

def date_updated
  @properties['date_updated']
end

#fetchReservationInstance

Fetch a ReservationInstance

Returns:



479
480
481
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 479

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



629
630
631
632
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 629

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

Returns The links.

Returns:

  • (String)

    The links



472
473
474
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 472

def links
  @properties['links']
end

#reservation_statusreservation.Status

Returns The current status of the reservation.

Returns:

  • (reservation.Status)

    The current status of the reservation.



430
431
432
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 430

def reservation_status
  @properties['reservation_status']
end

#sidString

Returns The unique ID of this Reservation.

Returns:

  • (String)

    The unique ID of this Reservation.



436
437
438
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 436

def sid
  @properties['sid']
end

#task_sidString

Returns The ID of the reserved Task.

Returns:

  • (String)

    The ID of the reserved Task



442
443
444
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 442

def task_sid
  @properties['task_sid']
end

#to_sObject

Provide a user friendly representation



622
623
624
625
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 622

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

#update(reservation_status: :unset, worker_activity_sid: :unset, instruction: :unset, dequeue_post_work_activity_sid: :unset, dequeue_from: :unset, dequeue_record: :unset, dequeue_timeout: :unset, dequeue_to: :unset, dequeue_status_callback_url: :unset, call_from: :unset, call_record: :unset, call_timeout: :unset, call_to: :unset, call_url: :unset, call_status_callback_url: :unset, call_accept: :unset, redirect_call_sid: :unset, redirect_accept: :unset, redirect_url: :unset, to: :unset, from: :unset, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, conference_record: :unset, conference_trim: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, region: :unset, sip_auth_username: :unset, sip_auth_password: :unset, dequeue_status_callback_event: :unset, post_work_activity_sid: :unset, supervisor_mode: :unset, supervisor: :unset) ⇒ ReservationInstance

Update the ReservationInstance

Parameters:

  • reservation_status (reservation.Status) (defaults to: :unset)

    New reservation status

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

    New worker activity sid if rejecting a reservation

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

    Assignment instruction for reservation

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

    New worker activity sid after executing a Dequeue instruction

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

    Caller ID for the call to the worker when executing a Dequeue instruction

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

    Attribute to record both legs of a call when executing a Dequeue instruction

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

    Timeout for call when executing a Dequeue instruction

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

    Contact URI of the worker when executing a Dequeue instruction

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

    Callback URL for completed call event when executing a Dequeue instruction

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

    Caller ID for the outbound call when executing a Call instruction

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

    Attribute to record both legs of a call when executing a Call instruction

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

    Timeout for call when executing a Call instruction

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

    Contact URI of the worker when executing a Call instruction

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

    TwiML URI executed on answering the worker’s leg as a result of the Call instruction

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

    Callback URL for completed call event when executing a Call instruction

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

    Flag to determine if reservation should be accepted when executing a Call instruction

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

    Call sid of the call parked in the queue when executing a Redirect instruction

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

    Flag to determine if reservation should be accepted when executing a Redirect instruction

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

    TwiML URI to redirect the call to when executing the Redirect instruction

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

    Contact URI of the worker when executing a Conference instruction

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

    Caller ID for the call to the worker when executing a Conference instruction

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

    The status_callback

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

    The status_callback_method

  • status_callback_event (reservation.CallStatus) (defaults to: :unset)

    The status_callback_event

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

    Timeout for call when executing a Conference instruction

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

    The record

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

    The muted

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

    The beep

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

    The start_conference_on_enter

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

    The end_conference_on_exit

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

    The wait_url

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

    The wait_method

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

    The early_media

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

    The max_participants

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

    The conference_status_callback

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

    The conference_status_callback_method

  • conference_status_callback_event (reservation.ConferenceEvent) (defaults to: :unset)

    The conference_status_callback_event

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

    The conference_record

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

    The conference_trim

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

    The recording_channels

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

    The recording_status_callback

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

    The recording_status_callback_method

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

    The conference_recording_status_callback

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

    The conference_recording_status_callback_method

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

    The region

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

    The sip_auth_username

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

    The sip_auth_password

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

    Call progress events sent via webhooks as a result of a Dequeue instruction

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

    New worker activity sid after executing a Conference instruction

  • supervisor_mode (reservation.SupervisorMode) (defaults to: :unset)

    Supervisor mode when executing the Supervise instruction

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

    Supervisor sid/uri when executing the Supervise instruction

Returns:



564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 564

def update(reservation_status: :unset, worker_activity_sid: :unset, instruction: :unset, dequeue_post_work_activity_sid: :unset, dequeue_from: :unset, dequeue_record: :unset, dequeue_timeout: :unset, dequeue_to: :unset, dequeue_status_callback_url: :unset, call_from: :unset, call_record: :unset, call_timeout: :unset, call_to: :unset, call_url: :unset, call_status_callback_url: :unset, call_accept: :unset, redirect_call_sid: :unset, redirect_accept: :unset, redirect_url: :unset, to: :unset, from: :unset, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, conference_record: :unset, conference_trim: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, region: :unset, sip_auth_username: :unset, sip_auth_password: :unset, dequeue_status_callback_event: :unset, post_work_activity_sid: :unset, supervisor_mode: :unset, supervisor: :unset)
  context.update(
      reservation_status: reservation_status,
      worker_activity_sid: worker_activity_sid,
      instruction: instruction,
      dequeue_post_work_activity_sid: dequeue_post_work_activity_sid,
      dequeue_from: dequeue_from,
      dequeue_record: dequeue_record,
      dequeue_timeout: dequeue_timeout,
      dequeue_to: dequeue_to,
      dequeue_status_callback_url: dequeue_status_callback_url,
      call_from: call_from,
      call_record: call_record,
      call_timeout: call_timeout,
      call_to: call_to,
      call_url: call_url,
      call_status_callback_url: call_status_callback_url,
      call_accept: call_accept,
      redirect_call_sid: redirect_call_sid,
      redirect_accept: redirect_accept,
      redirect_url: redirect_url,
      to: to,
      from: from,
      status_callback: status_callback,
      status_callback_method: status_callback_method,
      status_callback_event: status_callback_event,
      timeout: timeout,
      record: record,
      muted: muted,
      beep: beep,
      start_conference_on_enter: start_conference_on_enter,
      end_conference_on_exit: end_conference_on_exit,
      wait_url: wait_url,
      wait_method: wait_method,
      early_media: early_media,
      max_participants: max_participants,
      conference_status_callback: conference_status_callback,
      conference_status_callback_method: conference_status_callback_method,
      conference_status_callback_event: conference_status_callback_event,
      conference_record: conference_record,
      conference_trim: conference_trim,
      recording_channels: recording_channels,
      recording_status_callback: recording_status_callback,
      recording_status_callback_method: recording_status_callback_method,
      conference_recording_status_callback: conference_recording_status_callback,
      conference_recording_status_callback_method: conference_recording_status_callback_method,
      region: region,
      sip_auth_username: sip_auth_username,
      sip_auth_password: sip_auth_password,
      dequeue_status_callback_event: dequeue_status_callback_event,
      post_work_activity_sid: post_work_activity_sid,
      supervisor_mode: supervisor_mode,
      supervisor: supervisor,
  )
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



466
467
468
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 466

def url
  @properties['url']
end

#worker_nameString

Returns Human readable description of the Worker that is reserved.

Returns:

  • (String)

    Human readable description of the Worker that is reserved



448
449
450
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 448

def worker_name
  @properties['worker_name']
end

#worker_sidString

Returns The ID of the reserved Worker.

Returns:

  • (String)

    The ID of the reserved Worker



454
455
456
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 454

def worker_sid
  @properties['worker_sid']
end

#workspace_sidString

Returns The ID of the Workspace that this task is contained within.

Returns:

  • (String)

    The ID of the Workspace that this task is contained within.



460
461
462
# File 'lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb', line 460

def workspace_sid
  @properties['workspace_sid']
end