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

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • service_sid (String) (defaults to: nil)

    The service_sid

  • channel_sid (String) (defaults to: nil)

    The channel_sid

  • sid (String) (defaults to: nil)

    The sid



286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 286

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,
      '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

Returns The account_sid.

Returns:

  • (String)

    The account_sid



341
342
343
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 341

def 
  @properties['account_sid']
end

#attributesString

Returns The attributes.

Returns:

  • (String)

    The attributes



347
348
349
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 347

def attributes
  @properties['attributes']
end

#bodyString

Returns The body.

Returns:

  • (String)

    The body



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

def body
  @properties['body']
end

#channel_sidString

Returns The channel_sid.

Returns:

  • (String)

    The channel_sid



365
366
367
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 365

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

Returns:



321
322
323
324
325
326
327
328
329
330
331
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 321

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

#date_createdTime

Returns The date_created.

Returns:

  • (Time)

    The date_created



371
372
373
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 371

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date_updated.

Returns:

  • (Time)

    The date_updated



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

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the MessageInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



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

def delete
  context.delete
end

#fetchMessageInstance

Fetch a MessageInstance

Returns:



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

def fetch
  context.fetch
end

#fromString

Returns The from.

Returns:

  • (String)

    The from



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

def from
  @properties['from']
end

#indexString

Returns The index.

Returns:

  • (String)

    The index



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

def index
  @properties['index']
end

#mediaHash

Returns The media.

Returns:

  • (Hash)

    The media



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

def media
  @properties['media']
end

#service_sidString

Returns The service_sid.

Returns:

  • (String)

    The service_sid



353
354
355
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 353

def service_sid
  @properties['service_sid']
end

#sidString

Returns The sid.

Returns:

  • (String)

    The sid



335
336
337
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 335

def sid
  @properties['sid']
end

#toString

Returns The to.

Returns:

  • (String)

    The to



359
360
361
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/message.rb', line 359

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



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

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

#typeString

Returns The type.

Returns:

  • (String)

    The type



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

def type
  @properties['type']
end

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

Update the MessageInstance

Parameters:

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

    The body

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

    The attributes

Returns:



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

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

#urlString

Returns The url.

Returns:

  • (String)

    The url



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

def url
  @properties['url']
end

#was_editedBoolean

Returns The was_edited.

Returns:

  • (Boolean)

    The was_edited



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

def was_edited
  @properties['was_edited']
end