Class: Twilio::REST::Conversations::V1::ConversationContext::ParticipantInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, conversation_sid: nil, sid: nil) ⇒ ParticipantInstance

Initialize the ParticipantInstance



317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 317

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

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'conversation_sid' => payload['conversation_sid'],
      'sid' => payload['sid'],
      'identity' => payload['identity'],
      'attributes' => payload['attributes'],
      'messaging_binding' => payload['messaging_binding'],
      'role_sid' => payload['role_sid'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'url' => payload['url'],
      'last_read_message_index' => payload['last_read_message_index'] == nil ? payload['last_read_message_index'] : payload['last_read_message_index'].to_i,
      'last_read_timestamp' => payload['last_read_timestamp'],
  }

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

Instance Method Details

#account_sidString



354
355
356
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 354

def 
  @properties['account_sid']
end

#attributesString



378
379
380
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 378

def attributes
  @properties['attributes']
end

#contextParticipantContext

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



345
346
347
348
349
350
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 345

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

#conversation_sidString



360
361
362
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 360

def conversation_sid
  @properties['conversation_sid']
end

#date_createdTime



396
397
398
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 396

def date_created
  @properties['date_created']
end

#date_updatedTime



402
403
404
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 402

def date_updated
  @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the ParticipantInstance



473
474
475
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 473

def delete(x_twilio_webhook_enabled: :unset)
  context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
end

#fetchParticipantInstance

Fetch the ParticipantInstance



480
481
482
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 480

def fetch
  context.fetch
end

#identityString



372
373
374
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 372

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



493
494
495
496
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 493

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

#last_read_message_indexString



414
415
416
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 414

def last_read_message_index
  @properties['last_read_message_index']
end

#last_read_timestampString



420
421
422
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 420

def last_read_timestamp
  @properties['last_read_timestamp']
end

#messaging_bindingHash



384
385
386
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 384

def messaging_binding
  @properties['messaging_binding']
end

#role_sidString



390
391
392
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 390

def role_sid
  @properties['role_sid']
end

#sidString



366
367
368
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 366

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



486
487
488
489
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 486

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

#update(date_created: :unset, date_updated: :unset, attributes: :unset, role_sid: :unset, messaging_binding_proxy_address: :unset, messaging_binding_projected_address: :unset, identity: :unset, last_read_message_index: :unset, last_read_timestamp: :unset, x_twilio_webhook_enabled: :unset) ⇒ ParticipantInstance

Update the ParticipantInstance



453
454
455
456
457
458
459
460
461
462
463
464
465
466
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 453

def update(date_created: :unset, date_updated: :unset, attributes: :unset, role_sid: :unset, messaging_binding_proxy_address: :unset, messaging_binding_projected_address: :unset, identity: :unset, last_read_message_index: :unset, last_read_timestamp: :unset, x_twilio_webhook_enabled: :unset)
  context.update(
      date_created: date_created,
      date_updated: date_updated,
      attributes: attributes,
      role_sid: role_sid,
      messaging_binding_proxy_address: messaging_binding_proxy_address,
      messaging_binding_projected_address: messaging_binding_projected_address,
      identity: identity,
      last_read_message_index: last_read_message_index,
      last_read_timestamp: last_read_timestamp,
      x_twilio_webhook_enabled: x_twilio_webhook_enabled,
  )
end

#urlString



408
409
410
# File 'lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb', line 408

def url
  @properties['url']
end