Class: Twilio::REST::Proxy::V1::ServiceContext::SessionInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/proxy/v1/service/session.rb

Overview

PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, sid: nil) ⇒ SessionInstance

Initialize the SessionInstance



343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 343

def initialize(version, payload, service_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'service_sid' => payload['service_sid'],
      'account_sid' => payload['account_sid'],
      'date_started' => Twilio.deserialize_iso8601_datetime(payload['date_started']),
      'date_ended' => Twilio.deserialize_iso8601_datetime(payload['date_ended']),
      'date_last_interaction' => Twilio.deserialize_iso8601_datetime(payload['date_last_interaction']),
      'date_expiry' => Twilio.deserialize_iso8601_datetime(payload['date_expiry']),
      'unique_name' => payload['unique_name'],
      'status' => payload['status'],
      'closed_reason' => payload['closed_reason'],
      'ttl' => payload['ttl'].to_i,
      'mode' => payload['mode'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'url' => payload['url'],
      'links' => payload['links'],
  }

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

Instance Method Details

#account_sidString



396
397
398
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 396

def 
  @properties['account_sid']
end

#closed_reasonString



438
439
440
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 438

def closed_reason
  @properties['closed_reason']
end

#contextSessionContext

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



375
376
377
378
379
380
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 375

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

#date_createdTime



456
457
458
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 456

def date_created
  @properties['date_created']
end

#date_endedTime



408
409
410
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 408

def date_ended
  @properties['date_ended']
end

#date_expiryTime



420
421
422
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 420

def date_expiry
  @properties['date_expiry']
end

#date_last_interactionTime



414
415
416
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 414

def date_last_interaction
  @properties['date_last_interaction']
end

#date_startedTime



402
403
404
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 402

def date_started
  @properties['date_started']
end

#date_updatedTime



462
463
464
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 462

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Delete the SessionInstance



488
489
490
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 488

def delete
  context.delete
end

#fetchSessionInstance

Fetch the SessionInstance



481
482
483
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 481

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



545
546
547
548
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 545

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

#interactionsinteractions

Access the interactions



525
526
527
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 525

def interactions
  context.interactions
end


474
475
476
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 474

def links
  @properties['links']
end

#modesession.Mode



450
451
452
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 450

def mode
  @properties['mode']
end

#participantsparticipants

Access the participants



532
533
534
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 532

def participants
  context.participants
end

#service_sidString



390
391
392
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 390

def service_sid
  @properties['service_sid']
end

#sidString



384
385
386
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 384

def sid
  @properties['sid']
end

#statussession.Status



432
433
434
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 432

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation



538
539
540
541
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 538

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

#ttlString



444
445
446
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 444

def ttl
  @properties['ttl']
end

#unique_nameString



426
427
428
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 426

def unique_name
  @properties['unique_name']
end

#update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset) ⇒ SessionInstance

Update the SessionInstance



513
514
515
516
517
518
519
520
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 513

def update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset)
  context.update(
      date_expiry: date_expiry,
      ttl: ttl,
      status: status,
      fail_on_participant_conflict: fail_on_participant_conflict,
  )
end

#urlString



468
469
470
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 468

def url
  @properties['url']
end