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

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v1/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



297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 297

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']),
      'was_edited' => payload['was_edited'],
      'from' => payload['from'],
      'body' => payload['body'],
      'index' => payload['index'].to_i,
      '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



350
351
352
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 350

def 
  @properties['account_sid']
end

#attributesString



356
357
358
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 356

def attributes
  @properties['attributes']
end

#bodyString



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

def body
  @properties['body']
end

#channel_sidString



374
375
376
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 374

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



330
331
332
333
334
335
336
337
338
339
340
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 330

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

#date_createdTime



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

def date_created
  @properties['date_created']
end

#date_updatedTime



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

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the MessageInstance



430
431
432
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 430

def delete
  context.delete
end

#fetchMessageInstance

Fetch a MessageInstance



423
424
425
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 423

def fetch
  context.fetch
end

#fromString



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

def from
  @properties['from']
end

#indexString



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

def index
  @properties['index']
end

#inspectObject

Provide a detailed, user friendly representation



455
456
457
458
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 455

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

#service_sidString



362
363
364
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 362

def service_sid
  @properties['service_sid']
end

#sidString



344
345
346
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 344

def sid
  @properties['sid']
end

#toString



368
369
370
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 368

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



448
449
450
451
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 448

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

#update(body: :unset, attributes: :unset) ⇒ MessageInstance

Update the MessageInstance



442
443
444
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 442

def update(body: :unset, attributes: :unset)
  context.update(body: body, attributes: attributes, )
end

#urlString



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

def url
  @properties['url']
end

#was_editedBoolean



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

def was_edited
  @properties['was_edited']
end