Class: Twilio::REST::Chat::V2::ServiceContext::ChannelContext::MessageInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v2/service/channel/message.rb

Instance Method Summary collapse

Constructor Details

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

Initialize the MessageInstance



329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 329

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

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'attributes' => payload['attributes'],
      'service_sid' => payload['service_sid'],
      'to' => payload['to'],
      'channel_sid' => payload['channel_sid'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'last_updated_by' => payload['last_updated_by'],
      'was_edited' => payload['was_edited'],
      'from' => payload['from'],
      'body' => payload['body'],
      'index' => payload['index'].to_i,
      'type' => payload['type'],
      'media' => payload['media'],
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sidString



385
386
387
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 385

def 
  @properties['account_sid']
end

#attributesString



391
392
393
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 391

def attributes
  @properties['attributes']
end

#bodyString



445
446
447
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 445

def body
  @properties['body']
end

#channel_sidString



409
410
411
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 409

def channel_sid
  @properties['channel_sid']
end

#contextMessageContext

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



365
366
367
368
369
370
371
372
373
374
375
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 365

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

#date_createdTime



415
416
417
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 415

def date_created
  @properties['date_created']
end

#date_updatedTime



421
422
423
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 421

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the MessageInstance



483
484
485
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 483

def delete
  context.delete
end

#fetchMessageInstance

Fetch a MessageInstance



476
477
478
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 476

def fetch
  context.fetch
end

#fromString



439
440
441
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 439

def from
  @properties['from']
end

#indexString



451
452
453
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 451

def index
  @properties['index']
end

#inspectObject

Provide a detailed, user friendly representation



526
527
528
529
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 526

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

#last_updated_byString



427
428
429
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 427

def last_updated_by
  @properties['last_updated_by']
end

#mediaHash



463
464
465
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 463

def media
  @properties['media']
end

#service_sidString



397
398
399
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 397

def service_sid
  @properties['service_sid']
end

#sidString



379
380
381
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 379

def sid
  @properties['sid']
end

#toString



403
404
405
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 403

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



519
520
521
522
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 519

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

#typeString



457
458
459
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 457

def type
  @properties['type']
end

#update(body: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, last_updated_by: :unset, from: :unset) ⇒ MessageInstance

Update the MessageInstance



506
507
508
509
510
511
512
513
514
515
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 506

def update(body: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, last_updated_by: :unset, from: :unset)
  context.update(
      body: body,
      attributes: attributes,
      date_created: date_created,
      date_updated: date_updated,
      last_updated_by: last_updated_by,
      from: from,
  )
end

#urlString



469
470
471
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 469

def url
  @properties['url']
end

#was_editedBoolean



433
434
435
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 433

def was_edited
  @properties['was_edited']
end